public class LabeledTextField extends JPanel
LabeledTextField
is a combo component which includes text field and an optional JLabel in the front and
another optional AbstractButton at the end.Modifier and Type | Class and Description |
---|---|
static interface |
LabeledTextField.PopupMenuCustomizer
The PopupMenuCustomizer for the context menu when clicking on the label/icon before the text field.
|
JPanel.AccessibleJPanel
JComponent.AccessibleJComponent
Container.AccessibleAWTContainer
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
Modifier and Type | Field and Description |
---|---|
protected AbstractButton |
_button |
protected KeyStroke |
_contextMenuKeyStroke |
protected LabeledTextField.PopupMenuCustomizer |
_customizer |
protected JLabel |
_hintLabel |
protected String |
_hintText |
protected Icon |
_icon |
protected JLabel |
_label |
protected String |
_labelText |
protected JTextField |
_textField |
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
Constructor and Description |
---|
LabeledTextField() |
LabeledTextField(Icon icon) |
LabeledTextField(Icon icon,
String labelText) |
Modifier and Type | Method and Description |
---|---|
protected AbstractButton |
createButton()
Creates the button that appears after the text field.
|
protected JidePopupMenu |
createContextMenu()
Creates a context menu.
|
protected JLabel |
createLabel()
Creates the label that appears before the text field.
|
protected JTextField |
createTextField()
Creates a text field.
|
int |
getBaseline(int width,
int height) |
AbstractButton |
getButton()
Gets the AbstractButton that appears after text field.
|
KeyStroke |
getContextMenuKeyStroke()
Gets the keystroke that will bring up the context menu.
|
String |
getHintText()
Gets the hint text when the field is empty and not focused.
|
Icon |
getIcon()
Gets the icon that appears before the text field.
|
JLabel |
getLabel()
Gets the JLabel that appears before text field.
|
String |
getLabelText()
Gets the text that appears before the text field.
|
LabeledTextField.PopupMenuCustomizer |
getPopupMenuCustomizer()
Gets the PopupMenuCustomizer.
|
String |
getText()
Gets the text in this TextField.
|
JTextField |
getTextField()
Gets the actual text field.
|
protected void |
initComponent() |
protected void |
initLayout(JLabel label,
JTextField field,
AbstractButton button)
Setup the layout of the components.
|
void |
setColumns(int columns)
Sets the number of columns in this TextField, and then invalidate the layout.
|
void |
setContextMenuKeyStroke(KeyStroke contextMenuKeyStroke)
Changes the keystroke that brings up the context menu which is normally shown when user clicks on the label icon
before the text field.
|
void |
setEnabled(boolean enabled) |
void |
setHintText(String hintText)
Sets the hint text.
|
void |
setIcon(Icon icon)
Sets the icon that appears before the text field.
|
void |
setLabelText(String text)
Sets the text that appears before the text field.
|
void |
setPopupMenuCustomizer(LabeledTextField.PopupMenuCustomizer customizer)
Sets the PopupMenuCustomizer.
|
void |
setText(String text)
Sets the text in this TextField.
|
protected void |
showContextMenu()
Shows the context menu.
|
void |
updateUI() |
getAccessibleContext, getUI, getUIClassID, paramString, setUI
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
protected JTextField _textField
protected JLabel _label
protected AbstractButton _button
protected String _labelText
protected Icon _icon
protected String _hintText
protected JLabel _hintLabel
protected LabeledTextField.PopupMenuCustomizer _customizer
protected KeyStroke _contextMenuKeyStroke
public LabeledTextField()
public LabeledTextField(Icon icon)
protected void initComponent()
protected void showContextMenu()
protected void initLayout(JLabel label, JTextField field, AbstractButton button)
label
- the labelfield
- the text field.button
- the buttonprotected JTextField createTextField()
protected JidePopupMenu createContextMenu()
protected AbstractButton createButton()
protected JLabel createLabel()
public void setLabelText(String text)
text
- the text that appears before the text field.public String getLabelText()
public void setIcon(Icon icon)
icon
- the icon that appears before the text field.public Icon getIcon()
public JLabel getLabel()
public AbstractButton getButton()
public void setColumns(int columns)
columns
- the number of columns for this text field.public void setText(String text)
text
- the new text in this TextField.public String getText()
public JTextField getTextField()
public void setEnabled(boolean enabled)
setEnabled
in class JComponent
public int getBaseline(int width, int height)
getBaseline
in class JComponent
public String getHintText()
public void setHintText(String hintText)
hintText
- the new hint text.public LabeledTextField.PopupMenuCustomizer getPopupMenuCustomizer()
public void setPopupMenuCustomizer(LabeledTextField.PopupMenuCustomizer customizer)
LabeledTextField
.
PopupMenuCustomizer has a customize method. The popup menu of this menu will be passed in. You can
add/remove/change the menu items in customize method. For example,
field.setPopupMenuCustomzier(new LabeledTextField.PopupMenuCustomizer() {
void customize(LabledTextField field, JPopupMenu menu) {
menu.removeAll();
menu.add(new JMenuItem("..."));
menu.add(new JMenuItem("..."));
}
}
If the menu is never used, the two add methods will never be called thus improve the performance.customizer
- the PopupMenuCustomizerpublic KeyStroke getContextMenuKeyStroke()
public void setContextMenuKeyStroke(KeyStroke contextMenuKeyStroke)
contextMenuKeyStroke
- the new keystroke to bring up the context menu.