public class SynthComboBoxUI extends BasicComboBoxUI implements PropertyChangeListener, SynthUI
JComboBox.BasicComboBoxUI.ComboBoxLayoutManager, BasicComboBoxUI.FocusHandler, BasicComboBoxUI.ItemHandler, BasicComboBoxUI.KeyHandler, BasicComboBoxUI.ListDataHandler, BasicComboBoxUI.PropertyChangeHandlerarrowButton, cachedMinimumSize, comboBox, currentValuePane, editor, focusListener, hasFocus, isMinimumSizeDirty, itemListener, keyListener, listBox, listDataListener, padding, popup, popupKeyListener, popupMouseListener, popupMouseMotionListener, propertyChangeListener, squareButtonDEFAULT, DISABLED, ENABLED, FOCUSED, MOUSE_OVER, PRESSED, SELECTED| Constructor and Description |
|---|
SynthComboBoxUI() |
| Modifier and Type | Method and Description |
|---|---|
protected JButton |
createArrowButton()
Creates a button which will be used as the control to show or hide
the popup portion of the combo box.
|
protected ComboBoxEditor |
createEditor()
Creates the default editor that will be used in editable combo boxes.
|
protected ComboPopup |
createPopup()
Creates the popup portion of the combo box.
|
protected ListCellRenderer |
createRenderer()
Creates the default renderer that will be used in a non-editiable combo
box.
|
static ComponentUI |
createUI(JComponent c)
Creates a new UI object for the given component.
|
SynthContext |
getContext(JComponent c)
Returns the Context for the specified component.
|
protected Dimension |
getDefaultSize()
Returns the default size of an empty display area of the combo box using
the current renderer and font.
|
protected void |
installDefaults()
Installs the default colors, default font, default renderer, and default
editor into the JComboBox.
|
protected void |
installListeners()
Creates and installs listeners for the combo box and its model.
|
void |
installUI(JComponent c)
Configures the specified component appropriately for the look and feel.
|
void |
paint(Graphics g,
JComponent c)
Paints the specified component according to the Look and Feel.
|
protected void |
paint(SynthContext context,
Graphics g)
Paints the specified component.
|
void |
paintBorder(SynthContext context,
Graphics g,
int x,
int y,
int w,
int h)
Paints the border.
|
void |
paintCurrentValue(Graphics g,
Rectangle bounds,
boolean hasFocus)
Paints the currently selected item.
|
void |
propertyChange(PropertyChangeEvent e)
This method gets called when a bound property is changed.
|
protected void |
uninstallDefaults()
Uninstalls the default colors, default font, default renderer,
and default editor from the combo box.
|
protected void |
uninstallListeners()
Removes the installed listeners from the combo box and its model.
|
void |
uninstallUI(JComponent c)
Reverses configuration which was done on the specified component during
installUI. |
void |
update(Graphics g,
JComponent c)
Notifies this UI delegate to repaint the specified component.
|
addEditor, configureArrowButton, configureEditor, createFocusListener, createItemListener, createKeyListener, createLayoutManager, createListDataListener, createPropertyChangeListener, getAccessibleChild, getAccessibleChildrenCount, getBaseline, getBaselineResizeBehavior, getDisplaySize, getInsets, getMaximumSize, getMinimumSize, getPreferredSize, getSizeForComponent, installComponents, installKeyboardActions, isFocusTraversable, isNavigationKey, isPopupVisible, paintCurrentValueBackground, rectangleForCurrentValue, removeEditor, selectNextPossibleValue, selectPreviousPossibleValue, setPopupVisible, toggleOpenClose, unconfigureArrowButton, unconfigureEditor, uninstallComponents, uninstallKeyboardActionscontainspublic static ComponentUI createUI(JComponent c)
c - component to create UI object forpublic void installUI(JComponent c)
ComponentUI instance is being installed
as the UI delegate on the specified component. This method should
completely configure the component for the look and feel,
including the following:
LayoutManager on the component if necessary.
PropertyChangeListener on the component in order
to detect and respond to component property changes appropriately.
installUI in class BasicComboBoxUIc - the component where this UI delegate is being installedComponentUI.uninstallUI(javax.swing.JComponent),
JComponent.setUI(javax.swing.plaf.ComponentUI),
JComponent.updateUI()protected void installDefaults()
BasicComboBoxUIinstallDefaults in class BasicComboBoxUIprotected void installListeners()
installListeners in class BasicComboBoxUIpublic void uninstallUI(JComponent c)
installUI. This method is invoked when this
UIComponent instance is being removed as the UI delegate
for the specified component. This method should undo the
configuration performed in installUI, being careful to
leave the JComponent instance in a clean state (no
extraneous listeners, look-and-feel-specific property objects, etc.).
This should include the following:
uninstallUI in class BasicComboBoxUIc - the component from which this UI delegate is being removed;
this argument is often ignored,
but might be used if the UI object is stateless
and shared by multiple componentsComponentUI.installUI(javax.swing.JComponent),
JComponent.updateUI()protected void uninstallDefaults()
uninstallDefaults in class BasicComboBoxUIprotected void uninstallListeners()
installListenersuninstallListeners in class BasicComboBoxUIpublic SynthContext getContext(JComponent c)
getContext in interface SynthUIc - Component requesting SynthContext.protected ComboPopup createPopup()
createPopup in class BasicComboBoxUIComboPopupComboPopupprotected ListCellRenderer createRenderer()
setRenderer.createRenderer in class BasicComboBoxUIListCellRender used for the combo boxJComboBox.setRenderer(javax.swing.ListCellRenderer<? super E>)protected ComboBoxEditor createEditor()
setEditor.createEditor in class BasicComboBoxUIComboBoxEditor used for the combo boxJComboBox.setEditor(javax.swing.ComboBoxEditor)public void propertyChange(PropertyChangeEvent e)
propertyChange in interface PropertyChangeListenere - A PropertyChangeEvent object describing the event source
and the property that has changed.protected JButton createArrowButton()
createArrowButton in class BasicComboBoxUIpublic void update(Graphics g, JComponent c)
paint(SynthContext,Graphics) method.
In general, this method does not need to be overridden by subclasses.
All Look and Feel rendering code should reside in the paint method.
update in class ComponentUIg - the Graphics object used for paintingc - the component being paintedpaint(SynthContext,Graphics)public void paint(Graphics g, JComponent c)
This method is not used by Synth Look and Feel.
Painting is handled by the paint(SynthContext,Graphics) method.
paint in class BasicComboBoxUIg - the Graphics object used for paintingc - the component being paintedpaint(SynthContext,Graphics)protected void paint(SynthContext context, Graphics g)
context - context for the component being paintedg - the Graphics object used for paintingupdate(Graphics,JComponent)public void paintBorder(SynthContext context, Graphics g, int x, int y, int w, int h)
paintBorder in interface SynthUIcontext - a component contextg - Graphics to paint onx - the X coordinatey - the Y coordinatew - width of the borderh - height of the borderpublic void paintCurrentValue(Graphics g, Rectangle bounds, boolean hasFocus)
paintCurrentValue in class BasicComboBoxUIprotected Dimension getDefaultSize()
getDefaultSize in class BasicComboBoxUIBasicComboBoxUI.getDisplaySize() Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2018, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.