diff options
| author | Michael Koch <konqueror@gmx.de> | 2003-02-27 10:52:41 +0000 |
|---|---|---|
| committer | Michael Koch <mkoch@gcc.gnu.org> | 2003-02-27 10:52:41 +0000 |
| commit | 3894fe320778cf2a534db5ea75e52112c40d7196 (patch) | |
| tree | b0a92336e36e9838a343c9809c423fdcb9d7413e /libjava/java/beans/PropertyEditorManager.java | |
| parent | 6fc19dc9299b0fcbb9c2b2af125860488ae808d6 (diff) | |
Beans.java, [...]: Reformated to GNU style.
2003-02-27 Michael Koch <konqueror@gmx.de>
* java/beans/Beans.java,
java/beans/FeatureDescriptor.java
java/beans/PropertyEditorManager.java:
Reformated to GNU style.
From-SVN: r63501
Diffstat (limited to 'libjava/java/beans/PropertyEditorManager.java')
| -rw-r--r-- | libjava/java/beans/PropertyEditorManager.java | 265 |
1 files changed, 148 insertions, 117 deletions
diff --git a/libjava/java/beans/PropertyEditorManager.java b/libjava/java/beans/PropertyEditorManager.java index c4dc2c9b6c5..4bd4a9f7edf 100644 --- a/libjava/java/beans/PropertyEditorManager.java +++ b/libjava/java/beans/PropertyEditorManager.java @@ -41,121 +41,152 @@ package java.beans; import gnu.java.lang.ClassHelper; /** - ** PropertyEditorManager is used to find property editors - ** for various types (not necessarily Beans).<P> - ** - ** It first checks to see if the property editor is - ** already registered; if it is, that property editor is - ** used. Next it takes the type's classname and appends - ** "Editor" to it, and searches first in the class's - ** package and then in the property editor search path.<P> - ** - ** Default property editors are provided for:<P> - ** <OL> - ** <LI>boolean, byte, short, int, long, float, and double</LI> - ** <LI>java.lang.String</LI> - ** <LI>java.awt.Color</LI> - ** <LI>java.awt.Font</LI> - ** <OL> - ** - ** <STRONG>Spec Suggestion:</STRONG> Perhaps an editor for - ** Filename or something like it should be provided. As well - ** as char. - ** - ** @author John Keiser - ** @since JDK1.1 - ** @version 1.1.0, 29 Jul 1998 - **/ - -public class PropertyEditorManager { - static java.util.Hashtable editors = new java.util.Hashtable(); - static String[] editorSearchPath = {"gnu.java.beans.editors","sun.beans.editors"}; - - static { - registerEditor(java.lang.Boolean.TYPE, gnu.java.beans.editors.NativeBooleanEditor.class); - registerEditor(java.lang.Byte.TYPE, gnu.java.beans.editors.NativeByteEditor.class); - registerEditor(java.lang.Short.TYPE, gnu.java.beans.editors.NativeShortEditor.class); - registerEditor(java.lang.Integer.TYPE, gnu.java.beans.editors.NativeIntEditor.class); - registerEditor(java.lang.Long.TYPE, gnu.java.beans.editors.NativeLongEditor.class); - registerEditor(java.lang.Float.TYPE, gnu.java.beans.editors.NativeFloatEditor.class); - registerEditor(java.lang.Double.TYPE, gnu.java.beans.editors.NativeDoubleEditor.class); - registerEditor(java.lang.String.class, gnu.java.beans.editors.StringEditor.class); - registerEditor(java.awt.Color.class, gnu.java.beans.editors.ColorEditor.class); - registerEditor(java.awt.Font.class, gnu.java.beans.editors.FontEditor.class); - } - - /** Beats me why this class can be instantiated, but there - ** you have it. - **/ - public PropertyEditorManager() { } - - /** Register an editor for a class. Replaces old editor - ** if there was one registered before. - ** @param editedClass the class that the property editor - ** will edit. - ** @param editorClass the PropertyEditor class. - **/ - public static void registerEditor(Class editedClass, Class editorClass) { - editors.put(editedClass, editorClass); - } - - /** Returns a new instance of the property editor for the - ** specified class. - ** @param editedClass the class that the property editor - ** will edit. - ** @return a PropertyEditor instance that can edit the - ** specified class. - **/ - public static PropertyEditor findEditor(Class editedClass) { - try { - - Class found = (Class)editors.get(editedClass); - if(found != null) { - return (PropertyEditor)found.newInstance(); - } - - try { - found = Class.forName(editedClass.getName()+"Editor"); - registerEditor(editedClass,found); - return (PropertyEditor)found.newInstance(); - } catch(ClassNotFoundException E) { - } - - String appendName = "." + ClassHelper.getTruncatedClassName(editedClass) + "Editor"; - synchronized(editorSearchPath) { - for(int i=0;i<editorSearchPath.length;i++) { - try { - found = Class.forName(editorSearchPath[i] + appendName); - registerEditor(editedClass,found); - return (PropertyEditor)found.newInstance(); - } catch(ClassNotFoundException E) { - } - } - } - - } catch(InstantiationException E) { - } catch(IllegalAccessException E) { - } - return null; - } - - /** Get the editor search path. - ** As a minor departure from the spec, the default value - ** for the editor search path is "gnu.java.beans.editors", - ** "sun.beans.editors". - ** @return the editor search path. - **/ - public static String[] getEditorSearchPath() { - return editorSearchPath; - } - - /** Set the editor search path. - ** @param editorSearchPath the new value for the editor - ** search path. - **/ - public static void setEditorSearchPath(String[] editorSearchPath) { - synchronized(editorSearchPath) { - PropertyEditorManager.editorSearchPath = editorSearchPath; - } - } + * PropertyEditorManager is used to find property editors + * for various types (not necessarily Beans).<P> + * + * It first checks to see if the property editor is + * already registered; if it is, that property editor is + * used. Next it takes the type's classname and appends + * "Editor" to it, and searches first in the class's + * package and then in the property editor search path.<P> + * + * Default property editors are provided for:<P> + * <OL> + * <LI>boolean, byte, short, int, long, float, and double</LI> + * <LI>java.lang.String</LI> + * <LI>java.awt.Color</LI> + * <LI>java.awt.Font</LI> + * <OL> + * + * <STRONG>Spec Suggestion:</STRONG> Perhaps an editor for + * Filename or something like it should be provided. As well + * as char. + * + * @author John Keiser + * @since 1.1 + * @version 1.1.0, 29 Jul 1998 + */ + +public class PropertyEditorManager +{ + static java.util.Hashtable editors = new java.util.Hashtable(); + static String[] editorSearchPath = {"gnu.java.beans.editors","sun.beans.editors"}; + + static + { + registerEditor(java.lang.Boolean.TYPE, gnu.java.beans.editors.NativeBooleanEditor.class); + registerEditor(java.lang.Byte.TYPE, gnu.java.beans.editors.NativeByteEditor.class); + registerEditor(java.lang.Short.TYPE, gnu.java.beans.editors.NativeShortEditor.class); + registerEditor(java.lang.Integer.TYPE, gnu.java.beans.editors.NativeIntEditor.class); + registerEditor(java.lang.Long.TYPE, gnu.java.beans.editors.NativeLongEditor.class); + registerEditor(java.lang.Float.TYPE, gnu.java.beans.editors.NativeFloatEditor.class); + registerEditor(java.lang.Double.TYPE, gnu.java.beans.editors.NativeDoubleEditor.class); + registerEditor(java.lang.String.class, gnu.java.beans.editors.StringEditor.class); + registerEditor(java.awt.Color.class, gnu.java.beans.editors.ColorEditor.class); + registerEditor(java.awt.Font.class, gnu.java.beans.editors.FontEditor.class); + } + + /** + * Beats me why this class can be instantiated, but there + * you have it. + */ + public PropertyEditorManager() + { + // Do nothing here + } + + /** + * Register an editor for a class. Replaces old editor + * if there was one registered before. + * + * @param editedClass the class that the property editor + * will edit. + * @param editorClass the PropertyEditor class. + */ + public static void registerEditor(Class editedClass, Class editorClass) + { + editors.put(editedClass, editorClass); + } + + /** + * Returns a new instance of the property editor for the + * specified class. + * + * @param editedClass the class that the property editor + * will edit. + * @return a PropertyEditor instance that can edit the + * specified class. + */ + public static PropertyEditor findEditor(Class editedClass) + { + try + { + Class found = (Class)editors.get(editedClass); + if(found != null) + { + return (PropertyEditor)found.newInstance(); + } + + try + { + found = Class.forName(editedClass.getName()+"Editor"); + registerEditor(editedClass,found); + return (PropertyEditor)found.newInstance(); + } + catch(ClassNotFoundException E) + { + } + + String appendName = "." + ClassHelper.getTruncatedClassName(editedClass) + "Editor"; + synchronized(editorSearchPath) + { + for(int i=0;i<editorSearchPath.length;i++) + { + try + { + found = Class.forName(editorSearchPath[i] + appendName); + registerEditor(editedClass,found); + return (PropertyEditor)found.newInstance(); + } + catch(ClassNotFoundException E) + { + } + } + } + } + catch(InstantiationException E) + { + } + catch(IllegalAccessException E) + { + } + + return null; + } + + /** + * Get the editor search path. + * As a minor departure from the spec, the default value + * for the editor search path is "gnu.java.beans.editors", + * "sun.beans.editors". + * + * @return the editor search path. + */ + public static String[] getEditorSearchPath() + { + return editorSearchPath; + } + + /** + * Set the editor search path. + * + * @param editorSearchPath the new value for the editor search path. + */ + public static void setEditorSearchPath(String[] editorSearchPath) + { + synchronized(editorSearchPath) + { + PropertyEditorManager.editorSearchPath = editorSearchPath; + } + } } |
