1 /*
2 * Copyright (c) 2002, 2013, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation. Oracle designates this
8 * particular file as subject to the "Classpath" exception as provided
9 * by Oracle in the LICENSE file that accompanied this code.
10 *
11 * This code is distributed in the hope that it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 * version 2 for more details (a copy is included in the LICENSE file that
15 * accompanied this code).
16 *
17 * You should have received a copy of the GNU General Public License version
18 * 2 along with this work; if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 *
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
1069 * classes in gtk.
1070 */
1071 static class GTKLazyValue implements UIDefaults.LazyValue {
1072 /**
1073 * Name of the class to create.
1074 */
1075 private String className;
1076 private String methodName;
1077
1078 GTKLazyValue(String name) {
1079 this(name, null);
1080 }
1081
1082 GTKLazyValue(String name, String methodName) {
1083 this.className = name;
1084 this.methodName = methodName;
1085 }
1086
1087 public Object createValue(UIDefaults table) {
1088 try {
1089 Class c = Class.forName(className, true,Thread.currentThread().
1090 getContextClassLoader());
1091
1092 if (methodName == null) {
1093 return c.newInstance();
1094 }
1095 Method m = c.getMethod(methodName, (Class[])null);
1096
1097 return m.invoke(c, (Object[])null);
1098 } catch (ClassNotFoundException cnfe) {
1099 } catch (IllegalAccessException iae) {
1100 } catch (InvocationTargetException ite) {
1101 } catch (NoSuchMethodException nsme) {
1102 } catch (InstantiationException ie) {
1103 }
1104 return null;
1105 }
1106 }
1107
1108 static {
1109 CLASS_SPECIFIC_MAP = new HashMap<String,String>();
1110 CLASS_SPECIFIC_MAP.put("Slider.thumbHeight", "slider-width");
1111 CLASS_SPECIFIC_MAP.put("Slider.trackBorder", "trough-border");
1112 CLASS_SPECIFIC_MAP.put("SplitPane.size", "handle-size");
1113 CLASS_SPECIFIC_MAP.put("Tree.expanderSize", "expander-size");
1114 CLASS_SPECIFIC_MAP.put("ScrollBar.thumbHeight", "slider-width");
1115 CLASS_SPECIFIC_MAP.put("ScrollBar.width", "slider-width");
|
1 /*
2 * Copyright (c) 2002, 2014, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation. Oracle designates this
8 * particular file as subject to the "Classpath" exception as provided
9 * by Oracle in the LICENSE file that accompanied this code.
10 *
11 * This code is distributed in the hope that it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 * version 2 for more details (a copy is included in the LICENSE file that
15 * accompanied this code).
16 *
17 * You should have received a copy of the GNU General Public License version
18 * 2 along with this work; if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 *
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
1069 * classes in gtk.
1070 */
1071 static class GTKLazyValue implements UIDefaults.LazyValue {
1072 /**
1073 * Name of the class to create.
1074 */
1075 private String className;
1076 private String methodName;
1077
1078 GTKLazyValue(String name) {
1079 this(name, null);
1080 }
1081
1082 GTKLazyValue(String name, String methodName) {
1083 this.className = name;
1084 this.methodName = methodName;
1085 }
1086
1087 public Object createValue(UIDefaults table) {
1088 try {
1089 Class<?> c = Class.forName(className, true,Thread.currentThread().
1090 getContextClassLoader());
1091
1092 if (methodName == null) {
1093 return c.newInstance();
1094 }
1095 Method m = c.getMethod(methodName, (Class<?>[])null);
1096
1097 return m.invoke(c, (Object[])null);
1098 } catch (ClassNotFoundException cnfe) {
1099 } catch (IllegalAccessException iae) {
1100 } catch (InvocationTargetException ite) {
1101 } catch (NoSuchMethodException nsme) {
1102 } catch (InstantiationException ie) {
1103 }
1104 return null;
1105 }
1106 }
1107
1108 static {
1109 CLASS_SPECIFIC_MAP = new HashMap<String,String>();
1110 CLASS_SPECIFIC_MAP.put("Slider.thumbHeight", "slider-width");
1111 CLASS_SPECIFIC_MAP.put("Slider.trackBorder", "trough-border");
1112 CLASS_SPECIFIC_MAP.put("SplitPane.size", "handle-size");
1113 CLASS_SPECIFIC_MAP.put("Tree.expanderSize", "expander-size");
1114 CLASS_SPECIFIC_MAP.put("ScrollBar.thumbHeight", "slider-width");
1115 CLASS_SPECIFIC_MAP.put("ScrollBar.width", "slider-width");
|