プラグインは、org.eclipse.ui.perspectiveExtensions 拡張ポイントを 使用することにより、独自のアクション・セット、ビュー、およびさまざまなショートカットを 既存のパースペクティブへ追加できます。
新規パースペクティブ (アクション・セット、ウィザード・エントリー、ビュー・レイアウト、ビュー・ショートカット、 およびパースペクティブ・ショートカット) のために定義できる contribution を、既存のパースペクティブに提供することもできます。 1 つの重要な違いは、これらの contribution は、それらを IPageLayout 内で構成する代わりに、 plugin.xml マークアップで指定されるということです。
以下のマークアップは、JDT がプラットフォームのデバッグ・パースペクティブを拡張する方法を示しています。
<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>
targetID は、プラグインが新規の振る舞いを組み込んでいるパースペクティブの ID です。 actionSet パラメーターは、ターゲット・パースペクティブへ追加される事前宣言アクション・セットの ID を 識別します。 このマークアップは、IPerspectiveFactory 内の IPageLayout.addActionSet の使用に類似しています。
パースペクティブ・ページ・レイアウト情報が宣言されなければならないため、ビューをパースペクティブへ組み込む方が少し複雑です。 visible 属性は、パースペクティブが開くときに、組み込まれたビューを最初に見えるようにするかどうか制御します。 組み込まれたビューの ID の提供に加え、パースペクティブ (relative ビュー) 内に既に存在するビューの ID を、 新規ビュー配置のための参照点として指定する必要があります。 relationship パラメーターは、新規ビューおよび relative ビュー間のレイアウト関係を指定します。
perspectiveShortcut を指定することは、他のパースペクティブ (id で指定される) が、 ターゲット・パースペクティブの「ウィンドウ」->「パースペクティブを開く...」メニューに 追加されることを示します。 このマークアップは、IPerspectiveFactory 内の 元のパースペクティブ定義で IPageLayout.addPerspectiveShortcut を呼び出すことに類似しています。 また、プラグインは、同様の方法で、ビュー・ショートカットおよび新規ウィザード・ショートカットを追加できます。
有効な showInPart として複数のビューを指定することもできます。 ビューは、org.eclipse.ui.views 拡張追加項目で 使用される ID によって指定する必要があります。 これにより、「ナビゲート」>「表示」メニューでターゲットとして使用できるビューが 制御されます。 拡張マークアップで「表示」ビューを指定できる機能により、新規に提供されたビューを 別のパースペクティブの「表示」メニューにターゲットとして追加できます。 「表示」の詳細については、『ビューとエディターのリンク』を 参照してください。
拡張ポイントの完全な定義については、 『org.eclipse.ui.perspectiveExtensions』を 参照してください。