ポップアップやメニューバーにアクションを追加するための拡張ポイント、インターフェースをまとめました。
| 用途 | 拡張ポイント | 対応するインターフェース |
| メニューバーや、ツールバーにアクションを表示させたい | actionSets | IWorkbenchWindowActionDelegate |
| 他のビューのメニューバーにアクションを表示させたい | viewActions | IViewActionDelegate |
| 他のビュー内のViewerにポップアップを表示させたい(ビューを指定) | popupMenus | IViewActionDelegate |
| 他のビュー内のViewerにポップアップを表示させたい(選択されているオブジェクトを指定) | popupMenus | IObjectActionDelegate |
| エディタにポップアップを表示させたい | popupMenus | IEditorActionDelegate |
| エディタのメニューバーにアクションを表示させたい | editorActions | IViewActionDelegate |
| 拡張ポイント | org.eclipse.ui.actionSets |
| インタフェース | org.eclipse.ui.IWorkbenchWindowActionDelegate |
plugin.xmlの記述
<extension point="org.eclipse.ui.actionSets">
<actionSet label="サンプル・アクション・セット"
visible="true"
↑こうしておくと、パースペクティブのカスタマイズの
コマンドに自動的にチェックが入る
ようするにデフォルトで表示される。
id="nu.mine.kino.example.actionSet">
<menu label="サンプル・メニュー(&M)" id="sampleMenu">
<separator name="sampleGroup"></separator>
</menu>
<action label="サンプル・アクション(&S)"
icon="icons/sample.gif"
class="nu.mine.kino.example.actions.SampleAction"
tooltip="Hello, Eclipse world"
menubarPath="sampleMenu/sampleGroup"
toolbarPath="sampleGroup"
id="nu.mine.kino.example.actions.SampleAction">
</action>
</actionSet>
</extension>
詳細はメニューバーを構築するにまとめました。
| 拡張ポイント | org.eclipse.ui.viewActions |
| インタフェース | org.eclipse.ui.IViewActionDelegate |
plugin.xml の記述
<extension
point="org.eclipse.ui.viewActions">
<viewContribution
id="nu.mine.kino.plugin.samples.rcp.viewContribution2"
targetID="nu.mine.kino.plugin.samples.rcp.view3">
<action
class="nu.mine.kino.plugin.samples.rcp.ViewActionDelegate2"
id="nu.mine.kino.plugin.samples.rcp.action2"
label="アクション3"
menubarPath="addition"
style="push"/>
</viewContribution>
</extension>
| 拡張ポイント | org.eclipse.ui.popupMenus |
| インタフェース | org.eclipse.ui.IViewActionDelegate |
plugin.xmlの記述
<extension point="org.eclipse.ui.popupMenus">
<viewerContribution
targetID="nu.mine.kino.plugin.javadocsearch.views.JavadocsearchView"
id="nu.mine.kino.plugin.google.contributions.JavaDocSearchContext">
<action
label="Googleで検索" icon="icons/icon.gif"
class="nu.mine.kino.plugin.google.popup.actions.JavaDocSearchViewContextAction"
menubarPath="additions"
id="nu.mine.kino.plugin.google.contributions.JavaDocSearchViewContextAction">
</action>
</viewerContribution>
</extension>
| 拡張ポイント | org.eclipse.ui.popupMenus |
| インタフェース | org.eclipse.ui.IObjectActionDelegate |
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" <- 選択したファイルが1つだけの時有効
id="kino.actions.HogeAction">
</action>
</objectContribution>
</extension>
| 拡張ポイント | org.eclipse.ui.popupMenus |
| インタフェース | org.eclipse.ui.IEditorActionDelegate |
plugin.xmlの記述
<extension point="org.eclipse.ui.popupMenus">
<viewerContribution
targetID="#TextEditorContext"
id="nu.mine.kino.plugin.google.contributions.TextEditorContext">
<action
label="Googleで検索"
icon="icons/icon.gif"
class="nu.mine.kino.plugin.google.popup.actions.
CompilationUnitEditorContextAction"
menubarPath="additions"
id="nu.mine.kino.plugin.google.popup.actions.
CompilationUnitEditorContextAction">
<selection
class="org.eclipse.jface.text.ITextSelection">
</selection>
</action>
</viewerContribution>
</extension>
| 拡張ポイント | org.eclipse.ui.editorActions |
| インタフェース | org.eclipse.ui.IViewActionDelegate |
この記事は
現在のアクセス:18305