Mit einem Geltungsbereich wird der passende Kontext für eine Tastenbelegung definiert. Die Workbench definiert zwei Geltungsbereiche für Tastenbelegungen:
Der Geltungsbereich legt fest, wann eine Tastenbelegung (innerhalb der aktiven Tastenkonfiguration) als aktiv gilt. Er wird im Befehlsformat der Tastenbelegung deklariert:
... <keyBinding string="Ctrl+S" scope="org.eclipse.ui.globalScope" command="org.eclipse.ui.file.save" configuration="org.eclipse.ui.defaultAcceleratorConfiguration"> </keyBinding> ... <keyBinding string="Ctrl+X Ctrl+S" scope="org.eclipse.ui.globalScope" command="org.eclipse.ui.file.save" configuration="org.eclipse.ui.emacsAcceleratorConfiguration"> </keyBinding>
Wie wird der aktuelle Bereich festgestellt? Standardmäßig arbeitet die Workbench im globalen Bereich. Wird ein Texteditor aufgerufen, dann legt dieser als aktiven Bereich den Texteditorbereich fest. Die hierzu erforderlichen Steuerungsoperationen werden von der Workbench und vom Code des Texteditors durchgeführt. Die meisten Plug-ins müssen lediglich den korrekten Bereich für ihre Tastenbelegungen feststellen, wenn diese definiert werden.
Wenn ein Plug-in eine Tastenbelegung definiert, wird diese normalerweise einem bereits vorhandenen Geltungsbereich zugeordnet. Definiert das Plug-in allerdings einen neuen Editorstil, müssen Sie eventuell auch einen neuen Geltungsbereich für die zugehörigen Tastenbelegungen angeben. Bei einem Editor für mehrere Seiten kann z. B. ein anderer Geltungsbereich für jede Editorseite erforderlich sein.
Wenn Sie einen eigenen Geltungsbereich definieren, muss das Plug-in sicherstellen, dass in IKeyBindingService die korrekten Bereiche für den Editor festgelegt wurden. Eine vollständige Erläuterung der entsprechenden Vorgehensweise kann im Rahmen der vorliegenden Dokumentation nicht gegeben werden. Detaillierte Informationen hierzu finden Sie unter IKeyBindingService und den zugehörigen Implementierungselementen.
Plug-ins verwenden zum Definieren von Geltungsbereichen den Erweiterungspunkt org.eclipse.ui.commands. Das Befehlsformat der Workbench für den globalen und den Texteditorgelungsbereich befindet sich am Ende des Erweiterungspunktes:
<extension point="org.eclipse.ui.commands"> ... <scope name="%scope.global.name" description="%scope.global.description" id="org.eclipse.ui.globalScope"> </scope> <scope name="%scope.text.name" parent="org.eclipse.ui.globalScope" description="%scope.text.description" id="org.eclipse.ui.textEditorScope"> </scope> </extension>