Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/navigator/JpaNavigatorActionProvider.java')
-rw-r--r--jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/navigator/JpaNavigatorActionProvider.java59
1 files changed, 59 insertions, 0 deletions
diff --git a/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/navigator/JpaNavigatorActionProvider.java b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/navigator/JpaNavigatorActionProvider.java
new file mode 100644
index 0000000000..35c0ab34f9
--- /dev/null
+++ b/jpa/plugins/org.eclipse.jpt.ui/src/org/eclipse/jpt/ui/internal/navigator/JpaNavigatorActionProvider.java
@@ -0,0 +1,59 @@
+/*******************************************************************************
+ * Copyright (c) 2008 Oracle.
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v1.0 which
+ * accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Oracle - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.jpt.ui.internal.navigator;
+
+import org.eclipse.jface.action.IMenuManager;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jpt.ui.internal.actions.OpenJpaResourceAction;
+import org.eclipse.ui.IActionBars;
+import org.eclipse.ui.actions.ActionContext;
+import org.eclipse.ui.navigator.CommonActionProvider;
+import org.eclipse.ui.navigator.ICommonActionConstants;
+import org.eclipse.ui.navigator.ICommonActionExtensionSite;
+import org.eclipse.ui.navigator.ICommonMenuConstants;
+
+public class JpaNavigatorActionProvider extends CommonActionProvider
+{
+ private OpenJpaResourceAction openAction;
+
+ public JpaNavigatorActionProvider() {
+ super();
+ }
+
+ public void init(ICommonActionExtensionSite aConfig) {
+ openAction = new OpenJpaResourceAction();
+ }
+
+ public void setContext(ActionContext aContext) {
+ if (aContext != null && aContext.getSelection() instanceof IStructuredSelection) {
+ IStructuredSelection selection = (IStructuredSelection) aContext.getSelection();
+ openAction.selectionChanged(selection);
+ }
+
+ super.setContext(aContext);
+ }
+
+ public void fillActionBars(IActionBars theActionBars) {
+ if (openAction.isEnabled()) {
+ theActionBars.setGlobalActionHandler(ICommonActionConstants.OPEN, openAction);
+ }
+ }
+
+ public void fillContextMenu(IMenuManager aMenu) {
+ if (getContext() == null || getContext().getSelection().isEmpty()) {
+ return;
+ }
+
+ if (openAction.isEnabled()) {
+ aMenu.insertAfter(ICommonMenuConstants.GROUP_OPEN, openAction);
+ }
+ }
+}

Back to the top