magix-components
Version:
1 lines • 6.29 kB
JavaScript
define("mx-slider/range",["magix","$","../mx-dragdrop/index","./style"],function(e,t,_){var i=e("magix"),a=e("$"),s=e("../mx-dragdrop/index");e("./style"),_.exports=i.View.extend({tmpl:{html:'<div mx-guid="g0" class="eu<%if($$.vertical){%> ew<%}else{%> ev<%}%>" mx-contextmenu="__D()" style="<%if($$.vertical){%>height:<%=$$.height%><%}else{%>width:<%=$$.width%><%}%>px"><div mx-guid="g1" class="ex<%if($$.vertical){%> ez<%}else{%> ey<%}%>"></div><div mx-guid="g2" class="eA<%if($$.vertical){%> eC<%}else{%> eB<%}%>" mx-mousedown="__dr({start:true})" id="left_<%=$$.viewId%>"></div><div mx-guid="g3" class="eD<%if($$.vertical){%> eJ<%}else{%> eI<%}%>" id="leftl_<%=$$.viewId%>"></div><div mx-guid="g4" class="eA<%if($$.vertical){%> eC<%}else{%> eB<%}%>" mx-mousedown="__dr({end:true})" id="right_<%=$$.viewId%>"></div><div mx-guid="g5" class="eD<%if($$.vertical){%> eJ<%}else{%> eI<%}%>" id="rightl_<%=$$.viewId%>"></div><div mx-guid="g6" class="<%if($$.vertical){%>eG<%}else{%>eE<%}%>">7</div><div mx-guid="g7" class="<%if($$.vertical){%>eH<%}else{%>eF<%}%>">8</div></div>',subs:[{keys:["vertical","height","width"],path:'div[mx-guid="g0"]',attr:'class="eu<%if($$.vertical){%> ew<%}else{%> ev<%}%>" mx-contextmenu="__D()" style="<%if($$.vertical){%>height:<%=$$.height%><%}else{%>width:<%=$$.width%><%}%>px"',attrs:[{n:"class",p:1,f:"className"},{n:"mx-contextmenu"},{n:"style"}]},{keys:["vertical"],path:'div[mx-guid="g1"]',attr:'class="ex<%if($$.vertical){%> ez<%}else{%> ey<%}%>"',attrs:[{n:"class",p:1,f:"className"}]},{keys:["vertical","viewId"],path:'div[mx-guid="g2"]',attr:'class="eA<%if($$.vertical){%> eC<%}else{%> eB<%}%>" mx-mousedown="__dr({start:true})" id="left_<%=$$.viewId%>"',attrs:[{n:"class",p:1,f:"className"},{n:"mx-mousedown"},{n:"id",p:1}]},{keys:["vertical","viewId"],path:'div[mx-guid="g3"]',attr:'class="eD<%if($$.vertical){%> eJ<%}else{%> eI<%}%>" id="leftl_<%=$$.viewId%>"',attrs:[{n:"class",p:1,f:"className"},{n:"id",p:1}]},{keys:["vertical","viewId"],path:'div[mx-guid="g4"]',attr:'class="eA<%if($$.vertical){%> eC<%}else{%> eB<%}%>" mx-mousedown="__dr({end:true})" id="right_<%=$$.viewId%>"',attrs:[{n:"class",p:1,f:"className"},{n:"mx-mousedown"},{n:"id",p:1}]},{keys:["vertical","viewId"],path:'div[mx-guid="g5"]',attr:'class="eD<%if($$.vertical){%> eJ<%}else{%> eI<%}%>" id="rightl_<%=$$.viewId%>"',attrs:[{n:"class",p:1,f:"className"},{n:"id",p:1}]},{keys:["vertical","min"],path:'div[mx-guid="g6"]',tmpl:"<%=$$.min%>",s:"7",attr:'class="<%if($$.vertical){%>eG<%}else{%>eE<%}%>"',attrs:[{n:"class",p:1,f:"className"}],mask:"21"},{keys:["vertical","max"],path:'div[mx-guid="g7"]',tmpl:"<%=$$.max%>",s:"8",attr:'class="<%if($$.vertical){%>eH<%}else{%>eF<%}%>"',attrs:[{n:"class",p:1,f:"className"}],mask:"21"}]},init:function(e){var t=this,_=a("#"+t.id);_.addClass("et"),t.assign(e);var i=function(e){if(!t.__dm&&!t.__bB){var i=_.offset(),a=t.__dn(),s=-1,d=((s=t.__do?a.rMax-e.pageY+i.top:e.pageX-i.left)-a.half)/a.max,r=t.__dp(d),l=+t.__ao,c=+t.__aq;Math.abs(l-r)<Math.abs(c-r)?(t.__ds(r),t.__ao=r,t.__u()):(t.__dt(r),t.__aq=r,t.__u())}};_.on("click",i),t.on("destroy",function(){_.off("click",i)}),t.__h=_},assign:function(e){var t=this;t.__cW=+e.width||340,t.__dq=+e.height||340,t.__E=+e.min||0,t.__F=+e.max||100,t.__cy=+e.step||1,t.__bB=e.disabled+""=="true",t.__do=e.vertical+""=="true";var _=t.__cy+"",i=_.indexOf(".");i=i>=0?_.slice(i+1).length:0,t.__cA=i;var a=e.value;return a?(a=(a+"").split(","),t.__ao=+a[0]||0,t.__aq=+a[1]||0):(t.__ao=0,t.__aq=0),!0},render:function(){var e=this;e.updater.digest({min:e.__E.toFixed(e.__cA),max:e.__F.toFixed(e.__cA),viewId:e.id,height:e.__dq,width:e.__cW,vertical:e.__do}),e.__h[e.__bB?"addClass":"removeClass"]("eK"),e.val([e.__ao,e.__aq])},__dn:function(){var e=this,t=e.__h.find(".eu"),_=e.__h.find(".ex"),i=a("#left_"+e.id),s=a("#right_"+e.id),d=e.__do?t.height():t.width(),r=i.outerWidth()/2,l=d-2*r;return{rail:t,iLeftL:a("#leftl_"+e.id),iRightL:a("#rightl_"+e.id),tracker:_,iLeft:i,iRight:s,left:parseInt(i.css(e.__do?"bottom":"left"),10),right:parseInt(s.css(e.__do?"bottom":"left"),10),rMax:d,max:l,half:r}},__ds:function(e){var t=this;e=+e;var _=t.__F,i=t.__E;e>_?e=_:e<i&&(e=i);var a=(e-i)/(_-i),s=t.__dn(),d=a*s.max;t.__do?s.iLeft.css({bottom:d}):s.iLeft.css({left:d}),e=t.__dp(a);var r=s.iLeftL;r.html(e);var l=d+s.half;if(t.__do)l-=c=r.height()/2,r.css({bottom:l}),s.tracker.css({bottom:d+s.half}).height(s.right-d);else{var c=r.width()/2;l<c?l=0:l+c>s.rMax?l=s.rMax-2*c:l-=c,r.css({left:l}),s.tracker.css({left:d+s.half}).width(s.right-d)}return e},__dt:function(e){var t=this;e=+e;var _=t.__F,i=t.__E;e>_?e=_:e<i&&(e=i);var a=(e-i)/(_-i),s=t.__dn(),d=a*s.max;t.__do?s.iRight.css({bottom:d}):s.iRight.css({left:d}),e=t.__dp(a);var r=s.iRightL;r.html(e);var l=d+s.half;if(t.__do)l-=c=r.height()/2,r.css({bottom:l}),s.tracker.height(d-s.left);else{var c=r.width()/2;l<c?l=0:l+c>s.rMax?l=s.rMax-2*c:l-=c,r.css({left:l}),s.tracker.width(d-s.left)}return e},val:function(e){var t=this;if(e){var _=(e+"").split(","),i=+_[0]||0,a=+_[1]||0;i>a&&(i=(s=[a,i])[0],a=s[1]),t.__h.prop("value",[i,a]),i=t.__ds(i),a=t.__dt(a),t.__ao==i&&t.__aq==a||(t.__ao=i,t.__aq=a,t.__u())}return[+t.__ao,+t.__aq];var s},__dp:function(e){var t,_=this,i=_.__F,a=_.__E,s=_.__cy;return 0===e?t=a:1===e?t=i:(t=a+(i-a)*e,t=Math.round(t/s)*s),t=t.toFixed(_.__cA)},__u:function(){var e=this,t=[+e.__ao,+e.__aq];this.__h.prop("value",t).trigger({type:"change",value:t,start:+e.__ao,end:+e.__aq})},"__dr<mousedown>":function(e){e.stopPropagation(),e.preventDefault();var t=this;if(!t.__bB){var _=a(e.eventTarget),i=_.outerWidth(),d=-1;d=t.__do?_.parent().height()-i:_.parent().width()-i;var r=parseInt(_.css(t.__do?"bottom":"left"),10),l=t.__ao,c=t.__aq;s.begin(e.eventTarget,function(_){s.clear();var i=-1;(i=t.__do?r+e.pageY-_.pageY:r+_.pageX-e.pageX)<0?i=0:i>d&&(i=d);var a=i/d,n=t.__dp(a),v=+n;if(e.params.end){var o=+t.__ao;v>=o?(t.__ao!=l&&(l=t.__ds(o)),c=t.__dt(n)):(t.__ao!=c&&(c=t.__dt(o)),l=t.__ds(n))}else{var h=+t.__aq;v<=h?(t.__aq!=c&&(c=t.__dt(h)),l=t.__ds(n)):(t.__aq!=l&&(l=t.__ds(h)),c=t.__dt(n))}},function(){l==t.__ao&&t.__aq==c||(t.__ao=l,t.__aq=c,t.__u()),t.__dm=!0,setTimeout(t.wrapAsync(function(){delete t.__dm}),20)})}},"__D<contextmenu>":function(e){e.preventDefault()}})});