X-Git-Url: http://git.roojs.org/?p=roojs1;a=blobdiff_plain;f=roojs-bootstrap-debug.js;h=0ab5de6302732f1f5dafbe963d6e092917fe4def;hp=8145ac6955a85fafab6c1ab5b1e82b5c6c29d5cc;hb=refs%2Fheads%2Fwip_alan_T6201_Category_select;hpb=dea0a4697bbc5b633dcb3b4bd9cc257b29825d36 diff --git a/roojs-bootstrap-debug.js b/roojs-bootstrap-debug.js index 8145ac6955..0ab5de6302 100644 --- a/roojs-bootstrap-debug.js +++ b/roojs-bootstrap-debug.js @@ -11825,6 +11825,16 @@ Roo.extend(Roo.data.Store, Roo.util.Observable, { var r = this.reader.readRecords(o); this.loadRecords(r, {add: append}, true); }, + + /** + * using 'cn' the nested child reader read the child array into it's child stores. + * @param {Object} rec The record with a 'children array + */ + loadDataFromChildren : function(rec) + { + this.loadData(this.reader.toLoadData(rec)); + }, + /** * Gets the number of cached records. @@ -12138,9 +12148,8 @@ Roo.data.SimpleStore = function(config) { Roo.data.SimpleStore.superclass.constructor.call(this, { isLocal : true, - reader: new Roo.data.ArrayReader({ - id: config.id, - fields : config.fields + reader: typeof(config.reader) != 'undefined' ? config.reader : new Roo.data.ArrayReader({ + id: config.id }, Roo.data.Record.create(config.fields) ), @@ -12316,6 +12325,9 @@ Roo.data.DataReader = function(meta, recordType){ }; Roo.data.DataReader.prototype = { + + + readerType : 'Data', /** * Create an empty record * @param {Object} data (optional) - overlay some values @@ -12875,6 +12887,8 @@ Roo.data.JsonReader = function(meta, recordType){ }; Roo.extend(Roo.data.JsonReader, Roo.data.DataReader, { + readerType : 'Json', + /** * @prop {Boolean} metaFromRemote - if the meta data was loaded from the remote source. * Used by Store query builder to append _requestMeta to params. @@ -13016,6 +13030,14 @@ Roo.extend(Roo.data.JsonReader, Roo.data.DataReader, { records : records, totalRecords : totalRecords }; + }, + // used when loading children.. @see loadDataFromChildren + toLoadData: function(rec) + { + // expect rec just to be an array.. eg [a,b,c, [...] << cn ] + var data = typeof(rec.data.cn) == 'undefined' ? [] : rec.data.cn; + return { data : data, total : data.length }; + } });/* * Based on: @@ -13071,7 +13093,8 @@ Roo.data.ArrayReader = function(meta, recordType) }; Roo.extend(Roo.data.ArrayReader, Roo.data.JsonReader, { - /** + + /** * Create a data block containing Roo.data.Records from an XML document. * @param {Object} o An Array of row objects which represents the dataset. * @return {Object} A data block which is used by an {@link Roo.data.Store} object as @@ -13102,7 +13125,16 @@ Roo.extend(Roo.data.ArrayReader, Roo.data.JsonReader, { records : records, totalRecords : records.length }; + }, + // used when loading children.. @see loadDataFromChildren + toLoadData: function(rec) + { + // expect rec just to be an array.. eg [a,b,c, [...] << cn ] + return typeof(rec.data.cn) == 'undefined' ? [] : rec.data.cn; + } + + });/* * - LGPL * *