Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Menu Contributions"

(Current RCP using ActionBarAdvisor)
m (Current RCP using an actionSet)
Line 36: Line 36:
 
== Current RCP using an actionSet ==
 
== Current RCP using an actionSet ==
  
Using an actionSet, you can also place the command in the main menu.
+
Using an actionSet, you can also place the action in the main menu.
  
 
  <extension
 
  <extension

Revision as of 11:13, 18 October 2006

Placement examples that try to descript the old to new way.


Example Matrix

Example Location visible when enabled when defined by placed by handled by comments
File->Exit global menu always always Workbench IDEApplication IDEApplication
Edit->Copy global menu always there is an enabled handler Workbench IDEApplication active part (what about Trim??) enablement determined by handler
Global toolbar->Save global toolbar always the active part needs saving Workbench IDEApplication Workbench
Global toolbar->Open Type global toolbar Java Navigation action set is enabled Java Navigation action set is enabled JDT UI JDT UI JDT UI
Global toolbar->Toggle Mark Occurrences global (editor) toolbar any Java editor is active any Java editor is active all Java Editors all Java Editors active Java Editor push button state is updated based on active editor

File->Exit

Current RCP using ActionBarAdvisor

The ApplicationActionBarAdvisor should add the exit menu. The QuitAction is already coded.

// create the file menu
MenuManager menu = new MenuManager(IDEWorkbenchMessages.Workbench_file, IWorkbenchActionConstants.M_FILE);
// ...
quitAction = ActionFactory.QUIT.create(window);
register(quitAction);
ActionContributionItem quitItem = new ActionContributionItem(quitAction);
quitItem.setVisible(!"carbon".equals(SWT.getPlatform())); //$NON-NLS-1$
menu.add(quitItem);

Current RCP using an actionSet

Using an actionSet, you can also place the action in the main menu.

<extension
      point="org.eclipse.ui.actionSets">
   <actionSet
         id="org.eclipse.ui.file.exitActions"
         label="Exit Actions"
         visible="true">
      <action
            class="org.eclipse.ui.internal.QuitAction"
            id="quit"
            definitionId="org.eclipse.ui.file.exit"
            label="E&amp;xit"
            menubarPath="file/fileEnd"
            tooltip="Exit Eclipse">
      </action>
   </actionSet>
</extension>

Proposed new menu

With the new structure, you would have to turn the action into a handler.


<extension
      point="org.eclipse.ui.actionSets">
   <actionSet
         id="org.eclipse.ui.file.exitActions"
         label="Exit Actions"
         visible="true">
      <action
            class="org.eclipse.ui.internal.QuitAction"
            id="quit"
            definitionId="org.eclipse.ui.file.exit"
            label="E&amp;xit"
            menubarPath="file/fileEnd"
            tooltip="Exit Eclipse">
      </action>
   </actionSet>
</extension>


<extension
      point="org.eclipse.ui.actionSets">
   <actionSet
         id="org.eclipse.ui.file.exitActions"
         label="Exit Actions"
         visible="true">
      <action
            class="org.eclipse.ui.internal.QuitAction"
            id="quit"
            definitionId="org.eclipse.ui.file.exit"
            label="E&amp;xit"
            menubarPath="file/fileEnd"
            tooltip="Exit Eclipse">
      </action>
   </actionSet>
</extension>

Back to the top