mirror of
https://github.com/openjdk/jdk.git
synced 2026-05-19 18:07:49 +00:00
6977726: JColorChooser.getPreviewPanel() returnes null starting from jdk7 b105
Reviewed-by: alexp
This commit is contained in:
parent
62180d1385
commit
817fbc9a0b
@ -27,13 +27,11 @@ package javax.swing;
|
||||
|
||||
import java.awt.*;
|
||||
import java.awt.event.*;
|
||||
import java.beans.*;
|
||||
import java.io.*;
|
||||
import java.util.*;
|
||||
|
||||
import javax.swing.colorchooser.*;
|
||||
import javax.swing.plaf.ColorChooserUI;
|
||||
import javax.swing.event.*;
|
||||
import javax.accessibility.*;
|
||||
|
||||
import sun.swing.SwingUtilities2;
|
||||
@ -95,7 +93,7 @@ public class JColorChooser extends JComponent implements Accessible {
|
||||
|
||||
private ColorSelectionModel selectionModel;
|
||||
|
||||
private JComponent previewPanel;
|
||||
private JComponent previewPanel = ColorChooserComponentFactory.getPreviewPanel();
|
||||
|
||||
private AbstractColorChooserPanel[] chooserPanels = new AbstractColorChooserPanel[0];
|
||||
|
||||
|
||||
@ -142,11 +142,8 @@ public class BasicColorChooserUI extends ColorChooserUI
|
||||
if (previewPanel == null) {
|
||||
previewPanel = ColorChooserComponentFactory.getPreviewPanel();
|
||||
}
|
||||
else {
|
||||
Dimension size = new BorderLayout().minimumLayoutSize(previewPanel);
|
||||
if ((size.width == 0) && (size.height == 0)) {
|
||||
previewPanel = null;
|
||||
}
|
||||
else if (JPanel.class.equals(previewPanel.getClass()) && (0 == previewPanel.getComponentCount())) {
|
||||
previewPanel = null;
|
||||
}
|
||||
this.previewPanel = previewPanel;
|
||||
if (previewPanel != null) {
|
||||
@ -215,9 +212,10 @@ public class BasicColorChooserUI extends ColorChooserUI
|
||||
}
|
||||
|
||||
private void selectionChanged(ColorSelectionModel model) {
|
||||
if (this.previewPanel != null) {
|
||||
this.previewPanel.setForeground(model.getSelectedColor());
|
||||
this.previewPanel.repaint();
|
||||
JComponent previewPanel = this.chooser.getPreviewPanel();
|
||||
if (previewPanel != null) {
|
||||
previewPanel.setForeground(model.getSelectedColor());
|
||||
previewPanel.repaint();
|
||||
}
|
||||
AbstractColorChooserPanel[] panels = this.chooser.getChooserPanels();
|
||||
if (panels != null) {
|
||||
|
||||
8
jdk/test/javax/swing/JColorChooser/Test6977726.html
Normal file
8
jdk/test/javax/swing/JColorChooser/Test6977726.html
Normal file
@ -0,0 +1,8 @@
|
||||
<html>
|
||||
<body>
|
||||
If you don't see the preview panel, then test failed, otherwise it passed.
|
||||
|
||||
<applet width="500" height="400" code="Test6977726.class">
|
||||
</applet>
|
||||
</body>
|
||||
</html>
|
||||
42
jdk/test/javax/swing/JColorChooser/Test6977726.java
Normal file
42
jdk/test/javax/swing/JColorChooser/Test6977726.java
Normal file
@ -0,0 +1,42 @@
|
||||
/*
|
||||
* Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
* under the terms of the GNU General Public License version 2 only, as
|
||||
* published by the Free Software Foundation.
|
||||
*
|
||||
* This code is distributed in the hope that it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
* version 2 for more details (a copy is included in the LICENSE file that
|
||||
* accompanied this code).
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License version
|
||||
* 2 along with this work; if not, write to the Free Software Foundation,
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*
|
||||
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
|
||||
* or visit www.oracle.com if you need additional information or have any
|
||||
* questions.
|
||||
*/
|
||||
|
||||
/*
|
||||
* @test
|
||||
* @bug 6977726
|
||||
* @summary Checks if JColorChooser.setPreviewPanel removes the old one
|
||||
* @author Sergey Malenkov
|
||||
* @run applet/manual=yesno Test6977726.html
|
||||
*/
|
||||
|
||||
import javax.swing.JApplet;
|
||||
import javax.swing.JColorChooser;
|
||||
import javax.swing.JLabel;
|
||||
|
||||
public class Test6977726 extends JApplet {
|
||||
public void init() {
|
||||
JColorChooser chooser = new JColorChooser();
|
||||
chooser.setPreviewPanel(new JLabel("Text Preview Panel"));
|
||||
getContentPane().add(chooser);
|
||||
}
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user