home *** CD-ROM | disk | FTP | other *** search
Wrap
class mx.controls.ProgressBar extends mx.core.UIObject { var boundingBox_mc; var progTrackLeft_mc; var progTrackMiddle_mc; var progTrackRight_mc; var progBarLeft_mc; var progBarMiddle_mc; var progBarRight_mc; var progIndBar_mc; var mask_mc; var labelPath; var __width; var __height; var __source; var __stringSource; var si; var dispatchEvent; static var symbolName = "ProgressBar"; static var symbolOwner = Object(mx.controls.ProgressBar); var className = "ProgressBar"; static var version = "2.0.0.360"; var __mode = "event"; var __direction = "right"; var __labelPlacement = "bottom"; var __label = "LOADING %3%% "; var __conversion = 1; var __maximum = 0; var __minimum = 0; var __value = 0; var __indeterminate = false; var progTrackLeftName = "ProgTrackLeft"; var progTrackMiddleName = "ProgTrackMiddle"; var progTrackRightName = "ProgTrackRight"; var progBarLeftName = "ProgBarLeft"; var progBarMiddleName = "ProgBarMiddle"; var progBarRightName = "ProgBarRight"; var progIndBarName = "ProgIndBar"; var idNames = new Array("progTrackLeft_mc","progTrackMiddle_mc","progTrackRight_mc","progBarLeft_mc","progBarMiddle_mc","progBarRight_mc","progIndBar_mc"); var skinIDProgTrackLeft = 0; var skinIDProgTrackMiddle = 1; var skinIDProgTrackRight = 2; var skinIDProgBarLeft = 3; var skinIDProgBarMiddle = 4; var skinIDProgBarRight = 5; var skinIDProgIndBar = 6; var skinIDMask = 100; var skinIDLabel = 200; var __interval = 30; var __leave = 2; var clipParameters = {mode:1,source:1,direction:1,label:1,labelPlacement:1,conversion:1}; static var mergedClipParameters = mx.core.UIObject.mergeClipParameters(mx.controls.ProgressBar.prototype.clipParameters,mx.core.UIObject.prototype.clipParameters); function ProgressBar() { super(); } function init(Void) { super.init(); this.tabEnabled = false; this.boundingBox_mc._visible = false; this.boundingBox_mc._width = this.boundingBox_mc._height = 0; } function createChildren(Void) { if(this.progTrackLeft_mc == undefined) { this.setSkin(this.skinIDProgTrackLeft,this.progTrackLeftName); } if(this.progTrackMiddle_mc == undefined) { this.setSkin(this.skinIDProgTrackMiddle,this.progTrackMiddleName); } if(this.progTrackRight_mc == undefined) { this.setSkin(this.skinIDProgTrackRight,this.progTrackRightName); } if(this.progBarLeft_mc == undefined) { this.setSkin(this.skinIDProgBarLeft,this.progBarLeftName); } if(this.progBarMiddle_mc == undefined) { this.setSkin(this.skinIDProgBarMiddle,this.progBarMiddleName); } if(this.progBarRight_mc == undefined) { this.setSkin(this.skinIDProgBarRight,this.progBarRightName); } if(this.progIndBar_mc == undefined) { this.setSkin(this.skinIDProgIndBar,this.progIndBarName); this.progIndBar_mc._visible = false; } if(this.mask_mc == undefined) { this.mask_mc = this.createObject("BoundingBox","mask_mc",this.skinIDMask); this.mask_mc._visible = false; this.progIndBar_mc.setMask(this.mask_mc); } if(this.labelPath == undefined) { this.labelPath = this.createLabel("labelPath",this.skinIDLabel); this.labelPath.tabEnabled = false; this.labelPath.selectable = false; this.labelPath.styleName = this; } this.setSize(this.__width,this.__height); } function size(Void) { this.invalidate(); } function draw(Void) { if(this.__source == undefined && this.__stringSource != undefined) { this.setSource(this.__stringSource); this.__stringSource = undefined; } var _loc14_ = this.__width; var _loc22_ = this.__height; var _loc5_ = this.progBarLeft_mc._width <= this.progTrackLeft_mc._width ? this.progTrackLeft_mc._width : this.progBarLeft_mc._width; var _loc6_ = this.progBarLeft_mc._height <= this.progTrackLeft_mc._height ? this.progTrackLeft_mc._height : this.progBarLeft_mc._height; var _loc15_ = this.progBarRight_mc._width <= this.progTrackRight_mc._width ? this.progTrackRight_mc._width : this.progBarRight_mc._width; var _loc7_ = _loc14_; var _loc8_ = 0; var _loc9_ = 0; if(this.__labelPlacement == "top") { _loc8_ = _loc22_ - _loc6_; } if(this.__label != undefined && this.__label != "") { this.labelPath._visible = false; var _loc11_ = 1; var _loc20_ = 1; var _loc18_ = 5; var _loc26_ = 4; var _loc12_ = this.__value - this.__minimum; if(_loc12_ < 0) { _loc12_ = 0; } var _loc13_ = this.__maximum - this.__minimum; if(_loc13_ < 0) { _loc13_ = 0; } if(this.__labelPlacement == "left" || this.__labelPlacement == "right") { var _loc4_ = this.__label; if(!this.__indeterminate) { _loc4_ = this.replace(_loc4_,"%1",String(Math.floor(_loc13_ / this.__conversion))); _loc4_ = this.replace(_loc4_,"%2",String(Math.floor(_loc13_ / this.__conversion))); _loc4_ = this.replace(_loc4_,"%3",String(100)); _loc4_ = this.replace(_loc4_,"%%","%"); } else { _loc4_ = this.replace(_loc4_,"%1",String(Math.floor(_loc12_ / this.__conversion))); _loc4_ = this.replace(_loc4_,"%2","??"); _loc4_ = this.replace(_loc4_,"%3",""); _loc4_ = this.replace(_loc4_,"%%",""); } this.labelPath.text = _loc4_; _loc7_ = _loc14_ - (this.labelPath.textWidth + _loc18_ + _loc11_); if(_loc7_ < _loc5_ + _loc15_) { _loc7_ = 0; } if(this.__labelPlacement == "left") { _loc9_ = _loc14_ - _loc7_; } } var _loc3_ = this.__label; if(!this.__indeterminate) { _loc3_ = this.replace(_loc3_,"%1",String(Math.floor(_loc12_ / this.__conversion))); _loc3_ = this.replace(_loc3_,"%2",String(Math.floor(_loc13_ / this.__conversion))); _loc3_ = this.replace(_loc3_,"%3",String(Math.floor(this.percentComplete))); _loc3_ = this.replace(_loc3_,"%%","%"); } else { _loc3_ = this.replace(_loc3_,"%1",String(Math.floor(_loc12_ / this.__conversion))); _loc3_ = this.replace(_loc3_,"%2","??"); _loc3_ = this.replace(_loc3_,"%3",""); _loc3_ = this.replace(_loc3_,"%%",""); } this.labelPath.text = _loc3_; var _loc10_ = 0; if(this.__labelPlacement == "left" || this.__labelPlacement == "right") { _loc10_ = _loc14_ - _loc7_ - _loc11_; } else { _loc10_ = _loc14_ - _loc11_; } if(_loc10_ < this.labelPath.textWidth + _loc18_) { this.labelPath._width = _loc10_; } else { this.labelPath._width = this.labelPath.textWidth + _loc18_; } if(this.__labelPlacement == "left" || this.__labelPlacement == "right" || this.__labelPlacement == "center") { _loc10_ = _loc22_; } else { _loc10_ = _loc22_ - _loc20_ - _loc6_; } if(_loc10_ < this.labelPath.textHeight + _loc26_) { this.labelPath._height = _loc10_; } else { this.labelPath._height = this.labelPath.textHeight + _loc26_; } if(this.__labelPlacement == "left") { this.labelPath._x = _loc11_; } else if(this.__labelPlacement == "right") { this.labelPath._x = _loc7_ + _loc11_; } else { this.labelPath._x = _loc11_; } if(this.__labelPlacement == "center" || this.__labelPlacement == "left" || this.__labelPlacement == "right") { this.labelPath._y = _loc6_ / 2 - this.labelPath.height / 2; } else if(this.__labelPlacement == "top") { this.labelPath._y = _loc8_ - _loc20_ - this.labelPath.height; } else { this.labelPath._y = _loc6_ + _loc20_; } this.labelPath._visible = true; } else { this.labelPath.text = ""; this.labelPath._visible = false; } if(_loc7_ >= _loc5_ + _loc15_) { var _loc2_ = this.progTrackLeft_mc.getBounds(this.progTrackLeft_mc); var _loc42_ = - _loc2_.xMin; var _loc41_ = - _loc2_.yMin; this.progTrackLeft_mc.move(_loc9_ + _loc5_ - this.progTrackLeft_mc._width + _loc42_,_loc8_ + (_loc6_ - this.progTrackLeft_mc._height) / 2 + _loc41_); _loc2_ = this.progTrackMiddle_mc.getBounds(this.progTrackMiddle_mc); var _loc38_ = - _loc2_.xMin; var _loc35_ = - _loc2_.yMin; this.progTrackMiddle_mc.setSize(_loc7_ - _loc5_ - _loc15_,this.progTrackMiddle_mc._height); this.progTrackMiddle_mc.move(_loc9_ + _loc5_ + _loc38_,_loc8_ + (_loc6_ - this.progTrackLeft_mc._height) / 2 + _loc35_); _loc2_ = this.progTrackRight_mc.getBounds(this.progTrackRight_mc); var _loc31_ = - _loc2_.xMin; var _loc32_ = - _loc2_.yMin; this.progTrackRight_mc.move(_loc9_ + _loc5_ + this.progTrackMiddle_mc._width + _loc31_,_loc8_ + (_loc6_ - this.progTrackRight_mc._height) / 2 + _loc32_); var _loc21_ = _loc7_ - _loc5_ - _loc15_; var _loc16_ = _loc21_ * this.percentComplete / 100; var _loc17_ = 0; if(this.__indeterminate == true) { _loc16_ = _loc21_; this.mask_mc._width = _loc16_; this.mask_mc._height = this.progIndBar_mc._height; this.mask_mc._x = _loc9_ + _loc5_; this.mask_mc._y = _loc8_ + (_loc6_ - this.progIndBar_mc._height) / 2; this.progIndBar_mc._width = _loc7_ * 200 / 150; var _loc28_ = this.progIndBar_mc._x; _loc2_ = this.progIndBar_mc.getBounds(this.progIndBar_mc); §§push(0); §§push(_loc2_.xMin); } else { this.progIndBar_mc._visible = false; if(this.__direction == "left") { _loc17_ = _loc21_ - _loc16_; } _loc2_ = this.progBarMiddle_mc.getBounds(this.progBarMiddle_mc); var _loc40_ = - _loc2_.xMin; var _loc39_ = - _loc2_.yMin; this.progBarMiddle_mc.setSize(_loc16_,this.progBarMiddle_mc._height); this.progBarMiddle_mc.move(_loc17_ + _loc9_ + _loc5_ + _loc40_,_loc8_ + (_loc6_ - this.progBarLeft_mc._height) / 2 + _loc39_); _loc2_ = this.progBarLeft_mc.getBounds(this.progBarLeft_mc); var _loc36_ = - _loc2_.xMin; var _loc33_ = - _loc2_.yMin; this.progBarLeft_mc.move(_loc17_ + _loc9_ + _loc5_ - this.progBarLeft_mc._width + _loc36_,_loc8_ + (_loc6_ - this.progBarLeft_mc._height) / 2 + _loc33_); _loc2_ = this.progBarRight_mc.getBounds(this.progBarRight_mc); var _loc34_ = - _loc2_.xMin; var _loc37_ = - _loc2_.yMin; this.progBarRight_mc.move(_loc17_ + _loc9_ + _loc5_ + this.progBarMiddle_mc._width + _loc34_,_loc8_ + (_loc6_ - this.progBarRight_mc._height) / 2 + _loc37_); this.progTrackLeft_mc._visible = true; this.progTrackMiddle_mc._visible = true; this.progTrackRight_mc._visible = true; this.progBarLeft_mc._visible = true; this.progBarMiddle_mc._visible = true; this.progBarRight_mc._visible = true; } } else { this.progTrackLeft_mc._visible = false; this.progTrackMiddle_mc._visible = false; this.progTrackRight_mc._visible = false; this.progBarLeft_mc._visible = false; this.progBarMiddle_mc._visible = false; this.progBarRight_mc._visible = false; } } function replace(str, from, to) { var _loc1_ = str.split(from); var _loc2_ = _loc1_.join(to); return _loc2_; } function getMode(Void) { return this.__mode; } function setMode(val) { if(val == "polled" || val == "manual") { this.__mode = val; } else { delete this.__mode; } this.invalidate(); } function getDirection(Void) { return this.__direction; } function setDirection(val) { if(val == "left") { this.__direction = val; } else { delete this.__direction; } this.invalidate(); } function getLabelPlacement(Void) { return this.__labelPlacement; } function setLabelPlacement(val) { if(val == "top" || val == "center" || val == "left" || val == "right") { this.__labelPlacement = val; } else { delete this.__labelPlacement; } this.invalidate(); } function getIndeterminate(Void) { return this.__indeterminate; } function setIndeterminate(val) { if(val == true) { this.__indeterminate = true; } else { delete this.__indeterminate; } this.invalidate(); } function getLabel(Void) { return this.__label; } function setLabel(val) { this.__label = val; this.invalidate(); } function getConversion(Void) { return this.__conversion; } function setConversion(val) { if(!_global.isNaN(val) && Number(val) > 0) { this.__conversion = Number(val); this.invalidate(); } } function getSource(Void) { return this.__source; } function setSource(val) { if(typeof val == "string") { this.__stringSource = val; val = eval(val); } if(val != null && val != undefined && val != "") { this.__source = val; if(this.__mode == "event") { if(this.__source.addEventListener) { this.__source.addEventListener("progress",this); this.__source.addEventListener("complete",this); } else { this.__source = undefined; } } if(this.__mode == "polled") { this.si = setInterval(this,"update",this.__interval); } } else if(this.__source != null) { delete this.__source; clearInterval(this.si); delete this.si; } } function update(Void) { var _loc2_ = this.__source; var _loc3_ = _loc2_.getBytesLoaded(); var _loc4_ = _loc2_.getBytesTotal(); this._setProgress(_loc3_,_loc4_); if(this.percentComplete >= 100 && this.__value > 0) { clearInterval(this.si); } } function progress(pEvent) { var _loc2_ = pEvent.target; var _loc3_ = _loc2_.bytesLoaded; var _loc4_ = _loc2_.bytesTotal; this._setProgress(_loc3_,_loc4_); } function complete(pEvent) { } function _setProgress(completed, total) { if(!_global.isNaN(completed) && !_global.isNaN(total)) { this.__value = Number(completed); this.__maximum = Number(total); if(this.__mode != "event") { this.dispatchEvent({type:"progress",current:completed,total:total}); if(this.__value == this.__maximum && this.__value > 0) { this.dispatchEvent({type:"complete",current:completed,total:total}); } } this.invalidate(); } } function setProgress(completed, total) { if(this.__mode == "manual") { this._setProgress(completed,total); } } function getPercentComplete(Void) { if(this.__value < this.__minimum || this.__maximum < this.__minimum) { return 0; } var _loc3_ = 100 * (this.__value - this.__minimum) / (this.__maximum - this.__minimum); if(_global.isNaN(_loc3_) || _loc3_ < 0) { return 0; } if(_loc3_ > 100) { return 100; } return _loc3_; } function getMaximum(Void) { return this.__maximum; } function setMaximum(val) { if(!_global.isNaN(val) && this.__mode == "manual") { this.__maximum = Number(val); this.invalidate(); } } function getMinimum(Void) { return this.__minimum; } function setMinimum(val) { if(!_global.isNaN(val) && this.__mode == "manual") { this.__minimum = Number(val); this.invalidate(); } } function getVal(Void) { return this.__value; } function get mode() { return this.getMode(); } function set mode(x) { this.setMode(x); } function get source() { return this.getSource(); } function set source(x) { this.setSource(x); } function get direction() { return this.getDirection(); } function set direction(x) { this.setDirection(x); } function get label() { return this.getLabel(); } function set label(x) { this.setLabel(x); } function get labelPlacement() { return this.getLabelPlacement(); } function set labelPlacement(x) { this.setLabelPlacement(x); } function get indeterminate() { return this.getIndeterminate(); } function set indeterminate(x) { this.setIndeterminate(x); } function get conversion() { return this.getConversion(); } function set conversion(x) { this.setConversion(x); } function get percentComplete() { return this.getPercentComplete(); } function get maximum() { return this.getMaximum(); } function set maximum(x) { this.setMaximum(x); } function get minimum() { return this.getMinimum(); } function set minimum(x) { this.setMinimum(x); } function get value() { return this.getVal(); } }