--- /home/cpdev/src/classpath/javax/swing/plaf/basic/BasicOptionPaneUI.java	2005-07-15 17:32:40.000000000 +0000
+++ javax/swing/plaf/basic/BasicOptionPaneUI.java	2005-06-30 05:35:18.000000000 +0000
@@ -56,7 +56,6 @@
 import java.beans.PropertyChangeListener;
 import java.beans.PropertyVetoException;
 
-import javax.swing.BorderFactory;
 import javax.swing.Box;
 import javax.swing.BoxLayout;
 import javax.swing.Icon;
@@ -85,12 +84,8 @@
   /**
    * This is a helper class that listens to the buttons located at the bottom
    * of the JOptionPane.
-   *
-   * @specnote Apparently this class was intended to be protected,
-   *           but was made public by a compiler bug and is now
-   *           public for compatibility.
    */
-  public class ButtonActionListener implements ActionListener
+  protected class ButtonActionListener implements ActionListener
   {
     /** The index of the option this button represents. */
     protected int buttonIndex;
@@ -156,12 +151,8 @@
    * This helper layout manager is responsible for the layout of the button
    * area. The button area is the panel that holds the buttons which
    * represent the options.
-   *
-   * @specnote Apparently this class was intended to be protected,
-   *           but was made public by a compiler bug and is now
-   *           public for compatibility.
    */
-  public static class ButtonAreaLayout implements LayoutManager
+  protected class ButtonAreaLayout implements LayoutManager
   {
     /** Whether this layout will center the buttons. */
     protected boolean centersChildren = true;
@@ -248,7 +239,7 @@
       for (int i = 0; i < buttonList.length; i++)
         {
 	  Dimension dims = buttonList[i].getPreferredSize();
-	  if (syncAllWidths)
+	  if (getSizeButtonsToSameWidth())
 	    {
 	      buttonList[i].setBounds(x, 0, widthOfWidestButton, dims.height);
 	      x += widthOfWidestButton + getPadding();
@@ -346,6 +337,7 @@
     public void setCentersChildren(boolean newValue)
     {
       centersChildren = newValue;
+      optionPane.invalidate();
     }
 
     /**
@@ -356,6 +348,7 @@
     public void setPadding(int newPadding)
     {
       padding = newPadding;
+      optionPane.invalidate();
     }
 
     /**
@@ -366,15 +359,12 @@
     public void setSyncAllWidths(boolean newValue)
     {
       syncAllWidths = newValue;
+      optionPane.invalidate();
     }
   }
 
   /**
    * This helper class handles property change events from the JOptionPane.
-   *
-   * @specnote Apparently this class was intended to be protected,
-   *           but was made public by a compiler bug and is now
-   *           public for compatibility.
    */
   public class PropertyChangeHandler implements PropertyChangeListener
   {
@@ -462,15 +452,19 @@
   private transient Border buttonBorder;
 
   /** The string used to describe OK buttons. */
+  // FIXME: wrong name for a constant.
   private static final String OK_STRING = "OK";
 
   /** The string used to describe Yes buttons. */
+  // FIXME: wrong name for a constant.
   private static final String YES_STRING = "Yes";
 
   /** The string used to describe No buttons. */
+  // FIXME: wrong name for a constant.
   private static final String NO_STRING = "No";
 
   /** The string used to describe Cancel buttons. */
+  // FIXME: wrong name for a constant.
   private static final String CANCEL_STRING = "Cancel";
 
   /** The container for the message area.
@@ -860,7 +854,6 @@
     addIcon(messageArea);
 
     JPanel rightSide = new JPanel();
-    rightSide.setBorder(BorderFactory.createEmptyBorder(0, 11, 17, 0));
     rightSide.setLayout(new GridBagLayout());
     GridBagConstraints con = createConstraints();
 
@@ -871,16 +864,19 @@
       {
 	Object[] selection = optionPane.getSelectionValues();
 
+//	if (selection == null)
+//	  inputComponent = new JTextField();
+//	else if (selection.length < 20)
+//	  inputComponent = new JComboBox(selection);
+	// FIXME: Uncomment when the widgets are done.
 	if (selection == null)
-          inputComponent = new JTextField(15);
-	else if (selection.length < 20)
-          inputComponent = new JComboBox(selection);
+	  inputComponent = null;
 	else
 	  inputComponent = new JList(selection);
 	if (inputComponent != null)
 	  {
 	    addMessageComponents(rightSide, con, inputComponent,
-                                 getMaxCharactersPerLineCount(), false);
+	                         getMaxCharactersPerLineCount(), true);
 	    resetSelectedValue();
 	    selectInitialValue(optionPane);
 	  }
@@ -910,7 +906,7 @@
    */
   protected Container createSeparator()
   {
-    return (Container) Box.createVerticalStrut(17);
+    return null;
   }
 
   /**
@@ -1127,7 +1123,6 @@
 	optionPane.add(button);
       }
 
-    optionPane.setBorder(BorderFactory.createEmptyBorder(12, 12, 11, 11));
     optionPane.invalidate();
   }
 
@@ -1142,7 +1137,6 @@
     optionPane.setBackground(defaults.getColor("OptionPane.background"));
     optionPane.setForeground(defaults.getColor("OptionPane.foreground"));
     optionPane.setBorder(defaults.getBorder("OptionPane.border"));
-    optionPane.setOpaque(true);
 
     messageBorder = defaults.getBorder("OptionPane.messageAreaBorder");
     messageForeground = defaults.getColor("OptionPane.messageForeground");
