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