X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=src%2Forg%2Fxwt%2FXWT.java;h=e5c443f9aba8bbceec769f8592f1c4a3ba263a5f;hb=16c24a73c1c1b2955db0bbbaf5a940215329bca1;hp=1076de049c1742d30a80435cf11120a1df9b08df;hpb=16ad8b9430571d806f2aeb18ec472a277ff69423;p=org.ibex.core.git diff --git a/src/org/xwt/XWT.java b/src/org/xwt/XWT.java index 1076de0..e5c443f 100644 --- a/src/org/xwt/XWT.java +++ b/src/org/xwt/XWT.java @@ -17,13 +17,15 @@ public final class XWT extends JS.Cloneable { private final JS rr; public XWT(Stream rr) { this.rr = bless(rr); } - public JS resolveStringToResource(String str, boolean permitAbsolute) throws JSExn { + public JS resolveString(String str, boolean permitAbsolute) throws JSExn { if (str.indexOf("://") != -1) { if (permitAbsolute) return (Stream)url2res(str); throw new JSExn("absolute URL " + str + " not permitted here"); } // root-relative - JS ret = (JS)getAndTriggerTraps(""); + //JS ret = (JS)getAndTriggerTraps(""); + //FIXME + JS ret = rr; while(str.indexOf('.') != -1) { String path = str.substring(0, str.indexOf('.')); str = str.substring(str.indexOf('.') + 1); @@ -338,14 +340,16 @@ public final class XWT extends JS.Cloneable { public JSScope getStatic() { try { // FIXME background? - if (t == null) t = new Template(Stream.getInputStream(parent.get(parentkey + ".xwt")), xwt); - return t.getStatic(); + if (t == null) t = Template.buildTemplate(Stream.getInputStream(parent.get(parentkey + ".xwt")), xwt); + return t.staticScope; } catch (Exception e) { Log.error(this, e); return null; } } public Object call(Object a, Object b, Object c, Object[] rest, int nargs) throws JSExn { + // GROSS hack + if (nargs == 9999) return t; if (nargs != 1) throw new JSExn("FIXME can only call with one arg"); getStatic(); t.apply((Box)a);