X-Git-Url: http://secure.phpeclipse.com diff --git a/net.sourceforge.phpeclipse.ui/src/net/sourceforge/phpdt/ui/actions/OpenEditorActionGroup.java b/net.sourceforge.phpeclipse.ui/src/net/sourceforge/phpdt/ui/actions/OpenEditorActionGroup.java deleted file mode 100644 index 0d41704..0000000 --- a/net.sourceforge.phpeclipse.ui/src/net/sourceforge/phpdt/ui/actions/OpenEditorActionGroup.java +++ /dev/null @@ -1,159 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2000, 2004 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Common Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/cpl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package net.sourceforge.phpdt.ui.actions; - -import net.sourceforge.phpdt.internal.ui.actions.ActionMessages; -import net.sourceforge.phpdt.ui.IContextMenuConstants; -import net.sourceforge.phpeclipse.actions.PHPOpenDeclarationAction; -import net.sourceforge.phpeclipse.phpeditor.PHPEditor; - -import org.eclipse.core.resources.IFile; -import org.eclipse.core.resources.IResource; -import org.eclipse.core.runtime.IAdaptable; -import org.eclipse.jface.action.IAction; -import org.eclipse.jface.action.IMenuManager; -import org.eclipse.jface.action.MenuManager; -import org.eclipse.jface.viewers.ISelection; -import org.eclipse.jface.viewers.ISelectionProvider; -import org.eclipse.jface.viewers.IStructuredSelection; -import org.eclipse.ui.IActionBars; -//import org.eclipse.ui.IViewPart; -import org.eclipse.ui.IWorkbenchSite; -import org.eclipse.ui.actions.ActionGroup; -import org.eclipse.ui.actions.OpenWithMenu; - -/** - * Action group that adds the actions opening a new editor to the context menu - * and the action bar's navigate menu. - * - *
- * This class may be instantiated; it is not intended to be subclassed. - *
- * - * @since 2.0 - */ -public class OpenEditorActionGroup extends ActionGroup { - - private IWorkbenchSite fSite; - - private boolean fIsEditorOwner; - - private PHPOpenDeclarationAction fOpen; - - /** - * Creates a newOpenActionGroup
. The group requires that
- * the selection provided by the part's selection provider is of type
- * org.eclipse.jface.viewers.IStructuredSelection
.
- *
- * @param part
- * the view part that owns this action group
- */
-// public OpenEditorActionGroup(IViewPart part) {
-// fSite = part.getSite();
-// fOpen = new PHPOpenDeclarationAction(fSite);
-// fOpen.setActionDefinitionId(PHPEditorActionDefinitionIds.OPEN_EDITOR);
-// initialize(fSite.getSelectionProvider());
-// }
-
- /**
- * Note: This constructor is for internal use only. Clients should not call
- * this constructor.
- */
- public OpenEditorActionGroup(PHPEditor part) {
- fIsEditorOwner = true;
- fOpen = new PHPOpenDeclarationAction(part);
- fOpen.setActionDefinitionId(PHPEditorActionDefinitionIds.OPEN_EDITOR);
- part.setAction("OpenEditor", fOpen); //$NON-NLS-1$
- fSite = part.getEditorSite();
- initialize(fSite.getSelectionProvider());
- }
-
- /**
- * Returns the open action managed by this action group.
- *
- * @return the open action. Returns null
if the group doesn't
- * provide any open action
- */
-// public IAction getOpenAction() {
-// return fOpen;
-// }
-
- private void initialize(ISelectionProvider provider) {
- ISelection selection = provider.getSelection();
- fOpen.update(selection);
- if (!fIsEditorOwner) {
- provider.addSelectionChangedListener(fOpen);
- }
- }
-
- /*
- * (non-Javadoc) Method declared in ActionGroup
- */
- public void fillActionBars(IActionBars actionBar) {
- super.fillActionBars(actionBar);
- setGlobalActionHandlers(actionBar);
- }
-
- /*
- * (non-Javadoc) Method declared in ActionGroup
- */
- public void fillContextMenu(IMenuManager menu) {
- super.fillContextMenu(menu);
- appendToGroup(menu, fOpen);
- if (!fIsEditorOwner) {
- addOpenWithMenu(menu);
- }
- }
-
- /*
- * @see ActionGroup#dispose()
- */
- public void dispose() {
- ISelectionProvider provider = fSite.getSelectionProvider();
- provider.removeSelectionChangedListener(fOpen);
- super.dispose();
- }
-
- private void setGlobalActionHandlers(IActionBars actionBars) {
- actionBars.setGlobalActionHandler(PHPdtActionConstants.OPEN, fOpen);
- }
-
- private void appendToGroup(IMenuManager menu, IAction action) {
- if (action.isEnabled())
- menu.appendToGroup(IContextMenuConstants.GROUP_OPEN, action);
- }
-
- private void addOpenWithMenu(IMenuManager menu) {
- ISelection selection = getContext().getSelection();
- if (selection.isEmpty() || !(selection instanceof IStructuredSelection))
- return;
- IStructuredSelection ss = (IStructuredSelection) selection;
- if (ss.size() != 1)
- return;
-
- Object o = ss.getFirstElement();
- if (!(o instanceof IAdaptable))
- return;
-
- IAdaptable element = (IAdaptable) o;
- Object resource = element.getAdapter(IResource.class);
- if (!(resource instanceof IFile))
- return;
-
- // Create a menu flyout.
- IMenuManager submenu = new MenuManager(ActionMessages
- .getString("OpenWithMenu.label")); //$NON-NLS-1$
- submenu.add(new OpenWithMenu(fSite.getPage(), (IFile) resource));
-
- // Add the submenu.
- menu.appendToGroup(IContextMenuConstants.GROUP_OPEN, submenu);
- }
-}