プラグインは、ビューまたはエディター・パーツのために 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);
}
必要なことはこれだけです。 ワークベンチ・メニュー・バーまたはツールバーからアクションを選択していて、ビューまたはエディターがアクティブである場合、アクションが実行されます。 ワークベンチは、再ターゲット可能なアクションが、現在アクティブになっているビューまたはエディターと常に関連付けられるようにする詳細を扱います。