diff options
author | mkersten | 2005-12-10 04:15:12 +0000 |
---|---|---|
committer | mkersten | 2005-12-10 04:15:12 +0000 |
commit | a09f4b06440392e881a5b9d5fdb1cf2a54cc6dfb (patch) | |
tree | 006fba640b8468207d5134101cc77c26c0d986d5 /org.eclipse.mylyn.tasks.ui | |
parent | 21695aeb0b27ad069640993097c38fa40842e822 (diff) | |
download | org.eclipse.mylyn.tasks-a09f4b06440392e881a5b9d5fdb1cf2a54cc6dfb.tar.gz org.eclipse.mylyn.tasks-a09f4b06440392e881a5b9d5fdb1cf2a54cc6dfb.tar.xz org.eclipse.mylyn.tasks-a09f4b06440392e881a5b9d5fdb1cf2a54cc6dfb.zip |
Progress on: Bug 119301: improve task planner activity period and UI
https://bugs.eclipse.org/bugs/show_bug.cgi?id=119301
Diffstat (limited to 'org.eclipse.mylyn.tasks.ui')
3 files changed, 27 insertions, 13 deletions
diff --git a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/tasklist/planner/ui/ReminderCellEditor.java b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/tasklist/planner/ui/ReminderCellEditor.java index 3403da91b..53e5924ca 100644 --- a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/tasklist/planner/ui/ReminderCellEditor.java +++ b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/tasklist/planner/ui/ReminderCellEditor.java @@ -23,27 +23,34 @@ import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Control; import org.eclipse.swt.widgets.Shell; +/** + * @author Ken Sueda + * @author Mik Kersten + */ public class ReminderCellEditor extends DialogCellEditor { private Date reminderDate; + public ReminderCellEditor(Composite parent) { super(parent, SWT.NONE); } + @Override protected Object openDialogBox(Control cellEditorWindow) { ReminderDialog dialog = new ReminderDialog(cellEditorWindow.getShell()); dialog.open(); reminderDate = dialog.getDate(); - return reminderDate; + return reminderDate; } - + public Date getReminderDate() { return reminderDate; } - + private static class ReminderDialog extends Dialog { private Date reminderDate = null; + protected ReminderDialog(Shell parentShell) { super(parentShell); } @@ -51,11 +58,11 @@ public class ReminderCellEditor extends DialogCellEditor { protected ReminderDialog(IShellProvider parentShell) { super(parentShell); } - + protected Control createDialogArea(Composite parent) { Composite composite = (Composite) super.createDialogArea(parent); - final DatePicker datePicker = new DatePicker(composite, SWT.NULL); - datePicker.setDateText("<reminder>"); + final DatePicker datePicker = new DatePicker(composite, SWT.NULL); + datePicker.setDateText("<reminder>"); datePicker.addPickerSelectionListener(new SelectionListener() { public void widgetSelected(SelectionEvent arg0) { reminderDate = datePicker.getDate().getTime(); @@ -67,6 +74,7 @@ public class ReminderCellEditor extends DialogCellEditor { }); return composite; } + public Date getDate() { return reminderDate; } diff --git a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/tasklist/planner/ui/TaskPlanSorter.java b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/tasklist/planner/ui/TaskPlanSorter.java index 85c1ba50c..fcd9a0b98 100644 --- a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/tasklist/planner/ui/TaskPlanSorter.java +++ b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/tasklist/planner/ui/TaskPlanSorter.java @@ -56,6 +56,9 @@ public class TaskPlanSorter extends TaskActivitySorter { } private int compareReminder(ITask task1, ITask task2) { + if (task2.getReminderDate() == null) return -1; + if (task1.getReminderDate() == null) return 1; + if (task1.getReminderDate() == null && task2.getReminderDate() == null) return 0; return task2.getReminderDate().compareTo(task1.getReminderDate()); } diff --git a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/tasklist/planner/ui/TaskPlannerEditorPart.java b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/tasklist/planner/ui/TaskPlannerEditorPart.java index 7d85e5d9e..428d07ad9 100644 --- a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/tasklist/planner/ui/TaskPlannerEditorPart.java +++ b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/tasklist/planner/ui/TaskPlannerEditorPart.java @@ -105,7 +105,7 @@ public class TaskPlannerEditorPart extends EditorPart { private int[] planSortConstants = new int[] { TaskPlanSorter.ICON, TaskPlanSorter.PRIORITY, TaskPlanSorter.DESCRIPTION, TaskPlanSorter.DURATION, TaskPlanSorter.ESTIMATED, TaskPlanSorter.REMINDER }; - private int[] planColumnWidths = new int[] { 20, 30, 340, 90, 90, 120 }; + private int[] planColumnWidths = new int[] { 20, 30, 340, 90, 90, 100 }; private static final String[] ESTIMATE_TIMES = new String[] { "0 Hours", "1 Hours", "2 Hours", "3 Hours", "4 Hours", "5 Hours", "6 Hours", "7 Hours", "8 Hours", "9 Hours", "10 Hours" }; @@ -255,10 +255,10 @@ public class TaskPlannerEditorPart extends EditorPart { CellEditor[] editors = new CellEditor[planColumnNames.length + 1]; final ComboBoxCellEditor estimatedEditor = new ComboBoxCellEditor(planTable, ESTIMATE_TIMES, SWT.READ_ONLY); final ReminderCellEditor reminderEditor = new ReminderCellEditor(planTable); - editors[0] = reminderEditor; // not used - editors[1] = reminderEditor;// not used - editors[2] = reminderEditor;// not used - editors[3] = reminderEditor;// not used + editors[0] = null; // not used + editors[1] = null;// not used + editors[2] = null;// not used + editors[3] = null;// not used editors[4] = estimatedEditor; editors[5] = reminderEditor; reminderEditor.addListener(new ICellEditorListener() { @@ -492,7 +492,6 @@ public class TaskPlannerEditorPart extends EditorPart { public boolean canModify(Object element, String property) { int columnIndex = Arrays.asList(planColumnNames).indexOf(property); - System.err.println(">>> " + property); if (columnIndex == 5 || columnIndex == 4) { return true; } @@ -504,8 +503,12 @@ public class TaskPlannerEditorPart extends EditorPart { int columnIndex = Arrays.asList(planColumnNames).indexOf(property); if (element instanceof ITask) { if (columnIndex == 5) { - return DateFormat.getDateInstance(DateFormat.MEDIUM) + if (((ITask) element).getReminderDate() != null) { + return DateFormat.getDateInstance(DateFormat.MEDIUM) .format(((ITask) element).getReminderDate()); + } else { + return null; + } } else if (columnIndex == 4) { return new Integer(Arrays.asList(ESTIMATE_TIMES).indexOf( ((ITask) element).getEstimateTimeHours())); |