X-Git-Url: http://git.phpeclipse.com diff --git a/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/phpeditor/PHPActionContributor.java b/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/phpeditor/PHPActionContributor.java index 2ae8dd2..d4f26f2 100644 --- a/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/phpeditor/PHPActionContributor.java +++ b/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/phpeditor/PHPActionContributor.java @@ -1,27 +1,21 @@ package net.sourceforge.phpeclipse.phpeditor; - -/********************************************************************** -Copyright (c) 2000, 2002 IBM Corp. 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 implementation - Klaus Hartlage - www.eclipseproject.de -**********************************************************************/ - +/******************************************************************************* + * Copyright (c) 2000, 2002 IBM Corp. 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 implementation Klaus Hartlage - + * www.eclipseproject.de + ******************************************************************************/ import java.util.ArrayList; import java.util.Iterator; import java.util.List; import java.util.ResourceBundle; - import net.sourceforge.phpdt.ui.IContextMenuConstants; import net.sourceforge.phpdt.ui.actions.GotoMatchingBracketAction; import net.sourceforge.phpdt.ui.actions.PHPdtActionConstants; import net.sourceforge.phpeclipse.PHPeclipsePlugin; - import org.eclipse.core.resources.IFile; import org.eclipse.jface.action.IAction; import org.eclipse.jface.action.IMenuManager; @@ -44,81 +38,83 @@ import org.eclipse.ui.texteditor.ITextEditor; import org.eclipse.ui.texteditor.ITextEditorActionDefinitionIds; import org.eclipse.ui.texteditor.RetargetTextEditorAction; /** - * Contributes interesting PHP actions to the desktop's Edit menu and the toolbar. + * Contributes interesting PHP actions to the desktop's Edit menu and the + * toolbar. */ public class PHPActionContributor extends BasicTextEditorActionContributor { - protected RetargetTextEditorAction fContentAssistTip; // protected TextEditorAction fTogglePresentation; protected RetargetAction fRetargetContentAssist; - protected RetargetTextEditorAction fContentAssist; private RetargetTextEditorAction fGotoMatchingBracket; private List fRetargetToolbarActions = new ArrayList(); private List fPartListeners = new ArrayList(); - protected PHPParserAction fParserAction; protected ShowExternalPreviewAction fShowExternalPreviewAction; - private EncodingActionGroup fEncodingActionGroup; /** * Default constructor. */ public PHPActionContributor() { super(); - ResourceBundle b = PHPEditorMessages.getResourceBundle(); - - fRetargetContentAssist = new RetargetAction(PHPdtActionConstants.CONTENT_ASSIST, PHPEditorMessages.getString("ContentAssistProposal.label")); //$NON-NLS-1$ - fRetargetContentAssist.setActionDefinitionId(ITextEditorActionDefinitionIds.CONTENT_ASSIST_PROPOSALS); + fRetargetContentAssist = new RetargetAction( + PHPdtActionConstants.CONTENT_ASSIST, PHPEditorMessages + .getString("ContentAssistProposal.label")); //$NON-NLS-1$ + fRetargetContentAssist + .setActionDefinitionId(ITextEditorActionDefinitionIds.CONTENT_ASSIST_PROPOSALS); markAsPartListener(fRetargetContentAssist); - fContentAssist = new RetargetTextEditorAction(b, "ContentAssistProposal."); //$NON-NLS-1$ - fContentAssist.setActionDefinitionId(ITextEditorActionDefinitionIds.CONTENT_ASSIST_PROPOSALS); - - fGotoMatchingBracket = new RetargetTextEditorAction(b, "GotoMatchingBracket."); //$NON-NLS-1$ - fGotoMatchingBracket.setActionDefinitionId(PHPEditorActionDefinitionIds.GOTO_MATCHING_BRACKET); - + fContentAssist + .setActionDefinitionId(ITextEditorActionDefinitionIds.CONTENT_ASSIST_PROPOSALS); + fGotoMatchingBracket = new RetargetTextEditorAction(b, + "GotoMatchingBracket."); //$NON-NLS-1$ + fGotoMatchingBracket + .setActionDefinitionId(PHPEditorActionDefinitionIds.GOTO_MATCHING_BRACKET); // fContentAssist.setImageDescriptor(JavaPluginImages.DESC_CLCL_CODE_ASSIST); // fContentAssist.setDisabledImageDescriptor(JavaPluginImages.DESC_DLCL_CODE_ASSIST); - - // fContentAssist = new RetargetTextEditorAction(PHPEditorMessages.getResourceBundle(), "ContentAssistProposal."); //$NON-NLS-1$ - fContentAssistTip = new RetargetTextEditorAction(PHPEditorMessages.getResourceBundle(), "ContentAssistTip."); //$NON-NLS-1$ + // fContentAssist = new + // RetargetTextEditorAction(PHPEditorMessages.getResourceBundle(), + // "ContentAssistProposal."); //$NON-NLS-1$ + fContentAssistTip = new RetargetTextEditorAction(PHPEditorMessages + .getResourceBundle(), "ContentAssistTip."); //$NON-NLS-1$ // fTogglePresentation = new PresentationAction(); - // character encoding fEncodingActionGroup = new EncodingActionGroup(); - fParserAction = PHPParserAction.getInstance(); - if (SWT.getPlatform().equals("win32")) { // ExternalPreview only available as ActiveX on win32 (Eclipse2.1) fShowExternalPreviewAction = ShowExternalPreviewAction.getInstance(); } } - protected final void markAsPartListener(RetargetAction action) { fPartListeners.add(action); } - /* * @see EditorActionBarContributor#contributeToMenu(IMenuManager) */ - // public void contributeToMenu(IMenuManager menu) { + // public void contributeToMenu(IMenuManager menu) { // super.contributeToMenu(menu); - // IMenuManager editMenu= menu.findMenuUsingPath(IWorkbenchActionConstants.M_EDIT); + // IMenuManager editMenu= + // menu.findMenuUsingPath(IWorkbenchActionConstants.M_EDIT); // if (editMenu != null) { - // MenuManager structureSelection= new MenuManager(JavaEditorMessages.getString("ExpandSelectionMenu.label")); //$NON-NLS-1$ + // MenuManager structureSelection= new + // MenuManager(JavaEditorMessages.getString("ExpandSelectionMenu.label")); + // //$NON-NLS-1$ // structureSelection.add(fStructureSelectEnclosingAction); // structureSelection.add(fStructureSelectNextAction); // structureSelection.add(fStructureSelectPreviousAction); // structureSelection.add(fStructureSelectHistoryAction); - // editMenu.appendToGroup(IContextMenuConstants.GROUP_OPEN, structureSelection); - // editMenu.appendToGroup(IContextMenuConstants.GROUP_OPEN, fGotoPreviousMemberAction); - // editMenu.appendToGroup(IContextMenuConstants.GROUP_OPEN, fGotoNextMemberAction); - // editMenu.appendToGroup(IContextMenuConstants.GROUP_OPEN, fGotoMatchingBracket); - - // editMenu.appendToGroup(IContextMenuConstants.GROUP_GENERATE, fShowOutline); + // editMenu.appendToGroup(IContextMenuConstants.GROUP_OPEN, + // structureSelection); + // editMenu.appendToGroup(IContextMenuConstants.GROUP_OPEN, + // fGotoPreviousMemberAction); + // editMenu.appendToGroup(IContextMenuConstants.GROUP_OPEN, + // fGotoNextMemberAction); + // editMenu.appendToGroup(IContextMenuConstants.GROUP_OPEN, + // fGotoMatchingBracket); + // editMenu.appendToGroup(IContextMenuConstants.GROUP_GENERATE, + // fShowOutline); // } // } /* @@ -128,52 +124,55 @@ public class PHPActionContributor extends BasicTextEditorActionContributor { // // super.contributeToMenu(menu); // - // IMenuManager editMenu= menu.findMenuUsingPath(IWorkbenchActionConstants.M_EDIT); + // IMenuManager editMenu= + // menu.findMenuUsingPath(IWorkbenchActionConstants.M_EDIT); // if (editMenu != null) { // editMenu.add(new Separator(IContextMenuConstants.GROUP_OPEN)); // editMenu.add(new Separator(IContextMenuConstants.GROUP_GENERATE)); // - // editMenu.appendToGroup(IContextMenuConstants.GROUP_GENERATE, fRetargetContentAssist); - // } + // editMenu.appendToGroup(IContextMenuConstants.GROUP_GENERATE, + // fRetargetContentAssist); + // } // } - /* - * @see org.eclipse.ui.part.EditorActionBarContributor#contributeToMenu(org.eclipse.jface.action.IMenuManager) - */ + * @see org.eclipse.ui.part.EditorActionBarContributor#contributeToMenu(org.eclipse.jface.action.IMenuManager) + */ public void contributeToMenu(IMenuManager menu) { - super.contributeToMenu(menu); - - IMenuManager editMenu = menu.findMenuUsingPath(IWorkbenchActionConstants.M_EDIT); + IMenuManager editMenu = menu + .findMenuUsingPath(IWorkbenchActionConstants.M_EDIT); if (editMenu != null) { editMenu.add(new Separator(IContextMenuConstants.GROUP_OPEN)); editMenu.add(new Separator(IContextMenuConstants.GROUP_GENERATE)); editMenu.add(new Separator(IContextMenuConstants.GROUP_ADDITIONS)); - // editMenu.appendToGroup( // IContextMenuConstants.GROUP_GENERATE, // fRetargetContentAssist); - - // MenuManager structureSelection= new MenuManager(JavaEditorMessages.getString("ExpandSelectionMenu.label"), "expandSelection"); //$NON-NLS-1$ //$NON-NLS-2$ + // MenuManager structureSelection= new + // MenuManager(JavaEditorMessages.getString("ExpandSelectionMenu.label"), + // "expandSelection"); //$NON-NLS-1$ //$NON-NLS-2$ // structureSelection.add(fStructureSelectEnclosingAction); // structureSelection.add(fStructureSelectNextAction); // structureSelection.add(fStructureSelectPreviousAction); // structureSelection.add(fStructureSelectHistoryAction); - // editMenu.appendToGroup(IContextMenuConstants.GROUP_OPEN, structureSelection); - - // editMenu.appendToGroup(IContextMenuConstants.GROUP_GENERATE, fRetargetShowJavaDoc); + // editMenu.appendToGroup(IContextMenuConstants.GROUP_OPEN, + // structureSelection); + // editMenu.appendToGroup(IContextMenuConstants.GROUP_GENERATE, + // fRetargetShowJavaDoc); } - - // IMenuManager navigateMenu= menu.findMenuUsingPath(IWorkbenchActionConstants.M_NAVIGATE); + // IMenuManager navigateMenu= + // menu.findMenuUsingPath(IWorkbenchActionConstants.M_NAVIGATE); // if (navigateMenu != null) { - // navigateMenu.appendToGroup(IWorkbenchActionConstants.SHOW_EXT, fShowOutline); + // navigateMenu.appendToGroup(IWorkbenchActionConstants.SHOW_EXT, + // fShowOutline); // } - IMenuManager gotoMenu = menu.findMenuUsingPath("navigate/goTo"); //$NON-NLS-1$ if (gotoMenu != null) { gotoMenu.add(new Separator("additions2")); //$NON-NLS-1$ - // gotoMenu.appendToGroup("additions2", fGotoPreviousMemberAction); //$NON-NLS-1$ - // gotoMenu.appendToGroup("additions2", fGotoNextMemberAction); //$NON-NLS-1$ + // gotoMenu.appendToGroup("additions2", fGotoPreviousMemberAction); + // //$NON-NLS-1$ + // gotoMenu.appendToGroup("additions2", fGotoNextMemberAction); + // //$NON-NLS-1$ gotoMenu.appendToGroup("additions2", fGotoMatchingBracket); //$NON-NLS-1$ } } @@ -186,7 +185,6 @@ public class PHPActionContributor extends BasicTextEditorActionContributor { while (e.hasNext()) tbm.add((IAction) e.next()); } - /* * @see IEditorActionBarContributor#init(IActionBars, IWorkbenchPage) */ @@ -203,52 +201,51 @@ public class PHPActionContributor extends BasicTextEditorActionContributor { */ public void init(IActionBars bars) { super.init(bars); - IMenuManager menuManager = bars.getMenuManager(); - IMenuManager editMenu = menuManager.findMenuUsingPath(IWorkbenchActionConstants.M_EDIT); + IMenuManager editMenu = menuManager + .findMenuUsingPath(IWorkbenchActionConstants.M_EDIT); if (editMenu != null) { editMenu.add(new Separator()); editMenu.add(fContentAssist); // editMenu.add(fGotoMatchingBracket); // editMenu.add(fContentAssistTip); } - - bars.setGlobalActionHandler(PHPdtActionConstants.CONTENT_ASSIST, fContentAssist); + bars.setGlobalActionHandler(PHPdtActionConstants.CONTENT_ASSIST, + fContentAssist); // IToolBarManager toolBarManager = bars.getToolBarManager(); // if (toolBarManager != null) { // toolBarManager.add(new Separator()); // toolBarManager.add(fTogglePresentation); // } } - /* * @see IEditorActionBarContributor#setActiveEditor(IEditorPart) */ public void setActiveEditor(IEditorPart part) { super.setActiveEditor(part); - IActionBars bars = getActionBars(); IStatusLineManager manager = bars.getStatusLineManager(); manager.setMessage(null); manager.setErrorMessage(null); - ITextEditor textEditor = null; if (part instanceof ITextEditor) textEditor = (ITextEditor) part; - fContentAssist.setAction(getAction(textEditor, "ContentAssistProposal")); //$NON-NLS-1$ fContentAssistTip.setAction(getAction(textEditor, "ContentAssistTip")); //$NON-NLS-1$ - fGotoMatchingBracket.setAction(getAction(textEditor, GotoMatchingBracketAction.GOTO_MATCHING_BRACKET)); - - bars.setGlobalActionHandler(PHPdtActionConstants.SHIFT_RIGHT, getAction(textEditor, "ShiftRight")); //$NON-NLS-1$ - bars.setGlobalActionHandler(PHPdtActionConstants.SHIFT_LEFT, getAction(textEditor, "ShiftLeft")); //$NON-NLS-1$ + fGotoMatchingBracket.setAction(getAction(textEditor, + GotoMatchingBracketAction.GOTO_MATCHING_BRACKET)); + bars.setGlobalActionHandler(PHPdtActionConstants.SHIFT_RIGHT, getAction( + textEditor, "ShiftRight")); //$NON-NLS-1$ + bars.setGlobalActionHandler(PHPdtActionConstants.SHIFT_LEFT, getAction( + textEditor, "ShiftLeft")); //$NON-NLS-1$ // character encoding fEncodingActionGroup.retarget(textEditor); - - bars.setGlobalActionHandler(PHPdtActionConstants.COMMENT, getAction(textEditor, "Comment")); - bars.setGlobalActionHandler(PHPdtActionConstants.UNCOMMENT, getAction(textEditor, "Uncomment")); - bars.setGlobalActionHandler(PHPdtActionConstants.FORMAT, getAction(textEditor, "Format")); - + bars.setGlobalActionHandler(PHPdtActionConstants.COMMENT, getAction( + textEditor, "Comment")); + bars.setGlobalActionHandler(PHPdtActionConstants.UNCOMMENT, getAction( + textEditor, "Uncomment")); + bars.setGlobalActionHandler(PHPdtActionConstants.FORMAT, getAction( + textEditor, "Format")); if (part instanceof PHPEditor) { PHPEditor phpEditor = (PHPEditor) part; phpEditor.getActionGroup().fillActionBars(getActionBars()); @@ -261,32 +258,24 @@ public class PHPActionContributor extends BasicTextEditorActionContributor { // } // fTogglePresentation.setEditor(editor); // fTogglePresentation.update(); - if (textEditor != null) { - IFile file = null; IEditorInput editorInput = textEditor.getEditorInput(); - if (editorInput instanceof IFileEditorInput) { file = ((IFileEditorInput) editorInput).getFile(); } - PHPeclipsePlugin.getDefault().setLastEditorFile(file); fParserAction.setEditor(textEditor); fParserAction.update(); - if (SWT.getPlatform().equals("win32") && textEditor instanceof AbstractTextEditor) { + if (textEditor instanceof AbstractTextEditor) { fShowExternalPreviewAction.setEditor(textEditor); fShowExternalPreviewAction.update(); - IPreferenceStore store = PHPeclipsePlugin.getDefault().getPreferenceStore(); - if (store.getBoolean(PHPeclipsePlugin.SHOW_EXTERNAL_PREVIEW_PREF)) { - IAction a = ShowExternalPreviewAction.getInstance(); - if (a != null) - a.run(); - } + IAction a = ShowExternalPreviewAction.getInstance(); + if (a != null) + a.run(); } } } - /* * @see IEditorActionBarContributor#dispose() */ @@ -295,7 +284,6 @@ public class PHPActionContributor extends BasicTextEditorActionContributor { while (e.hasNext()) getPage().removePartListener((RetargetAction) e.next()); fPartListeners.clear(); - setActiveEditor(null); super.dispose(); }