Moduly plug-in běžně přispívají chováním do stávajících pohledů pracovní plochy. Používají přitom bod rozšíření org.eclipse.ui.viewActions. Tento bod rozšíření modulům plug-in umožňuje přispívat položkami nabídek, dílčími nabídkami a položkami panelu nástrojů do lokální rozevírací nabídky a do lokálního panelu nástrojů stávajícího pohledu.
Pravděpodobně jste si povšimli položky na lokálním panelu navigátoru, který se aktivuje vždy při volbě souboru README. Tato položka se zobrazuje rovněž v lokální rozevírací nabídce navigátoru. Tyto akce se zobrazují, protože modul plug-in nástroje README jimi přispívá pomocí rozšíření viewActions.
Následuje příslušný příspěvek v souboru plugin.xml.
<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>
Zadán je příspěvek do pohledu s jedinečným ID. Cílový pohled, do kterého přidáváme akci, je určen v identifikátoru targetID. Přispíváme o nabídky navigátoru prostředků. Pro novou akci zadáváme štítek a umístění pruhu nabídky a panelu nástrojů. (Kompletní výklad umístění nabídky a panelu nástrojů viz Cesty nabídky a panelu nástrojů).
Rovněž zadáváme podmínky zpřístupněné akce. Je patrné, že tato akce bude zpřístupněna v případě, že je k dispozici volba (enablesFor="1") typu IFile (class="org.eclipse.core.resources.IFile"), jehož název má příponu ".readme" názvu souboru (name="*.readme"). Přesně k tomuto dojde při klepnutí v oblasti navigátoru prostředků.
Informace v souboru plugin.xml postačují k přidávání položek do nabídek a panelu nástrojů, protože kód modulu plug-in se provádí pouze při skutečné volbě akce v nabídce nebo na panelu nástrojů. Podmínkou poskytnutí chování akce je, že implementační třída zadaná v plugin.xml musí implementovat rozhraní IViewActionDelegate.
V tomto příkladu modul plug-in README k implementaci akce poskytuje ViewActionDelegate. Prohlédnete-li si tuto třídu, zjistíte, že obsahuje metody k pamatování svého pohledu, k manipulaci se změnami výběrů a k vyvolání své akce. Při vyvolání samotná akce prostě spustí dialog, který oznámí její provedení.
public void run(org.eclipse.jface.action.IAction action) {
MessageDialog.openInformation(view.getSite().getShell(),
MessageUtil.getString("Readme_Editor"),
MessageUtil.getString("View_Action_executed"));
}
Tato akce je sice velmi jednoduchá, avšak předvádí způsob použití voleb a několik funkčních dialogových oken může přinutit tuto akci k zajímavé činnosti.