public class SynthComboBoxUI extends BasicComboBoxUIimplements PropertyChangeListener , SynthUI
JComboBox.
BasicComboBoxUI.ComboBoxLayoutManager , BasicComboBoxUI.FocusHandler , BasicComboBoxUI.ItemHandler , BasicComboBoxUI.KeyHandler , BasicComboBoxUI.ListDataHandler , BasicComboBoxUI.PropertyChangeHandler arrowButton, 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
Creates a new UI object for the given component.
|
SynthContext |
getContext(JComponent
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
Configures the specified component appropriately for the look and feel.
|
void |
paint(Graphics
Paints the specified component according to the Look and Feel.
|
protected void |
paint(SynthContext
Paints the specified component.
|
void |
paintBorder(SynthContext
Paints the border.
|
void |
paintCurrentValue(Graphics
Paints the currently selected item.
|
void |
propertyChange(PropertyChangeEvent
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
Reverses configuration which was done on the specified component during
installUI.
|
void |
update(Graphics
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 ComponentUIcreateUI(JComponent c)
c - component to create UI object for
public void installUI(JComponentc)
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
BasicComboBoxUI
c - the component where this UI delegate is being installed
ComponentUI.uninstallUI(javax.swing.JComponent) ,
JComponent.setUI(javax.swing.plaf.ComponentUI) ,
JComponent.updateUI()
protected void installDefaults()
BasicComboBoxUI
protected void installListeners()
public void uninstallUI(JComponentc)
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
BasicComboBoxUI
c - 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 components
ComponentUI.installUI(javax.swing.JComponent) ,
JComponent.updateUI()
protected void uninstallDefaults()
protected void uninstallListeners()
installListeners
public SynthContextgetContext(JComponent c)
getContext in interface
SynthUI
c - Component requesting SynthContext.
protected ComboPopupcreatePopup()
createPopup in class
BasicComboBoxUI
ComboPopup
ComboPopup
protected ListCellRenderercreateRenderer()
setRenderer.
createRenderer in class
BasicComboBoxUI
ListCellRender used for the combo box
JComboBox.setRenderer(javax.swing.ListCellRenderer<? super E>)
protected ComboBoxEditorcreateEditor()
setEditor.
createEditor in class
BasicComboBoxUI
ComboBoxEditor used for the combo box
JComboBox.setEditor(javax.swing.ComboBoxEditor)
public void propertyChange(PropertyChangeEvente)
propertyChange in interface
PropertyChangeListener
e - A PropertyChangeEvent object describing the event source and the property that has changed.
protected JButtoncreateArrowButton()
createArrowButton in class
BasicComboBoxUI
public void update(Graphicsg, 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
ComponentUI
g - the
Graphics object used for painting
c - the component being painted
paint(SynthContext,Graphics)
public void paint(Graphicsg, JComponent c)
This method is not used by Synth Look and Feel. Painting is handled by the paint(SynthContext,Graphics) method.
paint in class
BasicComboBoxUI
g - the
Graphics object used for painting
c - the component being painted
paint(SynthContext,Graphics)
protected void paint(SynthContextcontext, Graphics g)
context - context for the component being painted
g - the
Graphics object used for painting
update(Graphics,JComponent)
public void paintBorder(SynthContextcontext, Graphics g, int x, int y, int w, int h)
paintBorder in interface
SynthUI
context - a component context
g -
Graphics to paint on
x - the X coordinate
y - the Y coordinate
w - width of the border
h - height of the border
public void paintCurrentValue(Graphicsg, Rectangle bounds, boolean hasFocus)
protected DimensiongetDefaultSize()
getDefaultSize in class
BasicComboBoxUI
BasicComboBoxUI.getDisplaySize()