| 
 | Java Platform 1.2 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Object
  |
  +--javax.swing.plaf.ComponentUI
        |
        +--javax.swing.plaf.OptionPaneUI
              |
              +--javax.swing.plaf.basic.BasicOptionPaneUI
Provides the basic look and feel for a JOptionPane. BasicMessagePaneUI provides a means to place an icon, message and buttons into a Container. The layout will look like:
        ------------------
        | i | message    |
        | c | message    |
        | o | message    |
        | n | message    |
        ------------------
        |     buttons    |
        |________________|
 
 icon is an instance of Icon that is wraped 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 Container, message, icon, and buttons are all determined from abstract methods.
| Inner Class Summary | |
|  class | BasicOptionPaneUI.ButtonActionListenerThis inner class is marked "public" due to a compiler bug. | 
| static class | BasicOptionPaneUI.ButtonAreaLayoutButtonAreaLayout acts similiar to FlowLayout. | 
|  class | BasicOptionPaneUI.PropertyChangeHandlerThis inner class is marked "public" due to a compiler bug. | 
| Field Summary | |
| protected  boolean | hasCustomComponentsThis is set to true in validateComponent if a Component is contained in either the message or the buttons. | 
| protected  Component | initialFocusComponentComponent to receive focus when messaged with selectInitialValue. | 
| protected  JComponent | inputComponentJComponent provide for input if optionPane.getWantsInput() returns true. | 
| static int | MinimumHeight | 
| protected  Dimension | minimumSize | 
| static int | MinimumWidth | 
| protected  JOptionPane | optionPaneJOptionPane that the reciever is providing the look and feel for. | 
| protected  PropertyChangeListener | propertyChangeListener | 
| Constructor Summary | |
| BasicOptionPaneUI() | |
| Method Summary | |
| protected  void | addButtonComponents(Container container,
                    Object[] buttons,
                    int initialIndex)Creates the appropriate object to represent each of the objects in buttonsand adds it tocontainer. | 
| protected  void | addIcon(Container top)Creates and adds a JLabel representing the icon returned from getIcontotop. | 
| protected  void | addMessageComponents(Container container,
                     GridBagConstraints cons,
                     Object msg,
                     int maxll,
                     boolean internallyCreated)Creates the appropriate object to represent msgand
 places it intocontainer. | 
| protected  void | burstStringInto(Container c,
                String d,
                int maxll)Recursively creates new JLabel instances to represent d. | 
|  boolean | containsCustomComponents(JOptionPane op)Returns true if in the last call to validateComponent the message or buttons contained a subclass of Component. | 
| protected  ActionListener | createButtonActionListener(int buttonIndex) | 
| protected  Container | createButtonArea()Creates and returns a Container containin the buttons. | 
| protected  LayoutManager | createLayoutManager() | 
| protected  Container | createMessageArea()Messaged from installComponents to create a Container containing the body of the message. | 
| protected  PropertyChangeListener | createPropertyChangeListener() | 
| protected  Container | createSeparator() | 
| static ComponentUI | createUI(JComponent x)Creates a new BasicOptionPaneUI instance. | 
| protected  Object[] | getButtons()Returns the buttons to display from the JOptionPane the receiver is providing the look and feel for. | 
| protected  Icon | getIcon()Returns the icon from the JOptionPane the reciever is providing the look and feel for, or the default icon as returned from getDefaultIcon. | 
| protected  Icon | getIconForType(int messageType)Returns the icon to use for the passed in type. | 
| protected  int | getInitialValueIndex()Returns the initial index into the buttons to select. | 
| protected  int | getMaxCharactersPerLineCount()Returns the maximum number of characters to place on a line. | 
|  Dimension | getMaximumSize(JComponent c)Messages getPreferredSize. | 
| protected  Object | getMessage()Returns the message to display from the JOptionPane the receiver is providing the look and feel for. | 
|  Dimension | getMinimumOptionPaneSize()Returns the minimum size the option pane should be. | 
|  Dimension | getMinimumSize(JComponent c)Messages getPreferredSize. | 
|  Dimension | getPreferredSize(JComponent c)If c is the JOptionPane the reciever is contained in, the preferred size that is returned is the maximum of the preferred size of the LayoutManager for the JOptionPane, and getMinimumOptionPaneSize. | 
| protected  boolean | getSizeButtonsToSameWidth()Returns true, basic L&F wants all the buttons to have the same width. | 
| protected  void | installComponents() | 
| protected  void | installDefaults() | 
| protected  void | installKeyboardActions() | 
| protected  void | installListeners() | 
|  void | installUI(JComponent c)Installs the reciever as the L&F for the passed in JOptionPane | 
| 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. | 
|  void | selectInitialValue(JOptionPane op)If inputComponent is non-null, the focus is requested on that, otherwise request focus on the default value | 
| protected  void | uninstallComponents() | 
| protected  void | uninstallDefaults() | 
| protected  void | uninstallKeyboardActions() | 
| protected  void | uninstallListeners() | 
|  void | uninstallUI(JComponent c)Removes the receiver from the L&F controller of the passed in split pane. | 
| Methods inherited from class javax.swing.plaf.ComponentUI | 
| contains, 
getAccessibleChild, 
getAccessibleChildrenCount, 
paint, 
update | 
| Methods inherited from class java.lang.Object | 
| clone, 
equals, 
finalize, 
getClass, 
hashCode, 
notify, 
notifyAll, 
toString, 
wait, 
wait, 
wait | 
| Field Detail | 
public static final int MinimumWidth
public static final int MinimumHeight
protected JOptionPane optionPane
protected Dimension minimumSize
protected JComponent inputComponent
protected Component initialFocusComponent
protected boolean hasCustomComponents
protected PropertyChangeListener propertyChangeListener
| Constructor Detail | 
public BasicOptionPaneUI()
| Method Detail | 
public static ComponentUI createUI(JComponent x)
public void installUI(JComponent c)
public void uninstallUI(JComponent c)
protected void installDefaults()
protected void uninstallDefaults()
protected void installComponents()
protected void uninstallComponents()
protected LayoutManager createLayoutManager()
protected void installListeners()
protected void uninstallListeners()
protected PropertyChangeListener createPropertyChangeListener()
protected void installKeyboardActions()
protected void uninstallKeyboardActions()
public Dimension getMinimumOptionPaneSize()
public Dimension getPreferredSize(JComponent c)
getMinimumOptionPaneSize.public Dimension getMinimumSize(JComponent c)
public Dimension getMaximumSize(JComponent c)
protected Container createMessageArea()
addIcon.
protected void addMessageComponents(Container container,
                                    GridBagConstraints cons,
                                    Object msg,
                                    int maxll,
                                    boolean internallyCreated)
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 d is an Object[], this
 method will be recursively invoked for the children.
 internallyCreated is true if Objc is an instance
 of Component and was created internally by this method (this is
 used to correctly set hasCustomComponents only if !internallyCreated).protected Object getMessage()
protected void addIcon(Container top)
getIcon to top. This is messaged from
 createMessageAreaprotected Icon getIcon()
protected Icon getIconForType(int messageType)
protected int getMaxCharactersPerLineCount()
protected void burstStringInto(Container c,
                               String d,
                               int maxll)
d.
 Each JLabel instance is added to c.protected Container createSeparator()
protected Container createButtonArea()
getButtons.
protected void addButtonComponents(Container container,
                                   Object[] buttons,
                                   int initialIndex)
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.protected ActionListener createButtonActionListener(int buttonIndex)
protected Object[] getButtons()
protected boolean getSizeButtonsToSameWidth()
protected int getInitialValueIndex()
protected void resetInputValue()
public void selectInitialValue(JOptionPane op)
public boolean containsCustomComponents(JOptionPane op)
| 
 | Java Platform 1.2 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||