Package Summary  Overview Summary

class:BasicOptionPaneUI [NONE]

Direct Known Subclasses:
SynthOptionPaneUI

public class BasicOptionPaneUI
extends OptionPaneUI
Provides the basic look and feel for a JOptionPane. BasicMessagePaneUI provides a means to place an icon, message and buttons into a Container. Generally, the layout will look like:
        ------------------
        | i | message    |
        | c | message    |
        | o | message    |
        | n | message    |
        ------------------
        |     buttons    |
        |________________|
 
icon is an instance of Icon that is wrapped inside a JLabel. The message is an opaque object and is tested for the following: if the message is a Component it is added to the Container, if it is an Icon it is wrapped inside a JLabel and added to the Container otherwise it is wrapped inside a JLabel.

The above layout is used when the option pane's ComponentOrientation property is horizontal, left-to-right. The layout will be adjusted appropriately for other orientations.

The Container, message, icon, and buttons are all determined from abstract methods.

field:MinimumWidth [NONE]

  • MinimumWidth

    public static final  int MinimumWidth
    The mininum width of JOptionPane.
    See Also:
    Constant Field Values
  • field:MinimumHeight [NONE]

    MinimumHeight

    public static final  int MinimumHeight
    The mininum height of JOptionPane.
    See Also:
    Constant Field Values

    field:optionPane [NONE]

    optionPane

    protected JOptionPane optionPane
    JOptionPane that the receiver is providing the look and feel for.

    field:minimumSize [NONE]

    minimumSize

    protected Dimension minimumSize
    The size of JOptionPane.

    field:inputComponent [NONE]

    inputComponent

    protected JComponent inputComponent
    JComponent provide for input if optionPane.getWantsInput() returns true.

    field:initialFocusComponent [NONE]

    initialFocusComponent

    protected Component initialFocusComponent
    Component to receive focus when messaged with selectInitialValue.

    field:hasCustomComponents [NONE]

    hasCustomComponents

    protected boolean hasCustomComponents
    This is set to true in validateComponent if a Component is contained in either the message or the buttons.

    field:propertyChangeListener [NONE]

    propertyChangeListener

    protected PropertyChangeListener propertyChangeListener
    The instance of PropertyChangeListener.

    constructor:BasicOptionPaneUI() [NONE]

    method:createUI(javax.swing.JComponent) [NONE]

  • createUI

    public static  ComponentUI createUI?(JComponent x)
    Creates a new BasicOptionPaneUI instance.
    Parameters:
    x - the component
    Returns:
    a new BasicOptionPaneUI instance
  • method:installUI(javax.swing.JComponent) [NONE]

    installUI

    public void installUI?(JComponent c)
    Installs the receiver as the L&F for the passed in JOptionPane.
    Overrides:
    installUI in class ComponentUI
    Parameters:
    c - the component where this UI delegate is being installed
    See Also:
    ComponentUI.uninstallUI(javax.swing.JComponent), JComponent.setUI(javax.swing.plaf.ComponentUI), JComponent.updateUI()

    method:uninstallUI(javax.swing.JComponent) [NONE]

    uninstallUI

    public void uninstallUI?(JComponent c)
    Removes the receiver from the L&F controller of the passed in split pane.
    Overrides:
    uninstallUI in class ComponentUI
    Parameters:
    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
    See Also:
    ComponentUI.installUI(javax.swing.JComponent), JComponent.updateUI()

    method:installDefaults() [NONE]

    installDefaults

    protected void installDefaults()
    Installs default properties.

    method:uninstallDefaults() [NONE]

    uninstallDefaults

    protected void uninstallDefaults()
    Uninstalls default properties.

    method:installComponents() [NONE]

    installComponents

    protected void installComponents()
    Registers components.

    method:uninstallComponents() [NONE]

    uninstallComponents

    protected void uninstallComponents()
    Unregisters components.

    method:createLayoutManager() [NONE]

    createLayoutManager

    protected LayoutManager createLayoutManager()
    Returns a layout manager.
    Returns:
    a layout manager

    method:installListeners() [NONE]

    installListeners

    protected void installListeners()
    Registers listeners.

    method:uninstallListeners() [NONE]

    uninstallListeners

    protected void uninstallListeners()
    Unregisters listeners.

    method:createPropertyChangeListener() [NONE]

    createPropertyChangeListener

    protected PropertyChangeListener createPropertyChangeListener()
    Returns an instance of PropertyChangeListener.
    Returns:
    an instance of PropertyChangeListener

    method:installKeyboardActions() [NONE]

    installKeyboardActions

    protected void installKeyboardActions()
    Registers keyboard actions.

    method:uninstallKeyboardActions() [NONE]

    uninstallKeyboardActions

    protected void uninstallKeyboardActions()
    Unregisters keyboard actions.

    method:getMinimumOptionPaneSize() [NONE]

    getMinimumOptionPaneSize

    public Dimension getMinimumOptionPaneSize()
    Returns the minimum size the option pane should be. Primarily provided for subclassers wishing to offer a different minimum size.
    Returns:
    the minimum size of the option pane

    method:getPreferredSize(javax.swing.JComponent) [NONE]

    getPreferredSize

    public Dimension getPreferredSize?(JComponent c)
    If c is the JOptionPane the receiver is contained in, the preferred size that is returned is the maximum of the preferred size of the LayoutManager for the JOptionPane, and getMinimumOptionPaneSize.
    Overrides:
    getPreferredSize in class ComponentUI
    Parameters:
    c - the component whose preferred size is being queried; this argument is often ignored, but might be used if the UI object is stateless and shared by multiple components
    Returns:
    a Dimension object containing given component's preferred size appropriate for the look and feel
    See Also:
    JComponent.getPreferredSize(), LayoutManager.preferredLayoutSize(java.awt.Container)

    method:createMessageArea() [NONE]

    createMessageArea

    protected Container createMessageArea()
    Messaged from installComponents to create a Container containing the body of the message. The icon is the created by calling addIcon.
    Returns:
    a instance of Container

    method:addMessageComponents(java.awt.Container,java.awt.GridBagConstraints,java.lang.Object,int,boolean) [NONE]

    addMessageComponents

    protected void addMessageComponents?(Container container, GridBagConstraints cons, Object msg, int maxll, boolean internallyCreated)
    Creates the appropriate object to represent msg and places it into container. If msg is an instance of Component, it is added directly; if it is an Icon, a JLabel is created to represent it; otherwise, a JLabel is created for the string. If msg is an Object[], this method will be recursively invoked for the children. internallyCreated is true if msg is an instance of Component and was created internally by this method (this is used to correctly set hasCustomComponents only if internallyCreated is false).
    Parameters:
    container - a container
    cons - an instance of GridBagConstraints
    msg - a message
    maxll - a maximum length
    internallyCreated - true if the component was internally created

    method:getMessage() [NONE]

    getMessage

    protected Object getMessage()
    Returns the message to display from the JOptionPane the receiver is providing the look and feel for.
    Returns:
    the message to display

    method:addIcon(java.awt.Container) [NONE]

    addIcon

    protected void addIcon?(Container top)
    Creates and adds a JLabel representing the icon returned from getIcon to top. This is messaged from createMessageArea.
    Parameters:
    top - a container

    method:getIcon() [NONE]

    getIcon

    protected Icon getIcon()
    Returns the icon from the JOptionPane the receiver is providing the look and feel for, or the default icon as returned from getDefaultIcon.
    Returns:
    the icon

    method:getIconForType(int) [NONE]

    getIconForType

    protected Icon getIconForType?(int messageType)
    Returns the icon to use for the passed in type.
    Parameters:
    messageType - a type of message
    Returns:
    the icon to use for the passed in type

    method:getMaxCharactersPerLineCount() [NONE]

    getMaxCharactersPerLineCount

    protected int getMaxCharactersPerLineCount()
    Returns the maximum number of characters to place on a line.
    Returns:
    the maximum number of characters to place on a line

    method:burstStringInto(java.awt.Container,java.lang.String,int) [NONE]

    burstStringInto

    protected void burstStringInto?(Container c, String d, int maxll)
    Recursively creates new JLabel instances to represent d. Each JLabel instance is added to c.
    Parameters:
    c - a container
    d - a text
    maxll - a maximum length of a text

    method:createSeparator() [NONE]

    createSeparator

    protected Container createSeparator()
    Returns a separator.
    Returns:
    a separator

    method:createButtonArea() [NONE]

    createButtonArea

    protected Container createButtonArea()
    Creates and returns a Container containing the buttons. The buttons are created by calling getButtons.
    Returns:
    a Container containing the buttons

    method:addButtonComponents(java.awt.Container,java.lang.Object[],int) [NONE]

    addButtonComponents

    protected void addButtonComponents?(Container container, Object[] buttons, int initialIndex)
    Creates the appropriate object to represent each of the objects in buttons and adds it to container. This differs from addMessageComponents in that it will recurse on buttons and that if button is not a Component it will create an instance of JButton.
    Parameters:
    container - a container
    buttons - an array of buttons
    initialIndex - an initial index

    method:createButtonActionListener(int) [NONE]

    createButtonActionListener

    protected ActionListener createButtonActionListener?(int buttonIndex)
    Constructs a new instance of a ButtonActionListener.
    Parameters:
    buttonIndex - an index of the button
    Returns:
    a new instance of a ButtonActionListener

    method:getButtons() [NONE]

    getButtons

    protected Object[] getButtons()
    Returns the buttons to display from the JOptionPane the receiver is providing the look and feel for. If the JOptionPane has options set, they will be provided, otherwise if the optionType is YES_NO_OPTION, yesNoOptions is returned, if the type is YES_NO_CANCEL_OPTIONyesNoCancelOptions is returned, otherwise defaultButtons are returned.
    Returns:
    the buttons to display from the JOptionPane

    method:getSizeButtonsToSameWidth() [NONE]

    getSizeButtonsToSameWidth

    protected boolean getSizeButtonsToSameWidth()
    Returns true, basic L&F wants all the buttons to have the same width.
    Returns:
    true if all the buttons should have the same width

    method:getInitialValueIndex() [NONE]

    getInitialValueIndex

    protected int getInitialValueIndex()
    Returns the initial index into the buttons to select. The index is calculated from the initial value from the JOptionPane and options of the JOptionPane or 0.
    Returns:
    the initial index into the buttons to select

    method:resetInputValue() [NONE]

    resetInputValue

    protected void resetInputValue()
    Sets the input value in the option pane the receiver is providing the look and feel for based on the value in the inputComponent.

    method:selectInitialValue(javax.swing.JOptionPane) [NONE]

    selectInitialValue

    public void selectInitialValue?(JOptionPane op)
    If inputComponent is non-null, the focus is requested on that, otherwise request focus on the default value
    Specified by:
    selectInitialValue in class OptionPaneUI
    Parameters:
    op - a JOptionPane

    method:containsCustomComponents(javax.swing.JOptionPane) [NONE]

    containsCustomComponents

    public boolean containsCustomComponents?(JOptionPane op)
    Returns true if in the last call to validateComponent the message or buttons contained a subclass of Component.
    Specified by:
    containsCustomComponents in class OptionPaneUI
    Parameters:
    op - a JOptionPane
    Returns:
    true if the given JOptionPane contains user created Components

    © 2020 Oracle Corporation and/or its affiliates