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.
66 lines
2.4 KiB
66 lines
2.4 KiB
2 years ago
|
/*
|
||
|
DynAPI Distribution
|
||
|
ScrollBarStyle (Default)
|
||
|
|
||
|
The DynAPI Distribution is distributed under the terms of the GNU LGPL license.
|
||
|
|
||
|
Requires: StyleManager, ScrollBar
|
||
|
*/
|
||
|
|
||
|
function ScrollBarStyle(){
|
||
|
var style = new Style(); // create basic style object
|
||
|
style.styleName='ScrollBarStyle';
|
||
|
style.backColor = '#EEEEEE';
|
||
|
style.imageTrack = null;
|
||
|
style.loadImages = function(){
|
||
|
if(!this.imageUp) this.imageUp = Styles.getImage('arr_up.gif',9,9);
|
||
|
if(!this.imageDown) this.imageDown = Styles.getImage('arr_down.gif',9,9);
|
||
|
if(!this.imageLeft) this.imageLeft = Styles.getImage('arr_left.gif',9,9);
|
||
|
if(!this.imageRight) this.imageRight = Styles.getImage('arr_right.gif',9,9);
|
||
|
};
|
||
|
// initStyle will act as a function of the DynLayer object
|
||
|
style.initStyle = function(){
|
||
|
var style = this.style;
|
||
|
var up=this.btnUp;
|
||
|
var dn=this.btnDown;
|
||
|
var knob=this.knob;
|
||
|
|
||
|
knob.setLocalStyleAttribute('borderColor',this.getStyleAttribute('backColor')); //??
|
||
|
|
||
|
if (this._bartype=='V'){
|
||
|
knob.setAnchor({left:0,right:0});
|
||
|
DragEvent.setDragBoundary(knob,{left:0,right:0,top:16,bottom:16});
|
||
|
up.setAnchor({left:0,right:0,bottom:0,stretchV:16});
|
||
|
dn.setAnchor({left:0,right:0,top:0,stretchV:16});
|
||
|
this.lyrTrack.setAnchor({left:0,right:0,top:16,bottom:16});
|
||
|
}else{
|
||
|
knob.setAnchor({top:0,bottom:0});
|
||
|
DragEvent.setDragBoundary(knob,{left:16,right:16,top:0,bottom:0});
|
||
|
up.setAnchor({right:0,top:0,bottom:0,stretchH:16});
|
||
|
dn.setAnchor({left:0,bottom:0,top:0,stretchH:16});
|
||
|
this.lyrTrack.setAnchor({top:0,bottom:0,left:16,right:16});
|
||
|
}
|
||
|
this._adjustKnob();
|
||
|
this.renderStyle();
|
||
|
};
|
||
|
// renderStyle will act as a function of the DynLayer object
|
||
|
style.renderStyle = function(act){
|
||
|
var all=!act;
|
||
|
|
||
|
if(all){ // set other attributes if rendering all areas
|
||
|
var imgTrack = this.getStyleAttribute('imageTrack');
|
||
|
var up = (this._bartype=='V')? this.getStyleAttribute('imageDown'):this.getStyleAttribute('imageRight');
|
||
|
var dn = (this._bartype=='V')? this.getStyleAttribute('imageUp'):this.getStyleAttribute('imageLeft');
|
||
|
this.btnUp.setCaption(up.getHTML());
|
||
|
this.btnDown.setCaption(dn.getHTML());
|
||
|
if(!imgTrack) this.lyrTrack.setBgColor(this.getStyleAttribute('backColor'));
|
||
|
else this.lyrTrack.setBgImage(imgTrack.src);
|
||
|
}
|
||
|
};
|
||
|
// removeStyle will act as a function of the DynLayer object
|
||
|
// style.removeStyle = function(){};
|
||
|
return style;
|
||
|
}
|
||
|
|
||
|
StyleManager.addStyle('ScrollBar',ScrollBarStyle);
|