6984643: Unable to instantiate JFileChooser with a minimal BasicL&F descendant installed
Reviewed-by: alexp
This commit is contained in:
parent
571e75371e
commit
6445f22ebc
@ -141,6 +141,22 @@ public class BasicFileChooserUI extends FileChooserUI {
|
||||
private JPanel accessoryPanel = null;
|
||||
private Handler handler;
|
||||
|
||||
/**
|
||||
* Creates a {@code BasicFileChooserUI} implementation
|
||||
* for the specified component. By default
|
||||
* the {@code BasicLookAndFeel} class uses
|
||||
* {@code createUI} methods of all basic UIs classes
|
||||
* to instantiate UIs.
|
||||
*
|
||||
* @param c the {@code JFileChooser} which needs a UI
|
||||
* @return the {@code BasicFileChooserUI} object
|
||||
*
|
||||
* @see UIDefaults#getUI(JComponent)
|
||||
* @since 1.7
|
||||
*/
|
||||
public static ComponentUI createUI(JComponent c) {
|
||||
return new BasicFileChooserUI((JFileChooser) c);
|
||||
}
|
||||
|
||||
public BasicFileChooserUI(JFileChooser b) {
|
||||
}
|
||||
|
@ -269,6 +269,7 @@ public abstract class BasicLookAndFeel extends LookAndFeel implements Serializab
|
||||
"InternalFrameUI", basicPackageName + "BasicInternalFrameUI",
|
||||
"DesktopPaneUI", basicPackageName + "BasicDesktopPaneUI",
|
||||
"DesktopIconUI", basicPackageName + "BasicDesktopIconUI",
|
||||
"FileChooserUI", basicPackageName + "BasicFileChooserUI",
|
||||
"OptionPaneUI", basicPackageName + "BasicOptionPaneUI",
|
||||
"PanelUI", basicPackageName + "BasicPanelUI",
|
||||
"ViewportUI", basicPackageName + "BasicViewportUI",
|
||||
|
64
jdk/test/javax/swing/plaf/basic/Test6984643.java
Normal file
64
jdk/test/javax/swing/plaf/basic/Test6984643.java
Normal file
@ -0,0 +1,64 @@
|
||||
/*
|
||||
* 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 6984643
|
||||
* @summary Unable to instantiate JFileChooser with a minimal BasicL&F descendant installed
|
||||
* @author Pavel Porvatov
|
||||
*/
|
||||
|
||||
import javax.swing.*;
|
||||
import javax.swing.plaf.basic.BasicLookAndFeel;
|
||||
|
||||
public class Test6984643 {
|
||||
public static void main(String[] args) throws Exception {
|
||||
UIManager.setLookAndFeel(new BasicLookAndFeel() {
|
||||
public String getName() {
|
||||
return "A name";
|
||||
}
|
||||
|
||||
public String getID() {
|
||||
return "An id";
|
||||
}
|
||||
|
||||
public String getDescription() {
|
||||
return "A description";
|
||||
}
|
||||
|
||||
public boolean isNativeLookAndFeel() {
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean isSupportedLookAndFeel() {
|
||||
return true;
|
||||
}
|
||||
});
|
||||
|
||||
SwingUtilities.invokeLater(new Runnable() {
|
||||
public void run() {
|
||||
new JFileChooser();
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user