diff options
author | relves | 2006-10-24 19:01:37 +0000 |
---|---|---|
committer | relves | 2006-10-24 19:01:37 +0000 |
commit | 2f375539b5217a5312e0e177e2219a176144fe3e (patch) | |
tree | 00201fbbfea448fb1fe307ed679210140bdd585f /org.eclipse.mylyn.tasks.ui | |
parent | 967190fe6010143759fd89be88edbca6490c0ebc (diff) | |
download | org.eclipse.mylyn.tasks-2f375539b5217a5312e0e177e2219a176144fe3e.tar.gz org.eclipse.mylyn.tasks-2f375539b5217a5312e0e177e2219a176144fe3e.tar.xz org.eclipse.mylyn.tasks-2f375539b5217a5312e0e177e2219a176144fe3e.zip |
NEW - bug 161925: Sorting by Description is broken in Task List
https://bugs.eclipse.org/bugs/show_bug.cgi?id=161925
Diffstat (limited to 'org.eclipse.mylyn.tasks.ui')
2 files changed, 15 insertions, 12 deletions
diff --git a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/views/TaskListTableSorter.java b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/views/TaskListTableSorter.java index 7f2280126..501bc5bda 100644 --- a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/views/TaskListTableSorter.java +++ b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/views/TaskListTableSorter.java @@ -11,7 +11,7 @@ package org.eclipse.mylar.internal.tasks.ui.views; - +import org.eclipse.jface.viewers.LabelProvider; import org.eclipse.jface.viewers.Viewer; import org.eclipse.jface.viewers.ViewerSorter; import org.eclipse.mylar.tasks.core.AbstractRepositoryQuery; @@ -28,15 +28,18 @@ public class TaskListTableSorter extends ViewerSorter { private final TaskListView view; private String column; - + + private LabelProvider labelProvider; + private TaskKeyComparator taskKeyComparator = new TaskKeyComparator(); - public TaskListTableSorter(TaskListView view, String column) { - super(); + public TaskListTableSorter(TaskListView view, String column, LabelProvider labelProvider) { + super(); this.view = view; this.column = column; + this.labelProvider = labelProvider; } - + public void setColumn(String column) { this.column = column; } @@ -84,8 +87,8 @@ public class TaskListTableSorter extends ViewerSorter { } else if (column == this.view.columnNames[2]) { return this.view.sortDirection * element1.getPriority().compareTo(element2.getPriority()); } else if (column == this.view.columnNames[4]) { - String c1 = element1.getDescription(); - String c2 = element2.getDescription(); + String c1 = labelProvider.getText(element1); + String c2 = labelProvider.getText(element2); return this.view.sortDirection * taskKeyComparator.compare(c1, c2); } else { return 0; diff --git a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/views/TaskListView.java b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/views/TaskListView.java index 2b71b6ece..2d3e5cd40 100644 --- a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/views/TaskListView.java +++ b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/views/TaskListView.java @@ -228,6 +228,10 @@ public class TaskListView extends ViewPart { private static final int DEFAULT_SORT_DIRECTION = -1; private int sortIndex = 2; + + private TaskListTableLabelProvider taskListTableLabelProvider; + + private TaskListTableSorter tableSorter; int sortDirection = DEFAULT_SORT_DIRECTION; @@ -353,10 +357,6 @@ public class TaskListView extends ViewPart { } }; - private TaskListTableLabelProvider taskListTableLabelProvider; - - private TaskListTableSorter tableSorter; - private final class PriorityDropDownAction extends Action implements IMenuCreator { private Menu dropDownMenu = null; @@ -895,7 +895,7 @@ public class TaskListView extends ViewPart { editors[4] = textEditor; getViewer().setCellEditors(editors); getViewer().setCellModifier(new TaskListCellModifier()); - tableSorter = new TaskListTableSorter(this, columnNames[sortIndex]); + tableSorter = new TaskListTableSorter(this, columnNames[sortIndex], taskListTableLabelProvider); getViewer().setSorter(tableSorter); drillDownAdapter = new DrillDownAdapter(getViewer()); |