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 84fdf1c..587bc9d 100644 --- a/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/phpeditor/PHPActionContributor.java +++ b/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/phpeditor/PHPActionContributor.java @@ -12,27 +12,31 @@ Contributors: Klaus Hartlage - www.eclipseproject.de **********************************************************************/ -import java.util.ResourceBundle; +import net.sourceforge.phpdt.ui.IContextMenuConstants; +import net.sourceforge.phpdt.ui.actions.PHPdtActionConstants; + import org.eclipse.jface.action.IMenuManager; -import org.eclipse.jface.action.IToolBarManager; import org.eclipse.jface.action.Separator; import org.eclipse.ui.IActionBars; import org.eclipse.ui.IEditorPart; import org.eclipse.ui.IWorkbenchActionConstants; -import org.eclipse.ui.editors.text.TextEditorActionContributor; +import org.eclipse.ui.actions.ActionGroup; +import org.eclipse.ui.actions.RetargetAction; import org.eclipse.ui.texteditor.BasicTextEditorActionContributor; import org.eclipse.ui.texteditor.ITextEditor; import org.eclipse.ui.texteditor.RetargetTextEditorAction; -import org.eclipse.ui.texteditor.TextEditorAction; /** * Contributes interesting PHP actions to the desktop's Edit menu and the toolbar. */ -public class PHPActionContributor extends BasicTextEditorActionContributor implements PHPEditorActionDefinitionIds { +public class PHPActionContributor extends BasicTextEditorActionContributor { - protected RetargetTextEditorAction fContentAssistProposal; // protected RetargetTextEditorAction fContentAssistTip; // protected TextEditorAction fTogglePresentation; + protected RetargetAction fRetargetContentAssist; + + protected RetargetTextEditorAction fContentAssist; + protected PHPParserAction parserAction; /** @@ -40,13 +44,41 @@ public class PHPActionContributor extends BasicTextEditorActionContributor imple */ public PHPActionContributor() { super(); - fContentAssistProposal = new RetargetTextEditorAction(PHPEditorMessages.getResourceBundle(), "ContentAssistProposal."); //$NON-NLS-1$ + + fRetargetContentAssist= new RetargetAction(PHPdtActionConstants.CONTENT_ASSIST, PHPEditorMessages.getString("ContentAssistProposal.label")); //$NON-NLS-1$ + fRetargetContentAssist.setActionDefinitionId(PHPEditorActionDefinitionIds.CONTENT_ASSIST_PROPOSALS); + + fContentAssist= new RetargetTextEditorAction(PHPEditorMessages.getResourceBundle(), "ContentAssistProposal."); //$NON-NLS-1$ + fContentAssist.setActionDefinitionId(PHPEditorActionDefinitionIds.CONTENT_ASSIST_PROPOSALS); +// 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$ // fTogglePresentation = new PresentationAction(); + + parserAction = PHPParserAction.getInstance(); } /* + * @see EditorActionBarContributor#contributeToMenu(IMenuManager) + */ +// public void contributeToMenu(IMenuManager menu) { +// +// super.contributeToMenu(menu); +// +// 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); +// } +// } + + /* * @see IEditorActionBarContributor#init(IActionBars) */ public void init(IActionBars bars) { @@ -56,10 +88,11 @@ public class PHPActionContributor extends BasicTextEditorActionContributor imple IMenuManager editMenu = menuManager.findMenuUsingPath(IWorkbenchActionConstants.M_EDIT); if (editMenu != null) { editMenu.add(new Separator()); - editMenu.add(fContentAssistProposal); + editMenu.add(fContentAssist); // editMenu.add(fContentAssistTip); } + bars.setGlobalActionHandler(PHPdtActionConstants.CONTENT_ASSIST, fContentAssist); // IToolBarManager toolBarManager = bars.getToolBarManager(); // if (toolBarManager != null) { // toolBarManager.add(new Separator()); @@ -74,13 +107,20 @@ public class PHPActionContributor extends BasicTextEditorActionContributor imple if (part instanceof ITextEditor) textEditor = (ITextEditor) part; - fContentAssistProposal.setAction(getAction(textEditor, "ContentAssistProposal")); //$NON-NLS-1$ + fContentAssist.setAction(getAction(textEditor, "ContentAssistProposal")); //$NON-NLS-1$ // fContentAssistTip.setAction(getAction(editor, "ContentAssistTip")); //$NON-NLS-1$ - + IActionBars bars = getActionBars(); - bars.setGlobalActionHandler(COMMENT, getAction(textEditor, "Comment")); - bars.setGlobalActionHandler(UNCOMMENT, getAction(textEditor, "Uncomment")); - + 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 cuEditor= (PHPEditor)part; + ActionGroup group= cuEditor.getActionGroup(); + if (group != null) + group.fillActionBars(bars); + } // fTogglePresentation.setEditor(editor); // fTogglePresentation.update(); @@ -92,9 +132,7 @@ public class PHPActionContributor extends BasicTextEditorActionContributor imple * @see IEditorActionBarContributor#setActiveEditor(IEditorPart) */ public void setActiveEditor(IEditorPart part) { - super.setActiveEditor(part); - doSetActiveEditor(part); - + doSetActiveEditor(part); } /*