org.eclipse.ui.viewActions

A bedolgozók általában jellemzőt biztosítanak a munkaterületen már létező nézetek számára. Ez az org.eclipse.ui.viewActions kiterjesztési pont segítségével kerül végrehajtásra. Ezen kiterjesztési pont segítségével a bedolgozók menüpontokat, almenüket és eszköztár-bejegyzéseket adhatnak közre egy meglévő nézet helyi legördülő menüjén és helyi eszköztárán.

A navigátor helyi eszköztárán lehet egy olyan elem, amely engedélyezésre kerül a readme fájl kiválasztásakor. Ez az elem szintén megjelenik a navigátor helyi legördülő menüjén. Ezek a tevékenységek azért jelennek meg, mert a readme eszköz bedolgozó a viewActions kiterjesztés segítségével közreadja őket.

Az érintett plugin.xml közreadás az alábbi.

<extension
    point = "org.eclipse.ui.viewActions">
      <viewContribution 
         id="org.eclipse.ui.examples.readmetool.vc1" 
         targetID="org.eclipse.ui.views.ResourceNavigator">        
	   <action id="org.eclipse.ui.examples.readmetool.va1" 
              label="%PopupMenu.ResourceNav.label" 
	      menubarPath="additions"
              toolbarPath="additions" 
              icon="icons/obj16/editor.png" 
              tooltip="%PopupMenu.ResourceNav.tooltip" 
   	      helpContextId="org.eclipse.ui.examples.readmetool.view_action_context"
              class="org.eclipse.ui.examples.readmetool.ViewActionDelegate" 
              enablesFor="1"> 
		<selection class="org.eclipse.core.resources.IFile" name="*.readme"/> 
	   </action>
      </viewContribution>
   </extension>

A nézet közreadása egy egyedi azonosítóval van megadva. A nézet, amelyhez elemeket adunk, a targetID elemben van megadva. Az erőforrás navigátormenüjén adunk közre. Az új tevékenységhez megadjuk a címkét, a menüsort, és az eszköztárat. (A menü- és eszköztárhelyek teljes leírását a Menü és eszköztár elérési út tartalmazza).

A helyzeteket is megadjuk, amelyekben a tevékenységet engedélyezni kell. Láthatja, hogy ez a tevékenység akkor kerül engedélyezésre, ha egy IFile típusú kijelölés van (enablesFor="1") (class="org.eclipse.core.resources.IFile"), amely nevének fájlkiterjesztése ".readme" (name="*.readme"). Pontosan ez történik, ha az erőforrás-navigátor környékén kattint.  

A plugin.xml fájlban lévő fájlok szükségesek csupán az elemek menükhöz és eszköztárakhoz adásához, mivel a bedolgozókód csak akkor fut, ha a tevékenység valójában ki van választva a menüből vagy eszköztárból. A tevékenységviselkedés biztosításához a plugin.xml fájlban megadott megvalósítási osztálynak meg kell valósítania az IViewActionDelegate felületet.

Ebben a példában a readme bedolgozó egy ViewActionDelegate elemet biztosít a tevékenység megvalósításához. Az osztály böngészése során látni fogja, hogy metódusokat tartalmaz a nézet megjegyzéséhez, a kiválasztásmódosítások kezeléséhez és a tevékenység meghívásához.  A tevékenység meghívásakor egyszerűen elindít egy párbeszédablakot, amely jelzi, hogy végrehajtásra került.

public void run(org.eclipse.jface.action.IAction action) {
	MessageDialog.openInformation(view.getSite().getShell(),
		MessageUtil.getString("Readme_Editor"),  
		MessageUtil.getString("View_Action_executed")); 
}

Habár ez a tevékenység egyszerű, elképzelhetjük, hogy a kiválasztások és további funkcionális párbeszédablakok segítéségével hogyan éri el, hogy a tevékenység valami érdekesebbet csináljon.