Module java.desktop

Class MetalComboBoxButton

All Implemented Interfaces:
ImageObserver, ItemSelectable, MenuContainer, Serializable, Accessible, SwingConstants

public class MetalComboBoxButton extends JButton
JButton subclass to help out MetalComboBoxUI

Warning: Serialized objects of this class will not be compatible with future Swing releases. The current serialization support is appropriate for short term storage or RMI between applications running the same version of Swing. As of 1.4, support for long term storage of all JavaBeans has been added to the java.beans package. Please see XMLEncoder.

See Also:
  • Field Details

    • comboBox

      protected JComboBox<Object> comboBox
      The instance of JComboBox.
    • listBox

      protected JList<Object> listBox
      The instance of JList.
    • rendererPane

      protected CellRendererPane rendererPane
      The instance of CellRendererPane.
    • comboIcon

      protected Icon comboIcon
      The icon.
    • iconOnly

      protected boolean iconOnly
      The iconOnly value.
  • Constructor Details

    • MetalComboBoxButton

      public MetalComboBoxButton(JComboBox<Object> cb, Icon i, CellRendererPane pane, JList<Object> list)
      Constructs a new instance of MetalComboBoxButton.
      Parameters:
      cb - an instance of JComboBox
      i - an icon
      pane - an instance of CellRendererPane
      list - an instance of JList
    • MetalComboBoxButton

      public MetalComboBoxButton(JComboBox<Object> cb, Icon i, boolean onlyIcon, CellRendererPane pane, JList<Object> list)
      Constructs a new instance of MetalComboBoxButton.
      Parameters:
      cb - an instance of JComboBox
      i - an icon
      onlyIcon - if true only icon is painted
      pane - an instance of CellRendererPane
      list - an instance of JList
  • Method Details

    • getComboBox

      public final JComboBox<Object> getComboBox()
      Returns the JComboBox.
      Returns:
      the JComboBox
    • setComboBox

      public final void setComboBox(JComboBox<Object> cb)
      Sets the JComboBox.
      Parameters:
      cb - the JComboBox
    • getComboIcon

      public final Icon getComboIcon()
      Returns the icon of the JComboBox.
      Returns:
      the icon of the JComboBox
    • setComboIcon

      public final void setComboIcon(Icon i)
      Sets the icon of the JComboBox.
      Parameters:
      i - the icon of the JComboBox
    • isIconOnly

      public final boolean isIconOnly()
      Returns the isIconOnly value.
      Returns:
      the isIconOnly value
    • setIconOnly

      public final void setIconOnly(boolean isIconOnly)
      If isIconOnly is true then only icon is painted.
      Parameters:
      isIconOnly - if true then only icon is painted
    • isFocusTraversable

      public boolean isFocusTraversable()
      Description copied from class: Component
      Returns whether this Component can become the focus owner.
      Overrides:
      isFocusTraversable in class Component
      Returns:
      true if this Component is focusable; false otherwise
      See Also:
    • paintComponent

      public void paintComponent(Graphics g)
      Description copied from class: JComponent
      Calls the UI delegate's paint method, if the UI delegate is non-null. We pass the delegate a copy of the Graphics object to protect the rest of the paint code from irrevocable changes (for example, Graphics.translate).

      If you override this in a subclass you should not make permanent changes to the passed in Graphics. For example, you should not alter the clip Rectangle or modify the transform. If you need to do these operations you may find it easier to create a new Graphics from the passed in Graphics and manipulate it. Further, if you do not invoke super's implementation you must honor the opaque property, that is if this component is opaque, you must completely fill in the background in an opaque color. If you do not honor the opaque property you will likely see visual artifacts.

      The passed in Graphics object might have a transform other than the identify transform installed on it. In this case, you might get unexpected results if you cumulatively apply another transform.

      Overrides:
      paintComponent in class JComponent
      Parameters:
      g - the Graphics object to protect
      See Also: