Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormkersten2007-06-16 04:59:46 +0000
committermkersten2007-06-16 04:59:46 +0000
commitb0ae666bd3441386251924e90f90b34bf5197fad (patch)
tree27b6ee541a08a32066c94d3f741be719983fa374
parent5222569c076ad570d080c14522b4b9cc60241786 (diff)
downloadorg.eclipse.mylyn.tasks-b0ae666bd3441386251924e90f90b34bf5197fad.tar.gz
org.eclipse.mylyn.tasks-b0ae666bd3441386251924e90f90b34bf5197fad.tar.xz
org.eclipse.mylyn.tasks-b0ae666bd3441386251924e90f90b34bf5197fad.zip
RESOLVED - bug 186493: provide Task List view UI for task working set switching
https://bugs.eclipse.org/bugs/show_bug.cgi?id=186493
-rw-r--r--org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/TaskTrimWidget.java2
-rw-r--r--org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/actions/TaskWorkingSetAction.java50
2 files changed, 45 insertions, 7 deletions
diff --git a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/TaskTrimWidget.java b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/TaskTrimWidget.java
index 8dd680aac..ba4c0247e 100644
--- a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/TaskTrimWidget.java
+++ b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/TaskTrimWidget.java
@@ -296,7 +296,7 @@ public class TaskTrimWidget extends WorkbenchWindowControlContribution {
}
public void indicateActiveTask() {
- if (activeTaskLabel.isDisposed()) {
+ if (activeTaskLabel != null && activeTaskLabel.isDisposed()) {
return;
}
diff --git a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/actions/TaskWorkingSetAction.java b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/actions/TaskWorkingSetAction.java
index e60b050b9..da90059d2 100644
--- a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/actions/TaskWorkingSetAction.java
+++ b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/actions/TaskWorkingSetAction.java
@@ -101,8 +101,10 @@ public class TaskWorkingSetAction extends Action implements IMenuCreator {
IWorkingSet[] workingSets = getAllWorkingSets();
if (doTaskWorkingSetsExist()) {
- ActionContributionItem item = new ActionContributionItem(new ToggleAllWorkingSetsAction());
- item.fill(dropDownMenu, -1);
+ ActionContributionItem itemAll = new ActionContributionItem(new ToggleAllWorkingSetsAction());
+ itemAll.fill(dropDownMenu, -1);
+ ActionContributionItem itemNone = new ActionContributionItem(new ToggleNoWorkingSetsAction());
+ itemNone.fill(dropDownMenu, -1);
Separator separator = new Separator();
separator.fill(dropDownMenu, -1);
@@ -114,8 +116,8 @@ public class TaskWorkingSetAction extends Action implements IMenuCreator {
while (iter.hasNext()) {
IWorkingSet workingSet = (IWorkingSet) iter.next();
if (workingSet != null && workingSet.getId().equalsIgnoreCase(ID_TASK_WORKING_SET)) {
- item = new ActionContributionItem(new ToggleWorkingSetAction(workingSet));
- item.fill(dropDownMenu, -1);
+ itemAll = new ActionContributionItem(new ToggleWorkingSetAction(workingSet));
+ itemNone.fill(dropDownMenu, -1);
}
}
@@ -212,8 +214,8 @@ public class TaskWorkingSetAction extends Action implements IMenuCreator {
private class ToggleAllWorkingSetsAction extends Action {
ToggleAllWorkingSetsAction() {
- super("All Task Working Sets", IAction.AS_CHECK_BOX);
- setImageDescriptor(TasksUiImages.TASK_WORKING_SET);
+ super("Select All", IAction.AS_CHECK_BOX);
+// setImageDescriptor(TasksUiImages.TASK_WORKING_SET);
setChecked(areAllTaskWorkingSetsEnabled());
}
@@ -245,6 +247,42 @@ public class TaskWorkingSetAction extends Action implements IMenuCreator {
}
+ private class ToggleNoWorkingSetsAction extends Action {
+
+ ToggleNoWorkingSetsAction() {
+ super("Deselect All", IAction.AS_CHECK_BOX);
+// setImageDescriptor(TasksUiImages.TASK_WORKING_SET);
+ setChecked(areAllTaskWorkingSetsEnabled());
+ }
+
+ public void runWithEvent(Event event) {
+ Set<IWorkingSet> newList = new HashSet<IWorkingSet>(Arrays.asList(getEnabledSets()));
+
+ Set<IWorkingSet> tempList = new HashSet<IWorkingSet>();
+ Iterator<IWorkingSet> iter = newList.iterator();
+ while (iter.hasNext()) {
+ IWorkingSet workingSet = (IWorkingSet) iter.next();
+ if (workingSet != null && workingSet.getId().equalsIgnoreCase(ID_TASK_WORKING_SET)) {
+ tempList.add(workingSet);
+ }
+ }
+ newList.removeAll(tempList);
+
+// if (isChecked()) {
+// IWorkingSet[] allWorkingSets = getAllWorkingSets();
+// for (IWorkingSet workingSet : allWorkingSets) {
+// if (workingSet != null && workingSet.getId().equalsIgnoreCase(ID_TASK_WORKING_SET)) {
+// newList.add(workingSet);
+// }
+// }
+// }
+
+ getWindow().getActivePage()
+ .setWorkingSets((IWorkingSet[]) newList.toArray(new IWorkingSet[newList.size()]));
+ }
+
+ }
+
private class ToggleWorkingSetAction extends Action {
private IWorkingSet set;

Back to the top