ワークベンチウィンドウ→ページ→ビュー
EclipseのUIの構造は,以下のようになっている。
WorkbenchWindow(1) → (n)IWorkBenchPage(1) → (n)IViewPart
・WorkbenchWindow - ワークベンチウィンドウ(Eclipseのウィンドウそのもの)
・IWorkBenchPage - ページ(ワークベンチウィンドウ内の区画)
・IViewPart - ビュー(ページ内に置かれるPackageExplorerやOutlineなどのパネル)
これらにアクセスするためのAPIは以下のとおり。
・ワークベンチの取得
IWorkbench workbench = PlatformUI.getWorkbench();
・ワークベンチウィンドウの取得
IWorkbenchWindow[] windows = workbench.getWorkbenchWindows();
・アクティブなワークベンチウィンドウの取得
IWorkbenchWindow window = workbench.getActiveWorkbenchWindow();
・ページの取得
IWorkbenchPage[] pages = window.getPages();
・アクティブなページの取得
IWorkbenchPage page = window.getActivePage();
・ページ内で可視状態のビューの取得
IViewPart[] views = page.getViews();
最後のビューの取得APIだが,上記の方法はすでに推奨されていない方法のようで,今後は,
IViewReference[] references = page.getViewReferences();
IViewPart view = references[n].getView(false);
というように取得しなければならないみたい。IViewReference#getView(boolean)の引数の違いによってどのように動作が変わってくるかは,まだ未検証。
| 固定リンク
この記事へのコメントは終了しました。
コメント