プラグインは、ビューまたはエディター・パーツのために IAction を実装することによって、また IAction をグローバル・アクション・ハンドラーとしてパーツのアクション・バーに登録することによって、 再ターゲット可能なアクションを組み込みます。 ビューでは、これは一般的にパーツのアクションおよびコントロールの作成時に行われます。エディターについては、再ターゲット可能なエディター・アクションを参照してください。再ターゲットされるアクションの名前 (IWorkbenchActionConstants で定義されたもの) は、ハンドラーの対象となるアクションの指定に使用されます。 以下は、ワークベンチ・タスク・リスト・ビューが PROPERTIES アクションのハンドラーを登録する方法を示しています。
public void createPartControl(Composite parent) { ... makeActions(); ... // Add global action handlers. ... getViewSite().getActionBars().setGlobalActionHandler( IWorkbenchActionConstants.PROPERTIES, propertiesAction); ...
プロパティー・アクションは、以下のように、ローカル・メソッド makeActions に作成されます。
void makeActions() { ... // properties propertiesAction = new TaskPropertiesAction(this, "properties"); propertiesAction.setText(TaskListMessages.getString("Properties.text")); propertiesAction.setToolTipText(TaskListMessages.getString("Properties.tooltip")); propertiesAction.setEnabled(false); }
必要なことはこれだけです。 アクションは、ユーザーがそのアクションをワークベンチ・メニュー・バーまたはツールバーから選択し、ビューまたはエディターがアクティブになっている場合に実行されます。 ワークベンチは、再ターゲットされたアクションが常に現行のアクティブ・ビューと関連付けられていることの確認作業の詳細を処理します。 EditorActionBarContributor から提供されたエディター・アクションの場合も、同じことが適用されます。