org.eclipse.ui.editorActions

E stato appena illustrato come gli editor possono offrire proprie azioni ai menu e alla barra degli strumenti del workbench quando diventano attivi.  Il punto di estensione org.eclipse.ui.editorActions consente di aggiungere un plug-in ai menu e alla barra degli strumenti del workbench quando diventa attivo l'editor di un altro plug-in.

Nell'esempio dello strumento readme, il plug-in utilizza il punto di estensione editorActions per contribuire con azioni aggiuntive al menu fornito dall'editor di readme. La definizione in plugin.xml dovrebbe ormai risultare abbastanza familiare.

<extension
    point = "org.eclipse.ui.editorActions">
      <editorContribution 
         id="org.eclipse.ui.examples.readmetool.ec1" 
         targetID="org.eclipse.ui.examples.readmetool.ReadmeEditor">        
	   <action id="org.eclipse.ui.examples.readmetool.ea1" 
              label="%Editors.Action.label" 
	      toolbarPath="ReadmeEditor" 
              icon="icons/obj16/editor.gif" 
              tooltip="%Editors.Action.tooltip" 
              class="org.eclipse.ui.examples.readmetool.EditorActionDelegate" 
              /> 
      </editorContribution>
 </extension>

L'estensione, al pari di un'azione di visualizzazione, deve specificare il targetID dell'editor al quale sta fornendo azioni.  La stessa azione risulta molto simile a un'azione di visualizzazione (id, label, icon, toolbarPath e così via), con l'unica eccezione che la classe specificata deve implementare IEditorActionDelegate.  

Si osservi che in questo tag non è specificato alcun percorso per la barra dei menu.  Per questo, l'azione, quando l'editor è attivo, viene visualizzata nella barra degli strumenti ma non in quella dei menu del workbench.  Per la trattazione dei percorsi di menu e barra degli strumenti, consultare Percorsi di menu e barre degli strumenti.

Quando l'editor è attivo, l'azione dell'editor viene visualizzata sulla barra degli strumenti accanto alle azioni fornite dall'editor stesso.

L'azione
dell'editor viene visualizzata accanto ai contributi all'editor originali
nella barra degli strumenti del workbench

Lo strumento readme fornisce EditorActionDelegate per implementare l'azione.  Questa classe è molto simile all'azione di visualizzazione illustrata in precedenza.

public void run(IAction action) {
MessageDialog.openInformation(editor.getSite().getShell(),
		MessageUtil.getString("Readme_Editor"),  
		MessageUtil.getString("Editor_Action_executed")); 
}

Copyright
IBM Corp. e altri 2000,2002.