Skeemat

Skeemojen avulla esitetään sidontojen yleinen tyyli tai teema. Esimerkiksi Työympäristössä on "Oletus"-skeema ja "Emacs"-skeema.  Vain yksi skeema on aktiivinen kerrallaan.  Peruskäyttäjät valitsevat aktiivisen vaihtoehdon Yleiset > Avaimet -oletusasetussivulta.

Toteutuksen näkökulmasta skeemat ovat yksinkertaisesti nimettyjä sidontojen ryhmiä.  Skeema ei tee itse mitään, ellei siihen ole liitetty sidontoja.  

Seuraavassa tarkastellaan uudelleen työympäristön org.eclipse.ui.bindings -merkintöjä ja etsitään sidontamäärityksiä ja sitä, miten skeema liitetään sidontaan.

...
<key
      sequence="Ctrl+S"
      commandId="org.eclipse.ui.file.save"
       schemeId="org.eclipse.ui.defaultAcceleratorConfiguration">
</key>
...
<key
       sequence="Ctrl+X Ctrl+S"
      commandId="org.eclipse.ui.file.save"
       schemeId="org.eclipse.ui.emacsAcceleratorConfiguration">
</key>
...

Komennolle "org.eclipse.ui.file.save" on määritetty kaksi eri näppäinsidontaa.  Huomaa, että kummallekin on määritetty erilainen schemeId-tunnus.  Kun oletusskeema on aktiivinen, näppäinsidonta "Ctrl+S" toteuttaa komennon.  Kun emacs-skeema on aktiivinen, näppäilysarja "Ctrl+X Ctrl+S" toteuttaa komennon.

Uusien skeemojen määritys

Kun lisäosa määrittää sidontasäännön, se todennäköisesti määrittää sen olemassa olevaan skeemaan.  Lisäosa haluaa kuitenkin ehkä määrittää aivan uudenlaisen skeematyylin.  Tässä tapauksessa voit määrittää uuden skeeman lajin org.eclipse.ui.bindings-määrityksen sisään.  Seuraavassa on esitetty työympäristön merkinnät, jotka määrittävät oletus- ja emacs-näppäinasetukset:

...
<scheme
       name="%keyConfiguration.default.name"
       description="%keyConfiguration.default.description"
       id="org.eclipse.ui.defaultAcceleratorConfiguration">
</scheme>
<scheme
       name="%keyConfiguration.emacs.name"
       parentId="org.eclipse.ui.defaultAcceleratorConfiguration"
       description="%keyConfiguration.emacs.description"
       id="org.eclipse.ui.emacsAcceleratorConfiguration">
</scheme>
...

Huomaa, että tässä määritetty nimi (name) on nimi, jota käytettiin oletusasetussivun skeemaluettelossa.

Skeeman aktivointi

Käyttäjä valitsee aktiivisen skeeman oletusasetussivulta.  Voit kuitenkin määrittää aktiivisen skeeman "plugin_customization.ini"-tiedoston osaksi. Se on oletusasetus:

org.eclipse.ui/KEY_CONFIGURATION_ID=org.eclipse.ui.defaultAcceleratorConfiguration