public void put(Object name, Object value) {
if (name.equals("thread") && value != null && value instanceof JS.Callable) ThreadMessage.newthread((JS.Callable)value);
else if (name.equals("clipboard")) Platform.setClipBoard(value.toString());
+ else if (name.equals("frame")) Platform.createSurface((Box)value, true, true);
+ else if (name.equals("window")) Platform.createSurface((Box)value, false, true);
else if (name.equals("proxyAuthorization")) {
HTTP.Proxy.Authorization.authorization = value.toString();
HTTP.Proxy.Authorization.waitingForUser.release();
return new Res.Graft((Res)args.elementAt(0), args.elementAt(1), args.elementAt(2));
return new JS.Graft((JS)args.elementAt(0), args.elementAt(1), args.elementAt(2));
+ } else if (method.equals("unzip")) {
+ if (checkOnly) return Boolean.TRUE;
+ return new Res.Zip((Res)args.elementAt(0));
+
} else if (method.equals("watchProgress")) {
if (checkOnly) return Boolean.TRUE;
return new Res.ProgressWatcher((Res)args.elementAt(0), (JS.Callable)args.elementAt(1));
if (checkOnly) return Boolean.TRUE;
return new Regexp(args);
+ } else if (method.equals("apply")) {
+ if (checkOnly) return Boolean.TRUE;
+ Box b = (Box)args.elementAt(0);
+ Template.getTemplate((Res)args.elementAt(1)).apply(b, null, this);
+ return b;
+
} else if (method.equals("xmlrpc")) {
if (checkOnly) return Boolean.TRUE;
if (args.length() != 1 || args.elementAt(0) == null) return null;