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.