Moduly plug-in mohou přidávat své vlastní akční sady, pohledy a různé zástupce do stávajících perspektiv vkládáním do bodu rozšířeníorg.eclipse.ui.perspectiveExtensions.
Příspěvky, jež lze definovat pro nové perspektivy (akční sady, průvodci, rozvržení pohledu, zástupci pohledu a zástupci perspektivy), lze vkládat rovněž do stávající perspektivy. Jeden z důležitých rozdílů spočívá ve skutečnosti, že se tyto příspěvky definují v markupu plugin.xml, místo aby byly konfigurovány v IPageLayout.
Následující markup předvádí způsob, kterým JDT rozšiřuje perspektivu ladění platformy.
<extension point="org.eclipse.ui.perspectiveExtensions"> <perspectiveExtension targetID="org.eclipse.debug.ui.DebugPerspective"> <actionSet id="org.eclipse.jdt.debug.ui.JDTDebugActionSet"/> <view id="org.eclipse.jdt.debug.ui.DisplayView" relative="org.eclipse.debug.ui.ExpressionView" relationship="stack"/> <view id="org.eclipse.jdt.ui.PackageExplorer" relative="org.eclipse.debug.ui.DebugView" relationship="stack" visible="false"/> <view id="org.eclipse.jdt.ui.TypeHierarchy" relative="org.eclipse.debug.ui.DebugView" relationship="stack" visible="false"/> <view id="org.eclipse.search.SearchResultView" relative="org.eclipse.debug.ui.ConsoleView" relationship="stack" visible="false"/> <viewShortcut id="org.eclipse.jdt.debug.ui.DisplayView"/> </perspectiveExtension> </extension>
Identifikátor targetID představuje ID perspektivy, do které modul plug-in přidává nové chování. Parametr actionSet identifikuje id dříve deklarované akční sady, která má být přidána do cílové perspektivy. Tento markup je obdobou použití IPageLayout.addActionSet v IPerspectiveFactory.
Přispívání pohledu do perspektivy je poněkud složitější, protože musí být deklarovány informace rozvržení stránky perspektivy. Atribut visible určuje, zda se má přispívaný pohled při otevření perspektivy zpočátku zobrazovat. Kromě id přispívaného pohledu musí být jako referenční bod umístění nového pohledu zadáno rovněž ID pohledu, který již v perspektivě existuje (relativní pohled). Parametr relationship určuje vztah rozvržení nového zobrazení a relativního pohledu.
Zadání perspectiveShortcut určuje, že má být přidána jiná perspektiva (určená svým id) do nabídky Okno->Otevřít perspektivu... cílové perspektivy. Tento markup je obdobou volání IPageLayout.addPerspectiveShortcut v původní definici v IPerspectiveFactory. Podobným způsobem mohou moduly plug-in vkládat rovněž zástupce pohledu a zástupce nového průvodce.
Jeden nebo několik pohledů můžete stanovit jako platné zobrazované části, tj. showInPart. Pohledy by měly být zadávány s použitím ID uvedeného v rozšíření org.eclipse.ui.views. Tímto způsobem se určuje, které pohledy mají být k dispozici jako cíle v nabídce Navigovat > Zobrazit v. Díky možnosti zadání "zobrazování" pohledu v markupu rozšíření můžete nově vložené pohledy přidávat jako cíle do nabídek "Zobrazit" jiné perspektivy. Další informace o nabídce "Zobrazit v" viz Propojování pohledů a editorů.
Kompletní definice bodu rozšíření viz org.eclipse.ui.perspectiveExtensions.