/* */ package NET.worlds.scape; /* */ /* */ import NET.worlds.core.IniFile; /* */ import java.awt.List; /* */ import java.util.Vector; /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ /* */ public class PropList /* */ extends List /* */ { /* */ private static final long serialVersionUID = 1L; /* */ private Object obj; /* */ private Vector properties; /* 31 */ private static String[] sortOrder = { /* 32 */ "Name", /* 33 */ "Tilesize", /* 34 */ "Transform", /* 35 */ "From", /* 36 */ "To", /* 37 */ "Extent", /* 38 */ "Bumpable", /* 39 */ "Collision Extent", /* 40 */ "Visible", /* 41 */ "Optimizable", /* 42 */ "DrawFirstOnIntersection", /* 43 */ "DrawOrderUnimportant" }; /* */ /* */ /* */ public static void setPreferences(String[] prefs) /* */ { /* 48 */ sortOrder = prefs; /* */ } /* */ /* */ static /* */ { /* 53 */ int numUserPreferences = /* 54 */ IniFile.gamma().getIniInt("PropertyOrderCount", -1); /* 55 */ if (numUserPreferences >= 0) { /* 56 */ sortOrder = new String[numUserPreferences]; /* 57 */ for (int i = 0; i < numUserPreferences; i++) /* 58 */ sortOrder[i] = /* 59 */ IniFile.gamma().getIniString("PropertyOrder" + i, ""); /* */ } /* */ } /* */ /* */ public Object getObject() { /* 64 */ return this.obj; /* */ } /* */ /* */ public void setObject(Object obj) { /* 68 */ int selected = getSelectedIndex(); /* 69 */ if (obj != this.obj) /* 70 */ selected = -1; /* 71 */ this.obj = obj; /* 72 */ int count = getItemCount(); /* 73 */ if (count != 0) /* */ { /* 75 */ removeAll(); /* */ } /* */ /* 78 */ Vector unsorted = new Vector(); /* 79 */ EnumProperties e = new EnumProperties(obj); /* 80 */ for (count = 0; e.hasMoreElements(); count++) { /* 81 */ Property p = (Property)e.nextElement(); /* 82 */ if ((!(p instanceof VectorProperty)) && ( /* 83 */ (p.getEditor() != null) || /* 84 */ (!(p.get() instanceof Properties)))) { /* 85 */ unsorted.addElement(p); /* */ } /* */ } /* */ /* 89 */ this.properties = new Vector(unsorted.size()); /* 90 */ for (int sortItem = 0; sortItem < sortOrder.length; sortItem++) /* */ { /* 92 */ String s = sortOrder[sortItem]; /* */ /* 94 */ int size = unsorted.size(); /* 95 */ for (int i = 0; i < size; i++) { /* 96 */ Property p = (Property)unsorted.elementAt(i); /* 97 */ if (p.getName().equals(s)) { /* 98 */ this.properties.addElement(p); /* 99 */ unsorted.removeElementAt(i); /* 100 */ break; /* */ } /* */ } /* */ } /* */ /* */ /* 106 */ int size = unsorted.size(); /* 107 */ for (int i = 0; i < size; i++) { /* 108 */ this.properties.addElement((Property)unsorted.elementAt(i)); /* */ } /* */ /* 111 */ size = this.properties.size(); /* 112 */ for (int i = 0; i < size; i++) { /* 113 */ Property prop = (Property)this.properties.elementAt(i); /* 114 */ addItem(prop.getName() + " (" + prop.getPropertyType() + ")" + /* 115 */ " (" + prop.get() + ")"); /* */ } /* */ /* */ /* */ /* 120 */ count = getItemCount(); /* 121 */ if ((count != 0) && (selected != -1)) { /* 122 */ if (selected >= count) /* 123 */ selected = count - 1; /* 124 */ select(selected); /* */ } /* */ } /* */ /* */ public Property getSelectedProperty() /* */ { /* 130 */ int i = getSelectedIndex(); /* 131 */ if (i != -1) /* 132 */ return (Property)this.properties.elementAt(i); /* 133 */ return null; /* */ } /* */ /* */ @Deprecated /* */ public void addItem(String s) /* */ { /* 139 */ if (s.length() > 128) { /* 140 */ s = s.substring(0, 125) + "..."; /* */ } /* 142 */ super.addItem(s); /* */ } /* */ } /* Location: C:\Program Files (x86)\Worlds Inc\WorldsPlayer - Win7\lib\worlds.jar!\NET\worlds\scape\PropList.class * Java compiler version: 6 (50.0) * JD-Core Version: 0.7.1 */