summaryrefslogtreecommitdiff
path: root/lib/dojo/Stateful.js
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2010-11-15 10:39:52 +0300
committerAndrew Dolgov <[email protected]>2010-11-15 10:39:52 +0300
commit2f01fe57a8d37767827d6db42850aef86a767c53 (patch)
tree516a95ffce2fc2435aed8d9976e444dbcba7dce3 /lib/dojo/Stateful.js
parent951906dcecb1d3c7bcf751976a03e0c196ca6db0 (diff)
add dijit/dojo stuff; initial ui mockup
Diffstat (limited to 'lib/dojo/Stateful.js')
-rw-r--r--lib/dojo/Stateful.js64
1 files changed, 64 insertions, 0 deletions
diff --git a/lib/dojo/Stateful.js b/lib/dojo/Stateful.js
new file mode 100644
index 000000000..136b319c7
--- /dev/null
+++ b/lib/dojo/Stateful.js
@@ -0,0 +1,64 @@
+/*
+ Copyright (c) 2004-2010, The Dojo Foundation All Rights Reserved.
+ Available via Academic Free License >= 2.1 OR the modified BSD license.
+ see: http://dojotoolkit.org/license for details
+*/
+
+
+if(!dojo._hasResource["dojo.Stateful"]){
+dojo._hasResource["dojo.Stateful"]=true;
+dojo.provide("dojo.Stateful");
+dojo.declare("dojo.Stateful",null,{postscript:function(_1){
+if(_1){
+dojo.mixin(this,_1);
+}
+},get:function(_2){
+return this[_2];
+},set:function(_3,_4){
+if(typeof _3==="object"){
+for(var x in _3){
+this.set(x,_3[x]);
+}
+return this;
+}
+var _5=this[_3];
+this[_3]=_4;
+if(this._watchCallbacks){
+this._watchCallbacks(_3,_5,_4);
+}
+return this;
+},watch:function(_6,_7){
+var _8=this._watchCallbacks;
+if(!_8){
+var _9=this;
+_8=this._watchCallbacks=function(_a,_b,_c,_d){
+var _e=function(_f){
+for(var i=0,l=_f&&_f.length;i<l;i++){
+try{
+_f[i].call(_9,_a,_b,_c);
+}
+catch(e){
+console.error(e);
+}
+}
+};
+_e(_8[_a]);
+if(!_d){
+_e(_8["*"]);
+}
+};
+}
+if(!_7&&typeof _6==="function"){
+_7=_6;
+_6="*";
+}
+var _10=_8[_6];
+if(typeof _10!=="object"){
+_10=_8[_6]=[];
+}
+_10.push(_7);
+return {unwatch:function(){
+_10.splice(dojo.indexOf(_10,_7),1);
+}};
+}});
+}