public void selectionChanged(SelectionChangedEvent event) { Iterator e = fActions.values().iterator(); while (e.hasNext()) { Object next = e.next(); if (next instanceof MergeViewerAction) { MergeViewerAction action = (MergeViewerAction) next; if (action.isSelectionDependent()) action.update(); } } }
public IAction getAction(String actionId) { IAction action = (IAction) fActions.get(actionId); if (action == null) { action = createAction(actionId); if (action == null) return null; if (action instanceof MergeViewerAction) { MergeViewerAction mva = (MergeViewerAction) action; if (mva.isContentDependent()) getSourceViewer().addTextListener(this); if (mva.isSelectionDependent()) getSourceViewer().addSelectionChangedListener(this); Utilities.initAction( action, fResourceBundle, "action." + actionId + "."); // $NON-NLS-1$ //$NON-NLS-2$ } addAction(actionId, action); } if (action instanceof MergeViewerAction) { MergeViewerAction mva = (MergeViewerAction) action; if (mva.isEditableDependent() && !getSourceViewer().isEditable()) return null; } return action; }