Provides support for bindings between commands and various user input events (e.g., keyboard shortcuts).
This package provides the common classes and abstract classes required to provide binding support.
All the real work in this package is carried out by the
BindingManager, and most work with bindings can be carried out
directly with it. The binding manager manages a collection of bindings, and
decides which bindings are active at any point in time. By changes the various
properties of the manager, the active bindings will change. The binding
manager implements a caching scheme that is optimized for an infreqeuntly
changing set of bindings, but frequently changing properties.
The binding manager also manages schemes. A scheme is a grouping of bindings.
To create a scheme, use
scheme must then be defined before it can be used.
If you wish to implement your own type of binding, then you must subclass
TriggerSequence. Then, simply use these
subclasses with the
Interface Summary Interface Description IBindingManagerListenerAn instance of
BindingManagerListenercan be used by clients to receive notification of changes to an instance of
ISchemeListenerAn instance of
ISchemeListenercan be used by clients to receive notification of changes to one or more instances of
Class Summary Class Description BindingA binding is a link between user input and the triggering of a particular command. BindingManagerA central repository for bindings -- both in the defined and undefined states. BindingManagerEventAn instance of this class describes changes to an instance of
SchemeAn instance of
ISchemeis a handle representing a binding scheme as defined by the extension point
SchemeEventAn instance of this class describes changes to an instance of
TriggerThe abstract class for any object that can be used as a trigger for a binding. TriggerSequenceA sequence of one or more triggers.