Top / Eclipse / プラグイン開発のTIPS集 / org.eclipse.ui.IObjectActionDelegate(ポップアップメニュー)

org.eclipse.ui.IObjectActionDelegate?はパッケージエクスプローラなどを右クリックしたときに現れるポップアップメニューに項目を追加するためのインターフェースです。

拡張ポイント

org.eclipse.ui.popupMenus

plugin.xmlのサンプル

<extension point="org.eclipse.ui.popupMenus">
   <objectContribution
       objectClass="org.eclipse.core.resources.IFile"
       ↑ 選択されているのがIFileのときだけ
       id="kino.objectContribution">
      <action
        label="実行!!" <- メニューに表示される文字列
        icon="icons/sample.gif" <- アイコン
        class="kino.actions.HogeAction" <- 実装クラス
        menubarPath="additions"
        enablesFor="1"
        id="kino.actions.HogeAction">
      </action>
   </objectContribution>
</extension>

ポイント

実装クラスはIObjectActionDelegate?を実装します。実際に使用するメソッドは

selectionChanged(IAction action, ISelection selection)
run(IAction action) 

でしょう。

selectionChanged(IAction action, ISelection selection)

なにかが選択されたときに呼ばれるメソッドです。selectionを用いて、メニュー内でクリックされたリソースが何であるかを判定するロジックを記述します。

run(IAction action)

実際にメニューから選択されたときに呼ばれるメソッドです。selectionChangedで選択されたリソースをフィールドに保持して、runメソッド内でロジックを記述する、なんてのが基本パターンでしょうか。


この記事は

選択肢 投票
おもしろかった 0  
そうでもない 0  

Top / Eclipse / プラグイン開発のTIPS集 / org.eclipse.ui.IObjectActionDelegate(ポップアップメニュー)

現在のアクセス:13485


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS