summaryrefslogtreecommitdiff
path: root/lib/dijit/form/HorizontalSlider.js
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2012-08-14 18:59:10 +0400
committerAndrew Dolgov <[email protected]>2012-08-14 18:59:18 +0400
commit1354d17270961fff662d40f90521223f8fd0d73b (patch)
treee9266be71587e47c800303446e968a6d3565e2cf /lib/dijit/form/HorizontalSlider.js
parentd04f8c826f5283765f52cf6b98b42a1ed8f2d6bc (diff)
update dojo to 1.7.3
Diffstat (limited to 'lib/dijit/form/HorizontalSlider.js')
-rw-r--r--lib/dijit/form/HorizontalSlider.js345
1 files changed, 2 insertions, 343 deletions
diff --git a/lib/dijit/form/HorizontalSlider.js b/lib/dijit/form/HorizontalSlider.js
index 93dc4a0c2..cc2563171 100644
--- a/lib/dijit/form/HorizontalSlider.js
+++ b/lib/dijit/form/HorizontalSlider.js
@@ -1,343 +1,2 @@
-/*
- Copyright (c) 2004-2011, 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["dijit.form.HorizontalSlider"]){ //_hasResource checks added by build. Do not use _hasResource directly in your code.
-dojo._hasResource["dijit.form.HorizontalSlider"] = true;
-dojo.provide("dijit.form.HorizontalSlider");
-dojo.require("dijit.form._FormWidget");
-dojo.require("dijit._Container");
-dojo.require("dojo.dnd.move");
-dojo.require("dijit.form.Button");
-dojo.require("dojo.number");
-
-
-dojo.declare(
- "dijit.form.HorizontalSlider",
- [dijit.form._FormValueWidget, dijit._Container],
-{
- // summary:
- // A form widget that allows one to select a value with a horizontally draggable handle
-
- templateString: dojo.cache("dijit.form", "templates/HorizontalSlider.html", "<table class=\"dijit dijitReset dijitSlider dijitSliderH\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\" rules=\"none\" dojoAttachEvent=\"onkeypress:_onKeyPress,onkeyup:_onKeyUp\"\n\t><tr class=\"dijitReset\"\n\t\t><td class=\"dijitReset\" colspan=\"2\"></td\n\t\t><td dojoAttachPoint=\"topDecoration\" class=\"dijitReset dijitSliderDecoration dijitSliderDecorationT dijitSliderDecorationH\"></td\n\t\t><td class=\"dijitReset\" colspan=\"2\"></td\n\t></tr\n\t><tr class=\"dijitReset\"\n\t\t><td class=\"dijitReset dijitSliderButtonContainer dijitSliderButtonContainerH\"\n\t\t\t><div class=\"dijitSliderDecrementIconH\" style=\"display:none\" dojoAttachPoint=\"decrementButton\"><span class=\"dijitSliderButtonInner\">-</span></div\n\t\t></td\n\t\t><td class=\"dijitReset\"\n\t\t\t><div class=\"dijitSliderBar dijitSliderBumper dijitSliderBumperH dijitSliderLeftBumper\" dojoAttachEvent=\"onmousedown:_onClkDecBumper\"></div\n\t\t></td\n\t\t><td class=\"dijitReset\"\n\t\t\t><input dojoAttachPoint=\"valueNode\" type=\"hidden\" ${!nameAttrSetting}\n\t\t\t/><div class=\"dijitReset dijitSliderBarContainerH\" role=\"presentation\" dojoAttachPoint=\"sliderBarContainer\"\n\t\t\t\t><div role=\"presentation\" dojoAttachPoint=\"progressBar\" class=\"dijitSliderBar dijitSliderBarH dijitSliderProgressBar dijitSliderProgressBarH\" dojoAttachEvent=\"onmousedown:_onBarClick\"\n\t\t\t\t\t><div class=\"dijitSliderMoveable dijitSliderMoveableH\"\n\t\t\t\t\t\t><div dojoAttachPoint=\"sliderHandle,focusNode\" class=\"dijitSliderImageHandle dijitSliderImageHandleH\" dojoAttachEvent=\"onmousedown:_onHandleClick\" role=\"slider\" valuemin=\"${minimum}\" valuemax=\"${maximum}\"></div\n\t\t\t\t\t></div\n\t\t\t\t></div\n\t\t\t\t><div role=\"presentation\" dojoAttachPoint=\"remainingBar\" class=\"dijitSliderBar dijitSliderBarH dijitSliderRemainingBar dijitSliderRemainingBarH\" dojoAttachEvent=\"onmousedown:_onBarClick\"></div\n\t\t\t></div\n\t\t></td\n\t\t><td class=\"dijitReset\"\n\t\t\t><div class=\"dijitSliderBar dijitSliderBumper dijitSliderBumperH dijitSliderRightBumper\" dojoAttachEvent=\"onmousedown:_onClkIncBumper\"></div\n\t\t></td\n\t\t><td class=\"dijitReset dijitSliderButtonContainer dijitSliderButtonContainerH\"\n\t\t\t><div class=\"dijitSliderIncrementIconH\" style=\"display:none\" dojoAttachPoint=\"incrementButton\"><span class=\"dijitSliderButtonInner\">+</span></div\n\t\t></td\n\t></tr\n\t><tr class=\"dijitReset\"\n\t\t><td class=\"dijitReset\" colspan=\"2\"></td\n\t\t><td dojoAttachPoint=\"containerNode,bottomDecoration\" class=\"dijitReset dijitSliderDecoration dijitSliderDecorationB dijitSliderDecorationH\"></td\n\t\t><td class=\"dijitReset\" colspan=\"2\"></td\n\t></tr\n></table>\n"),
-
- // Overrides FormValueWidget.value to indicate numeric value
- value: 0,
-
- // showButtons: [const] Boolean
- // Show increment/decrement buttons at the ends of the slider?
- showButtons: true,
-
- // minimum:: [const] Integer
- // The minimum value the slider can be set to.
- minimum: 0,
-
- // maximum: [const] Integer
- // The maximum value the slider can be set to.
- maximum: 100,
-
- // discreteValues: Integer
- // If specified, indicates that the slider handle has only 'discreteValues' possible positions,
- // and that after dragging the handle, it will snap to the nearest possible position.
- // Thus, the slider has only 'discreteValues' possible values.
- //
- // For example, if minimum=10, maxiumum=30, and discreteValues=3, then the slider handle has
- // three possible positions, representing values 10, 20, or 30.
- //
- // If discreteValues is not specified or if it's value is higher than the number of pixels
- // in the slider bar, then the slider handle can be moved freely, and the slider's value will be
- // computed/reported based on pixel position (in this case it will likely be fractional,
- // such as 123.456789).
- discreteValues: Infinity,
-
- // pageIncrement: Integer
- // If discreteValues is also specified, this indicates the amount of clicks (ie, snap positions)
- // that the slider handle is moved via pageup/pagedown keys.
- // If discreteValues is not specified, it indicates the number of pixels.
- pageIncrement: 2,
-
- // clickSelect: Boolean
- // If clicking the slider bar changes the value or not
- clickSelect: true,
-
- // slideDuration: Number
- // The time in ms to take to animate the slider handle from 0% to 100%,
- // when clicking the slider bar to make the handle move.
- slideDuration: dijit.defaultDuration,
-
- // Flag to _Templated (TODO: why is this here? I see no widgets in the template.)
- widgetsInTemplate: true,
-
- attributeMap: dojo.delegate(dijit.form._FormWidget.prototype.attributeMap, {
- id: ""
- }),
-
- baseClass: "dijitSlider",
-
- // Apply CSS classes to up/down arrows and handle per mouse state
- cssStateNodes: {
- incrementButton: "dijitSliderIncrementButton",
- decrementButton: "dijitSliderDecrementButton",
- focusNode: "dijitSliderThumb"
- },
-
- _mousePixelCoord: "pageX",
- _pixelCount: "w",
- _startingPixelCoord: "x",
- _startingPixelCount: "l",
- _handleOffsetCoord: "left",
- _progressPixelSize: "width",
-
- _onKeyUp: function(/*Event*/ e){
- if(this.disabled || this.readOnly || e.altKey || e.ctrlKey || e.metaKey){ return; }
- this._setValueAttr(this.value, true);
- },
-
- _onKeyPress: function(/*Event*/ e){
- if(this.disabled || this.readOnly || e.altKey || e.ctrlKey || e.metaKey){ return; }
- switch(e.charOrCode){
- case dojo.keys.HOME:
- this._setValueAttr(this.minimum, false);
- break;
- case dojo.keys.END:
- this._setValueAttr(this.maximum, false);
- break;
- // this._descending === false: if ascending vertical (min on top)
- // (this._descending || this.isLeftToRight()): if left-to-right horizontal or descending vertical
- case ((this._descending || this.isLeftToRight()) ? dojo.keys.RIGHT_ARROW : dojo.keys.LEFT_ARROW):
- case (this._descending === false ? dojo.keys.DOWN_ARROW : dojo.keys.UP_ARROW):
- case (this._descending === false ? dojo.keys.PAGE_DOWN : dojo.keys.PAGE_UP):
- this.increment(e);
- break;
- case ((this._descending || this.isLeftToRight()) ? dojo.keys.LEFT_ARROW : dojo.keys.RIGHT_ARROW):
- case (this._descending === false ? dojo.keys.UP_ARROW : dojo.keys.DOWN_ARROW):
- case (this._descending === false ? dojo.keys.PAGE_UP : dojo.keys.PAGE_DOWN):
- this.decrement(e);
- break;
- default:
- return;
- }
- dojo.stopEvent(e);
- },
-
- _onHandleClick: function(e){
- if(this.disabled || this.readOnly){ return; }
- if(!dojo.isIE){
- // make sure you get focus when dragging the handle
- // (but don't do on IE because it causes a flicker on mouse up (due to blur then focus)
- dijit.focus(this.sliderHandle);
- }
- dojo.stopEvent(e);
- },
-
- _isReversed: function(){
- // summary:
- // Returns true if direction is from right to left
- // tags:
- // protected extension
- return !this.isLeftToRight();
- },
-
- _onBarClick: function(e){
- if(this.disabled || this.readOnly || !this.clickSelect){ return; }
- dijit.focus(this.sliderHandle);
- dojo.stopEvent(e);
- var abspos = dojo.position(this.sliderBarContainer, true);
- var pixelValue = e[this._mousePixelCoord] - abspos[this._startingPixelCoord];
- this._setPixelValue(this._isReversed() ? (abspos[this._pixelCount] - pixelValue) : pixelValue, abspos[this._pixelCount], true);
- this._movable.onMouseDown(e);
- },
-
- _setPixelValue: function(/*Number*/ pixelValue, /*Number*/ maxPixels, /*Boolean?*/ priorityChange){
- if(this.disabled || this.readOnly){ return; }
- pixelValue = pixelValue < 0 ? 0 : maxPixels < pixelValue ? maxPixels : pixelValue;
- var count = this.discreteValues;
- if(count <= 1 || count == Infinity){ count = maxPixels; }
- count--;
- var pixelsPerValue = maxPixels / count;
- var wholeIncrements = Math.round(pixelValue / pixelsPerValue);
- this._setValueAttr((this.maximum-this.minimum)*wholeIncrements/count + this.minimum, priorityChange);
- },
-
- _setValueAttr: function(/*Number*/ value, /*Boolean?*/ priorityChange){
- // summary:
- // Hook so set('value', value) works.
- this._set("value", value);
- this.valueNode.value = value;
- dijit.setWaiState(this.focusNode, "valuenow", value);
- this.inherited(arguments);
- var percent = (value - this.minimum) / (this.maximum - this.minimum);
- var progressBar = (this._descending === false) ? this.remainingBar : this.progressBar;
- var remainingBar = (this._descending === false) ? this.progressBar : this.remainingBar;
- if(this._inProgressAnim && this._inProgressAnim.status != "stopped"){
- this._inProgressAnim.stop(true);
- }
- if(priorityChange && this.slideDuration > 0 && progressBar.style[this._progressPixelSize]){
- // animate the slider
- var _this = this;
- var props = {};
- var start = parseFloat(progressBar.style[this._progressPixelSize]);
- var duration = this.slideDuration * (percent-start/100);
- if(duration == 0){ return; }
- if(duration < 0){ duration = 0 - duration; }
- props[this._progressPixelSize] = { start: start, end: percent*100, units:"%" };
- this._inProgressAnim = dojo.animateProperty({ node: progressBar, duration: duration,
- onAnimate: function(v){ remainingBar.style[_this._progressPixelSize] = (100-parseFloat(v[_this._progressPixelSize])) + "%"; },
- onEnd: function(){ delete _this._inProgressAnim; },
- properties: props
- })
- this._inProgressAnim.play();
- }else{
- progressBar.style[this._progressPixelSize] = (percent*100) + "%";
- remainingBar.style[this._progressPixelSize] = ((1-percent)*100) + "%";
- }
- },
-
- _bumpValue: function(signedChange, /*Boolean?*/ priorityChange){
- if(this.disabled || this.readOnly){ return; }
- var s = dojo.getComputedStyle(this.sliderBarContainer);
- var c = dojo._getContentBox(this.sliderBarContainer, s);
- var count = this.discreteValues;
- if(count <= 1 || count == Infinity){ count = c[this._pixelCount]; }
- count--;
- var value = (this.value - this.minimum) * count / (this.maximum - this.minimum) + signedChange;
- if(value < 0){ value = 0; }
- if(value > count){ value = count; }
- value = value * (this.maximum - this.minimum) / count + this.minimum;
- this._setValueAttr(value, priorityChange);
- },
-
- _onClkBumper: function(val){
- if(this.disabled || this.readOnly || !this.clickSelect){ return; }
- this._setValueAttr(val, true);
- },
-
- _onClkIncBumper: function(){
- this._onClkBumper(this._descending === false ? this.minimum : this.maximum);
- },
-
- _onClkDecBumper: function(){
- this._onClkBumper(this._descending === false ? this.maximum : this.minimum);
- },
-
- decrement: function(/*Event*/ e){
- // summary:
- // Decrement slider
- // tags:
- // private
- this._bumpValue(e.charOrCode == dojo.keys.PAGE_DOWN ? -this.pageIncrement : -1);
- },
-
- increment: function(/*Event*/ e){
- // summary:
- // Increment slider
- // tags:
- // private
- this._bumpValue(e.charOrCode == dojo.keys.PAGE_UP ? this.pageIncrement : 1);
- },
-
- _mouseWheeled: function(/*Event*/ evt){
- // summary:
- // Event handler for mousewheel where supported
- dojo.stopEvent(evt);
- var janky = !dojo.isMozilla;
- var scroll = evt[(janky ? "wheelDelta" : "detail")] * (janky ? 1 : -1);
- this._bumpValue(scroll < 0 ? -1 : 1, true); // negative scroll acts like a decrement
- },
-
- startup: function(){
- if(this._started){ return; }
-
- dojo.forEach(this.getChildren(), function(child){
- if(this[child.container] != this.containerNode){
- this[child.container].appendChild(child.domNode);
- }
- }, this);
-
- this.inherited(arguments);
- },
-
- _typematicCallback: function(/*Number*/ count, /*Object*/ button, /*Event*/ e){
- if(count == -1){
- this._setValueAttr(this.value, true);
- }else{
- this[(button == (this._descending? this.incrementButton : this.decrementButton)) ? "decrement" : "increment"](e);
- }
- },
-
- buildRendering: function(){
- this.inherited(arguments);
- if(this.showButtons){
- this.incrementButton.style.display="";
- this.decrementButton.style.display="";
- }
-
- // find any associated label element and add to slider focusnode.
- var label = dojo.query('label[for="'+this.id+'"]');
- if(label.length){
- label[0].id = (this.id+"_label");
- dijit.setWaiState(this.focusNode, "labelledby", label[0].id);
- }
-
- dijit.setWaiState(this.focusNode, "valuemin", this.minimum);
- dijit.setWaiState(this.focusNode, "valuemax", this.maximum);
- },
-
- postCreate: function(){
- this.inherited(arguments);
-
- if(this.showButtons){
- this._connects.push(dijit.typematic.addMouseListener(
- this.decrementButton, this, "_typematicCallback", 25, 500));
- this._connects.push(dijit.typematic.addMouseListener(
- this.incrementButton, this, "_typematicCallback", 25, 500));
- }
- this.connect(this.domNode, !dojo.isMozilla ? "onmousewheel" : "DOMMouseScroll", "_mouseWheeled");
-
- // define a custom constructor for a SliderMover that points back to me
- var mover = dojo.declare(dijit.form._SliderMover, {
- widget: this
- });
- this._movable = new dojo.dnd.Moveable(this.sliderHandle, {mover: mover});
-
- this._layoutHackIE7();
- },
-
- destroy: function(){
- this._movable.destroy();
- if(this._inProgressAnim && this._inProgressAnim.status != "stopped"){
- this._inProgressAnim.stop(true);
- }
- this._supportingWidgets = dijit.findWidgets(this.domNode); // tells destroy about pseudo-child widgets (ruler/labels)
- this.inherited(arguments);
- }
-});
-
-dojo.declare("dijit.form._SliderMover",
- dojo.dnd.Mover,
-{
- onMouseMove: function(e){
- var widget = this.widget;
- var abspos = widget._abspos;
- if(!abspos){
- abspos = widget._abspos = dojo.position(widget.sliderBarContainer, true);
- widget._setPixelValue_ = dojo.hitch(widget, "_setPixelValue");
- widget._isReversed_ = widget._isReversed();
- }
- var coordEvent = e.touches ? e.touches[0] : e, // if multitouch take first touch for coords
- pixelValue = coordEvent[widget._mousePixelCoord] - abspos[widget._startingPixelCoord];
- widget._setPixelValue_(widget._isReversed_ ? (abspos[widget._pixelCount]-pixelValue) : pixelValue, abspos[widget._pixelCount], false);
- },
-
- destroy: function(e){
- dojo.dnd.Mover.prototype.destroy.apply(this, arguments);
- var widget = this.widget;
- widget._abspos = null;
- widget._setValueAttr(widget.value, true);
- }
-});
-
-}
+//>>built
+require({cache:{"url:dijit/form/templates/HorizontalSlider.html":"<table class=\"dijit dijitReset dijitSlider dijitSliderH\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\" rules=\"none\" data-dojo-attach-event=\"onkeypress:_onKeyPress,onkeyup:_onKeyUp\"\n\t><tr class=\"dijitReset\"\n\t\t><td class=\"dijitReset\" colspan=\"2\"></td\n\t\t><td data-dojo-attach-point=\"topDecoration\" class=\"dijitReset dijitSliderDecoration dijitSliderDecorationT dijitSliderDecorationH\"></td\n\t\t><td class=\"dijitReset\" colspan=\"2\"></td\n\t></tr\n\t><tr class=\"dijitReset\"\n\t\t><td class=\"dijitReset dijitSliderButtonContainer dijitSliderButtonContainerH\"\n\t\t\t><div class=\"dijitSliderDecrementIconH\" style=\"display:none\" data-dojo-attach-point=\"decrementButton\"><span class=\"dijitSliderButtonInner\">-</span></div\n\t\t></td\n\t\t><td class=\"dijitReset\"\n\t\t\t><div class=\"dijitSliderBar dijitSliderBumper dijitSliderBumperH dijitSliderLeftBumper\" data-dojo-attach-event=\"press:_onClkDecBumper\"></div\n\t\t></td\n\t\t><td class=\"dijitReset\"\n\t\t\t><input data-dojo-attach-point=\"valueNode\" type=\"hidden\" ${!nameAttrSetting}\n\t\t\t/><div class=\"dijitReset dijitSliderBarContainerH\" role=\"presentation\" data-dojo-attach-point=\"sliderBarContainer\"\n\t\t\t\t><div role=\"presentation\" data-dojo-attach-point=\"progressBar\" class=\"dijitSliderBar dijitSliderBarH dijitSliderProgressBar dijitSliderProgressBarH\" data-dojo-attach-event=\"press:_onBarClick\"\n\t\t\t\t\t><div class=\"dijitSliderMoveable dijitSliderMoveableH\"\n\t\t\t\t\t\t><div data-dojo-attach-point=\"sliderHandle,focusNode\" class=\"dijitSliderImageHandle dijitSliderImageHandleH\" data-dojo-attach-event=\"press:_onHandleClick\" role=\"slider\" valuemin=\"${minimum}\" valuemax=\"${maximum}\"></div\n\t\t\t\t\t></div\n\t\t\t\t></div\n\t\t\t\t><div role=\"presentation\" data-dojo-attach-point=\"remainingBar\" class=\"dijitSliderBar dijitSliderBarH dijitSliderRemainingBar dijitSliderRemainingBarH\" data-dojo-attach-event=\"press:_onBarClick\"></div\n\t\t\t></div\n\t\t></td\n\t\t><td class=\"dijitReset\"\n\t\t\t><div class=\"dijitSliderBar dijitSliderBumper dijitSliderBumperH dijitSliderRightBumper\" data-dojo-attach-event=\"press:_onClkIncBumper\"></div\n\t\t></td\n\t\t><td class=\"dijitReset dijitSliderButtonContainer dijitSliderButtonContainerH\"\n\t\t\t><div class=\"dijitSliderIncrementIconH\" style=\"display:none\" data-dojo-attach-point=\"incrementButton\"><span class=\"dijitSliderButtonInner\">+</span></div\n\t\t></td\n\t></tr\n\t><tr class=\"dijitReset\"\n\t\t><td class=\"dijitReset\" colspan=\"2\"></td\n\t\t><td data-dojo-attach-point=\"containerNode,bottomDecoration\" class=\"dijitReset dijitSliderDecoration dijitSliderDecorationB dijitSliderDecorationH\"></td\n\t\t><td class=\"dijitReset\" colspan=\"2\"></td\n\t></tr\n></table>\n"}});define("dijit/form/HorizontalSlider",["dojo/_base/array","dojo/_base/declare","dojo/dnd/move","dojo/_base/event","dojo/_base/fx","dojo/dom-geometry","dojo/dom-style","dojo/keys","dojo/_base/lang","dojo/_base/sniff","dojo/dnd/Moveable","dojo/dnd/Mover","dojo/query","../registry","../focus","../typematic","./Button","./_FormValueWidget","../_Container","dojo/text!./templates/HorizontalSlider.html"],function(_1,_2,_3,_4,fx,_5,_6,_7,_8,_9,_a,_b,_c,_d,_e,_f,_10,_11,_12,_13){var _14=_2("dijit.form._SliderMover",_b,{onMouseMove:function(e){var _15=this.widget;var _16=_15._abspos;if(!_16){_16=_15._abspos=_5.position(_15.sliderBarContainer,true);_15._setPixelValue_=_8.hitch(_15,"_setPixelValue");_15._isReversed_=_15._isReversed();}var _17=e[_15._mousePixelCoord]-_16[_15._startingPixelCoord];_15._setPixelValue_(_15._isReversed_?(_16[_15._pixelCount]-_17):_17,_16[_15._pixelCount],false);},destroy:function(e){_b.prototype.destroy.apply(this,arguments);var _18=this.widget;_18._abspos=null;_18._setValueAttr(_18.value,true);}});var _19=_2("dijit.form.HorizontalSlider",[_11,_12],{templateString:_13,value:0,showButtons:true,minimum:0,maximum:100,discreteValues:Infinity,pageIncrement:2,clickSelect:true,slideDuration:_d.defaultDuration,_setIdAttr:"",baseClass:"dijitSlider",cssStateNodes:{incrementButton:"dijitSliderIncrementButton",decrementButton:"dijitSliderDecrementButton",focusNode:"dijitSliderThumb"},_mousePixelCoord:"pageX",_pixelCount:"w",_startingPixelCoord:"x",_handleOffsetCoord:"left",_progressPixelSize:"width",_onKeyUp:function(e){if(this.disabled||this.readOnly||e.altKey||e.ctrlKey||e.metaKey){return;}this._setValueAttr(this.value,true);},_onKeyPress:function(e){if(this.disabled||this.readOnly||e.altKey||e.ctrlKey||e.metaKey){return;}switch(e.charOrCode){case _7.HOME:this._setValueAttr(this.minimum,false);break;case _7.END:this._setValueAttr(this.maximum,false);break;case ((this._descending||this.isLeftToRight())?_7.RIGHT_ARROW:_7.LEFT_ARROW):case (this._descending===false?_7.DOWN_ARROW:_7.UP_ARROW):case (this._descending===false?_7.PAGE_DOWN:_7.PAGE_UP):this.increment(e);break;case ((this._descending||this.isLeftToRight())?_7.LEFT_ARROW:_7.RIGHT_ARROW):case (this._descending===false?_7.UP_ARROW:_7.DOWN_ARROW):case (this._descending===false?_7.PAGE_UP:_7.PAGE_DOWN):this.decrement(e);break;default:return;}_4.stop(e);},_onHandleClick:function(e){if(this.disabled||this.readOnly){return;}if(!_9("ie")){_e.focus(this.sliderHandle);}_4.stop(e);},_isReversed:function(){return !this.isLeftToRight();},_onBarClick:function(e){if(this.disabled||this.readOnly||!this.clickSelect){return;}_e.focus(this.sliderHandle);_4.stop(e);var _1a=_5.position(this.sliderBarContainer,true);var _1b=e[this._mousePixelCoord]-_1a[this._startingPixelCoord];this._setPixelValue(this._isReversed()?(_1a[this._pixelCount]-_1b):_1b,_1a[this._pixelCount],true);this._movable.onMouseDown(e);},_setPixelValue:function(_1c,_1d,_1e){if(this.disabled||this.readOnly){return;}var _1f=this.discreteValues;if(_1f<=1||_1f==Infinity){_1f=_1d;}_1f--;var _20=_1d/_1f;var _21=Math.round(_1c/_20);this._setValueAttr(Math.max(Math.min((this.maximum-this.minimum)*_21/_1f+this.minimum,this.maximum),this.minimum),_1e);},_setValueAttr:function(_22,_23){this._set("value",_22);this.valueNode.value=_22;this.focusNode.setAttribute("aria-valuenow",_22);this.inherited(arguments);var _24=(_22-this.minimum)/(this.maximum-this.minimum);var _25=(this._descending===false)?this.remainingBar:this.progressBar;var _26=(this._descending===false)?this.progressBar:this.remainingBar;if(this._inProgressAnim&&this._inProgressAnim.status!="stopped"){this._inProgressAnim.stop(true);}if(_23&&this.slideDuration>0&&_25.style[this._progressPixelSize]){var _27=this;var _28={};var _29=parseFloat(_25.style[this._progressPixelSize]);var _2a=this.slideDuration*(_24-_29/100);if(_2a==0){return;}if(_2a<0){_2a=0-_2a;}_28[this._progressPixelSize]={start:_29,end:_24*100,units:"%"};this._inProgressAnim=fx.animateProperty({node:_25,duration:_2a,onAnimate:function(v){_26.style[_27._progressPixelSize]=(100-parseFloat(v[_27._progressPixelSize]))+"%";},onEnd:function(){delete _27._inProgressAnim;},properties:_28});this._inProgressAnim.play();}else{_25.style[this._progressPixelSize]=(_24*100)+"%";_26.style[this._progressPixelSize]=((1-_24)*100)+"%";}},_bumpValue:function(_2b,_2c){if(this.disabled||this.readOnly){return;}var s=_6.getComputedStyle(this.sliderBarContainer);var c=_5.getContentBox(this.sliderBarContainer,s);var _2d=this.discreteValues;if(_2d<=1||_2d==Infinity){_2d=c[this._pixelCount];}_2d--;var _2e=(this.value-this.minimum)*_2d/(this.maximum-this.minimum)+_2b;if(_2e<0){_2e=0;}if(_2e>_2d){_2e=_2d;}_2e=_2e*(this.maximum-this.minimum)/_2d+this.minimum;this._setValueAttr(_2e,_2c);},_onClkBumper:function(val){if(this.disabled||this.readOnly||!this.clickSelect){return;}this._setValueAttr(val,true);},_onClkIncBumper:function(){this._onClkBumper(this._descending===false?this.minimum:this.maximum);},_onClkDecBumper:function(){this._onClkBumper(this._descending===false?this.maximum:this.minimum);},decrement:function(e){this._bumpValue(e.charOrCode==_7.PAGE_DOWN?-this.pageIncrement:-1);},increment:function(e){this._bumpValue(e.charOrCode==_7.PAGE_UP?this.pageIncrement:1);},_mouseWheeled:function(evt){_4.stop(evt);var _2f=!_9("mozilla");var _30=evt[(_2f?"wheelDelta":"detail")]*(_2f?1:-1);this._bumpValue(_30<0?-1:1,true);},startup:function(){if(this._started){return;}_1.forEach(this.getChildren(),function(_31){if(this[_31.container]!=this.containerNode){this[_31.container].appendChild(_31.domNode);}},this);this.inherited(arguments);},_typematicCallback:function(_32,_33,e){if(_32==-1){this._setValueAttr(this.value,true);}else{this[(_33==(this._descending?this.incrementButton:this.decrementButton))?"decrement":"increment"](e);}},buildRendering:function(){this.inherited(arguments);if(this.showButtons){this.incrementButton.style.display="";this.decrementButton.style.display="";}var _34=_c("label[for=\""+this.id+"\"]");if(_34.length){_34[0].id=(this.id+"_label");this.focusNode.setAttribute("aria-labelledby",_34[0].id);}this.focusNode.setAttribute("aria-valuemin",this.minimum);this.focusNode.setAttribute("aria-valuemax",this.maximum);},postCreate:function(){this.inherited(arguments);if(this.showButtons){this._connects.push(_f.addMouseListener(this.decrementButton,this,"_typematicCallback",25,500));this._connects.push(_f.addMouseListener(this.incrementButton,this,"_typematicCallback",25,500));}this.connect(this.domNode,!_9("mozilla")?"onmousewheel":"DOMMouseScroll","_mouseWheeled");var _35=_2(_14,{widget:this});this._movable=new _a(this.sliderHandle,{mover:_35});this._layoutHackIE7();},destroy:function(){this._movable.destroy();if(this._inProgressAnim&&this._inProgressAnim.status!="stopped"){this._inProgressAnim.stop(true);}this._supportingWidgets=_d.findWidgets(this.domNode);this.inherited(arguments);}});_19._Mover=_14;return _19;}); \ No newline at end of file