Package org.jdesktop.swingx.autocomplete
Class AutoCompleteDocument
- java.lang.Object
-
- org.jdesktop.swingx.autocomplete.AutoCompleteDocument
-
- All Implemented Interfaces:
javax.swing.text.Document
- Direct Known Subclasses:
AutoCompleteStyledDocument
public class AutoCompleteDocument extends java.lang.Object implements javax.swing.text.Document
A document that can be plugged into any JTextComponent to enable automatic completion. It finds and selects matching items using any implementation of the AbstractAutoCompleteAdaptor.
-
-
Field Summary
Fields Modifier and Type Field Description protected javax.swing.text.Document
delegate
protected boolean
strictMatching
true, if only items from the adaptors's list can be entered false, otherwise (selected item might not be in the adaptors's list)
-
Constructor Summary
Constructors Constructor Description AutoCompleteDocument(AbstractAutoCompleteAdaptor adaptor, boolean strictMatching)
Creates a new AutoCompleteDocument for the given AbstractAutoCompleteAdaptor.AutoCompleteDocument(AbstractAutoCompleteAdaptor adaptor, boolean strictMatching, ObjectToStringConverter stringConverter)
Creates a new AutoCompleteDocument for the given AbstractAutoCompleteAdaptor.AutoCompleteDocument(AbstractAutoCompleteAdaptor adaptor, boolean strictMatching, ObjectToStringConverter stringConverter, javax.swing.text.Document delegate)
Creates a new AutoCompleteDocument for the given AbstractAutoCompleteAdaptor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addDocumentListener(javax.swing.event.DocumentListener listener)
void
addUndoableEditListener(javax.swing.event.UndoableEditListener listener)
protected javax.swing.text.Document
createDefaultDocument()
Creates the default backing document when no delegate is passed to this document.javax.swing.text.Position
createPosition(int offs)
javax.swing.text.Element
getDefaultRootElement()
javax.swing.text.Position
getEndPosition()
int
getLength()
java.lang.Object
getProperty(java.lang.Object key)
javax.swing.text.Element[]
getRootElements()
javax.swing.text.Position
getStartPosition()
java.lang.String
getText(int offset, int length)
void
getText(int offset, int length, javax.swing.text.Segment txt)
void
insertString(int offs, java.lang.String str, javax.swing.text.AttributeSet a)
boolean
isStrictMatching()
Returns if only items from the adaptor's list should be allowed to be entered.void
putProperty(java.lang.Object key, java.lang.Object value)
void
remove(int offs, int len)
void
removeDocumentListener(javax.swing.event.DocumentListener listener)
void
removeUndoableEditListener(javax.swing.event.UndoableEditListener listener)
void
render(java.lang.Runnable r)
-
-
-
Constructor Detail
-
AutoCompleteDocument
public AutoCompleteDocument(AbstractAutoCompleteAdaptor adaptor, boolean strictMatching, ObjectToStringConverter stringConverter, javax.swing.text.Document delegate)
Creates a new AutoCompleteDocument for the given AbstractAutoCompleteAdaptor.- Parameters:
adaptor
- The adaptor that will be used to find and select matching items.strictMatching
- true, if only items from the adaptor's list should be allowed to be enteredstringConverter
- the converter used to transform items to stringsdelegate
- theDocument
delegate backing this document
-
AutoCompleteDocument
public AutoCompleteDocument(AbstractAutoCompleteAdaptor adaptor, boolean strictMatching, ObjectToStringConverter stringConverter)
Creates a new AutoCompleteDocument for the given AbstractAutoCompleteAdaptor.- Parameters:
adaptor
- The adaptor that will be used to find and select matching items.strictMatching
- true, if only items from the adaptor's list should be allowed to be enteredstringConverter
- the converter used to transform items to strings
-
AutoCompleteDocument
public AutoCompleteDocument(AbstractAutoCompleteAdaptor adaptor, boolean strictMatching)
Creates a new AutoCompleteDocument for the given AbstractAutoCompleteAdaptor.- Parameters:
strictMatching
- true, if only items from the adaptor's list should be allowed to be enteredadaptor
- The adaptor that will be used to find and select matching items.
-
-
Method Detail
-
createDefaultDocument
protected javax.swing.text.Document createDefaultDocument()
Creates the default backing document when no delegate is passed to this document.- Returns:
- the default backing document
-
remove
public void remove(int offs, int len) throws javax.swing.text.BadLocationException
- Specified by:
remove
in interfacejavax.swing.text.Document
- Throws:
javax.swing.text.BadLocationException
-
insertString
public void insertString(int offs, java.lang.String str, javax.swing.text.AttributeSet a) throws javax.swing.text.BadLocationException
- Specified by:
insertString
in interfacejavax.swing.text.Document
- Throws:
javax.swing.text.BadLocationException
-
addDocumentListener
public void addDocumentListener(javax.swing.event.DocumentListener listener)
- Specified by:
addDocumentListener
in interfacejavax.swing.text.Document
-
addUndoableEditListener
public void addUndoableEditListener(javax.swing.event.UndoableEditListener listener)
- Specified by:
addUndoableEditListener
in interfacejavax.swing.text.Document
-
createPosition
public javax.swing.text.Position createPosition(int offs) throws javax.swing.text.BadLocationException
- Specified by:
createPosition
in interfacejavax.swing.text.Document
- Throws:
javax.swing.text.BadLocationException
-
getDefaultRootElement
public javax.swing.text.Element getDefaultRootElement()
- Specified by:
getDefaultRootElement
in interfacejavax.swing.text.Document
-
getEndPosition
public javax.swing.text.Position getEndPosition()
- Specified by:
getEndPosition
in interfacejavax.swing.text.Document
-
getLength
public int getLength()
- Specified by:
getLength
in interfacejavax.swing.text.Document
-
getProperty
public java.lang.Object getProperty(java.lang.Object key)
- Specified by:
getProperty
in interfacejavax.swing.text.Document
-
getRootElements
public javax.swing.text.Element[] getRootElements()
- Specified by:
getRootElements
in interfacejavax.swing.text.Document
-
getStartPosition
public javax.swing.text.Position getStartPosition()
- Specified by:
getStartPosition
in interfacejavax.swing.text.Document
-
getText
public java.lang.String getText(int offset, int length) throws javax.swing.text.BadLocationException
- Specified by:
getText
in interfacejavax.swing.text.Document
- Throws:
javax.swing.text.BadLocationException
-
getText
public void getText(int offset, int length, javax.swing.text.Segment txt) throws javax.swing.text.BadLocationException
- Specified by:
getText
in interfacejavax.swing.text.Document
- Throws:
javax.swing.text.BadLocationException
-
putProperty
public void putProperty(java.lang.Object key, java.lang.Object value)
- Specified by:
putProperty
in interfacejavax.swing.text.Document
-
removeDocumentListener
public void removeDocumentListener(javax.swing.event.DocumentListener listener)
- Specified by:
removeDocumentListener
in interfacejavax.swing.text.Document
-
removeUndoableEditListener
public void removeUndoableEditListener(javax.swing.event.UndoableEditListener listener)
- Specified by:
removeUndoableEditListener
in interfacejavax.swing.text.Document
-
render
public void render(java.lang.Runnable r)
- Specified by:
render
in interfacejavax.swing.text.Document
-
isStrictMatching
public boolean isStrictMatching()
Returns if only items from the adaptor's list should be allowed to be entered.- Returns:
- if only items from the adaptor's list should be allowed to be entered
-
-