jEdit's global event notification mechanism.
Plugins register with the EditBus to receive messages reflecting
changes in the application's state, including changes in buffers,
views and edit panes, changes in the set of properties maintained
by the application, and the closing of the application.
The EditBus maintains a list of objects that have requested to receive
messages. When a message is sent using this class, all registered
components receive it in turn. Classes for objects that subscribe to
the EditBus must implement the
EBComponent interface, which
defines the single method
EBComponent.handleMessage(EBMessage) .
A plugin core class that extends the
EBPlugin abstract class (and whose name ends with
Plugin for identification purposes) will automatically be
added to the EditBus during jEdit's startup routine. Any other
class - for example, a dockable window that needs to receive
notification of buffer changes - must perform its own registration by calling
EditBus.addToBus(EBComponent) during its initialization.
A convenient place to register in a class derived from JComponent
would be in an implementation of the JComponent method
addNotify() .
Message types sent by jEdit can be found in the
org.gjt.sp.jedit.msg package.
Plugins can also send their own messages - any object can send a message to
the EditBus by calling the static method
EditBus.send(EBMessage) .
Most plugins, however, only concern themselves with receiving, not
sending, messages.
See Also: org.gjt.sp.jedit.EBComponent See Also: org.gjt.sp.jedit.EBMessage author: Slava Pestov author: John Gellene (API documentation) version: $Id: EditBus.java 4669 2003-05-01 02:21:27Z spestov $ since: jEdit 2.2pre6 |