text: /*
  	Copyright (c) 2004-2009, 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["dojox.form._SelectStackMixin"]){
  dojo._hasResource["dojox.form._SelectStackMixin"]=true;
  dojo.provide("dojox.form._SelectStackMixin");
  dojo.declare("dojox.form._SelectStackMixin",null,{stackId:"",stackPrefix:"",_paneIdFromOption:function(_1){
  return (this.stackPrefix||"")+_1;
  },_optionValFromPane:function(id){
  var sp=this.stackPrefix;
  if(sp&&id.indexOf(sp)===0){
  return id.substring(sp.length);
  }
  return id;
  },_togglePane:function(_2,_3){
  if(_2._shown!=undefined&&_2._shown==_3){
  return;
  }
  var _4=dojo.filter(_2.getDescendants(),"return item.name;");
  if(!_3){
  _5={};
  dojo.forEach(_4,function(w){
  _5[w.id]=w.disabled;
  w.attr("disabled",true);
  });
  _2._savedStates=_5;
  }else{
  var _5=_2._savedStates||{};
  dojo.forEach(_4,function(w){
  var _6=_5[w.id];
  if(_6==undefined){
  _6=false;
  }
  w.attr("disabled",_6);
  });
  delete _2._savedStates;
  }
  _2._shown=_3;
  },_connectTitle:function(_7,_8){
  var fx=dojo.hitch(this,function(_9){
  this.updateOption({value:_8,label:_9});
  });
  if(_7._setTitleAttr){
  this.connect(_7,"_setTitleAttr",fx);
  }else{
  this.connect(_7,"attr",function(_a,_b){
  if(_a=="title"&&arguments.length>1){
  fx(_b);
  }
  });
  }
  },onAddChild:function(_c,_d){
  if(!this._panes[_c.id]){
  this._panes[_c.id]=_c;
  var v=this._optionValFromPane(_c.id);
  this.addOption({value:v,label:_c.title});
  this._connectTitle(_c,v);
  }
  if(!_c.onShow||!_c.onHide||_c._shown==undefined){
  _c.onShow=dojo.hitch(this,"_togglePane",_c,true);
  _c.onHide=dojo.hitch(this,"_togglePane",_c,false);
  _c.onHide();
  }
  },_setValueAttr:function(v){
  if("_savedValue" in this){
  return;
  }
  this.inherited(arguments);
  },attr:function(_e,_f){
  if(_e=="value"&&arguments.length==2&&"_savedValue" in this){
  this._savedValue=_f;
  }
  return this.inherited(arguments);
  },onRemoveChild:function(_10){
  if(this._panes[_10.id]){
  delete this._panes[_10.id];
  this.removeOption(this._optionValFromPane(_10.id));
  }
  },onSelectChild:function(_11){
  this._setValueAttr(this._optionValFromPane(_11.id));
  },onStartup:function(_12){
  var _13=_12.selected;
  this.addOption(dojo.filter(dojo.map(_12.children,function(c){
  var v=this._optionValFromPane(c.id);
  this._connectTitle(c,v);
  var _14=null;
  if(!this._panes[c.id]){
  this._panes[c.id]=c;
  _14={value:v,label:c.title};
  }
  if(!c.onShow||!c.onHide||c._shown==undefined){
  c.onShow=dojo.hitch(this,"_togglePane",c,true);
  c.onHide=dojo.hitch(this,"_togglePane",c,false);
  c.onHide();
  }
  if("_savedValue" in this&&v===this._savedValue){
  _13=c;
  }
  return _14;
  },this),function(i){
  return i;
  }));
  var _15=this;
  var fx=function(){
  delete _15._savedValue;
  _15.onSelectChild(_13);
  if(!_13._shown){
  _15._togglePane(_13,true);
  }
  };
  if(_13!==_12.selected){
  var _16=dijit.byId(this.stackId);
  var c=this.connect(_16,"_showChild",function(sel){
  this.disconnect(c);
  fx();
  });
  }else{
  fx();
  }
  },postMixInProperties:function(){
  this._savedValue=this.value;
  this.inherited(arguments);
  this.connect(this,"onChange","_handleSelfOnChange");
  },postCreate:function(){
  this.inherited(arguments);
  this._panes={};
  this._subscriptions=[dojo.subscribe(this.stackId+"-startup",this,"onStartup"),dojo.subscribe(this.stackId+"-addChild",this,"onAddChild"),dojo.subscribe(this.stackId+"-removeChild",this,"onRemoveChild"),dojo.subscribe(this.stackId+"-selectChild",this,"onSelectChild")];
  var _17=dijit.byId(this.stackId);
  if(_17&&_17._started){
  this.onStartup({children:_17.getChildren(),selected:_17.selectedChildWidget});
  }
  },destroy:function(){
  dojo.forEach(this._subscriptions,dojo.unsubscribe);
  delete this._panes;
  this.inherited("destroy",arguments);
  },_handleSelfOnChange:function(val){
  var _18=this._panes[this._paneIdFromOption(val)];
  if(_18){
  var s=dijit.byId(this.stackId);
  if(_18==s.selectedChildWidget){
  s._transition(_18);
  }else{
  s.selectChild(_18);
  }
  }
  }});
  }
  