ワークベンチ以下の関連 †プラグイン開発で、いろいろなUIにアクセスしたいわけですが、それぞれのUIがどのような関連になっているのかをまとめてみました。 WorkBench? window †ワークベンチ(ワークベンチ・ウィンドウ)とは、大ざっぱに言うと、「プラットフォームの始動時に開くウィンドウ」のことです。
ちなみに IWorkbench workbench = PlatformUI.getWorkbench(); IWorkbenchWindow[] windows = workbench.getWorkbenchWindows(); で IWorkbenchWindow? の配列が取得できますが、この配列はEclipseで ウィンドウ >> 新規ウィンドウ で開いているウィンドウたちです。 Page †ワークベンチ・ウィンドウの内部には、パーツを含む 1 つのページがあります。ページは、パーツをグループ化するためのインプリメンテーション・メカニズムです。
単純にパースペクティブと1対1でもないんでしょうか*1。 また、 workbench.getActiveWorkbenchWindow().getActivePage().getLabel()); としたら、ワークスペース - J2EEってのが表示されました。やっぱ、パースペクティブだよなぁ。 各インタフェースの関係 †PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage() .getActivePart().getSite().getPage(); など無限に行き来できるみたいですが、これをみてもわかるとおり、 Workbench(1) -> (N)IWorkbenchWindow(1) -> (N)IWorkbenchPage (1) -> (N)IWorkbenchPart(1) -> (1)IWorkbenchPartSite(1) -> (1)IWorkbenchPage ... となっています。 IWorkbenchPart?はいわゆるビューやエディタで、それに1対1でIWorkbenchPartSite?があり、名前とかIDとか、ビュー・エディタの情報を管理しています。 IWorkbenchPage?はビューの集まりでパースペクティブかな?もちろんIWorkbenchWindow?とは1対Nとなります。 IWorkbenchWindow?はいわゆるウィンドウです。新しいウィンドウを開くとかやると複数開くので、Workbenchとは1対Nになります。 この記事は
現在のアクセス:16900 |