home *** CD-ROM | disk | FTP | other *** search
- package com.sun.java.swing;
-
- import com.sun.java.swing.border.Border;
- import com.sun.java.swing.plaf.ComponentUI;
- import java.awt.Color;
- import java.awt.Font;
- import java.beans.PropertyChangeListener;
- import java.beans.PropertyChangeSupport;
- import java.lang.reflect.Method;
- import java.util.Hashtable;
-
- public class UIDefaults extends Hashtable {
- private static final Object PENDING = new String("Pending");
- private PropertyChangeSupport changeSupport;
- // $FF: synthetic field
- static Class class$com$sun$java$swing$JComponent;
-
- public UIDefaults() {
- }
-
- public UIDefaults(Object[] var1) {
- super(var1.length / 2);
-
- for(int var2 = 0; var2 < var1.length; var2 += 2) {
- super.put(var1[var2], var1[var2 + 1]);
- }
-
- }
-
- public Object get(Object var1) {
- Object var2 = super.get(var1);
- if (var2 != PENDING && !(var2 instanceof ActiveValue) && !(var2 instanceof LazyValue)) {
- return var2;
- } else {
- synchronized(this){}
-
- try {
- var2 = super.get(var1);
- if (var2 == PENDING) {
- do {
- try {
- this.wait();
- } catch (InterruptedException var26) {
- }
-
- var2 = super.get(var1);
- } while(var2 == PENDING);
-
- Object var31 = var2;
- return var31;
- }
-
- if (var2 instanceof LazyValue) {
- super.put(var1, PENDING);
- } else if (!(var2 instanceof ActiveValue)) {
- Object var3 = var2;
- return var3;
- }
- } catch (Throwable var28) {
- throw var28;
- }
-
- if (var2 instanceof LazyValue) {
- try {
- var2 = ((LazyValue)var2).createValue(this);
- } finally {
- synchronized(this){}
-
- try {
- if (var2 == null) {
- super.remove(var1);
- } else {
- super.put(var1, var2);
- }
-
- this.notify();
- } catch (Throwable var25) {
- throw var25;
- }
-
- }
- } else {
- var2 = ((ActiveValue)var2).createValue(this);
- }
-
- return var2;
- }
- }
-
- public Object put(Object var1, Object var2) {
- Object var3 = var2 == null ? super.remove(var1) : super.put(var1, var2);
- if (var1 instanceof String) {
- this.firePropertyChange((String)var1, var3, var2);
- }
-
- return var3;
- }
-
- public void putDefaults(Object[] var1) {
- for(int var2 = 0; var2 < var1.length; var2 += 2) {
- Object var3 = var1[var2 + 1];
- if (var3 == null) {
- super.remove(var1[var2]);
- } else {
- super.put(var1[var2], var3);
- }
- }
-
- this.firePropertyChange("UIDefaults", (Object)null, (Object)null);
- }
-
- public Font getFont(Object var1) {
- Object var2 = this.get(var1);
- return var2 instanceof Font ? (Font)var2 : null;
- }
-
- public Color getColor(Object var1) {
- Object var2 = this.get(var1);
- return var2 instanceof Color ? (Color)var2 : null;
- }
-
- public Icon getIcon(Object var1) {
- Object var2 = this.get(var1);
- return var2 instanceof Icon ? (Icon)var2 : null;
- }
-
- public Border getBorder(Object var1) {
- Object var2 = this.get(var1);
- return var2 instanceof Border ? (Border)var2 : null;
- }
-
- public String getString(Object var1) {
- Object var2 = this.get(var1);
- return var2 instanceof String ? (String)var2 : null;
- }
-
- public Class getUIClass(String var1) {
- Object var2 = this.get(var1);
-
- try {
- return var2 instanceof String ? Class.forName((String)var2) : null;
- } catch (ClassNotFoundException var3) {
- return null;
- }
- }
-
- protected void getUIError(String var1) {
- try {
- throw new Error();
- } catch (Throwable var3) {
- var3.printStackTrace();
- System.err.println("UIDefaults.getUI() failed: " + var1);
- }
- }
-
- public ComponentUI getUI(JComponent var1) {
- Class var2 = this.getUIClass(var1.getUIClassID());
- Object var3 = null;
- if (var2 == null) {
- this.getUIError("no ComponentUI class for: " + var1);
- } else {
- try {
- Class var4 = class$com$sun$java$swing$JComponent != null ? class$com$sun$java$swing$JComponent : (class$com$sun$java$swing$JComponent = class$("com.sun.java.swing.JComponent"));
- Method var5 = var2.getMethod("createUI", var4);
- var3 = var5.invoke((Object)null, var1);
- } catch (NoSuchMethodException var6) {
- this.getUIError("static createUI() method not found in " + var2);
- } catch (Exception var7) {
- this.getUIError("createUI() failed for " + var1 + " " + var7);
- }
- }
-
- return (ComponentUI)var3;
- }
-
- public synchronized void addPropertyChangeListener(PropertyChangeListener var1) {
- if (this.changeSupport == null) {
- this.changeSupport = new PropertyChangeSupport(this);
- }
-
- this.changeSupport.addPropertyChangeListener(var1);
- }
-
- public synchronized void removePropertyChangeListener(PropertyChangeListener var1) {
- if (this.changeSupport != null) {
- this.changeSupport.removePropertyChangeListener(var1);
- }
-
- }
-
- protected void firePropertyChange(String var1, Object var2, Object var3) {
- if (this.changeSupport != null) {
- this.changeSupport.firePropertyChange(var1, var2, var3);
- }
-
- }
-
- // $FF: synthetic method
- static Class class$(String var0) {
- try {
- return Class.forName(var0);
- } catch (ClassNotFoundException var2) {
- throw new NoClassDefFoundError(((Throwable)var2).getMessage());
- }
- }
- }
-