com.partnersoft.gui
Class ValidatedDocument

java.lang.Object
  extended by javax.swing.text.AbstractDocument
      extended by javax.swing.text.PlainDocument
          extended by com.partnersoft.gui.ValidatedDocument
All Implemented Interfaces:
java.io.Serializable, javax.swing.text.Document
Direct Known Subclasses:
AngleDocument, DateDocument, DateTimeDocument, LimitedLengthDocument, TimeDocument

public abstract class ValidatedDocument
extends javax.swing.text.PlainDocument

This class extends the PlainDocument class in order to provide field level validation of the String being built.

Author:
Paul Reavis Copyright 1998-2003 Partner Software, Inc.
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.text.AbstractDocument
javax.swing.text.AbstractDocument.AbstractElement, javax.swing.text.AbstractDocument.AttributeContext, javax.swing.text.AbstractDocument.BranchElement, javax.swing.text.AbstractDocument.Content, javax.swing.text.AbstractDocument.DefaultDocumentEvent, javax.swing.text.AbstractDocument.ElementEdit, javax.swing.text.AbstractDocument.LeafElement
 
Field Summary
 
Fields inherited from class javax.swing.text.PlainDocument
lineLimitAttribute, tabSizeAttribute
 
Fields inherited from class javax.swing.text.AbstractDocument
BAD_LOCATION, BidiElementName, ContentElementName, ElementNameAttribute, listenerList, ParagraphElementName, SectionElementName
 
Fields inherited from interface javax.swing.text.Document
StreamDescriptionProperty, TitleProperty
 
Constructor Summary
ValidatedDocument()
           
 
Method Summary
 void insertString(int offset, java.lang.String str, javax.swing.text.AttributeSet attr)
          This method overrides the method in the parent class to validate the String resulting from the insertion before applying the change.
abstract  boolean isValid(java.lang.String value)
          Subclasses must override this to validate individual Strings.
 boolean isValidatedOnExit()
           
abstract  java.lang.Object parse(java.lang.String value)
          Subclasses must override this to return the Object specified by the String.
 void remove(int offset, int length)
          This method overrides the method in the parent class to validate the String resulting from the insertion before applying the change.
 
Methods inherited from class javax.swing.text.PlainDocument
createDefaultRoot, getDefaultRootElement, getParagraphElement, insertUpdate, removeUpdate
 
Methods inherited from class javax.swing.text.AbstractDocument
addDocumentListener, addUndoableEditListener, createBranchElement, createLeafElement, createPosition, dump, fireChangedUpdate, fireInsertUpdate, fireRemoveUpdate, fireUndoableEditUpdate, getAsynchronousLoadPriority, getAttributeContext, getBidiRootElement, getContent, getCurrentWriter, getDocumentFilter, getDocumentListeners, getDocumentProperties, getEndPosition, getLength, getListeners, getProperty, getRootElements, getStartPosition, getText, getText, getUndoableEditListeners, postRemoveUpdate, putProperty, readLock, readUnlock, removeDocumentListener, removeUndoableEditListener, render, replace, setAsynchronousLoadPriority, setDocumentFilter, setDocumentProperties, writeLock, writeUnlock
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ValidatedDocument

public ValidatedDocument()
Method Detail

insertString

public void insertString(int offset,
                         java.lang.String str,
                         javax.swing.text.AttributeSet attr)
This method overrides the method in the parent class to validate the String resulting from the insertion before applying the change.

Specified by:
insertString in interface javax.swing.text.Document
Overrides:
insertString in class javax.swing.text.PlainDocument

remove

public void remove(int offset,
                   int length)
This method overrides the method in the parent class to validate the String resulting from the insertion before applying the change.

Specified by:
remove in interface javax.swing.text.Document
Overrides:
remove in class javax.swing.text.AbstractDocument

isValid

public abstract boolean isValid(java.lang.String value)
Subclasses must override this to validate individual Strings.


parse

public abstract java.lang.Object parse(java.lang.String value)
                                throws java.text.ParseException
Subclasses must override this to return the Object specified by the String. Not strictly a validation feature, but since validation often implies a translation from String to something else, why not?

Throws:
java.text.ParseException

isValidatedOnExit

public boolean isValidatedOnExit()