net.sf.jguiraffe.gui.platform.swing.builder.components
Class SwingLimitedTextModel

java.lang.Object
  extended by javax.swing.text.AbstractDocument
      extended by javax.swing.text.PlainDocument
          extended by net.sf.jguiraffe.gui.platform.swing.builder.components.SwingLimitedTextModel
All Implemented Interfaces:
java.io.Serializable, javax.swing.text.Document

 class SwingLimitedTextModel
extends javax.swing.text.PlainDocument

An internally used document class for text components with a limited text length.

This document class is initialized with a length parameter. It ensures that only text with this maximum length can be typed in the corresponding text component.

Version:
$Id: SwingLimitedTextModel.java 25 2006-04-12 16:34:28Z oheger $
Author:
Oliver Heger

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
SwingLimitedTextModel(int maxlen)
          Creates a new instance of SwingLimitedTextModel and initializes it with the maximum allowed text length.
 
Method Summary
 int getMaximumLength()
          Returns the maximum text length.
 void insertString(int offset, java.lang.String str, javax.swing.text.AttributeSet a)
          Inserts text into this document.
 
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, remove, 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

SwingLimitedTextModel

public SwingLimitedTextModel(int maxlen)
Creates a new instance of SwingLimitedTextModel and initializes it with the maximum allowed text length.

Parameters:
maxlen - the maximum text length
Method Detail

getMaximumLength

public int getMaximumLength()
Returns the maximum text length.

Returns:
the maximum text length

insertString

public void insertString(int offset,
                         java.lang.String str,
                         javax.swing.text.AttributeSet a)
                  throws javax.swing.text.BadLocationException
Inserts text into this document. This implementation ensures that the maximum text length is taken into account.

Specified by:
insertString in interface javax.swing.text.Document
Overrides:
insertString in class javax.swing.text.PlainDocument
Parameters:
offset - the insert position
str - the string to insert
a - attributes
Throws:
javax.swing.text.BadLocationException - if the position is invalid


Copyright 2007 null. All Rights Reserved.