- java.lang.Object
-
- javax.swing.undo.AbstractUndoableEdit
-
- javax.swing.undo.CompoundEdit
-
- javax.swing.text.AbstractDocument.DefaultDocumentEvent
-
- All Implemented Interfaces:
Serializable
,DocumentEvent
,UndoableEdit
- Enclosing class:
- AbstractDocument
public class AbstractDocument.DefaultDocumentEvent extends CompoundEdit implements DocumentEvent
Stores document changes as the document is being modified. Can subsequently be used for change notification when done with the document modification transaction. This is used by the AbstractDocument class and its extensions for broadcasting change information to the document listeners.- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces declared in interface javax.swing.event.DocumentEvent
DocumentEvent.ElementChange, DocumentEvent.EventType
-
-
Field Summary
-
Fields declared in class javax.swing.undo.CompoundEdit
edits
-
Fields declared in class javax.swing.undo.AbstractUndoableEdit
RedoName, UndoName
-
-
Constructor Summary
Constructors Constructor Description DefaultDocumentEvent(int offs, int len, DocumentEvent.EventType type)
Constructs a change record.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
addEdit(UndoableEdit anEdit)
Adds a document edit.DocumentEvent.ElementChange
getChange(Element elem)
Gets the changes for an element.Document
getDocument()
Gets the document that sourced the change event.int
getLength()
Returns the length of the change.int
getOffset()
Returns the offset within the document of the start of the change.String
getPresentationName()
Provides a localized, human readable description of this edit suitable for use in, say, a change log.String
getRedoPresentationName()
Provides a localized, human readable description of the redoable form of this edit, e.g. for use as a Redo menu item.DocumentEvent.EventType
getType()
Returns the type of event.String
getUndoPresentationName()
Provides a localized, human readable description of the undoable form of this edit, e.g. for use as an Undo menu item.boolean
isSignificant()
DefaultDocument events are significant.void
redo()
Redoes a change.String
toString()
Returns a string description of the change event.void
undo()
Undoes a change.-
Methods declared in class javax.swing.undo.CompoundEdit
canRedo, canUndo, die, end, isInProgress, lastEdit
-
Methods declared in class javax.swing.undo.AbstractUndoableEdit
replaceEdit
-
-
-
-
Constructor Detail
-
DefaultDocumentEvent
public DefaultDocumentEvent(int offs, int len, DocumentEvent.EventType type)
Constructs a change record.- Parameters:
offs
- the offset into the document of the change >= 0len
- the length of the change >= 0type
- the type of event (DocumentEvent.EventType)- Since:
- 1.4
-
-
Method Detail
-
toString
public String toString()
Returns a string description of the change event.- Overrides:
toString
in classCompoundEdit
- Returns:
- a string
-
addEdit
public boolean addEdit(UndoableEdit anEdit)
Adds a document edit. If the number of edits crosses a threshold, this switches on a hashtable lookup for ElementChange implementations since access of these needs to be relatively quick.- Specified by:
addEdit
in interfaceUndoableEdit
- Overrides:
addEdit
in classCompoundEdit
- Parameters:
anEdit
- a document edit record- Returns:
- true if the edit was added
- See Also:
UndoableEdit.addEdit(javax.swing.undo.UndoableEdit)
-
redo
public void redo() throws CannotRedoException
Redoes a change.- Specified by:
redo
in interfaceUndoableEdit
- Overrides:
redo
in classCompoundEdit
- Throws:
CannotRedoException
- if the change cannot be redone- See Also:
AbstractUndoableEdit.canRedo()
-
undo
public void undo() throws CannotUndoException
Undoes a change.- Specified by:
undo
in interfaceUndoableEdit
- Overrides:
undo
in classCompoundEdit
- Throws:
CannotUndoException
- if the change cannot be undone- See Also:
AbstractUndoableEdit.canUndo()
-
isSignificant
public boolean isSignificant()
DefaultDocument events are significant. If you wish to aggregate DefaultDocumentEvents to present them as a single edit to the user place them into a CompoundEdit.- Specified by:
isSignificant
in interfaceUndoableEdit
- Overrides:
isSignificant
in classCompoundEdit
- Returns:
- whether the event is significant for edit undo purposes
- See Also:
UndoableEdit.isSignificant()
-
getPresentationName
public String getPresentationName()
Provides a localized, human readable description of this edit suitable for use in, say, a change log.- Specified by:
getPresentationName
in interfaceUndoableEdit
- Overrides:
getPresentationName
in classCompoundEdit
- Returns:
- the description
- See Also:
AbstractUndoableEdit.getUndoPresentationName()
,AbstractUndoableEdit.getRedoPresentationName()
-
getUndoPresentationName
public String getUndoPresentationName()
Provides a localized, human readable description of the undoable form of this edit, e.g. for use as an Undo menu item. Typically derived from getDescription();- Specified by:
getUndoPresentationName
in interfaceUndoableEdit
- Overrides:
getUndoPresentationName
in classCompoundEdit
- Returns:
- the description
- See Also:
AbstractUndoableEdit.getPresentationName()
-
getRedoPresentationName
public String getRedoPresentationName()
Provides a localized, human readable description of the redoable form of this edit, e.g. for use as a Redo menu item. Typically derived from getPresentationName();- Specified by:
getRedoPresentationName
in interfaceUndoableEdit
- Overrides:
getRedoPresentationName
in classCompoundEdit
- Returns:
- the description
- See Also:
AbstractUndoableEdit.getPresentationName()
-
getType
public DocumentEvent.EventType getType()
Returns the type of event.- Specified by:
getType
in interfaceDocumentEvent
- Returns:
- the event type as a DocumentEvent.EventType
- See Also:
DocumentEvent.getType()
-
getOffset
public int getOffset()
Returns the offset within the document of the start of the change.- Specified by:
getOffset
in interfaceDocumentEvent
- Returns:
- the offset >= 0
- See Also:
DocumentEvent.getOffset()
-
getLength
public int getLength()
Returns the length of the change.- Specified by:
getLength
in interfaceDocumentEvent
- Returns:
- the length >= 0
- See Also:
DocumentEvent.getLength()
-
getDocument
public Document getDocument()
Gets the document that sourced the change event.- Specified by:
getDocument
in interfaceDocumentEvent
- Returns:
- the document
- See Also:
DocumentEvent.getDocument()
-
getChange
public DocumentEvent.ElementChange getChange(Element elem)
Gets the changes for an element.- Specified by:
getChange
in interfaceDocumentEvent
- Parameters:
elem
- the element- Returns:
- the changes
-
-