org.eclipse.ui.editorActions

エディターがアクティブであるときに、ワークベンチ・メニューおよびツールバーに、独自のアクションを組み込む方法を先ほど説明しました。  org.eclipse.ui.editorActions 拡張ポイントを使用して、 プラグインによって、他のプラグインのエディターがアクティブになるときに、ワークベンチ・メニューおよびツールバーに追加を行うことができます。

README の例では、プラグインは editorActions 拡張ポイントを使用して、 README エディターによって作成されたメニューへ、追加のアクションを組み込みます。 以下の plugin.xml の定義は、今では、非常になじみ深いものでしょう。

<extension
    point = "org.eclipse.ui.editorActions">
      <editorContribution
         id="org.eclipse.ui.examples.readmetool.ec1" 
         targetID="org.eclipse.ui.examples.readmetool.ReadmeEditor">
	   <action id="org.eclipse.ui.examples.readmetool.ea1" 
              label="%Editors.Action.label" 
	      toolbarPath="ReadmeEditor" 
              icon="icons/obj16/editor.gif" 
              tooltip="%Editors.Action.tooltip" 
              class="org.eclipse.ui.examples.readmetool.EditorActionDelegate"
              /> 
      </editorContribution>
 </extension>

ビュー・アクションと同様に、拡張により、アクションの組み込み先のエディターの targetID を指定する 必要があります。  アクション自体は、ビュー・アクションに極めて類似しています (idlabelicontoolbarPath...)。 ただし、指定されたクラスは IEditorActionDelegate を インプリメントする必要があります。  

メニュー・バー・パスは、このマークアップに指定されていないことに注意してください。  つまり、アクションは、エディターがアクティブのときにワークベンチ・ツールバーには表示されますが、 ワークベンチ・メニュー・バーには表示されません。  (ツールバーおよびメニュー・パスの詳細については、「ツールバーおよびメニュー・パス」を参照してください。)

実際、エディターがアクティブのとき、エディター自体によって組み込まれたアクションの隣のツールバー上に、 エディター・アクションが表示されます。

ワークベンチ・ツールバーのオリジナル・エディター contribution の横に表示されるエディター・アクション

README ツールは、アクションをインプリメントするための EditorActionDelegate を提供します。  このクラスは、前に説明したビュー・アクション代行に極めて類似しています。

public void run(IAction action) {
	MessageDialog.openInformation(editor.getSite().getShell(),
		MessageUtil.getString("Readme_Editor"),  
		MessageUtil.getString("Editor_Action_executed")); 
}

Copyright IBM Corporation and others 2000, 2003.