Schémata

Schémata představují obecný styl nebo téma vazeb. Například pracovní plocha poskytuje schéma "Výchozí" a schéma "Emacs".  Vždy je aktivní pouze jediné schéma.  Aktivní schéma určuje koncový uživatel v dialogovém okně Předvolby.

Z hlediska implementace jsou schémata pouze pojmenovanými skupinami vazeb.  Schéma neprovede nic samostatně, pokud k němu nejsou přiřazeny vazby.  

Podívejme se opět na markup pracovní plochy org.eclipse.ui.bindings a věnujme se definicím vazeb a způsobu, kterým se schéma asociuje s vazbou.

...
<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>
...

Pro příkaz "org.eclipse.ui.file.save" jsou definovány dvě různé vazby kláves.  Povšimněte si, že každá z nich má definován odlišný identifikátor schemeID.  Je-li aktivní výchozí schéma, spustí příkaz vazba kláves "Ctrl+S".  Je-li aktivní schéma emacs, spustí příkaz sekvence "Ctrl+X Ctrl+S".

Definování nových schémat

Pokud váš modul plug-in definuje vazbu kláves, pravděpodobně ji přiřadí do stávajícího schématu.  Váš modul plug-in však může vyžadovat definování zcela nového stylu schématu.  V takovém případě můžete definovat nový typ schématu uvnitř definice org.eclipse.ui.bindings.  Níže je uveden markup pracovní plochy Workbench, který definuje výchozí konfigurace kláves a konfigurace emacs:

...
<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>
...

Povšimněte si, že zde definovaný název je název, který je použit na stránce předvoleb v seznamu schémat.

Aktivace schématu

Uživatel řídí aktivní schéma prostřednictvím stránky předvoleb.  Výchozí aktivní schéma však můžete definovat rovněž v souboru "plugin_customization.ini". Jde o předvolbu:

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