#topicpath
----
//ここにコンテンツを記述します。
org.eclipse.ui.IEditorActionDelegateはエディタを右クリックしたときに現れるポップアップメニューに項目を追加するためのインターフェースです。

#contents

***拡張ポイント
 org.eclipse.ui.popupMenus
(IObjectActionDelegateと同じ)

***plugin.xmlのサンプル
 <extension point="org.eclipse.ui.popupMenus">
   <viewerContribution
     targetID="#CompilationUnitEditorContext" <- Javaエディタ
     id="nu.mine.kino.plugin.javadocsearch.CompilationUnitEditorContext">
      <action label="JavaDoc検索" <- コンテキストメニューの文字列
        class="nu.mine.kino.plugin.javadocsearch.CompilationUnitEditorContextAction"
        menubarPath="additions"        ↑ 実装クラス
        id="nu.mine.kino.plugin.javadocsearch.CompilationUnitEditorContextAction">
         <selection
           class="org.eclipse.jface.text.ITextSelection">
         </selection>
      </action>
   </viewerContribution>
 </extension>

**ポイント
実装クラスはIEditorActionDelegateを実装します。実際に使用するメソッドは
 setActiveEditor(IAction action, IEditorPart targetEditor)
 run(IAction action) 
でしょう。

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


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




----
この記事は
#vote(おもしろかった,そうでもない)

#comment
#topicpath


SIZE(10){現在のアクセス:&counter;}


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