Bug 573710: Adapt to enhanced HandlerCollection
Change-Id: I8a7ab02b2ab0755673c24186eb890b0d15f999ca
diff --git a/r/org.eclipse.statet.nico.ui/META-INF/MANIFEST.MF b/r/org.eclipse.statet.nico.ui/META-INF/MANIFEST.MF
index 0caf382..102baa5 100644
--- a/r/org.eclipse.statet.nico.ui/META-INF/MANIFEST.MF
+++ b/r/org.eclipse.statet.nico.ui/META-INF/MANIFEST.MF
@@ -30,6 +30,7 @@
org.eclipse.statet.ecommons.runtime.ui;bundle-version="[4.4.0,4.5.0)";visibility:=reexport
Import-Package: com.ibm.icu.text;version="67.1.0",
org.eclipse.statet.ecommons.collections;version="4.4.0",
+ org.eclipse.statet.ecommons.commands.core;version="4.4.0",
org.eclipse.statet.ecommons.databinding,
org.eclipse.statet.ecommons.databinding.core.observable;version="4.4.0",
org.eclipse.statet.ecommons.debug.core.util,
diff --git a/r/org.eclipse.statet.nico.ui/src/org/eclipse/statet/nico/ui/console/NIConsolePage.java b/r/org.eclipse.statet.nico.ui/src/org/eclipse/statet/nico/ui/console/NIConsolePage.java
index 2b22368..1127062 100644
--- a/r/org.eclipse.statet.nico.ui/src/org/eclipse/statet/nico/ui/console/NIConsolePage.java
+++ b/r/org.eclipse.statet.nico.ui/src/org/eclipse/statet/nico/ui/console/NIConsolePage.java
@@ -14,8 +14,6 @@
package org.eclipse.statet.nico.ui.console;
-import static org.eclipse.statet.jcommons.lang.ObjectUtils.nonNullAssert;
-
import static org.eclipse.statet.ecommons.ui.SharedUIResources.FIND_NEXT_COMMAND_ID;
import static org.eclipse.statet.ecommons.ui.SharedUIResources.FIND_PREVIOUS_COMMAND_ID;
import static org.eclipse.statet.ecommons.ui.actions.UIActions.ADDITIONS_GROUP_ID;
@@ -92,7 +90,6 @@
import org.eclipse.ui.console.TextConsoleViewer;
import org.eclipse.ui.console.actions.ClearOutputAction;
import org.eclipse.ui.editors.text.EditorsUI;
-import org.eclipse.ui.handlers.IHandlerService;
import org.eclipse.ui.menus.CommandContributionItem;
import org.eclipse.ui.menus.CommandContributionItemParameter;
import org.eclipse.ui.part.IPageBookViewPage;
@@ -112,13 +109,13 @@
import org.eclipse.statet.jcommons.ts.core.ActiveToolListener.ActiveToolEvent;
import org.eclipse.statet.jcommons.ts.core.ToolProvider;
+import org.eclipse.statet.ecommons.commands.core.HandlerCollection;
import org.eclipse.statet.ecommons.preferences.PreferencesUtil;
import org.eclipse.statet.ecommons.preferences.SettingsChangeNotifier.ChangeListener;
import org.eclipse.statet.ecommons.text.ui.TextViewerAction;
import org.eclipse.statet.ecommons.text.ui.TextViewerEditorColorUpdater;
import org.eclipse.statet.ecommons.ui.ISettingsChangedHandler;
import org.eclipse.statet.ecommons.ui.SharedMessages;
-import org.eclipse.statet.ecommons.ui.actions.HandlerCollection;
import org.eclipse.statet.ecommons.ui.actions.HandlerContributionItem;
import org.eclipse.statet.ecommons.ui.actions.SimpleContributionItem;
import org.eclipse.statet.ecommons.ui.actions.UIActions;
@@ -655,12 +652,8 @@
this.inputServices= new NestedServices(pageServiceLocator, "ConsoleInput");
this.inputServices.bindToFocus(inputControl);
- final IHandlerService pageHandlerService= nonNullAssert(pageServiceLocator
- .getService(IHandlerService.class) );
- this.pageHandlers= new ContextHandlers(pageHandlerService);
- final IHandlerService inputHandlerService= nonNullAssert(this.inputServices.getLocator()
- .getService(IHandlerService.class) );
- this.inputHandlers= new ContextHandlers(inputHandlerService);
+ this.pageHandlers= new ContextHandlers(pageServiceLocator);
+ this.inputHandlers= new ContextHandlers(this.inputServices.getLocator());
this.multiActionHandler= new MultiActionHandler();
diff --git a/r/org.eclipse.statet.r.apps/src/org/eclipse/statet/internal/r/apps/ui/variables/AppVarView.java b/r/org.eclipse.statet.r.apps/src/org/eclipse/statet/internal/r/apps/ui/variables/AppVarView.java
index 5f1f3c6..6e62a82 100644
--- a/r/org.eclipse.statet.r.apps/src/org/eclipse/statet/internal/r/apps/ui/variables/AppVarView.java
+++ b/r/org.eclipse.statet.r.apps/src/org/eclipse/statet/internal/r/apps/ui/variables/AppVarView.java
@@ -53,7 +53,6 @@
import org.eclipse.ui.PartInitException;
import org.eclipse.ui.commands.IElementUpdater;
import org.eclipse.ui.handlers.CollapseAllHandler;
-import org.eclipse.ui.handlers.IHandlerService;
import org.eclipse.ui.menus.CommandContributionItemParameter;
import org.eclipse.ui.menus.UIElement;
import org.eclipse.ui.part.ViewPart;
@@ -67,10 +66,10 @@
import org.eclipse.statet.jcommons.ts.core.Tool;
import org.eclipse.statet.jcommons.ts.core.ToolProvider;
+import org.eclipse.statet.ecommons.commands.core.HandlerCollection;
import org.eclipse.statet.ecommons.ts.ui.workbench.WorkbenchToolRegistry;
import org.eclipse.statet.ecommons.ts.ui.workbench.WorkbenchToolRegistryListener;
import org.eclipse.statet.ecommons.ts.ui.workbench.WorkbenchToolSessionData;
-import org.eclipse.statet.ecommons.ui.actions.HandlerCollection;
import org.eclipse.statet.ecommons.ui.actions.HandlerContributionItem;
import org.eclipse.statet.ecommons.ui.actions.UIActions;
import org.eclipse.statet.ecommons.ui.components.StatusInfo;
@@ -257,7 +256,7 @@
final IViewSite site= getViewSite();
site.setSelectionProvider(treeSelectionProvider);
this.actionUtil= new ViewActionUtil(this);
- this.handlers= new ContextHandlers(site.getService(IHandlerService.class));
+ this.handlers= new ContextHandlers(site);
initActions(site, this.handlers);
contributeToActionBars(site, site.getActionBars(), this.handlers);
hookContextMenu();
diff --git a/r/org.eclipse.statet.r.apps/src/org/eclipse/statet/internal/r/apps/ui/viewer/AppBrowserPage.java b/r/org.eclipse.statet.r.apps/src/org/eclipse/statet/internal/r/apps/ui/viewer/AppBrowserPage.java
index 536b9a9..1bdac26 100644
--- a/r/org.eclipse.statet.r.apps/src/org/eclipse/statet/internal/r/apps/ui/viewer/AppBrowserPage.java
+++ b/r/org.eclipse.statet.r.apps/src/org/eclipse/statet/internal/r/apps/ui/viewer/AppBrowserPage.java
@@ -33,7 +33,7 @@
import org.eclipse.statet.jcommons.lang.NonNullByDefault;
import org.eclipse.statet.jcommons.lang.Nullable;
-import org.eclipse.statet.ecommons.ui.actions.HandlerCollection;
+import org.eclipse.statet.ecommons.commands.core.HandlerCollection;
import org.eclipse.statet.ecommons.ui.actions.HandlerContributionItem;
import org.eclipse.statet.ecommons.ui.mpbv.PageBookBrowserPage;
import org.eclipse.statet.ecommons.ui.workbench.ContextHandlers;
diff --git a/r/org.eclipse.statet.r.apps/src/org/eclipse/statet/internal/r/apps/ui/viewer/AppBrowserView.java b/r/org.eclipse.statet.r.apps/src/org/eclipse/statet/internal/r/apps/ui/viewer/AppBrowserView.java
index babafbd..c51324b 100644
--- a/r/org.eclipse.statet.r.apps/src/org/eclipse/statet/internal/r/apps/ui/viewer/AppBrowserView.java
+++ b/r/org.eclipse.statet.r.apps/src/org/eclipse/statet/internal/r/apps/ui/viewer/AppBrowserView.java
@@ -24,7 +24,7 @@
import org.eclipse.statet.jcommons.lang.NonNullByDefault;
-import org.eclipse.statet.ecommons.ui.actions.HandlerCollection;
+import org.eclipse.statet.ecommons.commands.core.HandlerCollection;
import org.eclipse.statet.ecommons.ui.actions.UIActions;
import org.eclipse.statet.ecommons.ui.mpbv.BrowserSession;
import org.eclipse.statet.ecommons.ui.mpbv.PageBookBrowserPage;
diff --git a/r/org.eclipse.statet.r.console.ui/META-INF/MANIFEST.MF b/r/org.eclipse.statet.r.console.ui/META-INF/MANIFEST.MF
index a0a4393..93e2f95 100644
--- a/r/org.eclipse.statet.r.console.ui/META-INF/MANIFEST.MF
+++ b/r/org.eclipse.statet.r.console.ui/META-INF/MANIFEST.MF
@@ -27,6 +27,7 @@
org.eclipse.jdt.launching,
org.eclipse.jdt.debug.ui
Import-Package: com.ibm.icu.text;version="67.1.0",
+ org.eclipse.statet.ecommons.commands.core;version="4.4.0",
org.eclipse.statet.ecommons.databinding,
org.eclipse.statet.ecommons.databinding.core.validation;version="4.4.0",
org.eclipse.statet.ecommons.debug.core.util,
diff --git a/r/org.eclipse.statet.r.console.ui/src/org/eclipse/statet/internal/r/console/ui/page/RConsolePage.java b/r/org.eclipse.statet.r.console.ui/src/org/eclipse/statet/internal/r/console/ui/page/RConsolePage.java
index 53cbca9..77106a6 100644
--- a/r/org.eclipse.statet.r.console.ui/src/org/eclipse/statet/internal/r/console/ui/page/RConsolePage.java
+++ b/r/org.eclipse.statet.r.console.ui/src/org/eclipse/statet/internal/r/console/ui/page/RConsolePage.java
@@ -37,7 +37,7 @@
import org.eclipse.statet.jcommons.collections.ImCollections;
-import org.eclipse.statet.ecommons.ui.actions.HandlerCollection;
+import org.eclipse.statet.ecommons.commands.core.HandlerCollection;
import org.eclipse.statet.ecommons.ui.actions.HandlerContributionItem;
import org.eclipse.statet.ecommons.ui.util.UIAccess;
@@ -143,7 +143,7 @@
menuManager.insertBefore(ADDITIONS_GROUP_ID, new Separator("view")); //$NON-NLS-1$
- final RProcess process= (RProcess) getConsole().getProcess();
+ final RProcess process= getConsole().getProcess();
final REnv rEnv= process.getREnv();
if (process.isProvidingFeatureSet(RConsoleTool.R_DATA_FEATURESET_ID) && rEnv != null) {
menuManager.appendToGroup(NICO_CONTROL_MENU_ID,
diff --git a/r/org.eclipse.statet.r.ui/META-INF/MANIFEST.MF b/r/org.eclipse.statet.r.ui/META-INF/MANIFEST.MF
index bfaa459..41444b3 100644
--- a/r/org.eclipse.statet.r.ui/META-INF/MANIFEST.MF
+++ b/r/org.eclipse.statet.r.ui/META-INF/MANIFEST.MF
@@ -47,6 +47,7 @@
org.eclipse.jetty.servlet;version="[10.0.2,10.1.0)",
org.eclipse.jetty.util;version="[10.0.2,10.1.0)",
org.eclipse.statet.ecommons.collections;version="4.4.0",
+ org.eclipse.statet.ecommons.commands.core;version="4.4.0",
org.eclipse.statet.ecommons.databinding,
org.eclipse.statet.ecommons.databinding.core.util;version="4.4.0",
org.eclipse.statet.ecommons.databinding.core.validation;version="4.4.0",
diff --git a/r/org.eclipse.statet.r.ui/src/org/eclipse/statet/internal/r/ui/dataeditor/RDataEditor.java b/r/org.eclipse.statet.r.ui/src/org/eclipse/statet/internal/r/ui/dataeditor/RDataEditor.java
index d0ae15a..a059db4 100644
--- a/r/org.eclipse.statet.r.ui/src/org/eclipse/statet/internal/r/ui/dataeditor/RDataEditor.java
+++ b/r/org.eclipse.statet.r.ui/src/org/eclipse/statet/internal/r/ui/dataeditor/RDataEditor.java
@@ -35,7 +35,6 @@
import org.eclipse.ui.IWorkbenchPart;
import org.eclipse.ui.IWorkbenchPartSite;
import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.handlers.IHandlerService;
import org.eclipse.ui.part.EditorPart;
import org.eclipse.ui.part.IShowInTargetList;
import org.eclipse.ui.services.IServiceLocator;
@@ -238,7 +237,7 @@
final IWorkbenchPartSite site= getSite();
site.setSelectionProvider(this.viewer);
initActions(site,
- this.handlers= new ContextHandlers(site.getService(IHandlerService.class)) );
+ this.handlers= new ContextHandlers(site) );
initStatusLine();
initTableInput();
diff --git a/r/org.eclipse.statet.r.ui/src/org/eclipse/statet/internal/r/ui/datafilterview/FilterClient.java b/r/org.eclipse.statet.r.ui/src/org/eclipse/statet/internal/r/ui/datafilterview/FilterClient.java
index 6cb3c4e..4e65081 100644
--- a/r/org.eclipse.statet.r.ui/src/org/eclipse/statet/internal/r/ui/datafilterview/FilterClient.java
+++ b/r/org.eclipse.statet.r.ui/src/org/eclipse/statet/internal/r/ui/datafilterview/FilterClient.java
@@ -75,6 +75,15 @@
});
}
+ protected void onDispose() {
+ { final var listener= this.resizeListener;
+ if (listener != null) {
+ this.resizeListener= null;
+ getParent().getContainer().getComposite().removeListener(SWT.Resize, listener);
+ }
+ }
+ }
+
@Override
@SuppressWarnings("null")
@@ -224,14 +233,4 @@
super.layout(changed, flags);
}
-
- protected void onDispose() {
- { final var listener= this.resizeListener;
- if (listener != null) {
- this.resizeListener= null;
- getParent().getContainer().getComposite().removeListener(SWT.Resize, listener);
- }
- }
- }
-
}
diff --git a/r/org.eclipse.statet.r.ui/src/org/eclipse/statet/internal/r/ui/datafilterview/LevelFilterClient.java b/r/org.eclipse.statet.r.ui/src/org/eclipse/statet/internal/r/ui/datafilterview/LevelFilterClient.java
index f1a4ed7..70185a2 100644
--- a/r/org.eclipse.statet.r.ui/src/org/eclipse/statet/internal/r/ui/datafilterview/LevelFilterClient.java
+++ b/r/org.eclipse.statet.r.ui/src/org/eclipse/statet/internal/r/ui/datafilterview/LevelFilterClient.java
@@ -32,9 +32,9 @@
import org.eclipse.statet.ecommons.databinding.jface.DataBindingSupport;
import org.eclipse.statet.ecommons.ui.actions.ControlServicesUtil;
-import org.eclipse.statet.ecommons.ui.actions.HandlerCollection;
import org.eclipse.statet.ecommons.ui.actions.HandlerContributionItem;
import org.eclipse.statet.ecommons.ui.util.AutoCheckController;
+import org.eclipse.statet.ecommons.ui.workbench.ContextHandlers;
import org.eclipse.statet.internal.r.ui.datafilter.LevelVariableFilter;
import org.eclipse.statet.rj.data.RStore;
@@ -52,7 +52,7 @@
private CheckboxTableViewer valueListViewer= nonNullLateInit();
- private final HandlerCollection valueListHandlers= new HandlerCollection();
+ private ContextHandlers valueListHandlers= nonNullLateInit();
private MenuManager valueListMenuManager= nonNullLateInit();
@@ -64,6 +64,20 @@
init(1);
}
+ @Override
+ protected void onDispose() {
+ if (this.valueListMenuManager != null) {
+ this.valueListMenuManager.dispose();
+ this.valueListMenuManager= null;
+ }
+ if (this.valueListHandlers != null) {
+ this.valueListHandlers.dispose();
+ this.valueListHandlers= null;
+ }
+
+ super.onDispose();
+ }
+
@Override
public LevelVariableFilter getFilter() {
@@ -84,12 +98,15 @@
final ControlServicesUtil servicesUtil= new ControlServicesUtil(serviceLocator,
getClass().getName() + "/ValueList#" + hashCode(), this ); //$NON-NLS-1$
servicesUtil.addControl(this.valueListViewer.getTable());
+ final var handlers= new ContextHandlers(serviceLocator);
+ handlers.setDefaultActivationExpression(servicesUtil.getExpression());
+ handlers.setDeactivateOnDisposal(true);
+ this.valueListHandlers= handlers;
final AutoCheckController<?> autoCheckController= new AutoCheckController<>(
this.valueListViewer, this.filter.getSelectedValues() );
{ final IHandler2 handler= autoCheckController.createSelectAllHandler();
- this.valueListHandlers.add(SELECT_ALL_COMMAND_ID, handler);
- servicesUtil.activateHandler(SELECT_ALL_COMMAND_ID, handler);
+ handlers.addActivate(SELECT_ALL_COMMAND_ID, handler);
}
this.valueListMenuManager= new MenuManager();
@@ -133,14 +150,4 @@
return updateLayout(this.valueListViewer, (int)this.availableValues.getLength());
}
-
- @Override
- protected void onDispose() {
- if (this.valueListMenuManager != null) {
- this.valueListMenuManager.dispose();
- this.valueListMenuManager= null;
- }
- super.onDispose();
- }
-
}
diff --git a/r/org.eclipse.statet.r.ui/src/org/eclipse/statet/internal/r/ui/datafilterview/TextFilterClient.java b/r/org.eclipse.statet.r.ui/src/org/eclipse/statet/internal/r/ui/datafilterview/TextFilterClient.java
index bc13817..a5e7a3c 100644
--- a/r/org.eclipse.statet.r.ui/src/org/eclipse/statet/internal/r/ui/datafilterview/TextFilterClient.java
+++ b/r/org.eclipse.statet.r.ui/src/org/eclipse/statet/internal/r/ui/datafilterview/TextFilterClient.java
@@ -43,7 +43,6 @@
import org.eclipse.swt.widgets.Listener;
import org.eclipse.swt.widgets.Menu;
import org.eclipse.swt.widgets.MenuItem;
-import org.eclipse.ui.IWorkbenchCommandConstants;
import org.eclipse.ui.commands.IElementUpdater;
import org.eclipse.ui.menus.CommandContributionItemParameter;
import org.eclipse.ui.menus.UIElement;
@@ -54,13 +53,13 @@
import org.eclipse.statet.ecommons.databinding.jface.DataBindingSupport;
import org.eclipse.statet.ecommons.ui.actions.ControlServicesUtil;
-import org.eclipse.statet.ecommons.ui.actions.HandlerCollection;
import org.eclipse.statet.ecommons.ui.actions.HandlerContributionItem;
import org.eclipse.statet.ecommons.ui.components.DropDownButton;
import org.eclipse.statet.ecommons.ui.components.SearchText;
import org.eclipse.statet.ecommons.ui.util.AutoCheckController;
import org.eclipse.statet.ecommons.ui.util.LayoutUtils;
import org.eclipse.statet.ecommons.ui.viewers.ViewerUtils;
+import org.eclipse.statet.ecommons.ui.workbench.ContextHandlers;
import org.eclipse.statet.ecommons.ui.workbench.WorkbenchUIUtils;
import org.eclipse.statet.internal.r.ui.datafilter.TextSearchType;
@@ -72,6 +71,9 @@
public class TextFilterClient extends FilterClient<TextVariableFilter> {
+ private static final int SELECTION_DEPENDENT= 1 << 1;
+
+
private class RemoveHandler extends AbstractHandler implements IElementUpdater {
@Override
@@ -155,7 +157,7 @@
private CheckboxTableViewer valueListViewer= nonNullLateInit();
- private final HandlerCollection valueListHandlers= new HandlerCollection();
+ private ContextHandlers valueListHandlers= nonNullLateInit();
private MenuManager valueListMenuManager= nonNullLateInit();
@@ -168,6 +170,20 @@
init(2);
}
+ @Override
+ protected void onDispose() {
+ if (this.valueListMenuManager != null) {
+ this.valueListMenuManager.dispose();
+ this.valueListMenuManager= null;
+ }
+ if (this.valueListHandlers != null) {
+ this.valueListHandlers.dispose();
+ this.valueListHandlers= null;
+ }
+
+ super.onDispose();
+ }
+
@Override
public TextVariableFilter getFilter() {
@@ -237,24 +253,26 @@
@Override
protected void initActions(final IServiceLocator serviceLocator) {
final ControlServicesUtil servicesUtil= new ControlServicesUtil(serviceLocator,
- getClass().getName()+"/ValueList#"+hashCode(), this ); //$NON-NLS-1$
+ getClass().getName() + "/ValueList#" + hashCode(), this ); //$NON-NLS-1$
servicesUtil.addControl(this.valueListViewer.getTable());
+ final var handlers= new ContextHandlers(serviceLocator);
+ handlers.setDefaultActivationExpression(servicesUtil.getExpression());
+ handlers.setDeactivateOnDisposal(true);
+ this.valueListHandlers= handlers;
final AutoCheckController<?> autoCheckController= new AutoCheckController<>(
this.valueListViewer, this.selectedValueSet );
{ final IHandler2 handler= autoCheckController.createSelectAllHandler();
- this.valueListHandlers.add(SELECT_ALL_COMMAND_ID, handler);
- servicesUtil.activateHandler(SELECT_ALL_COMMAND_ID, handler);
+ handlers.addActivate(SELECT_ALL_COMMAND_ID, handler);
}
{ final IHandler2 handler= new RemoveHandler();
- this.valueListHandlers.add(REMOVE_COMMAND_ID, handler);
- servicesUtil.activateHandler(IWorkbenchCommandConstants.EDIT_DELETE, handler);
+ handlers.addActivate(REMOVE_COMMAND_ID, handler, SELECTION_DEPENDENT);
}
{ final IHandler2 handler= new RemoveUncheckedHandler();
- this.valueListHandlers.add(REMOVE_UNCHECKED_HANDLER_ID, handler);
+ handlers.add(REMOVE_UNCHECKED_HANDLER_ID, handler);
}
{ final IHandler2 handler= new RemoveAllHandler();
- this.valueListHandlers.add(REMOVE_ALL_HANDLER_COMMAND_ID, handler);
+ handlers.add(REMOVE_ALL_HANDLER_COMMAND_ID, handler);
}
ViewerUtils.installSearchTextNavigation(this.valueListViewer, this.searchTextControl, true);
@@ -262,23 +280,23 @@
this.valueListMenuManager= new MenuManager();
this.valueListMenuManager.add(new HandlerContributionItem(new CommandContributionItemParameter(serviceLocator,
null, SELECT_ALL_COMMAND_ID, HandlerContributionItem.STYLE_PUSH),
- nonNullAssert(this.valueListHandlers.get(SELECT_ALL_COMMAND_ID)) ));
+ nonNullAssert(handlers.get(SELECT_ALL_COMMAND_ID)) ));
this.valueListMenuManager.add(new Separator());
this.valueListMenuManager.add(new HandlerContributionItem(new CommandContributionItemParameter(serviceLocator,
null, REMOVE_COMMAND_ID, HandlerContributionItem.STYLE_PUSH),
- nonNullAssert(this.valueListHandlers.get(REMOVE_COMMAND_ID)) ));
+ nonNullAssert(handlers.get(REMOVE_COMMAND_ID)) ));
this.valueListMenuManager.add(new HandlerContributionItem(new CommandContributionItemParameter(serviceLocator,
null, HandlerContributionItem.NO_COMMAND_ID, null,
null, null, null,
Messages.Items_RemoveUnchecked_label, null, "Remove unchecked items",
HandlerContributionItem.STYLE_PUSH, null, false),
- nonNullAssert(this.valueListHandlers.get(REMOVE_UNCHECKED_HANDLER_ID)) ));
+ nonNullAssert(handlers.get(REMOVE_UNCHECKED_HANDLER_ID)) ));
this.valueListMenuManager.add(new HandlerContributionItem(new CommandContributionItemParameter(serviceLocator,
null, HandlerContributionItem.NO_COMMAND_ID, null,
null, null, null,
Messages.Items_RemoveAll_label, null, "Remove all items",
HandlerContributionItem.STYLE_PUSH, null, false),
- nonNullAssert(this.valueListHandlers.get(REMOVE_ALL_HANDLER_COMMAND_ID)) ));
+ nonNullAssert(handlers.get(REMOVE_ALL_HANDLER_COMMAND_ID)) ));
this.valueListViewer.getTable().setMenu(
this.valueListMenuManager.createContextMenu(this.valueListViewer.getControl()) );
@@ -313,7 +331,7 @@
}
protected void updateActions() {
- this.valueListHandlers.get(REMOVE_COMMAND_ID).setEnabled(null);
+ this.valueListHandlers.update(null, SELECTION_DEPENDENT);
}
@Override
@@ -347,12 +365,4 @@
this.filter.search(type, text);
}
- @Override
- protected void onDispose() {
- if (this.valueListMenuManager != null) {
- this.valueListMenuManager.dispose();
- this.valueListMenuManager= null;
- }
- }
-
}
diff --git a/r/org.eclipse.statet.r.ui/src/org/eclipse/statet/internal/r/ui/editors/ROutlinePage.java b/r/org.eclipse.statet.r.ui/src/org/eclipse/statet/internal/r/ui/editors/ROutlinePage.java
index a885561..4c90b42 100644
--- a/r/org.eclipse.statet.r.ui/src/org/eclipse/statet/internal/r/ui/editors/ROutlinePage.java
+++ b/r/org.eclipse.statet.r.ui/src/org/eclipse/statet/internal/r/ui/editors/ROutlinePage.java
@@ -31,9 +31,9 @@
import org.eclipse.statet.jcommons.lang.NonNullByDefault;
+import org.eclipse.statet.ecommons.commands.core.HandlerCollection;
import org.eclipse.statet.ecommons.ui.SharedMessages;
import org.eclipse.statet.ecommons.ui.SharedUIResources;
-import org.eclipse.statet.ecommons.ui.actions.HandlerCollection;
import org.eclipse.statet.ecommons.ui.dialogs.DialogUtils;
import org.eclipse.statet.ecommons.ui.util.UIAccess;
diff --git a/r/org.eclipse.statet.r.ui/src/org/eclipse/statet/internal/r/ui/pkgmanager/PkgTab.java b/r/org.eclipse.statet.r.ui/src/org/eclipse/statet/internal/r/ui/pkgmanager/PkgTab.java
index cbc65ee..6e90eec 100644
--- a/r/org.eclipse.statet.r.ui/src/org/eclipse/statet/internal/r/ui/pkgmanager/PkgTab.java
+++ b/r/org.eclipse.statet.r.ui/src/org/eclipse/statet/internal/r/ui/pkgmanager/PkgTab.java
@@ -83,7 +83,6 @@
import org.eclipse.swt.widgets.Table;
import org.eclipse.swt.widgets.ToolBar;
import org.eclipse.ui.IWorkbenchCommandConstants;
-import org.eclipse.ui.handlers.IHandlerService;
import org.eclipse.ui.menus.CommandContributionItemParameter;
import org.eclipse.statet.ecommons.databinding.jface.DataBindingSupport;
@@ -785,7 +784,7 @@
this.serviceLocator= new NestedServices(this.dialog.getServiceLocator(), "Tab");
this.serviceLocator.bindTo(this);
- this.handlers= new ContextHandlers(this.serviceLocator.getLocator().getService(IHandlerService.class));
+ this.handlers= new ContextHandlers(this.serviceLocator.getLocator());
{ final IHandler2 handler= new AbstractHandler() {
@Override
diff --git a/r/org.eclipse.statet.r.ui/src/org/eclipse/statet/internal/r/ui/rhelp/RHelpInfoHoverCreator.java b/r/org.eclipse.statet.r.ui/src/org/eclipse/statet/internal/r/ui/rhelp/RHelpInfoHoverCreator.java
index 4a89c6c..02a88aa 100644
--- a/r/org.eclipse.statet.r.ui/src/org/eclipse/statet/internal/r/ui/rhelp/RHelpInfoHoverCreator.java
+++ b/r/org.eclipse.statet.r.ui/src/org/eclipse/statet/internal/r/ui/rhelp/RHelpInfoHoverCreator.java
@@ -72,8 +72,9 @@
import org.eclipse.ui.menus.CommandContributionItemParameter;
import org.eclipse.ui.services.IServiceLocator;
+import org.eclipse.statet.ecommons.commands.core.BasicHandlerCollection;
+import org.eclipse.statet.ecommons.commands.core.HandlerCollection;
import org.eclipse.statet.ecommons.ui.SharedUIResources;
-import org.eclipse.statet.ecommons.ui.actions.HandlerCollection;
import org.eclipse.statet.ecommons.ui.actions.HandlerContributionItem;
import org.eclipse.statet.ecommons.ui.actions.SimpleContributionItem;
import org.eclipse.statet.ecommons.ui.mpbv.BrowserHandler.IBrowserProvider;
@@ -162,7 +163,7 @@
private StyledText titleText;
private Browser infoBrowser;
- private final HandlerCollection handlerCollection= new HandlerCollection();
+ private final HandlerCollection handlerCollection= new BasicHandlerCollection();
private boolean layoutWorkaround;
private boolean layoutHint;
diff --git a/r/org.eclipse.statet.r.ui/src/org/eclipse/statet/internal/r/ui/rhelp/RHelpView.java b/r/org.eclipse.statet.r.ui/src/org/eclipse/statet/internal/r/ui/rhelp/RHelpView.java
index 1b9dfd7..d7d9aba 100644
--- a/r/org.eclipse.statet.r.ui/src/org/eclipse/statet/internal/r/ui/rhelp/RHelpView.java
+++ b/r/org.eclipse.statet.r.ui/src/org/eclipse/statet/internal/r/ui/rhelp/RHelpView.java
@@ -63,10 +63,10 @@
import org.eclipse.statet.jcommons.status.StatusException;
import org.eclipse.statet.jcommons.status.eplatform.EStatusUtils;
+import org.eclipse.statet.ecommons.commands.core.HandlerCollection;
import org.eclipse.statet.ecommons.preferences.core.util.PreferenceUtils;
import org.eclipse.statet.ecommons.text.TextUtil;
import org.eclipse.statet.ecommons.ui.SharedUIResources;
-import org.eclipse.statet.ecommons.ui.actions.HandlerCollection;
import org.eclipse.statet.ecommons.ui.actions.HandlerContributionItem;
import org.eclipse.statet.ecommons.ui.actions.SimpleContributionItem;
import org.eclipse.statet.ecommons.ui.actions.ToggleBooleanPreferenceHandler;
diff --git a/r/org.eclipse.statet.r.ui/srcDebug/org/eclipse/statet/internal/r/debug/ui/assist/RElementInfoControl.java b/r/org.eclipse.statet.r.ui/srcDebug/org/eclipse/statet/internal/r/debug/ui/assist/RElementInfoControl.java
index 34382f0..e6848d0 100644
--- a/r/org.eclipse.statet.r.ui/srcDebug/org/eclipse/statet/internal/r/debug/ui/assist/RElementInfoControl.java
+++ b/r/org.eclipse.statet.r.ui/srcDebug/org/eclipse/statet/internal/r/debug/ui/assist/RElementInfoControl.java
@@ -45,8 +45,8 @@
import org.eclipse.ui.PlatformUI;
import org.eclipse.ui.services.IServiceLocator;
+import org.eclipse.statet.ecommons.commands.core.HandlerCollection;
import org.eclipse.statet.ecommons.ui.SharedUIResources;
-import org.eclipse.statet.ecommons.ui.actions.HandlerCollection;
import org.eclipse.statet.ecommons.ui.actions.SimpleContributionItem;
import org.eclipse.statet.ecommons.ui.util.InformationDispatchHandler;
import org.eclipse.statet.ecommons.ui.util.LayoutUtils;
diff --git a/r/org.eclipse.statet.r.ui/srcDebug/org/eclipse/statet/internal/r/objectbrowser/ObjectBrowserView.java b/r/org.eclipse.statet.r.ui/srcDebug/org/eclipse/statet/internal/r/objectbrowser/ObjectBrowserView.java
index 65002ff..b2e7524 100644
--- a/r/org.eclipse.statet.r.ui/srcDebug/org/eclipse/statet/internal/r/objectbrowser/ObjectBrowserView.java
+++ b/r/org.eclipse.statet.r.ui/srcDebug/org/eclipse/statet/internal/r/objectbrowser/ObjectBrowserView.java
@@ -64,7 +64,6 @@
import org.eclipse.ui.commands.IElementUpdater;
import org.eclipse.ui.contexts.IContextService;
import org.eclipse.ui.handlers.CollapseAllHandler;
-import org.eclipse.ui.handlers.IHandlerService;
import org.eclipse.ui.menus.CommandContributionItemParameter;
import org.eclipse.ui.menus.UIElement;
import org.eclipse.ui.part.ViewPart;
@@ -82,11 +81,11 @@
import org.eclipse.statet.jcommons.ts.core.Tool;
import org.eclipse.statet.jcommons.ts.core.ToolProvider;
+import org.eclipse.statet.ecommons.commands.core.HandlerCollection;
import org.eclipse.statet.ecommons.models.core.util.ElementPartition;
import org.eclipse.statet.ecommons.ts.ui.workbench.WorkbenchToolRegistry;
import org.eclipse.statet.ecommons.ts.ui.workbench.WorkbenchToolRegistryListener;
import org.eclipse.statet.ecommons.ts.ui.workbench.WorkbenchToolSessionData;
-import org.eclipse.statet.ecommons.ui.actions.HandlerCollection;
import org.eclipse.statet.ecommons.ui.actions.HandlerContributionItem;
import org.eclipse.statet.ecommons.ui.actions.SearchContributionItem;
import org.eclipse.statet.ecommons.ui.actions.UIActions;
@@ -466,7 +465,7 @@
final IViewSite site= getViewSite();
site.setSelectionProvider(treeSelectionProvider);
this.actionUtil= new ViewActionUtil(this);
- this.handlers= new ContextHandlers(site.getService(IHandlerService.class));
+ this.handlers= new ContextHandlers(site);
initActions(site, this.handlers);
contributeToActionBars(site, site.getActionBars(), this.handlers);
hookContextMenu();
diff --git a/redocs/org.eclipse.statet.redocs.tex.r/META-INF/MANIFEST.MF b/redocs/org.eclipse.statet.redocs.tex.r/META-INF/MANIFEST.MF
index 9f9d0cc..ac8174f 100644
--- a/redocs/org.eclipse.statet.redocs.tex.r/META-INF/MANIFEST.MF
+++ b/redocs/org.eclipse.statet.redocs.tex.r/META-INF/MANIFEST.MF
@@ -28,6 +28,7 @@
org.eclipse.statet.nico.ui,
org.eclipse.statet.r.console.ui
Import-Package: com.ibm.icu.text;version="67.1.0",
+ org.eclipse.statet.ecommons.commands.core;version="4.4.0",
org.eclipse.statet.ecommons.databinding,
org.eclipse.statet.ecommons.debug.core.util,
org.eclipse.statet.ecommons.io,
diff --git a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/ui/editors/LtxRweaveOutlinePage.java b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/ui/editors/LtxRweaveOutlinePage.java
index ae936bc..0eaf59c 100644
--- a/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/ui/editors/LtxRweaveOutlinePage.java
+++ b/redocs/org.eclipse.statet.redocs.tex.r/src/org/eclipse/statet/internal/redocs/tex/r/ui/editors/LtxRweaveOutlinePage.java
@@ -43,7 +43,7 @@
import org.eclipse.statet.jcommons.lang.NonNullByDefault;
import org.eclipse.statet.jcommons.lang.Nullable;
-import org.eclipse.statet.ecommons.ui.actions.HandlerCollection;
+import org.eclipse.statet.ecommons.commands.core.HandlerCollection;
import org.eclipse.statet.ecommons.ui.actions.HandlerContributionItem;
import org.eclipse.statet.ecommons.ui.dialogs.DialogUtils;
import org.eclipse.statet.ecommons.ui.util.UIAccess;
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r/META-INF/MANIFEST.MF b/redocs/org.eclipse.statet.redocs.wikitext.r/META-INF/MANIFEST.MF
index 0463696..cab9787 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r/META-INF/MANIFEST.MF
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r/META-INF/MANIFEST.MF
@@ -30,6 +30,7 @@
org.eclipse.statet.nico.ui,
org.eclipse.statet.r.console.ui
Import-Package: com.ibm.icu.text;version="67.1.0",
+ org.eclipse.statet.ecommons.commands.core;version="4.4.0",
org.eclipse.statet.ecommons.databinding,
org.eclipse.statet.ecommons.io,
org.eclipse.statet.ecommons.models,
diff --git a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/ui/editors/WikidocRweaveOutlinePage.java b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/ui/editors/WikidocRweaveOutlinePage.java
index 84a7182..2fb326f 100644
--- a/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/ui/editors/WikidocRweaveOutlinePage.java
+++ b/redocs/org.eclipse.statet.redocs.wikitext.r/src/org/eclipse/statet/internal/redocs/wikitext/r/ui/editors/WikidocRweaveOutlinePage.java
@@ -43,7 +43,7 @@
import org.eclipse.statet.jcommons.lang.NonNullByDefault;
import org.eclipse.statet.jcommons.lang.Nullable;
-import org.eclipse.statet.ecommons.ui.actions.HandlerCollection;
+import org.eclipse.statet.ecommons.commands.core.HandlerCollection;
import org.eclipse.statet.ecommons.ui.actions.HandlerContributionItem;
import org.eclipse.statet.ecommons.ui.dialogs.DialogUtils;
import org.eclipse.statet.ecommons.ui.util.UIAccess;
diff --git a/rtm/org.eclipse.statet.rtm.base.ui/META-INF/MANIFEST.MF b/rtm/org.eclipse.statet.rtm.base.ui/META-INF/MANIFEST.MF
index 13e4815..d1ff38c 100644
--- a/rtm/org.eclipse.statet.rtm.base.ui/META-INF/MANIFEST.MF
+++ b/rtm/org.eclipse.statet.rtm.base.ui/META-INF/MANIFEST.MF
@@ -32,6 +32,7 @@
org.eclipse.statet.ide.ui,
org.eclipse.statet.r.ui
Import-Package: com.ibm.icu.text;version="67.1.0",
+ org.eclipse.statet.ecommons.commands.core;version="4.4.0",
org.eclipse.statet.ecommons.databinding;version="4.4.0",
org.eclipse.statet.ecommons.databinding.core;version="4.4.0",
org.eclipse.statet.ecommons.graphics.core,
diff --git a/rtm/org.eclipse.statet.rtm.base.ui/src/org/eclipse/statet/ecommons/emf/ui/forms/EFEditor.java b/rtm/org.eclipse.statet.rtm.base.ui/src/org/eclipse/statet/ecommons/emf/ui/forms/EFEditor.java
index 816adf5..0179384 100644
--- a/rtm/org.eclipse.statet.rtm.base.ui/src/org/eclipse/statet/ecommons/emf/ui/forms/EFEditor.java
+++ b/rtm/org.eclipse.statet.rtm.base.ui/src/org/eclipse/statet/ecommons/emf/ui/forms/EFEditor.java
@@ -115,8 +115,9 @@
import org.eclipse.ui.views.properties.PropertySheet;
import org.eclipse.ui.views.properties.tabbed.ITabbedPropertySheetPageContributor;
+import org.eclipse.statet.ecommons.commands.core.BasicHandlerCollection;
+import org.eclipse.statet.ecommons.commands.core.HandlerCollection;
import org.eclipse.statet.ecommons.emf.core.util.RuleSet;
-import org.eclipse.statet.ecommons.ui.actions.HandlerCollection;
import org.eclipse.statet.internal.ecommons.emf.ui.forms.CopyEObjectHandler;
import org.eclipse.statet.internal.ecommons.emf.ui.forms.CutEObjectHandler;
@@ -875,7 +876,7 @@
}
});
- this.handlers= new HandlerCollection();
+ this.handlers= new BasicHandlerCollection();
createActions(getSite(), this.handlers);
}
diff --git a/rtm/org.eclipse.statet.rtm.base.ui/src/org/eclipse/statet/rtm/base/ui/editors/RTaskEditor.java b/rtm/org.eclipse.statet.rtm.base.ui/src/org/eclipse/statet/rtm/base/ui/editors/RTaskEditor.java
index c5515b0..cde5142 100644
--- a/rtm/org.eclipse.statet.rtm.base.ui/src/org/eclipse/statet/rtm/base/ui/editors/RTaskEditor.java
+++ b/rtm/org.eclipse.statet.rtm.base.ui/src/org/eclipse/statet/rtm/base/ui/editors/RTaskEditor.java
@@ -29,8 +29,8 @@
import org.eclipse.ui.services.IServiceLocator;
import org.eclipse.ui.statushandlers.StatusManager;
+import org.eclipse.statet.ecommons.commands.core.HandlerCollection;
import org.eclipse.statet.ecommons.emf.ui.forms.EFEditor;
-import org.eclipse.statet.ecommons.ui.actions.HandlerCollection;
import org.eclipse.statet.ecommons.ui.actions.HandlerContributionItem;
import org.eclipse.statet.internal.rtm.base.ui.actions.RunRTaskHandler;
diff --git a/rtm/org.eclipse.statet.rtm.ftable.ui/META-INF/MANIFEST.MF b/rtm/org.eclipse.statet.rtm.ftable.ui/META-INF/MANIFEST.MF
index 3f09393..288b8c1 100644
--- a/rtm/org.eclipse.statet.rtm.ftable.ui/META-INF/MANIFEST.MF
+++ b/rtm/org.eclipse.statet.rtm.ftable.ui/META-INF/MANIFEST.MF
@@ -17,4 +17,5 @@
org.eclipse.statet.rtm.base.ui;bundle-version="[4.4.0,4.5.0)",
org.eclipse.statet.r.ui;bundle-version="[4.4.0,4.5.0)"
Import-Package: org.eclipse.statet.jcommons.collections;version="4.4.0",
- org.eclipse.statet.jcommons.lang;version="4.4.0"
+ org.eclipse.statet.jcommons.lang;version="4.4.0",
+ org.eclipse.statet.ecommons.commands.core;version="4.4.0"
diff --git a/rtm/org.eclipse.statet.rtm.ggplot.ui/META-INF/MANIFEST.MF b/rtm/org.eclipse.statet.rtm.ggplot.ui/META-INF/MANIFEST.MF
index 1bbd6a5..942d536 100644
--- a/rtm/org.eclipse.statet.rtm.ggplot.ui/META-INF/MANIFEST.MF
+++ b/rtm/org.eclipse.statet.rtm.ggplot.ui/META-INF/MANIFEST.MF
@@ -19,4 +19,5 @@
org.eclipse.statet.rtm.base.ui;bundle-version="[4.4.0,4.5.0)",
org.eclipse.statet.r.ui;bundle-version="[4.4.0,4.5.0)"
Import-Package: org.eclipse.statet.jcommons.collections;version="4.4.0",
- org.eclipse.statet.jcommons.lang;version="4.4.0"
+ org.eclipse.statet.jcommons.lang;version="4.4.0",
+ org.eclipse.statet.ecommons.commands.core;version="4.4.0"