Package com.formdev.flatlaf.ui
Class FlatComboBoxUI
- java.lang.Object
-
- javax.swing.plaf.ComponentUI
-
- javax.swing.plaf.ComboBoxUI
-
- javax.swing.plaf.basic.BasicComboBoxUI
-
- com.formdev.flatlaf.ui.FlatComboBoxUI
-
- All Implemented Interfaces:
FlatStylingSupport.StyleableLookupProvider
,FlatStylingSupport.StyleableUI
public class FlatComboBoxUI extends javax.swing.plaf.basic.BasicComboBoxUI implements FlatStylingSupport.StyleableUI, FlatStylingSupport.StyleableLookupProvider
Provides the Flat LaF UI delegate forJComboBox
.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
FlatComboBoxUI.CellPaddingBorder
Cell padding border used in popup list and for current value if not editable.private class
FlatComboBoxUI.EditorDelegateAction
Delegates actions from editor text field to combobox.protected class
FlatComboBoxUI.FlatComboBoxButton
protected class
FlatComboBoxUI.FlatComboPopup
private class
FlatComboBoxUI.FlatKeySelectionManager
Key selection manager that delegates to the default manager.private static class
FlatComboBoxUI.MacCheckedItemIcon
Use for style "mac" to mark checked item.-
Nested classes/interfaces inherited from class javax.swing.plaf.basic.BasicComboBoxUI
javax.swing.plaf.basic.BasicComboBoxUI.ComboBoxLayoutManager, javax.swing.plaf.basic.BasicComboBoxUI.FocusHandler, javax.swing.plaf.basic.BasicComboBoxUI.ItemHandler, javax.swing.plaf.basic.BasicComboBoxUI.KeyHandler, javax.swing.plaf.basic.BasicComboBoxUI.ListDataHandler, javax.swing.plaf.basic.BasicComboBoxUI.PropertyChangeHandler
-
-
Field Summary
Fields Modifier and Type Field Description protected java.lang.String
arrowType
private java.awt.Color
background
private java.util.concurrent.atomic.AtomicBoolean
borderShared
protected java.awt.Color
buttonArrowColor
protected java.awt.Color
buttonBackground
protected java.awt.Color
buttonDisabledArrowColor
protected java.awt.Color
buttonDisabledSeparatorColor
protected java.awt.Color
buttonEditableBackground
protected java.awt.Color
buttonFocusedBackground
protected java.awt.Color
buttonHoverArrowColor
protected java.awt.Color
buttonPressedArrowColor
protected java.awt.Color
buttonSeparatorColor
protected float
buttonSeparatorWidth
protected java.lang.String
buttonStyle
protected java.awt.Color
disabledBackground
protected java.awt.Color
disabledForeground
protected java.awt.Color
editableBackground
protected int
editorColumns
protected java.awt.Color
focusedBackground
protected boolean
hover
private java.awt.event.MouseListener
hoverListener
protected int
minimumWidth
private java.util.Map<java.lang.String,java.lang.Object>
oldStyleValues
private FlatComboBoxUI.CellPaddingBorder
paddingBorder
protected java.awt.Color
popupBackground
protected java.awt.Insets
popupInsets
protected boolean
pressed
protected int
selectionArc
protected java.awt.Insets
selectionInsets
-
Fields inherited from class javax.swing.plaf.basic.BasicComboBoxUI
arrowButton, cachedMinimumSize, comboBox, currentValuePane, editor, focusListener, hasFocus, isMinimumSizeDirty, itemListener, keyListener, listBox, listDataListener, padding, popup, popupKeyListener, popupMouseListener, popupMouseMotionListener, propertyChangeListener, squareButton
-
-
Constructor Summary
Constructors Constructor Description FlatComboBoxUI()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
applyStyle(java.lang.Object style)
protected java.lang.Object
applyStyleProperty(java.lang.String key, java.lang.Object value)
protected void
configureEditor()
protected javax.swing.JButton
createArrowButton()
protected java.awt.event.FocusListener
createFocusListener()
protected java.awt.LayoutManager
createLayoutManager()
protected javax.swing.plaf.basic.ComboPopup
createPopup()
protected java.beans.PropertyChangeListener
createPropertyChangeListener()
static javax.swing.plaf.ComponentUI
createUI(javax.swing.JComponent c)
protected java.awt.Color
getBackground(boolean enabled)
protected java.awt.Dimension
getDefaultSize()
protected java.awt.Dimension
getDisplaySize()
protected java.awt.Color
getForeground(boolean enabled)
java.lang.invoke.MethodHandles.Lookup
getLookupForStyling()
java.awt.Dimension
getMinimumSize(javax.swing.JComponent c)
protected java.awt.Dimension
getSizeForComponent(java.awt.Component comp)
java.util.Map<java.lang.String,java.lang.Class<?>>
getStyleableInfos(javax.swing.JComponent c)
java.lang.Object
getStyleableValue(javax.swing.JComponent c, java.lang.String key)
protected void
installDefaults()
protected void
installListeners()
protected void
installStyle()
void
installUI(javax.swing.JComponent c)
private void
installUIImpl(javax.swing.JComponent c)
private boolean
isCellRenderer()
private boolean
isCellRendererBackgroundChanged()
private boolean
isMacStyle()
static boolean
isPermanentFocusOwner(javax.swing.JComboBox<?> comboBox)
void
paintCurrentValue(java.awt.Graphics g, java.awt.Rectangle bounds, boolean hasFocus)
void
paintCurrentValueBackground(java.awt.Graphics g, java.awt.Rectangle bounds, boolean hasFocus)
protected void
uninstallDefaults()
protected void
uninstallListeners()
void
update(java.awt.Graphics g, javax.swing.JComponent c)
private void
updateEditorColors()
private void
updateEditorPadding()
-
Methods inherited from class javax.swing.plaf.basic.BasicComboBoxUI
addEditor, configureArrowButton, createEditor, createItemListener, createKeyListener, createListDataListener, createRenderer, getAccessibleChild, getAccessibleChildrenCount, getBaseline, getBaselineResizeBehavior, getInsets, getMaximumSize, getPreferredSize, installComponents, installKeyboardActions, isFocusTraversable, isNavigationKey, isPopupVisible, paint, rectangleForCurrentValue, removeEditor, selectNextPossibleValue, selectPreviousPossibleValue, setPopupVisible, toggleOpenClose, unconfigureArrowButton, unconfigureEditor, uninstallComponents, uninstallKeyboardActions, uninstallUI
-
-
-
-
Field Detail
-
minimumWidth
protected int minimumWidth
-
editorColumns
protected int editorColumns
-
buttonStyle
protected java.lang.String buttonStyle
-
arrowType
protected java.lang.String arrowType
-
background
private java.awt.Color background
-
editableBackground
protected java.awt.Color editableBackground
-
focusedBackground
protected java.awt.Color focusedBackground
-
disabledBackground
protected java.awt.Color disabledBackground
-
disabledForeground
protected java.awt.Color disabledForeground
-
buttonBackground
protected java.awt.Color buttonBackground
-
buttonEditableBackground
protected java.awt.Color buttonEditableBackground
-
buttonFocusedBackground
protected java.awt.Color buttonFocusedBackground
-
buttonSeparatorWidth
protected float buttonSeparatorWidth
- Since:
- 2
-
buttonSeparatorColor
protected java.awt.Color buttonSeparatorColor
- Since:
- 2
-
buttonDisabledSeparatorColor
protected java.awt.Color buttonDisabledSeparatorColor
- Since:
- 2
-
buttonArrowColor
protected java.awt.Color buttonArrowColor
-
buttonDisabledArrowColor
protected java.awt.Color buttonDisabledArrowColor
-
buttonHoverArrowColor
protected java.awt.Color buttonHoverArrowColor
-
buttonPressedArrowColor
protected java.awt.Color buttonPressedArrowColor
-
popupBackground
protected java.awt.Color popupBackground
-
popupInsets
protected java.awt.Insets popupInsets
- Since:
- 3
-
selectionInsets
protected java.awt.Insets selectionInsets
- Since:
- 3
-
selectionArc
protected int selectionArc
- Since:
- 3
-
hoverListener
private java.awt.event.MouseListener hoverListener
-
hover
protected boolean hover
-
pressed
protected boolean pressed
-
paddingBorder
private FlatComboBoxUI.CellPaddingBorder paddingBorder
-
oldStyleValues
private java.util.Map<java.lang.String,java.lang.Object> oldStyleValues
-
borderShared
private java.util.concurrent.atomic.AtomicBoolean borderShared
-
-
Method Detail
-
createUI
public static javax.swing.plaf.ComponentUI createUI(javax.swing.JComponent c)
-
installUI
public void installUI(javax.swing.JComponent c)
- Overrides:
installUI
in classjavax.swing.plaf.basic.BasicComboBoxUI
-
installUIImpl
private void installUIImpl(javax.swing.JComponent c)
-
installListeners
protected void installListeners()
- Overrides:
installListeners
in classjavax.swing.plaf.basic.BasicComboBoxUI
-
uninstallListeners
protected void uninstallListeners()
- Overrides:
uninstallListeners
in classjavax.swing.plaf.basic.BasicComboBoxUI
-
installDefaults
protected void installDefaults()
- Overrides:
installDefaults
in classjavax.swing.plaf.basic.BasicComboBoxUI
-
uninstallDefaults
protected void uninstallDefaults()
- Overrides:
uninstallDefaults
in classjavax.swing.plaf.basic.BasicComboBoxUI
-
createLayoutManager
protected java.awt.LayoutManager createLayoutManager()
- Overrides:
createLayoutManager
in classjavax.swing.plaf.basic.BasicComboBoxUI
-
createFocusListener
protected java.awt.event.FocusListener createFocusListener()
- Overrides:
createFocusListener
in classjavax.swing.plaf.basic.BasicComboBoxUI
-
createPropertyChangeListener
protected java.beans.PropertyChangeListener createPropertyChangeListener()
- Overrides:
createPropertyChangeListener
in classjavax.swing.plaf.basic.BasicComboBoxUI
-
createPopup
protected javax.swing.plaf.basic.ComboPopup createPopup()
- Overrides:
createPopup
in classjavax.swing.plaf.basic.BasicComboBoxUI
-
configureEditor
protected void configureEditor()
- Overrides:
configureEditor
in classjavax.swing.plaf.basic.BasicComboBoxUI
-
updateEditorPadding
private void updateEditorPadding()
-
updateEditorColors
private void updateEditorColors()
-
createArrowButton
protected javax.swing.JButton createArrowButton()
- Overrides:
createArrowButton
in classjavax.swing.plaf.basic.BasicComboBoxUI
-
installStyle
protected void installStyle()
- Since:
- 2
-
applyStyle
protected void applyStyle(java.lang.Object style)
- Since:
- 2
-
applyStyleProperty
protected java.lang.Object applyStyleProperty(java.lang.String key, java.lang.Object value)
- Since:
- 2
-
getStyleableInfos
public java.util.Map<java.lang.String,java.lang.Class<?>> getStyleableInfos(javax.swing.JComponent c)
- Specified by:
getStyleableInfos
in interfaceFlatStylingSupport.StyleableUI
- Since:
- 2
-
getStyleableValue
public java.lang.Object getStyleableValue(javax.swing.JComponent c, java.lang.String key)
- Specified by:
getStyleableValue
in interfaceFlatStylingSupport.StyleableUI
- Since:
- 2.5
-
getLookupForStyling
public java.lang.invoke.MethodHandles.Lookup getLookupForStyling()
- Specified by:
getLookupForStyling
in interfaceFlatStylingSupport.StyleableLookupProvider
- Since:
- 2.5
-
update
public void update(java.awt.Graphics g, javax.swing.JComponent c)
- Overrides:
update
in classjavax.swing.plaf.ComponentUI
-
paintCurrentValue
public void paintCurrentValue(java.awt.Graphics g, java.awt.Rectangle bounds, boolean hasFocus)
- Overrides:
paintCurrentValue
in classjavax.swing.plaf.basic.BasicComboBoxUI
-
paintCurrentValueBackground
public void paintCurrentValueBackground(java.awt.Graphics g, java.awt.Rectangle bounds, boolean hasFocus)
- Overrides:
paintCurrentValueBackground
in classjavax.swing.plaf.basic.BasicComboBoxUI
-
getBackground
protected java.awt.Color getBackground(boolean enabled)
-
getForeground
protected java.awt.Color getForeground(boolean enabled)
-
getMinimumSize
public java.awt.Dimension getMinimumSize(javax.swing.JComponent c)
- Overrides:
getMinimumSize
in classjavax.swing.plaf.basic.BasicComboBoxUI
-
getDefaultSize
protected java.awt.Dimension getDefaultSize()
- Overrides:
getDefaultSize
in classjavax.swing.plaf.basic.BasicComboBoxUI
-
getDisplaySize
protected java.awt.Dimension getDisplaySize()
- Overrides:
getDisplaySize
in classjavax.swing.plaf.basic.BasicComboBoxUI
-
getSizeForComponent
protected java.awt.Dimension getSizeForComponent(java.awt.Component comp)
- Overrides:
getSizeForComponent
in classjavax.swing.plaf.basic.BasicComboBoxUI
-
isCellRenderer
private boolean isCellRenderer()
-
isCellRendererBackgroundChanged
private boolean isCellRendererBackgroundChanged()
-
isMacStyle
private boolean isMacStyle()
-
isPermanentFocusOwner
public static boolean isPermanentFocusOwner(javax.swing.JComboBox<?> comboBox)
- Since:
- 1.3
-
-