T
- is the type of item in the combo.public class ComboBuilder<T>
extends java.lang.Object
Tell the builder the features you'd like the comb to have, call build(), and the builder will take care of putting one together.
The builder does lots of the tedious work normally performed when creating a combo, and ensures that it conforms to UI standards.
Constructor and Description |
---|
ComboBuilder() |
Modifier and Type | Method and Description |
---|---|
void |
addActionListener(java.awt.event.ActionListener actionListener)
Add a listener to be notified when the combo selection changes.
|
BuiltCombo<T> |
build()
Create and return the final concrete component that can be added to a
component hierarchy.
|
void |
setActions(javax.swing.Action... actions)
Add action(s) to appear as buttons next to the component.
|
void |
setActionsSecondary(javax.swing.Action... actions)
Add additional (less important) action(s) to appear next to the component in a drop list.
|
void |
setActionsSecondary(java.lang.String secondaryActionsText,
javax.swing.Icon secondaryActionsIcon,
javax.swing.Action... actions)
Add additional (less important) action(s) to appear next to the component in a drop list.
|
ListenableCollection<T> |
setCheckable(java.util.Collection<T> initiallyCheckedItems)
Make the items in the component checkable.
|
ListenableCollection<T> |
setCheckable(java.util.Collection<T> initiallyCheckedItems,
CheckComboText<T> checkComboText)
Make the items in the component checkable.
|
void |
setEditable(boolean editable)
Create an editable combo where the user is free to type new text into the text area.
|
void |
setHint(java.lang.String hintText)
Set a hint to appear by the control.
|
void |
setLabel(java.lang.String labelText)
Add a label (and a titlebar to contain it).
The label text can optionally contain an '&' to mark the next character as a mnemonic which will be used as the shortcut for the component. |
void |
setModel(java.util.List<? extends T> items)
Set the initial contents of the items from the contents of the given
java.util.List.
|
void |
setModel(T[] items)
Set the initial contents of the combo from the contents of the given
array.
|
void |
setPrompt(java.lang.String promptText)
Set prompt text to appear in the control when the input field is empty.
|
void |
setRenderer(javax.swing.ListCellRenderer renderer)
Set the renderer used by the combo.
|
void |
setRenderUsingMethod(java.lang.String methodName)
Uses reflection to render the items in the combo, thus avoiding the need
to create a specialized renderer
|
void |
setSelection(T selection)
Set the item that will be initially selected.
|
void |
setVisibleRows(int visibleRows)
Set the maximum number of visible rows before a scrollbar is used.
|
public BuiltCombo<T> build()
public void setModel(T[] items)
items
- the array to display in the combopublic void setModel(java.util.List<? extends T> items)
After building, a List whose contents match the onscreen JList can be retrieved from BuiltCombo.getValues()
items
- the java.util.List to display in the combopublic void setLabel(java.lang.String labelText)
labelText
- public void setHint(java.lang.String hintText)
hintText
- public void setPrompt(java.lang.String promptText)
Must be used in conjunction with setEditable(true) or an IllegalStateException will be thrown when build is called.
promptText
- public void setRenderer(javax.swing.ListCellRenderer renderer)
renderer
- public void setRenderUsingMethod(java.lang.String methodName)
Uses reflection to render the items in the combo, thus avoiding the need to create a specialized renderer
e.g. If the ComboBuilder is building a list of Locale objects, calling this method with 'getDisplayLanguage' will display the Locale items as languages.
This will only be used if a renderer isn't set directly.
The method must have no parameters. Do not include parenthesis.
methodName
- a method from the type of the ListModel element.public void setVisibleRows(int visibleRows)
visibleRows
- public void setSelection(T selection)
selection
- public void setEditable(boolean editable)
editable
- public ListenableCollection<T> setCheckable(java.util.Collection<T> initiallyCheckedItems)
initiallyCheckedItems
- the collection of checked items, initially it contains the
starting items that should be checked.public ListenableCollection<T> setCheckable(java.util.Collection<T> initiallyCheckedItems, CheckComboText<T> checkComboText)
initiallyCheckedItems
- the collection of checked items, initially it contains the
starting items that should be checked.checkComboText
- a helper class to convert an item to a displayable string.public void addActionListener(java.awt.event.ActionListener actionListener)
public void setActions(javax.swing.Action... actions)
actions
- public void setActionsSecondary(javax.swing.Action... actions)
actions
- public void setActionsSecondary(java.lang.String secondaryActionsText, javax.swing.Icon secondaryActionsIcon, javax.swing.Action... actions)
secondaryActionsText
- the name (including mnemonic) for the drop list button, or null
to accept the defaultsecondaryActionsIcon
- the icon for the drop list button, or null
to accept the defaultactions
-