Roo/form/ComboNested.js
[roojs1] / roojs-debug.js
index 8d1aa60..b384c83 100644 (file)
@@ -16805,7 +16805,11 @@ Roo.Markdown.toHtml = function(text) {
 //
 (function() {
     
-    
+     /**
+         * eval:var:escape
+         * eval:var:unescape
+         * eval:var:replace
+         */
       
     /**
      * Helpers
@@ -16845,6 +16849,34 @@ Roo.Markdown.toHtml = function(text) {
         return self;
       };
     }
+
+
+         /**
+         * eval:var:noop
+    */
+    var noop = function () {}
+    noop.exec = noop;
+    
+         /**
+         * eval:var:merge
+    */
+    var merge = function (obj) {
+      var i = 1
+        , target
+        , key;
+    
+      for (; i < arguments.length; i++) {
+        target = arguments[i];
+        for (key in target) {
+          if (Object.prototype.hasOwnProperty.call(target, key)) {
+            obj[key] = target[key];
+          }
+        }
+      }
+    
+      return obj;
+    }
+    
     
     /**
      * Block-Level Grammar
@@ -17600,6 +17632,10 @@ Roo.Markdown.toHtml = function(text) {
      * Renderer
      */
     
+     /**
+         * eval:var:Renderer
+    */
+    
     var Renderer   = function (options) {
       this.options = options || {};
     }
@@ -17749,6 +17785,9 @@ Roo.Markdown.toHtml = function(text) {
     /**
      * Parsing & Compiling
      */
+         /**
+         * eval:var:Parser
+    */
     
     var Parser= function (options) {
       this.tokens = [];
@@ -17927,31 +17966,12 @@ Roo.Markdown.toHtml = function(text) {
     };
   
     
-    var noop = function () {}
-    noop.exec = noop;
-    
-    var merge = function (obj) {
-      var i = 1
-        , target
-        , key;
-    
-      for (; i < arguments.length; i++) {
-        target = arguments[i];
-        for (key in target) {
-          if (Object.prototype.hasOwnProperty.call(target, key)) {
-            obj[key] = target[key];
-          }
-        }
-      }
-    
-      return obj;
-    }
-    
-    
     /**
      * Marked
      */
-    
+         /**
+         * eval:var:marked
+    */
     var marked = function (src, opt, callback) {
       if (callback || typeof opt === 'function') {
         if (!callback) {
@@ -17973,7 +17993,9 @@ Roo.Markdown.toHtml = function(text) {
         }
     
         pending = tokens.length;
-    
+         /**
+         * eval:var:done
+    */
         var done = function(err) {
           if (err) {
             opt.highlight = highlight;
@@ -23756,6 +23778,7 @@ Roo.data.DataReader.prototype = {
         return new this.recordType(Roo.apply(da, d));
     }
     
+    
 };/*
  * Based on:
  * Ext JS Library 1.1.1
@@ -24616,9 +24639,8 @@ var myReader = new Roo.data.ArrayReader({
  * 
  * created using {@link Roo.data.Record#create}.
  */
-Roo.data.ArrayReader = function(meta, recordType){
-    
-     
+Roo.data.ArrayReader = function(meta, recordType)
+{    
     Roo.data.ArrayReader.superclass.constructor.call(this, meta, recordType||meta.fields);
 };
 
@@ -42792,7 +42814,7 @@ Roo.extend(Roo.form.ComboNested, Roo.form.ComboBox, {
             this.tpl = new Roo.Template({
                 html :  '<div class="'+cls+'-item '+cls+'-item-{cn:this.isEmpty}">{' + this.displayField + '}</div>',
                 isEmpty: function (value, allValues) {
-                    return value.length ? 'has-children' : 'no-children'
+                    return value && value.length ? 'has-children' : 'no-children'
                 }
             });
         }
@@ -42800,6 +42822,7 @@ Roo.extend(Roo.form.ComboNested, Roo.form.ComboBox, {
         var store  = this.store;
         if (i > 0) {
             store  = new Roo.data.SimpleStore({
+                //fields : this.store.reader.meta.fields,
                 reader : this.store.reader,
                 data : [ ]
             });
@@ -42829,7 +42852,7 @@ Roo.extend(Roo.form.ComboNested, Roo.form.ComboBox, {
         //view.on('click', this.onViewClick, this, { list : i });
 
         store.on('beforeload', this.onBeforeLoad, this);
-        store.on('load',  this.onStoreLoad, this, { list  : i});
+        store.on('load',  this.onLoad, this, { list  : i});
         store.on('loadexception', this.onLoadException, this);
 
         // hide the other vies..
@@ -42867,7 +42890,17 @@ Roo.extend(Roo.form.ComboNested, Roo.form.ComboBox, {
      
     
     // -- store handlers..
-    
+    // private
+    onBeforeLoad : function()
+    {
+        if(!this.hasFocus){
+            return;
+        }
+        this.innerLists[0].update(this.loadingText ?
+               '<div class="loading-indicator">'+this.loadingText+'</div>' : '');
+        this.restrictHeight();
+        this.selectedIndex = -1;
+    },
     // private
     onLoad : function(a,b,c,d)
     {
@@ -42890,10 +42923,7 @@ Roo.extend(Roo.form.ComboNested, Roo.form.ComboBox, {
     
         //this.el.focus();
     },
-    onStoreLoad : function ()
-    {
-        Roo.log(arguments);
-    },
+    
     
     // private
     onLoadException : function()
@@ -42932,12 +42962,13 @@ Roo.extend(Roo.form.ComboNested, Roo.form.ComboBox, {
         var lw = Math.floor(
                 ((this.listWidth * 3 || Math.max(this.wrap.getWidth(), this.minListWidth)) - this.list.getFrameWidth('lr')) / 3
         );
-        
-        this.stores[opts.list+1].loadData( typeof(rec.data.cn) == 'undefined' ? [] : rec.data.cn);
+        var data =  typeof(rec.data.cn) == 'undefined' ? [] : rec.data.cn;
+        var dl = typeof(data.data.cn) ? data.data.total : data.length; ///json is a nested response..
+        this.stores[opts.list+1].loadData( data );
         this.views[opts.list+1].getEl().setHeight( this.innerLists[0].getHeight());
-        this.views[opts.list+1].getEl().setStyle({ display : rec.data.cn.length ? 'block' : 'none' });
+        this.views[opts.list+1].getEl().setStyle({ display : dl ? 'block' : 'none' });
         this.innerLists[opts.list+1].setHeight( this.innerLists[0].getHeight());
-        this.list.setWidth(lw * (opts.list + (rec.data.cn.length ? 2 : 1))); 
+        this.list.setWidth(lw * (opts.list + (dl ? 2 : 1))); 
     },
     onDoubleClick : function()
     {
@@ -42955,6 +42986,7 @@ Roo.extend(Roo.form.ComboNested, Roo.form.ComboBox, {
     findRecordInStore : function(store, prop, value)
     {
         var cstore = new Roo.data.SimpleStore({
+            //fields : this.store.reader.meta.fields, // we need array reader.. for
             reader : this.store.reader,
             data : [ ]
         });
@@ -42981,6 +43013,9 @@ Roo.extend(Roo.form.ComboNested, Roo.form.ComboBox, {
         return record;
     }
     
+    
+    
+    
 });/*
  * Based on:
  * Ext JS Library 1.1.1