AbstractDocument.DefaultDocumentEvent (Java 2 Platform SE 5.0) (original) (raw)


javax.swing.text

Class AbstractDocument.DefaultDocumentEvent

java.lang.Object extended by javax.swing.undo.AbstractUndoableEdit extended by javax.swing.undo.CompoundEdit extended by 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.


Nested Class Summary
Nested classes/interfaces inherited from interface javax.swing.event.DocumentEvent
DocumentEvent.ElementChange, DocumentEvent.EventType
Field Summary
Fields inherited from class javax.swing.undo.CompoundEdit
edits
Fields inherited from class javax.swing.undo.AbstractUndoableEdit
RedoName, UndoName
Constructor Summary
[AbstractDocument.DefaultDocumentEvent](../../../javax/swing/text/AbstractDocument.DefaultDocumentEvent.html#AbstractDocument.DefaultDocumentEvent%28int, int, javax.swing.event.DocumentEvent.EventType%29)(int offs, int len,DocumentEvent.EventType type) Constructs a change record.
Method Summary
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.
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.
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 inherited from class javax.swing.undo.CompoundEdit
canRedo, canUndo, die, end, isInProgress, lastEdit
Methods inherited from class javax.swing.undo.AbstractUndoableEdit
replaceEdit
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, [wait](../../../java/lang/Object.html#wait%28long, int%29)
Constructor Detail

AbstractDocument.DefaultDocumentEvent

public AbstractDocument.DefaultDocumentEvent(int offs, int len, DocumentEvent.EventType type)

Constructs a change record.

Parameters:

offs - the offset into the document of the change >= 0

len - the length of the change >= 0

type - the type of event (DocumentEvent.EventType)

Method Detail

toString

public String toString()

Returns a string description of the change event.

Overrides:

[toString](../../../javax/swing/undo/CompoundEdit.html#toString%28%29) in class [CompoundEdit](../../../javax/swing/undo/CompoundEdit.html "class in javax.swing.undo")

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](../../../javax/swing/undo/UndoableEdit.html#addEdit%28javax.swing.undo.UndoableEdit%29) in interface [UndoableEdit](../../../javax/swing/undo/UndoableEdit.html "interface in javax.swing.undo")

Overrides:

[addEdit](../../../javax/swing/undo/CompoundEdit.html#addEdit%28javax.swing.undo.UndoableEdit%29) in class [CompoundEdit](../../../javax/swing/undo/CompoundEdit.html "class in javax.swing.undo")

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](../../../javax/swing/undo/UndoableEdit.html#redo%28%29) in interface [UndoableEdit](../../../javax/swing/undo/UndoableEdit.html "interface in javax.swing.undo")

Overrides:

[redo](../../../javax/swing/undo/CompoundEdit.html#redo%28%29) in class [CompoundEdit](../../../javax/swing/undo/CompoundEdit.html "class in javax.swing.undo")

Throws:

[CannotRedoException](../../../javax/swing/undo/CannotRedoException.html "class in javax.swing.undo") - if the change cannot be redone

See Also:

AbstractUndoableEdit.canRedo()


undo

public void undo() throws CannotUndoException

Undoes a change.

Specified by:

[undo](../../../javax/swing/undo/UndoableEdit.html#undo%28%29) in interface [UndoableEdit](../../../javax/swing/undo/UndoableEdit.html "interface in javax.swing.undo")

Overrides:

[undo](../../../javax/swing/undo/CompoundEdit.html#undo%28%29) in class [CompoundEdit](../../../javax/swing/undo/CompoundEdit.html "class in javax.swing.undo")

Throws:

[CannotUndoException](../../../javax/swing/undo/CannotUndoException.html "class in javax.swing.undo") - 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](../../../javax/swing/undo/UndoableEdit.html#isSignificant%28%29) in interface [UndoableEdit](../../../javax/swing/undo/UndoableEdit.html "interface in javax.swing.undo")

Overrides:

[isSignificant](../../../javax/swing/undo/CompoundEdit.html#isSignificant%28%29) in class [CompoundEdit](../../../javax/swing/undo/CompoundEdit.html "class in javax.swing.undo")

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](../../../javax/swing/undo/UndoableEdit.html#getPresentationName%28%29) in interface [UndoableEdit](../../../javax/swing/undo/UndoableEdit.html "interface in javax.swing.undo")

Overrides:

[getPresentationName](../../../javax/swing/undo/CompoundEdit.html#getPresentationName%28%29) in class [CompoundEdit](../../../javax/swing/undo/CompoundEdit.html "class in javax.swing.undo")

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](../../../javax/swing/undo/UndoableEdit.html#getUndoPresentationName%28%29) in interface [UndoableEdit](../../../javax/swing/undo/UndoableEdit.html "interface in javax.swing.undo")

Overrides:

[getUndoPresentationName](../../../javax/swing/undo/CompoundEdit.html#getUndoPresentationName%28%29) in class [CompoundEdit](../../../javax/swing/undo/CompoundEdit.html "class in javax.swing.undo")

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](../../../javax/swing/undo/UndoableEdit.html#getRedoPresentationName%28%29) in interface [UndoableEdit](../../../javax/swing/undo/UndoableEdit.html "interface in javax.swing.undo")

Overrides:

[getRedoPresentationName](../../../javax/swing/undo/CompoundEdit.html#getRedoPresentationName%28%29) in class [CompoundEdit](../../../javax/swing/undo/CompoundEdit.html "class in javax.swing.undo")

Returns:

the description

See Also:

AbstractUndoableEdit.getPresentationName()


getType

public DocumentEvent.EventType getType()

Returns the type of event.

Specified by:

[getType](../../../javax/swing/event/DocumentEvent.html#getType%28%29) in interface [DocumentEvent](../../../javax/swing/event/DocumentEvent.html "interface in javax.swing.event")

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](../../../javax/swing/event/DocumentEvent.html#getOffset%28%29) in interface [DocumentEvent](../../../javax/swing/event/DocumentEvent.html "interface in javax.swing.event")

Returns:

the offset >= 0

See Also:

DocumentEvent.getOffset()


getLength

public int getLength()

Returns the length of the change.

Specified by:

[getLength](../../../javax/swing/event/DocumentEvent.html#getLength%28%29) in interface [DocumentEvent](../../../javax/swing/event/DocumentEvent.html "interface in javax.swing.event")

Returns:

the length >= 0

See Also:

DocumentEvent.getLength()


getDocument

public Document getDocument()

Gets the document that sourced the change event.

Specified by:

[getDocument](../../../javax/swing/event/DocumentEvent.html#getDocument%28%29) in interface [DocumentEvent](../../../javax/swing/event/DocumentEvent.html "interface in javax.swing.event")

Returns:

the document

See Also:

DocumentEvent.getDocument()


getChange

public DocumentEvent.ElementChange getChange(Element elem)

Gets the changes for an element.

Specified by:

[getChange](../../../javax/swing/event/DocumentEvent.html#getChange%28javax.swing.text.Element%29) in interface [DocumentEvent](../../../javax/swing/event/DocumentEvent.html "interface in javax.swing.event")

Parameters:

elem - the element

Returns:

the changes



Submit a bug or feature
For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Copyright © 2004, 2010 Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.