Package de.sciss.app
Class DocumentEvent
- java.lang.Object
-
- java.util.EventObject
-
- de.sciss.app.BasicEvent
-
- de.sciss.app.DocumentEvent
-
- All Implemented Interfaces:
java.io.Serializable
public class DocumentEvent extends BasicEvent
This kind of event is fired from aDocumentHandlerwhen a document as been created, destroyed or switched.
-
-
Constructor Summary
Constructors Constructor Description DocumentEvent(java.lang.Object source, int ID, long when, Document doc)Constructs a newDocumentEvent
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description DocumentgetDocument()Queries the related documentbooleanincorporate(BasicEvent oldEvent)Asks the event to incorporate the action described by another (older) event.-
Methods inherited from class de.sciss.app.BasicEvent
getID, getWhen
-
-
-
-
Field Detail
-
ADDED
public static final int ADDED
returned by getID() : the document has been added- See Also:
- Constant Field Values
-
REMOVED
public static final int REMOVED
returned by getID() : the document has been removed- See Also:
- Constant Field Values
-
FOCUSSED
public static final int FOCUSSED
returned by getID() : the document has become the active document- See Also:
- Constant Field Values
-
-
Constructor Detail
-
DocumentEvent
public DocumentEvent(java.lang.Object source, int ID, long when, Document doc)Constructs a newDocumentEvent- Parameters:
source- who originated the actionID-ADDED,REMOVED, orFOCUSSEDwhen- system time when the event occureddoc- the related document
-
-
Method Detail
-
getDocument
public Document getDocument()
Queries the related document- Returns:
- the document which was added, removed or focussed.
-
incorporate
public boolean incorporate(BasicEvent oldEvent)
Description copied from class:BasicEventAsks the event to incorporate the action described by another (older) event. This method has been created to reduce overhead; when many events are added to the event queue of an ELM, this allows to fuse two adjectant events. The idea is mainly based on thereplaceEdit()method of thejavax.swing.undo.UndoableEditinterface; a pendant of a symmetricaddEdit()like method is not provided because it seems to be unnecessary.Implementation notes : the
oldEventshould generally only be incorporated if it refers to the same source object (getSource()) and has the same ID (getD()). the timestamp of the current event should not be modified.- Specified by:
incorporatein classBasicEvent- Parameters:
oldEvent- the most recent event in the queue which might be incorporated by this new event.- Returns:
trueif this object was able to incorporate the older event. in this case theoldEventis removed from the event queue.falsestates that theoldEventwas incompatible and should remain in the queue.- See Also:
UndoableEdit.replaceEdit( UndoableEdit )
-
-