You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
45 lines
1.0 KiB
45 lines
1.0 KiB
/* |
|
DynAPI Distribution |
|
ProgressBar class |
|
|
|
The DynAPI Distribution is distributed under the terms of the GNU LGPL license. |
|
|
|
Requires: DynLayer, ScrollBar |
|
*/ |
|
|
|
function ProgressBar(orient,x,y,w,h,value,min,max,style){ |
|
this.DynLayer = DynLayer; |
|
this.DynLayer(null,x,y,w,h); |
|
|
|
this.w=w||20; |
|
this.h=h||20; |
|
this._min = min||0; |
|
this._max = max||100; |
|
this._value = (value<this._min ? this._min:(value>this._max ? this._max:value)); |
|
this._orient = (orient=='horz')? 'H':'V'; |
|
|
|
this.addChild(new DynLayer(),'lyrBar'); |
|
|
|
this.setStyle(style||'ProgressBar'); |
|
}; |
|
var p = dynapi.setPrototype('ProgressBar','DynLayer'); |
|
// Private |
|
p.VPaneOldSetSize = DynLayer.prototype.setSize; |
|
// Public |
|
p.setSize = function(w,h){ |
|
this.VPaneOldSetSize(w,h); |
|
this.renderStyle('resize'); |
|
}; |
|
p.getValue = function(){ |
|
return this._value; |
|
}; |
|
p.setValue = function(v){ |
|
this._value = (v<this._min ? this._min:(v>this._max ? this._max:v)); |
|
this.renderStyle('resize'); |
|
}; |
|
p.setRange = function(min,max){ |
|
this._min = min||0; |
|
this._max = max||100; |
|
this.setValue(this._value); |
|
}; |
|
|
|
|