アクション定義とそのアクションを起動するキー組み合わせとの関連付けは、アクセラレーターと呼ばれます。 アクセラレーター・セットは、アクセラレーターのリストです。 プラグインは、org.eclipse.ui.acceleratorSets 拡張ポイントを使用して、アクセラレーター・セットを組み込みます。 ワークベンチは、以下の emacs のようなキー・バインディングを提供するアクセラレーター・セットを定義します。
<extension
point="org.eclipse.ui.acceleratorSets">
<acceleratorSet
scopeId="org.eclipse.ui.globalScope"
configurationId="org.eclipse.ui.emacsAcceleratorConfiguration">
<accelerator
key="Ctrl+F4||Ctrl+X Ctrl+K"
id="org.eclipse.ui.file.close">
</accelerator>
<accelerator
key="Ctrl+Shift+F4||Ctrl+X Ctrl+C"
id="org.eclipse.ui.file.closeAll">
</accelerator>
<accelerator
key="Ctrl+X Ctrl+S"
id="org.eclipse.ui.file.save">
</accelerator>
...
同様に org.eclipse.ui.file.save もあります。 仮定のアクション定義を思い出してください。
<extension point = "org.eclipse.ui.actionSets"> <actionSet id="com.example.actions.actionSet" label="Example Actions" visible="true"> <action id="com.example.actions.action1" menubarPath="additions" label="Example Save Action" class="org.example.actions.ExampleActionDelegate" definitionID="org.eclipse.ui.file.save"> </action> ... </actionSet> </extension>
サンプルのアクション・セットがアクティブであるとき、Ctrl+X に続いて Ctrl+S を選択すると、save アクションが起動されます。 ("Ctrl+Shift+F4||Ctrl+X Ctrl+C" のように || を使用すると、そのアクションを起動するために、 どちらのキー組み合わせを使用できるか指示することができます。)
同様に、ワークベンチ SaveAction がアクティブであるときは、同じキー組み合わせを使用して、代わりに起動できます。 これは、ワークベンチが SaveAction のために同じアクション定義 ID を使用するためです。
サンプルを完了するには、scopeID および configurationId について理解する必要があります。 まず構成について考えてみましょう。