diff --git a/ui/data4.js b/ui/data4.js index fcf1ed7c..f2a240c0 100755 --- a/ui/data4.js +++ b/ui/data4.js @@ -9,7 +9,7 @@ /*********************************************************************/ -var DataClassProto = { +var DataClassPrototype = { // NOTE: we consider the list sorted... fromList: function(list){ var res = new Data() @@ -754,14 +754,27 @@ var DataPrototype = { } -var Data = function(){ - this.base = null - this.current = null - this.order = [] - this.ribbon_order = [] - this.ribbons = {} +function Data(json){ + if(this.constructor.name != 'Data'){ + obj = new Data + } else { + obj = this + } - this._gid_cache = [] + obj.base = null + obj.current = null + obj.order = [] + obj.ribbon_order = [] + obj.ribbons = {} + + obj._gid_cache = [] + + // load initial state... + if(json != null){ + obj.loadJSON(json) + } + + return obj } Data.__proto__ = DataClassPrototype Data.prototype = DataPrototype diff --git a/ui/index.html b/ui/index.html index c73e302c..424c859f 100755 --- a/ui/index.html +++ b/ui/index.html @@ -31,6 +31,7 @@ +