public Object get(Object name_, boolean ignoretraps) {
if (name_ instanceof Number) return get(((Number)name_).intValue());
+ if (!(name_ instanceof String)) return null;
String name = (String)name_;
if (name.equals("")) return null;
SpecialBoxProperty gph = (SpecialBoxProperty)SpecialBoxProperty.specialBoxProperties.get(name);
if (gph != null) return gph.get(this);
- Object ret = super.get((Object)name);
+ Object ret = super.get(name);
if (name.startsWith("$") && ret == null)
if (Log.on) Log.logJS(this, "WARNING: attempt to access " + name + ", but no child with id=\"" + name.substring(1) + "\" found");
return ret;
public void put(Object name, Object value, boolean ignoretraps) { put(name, value, ignoretraps, null); }
public void put(Object name_, Object value, boolean ignoretraps, RootProxy rp) {
if (name_ instanceof Number) { put(((Number)name_).intValue(), value); return; }
- String name = (String)name_;
+ if (!(name_ instanceof String)) { super.put(name_,value); return; }
+ String name = name_.toString();
if (name == null) return; // FIXME, shouldn't be necessary
if (name.startsWith("xwt_")) {
if (Log.on) Log.logJS(this, "attempt to set reserved property " + name);
return;
}
- super.put((Object)name, value);
+ super.put(name, value);
// a bit of a hack, since titlebar is the only 'special' property stored in JSObject
if (getParent() == null && surface != null) {
public Object get(Object name) { return box.get(name); }
public void put(Object name, Object value) { box.put(name, value, false, this); }
public Object[] keys() { return box.keys(); }
+ public Object callMethod(Object method, JS.Array args, boolean justChecking) {
+ return box.callMethod(method,args,justChecking);
+ }
}
return this;
}
+ // This is the name returned by typeof() by JS
+ public String typeName() {
+ return "box";
+ }
+
}
-