//>>built define("dojox/mobile/ValuePickerSlot",["dojo/_base/array","dojo/_base/declare","dojo/_base/event","dojo/_base/lang","dojo/_base/window","dojo/dom-class","dojo/dom-construct","dojo/touch","dijit/_WidgetBase","./iconUtils"],function(_1,_2,_3,_4,_5,_6,_7,_8,_9,_a){ return _2("dojox.mobile.ValuePickerSlot",_9,{items:[],labels:[],labelFrom:0,labelTo:0,zeroPad:0,value:"",step:1,readOnly:false,tabIndex:"0",baseClass:"mblValuePickerSlot",buildRendering:function(){ this.inherited(arguments); this.initLabels(); if(this.labels.length>0){ this.items=[]; for(i=0;i0){ this.value=this.items[0][1]; } this._initialValue=this.value; },startup:function(){ if(this._started){ return; } this._handlers=[this.connect(this.plusBtnNode,_8.press,"_onTouchStart"),this.connect(this.minusBtnNode,_8.press,"_onTouchStart"),this.connect(this.plusBtnNode,"onkeydown","_onClick"),this.connect(this.minusBtnNode,"onkeydown","_onClick"),this.connect(this.inputNode,"onchange",_4.hitch(this,function(e){ this._onChange(e); }))]; this.inherited(arguments); },initLabels:function(){ if(this.labelFrom!==this.labelTo){ var a=this.labels=[],_b=this.zeroPad&&Array(this.zeroPad).join("0"); for(var i=this.labelFrom;i<=this.labelTo;i+=this.step){ a.push(this.zeroPad?(_b+i).slice(-this.zeroPad):i+""); } } },spin:function(_c){ var _d=-1,v=this.get("value"),_e=this.items.length; for(var i=0;i<_e;i++){ if(this.items[i][1]===v){ _d=i; break; } } if(v==-1){ return; } _d+=_c; if(_d<0){ _d+=(Math.abs(Math.ceil(_d/_e))+1)*_e; } var _f=this.items[_d%_e]; this.set("value",_f[1]); },setInitialValue:function(){ this.set("value",this._initialValue); },_onClick:function(e){ if(e&&e.type==="keydown"&&e.keyCode!==13){ return; } if(this.onClick(e)===false){ return; } var _10=e.currentTarget; if(_10===this.plusBtnNode||_10===this.minusBtnNode){ this._btn=_10; } this.spin(this._btn===this.plusBtnNode?1:-1); },onClick:function(){ },_onChange:function(e){ if(this.onChange(e)===false){ return; } var v=this.get("value"),a=this.validate(v); this.set("value",a.length?a[0][1]:this.value); },onChange:function(){ },validate:function(_11){ return _1.filter(this.items,function(a){ return (a[1]+"").toLowerCase()==(_11+"").toLowerCase(); }); },_onTouchStart:function(e){ this._conn=[this.connect(_5.body(),_8.move,"_onTouchMove"),this.connect(_5.body(),_8.release,"_onTouchEnd")]; this.touchStartX=e.touches?e.touches[0].pageX:e.clientX; this.touchStartY=e.touches?e.touches[0].pageY:e.clientY; _6.add(e.currentTarget,"mblValuePickerSlotButtonSelected"); this._btn=e.currentTarget; if(this._timer){ clearTimeout(this._timer); this._timer=null; } if(this._interval){ clearInterval(this._interval); this._interval=null; } this._timer=setTimeout(_4.hitch(this,function(){ this._interval=setInterval(_4.hitch(this,function(){ this.spin(this._btn===this.plusBtnNode?1:-1); }),60); this._timer=null; }),1000); _3.stop(e); },_onTouchMove:function(e){ var x=e.touches?e.touches[0].pageX:e.clientX; var y=e.touches?e.touches[0].pageY:e.clientY; if(Math.abs(x-this.touchStartX)>=4||Math.abs(y-this.touchStartY)>=4){ if(this._timer){ clearTimeout(this._timer); this._timer=null; } if(this._interval){ clearInterval(this._interval); this._interval=null; } _1.forEach(this._conn,this.disconnect,this); _6.remove(this._btn,"mblValuePickerSlotButtonSelected"); } },_onTouchEnd:function(e){ if(this._timer){ clearTimeout(this._timer); this._timer=null; } _1.forEach(this._conn,this.disconnect,this); _6.remove(this._btn,"mblValuePickerSlotButtonSelected"); if(this._interval){ clearInterval(this._interval); this._interval=null; }else{ this._onClick(e); } },_getKeyAttr:function(){ var val=this.get("value"); var _12=_1.filter(this.items,function(_13){ return _13[1]===val; })[0]; return _12?_12[0]:null; },_getValueAttr:function(){ return this.inputNode.value; },_setValueAttr:function(_14){ this.inputNode.value=_14; this._set("value",_14); var _15=this.getParent(); if(_15&&_15.onValueChanged){ _15.onValueChanged(this); } },_setTabIndexAttr:function(_16){ this.plusBtnNode.setAttribute("tabIndex",_16); this.minusBtnNode.setAttribute("tabIndex",_16); }}); });