加速键集

标识符:org.eclipse.ui.acceleratorSets

描述:此扩展点用来注册加速键集扩展。正如名称的含义一样,加速键集就是加速键的集合。加速键是一个或多个序列的加速键与工作台操作之间的关联。加速键序列长度可以为 1 或更大。

加速键集是向加速键配置注册的(参见加速键配置扩展点)并且适用于加速键作用域(参见加速键作用域扩展点)。

起始发行版:发行版 2.0

配置标记:

   <!ELEMENT acceleratorSet (accelerator)+>
   <!ATTLIST acceleratorSet
      configurationId     CDATA #REQUIRED
      scopeId             CDATA #REQUIRED
   >

   <!ELEMENT accelerator EMPTY>
   <!ATTLIST accelerator
      id                  CDATA #REQUIRED
      key                 CDATA #REQUIRED
      locale              CDATA #OPTIONAL
      platform            CDATA #OPTIONAL
   >

可以对加速键集中的同一操作指定多个加速键,但是将只使用一个加速键。

如果指定了语言环境和/或平台,则将使用与当前语言环境和平台更加匹配的加速键。当前语言环境由 API Locale.getDefault() 确定,平台由 API SWT.getPlatform() 确定。如果指定的平台和/或语言环境与当前语言环境和/或平台不匹配,则会废弃加速键。如果加速键 A 只定义了语言环境而加速键 B 只定义了平台,则使用加速键 B。如果加速键 A 将“ja”定义为它的语言环境,而加速键 B 将“ja_JP”定义为它的语言环境,则在当前语言环境为“ja_JP”的情况下将使用加速键 B。

如果两个加速键是在不同插件的加速键集中定义的,则所选加速键将取决于插件。如果插件 A 取决于插件 B,则将使用在插件 B 中定义的加速键。如果插件 A 与插件 B 相互独立,则它们将按插件标识的字母顺序来进行排序。

如果在不同作用域中定义了两个加速键,则将使用在当前作用域中定义的加速键。如果加速键不是在当前作用域或者它的其中一个父作用域中定义的,则将废弃它。如果在父作用域和子作用域中定义了加速键,则将使用在子作用域中定义的加速键。

示例:

以下是加速键集扩展的一个示例:

   <extension point="org.eclipse.ui.acceleratorSets">
      <acceleratorSet
        configurationId="org.eclipse.ui.exampleAcceleratorConfiguration"
        scopeId="org.eclipse.ui.globalScope">
          <accelerator
              id="org.eclipse.ui.ExampleActionA"
              key="CTRL+R CTRL+A"
          </accelerator>
          <accelerator
              id="org.eclipse.ui.ExampleActionB"
              key="CTRL+R CTRL+B"
          </accelerator>
          <accelerator
              id="org.eclipse.ui.ExampleActionC"
              key="CTRL+R CTRL+C || CTRL+SHIFT+DELETE"
          </accelerator>
      </acceleratorSet>
   </extension>

API 信息:无。

所提供的实现:工作台为“缺省”和 Emacs 加速键配置提供了加速键集。

Copyright IBM Corporation and others 2000, 2002.