1 /*******************************************************************************
2 * Copyright (c) 2003, 2011 IBM Corporation and others.
3 * All rights reserved. This program and the accompanying materials
4 * are made available under the terms of the Eclipse Public License v1.0
5 * which accompanies this distribution, and is available at
6 * http://www.eclipse.org/legal/epl-v10.html
9 * IBM Corporation - initial API and implementation
10 *******************************************************************************/
11 package org.eclipse.jdt.internal.ui.navigator;
13 import org.eclipse.jface.action.IAction;
14 import org.eclipse.jface.action.IMenuManager;
15 import org.eclipse.jface.viewers.TreeViewer;
17 import org.eclipse.ui.IActionBars;
18 import org.eclipse.ui.IViewPart;
19 import org.eclipse.ui.actions.ActionContext;
20 import org.eclipse.ui.navigator.CommonActionProvider;
21 import org.eclipse.ui.navigator.ICommonActionExtensionSite;
22 import org.eclipse.ui.navigator.ICommonViewerWorkbenchSite;
24 import org.eclipse.jdt.ui.actions.OpenAction;
25 import org.eclipse.jdt.ui.actions.OpenEditorActionGroup;
27 public class PackageExplorerOpenActionProvider extends CommonActionProvider {
30 public IAction fOpenAndExpand;
31 public OpenEditorActionGroup fOpenGroup;
33 private boolean fInViewPart = false;
36 public void fillActionBars(IActionBars actionBars) {
38 fOpenGroup.generated_2953987140663770286(this, actionBars);
44 public void fillContextMenu(IMenuManager menu) {
47 fOpenGroup.generated_3287162131719738023(menu);
52 public void init(ICommonActionExtensionSite site) {
54 ICommonViewerWorkbenchSite workbenchSite = null;
55 if (site.getViewSite() instanceof ICommonViewerWorkbenchSite)
56 workbenchSite = (ICommonViewerWorkbenchSite) site.getViewSite();
58 if (workbenchSite != null) {
59 if (workbenchSite.getPart() != null && workbenchSite.getPart() instanceof IViewPart) {
60 IViewPart viewPart = (IViewPart) workbenchSite.getPart();
62 fOpenGroup = new OpenEditorActionGroup(viewPart);
64 if (site.getStructuredViewer() instanceof TreeViewer)
65 fOpenAndExpand = new OpenAndExpand(workbenchSite.getSite(), (OpenAction) fOpenGroup.getOpenAction(), (TreeViewer) site.getStructuredViewer());
72 public void setContext(ActionContext context) {
73 super.setContext(context);
75 fOpenGroup.setContext(context);
80 * @see org.eclipse.ui.actions.ActionGroup#dispose()
84 public void dispose() {
85 if (fOpenGroup != null)