Builder/Provider/GtkUsage.txt
[app.Builder.js] / builder.html.js
index d135570..875e9e9 100644 (file)
@@ -1,17 +1,24 @@
 //<script type="text/javascript">
  
-var _this = { isBuilder : true };
-   
+
+var MODULE = { isBuilder : true };
+// BC
+var _this = MODULE;
+
+// the apprenderer.
 Builder  = {
     
     render : function(data)
     {
-        console.log(data); 
+        // for debugging 
+         //console.log(data);        return;
+        
+        
         this.tree = data;
-        _this = { isBuilder : true };
+        MODULE = { isBuilder : true }; 
+        _this = MODULE;
         if (!Builder.click) {
             Builder.click= Roo.get(document.body).on('click', this.onclick, this);
-         
         }
         
         this.redraw(false);
@@ -100,9 +107,9 @@ Builder  = {
             });
             
             
-            this.dialog = new Roo[cfg.xtype](this.dialogroot, cfg);
+            MODULE.dialog = new Roo[cfg.xtype](this.dialogroot, cfg);
             //this.dialog.el.on('click', this.panelClick, this);
-            this.dialog.show();
+            MODULE.dialog.show();
             return;
             
         }
@@ -185,16 +192,19 @@ Builder  = {
                     delete cfg[p];
                     continue;
                 }
+                var pp = p.charAt(0) == '|'  ? p.substring(1) : p;
                 try {
-                    var _tmp = false;
                     
                     
+                    var _tmp = false;
+                    
+                    /** eval:var:MOUDULE **/
                     /** eval:var:_this **/
                     /** eval:var:_tmp **/
                     // stupid IE can not return objects evaluated..
                    // console.log('_tmp =(' + cfg[p] + ')');
                     eval('_tmp =(' + cfg[p] + ')');
-                    cfg[isListener ? p : p.substr(1)] = _tmp;
+                    cfg[pp] = _tmp;
                     
                     //if (typeof(_tmp) == 'undefined') {
                     //    alert(cfg[p]);
@@ -203,7 +213,10 @@ Builder  = {
                 } catch(e) {  
                     console.log('Error evaluating: '  + cfg[p] + "\r\n" + JSON.stringify(e)); 
                 };
-                delete cfg[p];
+                if (pp != p) {
+                    delete cfg[p];
+                }
+                
                     
                 
                 continue;
@@ -233,9 +246,11 @@ Builder  = {
                 throw "Invalid Xtype " + cfg.xtype + ' on ' + cfg.xtreepath;
             }
         }
-        
+        if (!isListener) {
+            cfg.listeners = cfg.listeners || {};
+        }
         // we can overlay some event handlers here..
-        cfg.listeners = cfg.listeners || {};
+        
        
         //console.log('xtype'  + xtype)
         switch(xtype) {
@@ -254,6 +269,7 @@ Builder  = {
         
         // now for all the children.. (items)
         if (xitems === false) {
+            
             return;
         }
         cfg.items = [];