Sie haben bereits erfahren, auf welche Weise es die Workbench dem Benutzer ermöglicht, die Darstellung der Plug-in-Funktionalität zu steuern. Über das Menü Perspektive > Sicht anzeigen können Sichten ein -oder ausgeblendet werden. Aktionssets können mit dem Menü Perspektive > Anpassen... ein- oder ausgeblendet werden. Dank dieser Funktionen kann der Benutzer die Fülle der Workbench-Funktionen verwalten und besser an spezifische Anforderungen anpassen.
Perspektiven bieten eine zusätzliche Verwaltungsebene. Benutzer können bei der Durcharbeitung von Tasks zwischen unterschiedlichen Perspektive umschalten. Eine Perspektive definiert einen Ausgangsstatus für die Objektgruppe und das Layout von Sichten, der verwendet werden soll, wenn der Benutzer zuerst in die Perspektive umschaltet. Außerdem werden die Aktionssets definiert, die anfänglich sichtbar sein sollen.
Die Plattform selbst definiert eine Perspektive, nämlich die Perspektive Ressource. Andere Plattform-Plug-ins (z. B. die Hilfefunktion und JDT) definieren weitere Perspektiven. Ihr Plug-in kann eine eigene Perspektive definieren, indem der Erweiterungspunkt org.eclipse.ui.perspectives ergänzt wird.
Die Spezifikation der Perspektive in der Datei plugin.xml ist relativ einfach strukturiert. Mit der folgenden Befehlsdatei definiert die Workbench ihre eigene Perspektive "Ressource".
<extension
point="org.eclipse.ui.perspectives">
<perspective
id="org.eclipse.ui.resourcePerspective"
name="Resource"
class="org.eclipse.ui.internal.ResourcePerspective">
</perspective>
</extension>
Ein Plug-in muss die Parameter id und name für die Perspektive angeben, zusammen mit dem Namen der Klasse (class), die die Perspektive implementiert. Außerdem kann mit dem Parameter icon ein Symbol angegeben werden. Die Klasse der Perspektive sollte die Schnittstelle IPerspectiveFactory implementieren.
In der Befehlsdatei erkennen Sie, dass die eigentliche Verarbeitung im Code stattfindet. Die Schnittstelle des Factory-Dienstprogramms für Perspektiven ist ganz einfach strukturiert. Objekte, die die Schnittstelle IPerspectiveFactory implementieren, konfigurieren erwartungsgemäß eine Schnittstelle IPageLayout mit Informationen, die die Perspektive und das Seitenlayout der Perspektive beschreiben.
Eine der wichtigsten Aufgaben der Schnittstelle IPageLayout ist es, die Platzierung des Editors und der Sichten im Workbench-Fenster zu beschreiben. Diese Layouts unterscheiden sich von der Klasse Layout in SWT. Obwohl die Schnittstelle IPageLayout und die Klasse Layout eine ähnliche Aufgabe erfüllen (Größe und Position von Fensterobjekten in einem größeren Bereich festlegen), müssen Sie keine Kenntnisse über die SWT-Layouts besitzen, um ein Seitenlayout für eine Perspektive angeben zu können.
Das Seitenlayout einer Perspektive wird mit 1 Bereich für das Anzeigen eines Editors initialisiert. Das Factory-Dienstprogramm für Perspektiven ist für das Hinzufügen weiterer, verwandter Sichten zum Editor zuständig. Sichten werden zum Layout mit Bezug auf eine andere Komponente (oben, unten, links, rechts) hinzugefügt. Für eine Sicht, die anfänglich nicht angezeigt wird, kann auch ein Platzhalter (leerer Bereich) hinzugefügt werden.
Mit einer Schnittstelle IFolderLayout können Sichten in Ordnern mit Registerkarten gruppiert werden. Die Perspektive "Ressource" platziert beispielsweise die Sicht "Navigator" für eine Ressource in einen Ordner, der sich in der linken oberen Ecke der Workbench befindet. In Ordnerlayouts werden häufig Platzhalter verwendet. Die Perspektive "Ressource" definiert in dem Ordner, in dem sich auch die Sicht "Navigator" befindet, einen Platzhalter für die Sicht "Lesezeichen". Wenn der Benutzer die Sicht "Lesezeichen" aufruft, wird sie in demselben Ordner wie die Sicht "Navigator" angezeigt, der für jede Sicht eine Registerkarte enthält.
Mit einer Schnittstelle IPageLayout können Sie außerdem Aktionssets zu einer Perspektive hinzufügen. Des weiteren können Sie eine Reihe von Verknüpfungen mit Menüs hinzufügen, die sich auf die Perspektive beziehen. Eine Verknüpfung für einen Assistenten für neue Ressourcen fügt beispielweise einen neuen Eintrag in das Menü Datei > Neu für eine Perspektive ein und ruft den entsprechenden Assistenten auf. Verknüpfungen für Sichten fügen die Namen der Sichten hinzu, die im Menü Perspektive > Sicht anzeigen enthalten sein sollen, wenn die Perspektive aktiv ist. Verknüpfungen für Perspektiven fügen die Namen von Perspektiven hinzu, die im Menü Perspektive > Öffnen angezeigt werden sollen, wenn die Perspektive aktiv ist.