Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
View | Details | Raw Unified | Return to bug 220080
Collapse All | Expand All

(-)src/org/eclipse/mylyn/internal/tasks/ui/MoveToCategoryMenuContributor.java (-4 / +16 lines)
Lines 13-18 Link Here
13
import java.util.List;
13
import java.util.List;
14
14
15
import org.eclipse.jface.action.Action;
15
import org.eclipse.jface.action.Action;
16
import org.eclipse.jface.action.IAction;
16
import org.eclipse.jface.action.MenuManager;
17
import org.eclipse.jface.action.MenuManager;
17
import org.eclipse.jface.action.Separator;
18
import org.eclipse.jface.action.Separator;
18
import org.eclipse.mylyn.internal.tasks.core.UnmatchedTaskContainer;
19
import org.eclipse.mylyn.internal.tasks.core.UnmatchedTaskContainer;
Lines 35-41 Link Here
35
36
36
		//subMenuManager.setVisible(selectedElements.size() > 0 && !(selectedElements.get(0) instanceof AbstractTaskContainer || selectedElements.get(0) instanceof AbstractRepositoryQuery));
37
		//subMenuManager.setVisible(selectedElements.size() > 0 && !(selectedElements.get(0) instanceof AbstractTaskContainer || selectedElements.get(0) instanceof AbstractRepositoryQuery));
37
38
38
		subMenuManager.setVisible(selectedElements.size() > 0 && selectedElements.get(0) instanceof AbstractTask);
39
		// Compute selected tasks
40
		List<AbstractTask> selectedTasks = new ArrayList<AbstractTask>(selectedElements.size());
41
		for (AbstractTaskContainer elem : selectedElements) {
42
			if (elem instanceof AbstractTask) {
43
				selectedTasks.add((AbstractTask) elem);
44
			}
45
		}
46
		subMenuManager.setVisible(!selectedTasks.isEmpty());
39
47
40
		List<AbstractTaskCategory> categories = new ArrayList<AbstractTaskCategory>(TasksUiPlugin.getTaskListManager()
48
		List<AbstractTaskCategory> categories = new ArrayList<AbstractTaskCategory>(TasksUiPlugin.getTaskListManager()
41
				.getTaskList()
49
				.getTaskList()
Lines 43-57 Link Here
43
		Collections.sort(categories);
51
		Collections.sort(categories);
44
		for (final AbstractTaskCategory category : categories) {
52
		for (final AbstractTaskCategory category : categories) {
45
			if (!(category instanceof UnmatchedTaskContainer)) {
53
			if (!(category instanceof UnmatchedTaskContainer)) {
46
				Action action = new Action() {
54
				String text = handleAcceleratorKeys(category.getSummary());
55
				Action action = new Action(text, IAction.AS_RADIO_BUTTON) {
47
					@Override
56
					@Override
48
					public void run() {
57
					public void run() {
49
						moveToCategory(selectedElements, category);
58
						moveToCategory(selectedElements, category);
50
					}
59
					}
51
				};
60
				};
52
				String text = handleAcceleratorKeys(category.getSummary());
53
				action.setText(text);
54
				action.setImageDescriptor(TasksUiImages.CATEGORY);
61
				action.setImageDescriptor(TasksUiImages.CATEGORY);
62
				if (selectedTasks.size() == 1) {
63
					if (category.contains(selectedTasks.get(0).getHandleIdentifier())) {
64
						action.setChecked(true);
65
					}
66
				}
55
				subMenuManager.add(action);
67
				subMenuManager.add(action);
56
			}
68
			}
57
		}
69
		}

Return to bug 220080