RCP/Plugin コマンド登録

Information

date version note
2012/07/08 0.1 初回作成

概要

Eclipseのメニューとかにコマンド(ボタン等)を登録する。

はじめに

詳しくは、ここの記事を参照。以下は補足的内容のみ。

http://www.vogella.com/articles/EclipseCommands/article.html#standardcommands

Eclipseの拡張要素(メニュー、Perspective, View等)の作成は、build.xmlを編集することにより行う。直に編集してもよいが、面倒である為、普通はExtensionsから要素の編集を行う。

拡張要素

  1. IDを付与する場合はユニークな文字列にすること。(パッケージ名+Class名でよいと思う。)

Perspective

RCPでプロジェクトを作成した場合は、デフォルトでPerspectiveクラスが存在する。
このPerspectiveは、[Open Perspective]から開くことが可能。
基本的に、ここにView等を張り付けていくことになる。

Viewの取得

「Viewを×ボタンで消してしまったが、再度出現させたい」場合

  • [Open Perspective]から登録されているPerspectiveを選択して開く
  • プログラム上よりViewを取得する
// 以下をViewのハンドラに書く
// "viewID"の箇所は、対象ViewのIDを書くこと
HandlerUtil.getActiveWorkbenchWindow(event).getActivePage().showView("viewID");

ファイルの取得

「設定用プロパティファイル等をFileクラス等でロードしたい」場合
以下のようにすれば良い。(プロジェクト名を何処かから取得できればよいのだが...)

// ファイルパスは相対参照でよい(プロジェクト以下のファイルパス)
Bundle bundle = Platform.getBundle("Project名");
URL url = bundle.getEntry("ファイルパス");
File file = new File(FileLocator.resolve(url).toURI());

※ RCP/Pluginプログラムからだと、普通の相対参照でファイルを取得できなかった。