org.eclipse.ui.editorActions

Láthattuk, hogy a szerkesztők hogyan adják közre saját tevékenységeiket a munkaterület-menükön és eszköztárakon, amikor aktívvá válnak. Az org.eclipse.ui.editorActions kiterjesztési pont segítségével a bedolgozó elemeket adhat hozzá a munkaterület-menükhöz és eszköztárakhoz, ha másik bedolgozó szerkesztője aktívvá válik.

A readme példában a bedolgozó az editorActions kiterjesztési pont segítségével ad hozzá további tevékenységeket a readme szerkesztő által közreadott menühöz. A plugin.xml fájlban lévő definíciónak mostanra ismerősnek kell lennie.

<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.png" 
              tooltip="%Editors.Action.tooltip" 
              class="org.eclipse.ui.examples.readmetool.EditorActionDelegate" 
              /> 
      </editorContribution>
</extension>

A nézet tevékenységhez hasonlóan a kiterjesztésnek meg kell adni a szerkesztő targetID azonosítóját, amely tevékenységeket ad közre.  A tevékenység maga nagyon hasonlít a nézet tevékenységhez (azonosító, címke, ikon, toolbarPath, ...), azzal a kivétellel, hogy a megadott osztálynak meg kell valósítani az IEditorActionDelegate elemet.  

Ne feledje el, hogy a menüsor elérési út nincs megadva ebben a leírónyelvben. A tevékenység megjelenik a munkaterületen, amikor a szerkesztő aktív, de nincs a munkaterület-menüsoron.  (Az eszköztár és menü elérési utak leírását a Menü és eszköztár elérési utak rész tartalmazza.)

Ha a szerkesztő aktív, akkor az eszköztáron a tevékenységek mellett megjelenik a szerkesztőtevékenység, amelyet maga a szerkesztő adott közre.

A munkaterület eszköztárával közreműködő eredeti szerkesztő mellett megjelenő szerkesztőművelet

A readme eszköz az EditorActionDelegate elem segítségével valósítja meg a tevékenységet. Ez az osztály nagyon hasonló a korábban látott nézet tevékenység delegáláshoz.

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