cacert-testmgr/external/ZendFramework-1.9.5/externals/dojo/dijit/form/VerticalSlider.js

63 lines
1.7 KiB
JavaScript
Raw Permalink Normal View History

dojo.provide("dijit.form.VerticalSlider");
dojo.require("dijit.form.HorizontalSlider");
dojo.declare(
"dijit.form.VerticalSlider",
dijit.form.HorizontalSlider,
{
// summary:
// A form widget that allows one to select a value with a vertically draggable handle
templatePath: dojo.moduleUrl('dijit.form','templates/VerticalSlider.html'),
_mousePixelCoord: "pageY",
_pixelCount: "h",
_startingPixelCoord: "y",
_startingPixelCount: "t",
_handleOffsetCoord: "top",
_progressPixelSize: "height",
// _descending: Boolean
// Specifies if the slider values go from high-on-top (true), or low-on-top (false)
// TODO: expose this in 1.2 - the css progress/remaining bar classes need to be reversed
_descending: true,
startup: function(){
if(this._started){ return; }
if(!this.isLeftToRight() && dojo.isMoz){
if(this.leftDecoration){this._rtlRectify(this.leftDecoration);}
if(this.rightDecoration){this._rtlRectify(this.rightDecoration);}
}
this.inherited(arguments);
},
_isReversed: function(){
// summary:
// Overrides HorizontalSlider._isReversed.
// Indicates if values are high on top (with low numbers on the bottom).
return this._descending;
},
_rtlRectify: function(decorationNode/*NodeList*/){
// summary:
// Helper function on gecko.
// Rectify children nodes for left/right decoration in rtl case.
// Simply switch the rule and label child for each decoration node.
// tags:
// private
var childNodes = [];
while(decorationNode.firstChild){
childNodes.push(decorationNode.firstChild);
decorationNode.removeChild(decorationNode.firstChild);
}
for(var i = childNodes.length-1; i >=0; i--){
if(childNodes[i]){
decorationNode.appendChild(childNodes[i]);
}
}
}
});