opends/src/guitools/org/opends/guitools/controlpanel/ui/ColorAndFontConstants.java
@@ -85,7 +85,6 @@ try { JScrollPane scroll = new JScrollPane(); Utilities.setScrollIncrementUnit(scroll); border = scroll.getBorder(); // If the border is of class MetalBorders$ScrollPaneBorder it cannot // be used. opends/src/guitools/org/opends/guitools/controlpanel/ui/StatusGenericPanel.java
@@ -723,8 +723,15 @@ null, ERR_CTRL_PANEL_REBUILDING_INDEXES_ERROR_DETAILS, progressDialog, false); progressDialog.toFront(); if (progressDialog.isModal()) { progressDialog.toFront(); } progressDialog.setVisible(true); if (!progressDialog.isModal()) { progressDialog.toFront(); } } if (errors.size() > 0) { opends/src/guitools/org/opends/guitools/controlpanel/util/Utilities.java
@@ -402,7 +402,7 @@ scroll.getViewport().setOpaque(false); scroll.getViewport().setBackground(ColorAndFontConstants.background); scroll.setBackground(ColorAndFontConstants.background); setScrollIncrementUnit(scroll); UIFactory.setScrollIncrementUnit(scroll); return scroll; } @@ -418,27 +418,11 @@ scroll.setOpaque(false); scroll.getViewport().setBackground(ColorAndFontConstants.background); scroll.setBackground(ColorAndFontConstants.background); setScrollIncrementUnit(scroll); UIFactory.setScrollIncrementUnit(scroll); return scroll; } /** * Sets the scroll increment unit for the scroll. * @param scroll the scroll to be updated. */ public static void setScrollIncrementUnit(JScrollPane scroll) { if (scroll.getVerticalScrollBar() != null) { int increment = scroll.getVerticalScrollBar().getUnitIncrement(); if (increment < 16) { scroll.getVerticalScrollBar().setUnitIncrement(16); } } } /** * Creates a button. * @param text the message to be displayed by the button. * @return the created button. opends/src/quicksetup/org/opends/quicksetup/installandupgrader/ui/WelcomePanel.java
@@ -95,14 +95,6 @@ /** * {@inheritDoc} */ protected boolean hasCheckingLabel() { return true; } /** * {@inheritDoc} */ public Object getFieldValue(FieldName fieldName) { Object v = null; if (FieldName.SERVER_TO_UPGRADE_LOCATION.equals(fieldName)) { opends/src/quicksetup/org/opends/quicksetup/installer/ui/DataReplicationPanel.java
@@ -22,7 +22,7 @@ * CDDL HEADER END * * * Copyright 2008 Sun Microsystems, Inc. * Copyright 2008-2009 Sun Microsystems, Inc. */ package org.opends.quicksetup.installer.ui; @@ -320,15 +320,6 @@ return text; } /** * {@inheritDoc} */ protected boolean hasCheckingLabel() { return true; } /** * Returns the default value for the provided field Name. * @param fieldName the field name for which we want to get the default opends/src/quicksetup/org/opends/quicksetup/installer/ui/InstallLicensePanel.java
@@ -134,6 +134,14 @@ } /** * {@inheritDoc} */ protected boolean requiresScroll() { return false; } /** * Adds the required action listeners to the fields. */ private void addActionListeners() opends/src/quicksetup/org/opends/quicksetup/installer/ui/RemoteReplicationPortsPanel.java
@@ -22,7 +22,7 @@ * CDDL HEADER END * * * Copyright 2008 Sun Microsystems, Inc. * Copyright 2008-2009 Sun Microsystems, Inc. */ package org.opends.quicksetup.installer.ui; @@ -46,7 +46,6 @@ import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.border.EmptyBorder; import javax.swing.text.JTextComponent; import org.opends.admin.ads.ServerDescriptor; @@ -163,6 +162,14 @@ /** * {@inheritDoc} */ protected boolean requiresScroll() { return false; } /** * {@inheritDoc} */ public int compare(ServerDescriptor desc1, ServerDescriptor desc2) { return desc1.getHostPort(true).compareTo(desc2.getHostPort(true)); @@ -186,11 +193,7 @@ gbc.fill = GridBagConstraints.BOTH; fieldsPanel = new JPanel(new GridBagLayout()); fieldsPanel.setOpaque(false); scroll = new JScrollPane(fieldsPanel); scroll.setBorder(new EmptyBorder(0, 0, 0, 0)); scroll.setViewportBorder(new EmptyBorder(0, 0, 0, 0)); scroll.setOpaque(false); scroll.getViewport().setOpaque(false); scroll = UIFactory.createBorderLessScrollBar(fieldsPanel); panel.add(scroll, gbc); opends/src/quicksetup/org/opends/quicksetup/installer/ui/SuffixesToReplicatePanel.java
@@ -43,7 +43,6 @@ import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.SwingConstants; import javax.swing.border.EmptyBorder; import org.opends.admin.ads.ADSContext; import org.opends.admin.ads.ReplicaDescriptor; @@ -170,11 +169,7 @@ gbc.anchor = GridBagConstraints.NORTH; gbc.weighty = 1.0; gbc.fill = GridBagConstraints.BOTH; scroll = new JScrollPane(checkBoxPanel); scroll.setBorder(new EmptyBorder(0, 0, 0, 0)); scroll.setViewportBorder(new EmptyBorder(0, 0, 0, 0)); scroll.setOpaque(false); scroll.getViewport().setOpaque(false); scroll = UIFactory.createBorderLessScrollBar(checkBoxPanel); panel.add(scroll, gbc); @@ -197,6 +192,14 @@ /** * {@inheritDoc} */ protected boolean requiresScroll() { return false; } /** * {@inheritDoc} */ protected Message getInstructions() { return INFO_SUFFIXES_TO_REPLICATE_PANEL_INSTRUCTIONS.get(); opends/src/quicksetup/org/opends/quicksetup/ui/CurrentStepPanel.java
@@ -22,7 +22,7 @@ * CDDL HEADER END * * * Copyright 2006-2008 Sun Microsystems, Inc. * Copyright 2006-2009 Sun Microsystems, Inc. */ package org.opends.quicksetup.ui; @@ -239,16 +239,14 @@ } /** * This method sets up an icon on the bottom left side of the dialog. * Generally this method is called with an animated gif that is passed to * display progress. * @param iconType the icon type to be set. * This method displays a working progress icon in the panel. * @param visible whether the icon must be displayed or not. */ public void setIcon(UIFactory.IconType iconType) public void setCheckingVisible(boolean visible) { for (WizardStep s : hmPanels.keySet()) { getPanel(s).setIcon(iconType); getPanel(s).setCheckingVisible(visible); } } opends/src/quicksetup/org/opends/quicksetup/ui/ProgressPanel.java
@@ -22,7 +22,7 @@ * CDDL HEADER END * * * Copyright 2006-2008 Sun Microsystems, Inc. * Copyright 2006-2009 Sun Microsystems, Inc. */ package org.opends.quicksetup.ui; @@ -182,6 +182,14 @@ /** * {@inheritDoc} */ protected boolean requiresScroll() { return false; } /** * {@inheritDoc} */ public void endDisplay() { if (lastFocusComponent != null) opends/src/quicksetup/org/opends/quicksetup/ui/QuickSetupDialog.java
@@ -22,12 +22,11 @@ * CDDL HEADER END * * * Copyright 2006-2008 Sun Microsystems, Inc. * Copyright 2006-2009 Sun Microsystems, Inc. */ package org.opends.quicksetup.ui; import java.awt.event.ComponentListener; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import java.util.HashSet; @@ -147,17 +146,6 @@ frame.pack(); Utilities.centerOnScreen(frame); setFocusOnButton(ButtonName.NEXT); int minWidth = (int) frame.getPreferredSize().getWidth(); int minHeight = (int) frame.getPreferredSize().getHeight(); ComponentListener[] listeners = frame.getComponentListeners(); for (ComponentListener listener : listeners) { if (listener instanceof MinimumSizeComponentListener) { frame.removeComponentListener(listener); } } frame.addComponentListener(new MinimumSizeComponentListener(frame, minWidth, minHeight)); } /** @@ -536,7 +524,6 @@ private void displayWorkingProgressImage(boolean display) { getCurrentStepPanel().setIcon(display ? UIFactory.IconType.WAIT : UIFactory.IconType.NO_ICON); getCurrentStepPanel().setCheckingVisible(display); } } opends/src/quicksetup/org/opends/quicksetup/ui/QuickSetupStepPanel.java
@@ -27,6 +27,7 @@ package org.opends.quicksetup.ui; import java.awt.CardLayout; import java.awt.Component; import java.awt.GridBagConstraints; import java.awt.GridBagLayout; @@ -62,14 +63,19 @@ public abstract class QuickSetupStepPanel extends QuickSetupPanel implements HyperlinkListener { private JPanel inputContainer; private Component inputPanel; private JLabel checkingLabel; private HashSet<ButtonActionListener> buttonListeners = new HashSet<ButtonActionListener>(); private ProgressMessageFormatter formatter; private static final String INPUT_PANEL = "input"; private static final String CHECKING_PANEL = "checking"; private boolean isCheckingVisible; /* We can use a HashMap (not multi-thread safe) because all the calls to this object are done in the event-thread. */ @@ -185,7 +191,7 @@ /** * Returns the minimum width of the panel. This is used to calculate the * minimum widht of the dialog. * minimum width of the dialog. * @return the minimum width of the panel. */ public int getMinimumWidth() @@ -233,15 +239,34 @@ } /** * This method sets up an icon on the bottom left side of the dialog. * Generally this method is called with an animated gif that is passed to * display progress. * @param iconType the icon type to be set. * This method displays a working progress icon in the panel. * @param visible whether the icon must be displayed or not. */ public void setIcon(UIFactory.IconType iconType) public void setCheckingVisible(boolean visible) { checkingLabel.setIcon(UIFactory.getImageIcon(iconType)); checkingLabel.setText(String.valueOf(getTextForIcon(iconType))); if (visible != isCheckingVisible && inputContainer != null) { CardLayout cl = (CardLayout) inputContainer.getLayout(); if (visible) { cl.show(inputContainer, CHECKING_PANEL); } else { cl.show(inputContainer, INPUT_PANEL); } isCheckingVisible = visible; } } /** * Tells whether a working progress icon is being displayed in the panel. * @return <CODE>true</CODE> if a working progress icon is being displayed in * the panel and <CODE>false</CODE> otherwise. */ public boolean isCheckingVisible() { return isCheckingVisible; } /** @@ -280,7 +305,7 @@ * Creates the layout of the panel. * */ private void createLayout() protected void createLayout() { setLayout(new GridBagLayout()); @@ -310,7 +335,7 @@ { if (somethingAdded) { gbc.insets.top = UIFactory.TOP_INSET_INSTRUCTIONS_SUBPANEL; gbc.insets.top = UIFactory.TOP_INSET_PRIMARY_FIELD; } else { gbc.insets.top = 0; @@ -319,7 +344,7 @@ gbc.weightx = 1.0; gbc.weighty = 0.0; gbc.gridwidth = GridBagConstraints.REMAINDER; gbc.fill = GridBagConstraints.HORIZONTAL; gbc.fill = GridBagConstraints.BOTH; gbc.anchor = GridBagConstraints.NORTHWEST; add(instructionsPanel, gbc); somethingAdded = true; @@ -327,6 +352,26 @@ if (inputPanel != null) { inputContainer = new JPanel(new CardLayout()); if (requiresScroll()) { inputContainer.add(UIFactory.createBorderLessScrollBar(inputPanel), INPUT_PANEL); } else { inputContainer.add(inputPanel, INPUT_PANEL); } JPanel checkingPanel = UIFactory.makeJPanel(); checkingPanel.setLayout(new GridBagLayout()); checkingPanel.add(UIFactory.makeJLabel(UIFactory.IconType.WAIT, INFO_GENERAL_CHECKING_DATA.get(), UIFactory.TextStyle.PRIMARY_FIELD_VALID), new GridBagConstraints()); inputContainer.add(checkingPanel, CHECKING_PANEL); if (somethingAdded) { gbc.insets.top = UIFactory.TOP_INSET_INPUT_SUBPANEL; @@ -340,25 +385,13 @@ gbc.fill = GridBagConstraints.BOTH; gbc.anchor = GridBagConstraints.NORTHWEST; gbc.insets.left = 0; add(inputPanel, gbc); add(inputContainer, gbc); somethingAdded = true; } else } else { addVerticalGlue(this); } checkingLabel = UIFactory.makeJLabel(UIFactory.IconType.NO_ICON, Message.EMPTY, UIFactory.TextStyle.PROGRESS); if (hasCheckingLabel()) { gbc.insets.top = UIFactory.TOP_INSET_SECONDARY_FIELD; gbc.insets.bottom = 0; gbc.insets.left = 0; gbc.weighty = 0.0; gbc.anchor = GridBagConstraints.NORTHWEST; gbc.fill = GridBagConstraints.HORIZONTAL; add(checkingLabel, gbc); } } /** @@ -396,15 +429,6 @@ } /** * Tells whether we must add a label at the bottom left of the panel * containing an icon that will show that we are doing some checkings. * @return true if the checking label must be added and false otherwise. */ protected boolean hasCheckingLabel() { return false; } /** * This method is called by the URLWorker when it has finished its task. * @param worker the URLWorker that finished its task. */ @@ -414,6 +438,16 @@ } /** * Tells whether the input panel should have a scroll or not. * @return <CODE>true</CODE> if the input panel should have a scroll and * <CODE>false</CODE> otherwise. */ protected boolean requiresScroll() { return true; } /** * Returns <CODE>true</CODE> if this is a WebStart based installer and * <CODE>false</CODE> otherwise. * @return <CODE>true</CODE> if this is a WebStart based installer and opends/src/quicksetup/org/opends/quicksetup/ui/UIFactory.java
@@ -1226,6 +1226,42 @@ } /** * Returns a JScrollPane that contains the provided component. The scroll * pane will not contain any border. * @param comp the component contained in the scroll pane. * @return a JScrollPane that contains the provided component. The scroll * pane will not contain any border. */ public static JScrollPane createBorderLessScrollBar(Component comp) { JScrollPane scroll = new JScrollPane(comp); scroll.setBorder(new EmptyBorder(0, 0, 0, 0)); scroll.setViewportBorder(new EmptyBorder(0, 0, 0, 0)); scroll.setOpaque(false); scroll.getViewport().setOpaque(false); scroll.getViewport().setBackground(DEFAULT_BACKGROUND); scroll.setBackground(DEFAULT_BACKGROUND); setScrollIncrementUnit(scroll); return scroll; } /** * Sets the scroll increment unit for the scroll. * @param scroll the scroll to be updated. */ public static void setScrollIncrementUnit(JScrollPane scroll) { if (scroll.getVerticalScrollBar() != null) { int increment = scroll.getVerticalScrollBar().getUnitIncrement(); if (increment < 16) { scroll.getVerticalScrollBar().setUnitIncrement(16); } } } /** * Return empty insets. * @return empty insets. */