X-Git-Url: http://git.roojs.org/?a=blobdiff_plain;f=builder.html.js;h=ee57eddd77282f3cb1dbb0b08f3f954a3bec49db;hb=119290bc3234e9ece1c64dbd72ca486d9633b5b7;hp=fcd242b6010eef1ae95ba96b464af0f5baeeff1c;hpb=1244c3d56b6f463ab1be258504856f46f44e3591;p=app.Builder.js diff --git a/builder.html.js b/builder.html.js index fcd242b60..ee57eddd7 100644 --- a/builder.html.js +++ b/builder.html.js @@ -12,36 +12,66 @@ Builder = { id : 1, - render : function(data) + render : function(data, clsname) { // for debugging - //console.log(data); return; - if (scriptTag) { - document.body.removeChild(scriptTag); - scriptTag = false; - } - - this.scriptTag = document.body.appendChild(document.body.createElement('script')); - this.scriptTag.setAttribute('language','text/javascript'); - + // console.log(data); return; + //Roo.log(data); + //Roo.log(data); + // This would be alot simpler if we just use the XComponent code... + // data should now be dialog or xcomponent.. + // only snag here is that we do not know the name currently.. + //Roo.log(clsname); + var ix = '_src_' + this.id++; + // should replace module name with Builder._src_{id} + data = data.replace(clsname, 'Builder.' + ix); + // next.. we need to ensure that parent is set correctly.. + // done by sender... otherwise building becomes difficult.. + //data += "\n" + 'Builder.' + ix + ".parent = '#renderel';\n"; + + //Roo.log(data);return; + //Roo.log(data); + if (this.scriptTag) { + document.body.removeChild(this.scriptTag); + this.scriptTag = false; + } + + this.scriptTag = document.body.appendChild(document.createElement('script')); + this.scriptTag.setAttribute('type','text/javascript'); + this.id++; this.scriptTag.appendChild( - document.body.createCDATA( - 'Builder._src_' + this.id + ' = ' + JSON.stringify(data) + document.createTextNode( + data )); - this.tree = Builder['_src' + this.id]; + //Roo.log(this.tree); MODULE = { isBuilder : true }; _this = MODULE; if (!Builder.click) { Builder.click= Roo.get(document.body).on('click', this.onclick, this); } + Roo.log('Builder.'+ ix); + Roo.XComponent.build(); + return; - this.redraw(false); + return; + var wait_for_tree = function() { + + Builder.tree = Builder[ix]; + if (!Builder.tree) { + Roo.log("Wating for tree : " + ix); + wait_for_tree.defer(100); + return; + } + Builder.redraw(false); + } + wait_for_tree.defer(100); }, + tree : {}, renderObj : { isBuilder : true }, dialogroot : false,