アクセラレーター構成

アクセラレーター構成は、アクセラレーター・セットの一般的なスタイルまたはテーマを表すために使用されます。 たとえば、ワークベンチは "デフォルト" アクセラレーター構成、および "Emacs" アクセラレーター構成を提供します。  アクセラレーター構成は、所定の時間に 1 つだけアクティブになります。  エンド・ユーザーは、ワークベンチの「設定」ダイアログを使用して、どのアクセラレーター構成をアクティブにするか制御します。

インプリメンテーションの見地から、アクセラレーター構成は単にアクセラレーター・セットのグループ化と考えられます。  関連したアクセラレーター・セットがなければ、アクセラレーター構成自体では何も実行できません。  実際には、アクセラレーター構成のために定義されたアクセラレーター・セットがなければ、アクセラレーター構成は「設定」ダイアログ内に表示されません。

アクセラレーター構成と関連付ける方法を確認するため、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>
      ...

アクセラレーター・セットが定義されるとき、関連したアクセラレーター構成の configurationID を指定します。  セットが属しているアクセラレーター構成をユーザーが選択した場合、アクセラレーター・セットが使用されるだけです。  

新規アクセラレーター構成の定義

プラグインがアクセラレーター・セットを定義するとき、既存のアクセラレーター構成に割り当てられることが多くあります。  ただしプラグインは、完全に新規スタイルのアクセラレーターを定義したい場合があります。  この場合、org.eclipse.ui.acceleratorConfigurations 拡張ポイントを使用して、新規タイプのアクセラレーター構成を定義できます。  アクセラレーター構成のワークベンチ・マークアップは、以下のようになります。

<extension
   point="org.eclipse.ui.acceleratorConfigurations">
      <acceleratorConfiguration
            name="%DefaultAcceleratorConfiguration.name"
            description="%DefaultAcceleratorConfiguration.description"
            id="org.eclipse.ui.defaultAcceleratorConfiguration">
      </acceleratorConfiguration>
      <acceleratorConfiguration
            name="%EmacsAcceleratorConfiguration.name"
            description="%EmacsAcceleratorConfiguration.description"
            id="org.eclipse.ui.emacsAcceleratorConfiguration">
      </acceleratorConfiguration>
</extension>

name は、使用可能な構成のリスト内の「設定」ページで使用されます。

Copyright IBM Corp. and others 2000,2002.