/*
Copyright (c) 2005,2006,2007 Stefan Pratter

Permission is hereby granted, free of charge, to any person
obtaining a copy of this software and associated documentation
files (the "Software"), to deal in the Software without
restriction, including without limitation the rights to use,
copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the
Software is furnished to do so, subject to the following
conditions:

The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE.
*/
 var VUI_BROWSER_INFO={name : 'unknown', version : 0 };if(window.opera){VUI_BROWSER_INFO.name='Opera';}else if (navigator.userAgent){var str=navigator.userAgent;if(str.indexOf("Firefox")!=-1){VUI_BROWSER_INFO.name='Firefox';}else if(str.indexOf("Netscape")!=-1){VUI_BROWSER_INFO.name='Netscape';}else if(str.indexOf("MSIE")!=-1){VUI_BROWSER_INFO.name='MSIE';}else if(str.indexOf("Gecko")!=-1){VUI_BROWSER_INFO.name='Mozilla';}}function vui_browser_version(name){if(name=='Mozilla')name=='rv';var str=navigator.userAgent || navigator.appVersion;if(!str)return 0;var index=str.indexOf(name);if(index==-1)return 0;return parseFloat(str.substring(index+name.length+1));}VUI_BROWSER_INFO.version=vui_browser_version(VUI_BROWSER_INFO.name);var VEGUIOBJ=[];var VUI_NODE=1;var VUI_MANAGER=3;var VUI_MOUSE_DOWN=1;var VUI_MOUSE_UP=2;var VUI_MOUSE_OVER=3;var VUI_MOUSE_OUT=4;var VUI_MOUSE_MOVE=5;var VUI_KEY_DOWN=6;var VUI_KEY_UP=7;var VUI_MOUSE_WHEEL=8;var VUI_FORM_BLUR=9;var VUI_FORM_FOCUS=10;var VUI_MOUSE_DBL_CLICK=11;var VUI_URL='';var VUI_UP=1;var VUI_DOWN=2;var VUI_LEFT=3;var VUI_RIGHT=4;var VUI_BACK=5;var VUI_FRONT=6;var VUI_HMOUSE_UP=0x01;var VUI_HMOUSE_DOWN=0x02;var VUI_HMOUSE_OVER=0x04;var VUI_HMOUSE_OUT=0x08;var VUI_HMOUSE_MOVE=0x10;var VUI_HMOUSE_WHEEL=0x4000;var VUI_HMOUSE_DBL_CLICK=0x100000;var VUI_HKEY_DOWN=0x10000;var VUI_HKEY_UP=0x20000;var VUI_HFORM_BLUR=0x40000;var VUI_HFORM_FOCUS=0x80000;var VUI_DISABLED=0x20;var VUI_TEMPLATE=0x40;var ADJUST_BODY_SIZE=true;var ELEMENT_MAX_INDEX=90000;var VUI_FOCUS_PASSIVE=1;var VUI_FOCUS_ACTIVE=2;var VUI_VERSION='2.1.4';var mouseX;var mouseY;var WINSHAD_CLASS='';var VUI_BROWSER_INFO={name : null };if(window.opera){VUI_BROWSER_INFO.name='opera';}else if (navigator.userAgent){var str=navigator.userAgent;if(str.indexOf("Firefox")!=-1){VUI_BROWSER_INFO.name='firefox';}else if(str.indexOf("Netscape")!=-1){VUI_BROWSER_INFO.name='netscape';}else if(str.indexOf("MSIE")!=-1){VUI_BROWSER_INFO.name='msie';}else if(str.indexOf("Gecko")!=-1){VUI_BROWSER_INFO.name='mozilla';}}function vui_module_add(type, module, filename){if(VEGUIOBJ[type]){var o=VEGUIOBJ[type];alert("vegUI ERROR: Colliding module type\n"+"Type ID: "+type+"\n"+"Used in "+o.filename+"\n"+"Used in "+filename+"\n" );return false;}VEGUIOBJ[type]={filename : filename, type : type, module : module };}var browser_str=navigator.userAgent.toLowerCase();function iesucks(Node){var i;if(Node.nodeName !='#text'){Node.onmousemove=null;Node.onmouseover=null;Node.onmouseout=null;Node.onmousedown=null;Node.onmousewheel=null;Node.onmouseup=null;Node.onkeydown=null;Node.onkeyup=null;Node.onkeypress=null;Node.onselectstart=null;Node.ondrag=null;for(i in Node.childNodes)iesucks(Node.childNodes[i]);}}if((browser_str.indexOf('msie')+1)){window.onunload=function(){iesucks(window);iesucks(document);};}function Clone(Obj){var i;if(!Obj)return;for(i in Obj){if(Obj[i]&& Obj[i].push)this[i]=cloneArray(Obj[i]);else if(typeof Obj[i]=='object' && Obj[i]!=null){this[i]=new Clone(Obj[i]);}else this[i]=Obj[i];}}function merge(srcObj, trgObj){var i;for(i in trgObj){if(typeof trgObj[i]=='object' && trgObj[i]!==null){if(!trgObj[i].unshift)srcObj[i]=new Clone(trgObj[i]);else srcObj[i]=cloneArray(trgObj[i]);}else srcObj[i]=trgObj[i];}}function cloneArray(Arr){if(!Arr || !Arr.push){if(typeof Arr=='object')return new Clone(Arr);else return Arr;}var newArr=[];var i;for(i in Arr)newArr[i]=cloneArray(Arr[i]);return newArr;}function has_parent(Node, Parent){var _p=Node;if(!_p)return false;while((_p=_p.parentNode)){if(_p==Parent)return true;}return false;}function get_mouse(e){if (e.pageX || e.pageY){mouseX=e.pageX;mouseY=e.pageY;}else if (e.clientX || e.clientY){mouseX=e.clientX+document.documentElement.scrollLeft;mouseY=e.clientY+document.documentElement.scrollTop;}}function htmlnode(nodeName, parentNode){var _node=document.createElement(nodeName);if(parentNode)parentNode.appendChild(_node);return _node;}function imgnode(src, w, h, parentNode){var _node=htmlnode('img', parentNode);_node.src=src;if(!isNaN(w)&& w > 0)_node.setAttribute('width', w);if(!isNaN(h)&& h > 0)_node.setAttribute('height', h);return _node;}function txtnode(txt){return document.createTextNode(txt);}function vui_rand(min, max){return (Math.round(Math.random()*max)+min);}function VegUIMouseState(eventType, Parent){this.Parent=Parent;this.type=eventType;this.Scripts=new VegUIDynFunc();this.P=this.Properties=[];}vui_module_add(VUI_NODE, VegUINode, 'vegui.std.js');function VegUINode(refName, Parent, Manager){this.refName=refName;this.Parent=Parent;this.Manager=Manager;this.type=VUI_NODE;this.Childs=this.C={};this.Template=this.T={Css : {}};this.Base=null;this.Css=null;this.hasFocus=false;this.canFocus=false;this.flags=0;this.BBox=new VegUIBBox(this);this.transparency=100;this.nodeId=this.refName+"_node";this.Attached={};this.States={};this.States[VUI_MOUSE_DOWN]=new VegUIMouseState(VUI_MOUSE_DOWN, this);this.States[VUI_MOUSE_OVER]=new VegUIMouseState(VUI_MOUSE_OVER, this);this.States[VUI_MOUSE_MOVE]=new VegUIMouseState(VUI_MOUSE_MOVE, this);this.States[VUI_MOUSE_OUT]=new VegUIMouseState(VUI_MOUSE_OUT, this);this.States[VUI_MOUSE_UP]=new VegUIMouseState(VUI_MOUSE_UP, this);this.States[VUI_MOUSE_DBL_CLICK]=new VegUIMouseState(VUI_MOUSE_DBL_CLICK, this);this.States[VUI_KEY_UP]=new VegUIMouseState(VUI_KEY_UP, this);this.States[VUI_KEY_DOWN]=new VegUIMouseState(VUI_KEY_DOWN, this);this.States[VUI_MOUSE_WHEEL]=new VegUIMouseState(VUI_MOUSE_WHEEL, this);this.States[VUI_FORM_FOCUS]=new VegUIMouseState(VUI_FORM_FOCUS, this);this.States[VUI_FORM_BLUR]=new VegUIMouseState(VUI_FORM_BLUR, this);this.on_state_change=function(){return false };this.T.nodeType='DIV';this.T.pos='absolute';this.abs_middle=function(stopAt){var x=this.abs_x(stopAt);var y=this.abs_y(stopAt);x=x+(this.width()/2);y=y+(this.height()/2);return [x, y];};this.abs_x=function(stopAt){if(!this.Base)return null;if(!stopAt)var stopAt=this.Manager.Base.parentNode;var _par=this.Base,x=this.x();while((_par=_par.parentNode)&& _par.style && _par !=stopAt)x+=parseInt(_par.style.left ? _par.style.left : _par.offsetLeft);return (x+this.Manager.x());};this.abs_y=function(stopAt){if(!this.Base)return null;if(!stopAt)var stopAt=this.Manager.Base.parentNode;var _par=this.Base, y=this.y();while((_par=_par.parentNode)&& _par.style && _par !==stopAt){y+=parseInt(_par.style.top ? _par.style.top : _par.offsetTop);}return (y+this.Manager.y());};this.add_child=function(name, type, nodeName, pos){var _e=this.Manager.get_new(type, this);_e.childName=name;this.C[name]=_e;if(nodeName)_e.T.nodeType=nodeName;if(pos !=undefined)_e.T.pos=pos;return _e;};this.add_child_o=function(name, Obj){Obj.childName=name;this.C[name]=Obj;Obj.Parent=this;this.align_childs(Obj);};this.add_skin=function(n,w,h,x,y,c,rm,bm,rm_nr,bm_nr,nN,i){var e=this.add_child(n, VUI_NODE);e.set_node((nN?nN:'div'), w, h, x, y);e.T.className=c;e.set_marg(rm,bm,rm_nr,bm_nr);if(i)e.T.img_src=i;return e;};this.align_childs=function(Child){var c, i, w, h, x ,y ;for(i in this.C){c=this.C[i];if(Child)c=Child;if(!c.Base)continue;w=x=h=y=null;if(!isNaN(c.rmarg)&& c.rmarg !==null)w=(this.width()-c.x()-c.rmarg);else if(!isNaN(c.rmarg_nr)&& c.rmarg_nr !==null)x=((this.width()-c.width())-c.rmarg_nr);if(!isNaN(c.bmarg)&& c.bmarg !==null)h=(this.height()-c.y()-c.bmarg);else if(!isNaN(c.bmarg_nr)&& c.bmarg_nr !==null)y=((this.height()-c.height())-c.bmarg_nr);if(w || h){c.resize(w, h);}if(x !==null || y !==null){c.move(x, y);}if(Child)return;}};this.attach=this.attach_node=function(Element, offsetX, offsetY, direction, z){if(Element.eleIdx==this.eleIdx)return;this.Attached[Element.eleIdx]={Element : Element, offsetX : offsetX, offsetY : offsetY, direction : direction, offsetZ : z };Element.attachTo={Element : this, offsetX : offsetX, offsetY : offsetY, direction : direction, offsetZ : z };if(Element.Base && this.Base){Element.stick(this, offsetX, offsetY, direction, z);}};this.build=this.build_node=function(toNode, takeNode){if(this.Base || (this.flags & VUI_TEMPLATE))return null;var i;if(!takeNode)this.Base=document.createElement(this.T.nodeType);else this.Base=takeNode;this.Css=this.Base.style;this.Base.id=this.nodeId;if(this.T.className)this.Base.className=this.T.className;if(!takeNode){this.move(this.T.x, this.T.y);this.resize(this.T.w, this.T.h, true);this.set_pos(this.T.pos, (this.T.z !==undefined ? this.T.z : 0));}this.rmarg=this.T.rmarg;this.bmarg=this.T.bmarg;this.rmarg_nr=this.T.rmarg_nr;this.bmarg_nr=this.T.bmarg_nr;if(this.T.micon){if(!(this.flags & VUI_HMOUSE_OUT))this.flags |=VUI_HMOUSE_OUT;if(!(this.flags & VUI_HMOUSE_OVER))this.flags |=VUI_HMOUSE_OVER;var micon=this.T.micon;this.States[VUI_MOUSE_OVER].Scripts.add(function(argArr){argArr[0].Css.cursor=micon });this.States[VUI_MOUSE_OUT].Scripts.add(function(argArr){argArr[0].Css.cursor='default' });}this.tgl_event((this.flags & VUI_HMOUSE_DOWN), VUI_MOUSE_DOWN, 'onmousedown', true);this.tgl_event((this.flags & VUI_HMOUSE_MOVE), VUI_MOUSE_MOVE, 'onmousemove', true);this.tgl_event((this.flags & VUI_HMOUSE_OVER), VUI_MOUSE_OVER, 'onmouseover', true);this.tgl_event((this.flags & VUI_HMOUSE_OUT), VUI_MOUSE_OUT, 'onmouseout',true);this.tgl_event((this.flags & VUI_HFORM_FOCUS), VUI_FORM_FOCUS, 'onfocus',true);this.tgl_event((this.flags & VUI_HFORM_BLUR), VUI_FORM_BLUR, 'onblur',true);this.tgl_event((this.flags & VUI_HMOUSE_DBL_CLICK), VUI_MOUSE_DBL_CLICK, 'ondblclick',true);if(this.T.nodeType=='input' || this.T.nodeType=='textarea' || this.T.nodeType=='select'){this.tgl_event((this.flags & VUI_HKEY_UP), VUI_KEY_UP, 'onkeyup',true);this.tgl_event((this.flags & VUI_HKEY_DOWN), VUI_KEY_DOWN, 'onkeydown',true);}this.blockIETransparency=(this.T.blockIETransparency);if(this.T.t){this.set_transparency(this.T.t);}if(this.T.img_src)this.Base.src=this.T.img_src;var css;for(css in this.T.Css){this.Css[css]=this.T.Css[css];}for(i in this.C){this.C[i].build(this.Base);}this.align_childs();if(this.T.innerHTML)this.Base.innerHTML=this.T.innerHTML;if(this.T.type)this.Base.setAttribute('type', this.T.type);this.dock(toNode);if(this.attachTo){this.stick(this.attachTo.Element, this.attachTo.offsetX, this.attachTo.offsetY, this.attachTo.direction, this.attachTo.offsetZ );}this.event_execute('onbuild');return 1;};this.call_ondock=function(){var c;this.event_execute('ondock');for(c in this.C)this.C[c].call_ondock();};this.check_focus=function(focusType){var c;if(!this.Manager.focusedElement)return 0;if(this==this.Manager.focusedElement){if(!focusType || focusType==this.hasFocus)return this.hasFocus;}var f;for(c in this.C){if((f=this.C[c].check_focus(focusType)))return f;}return 0;};this.clear=function(replacement){if(!this.Base)return 0;while(this.Base.childNodes[0])this.Base.removeChild(this.Base.childNodes[0]);if(replacement)this.Base.appendChild(replacement);};this.clone_event=function(Template){return (typeof Template=='function')? Template : new Clone(Template);};this.clone=this.clone_node=function(Template){var i, c;merge(this.T, Template.T);this.flags=Template.flags;for(i in Template.States){this.States[i].Scripts.Funcs=cloneArray(Template.States[i].Scripts.Funcs);merge(this.States[i].P, Template.States[i].P);}this.onmove=this.clone_event(Template.onmove);this.onresize=this.clone_event(Template.onresize);this.ondock=this.clone_event(Template.ondock);this.onchange=this.clone_event(Template.onchange);this.onkill=this.clone_event(Template.onkill);this.onfocusset=this.clone_event(Template.onfocusset);this.onfocuslose=this.clone_event(Template.onfocuslose);this.onbuild=this.clone_event(Template.onbuild);this.noAutoShow=Template.noAutoShow;this.BBox.set(Template.BBox.x, Template.BBox.y, Template.BBox.w, Template.BBox.h, Template.BBox.enabled );for(c in Template.C){if(!this.C[c]|| this.C[c].type !=Template.C[c].type)this.add_child(c, Template.C[c].type);this.C[c].clone(Template.C[c]);}return this;};this.clone_children=function(type, T, rec){var i;for(i in this.C){if(this.C[i].type==type){this.C[i].clone(T);if(rec)this.C[i].clone_children(type, T, rec);}}};this.control=function(Node){if(!Node)return;this.Base=Node;this.Css=Node.style;return this;};this.detach_node=this.detach=function(Element){if(this.Attached[Element.eleIdx]){Element.attachTo=null;delete this.Attached[Element.eleIdx];}};this.disable=this.disable_node=function(b){if(b && !(this.flags & VUI_DISABLED))this.flags |=VUI_DISABLED;else if(!b && (this.flags & VUI_DISABLED))this.flags ^=VUI_DISABLED;};this.dock=function(toNode, insertBefore){if(!this.Base)alert('CRITICAL ERROR: COULD NOT DOCK NODE TO DOCUMENT, REASON: NO NODE ('+this.refName+','+this.childName+')');if(!toNode || !this.Base)return;this.T={Css:{}};if(!insertBefore)toNode.appendChild(this.Base);else {toNode.insertBefore(this.Base, insertBefore);}this.call_ondock();};this.event_add=function(eventName, func, funcId){if(!this[eventName]|| !this[eventName].add){this[eventName]=new VegUIDynFunc();}this[eventName].add(func, funcId);};this.event_execute=function(eventName, args){if(!this[eventName])return;if(typeof this[eventName]=='function')return this[eventName](args);else if(this[eventName].execute)return this[eventName].execute([this, args]);};this.event_listener_set=function(eventName, func, n){if(!n)var n=this.Base;if(n.attachEvent){n.attachEvent(eventName, func);}else if(n.addEventListener){n.addEventListener(eventName.substr(2), func, false);}};this.find_common_parent=function(Obj){var p=this;while((p=p.Parent)&& p !=this.Manager ){if(Obj.is_parent(p))return p;}return null;};this.height=function(){if(!this.Base)return null;return (this.Css.height ? parseInt(this.Css.height): this.Base.offsetHeight);};this.hevent=this.hevent_node=function(eventType, mEvent){if(!this.Base || typeof(VUI_DISABLED)=="undefined" || (this.flags & VUI_DISABLED))return 0;var _state=this.States[eventType], _p=_state.P, i;if(_p.className){this.Base.className=_p.className;}this.mEvent=mEvent;if(eventType==VUI_MOUSE_WHEEL){if(mEvent.wheelDelta){this.delta=mEvent.wheelDelta/120;if(VUI_BROWSER_INFO.name=='Opera' && VUI_BROWSER_INFO.version <=9)this.delta=-this.delta;}else if (mEvent.detail)this.delta=-mEvent.detail/3;}else if(eventType==VUI_KEY_DOWN){this.aKey=mEvent.which ? mEvent.which : mEvent.keyCode;this.aKeyChar=String.fromCharCode(this.aKey);}else if(eventType !=VUI_KEY_UP){if(eventType==VUI_MOUSE_DOWN){this.aButton=mEvent.which ? mEvent.which : mEvent.button;}this.toE=(mEvent.relatedTarget || mEvent.toElement);}this.keyShift=mEvent.shiftKey ? true : false;this.keyCtrl=mEvent.ctrlKey ? true : false;this.keyAlt=mEvent.altKey ? true : false;_state.Scripts.execute([this]);this.on_state_change();return _state.Scripts.returnVal;};this.hide=function(b){if(!this.Base)return;var _c;this.Css.visibility=b ? 'hidden' : '';for(_c in this.C){if(!this.C[_c].noAutoShow)this.C[_c].hide();}this.event_execute('onhide');};this.is_hidden=function(){if(!this.Base)return null;return (this.Css.visibility=='hidden' ? true : false);};this.is_parent=function(Obj){var p=this;while((p=p.Parent)){if(p==Obj)return 1;}return 0;};this.kill=function(removeSelf, keepBase){if(this.Base && this.Base.parentNode && !keepBase){if((browser_str.indexOf('msie')+1))iesucks(this.Base);this.Base.parentNode.removeChild(this.Base);}this.event_execute('onkill', [removeSelf]);if(removeSelf){var c,p;for(c in this.C)this.C[c].kill(1);if(this.Parent)delete this.Parent.C[this.childName];delete this.Manager.E[this.eleIdx];if(this.winIdx){delete this.Manager.W[this.winIdx];}}};this.lose_focus=this.lose_focus_node=function(bail){var p=this;if(this.lockFocus)return false;this.hasFocus=false;this.Manager.focusedElement=null;this.Manager.focusedType=null;this.event_execute('onfocuslose');if(bail)return true;while((p=p.Parent)){if(p.canFocus){p.set_focus();return;}}};this.move=function(x, y){this.set_x(x);this.set_y(y);var a,A,z,l;for(a in this.Attached){A=this.Attached[a];if(!A.Element.Base)continue;A.Element.stick(this, A.offsetX, A.offsetY, A.direction, A.offsetZ);}this.event_execute('onmove');};this.overlaps=function(Node, yDiffS, yDiffT){if(!this.Base || !Node.Base)return 0;var x=this.x(), y=this.y(), b=this.y2(), r=this.x2();var tX=Node.x(), tY=Node.y(), tB=Node.y2(), tR=Node.x2();var h=this.height(), w=this.width(), tW=Node.width(), tH=Node.height();if(!isNaN(yDiffS)){y+=yDiffS;h-=yDiffS;}if(!isNaN(yDiffT)){tY+=yDiffT;tH-=yDiffT;}var olW=0, olH=0;if(x <=tX && r >=tR)olW=tW;else if(x <=tX && r <=tR && r >=tX)olW=r-tX;else if(x >=tX && r <=tR)olW=w;else if(x >=tX && r >=tR && x <=tR)olW=tR-x;if(!olW)return 0;if(y <=tY && b >=tB)olH=tH;else if(y <=tY && b <=tB && b >=tY)olH=b-tY;else if(y >=tY && b <=tB)olH=h;else if(y >=tY && b >=tB && y <=tB)olH=tB-y;if(!olW)return 0;return (olH*olW)/((tH*tW)/100);};this.resize=function(w, h, noAlign){this.set_width(w, 1);this.set_height(h, 1);if(!noAlign)this.align_childs();this.event_execute('onresize');return true;};this.set_focus=this.set_focus_node=function(focusType){if(this.check_focus(focusType))return 1;if(this.Manager.focusedElement){var E=this.Manager.focusedElement;if(!E.lockFocus)E.lose_focus(true);else return 0;}this.Manager.focusedElement=this;this.canFocus=true;this.hasFocus=(focusType ? focusType : VUI_FOCUS_PASSIVE);this.event_execute('onfocusset');this.Manager.focusedType=this.hasFocus;return 1;};this.set_height=function(n, noAlign){if(!this.Base || isNaN(n)|| n < 1)return;this.Css.height=n+"px";if(!noAlign)this.align_childs();};this.set_marg=function(rmarg, bmarg, rmarg_nr, bmarg_nr){this.T.rmarg=rmarg;this.T.bmarg=bmarg;this.T.rmarg_nr=rmarg_nr;this.T.bmarg_nr=bmarg_nr;};this.set=this.set_node=function(nodeType, w, h, x, y, pos, z){if(nodeType)this.T.nodeType=nodeType;if(!isNaN(w)&& w > 0)this.T.w=w;if(!isNaN(h)&& h > 0)this.T.h=h;if(x !=null)this.T.x=x;if(y !=null)this.T.y=y;if(pos)this.T.pos=pos;if(z)this.T.z=z;};this.set_pos=function(pos, n){if(!this.Base)return;if(pos)this.Css.position=pos;if(!isNaN(n)){this.Css.zIndex=n;var a,A;for(a in this.Attached){A=this.Attached[a];A.Element.stick(this, A.offsetX, A.offsetY, A.direction, A.offsetZ );}}};this.set_transparency=function(n, noIe){if(n > 100)var n=100;if(!noIe && !this.blockIETransparency)this.Css.filter='alpha(opacity='+n+')';this.Css.opacity=n/100;this.Css.MozOpacity=n/100;this.transparency=n;};this.set_width=function(n, noAlign){if(!this.Base || isNaN(n)|| n < 1)return;this.Css.width=n+"px";if(!noAlign)this.align_childs();};this.set_x=function(n){if(!this.Base || n===null || isNaN(n)|| this.BBox.validate(n, null))return;this.Css.left=n+"px";};this.set_y=function(n){if(!this.Base || n===null || isNaN(n)|| this.BBox.validate(null, n))return;this.Css.top=n+"px";};this.stick=function(toElement, offsetX, offsetY, direction, offsetZ){if(!toElement.Base || !this.Base)return;if(!offsetZ)var offsetZ=1;this.dock(toElement.Base.parentNode);switch(direction){case VUI_BACK: this.Css.zIndex=parseInt(toElement.Css.zIndex)-offsetZ;break;case VUI_FRONT: this.Css.zIndex=parseInt(toElement.Css.zIndex)+offsetZ;break;default: break;}this.move(toElement.x()+offsetX, toElement.y()+offsetY );};this.tgl_event=function(b, eventType, nodeProp, ret){if(b){var Obj=this;this.States[eventType].Scripts.returnVal=ret;this.event_listener_set(nodeProp, function(e){if(!e)var e=event;return Obj.hevent(eventType, e)});}else if(this.Base[nodeProp])this.Base[nodeProp]=null;};this.undock=function(){if(!this.Base || !this.Base.parentNode)return null;var _par=this.Base.parentNode;_par.removeChild(this.Base);return _par;};this.width=function(){if(!this.Base)return null;return (this.Css.width ? parseInt(this.Css.width): this.Base.offsetWidth);};this.x=function(){if(this.Css.left !=='')return (this.Base ? (parseInt(this.Css.left)|| 0): null);else return this.Base.offsetLeft;};this.x2=function(){if(!this.Base)return null;return (this.x()+this.width());};this.y=function(){if(this.Css.top !=='')return (this.Base ? (parseInt(this.Css.top)|| 0): null);else return this.Base.offsetTop;};this.y2=function(){if(!this.Base)return null;return (this.y()+this.height());};}vui_module_add(VUI_MANAGER, VegUIManager, 'vegui.std.js');function VegUIManager(refName){this.constructor=VegUINode;this.constructor(refName, null, this);this.type=VUI_MANAGER;this.eleIdx=0;this.winIdx=0;this.Elements=this.E={};this.Windows=this.W={};this.blockKeys=[];this.Manager=this;this.Bridge=null;this.FX=null;this.Taskbar=null;this.flags |=VUI_HMOUSE_UP | VUI_HMOUSE_OUT | VUI_HMOUSE_MOVE;this.block_key=function(keyCode){var i;for(i=0;i < keyCode.length;i++)this.blockKeys.push(keyCode[i]);};this.build_element=function(VegUIObj, toNode){if(!this.Base)return;if(!toNode){var toNode=VegUIObj.Parent && VegUIObj.Parent.Base ? VegUIObj.Parent.Base : this.Base;}return VegUIObj.build(toNode);};this.build_elements=function(){if(!this.Base || !arguments.length)return null;if(arguments[arguments.length-1].nodeName){var toNode=arguments[arguments.length-1];}else var toNode=null;var i;for(i=0;i < arguments.length;i++){if(!arguments[i].eleIdx)continue;this.build_element(arguments[i], toNode);}};this.build=this.build_manager=function(toNode, takeBody){var Manager=this;if(!this.build_node(null, (takeBody ? document.body : null)))return null;this.tgl_event(true, VUI_MOUSE_UP, 'onmouseup');this.States[VUI_MOUSE_UP].Scripts.add(function(argArr){var Obj=argArr[0];if(Obj.focusedElement)Obj.focusedElement.hevent(VUI_MOUSE_UP, Obj.mEvent);});this.onkeydown=function(e){if(!e)var e=window.event;Manager.hevent(VUI_KEY_DOWN, e);if(Manager.key_is_blocked(Manager.aKey))return false;return true;};if(VUI_BROWSER_INFO.name=='opera')document.onkeypress=this.onkeydown;else document.onkeydown=this.onkeydown;this.onkeyup=function(e){if(!e)var e=window.event;Manager.hevent(VUI_KEY_UP, e);if(Manager.key_is_blocked(Manager.aKey))return false;return true;};document.onkeyup=this.onkeyup;if(window.addEventListener){var mwname=(VUI_BROWSER_INFO.name=='opera' ? 'mousewheel' : 'DOMMouseScroll');window.addEventListener(mwname, function(e){if(!e)var e=window.event;if(Manager.focusedElement && Manager.focusedType==VUI_FOCUS_ACTIVE){if(e.preventDefault)e.preventDefault();e.returnValue=false;}Manager.hevent(VUI_MOUSE_WHEEL, e);}, false );}else {this.event_listener_set('onmousewheel', function(e){if(!e)var e=window.event;if(Manager.focusedElement && Manager.focusedType==VUI_FOCUS_ACTIVE){if(e.preventDefault)e.preventDefault();e.returnValue=false;}Manager.hevent(VUI_MOUSE_WHEEL, e);}, document );}this.States[VUI_KEY_DOWN].Scripts.add(function(argArr){if(argArr[0].focusedElement)argArr[0].focusedElement.hevent(VUI_KEY_DOWN, argArr[0].mEvent);});this.States[VUI_KEY_UP].Scripts.add(function(argArr){if(argArr[0].focusedElement)argArr[0].focusedElement.hevent(VUI_KEY_UP, argArr[0].mEvent);});this.States[VUI_MOUSE_WHEEL].Scripts.add(function(argArr){if(argArr[0].focusedElement)argArr[0].focusedElement.hevent(VUI_MOUSE_WHEEL, argArr[0].mEvent);});this.tgl_event(true, VUI_MOUSE_OUT, 'onmouseout');this.States[VUI_MOUSE_OUT].Scripts.add(function(argArr){var Obj=argArr[0];var toE=(Obj.mEvent.relatedTarget || Obj.mEvent.toElement);if(Obj.focusedElement && toE !=Obj.Base && toE !=Obj.focusedElement.Base){if(!has_parent(toE, Obj.Base))Obj.hevent(VUI_MOUSE_UP, Obj.mEvent);}});this.Css.overflow='hidden';this.dock(toNode);if(ADJUST_BODY_SIZE){document.body.style.width=(this.width()+50)+"px";document.body.style.height=(this.height()+50)+"px";}this.States[VUI_MOUSE_MOVE].Scripts.add(function(argArr){get_mouse(argArr[0].mEvent);});return 1;};this.clone_elements=function(T){var i;for(i=1;i < arguments.length;i++){arguments[i].clone(T);}};this.evalme=function(code){eval(code);};this.get_clone=function(Template, Parent){return this.get_new(null, Parent, Template);};this.get_free_idx=function(){var i=0, idx=(Math.round(Math.random()*ELEMENT_MAX_INDEX)+1);while(this.E[idx]&& i < ELEMENT_MAX_INDEX){idx=(Math.round(Math.random()*ELEMENT_MAX_INDEX)+1);i++;}if(i==ELEMENT_MAX_INDEX)idx=null;return idx;};this.get_new=function(type, Parent, Template){var _idx=this.get_free_idx();var _refName=this.refName+".E["+_idx+"]";var _e=this.E[_idx]=new VEGUIOBJ[(Template ? Template.type : type)].module(_refName, Parent, this);if(Template)_e.clone(Template);_e.eleIdx=_idx;return _e;};this.include=function(path, ondone, async){if(!path || !this.Bridge)return null;var Man=this;var process=function(){Man.evalme(this.request.responseText);if(ondone)ondone();};this.Bridge.send(path, null, 'GET', process, async);};this.init_bridge=function(){this.Bridge=new VegUIBridge();return this.Bridge;};this.init_fx=function(interval){this.FX=new VegUIFXManager(this);this.FX.init(interval);return this.FX;};this.key_is_blocked=function(keyCode){var i;for(i=0;i < this.blockKeys.length;i++){if(this.blockKeys[i]==keyCode)return true;}return false;};this.set=this.set_manager=function(w,h,x,y){this.set_node('DIV', w, h, x, y);this.nodeId=this.refName+"_node";};this.unblock_key=function(keyCode){var i,n, index=[];for(i=0;i < keyCode.length;i++){for(n=0;n < this.blockKeys.length;n++){if(this.blockKeys[n]==keyCode[i]){index.push(n);}}}for(i=0;i < index.length;i++)delete this.blockKeys[index[i]];};this.WinShadow=this.add_child('WinShadow', VUI_NODE);this.WinShadow.T.className=WINSHAD_CLASS;this.WinShadow.T.Css.visibility='hidden';}VegUIManager.prototype=VegUINode;function VegUIBBox(VegUIElement){this.Parent=VegUIElement;this.correct=function(){if(!this.enabled)return;this.enabled=false;if(this.Parent.y2()> this.y2)this.Parent.move(0,this.Parent.y()-(this.Parent.y2()-this.y2));else if(this.Parent.y()< this.y)this.Parent.move(0,this.y);if(this.Parent.x2()> this.x2)this.Parent.move(this.Parent.x()-(this.Parent.x2()-this.x2));else if(this.Parent.x()< this.x)this.Parent.move(this.x,0);this.enabled=true;};this.set=function(x, y, w, h, b, c){this.x=x;this.x2=w+x;this.y=y;this.y2=h+y;this.w=w;this.h=h;this.enabled=b;this.c=c;if(c)this.correct(c);};this.validate=function(x, y){if(isNaN(x))var x=this.Parent.x();if(isNaN(y))var y=this.Parent.y();var ew=this.Parent.width();var eh=this.Parent.height();this.bumped=0;if(!this.enabled)return 0;else if(!isNaN(x)&& x !==null && x < this.x)this.bumped=VUI_LEFT;else if(!isNaN(x)&& x !==null && (x+ew)> (this.x+this.w))this.bumped=VUI_RIGHT;else if(!isNaN(y)&& y !==null && y < this.y)this.bumped=VUI_UP;else if(!isNaN(y)&& y !==null && (y+eh)> (this.y+this.h))this.bumped=VUI_DOWN;else this.bumped=0;return this.bumped;};}function VegUIDynFunc(returnVal){this.Funcs={_l : 0, _p : function(fn){this[this._l]=fn;this._l++;}};this.returnVal=returnVal || false;this.add=function(fn,id){if(id){this.Funcs[id]=fn;}else this.Funcs._p(fn);};this.execute=function(argArr){var i, returnVal=this.returnVal;for(i in this.Funcs){if(typeof this.Funcs[i]!='function' || i=='_p')continue;this.Funcs[i](argArr);}return returnVal;};this.free=function(id){delete this.Funcs[id];};}var VUI_WIN=7;vui_module_add(VUI_WIN, VegUIWindow, 'vegui.window.class.js');var WINSHAD_CLASS='win_shad';var VUI_WIN_Z=500;var VUI_WIN_Z_SPACE=5;var VUI_KILL_ON_CLOSE=0x200;var VUI_NORESIZE_W=0x400;var VUI_NORESIZE_H=0x800;var VUI_NORESIZE=VUI_NORESIZE_W | VUI_NORESIZE_H;var VUI_NOMOVE_X=0x1000;var VUI_NOMOVE_Y=0x2000;var VUI_NOMOVE=VUI_NOMOVE_X | VUI_NOMOVE_Y;var VUI_NOMAXIMIZE=0x40000;var VUI_NOMINIMIZE=0x80000;var VUI_NOTASK=0x100000;function VegUIWindow(refName, Parent, Manager){this.constructor=VegUINode;this.constructor(refName, Parent, Manager);this.type=VUI_WIN;this.Skin=this.add_child('Skin', VUI_NODE);this.Ui=this.add_child('Ui', VUI_NODE);this.Header=this.Ui.add_child('Header', VUI_BUTTON);this.Caption=this.Header.add_child('Caption', VUI_NODE);this.RC_R=this.Ui.add_child('RC_R', VUI_BUTTON);this.RC_B=this.Ui.add_child('RC_B', VUI_BUTTON);this.RC_RB=this.Ui.add_child('RC_RB', VUI_BUTTON);this.BtnClose=this.Ui.add_child('BtnClose', VUI_BUTTON);this.BtnMinimize=this.Ui.add_child('BtnMinimize', VUI_BUTTON);this.BtnMaximize=this.Ui.add_child('BtnMaximize', VUI_BUTTON);this.Skin.set_marg(0,0);this.Ui.set_marg(0,0);this.RC_R.T.rmarg_nr=-10;this.RC_R.T.bmarg=5;this.RC_R.T.w=13;this.RC_R.T.z=255;this.RC_B.T.rmarg=5;this.RC_B.T.bmarg_nr=-10;this.RC_B.T.h=13;this.RC_B.T.z=255;this.RC_RB.T.rmarg_nr=-10;this.RC_RB.T.bmarg_nr=-10;this.RC_RB.T.h=15;this.RC_RB.T.w=15;this.RC_RB.T.z=255;this.Header.set_marg(-1);this.BtnClose.T.rmarg_nr=2;this.BtnClose.set(0, 2);this.Caption.set(null, null, null, 10, 3);this.Header.T.h=20;this.Header.T.micon='move';this.Header.T.z=20;this.BtnClose.T.z=21;this.BtnMinimize.T.z=21;this.BtnMaximize.T.z=21;this.Skin.T.z=0;this.Ui.T.z=1;this.bMaximized=0;this.RC_B.flags=this.RC_RB.flags=(this.RC_R.flags |=VUI_HMOUSE_MOVE);this.WinShadow=this.Manager.WinShadow;this.flags |=VUI_HMOUSE_DOWN;this.build=this.build_win=function(toNode){var Win=this;if(!this.build_node())return null;this.Header.States[VUI_MOUSE_DOWN].Scripts.add(function(){Win.tgl_drag(1);});this.Header.States[VUI_MOUSE_UP].Scripts.add(function(){Win.tgl_drag(0);});this.BtnClose.States[VUI_MOUSE_UP].Scripts.add(function(){Win.close();});this.BtnMaximize.States[VUI_MOUSE_UP].Scripts.add(function(){Win.maximize();});this.BtnMinimize.States[VUI_MOUSE_UP].Scripts.add(function(){Win.minimize();});this.RC_R.States[VUI_MOUSE_MOVE].Scripts.add(function(argArr){argArr[0].Css.cursor='e-resize';});this.RC_B.States[VUI_MOUSE_MOVE].Scripts.add(function(argArr){argArr[0].Css.cursor='s-resize';});this.RC_RB.States[VUI_MOUSE_MOVE].Scripts.add(function(argArr){argArr[0].Css.cursor='se-resize';});this.RC_R.States[VUI_MOUSE_OUT].Scripts.add(function(argArr){argArr[0].Css.cursor='default';});this.RC_B.States[VUI_MOUSE_OUT].Scripts.add(function(argArr){argArr[0].Css.cursor='default';});this.RC_RB.States[VUI_MOUSE_OUT].Scripts.add(function(argArr){argArr[0].Css.cursor='default';});this.RC_R.States[VUI_MOUSE_DOWN].Scripts.add(function(){Win.tgl_resize(1);});this.RC_R.States[VUI_MOUSE_UP].Scripts.add(function(){Win.tgl_resize(0);});this.RC_B.States[VUI_MOUSE_DOWN].Scripts.add(function(){Win.tgl_resize(1);});this.RC_B.States[VUI_MOUSE_UP].Scripts.add(function(){Win.tgl_resize(0);});this.RC_RB.States[VUI_MOUSE_DOWN].Scripts.add(function(){Win.tgl_resize(1);});this.RC_RB.States[VUI_MOUSE_UP].Scripts.add(function(){Win.tgl_resize(0);});this.States[VUI_MOUSE_DOWN].Scripts.add(function(){Win.set_focus(null,true);});this.title=this.T.winTitle;this.minW=this.T.minW || 0;this.maxW=this.T.maxW || this.Manager.width();this.minH=this.T.minH || 0;this.maxH=this.T.maxH || this.Manager.height();this.maxX=this.T.maxX || 0;this.maxY=this.T.maxY || 0;this.pushZ=this.T.pushZ || 0;this.set_caption(this.title);this.dock(toNode);this.set_focus(null, true);if(this.Manager.Taskbar){this.Manager.Taskbar.taskbutton_add(this);}return 1;};this.clone=this.clone_win=function(Template){this.clone_node(Template);this.ontofront=this.clone_event(Template.ontofront);this.ontoback=this.clone_event(Template.ontoback);this.onwinfocus=this.clone_event(Template.onwinfocus);this.onminimize=this.clone_event(Template.onminimize);this.onmaximize=this.clone_event(Template.onmaximize);return this;};this.close=function(){if((this.flags & VUI_KILL_ON_CLOSE)){this.kill(1);}else this.hide(1);var i,z=0,W,SW;for(i in this.Manager.W){W=this.Manager.W[i];if(W && W.Css && !W.is_hidden()&& W.eleIdx !=this.eleIdx && parseInt(W.Css.zIndex)> z){SW=this.Manager.W[i];z=parseInt(SW.Css.zIndex);}}if(SW){SW.set_focus(VUI_FOCUS_ACTIVE, true);}this.event_execute('onclose');};this.drag=function(){var x=mouseX;var y=mouseY;if(!this.bDrag)return;this.WinShadow.move((!(this.flags & VUI_NOMOVE_X)? this.WinShadow.x()-(this.lastDragX-x): null ), (!(this.flags & VUI_NOMOVE_Y)? this.WinShadow.y()-(this.lastDragY-y): null ));this.lastDragY=y;this.lastDragX=x;};this.maximize=function(){if(this.flags & VUI_NOMAXIMIZE)return 0;if(this.flags & VUI_NORESIZE_H || this.flags & VUI_NORESIZE_W)return 0;if(!this.bMaximized){this.origX=this.x();this.origY=this.y();this.origW=this.width();this.origH=this.height();this.move(this.maxX, this.maxY);this.resize(this.maxW, this.maxH);}else {this.move(this.origX, this.origY);this.resize(this.origW, this.origH);}this.bMaximized ^=1;if(this.onmaximize)this.onmaximize(this.bMaximized);};this.minimize=function(){if(this.flags & VUI_NOMINIMIZE)return 0;this.hide(1);this.event_execute('onminimize');};this.mresize=function(dir){var x=mouseX;var y=mouseY;var w=this.WinShadow.width()-(this.lastDragX-x);var h=this.WinShadow.height()-(this.lastDragY-y);if(dir=='e-resize' && !(this.flags & VUI_NORESIZE_W)&& w >=this.minW && w <=this.maxW)this.WinShadow.resize(w, null);else if(dir=='s-resize' && !(this.flags & VUI_NORESIZE_H)&& h >=this.minH && h <=this.maxH)this.WinShadow.resize(null, h);else if(dir=='se-resize'){this.WinShadow.resize(((!(this.flags & VUI_NORESIZE_W)&& w >=this.minW && w <=this.maxW)? this.WinShadow.width()-(this.lastDragX-x): null ), ((!(this.flags & VUI_NORESIZE_H)&& h >=this.minH && h <=this.maxH)? this.WinShadow.height()-(this.lastDragY-y): null ));}this.lastDragX=x;this.lastDragY=y;};this.put_shadow=function(){this.WinShadow.set_pos('absolute', VUI_WIN_Z*100);this.WinShadow.resize(this.width(), this.height());this.WinShadow.move(this.x(), this.y());this.WinShadow.hide(0);};this.set=this.set_win=function(title, w, h, x, y){if(title)this.T.winTitle=title;this.set_node(null, w, h, x, y);};this.set_caption=function(txt){this.winTitle=txt;this.Caption.clear(document.createTextNode(txt));};this.set_focus=this.set_focus_win=function(focusType, bringToFront){var hadFocus, M=this.Manager;if(! (hadFocus=this.check_focus(focusType)))this.set_focus_node(focusType);if(!bringToFront)return;this.set_pos(null, VUI_WIN_Z+this.pushZ);this.event_execute('ontofront');var lastZ=this.Css.zIndex;var w, z, i=1, W, l;var zArr=[];for(w in M.W){W=M.W[w];if(W==this || !W.Css)continue;zArr.push(W);}zArr.sort(function(W1,W2){return W2.Css.zIndex-W1.Css.zIndex;});for(w=0, l=zArr.length;w < l;w++){W=zArr[w];W.set_pos(null, lastZ-(i+=VUI_WIN_Z_SPACE));W.event_execute('ontoback');}if(!hadFocus)this.event_execute('onwinfocus');};this.show=function(){this.hide(0);this.set_focus(VUI_FOCUS_ACTIVE, true);if(this.Manager.Taskbar){this.Manager.Taskbar.taskbutton_add(this);}};this.tgl_drag=function(b){this.Header.lockFocus=this.bDrag=b;var Win=this;if(b){this.Manager.States[VUI_MOUSE_MOVE].Scripts.add(function(argArr){Win.drag();}, 'windrg' );this.lastDragX=mouseX;this.lastDragY=mouseY;this.put_shadow();}else {this.Manager.States[VUI_MOUSE_MOVE].Scripts.free('windrg');this.move(this.WinShadow.x(), this.WinShadow.y());this.WinShadow.hide(1);}};this.tgl_resize=function(b){if(this.bDrag)return;var cursor;var Win=this;this.RC_R.lockFocus=this.RC_B.lockFocus=this.RC_RB.lockFocus=b;if(this.RC_R.Css.cursor=='e-resize')cursor='e-resize';else if(this.RC_B.Css.cursor=='s-resize')cursor='s-resize';else if(this.RC_RB.Css.cursor='se-resize')cursor='se-resize';this.bResize=b;if(b && cursor){this.Manager.States[VUI_MOUSE_MOVE].Scripts.add(function(argArr){Win.mresize(cursor);}, 'winrsz' );this.lastDragX=mouseX;this.lastDragY=mouseY;this.put_shadow();}else {this.Manager.States[VUI_MOUSE_MOVE].Scripts.free('winrsz');this.resize(this.WinShadow.width(), this.WinShadow.height());this.WinShadow.hide(1);}};this.onclose=function(){return true;};this.onwinfocus=function(){return true;};this.ontofront=function(){return true;};this.ontoback=function(){return true;};this.onminimize=function(){return true;};this.onmaximize=function(){return true;};this.Manager.W[this.Manager.winIdx]=this;this.winIdx=this.Manager.winIdx;this.Manager.winIdx++;}VegUIWindow.prototype=VegUINode;var VUI_TABBEDDIALOG=11;var VUI_TAB=12;vui_module_add(VUI_TABBEDDIALOG, VegUITabbedDialog, 'vegui.tabbeddialog.class.js');vui_module_add(VUI_TAB, VegUITab, 'vegui.tabbeddialog.class.js');function VegUITabbedDialog(refName, Parent, Manager){this.constructor=VegUINode;this.constructor(refName, Parent, Manager);this.type=VUI_TABBEDDIALOG;this.tabW=0;this.Tabs={};this.tabNum=0;this.TplTab=this.add_child('TplTab', VUI_TAB);this.TplTab.flags |=VUI_TEMPLATE;this.add_tab=function(tabName, tabCaption, tabW){if(!tabW)var tabW=120;var Tab=this.Tabs[tabName]=this.add_child('Tab_'+tabName, VUI_TAB);Tab._tabW=tabW;Tab._tabCaption=tabCaption;return Tab;};this.build=this.build_tabdlg=function(toNode){var t, Tab, fTab;this.tabSpacing=this.T.tabSpacing || 0;for(t in this.Tabs){Tab=this.Tabs[t];if(!fTab)fTab=Tab;Tab.set(null, null, 3, 28, Tab._tabW, (this.tabW), Tab._tabCaption, 3);Tab.set_marg(4,4);Tab.clone(this.TplTab);Tab.flags ^=VUI_TEMPLATE;Tab.Tabs=this.Tabs;Tab.Tab.T.z=10;this.tabW+=(Tab._tabW+this.tabSpacing);}if(!this.build_node())return null;fTab.focus();this.dock(toNode);return 1;};this.set=this.set_tabdlg=function(w,h,x,y,tabSpacing){this.set_node('div', w, h, x, y);if(!isNaN(tabSpacing))this.T.tabSpacing=tabSpacing;};}VegUITabbedDialog.prototype=VegUINode;function VegUITab(refName, Parent, Manager){this.constructor=VegUINode;this.constructor(refName, Parent, Manager);this.Tab=this.add_child('Tab', VUI_BUTTON);this.TabCaption=this.Tab.add_child('Caption', VUI_NODE);this.Panel=this.add_child('Panel', VUI_NODE);this.Tabs=[];this.Tab.set(0,-25, null, 25);this.Tab.T.z=2;this.Panel.set_marg(0,0);this.type=VUI_TAB;this.build=this.build_tab=function(toNode){this.Tab.T.w=this.T.tabW || 120;this.Tab.T.x=this.T.tabX || 0;if(!this.build_node())return null;this.Tab.States[VUI_MOUSE_DOWN].Scripts.add(function(argArr){argArr[0].Parent.focus();});this.tabSelOff=this.T.tabSelOff;this.tabCaption=this.T.tabCaption;this.TabCaption.Base.appendChild(document.createTextNode(this.tabCaption));this.focus();this.dock(toNode);return 1;};this.focus=function(){var t,i=0;for(t in this.Tabs){var tab=this.Tabs[t];if(!tab.Base)continue;if(!tab.inBack){tab.Tab.move(null, tab.Tab.y()+this.tabSelOff);tab.inBack=true;tab.Panel.hide(1);}tab.Css.zIndex=i++;}this.Css.zIndex=i++;if(this.inBack){this.Tab.move(null, this.Tab.y()-this.tabSelOff);this.inBack=false;this.Panel.hide(0);}};this.set=this.set_tab=function(w,h,x,y,tabW,tabX,tabCaption,tabSelOff){this.set_node('div',w,h,x,y);if(tabCaption)this.T.tabCaption=tabCaption;if(tabW)this.T.tabW=tabW;if(tabX)this.T.tabX=tabX;if(tabSelOff)this.T.tabSelOff=tabSelOff;};}VegUITab.prototype=VegUINode;var VUI_SCROLL=6;vui_module_add(VUI_SCROLL, VegUIScrollbar, 'vegui.scrollbar.class.js');function VegUIScrollbar(refName, Parent, Manager){this.constructor=VegUINode;this.constructor(refName, Parent, Manager);this.type=VUI_SCROLL;this.T.scrollDir='y';this.CHolder=null;this.Content=null;this.Btn1=this.add_child('Btn1', VUI_BUTTON);this.Btn2=this.add_child('Btn2', VUI_BUTTON);this.Btn3=this.add_child('Btn3', VUI_BUTTON);this.Btn1.T.z=2;this.Btn2.T.z=2;this.Btn3.T.z=0;this.T.scrollSpeed=20;this.T.scrollStep=5;this.asa=function(){return (!this.is_x()? (this.height()-this.Btn1.height()-this.Btn2.height()): (this.width()-this.Btn1.width()-this.Btn2.width()));};this.build=this.build_scroll=function(toNode){this.dir=this.T.scrollDir;this.skipButtonAlign=this.T.skipButtonAlign;if(!this.skipButtonAlign){if(!this.is_x()){this.Btn2.T.bmarg_nr=0;this.Btn3.T.rmarg=0;}else {this.Btn2.T.rmarg_nr=0;this.Btn3.T.bmarg=0;}}this.scrollSpeed=this.T.scrollSpeed;this.scrollStep=this.T.scrollStep;if(!this.build_node())return null;this.Btn1.States[VUI_MOUSE_DOWN].Scripts.add(function(argArr){argArr[0].Parent.tgl_scroll(1,0);});this.Btn2.States[VUI_MOUSE_DOWN].Scripts.add(function(argArr){argArr[0].Parent.tgl_scroll(1,1);});this.Btn1.States[VUI_MOUSE_UP].Scripts.add(function(argArr){argArr[0].Parent.tgl_scroll(0);});this.Btn2.States[VUI_MOUSE_UP].Scripts.add(function(argArr){argArr[0].Parent.tgl_scroll(0);});this.Btn3.States[VUI_MOUSE_UP].Scripts.add(function(argArr){argArr[0].Parent.tgl_drag(0);});this.Btn3.States[VUI_MOUSE_DOWN].Scripts.add(function(argArr){argArr[0].Parent.tgl_drag(1);});if(!this.is_x()){this.Btn3.onresize=function(){this.BBox.set(0, this.Parent.Btn1.height(), this.Parent.width(), this.Parent.asa(), true, true );};}else {this.Btn3.onresize=function(){this.BBox.set(this.Parent.Btn1.width(), 0, this.Parent.asa(), this.Parent.height(), true, true );};}this.sync();this.Css.overflow='hidden';this.dock(toNode);return 1;};this.disable=this.disable_scroll=function(b){this.disable_node(b);this.Btn1.disable(b);this.Btn2.disable(b);this.Btn3.disable(b);};this.drag=function(x, y){if(!this.bDrag)return;if(!this.is_x()){this.Btn3.move(null, this.Btn3.y()-(this.lastDragY-y));this.lastDragY=y;}else {this.Btn3.move(this.Btn3.x()-(this.lastDragX-x), null);this.lastDragX=x;}this.sync(1);};this.is_x=function(){return (this.dir=='x' ? true : false);};this.link=function(CHolder, Content){this.CHolder=CHolder;this.Content=Content;this.update_content_boundary();this.sync();};this.overflow=function(){if(!this.CHolder || !this.Content)return 0;var res=(!this.is_x()? (this.Content.height()/this.CHolder.height()): (this.Content.width()/this.CHolder.width()));if(isNaN(res))res=0;return (res < 1?0:res);};this.scroll=function(dir, rep){if(!this.is_x()){if(!dir){if(this.Content.y()< 0)this.Content.move(null, this.Content.y()+this.scrollStep);}else this.Content.move(null, this.Content.y()-this.scrollStep);}else {if(!dir){if(this.Content.x()< 0)this.Content.move(this.Content.x()+this.scrollStep, null);}else this.Content.move(this.Content.x()-this.scrollStep, null);}this.sync();if(this.Content.BBox.bumped || this.Btn3.BBox.bumped){this.tgl_scroll(0);}else if(!isNaN(rep)&& rep)this.scroll(dir, (rep-1));};this.set=this.set_scroll=function(dir, x, y, w, h){if(dir)this.T.scrollDir=dir;this.set_node(null, w, h, x, y);};this.sync=function(b){var mod;if(!b){if(!this.is_x()){if(this.overflow()<=1){this.Btn3.move(0, this.Btn1.height());this.Btn3.resize(0, this.asa());}else {var f=(this.asa()/this.overflow());if(f >=this.Btn3.origH)this.Btn3.resize(null, f);else this.Btn3.resize(null, this.Btn3.origH);var cov_bar=this.Btn3.height()/(this.asa()/100);var cov_con=this.CHolder.height()/(this.Content.height()/100);if(cov_bar > cov_con)var cov_diff=1-(Math.abs(cov_bar-cov_con)/100);else var cov_diff=1+(Math.abs(cov_bar-cov_con)/100);var pos_bcon=Math.abs(this.Content.y())/(this.Content.height()/100);mod=((this.asa()/100)*(pos_bcon*cov_diff))+this.Btn1.height();this.Btn3.BBox.enabled=false;this.Btn3.move(null, mod);this.Btn3.BBox.enabled=true;this.Btn3.BBox.correct();}}else {if(this.overflow()<=1){this.Btn3.move(this.Btn1.width(), 0);this.Btn3.resize(this.asa(), 0);}else {var f=(this.asa()/this.overflow());if(f >=this.Btn3.origW)this.Btn3.resize(f, null);else this.Btn3.resize(this.Btn3.origW, null);var cov_bar=this.Btn3.width()/(this.asa()/100);var cov_con=this.CHolder.width()/(this.Content.width()/100);if(cov_bar > cov_con)var cov_diff=1-(Math.abs(cov_bar-cov_con)/100);else var cov_diff=1+(Math.abs(cov_bar-cov_con)/100);var pos_bcon=Math.abs(this.Content.x())/(this.Content.width()/100);mod=((this.asa()/100)*(pos_bcon*cov_diff))+this.Btn1.width();this.Btn3.BBox.enabled=false;this.Btn3.move(mod,null);this.Btn3.BBox.enabled=true;this.Btn3.BBox.correct();}}}else {if(!this.is_x()){var pos_bar=(this.Btn3.y()-this.Btn1.height())/((this.asa()-this.Btn3.height())/100);mod=-(((this.Content.height()-this.CHolder.height())/100)*pos_bar);this.Content.move(null, mod);}else {var pos_bar=(this.Btn3.x()-this.Btn1.width())/((this.asa()-this.Btn3.width())/100);mod=-(((this.Content.width()-this.CHolder.width())/100)*pos_bar);this.Content.move(mod, null);}}this.disable(this.overflow()<=1);};this.tgl_drag=function(b){if(b){var _Scroll=this;this.Manager.States[VUI_MOUSE_MOVE].Scripts.add(function(argArr){_Scroll.drag(mouseX, mouseY);}, 'scrldrg' );this.lastDragX=mouseX;this.lastDragY=mouseY;}else {this.Manager.States[VUI_MOUSE_MOVE].Scripts.free('scrldrg');}this.bDrag=b;};this.tgl_scroll=function(b, dir){if(b){this.tgl_scroll(0);var SB=this;this.scrollInterval=setInterval(function(){SB.scroll(dir);}, this.scrollSpeed );}else {clearInterval(this.scrollInterval);this.scrollIntervall=null;}};this.update_content_boundary=function(){if(!this.Content)return;var y_diff=this.Content.height()-this.CHolder.height();var x_diff=this.Content.width()-this.CHolder.width();if(x_diff < 1)x_diff=0;if(y_diff < 1)y_diff=0;this.Content.BBox.set((0-x_diff)-5, (0-y_diff)-5, this.CHolder.width()+(x_diff*2)+5, this.CHolder.height()+(y_diff*2)+5, true, true );};}VegUIScrollbar.prototype=VegUINode;var VUI_MENU=9;var VUI_MENU_ITEM=10;vui_module_add(VUI_MENU, VegUIMenu, 'vegui.menu.class.js');vui_module_add(VUI_MENU_ITEM, VegUIMenuItem, 'vegui.menu.class.js');function VegUIMenu(refName, Parent, Manager){this.constructor=VegUINode;this.constructor(refName, Parent, Manager);this.type=VUI_MENU;this.itemIdx=0;this.noAutoShow=1;this.Items=this.I={};this.Skin=this.add_child('Skin', VUI_NODE);this.Table=this.add_child('Table', VUI_NODE, 'TABLE');this.Tbody=this.Table.add_child('Tbody', VUI_NODE, 'TBODY');this.TRow=this.add_child('TRow', VUI_MENU_ITEM);this.Table.T.pos='absolute';this.Table.T.Css.borderCollapse='collapse';this.Table.set_marg(0,0);this.Table.T.Css.padding='0px';this.Tbody.T.Css.padding='0px';this.TRow.T.pos=this.Tbody.T.pos='static';this.T.closeTime=2500;this.T.nestedSpace=3;this.Skin.set_marg(0,0);this.RootMenu=this;this.ParentMenu=null;this.ChildMenu=[];this.FriendMenu=[];this.TRow.flags |=VUI_TEMPLATE;this.flags |=VUI_HMOUSE_OUT | VUI_HMOUSE_OVER;this.add_item=function(content, script, lIcon){var M=this;var _idx=this.itemIdx++;var item=this.Tbody.add_child(('Item'+_idx), VUI_MENU_ITEM);item.clone(this.TRow);item.set(content, script, lIcon);item.flags ^=VUI_TEMPLATE;item.mnuIdx=_idx;this.I[_idx]=item;item.States[VUI_MOUSE_OVER].Scripts.add(function(){if(!has_parent(item.toE, item.Base)){M.close_children();}}, 'close_children' );if(this.Base){this.Manager.build_element(item);this.resize(null, (this.TRow.LCell.T.h*this.itemIdx)+this.Table.y()+parseInt(this.Table.bmarg));}return item;};this.befriend=function(FMArr, noSpread){var i;this.FriendMenu.length=0;for(i in FMArr){if(FMArr[i]!=this){this.FriendMenu.push(FMArr[i]);if(!noSpread)FMArr[i].befriend(FMArr, true);}}};this.build=this.build_menu=function(toNode){this.States[VUI_MOUSE_OVER].Scripts.add(function(argArr){argArr[0].RootMenu.CloseTimer=clearTimeout(argArr[0].RootMenu.CloseTimer);argArr[0].isActive=true;argArr[0].RootMenu.set_focus(VUI_FOCUS_ACTIVE);});this.States[VUI_MOUSE_OUT].Scripts.add(function(argArr){var Obj=argArr[0];var toE=Obj.toE;if(!has_parent(toE, Obj.Base)&& toE !=Obj.Base){Obj.isActive=false;Obj.RootMenu.init_close();}});var M=this;this.onfocuslose=function(){M.RootMenu.close();};this.Skin.T.z=0;this.Table.T.z=1;this.noCorrection=this.T.noCorrection;this.fxNoFade=this.T.fxNoFade || false;this.fxFadeTime=this.T.fxFadeTime || 300;this.fxFadeLimitIn=this.T.fxFadeLimitIn || 100;this.fxFadeLimitOut=this.T.fxFadeLimitOut || 0;if(!this.build_node())return null;this.closeTime=this.T.closeTime;this.arrowImg=this.T.arrowImg;this.nestedSpace=this.T.nestedSpace || 5;this.hide(1);this.resize(null, (this.TRow.LCell.T.h*(this.itemIdx?this.itemIdx:1))+this.Table.y()+parseInt(this.Table.bmarg));this.dock(toNode);return 1;};this.close=function(p){var p=this.RootMenu.get_tail();if(this.RootMenu.CloseTimer){this.RootMenu.CloseTimer=clearTimeout(this.RootMenu.CloseTimer);this.RootMenu.CloseTimer=null;}while(p){if(p.is_active()){return;}p.set_transparency(100);p.hide(1);p.close_children();p=p.ParentMenu;}this.hide(1);if(this.hasFocus)this.lose_focus();};this.close_friends=function(){var i,l;for(i=0, l=this.FriendMenu.length;i < l;i++)this.FriendMenu[i].close();};this.close_children=function(){var i, M, l;for(i=0, l=this.ChildMenu.length;i < l;i++){if(!this.ChildMenu[i].is_hidden()){this.ChildMenu[i].hide(1);this.ChildMenu[i].isActive=false;this.ChildMenu[i].close_children();}}};this.flush=function(){var i, item, subMenu, cm;for(i in this.I){item=this.I[i];if(item.isLink){subMenu=item.isLink;subMenu.ParentMenu=null;subMenu.RootMenu=subMenu;subMenu.ParentItem=null;}item.kill(1);}this.I=[];this.ChildMenu=[];this.itemIdx=0;if(this.Base)this.resize(null, this.TRow.T.h);};this.get_open=function(){var c,l;for(c=0, l=this.ChildMenu.length;c < l;c++){if(!this.ChildMenu[c].is_hidden()){return this.ChildMenu[c];}}return null;};this.get_tail=function(){var c;if((c=this.get_open())){return c.get_tail();}return this;};this.init_close=function(){if(this.RootMenu.CloseTimer){clearTimeout(this.RootMenu.CloseTimer);this.RootMenu.CloseTimer=null;}var M=this.RootMenu;this.RootMenu.CloseTimer=setTimeout(function(){M.close();}, this.closeTime );};this.is_active=function(){if(this.isActive)return true;var c=this;while((c=c.OpenChild)){if(c.isActive)return true;}return false;};this.link_menu=function(itemIdx, Menu){this.I[itemIdx].States[VUI_MOUSE_OVER].Scripts.free('close_children');this.I[itemIdx].States[VUI_MOUSE_OVER].Scripts.add(function(argArr){if(Menu.is_hidden())Menu.popup();});this.I[itemIdx].isLink=Menu;if(this.arrowImg){var img=imgnode(this.arrowImg);this.I[itemIdx].RCell.clear(img);}Menu.ParentMenu=this;Menu.RootMenu=this.RootMenu;Menu.ParentItem=this.I[itemIdx];this.ChildMenu.push(Menu);};this.popup=function(x, y){if(!isNaN(x)&& !isNaN(y)){this.move(x, y);}else if(this.ParentMenu){this.move(this.ParentMenu.x2()+this.ParentMenu.nestedSpace, this.ParentMenu.y()+this.ParentItem.Base.offsetTop);this.ParentMenu.close_children();this.ParentMenu.OpenChild=this;}if(!this.noCorrection){var bDiff=this.abs_y()+this.height();var rDiff=this.abs_x()+this.width();if(bDiff > this.Manager.height()){this.move(this.x(), this.y()-(bDiff-this.Manager.height()));}else if(this.abs_y()< 0){this.move(this.x(), 0);}if(rDiff > this.Manager.width()){this.move(this.x()-(rDiff-this.Manager.width()), this.y());}else if(this.abs_x()< 0){this.move(0, this.y());}}clearTimeout(this.RootMenu.CloseTimer);this.closeTimer=null;this.RootMenu.close_friends();if(this.Manager.FX && !this.fxNoFade){var Menu=this;this.hide(0);this.set_transparency(1);this.Manager.FX.effect_add(this, new VegUIFXFadeIn(this.fxFadeTime, this.fxFadeLimitIn));}else this.hide(0);};this.set=this.set_menu=function(x, y, w, closeTime, cN, arrowImg, nSpace){this.set_node(null, w, 100, x, y);if(closeTime)this.T.closeTime=closeTime;if(cN)this.T.className=cN;if(arrowImg)this.T.arrowImg=arrowImg;if(nSpace)this.T.nestedSpace=nSpace };}VegUIMenu.prototype=VegUINode;function VegUIMenuItem(refName, Parent, Manager){this.constructor=VegUIButton;this.constructor(refName, Parent, Manager);this.LCell=this.add_child('LCell', VUI_NODE, 'TD', 'static');this.MCell=this.add_child('MCell', VUI_NODE, 'TD', 'static');this.RCell=this.add_child('RCell', VUI_NODE, 'TD', 'static');this.T.pos='static';this.T.Css.padding='0px';this.LCell.T.Css.padding='0px';this.MCell.T.Css.padding='0px';this.RCell.T.Css.padding='0px';this.type=VUI_MENU_ITEM;this.flags |=VUI_HMOUSE_OVER | VUI_HMOUSE_OUT;this.build=this.build_mnuitem=function(toNode){if(!this.build_node())return null;this.States[VUI_MOUSE_DOWN].Scripts.add(function(argArr){argArr[0].Parent.Parent.Parent.isActive=false;argArr[0].Parent.Parent.Parent.RootMenu.close();});if(this.T.lIconImg)this.LCell.clear(imgnode(this.T.lIconImg));if(!this.T.label.nodeName)this.MCell.clear(document.createTextNode(this.T.label));else this.MCell.clear(this.T.label);if(this.T.rIconImg)this.RCell.clear(imgnode(this.T.rIconImg));this.LCell.resize(this.T.lIconW);this.RCell.resize(this.T.rIconW);this.dock(toNode);};this.set=this.set_mnuitem=function(content, script, lIcon, rIcon, h, lIconW, rIconW, nClass, hClass){this.set_node('TR',null,h);if(h > 0)this.LCell.T.h=this.MCell.T.h=this.RCell.T.h=h;if(lIconW !=null)this.T.lIconW=lIconW;if(rIconW !=null)this.T.rIconW=rIconW;if(hClass !=undefined)this.States[VUI_MOUSE_OVER].P.className=hClass;if(nClass !=undefined){this.States[VUI_MOUSE_OUT].P.className=nClass;this.T.className=nClass;}if(script)this.States[VUI_MOUSE_DOWN].Scripts.add(script);if(lIcon !=undefined)this.T.lIconImg=lIcon;if(rIcon !=undefined)this.T.rIconImg=rIcon;if(content)this.T.label=content;};}VegUIMenuItem.prototype=VegUIButton;var VUI_LISTTYPE_DROPDOWN=2;var VUI_LISTTYPE_NORMAL=1;var VUI_LISTTYPE_MULTI=3;var VUI_LIST=8;vui_module_add(VUI_LIST, VegUIList, 'vegui.list.class.js');function VegUIList(refName, Parent, Manager){this.constructor=VegUIContentBox;this.constructor(refName, Parent, Manager);this.type=VUI_LIST;this.items=0;this.sItem=0;this.sItems=[];this.sValue=0;this.TBodyNode=0;this.blockTextSelection=false;this.Table=this.Content.add_child('Table', VUI_NODE);this.BtnOpen=this.add_child('BtnOpen', VUI_BUTTON);this.SelItemLabel=this.add_child('SelItemLabel', VUI_NODE);this.add_item=function(node, value, dontAdjust, asHeader, replace){var td=htmlnode('div'), idx;td.appendChild(node);td.vuiValue=value;td.style.position='relative';td.className=(!asHeader ? this.mNormal : this.mHeader);if(!replace || !(idx=this.find(value))){this.Table.Base.appendChild(td)}else {var oldItem=this.Table.Base.childNodes[idx];var sidx=this.sitem_idx(value);td.vuiSelected=oldItem.vuiSelected;td.className=oldItem.className;this.Table.Base.insertBefore(td, oldItem);this.Table.Base.removeChild(oldItem);if(this.sItem && this.sItem.itemValue===value)this.sItem.node=td;if(this.hItem && this.hItem.itemValue===value)this.hItem.node=td;if(sidx)this.sItems[sidx].node=td;}this.items=this.Table.Base.childNodes.length;var List=this;td.asHeader=asHeader;if(this.itemHeight)td.style.height=this.itemHeight+'px';var m=(this.listType==VUI_LISTTYPE_MULTI);if(!asHeader){td.style.cursor='pointer';td.onmouseover=function(e){if(List.blockMouse)return false;if(!e)var e=window.event;var toE=(e.relatedTarget || e.fromElement);if(toE==this || has_parent(toE, this))return false;if(!List.bSelectMode){if(!List.is_selected(this.vuiValue))this.className=List.mOver;else this.className=List.mOverSelected;if(List.hItem && !List.hItem.node.vuiSelected)List.hItem.node.className=List.mNormal;List.hItem={node : this, itemValue : this.vuiValue };}else if(List.bSelectMode && m){if(!List.is_selected(this.vuiValue))List.select_item(this, false, true);else {List.deselect_item(this.vuiValue);}}};td.onmouseout=function(e){if(List.blockMouse)return false;if(!e)var e=window.event;var toE=(e.relatedTarget || e.toElement);if(has_parent(toE, this))return;if(!List.bSelectMode){if(!List.is_selected(this.vuiValue))this.className=List.mNormal;else {this.className=List.mClick;}}};td.onmousedown=function(e){if(List.blockMouse)return List.blockTextSelection;if(!e)var e=window.event;List.hevent(VUI_MOUSE_DOWN, e);if(m)List.bSelectMode=true;if(!List.is_selected(this.vuiValue)){if(m && e.shiftKey)List.select_items(List.sValue, this.vuiValue);else List.select_item(this, false, (m && e.ctrlKey));}else {if(!m || (m && e.ctrlKey))List.deselect_item(this.vuiValue);else if(m)List.select_item(this);}return List.blockTextSelection;};td.onmouseup=function(e){if(List.blockMouse)return;List.bSelectMode=false;};td.onselectstart=function(){return List.blockTextSelection;};}if(!dontAdjust)this.adjust();return td;};this.add_item_imgtxt=function(src, txt, value, dontAdjust, asHeader, replace){var node=htmlnode('div');var img=htmlnode('img');img.src=src;img.style.verticalAlign='top';node.appendChild(img);node.appendChild(txtnode(txt));return this.add_item(node, value, dontAdjust, asHeader, replace);};this.add_item_txt=function(txt, value, dontAdjust, asHeader, replace){this.add_item(txtnode(txt), value, dontAdjust, asHeader, replace);};this.adjust=function(){this.update_bbox();this.ScrollY.sync();};this.build=this.build_list=function(toNode){if(!(this.flags & VUI_HIDE_SCROLLX))this.flags |=VUI_HIDE_SCROLLX;this.itemHeight=this.T.itemHeight;this.listType=this.T.listType || VUI_LISTTYPE_NORMAL;this.nullEntry=this.T.nullEntry || false;this.mNormal=this.T.mNormal;this.mOver=this.T.mOver;this.mClick=this.T.mClick;this.mHeader=this.T.mHeader;this.mOverSelected=this.T.mOverSelected;this.Table.set_marg(0);this.Table.T.pos=null;this.Content.set_marg(0);this.ScrollX.noAutoShow=true;var L=this;if(this.listType==VUI_LISTTYPE_DROPDOWN){this.ScrollY.T.y=this.CHolder.T.y=this.itemHeight+5;this.SelItemLabel.set('div', null, this.itemHeight);this.SelItemLabel.T.Css.overflow='hidden';this.SelItemLabel.set_marg(this.BtnOpen.T.w+5);this.BtnOpen.set_marg(null,null,0);this.BtnOpen.States[VUI_MOUSE_DOWN].Scripts.add(function(){if(L.isOpen)L.close();else L.open();});this.CHolder.noAutoShow=1;this.ScrollY.noAutoShow=1;}else {this.SelItemLabel.flags |=VUI_TEMPLATE;this.BtnOpen.flags |=VUI_TEMPLATE;}if(!this.build_cbox())return null;this.expandedSize=this.height();this.States[VUI_MOUSE_MOVE].Scripts.add(function(){L.draw_hover(mouseX, mouseY);});this.States[VUI_MOUSE_OUT].Scripts.add(function(){if(!has_parent(L.toE, L.Base))L.bSelectMode=false;});this.States[VUI_KEY_DOWN].Scripts.add(function(){if(L.aKey==38 || L.aKey==40)L.blockMouse=true;});this.States[VUI_KEY_UP].Scripts.add(function(){if(L.aKey==38 || L.aKey==40)L.blockMouse=false;});this.dock(toNode);if(this.nullEntry)this.add_item_txt('-', null);if(this.listType==VUI_LISTTYPE_DROPDOWN)this.close();return 1;};this.close=function(){if(this.listType !=VUI_LISTTYPE_DROPDOWN)return;this.isOpen=false;this.resize(null, this.itemHeight);this.CHolder.hide(1);this.ScrollY.hide(1);};this.deselect_item=function(value, noOnChange){if(this.listType==VUI_LISTTYPE_MULTI && this.sItems.length){if(value===undefined || value===null){var i, item,l;for(i=0, l=this.sItems.length;i < l;i++){if(!(item=this.sItems[i]))continue;item.node.className=this.mNormal;item.node.vuiSelected=false;}this.sItems=[];this.sItem=this.sValue=null;}else {var i, item, l;for(i=0, l=this.sItems.length;i < l;i++){if(!(item=this.sItems[i]))continue;if(item.itemValue===value){item.node.className=this.mNormal;item.node.vuiSelected=false;delete this.sItems[i];break;}}if(this.sItems.length > 0){if(this.sValue===value)this.sItem=this.sItems[0];}else this.sItem=this.sValue=null;}}else if(this.sItem){this.sItem.node.className=this.mNormal;this.sItem.node.vuiSelected=false;this.sItem=null;this.sValue=null;if(this.listType==VUI_LISTTYPE_DROPDOWN){this.SelItemLabel.clear();this.close();}}};this.drop_item=function(index){if(index < 0)return;var item=this.Table.Base.childNodes[index];if(!item)return;this.Table.Base.removeChild(item);this.items=this.Table.Base.childNodes.length;var i,l;if(this.hItem && this.hItem.itemValue==item.vuiValue)this.hItem=null;for(i=0, l=this.sItems.length;i < l;i++){if(this.sItems[i]&& this.sItems[i].itemValue==item.vuiValue){delete this.sItems[i];break;}}if(this.sItem && this.sItem.itemValue==item.vuiValue){this.sItem=null;this.sValue=null;}this.adjust();};this.find=function(value){var n, Item;for(n=0;n < this.Table.Base.childNodes.length;n++){Item=this.Table.Base.childNodes[n];if(Item.asHeader)continue;if(Item.vuiValue===value)return n;}return false;};this.flush=function(){this.deselect_item(undefined, true);this.sItems=[];this.Table.clear();this.adjust();if(this.nullEntry)this.add_item_txt('-',null);};this.handle_key=this.handle_key_list=function(){switch(this.aKey){case 38: case 40: if(this.blockKeyScrolling)break;if(!this.hItem)break;var n=this.hItem.node;var rn=(this.aKey==38 ? n.previousSibling : n.nextSibling);while(rn && (rn.asHeader || typeof rn.vuiValue=='undefined'))rn=(this.aKey==38 ? rn.previousSibling : rn.nextSibling);if(!rn){this.handle_key_cbox();break;}if(!n.vuiSelected)n.className=this.mNormal;else n.className=this.mClick;this.hItem={node : rn, itemValue : rn.value };this.warp(rn.vuiValue);if(this.keyShift){if(!n.vuiSelected)this.select_item(n,false,true);else this.deselect_item(n.vuiValue);}if(!rn.vuiSelected)rn.className=this.mOver;else rn.className=this.mOverSelected;break;}};this.is_selected=function(value){if(!this.sItem)return false;if(this.listType==VUI_LISTTYPE_MULTI){var i, item;for(i in this.sItems){item=this.sItems[i];if(item.itemValue===value)return true;}return false;}else return (this.sValue===value)};this.open=function(){if(this.listType !=VUI_LISTTYPE_DROPDOWN)return;this.isOpen=true;this.resize(null, this.expandedSize);this.CHolder.hide(0);this.ScrollY.hide(0);};this.select=function(value, noOnChange){if(value===null)this.deselect_item();else {var n, Item;for(n=0;n < this.Table.Base.childNodes.length;n++){Item=this.Table.Base.childNodes[n];if(Item.vuiValue===value)return this.select_item(Item, noOnChange);}}};this.select_item=function(node, noOnChange, append){if(node.asHeader)return;if(this.listType !=VUI_LISTTYPE_MULTI || !append)this.deselect_item();node.className=this.mClick;this.sItem={node : node, itemValue : node.vuiValue };this.sValue=node.vuiValue;if(this.listType==VUI_LISTTYPE_DROPDOWN){var sNode=node.cloneNode(true);sNode.className=this.mNormal;this.SelItemLabel.clear(sNode);this.close();}else if(this.listType==VUI_LISTTYPE_MULTI){this.sItems.push({node: node, itemValue: node.vuiValue });}node.vuiSelected=true;if(!noOnChange && this.onchange)this.event_execute('onchange');};this.select_items=function(value1, value2){if(this.listType !==VUI_LISTTYPE_MULTI)return;var i, n=0, item, bSelecting=false, bBail=false;this.deselect_item();for(i in this.Table.Base.childNodes){item=this.Table.Base.childNodes[i];if(item.asHeader || typeof item.vuiValue=='undefined')continue;if(item.vuiValue===value1 || item.vuiValue===value2){bSelecting=(bSelecting ? false : true);if(!bSelecting)bBail=true;}if(bSelecting || (item.vuiValue===value1 || item.vuiValue===value2)){this.select_item(item, false, true);n++;}if(bBail)break;}return n };this.set=this.set_list=function(w,h,x,y,ih,rs,type,z,ne){this.set_cbox(w, h, x, y);if(h)this.expandedSize=h;if(ih)this.T.itemHeight=ih;if(rs)this.T.rowSpace=rs;if(type)this.T.listType=type;if(!isNaN(z))this.T.z=z;if(ne !==undefined)this.T.nullEntry=true;};this.set_style_list=this.set_style=function(over, normal, select, header, overSelect ){if(over)this.T.mOver=over;if(normal)this.T.mNormal=normal;if(select)this.T.mClick=select;if(header)this.T.mHeader=header;if(overSelect)this.T.mOverSelected=overSelect;};this.sitem_idx=function(value){if(this.listType !==VUI_LISTTYPE_MULTI)return-1;var i;for(i in this.sItems){if(this.sItems[i].itemValue===value)return i;}};this.to_string=function(sep){var str='';if(!sep)sep=',';if(this.listType==VUI_LISTTYPE_MULTI){var i;for(i in this.sItems)str+=this.sItems[i].itemValue+sep;str=str.substring(0,str.length-1);}else {str=new String(this.sValue);}return str;};this.warp=function(value){var idx;if(!(idx=this.find(value)))return;var node=this.Table.Base.childNodes[idx];if(!node)return;var y=node.style.top ? parseInt(node.style.top): node.offsetTop;var h=node.style.height ? parseInt(node.style.height): node.offsetHeight;var yD=y+(this.Content.y()), d;if((yD+h)> this.CHolder.height()){this.Content.move(null, this.Content.y()-((yD-this.CHolder.height())+h));}else if(yD < 0){d=this.Content.y()-(-y);this.Content.move(null, this.Content.y()-d);}this.adjust();};}VegUIList.prototype=VegUIContentBox;var VUI_FX_TRIGGER=1;var VUI_FX_HOOK=2;var VUI_FX_FADEOUT=1;var VUI_FX_FADEIN=2;var VUI_FX_SHADOW=3;var VUI_FX_SCALE=4;function VegUIFXManager(Manager){this.Timer=0;this.interval=20;this.effectNum=0;this.Effects=[];this.Manager=Manager;this.init=function(interval){this.interval=interval;};this.start=function(){if(this.effectNum <=0)return this.stop();else if(this.Timer)return null;var FX=this;this.Timer=setInterval(function(){FX.poll();}, this.interval);};this.stop=function(){this.Timer=clearInterval(this.Timer);this.Timer=null;return 0;};this.effect_add=function(Element, Effect, onhalt){if(!this.Effects[Element.eleIdx])this.Effects[Element.eleIdx]=[];Effect.collides(this.Effects[Element.eleIdx], true);Effect.init(Element, this);if(onhalt)Effect.onhalt=onhalt;if(!Element.Effects)Element.Effects=[];Element.Effects[Effect.type]=Effect;if(!Effect.isPassive){this.Effects[Element.eleIdx][Effect.type]=Effect;this.effectNum++;this.start();}else {Effect.execute();Element.event_add('onkill', function(){Effect.halt();}, 'fx_kill_'+Effect.type );}return Effect;};this.effect_pop=function(eleIdx, type){if(this.Effects[eleIdx]&& this.Effects[eleIdx][type]){var E=this.Effects[eleIdx][type];if(E.isPassive){E.Element.onkill.free('fx_kill_'+E.type);}delete this.Effects[eleIdx][type];this.effectNum--;}if(this.effectNum<=0)this.stop();};this.poll=function(){if(this.effectNum <=0)return this.stop();var i, n, e, effect, element;for(i in this.Effects){e=this.Effects[i];for(n in e){effect=e[n];if(!effect.Element || !effect.Element.Base)this.effect_pop(parseInt(i),effect.type);else effect.execute();}}};}function VegUIEffect(){this.Element=null;this.effectType=VUI_FX_TRIGGER;this.type=0;this.Manager=null;this.Collision=[];this.onhalt=function(){return 1;};this.execute=function(){return 1;};this.collides=function(Effects, cancelOther){var i, E;for(i in Effects){E=Effects[i];if(E==this)continue;if(this.Collision[E.type]){if(!cancelOther){return 1;}else {E.halt(true);}}}};this.init=function(Element, Manager){this.Element=Element;this.Manager=Manager;};this.halt=this.halt_effect=function(noOnHalt){this.Manager.effect_pop(this.Element.eleIdx, this.type);if(!noOnHalt && this.onhalt){this.onhalt();}};}function VegUIFXFadeOut(fadeSpeed, limit){this.constructor=VegUIEffect;this.constructor();this.type=VUI_FX_FADEOUT;this.limit=limit || 0;this.fadeSpeed=fadeSpeed || 1000;this.Collision[VUI_FX_FADEOUT]=true;this.Collision[VUI_FX_FADEIN]=true;this.execute=function(){if(!this.Element || !this.Element.Base || !this.Manager)return null;var interval=100/(this.fadeSpeed/this.Manager.interval);var t=this.Element.transparency;if(t > this.limit)this.Element.set_transparency(t-interval);else this.halt();};}VegUIFXFadeOut.prototype=VegUIEffect;function VegUIFXFadeIn(fadeSpeed, limit){this.constructor=VegUIEffect;this.constructor();this.type=VUI_FX_FADEIN;this.fadeSpeed=fadeSpeed || 1000;this.limit=limit || 100;this.Collision[VUI_FX_FADEOUT]=true;this.Collision[VUI_FX_FADEIN]=true;this.execute=function(){if(!this.Element || !this.Element.Base || !this.Manager){return null;}var interval=100/(this.fadeSpeed/this.Manager.interval);var t=this.Element.transparency;if(t < this.limit)this.Element.set_transparency(t+interval);else this.halt();};}VegUIFXFadeIn.prototype=VegUIEffect;function VegUIFXShadow(x, y, opacity, color){this.constructor=VegUIEffect;this.constructor();this.type=VUI_FX_SHADOW;this.x=x || 8;this.y=y || 8;this.opacity=opacity || 15;this.color=color || '#000';this.ShadowNode=null;this.isPassive=true;this.execute=function(){if(!this.Manager || this.ShadowNode)return;var M=this.Element.Manager;var SN=this.ShadowNode=M.get_new(VUI_NODE);SN.T.Css.backgroundColor=this.color;SN.T.t=this.opacity;SN.set('div', this.Element.width(), this.Element.height());this.Element.attach(this.ShadowNode, this.x, this.y, VUI_BACK);this.Element.event_add('onresize', function(a){SN.resize(a[0].width(), a[0].height());}, 'fx_shadow' );this.Element.event_add('onhide', function(a){SN.hide(a[0].is_hidden());}, 'fx_shadow' );M.build_element(this.ShadowNode, this.Element.Base.parentNode );};this.halt=this.halt_fx_shadow=function(noOnHalt){this.ShadowNode.kill(1);this.halt_effect(noOnHalt);};}VegUIFXShadow.prototype=VegUIEffect;function VegUIFXScale(x, y, speed, scaleType, StuntNodeTemplate, useFade, z, fadeLimit){this.constructor=VegUIEffect;this.constructor();this.type=VUI_FX_SCALE;this.x=x || 0;this.y=y || 0;this.speed=speed || 500;this.StuntNodeTemplate=StuntNodeTemplate || null;this.StuntNode=null;this.phase=0;this.scaleType=scaleType || 0;this.useFade=useFade || false;this.rw=this.rh=this.mvx=this.mvy=0;this.fadeLimit=0;this.z=z || 0;this.execute=function(){if(!this.Manager)return null;var M=this.Element.Manager;switch(this.phase){case 0: if(!this.StuntNodeTemplate)return;this.StuntNode=M.get_clone(this.StuntNodeTemplate);this.StuntNode.T.z=this.z;M.build_element(this.StuntNode, this.Element.Base.parentNode);if(!this.scaleType){this.StuntNode.move(this.x, this.y);this.StuntNode.resize(1,1);this.w=1;this.h=1;this.toW=this.Element.width();this.toH=this.Element.height();this.toX=this.Element.x();this.toY=this.Element.y();if(this.useFade)this.StuntNode.set_transparency(1);}else {this.StuntNode.move(this.Element.x(), this.Element.y());this.StuntNode.resize(this.Element.width(), this.Element.height());this.toW=1;this.toH=1;this.w=this.Element.width();this.h=this.Element.height();this.toX=this.x;this.toY=this.y;this.x=this.Element.x();this.y=this.Element.y();if(this.useFade)this.StuntNode.set_transparency(100);}this.Element.hide(1);this.phase++;break;case 1: var r=(this.speed/this.Manager.interval);var N=this.StuntNode;this.rw+=(Math.abs(this.toW-this.w)/r);this.rh+=(Math.abs(this.toH-this.h)/r);var w=(N.width()==this.toW);var h=(N.height()==this.toH);if((!w && this.rw>=1)|| (!h && this.rh>=1)){var rw=Math.floor(this.rw);var rh=Math.floor(this.rh);var uW=(!w ? (!this.scaleType ? N.width()+rw : N.width()-rw): null);var uH=(!h ? (!this.scaleType ? N.height()+rh : N.height()-rh): null);N.resize((uW >-1 ? uW : 1), (uH >-1 ? uH : 1));}if(this.rw >=1)this.rw=(this.rw-Math.floor(this.rw));if(this.rh >=1)this.rh=(this.rh-Math.floor(this.rh));if(!w)w=(!this.scaleType ? (N.width()> this.toW): (N.width()< this.toW));if(!h)h=(!this.scaleType ? (N.height()> this.toH): (N.height()< this.toH));if(w || h){N.resize((w ? this.toW : null), (h ? this.toH : null));}this.mvx+=(Math.abs(this.x-this.toX)/r);this.mvy+=(Math.abs(this.y-this.toY)/r);var x=(N.x()==this.toX);var y=(N.y()==this.toY);if((!x && this.mvx>=1)|| (!y && this.mvy>=1)){var mx=Math.floor(this.mvx);var my=Math.floor(this.mvy);N.move((!x ? (this.toX > N.x()? N.x()+mx : N.x()-mx): null), (!y ? (this.toY > N.y()? N.y()+my : N.y()-my): null));}if(this.mvx >=1)this.mvx=(this.mvx-Math.floor(this.mvx));if(this.mvy >=1)this.mvy=(this.mvy-Math.floor(this.mvy));x=(Math.abs(N.x()-this.toX)<=(Math.abs(this.x-this.toX)/r));y=(Math.abs(N.y()-this.toY)<=(Math.abs(this.y-this.toY)/r));if(x || y){N.move((x ? this.toX : null), (y ? this.toY : null));}if(this.useFade){if(!(this.scaleType && this.StuntNode.transparency <=this.fadeLimit)&& !(!this.scaleType && this.StuntNode.transaprency >=this.fadeLimit)){this.StuntNode.set_transparency(!this.scaleType ? this.StuntNode.transparency+(100/r): this.StuntNode.transparency-(100/r));}}if(w && h && x && y)this.halt();break;}};this.halt_scale=this.halt=function(){if(!this.scaleType){this.Element.move(this.StuntNode.x(), this.StuntNode.y());this.Element.resize(this.StuntNode.width(), this.StuntNode.height());this.Element.hide(0);}this.StuntNode.kill(1);this.halt_effect();};}VegUIFXScale.prototype=VegUIEffect;var VUI_CHECKBOX=13;vui_module_add(VUI_CHECKBOX, VegUICheckBox, 'vegui.checkbox.class.js');function VegUICheckBox(refName, Parent, Manager){this.constructor=VegUINode;this.constructor(refName, Parent, Manager);this.type=VUI_CHECKBOX;this.isChecked=0;this.BtnCheck=this.add_child('BtnCheck', VUI_BUTTON);this.Label=this.add_child('Label', VUI_NODE);this.BtnLabel=this.add_child('BtnLabel', VUI_BUTTON);this.Label.set('div', null, 14, 15, 0);this.Label.set_marg(0);this.BtnCheck.States[VUI_MOUSE_DOWN].Scripts.add(function(argArr){argArr[0].Parent.tgl_check();});this.build=this.build_cb=function(toNode){this.labelTxt=this.T.labelTxt;this.isChecked=this.T.checked ^ 1;this.cClass=this.T.cClass;this.ucClass=this.T.ucClass;var BL=this.BtnLabel;this.Label.event_add('onresize', function(a){BL.resize(a[0].width(), a[0].height());});if(!this.build_node(toNode))return null;this.Label.attach(this.BtnLabel,0,0,VUI_FRONT, 1);this.BtnLabel.States[VUI_MOUSE_DOWN].Scripts.add(function(a){a[0].Parent.tgl_check();});this.tgl_check();this.Label.clear(document.createTextNode(this.labelTxt));this.dock(toNode);return 1;};this.set=this.set_cb=function(x,y,w,h,label, checked, cClass, ucClass){this.set_node('div', w, h, x, y);if(label)this.T.labelTxt=label;if(checked !==null)this.T.checked=parseInt(checked);if(cClass)this.T.cClass=cClass;if(ucClass)this.T.ucClass=ucClass;};this.tgl_check=function(b, noOnChange){if(b !=undefined)this.isChecked=(b ? 1 : 0)^ 1;this.isChecked ^=1;if(this.isChecked==1){this.BtnCheck.Base.className=this.cClass;}else if(this.isChecked==0)this.BtnCheck.Base.className=this.ucClass;if(!noOnChange)this.event_execute('onchange');};}VegUICheckBox.prototype=VegUINode;var VUI_HIDE_SCROLLX=0x80;var VUI_HIDE_SCROLLY=0x100;var VUI_HIDE_SCROLLS=VUI_HIDE_SCROLLX | VUI_HIDE_SCROLLY;var VUI_CBOX=5;vui_module_add(VUI_CBOX, VegUIContentBox, 'vegui.cbox.class.js');function VegUIContentBox(refName, Parent, Manager){this.constructor=VegUINode;this.constructor(refName, Parent, Manager);this.type=VUI_CBOX;this.noKeyScrolling=false;this.CHolder=this.add_child('CHolder', VUI_NODE);this.Content=this.CHolder.add_child('Content', VUI_NODE);this.CHolder.T.rmarg=15;this.CHolder.T.bmarg=15;this.ScrollY=this.add_child('ScrollY', VUI_SCROLL);this.ScrollY.set('y');this.ScrollY.T.rmarg_nr=0;this.ScrollY.T.bmarg=15;this.ScrollX=this.add_child('ScrollX', VUI_SCROLL);this.ScrollX.set('x');this.ScrollX.T.bmarg_nr=0;this.ScrollX.T.rmarg=15;this.build=this.build_cbox=function(toNode){var CB=this;var Man=this.Manager;this.flags |=VUI_HMOUSE_WHEEL | VUI_HMOUSE_OVER | VUI_HMOUSE_OUT;this.noKeyScrolling=this.T.noKeyScrolling;this.States[VUI_MOUSE_OVER].Scripts.add(function(){if(Man.focusedElement){if(Man.focusedElement==this)return 0;if(Man.focusedElement.is_parent(CB))return 0;}CB.set_focus(CB.ScrollY.overflow()? VUI_FOCUS_ACTIVE : VUI_FOCUS_PASSIVE);});this.States[VUI_MOUSE_OUT].Scripts.add(function(){if(has_parent(CB.toE, CB.Base))return;if(Man.focusedElement==CB){CB.lose_focus();}});this.States[VUI_MOUSE_WHEEL].Scripts.add(function(){if(!CB.ScrollY.overflow())return;if(CB.delta > 0)CB.ScrollY.scroll(0,3);else if(CB.delta < 0)CB.ScrollY.scroll(1,3);});this.States[VUI_KEY_DOWN].Scripts.add(function(){CB.handle_key();});this.event_add('onfocusset', function(args){if(!CB.noKeyScrolling)args[0].Manager.block_key([33,34,37,38,39,40]);});this.event_add('onfocuslose', function(args){if(!CB.noKeyScrolling)args[0].Manager.unblock_key([33,34,37,38,39,40]);});if(!this.build_node())return null;if(this.flags & VUI_HIDE_SCROLLX)this.ScrollX.noAutoShow=true;if(this.flags & VUI_HIDE_SCROLLY)this.ScrollY.noAutoShow=true;this.CHolder.Css.overflow='hidden';this.ScrollY.link(this.CHolder, this.Content);this.ScrollX.link(this.CHolder, this.Content);this.ScrollX.hide((this.flags & VUI_HIDE_SCROLLX));this.ScrollY.hide((this.flags & VUI_HIDE_SCROLLY));this.dock(toNode);return 1;};this.fill=function(Node){if(!Node || !Node.nodeName || !this.Base)return null;this.Content.clear();this.Content.Base.appendChild(Node);this.update_bbox();this.ScrollY.sync();this.ScrollX.sync();};this.fill_remote=function(path, ondone){var CB=this, Bridge=this.Manager.Bridge;if(!Bridge){CB.fill(txtnode('vegUI Error: no bridge found'));return;}var pFunc=function(){var node=htmlnode('div');node.innerHTML=this.request.responseText;CB.Content.clear();CB.fill(node);if(ondone)ondone();};Bridge.send(path, null, 'get', pFunc);};this.handle_key=this.handle_key_cbox=function(){if(!this.mEvent)return;switch(this.aKey){case 33: var d=Math.abs(this.Content.y());var i=(d < this.CHolder.height())? d : this.CHolder.height();this.Content.move(this.Content.x(), this.Content.y()+i );this.ScrollY.sync();break;case 34: var d=this.Content.y2()-this.CHolder.height();var i=(d < this.CHolder.height())? d : this.CHolder.height();this.Content.move(this.Content.x(), this.Content.y()-i );this.ScrollY.sync();break;break;case 37: if(!this.noKeyScrolling)this.ScrollX.scroll(0,2);break;case 38: if(!this.noKeyScrolling)this.ScrollY.scroll(0,2);break;case 39: if(!this.noKeyScrolling)this.ScrollX.scroll(1,2);break;case 40: if(!this.noKeyScrolling)this.ScrollY.scroll(1,2);break;}};this.set=this.set_cbox=function(w,h,x,y){this.set_node(null,w,h,x,y);};this.update_bbox=function(){this.ScrollX.update_content_boundary();if(this.ScrollY.overflow()<=1)this.Content.move(null, 0);if(this.ScrollX.overflow()<=1)this.Content.move(0, null);};this.event_add('ondock', function(a){a[0].ScrollY.sync();a[0].ScrollX.sync();});this.event_add('onresize', function(a){if(!a[0].Base || !a[0].Base.parentNode)return;a[0].update_bbox();a[0].ScrollY.sync();a[0].ScrollX.sync();});}VegUIContentBox.prototype=VegUINode;var VUI_BUTTON=4;vui_module_add(VUI_BUTTON, VegUIButton, 'vegui.button.class.js');function VegUIButton(refName, Parent, Manager){this.constructor=VegUINode;this.constructor(refName, Parent, Manager);this.type=VUI_BUTTON;this.flags |=VUI_HMOUSE_DOWN;this.T.micon='pointer';this.build=this.build_button=function(toNode){this.origW=this.T.w;this.origH=this.T.h;this.captionChildName=this.T.captionChildName;if(this.T.caption){var SelBlock=this.add_skin('SelectionBlocker',0,0,0,0,0,0,0);SelBlock.T.z=50;}if(!this.build_node())return null;this.States[VUI_MOUSE_DOWN].Scripts.add(function(argArr){argArr[0].Manager.Base.ondragstart=function(){return false };argArr[0].Manager.Base.onselectstart=function(){return false };});this.States[VUI_MOUSE_UP].Scripts.add(function(argArr){argArr[0].Manager.Base.ondragstart=null;argArr[0].Manager.Base.onselectstart=null;});this.Base.ondrag=function(){return false;};this.Base.onselectstart=function(){return false;};if(this.T.caption){var n=document.createTextNode(this.T.caption);if(!this.captionChildName){this.Base.appendChild(n);}else {this.C[this.captionChildName].Base.appendChild(n);}this.Css.overflow='hidden';}this.dock(toNode);return 1;};this.disable=this.disable_button=function(b){this.disable_node(b);this.Css.cursor=b ? 'default' : 'pointer';};this.hevent=this.hevent_button=function (eventType, mEvent){if(eventType==VUI_MOUSE_DOWN)this.set_focus(VUI_FOCUS_ACTIVE);else if(eventType==VUI_MOUSE_UP && this.Manager.focusedElement==this){this.lose_focus();}var _state=this.hevent_node(eventType, mEvent);return _state;};this.set=this.set_button=function(x, y, w, h, cssNormal, cssMDown, c){this.set_node(null, w, h, x, y);if(cssNormal){this.States[VUI_MOUSE_UP].P.className=cssNormal;this.T.className=cssNormal;}if(cssMDown)this.States[VUI_MOUSE_DOWN].P.className=cssMDown;this.T.caption=c;};}VegUIButton.prototype=VegUINode;var VUI_URL='';function VegUIRequest(req, id, toElement){this.timeCreation=new Date().getTime();this.timeSend=null;this.request=req;this.toElement=toElement;this.process=null;this.id=id;}function VegUIBridge(){this.R=this.Request=[];this.maxSendTime=5000;this.maxTimeouts=10;this.conTimeouts=0;this.sendNum=0;this.timeoutNum=0;this.successNum=0;this.PTimer=null;this.denyRequests=false;this.resend=true;this.cleanup=function(vreq){if(this.R[vreq.id].request)this.R[vreq.id].request.onreadystatechange=function(){return;};delete this.R[vreq.id];};this.execute=function(vreq){return true;};this.new_request=function(toElement){var req;if(window.XMLHttpRequest)req=new XMLHttpRequest();else {if(window.ActiveXObject)req=new ActiveXObject('Msxml2.XMLHTTP');else req=new ActiveXObject('Microsoft.XMLHTTP');}if(!req)return null;var vreq=new VegUIRequest(req, this.valid_id(), toElement);this.R[vreq.id]=vreq;return this.R[vreq.id];};this.onmaxtimeouts=function(){alert('Lost connection to the server');return true;};this.ontimeout=function(vreq){return true;};this.poll_timeouts=function(){var r;var time=new Date().getTime();for(r in this.R){if(time-this.R[r].timeSend > this.maxSendTime){this.ontimeout(this.R[r]);this.R[r].request.abort();if(this.resend)this.send(this.R[r].url, this.R[r].para, this.R[r].method);this.cleanup(this.R[r]);this.conTimeouts++;this.timeoutNum++;}}if(this.conTimeouts >=this.maxTimeouts)this.onmaxtimeouts();};this.process_request=function(vreq){var req=vreq.request;if(req.readyState==4){if(req.status==200){this.successNum++;this.conTimeouts=0;if(!vreq.process)this.execute(vreq);else vreq.process();}else {this.conTimeouts++;this.ontimeout(vreq);}this.cleanup(vreq);}};this.send=function(url, para, method, pFunc, sync){if(this.denyRequests)return null;var req, vreq, Bridge=this;if(!(vreq=this.new_request())){alert('VegUIBridge: Could not create XMLHttpRequest Object');return;}vreq.timeSend=new Date().getTime();vreq.url=url;vreq.para=para;vreq.method=method;vreq.process=pFunc;var req=vreq.request;var method=method ? method : 'GET';var url=VUI_URL+url+(method=='GET' ? '?'+para : '');req.onreadystatechange=function(){Bridge.process_request(vreq);};if(sync)req.open(method, url);else req.open(method, url, true);if(method.toUpperCase()=='POST'){req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');req.send(para);}else req.send(null);this.sendNum++;};this.valid_id=function(){var id=(Math.round(Math.random()*9999)+1);while(this.R[id])id=(Math.round(Math.random()*9999)+1);return id;};}var VUI_SELECTOR=35;vui_module_add(VUI_SELECTOR, VegUISelector, 'vegui.selector.class.js');function VegUISelector(refName, Parent, Manager){this.constructor=VegUINode;this.constructor(refName, Parent, Manager);this.type=VUI_SELECTOR;this.value=null;this.Items=[];this.idxPtr=0;this.T.btnWidth=0;this.T.btnHeight=0;this.Btn1=this.add_child('Btn1', VUI_BUTTON);this.Btn2=this.add_child('Btn2', VUI_BUTTON);this.Label=this.add_child('Label', VUI_NODE);this.build=this.build_selector=function(toNode){this.btnWidth=this.Btn1.T.w;this.btnHeight=this.Btn1.T.h;this.Label.set('div',this.T.w-(this.btnWidth*2), this.T.h, this.btnWidth );this.Label.set_marg(this.btnWidth);this.Btn2.set_marg(null,null,0);if(!this.build_node())return null;var VS=this;this.Btn1.States[VUI_MOUSE_DOWN].Scripts.add(function(){VS.go(VUI_LEFT);});this.Btn2.States[VUI_MOUSE_DOWN].Scripts.add(function(){VS.go(VUI_RIGHT);});if(this.Items.length)this.update_label();this.dock(toNode);return 0;};this.flush=function(){this.Items=[];this.update_label();};this.go=function(dir){switch(dir){case VUI_LEFT: if(this.idxPtr > 0)this.select_idx(this.idxPtr-1);break;case VUI_RIGHT: if(this.idxPtr < (this.Items.length)-1)this.select_idx(this.idxPtr+1);break;default: return null;}};this.select_idx=function(idx){if(!this.Items[idx])return null;this.idxPtr=idx;this.value=this.Items[this.idxPtr][0];this.update_label();this.event_execute('onchange');};this.select_value=function(value){var i, idx=-1;for(i in this.Items){if(this.Items[i][0]==value){idx=i;break;}}this.select_idx(idx);};this.set=this.set_selector=function(w,h,x,y){this.set_node('div',w,h,x,y);};this.update_label=function(){if(!this.Items[this.idxPtr])this.Label.clear(txtnode(''));else {var item=this.Items[this.idxPtr];this.Label.clear(txtnode(item[1]));}};}VegUISelector.prototype=VegUINode;var VUI_PROP_SET=51;vui_module_add(VUI_PROP_SET, VegUIPropertySet, 'vegui.propertyset.class.js');var VUI_PSET_INPUT=1;var VUI_PSET_LIST=2;var VUI_PSET_CHECK=3;var VUI_PSET_CUSTOM=4;function VegUIPropertySet(refName, Parent, Manager){this.constructor=VegUIContentBox;this.constructor(refName, Parent, Manager);this.type=VUI_PROP_SET;this.fields={};this.Table=this.Content.add_child('Table', VUI_NODE, 'table');this.TBody=this.Table.add_child('TBody', VUI_NODE, 'tbody');this.FldInput=this.add_child('FldInput', VUI_NODE);this.FldInputPw=this.add_child('FldInputPw', VUI_NODE);this.FldInputLarge=this.add_child('FldInputLarge', VUI_NODE);this.CbInput=this.add_child('CbInput', VUI_CHECKBOX);this.CbInput.noAutoShow=true;this.Nctrl=this.add_child('Nctrl', VUI_NODE);this.Nctrl.flags |=VUI_TEMPLATE;this.FldInputPw.T.type='password';this.adjust=function(){this.update_bbox();this.ScrollY.sync();this.align_childs();};this.build=this.build_propset=function(toNode){this.Table.set_marg(0);this.Table.T.pos='static';this.TBody.T.pos='static';this.TBody.set_marg(0);this.Content.set_marg(0);this.Table.T.className=this.T.cssTable;this.nameWidth=this.T.nameWidth;this.cssName=this.T.cssName;this.cssValue=this.T.cssValue;this.ListTemplate=this.Manager.E[this.T.ListTemplate];this.listX=this.T.listX;this.listY=this.T.listY;this.itemHeight=this.T.itemHeight || undefined;this.FldInput.set('input');this.FldInput.T.pos='static';this.FldInput.flags |=VUI_HKEY_DOWN;this.FldInputPw.set('input');this.FldInputPw.T.pos='static';this.FldInputPw.flags |=VUI_HKEY_DOWN;this.FldInputLarge.set('textarea');this.FldInputLarge.T.pos='static';this.FldInputLarge.flags |=VUI_HKEY_DOWN;this.CbInput.T.pos='relative';this.CbInput.noAutoShow=true;if(!this.build_cbox())return null;this.TBodyNode=this.TBody.Base;var P=this;this.dataset_build(this.T.fields);this.FldInput.Base.setAttribute('autocomplete','off');this.FldInputPw.Base.setAttribute('autocomplete','off');this.FldInputLarge.Base.setAttribute('autocomplete','off');this.FldInput.hide(1);this.FldInputPw.hide(1);this.FldInputLarge.hide(1);this.CbInput.hide(1);this.FldInput.States[VUI_KEY_DOWN].Scripts.add(function(argArr){if(argArr[0].aKey===13)P.dataset_tgl_input(P.selFld, 0);});this.FldInputPw.States[VUI_KEY_DOWN].Scripts.add(function(argArr){if(argArr[0].aKey===13)P.dataset_tgl_input(P.selFld, 0);});this.FldInputLarge.States[VUI_KEY_DOWN].Scripts.add(function(argArr){if(argArr[0].keyCtrl && argArr[0].aKey===13)P.dataset_tgl_input(P.selFld, 0);});this.CbInput.BtnCheck.States[VUI_MOUSE_DOWN].Scripts.returnVal=false;this.CbInput.onchange=function(){P.dataset_tgl_input(P.selFld, 0);};this.dock(toNode);this.adjust();return 1;};this.dataset_add=function(fld){var tr=htmlnode('tr');var tdName=htmlnode('td');var tdValue=htmlnode('td');tdName.className=this.cssName;tdName.style.width=this.nameWidth+'%';tdValue.style.width=100-this.nameWidth+'%';if(!isNaN(this.itemHeight)&& this.itemHeight !==null)tdValue.style.height=this.itemHeight+'px';tdValue.style.cursor='pointer';tdValue.className=this.cssValue;tdName.appendChild(txtnode((fld.caption?fld.caption:fld.name)));fld.valueNode=tdValue;var P=this;if(fld.type==VUI_PSET_LIST){var List=this.add_child('Lst_'+fld.name, VUI_LIST);List.clone(this.ListTemplate);List.T.listType=1;List.noAutoShow=true;this.Manager.build_element(List);List.hide(1);List.onchange=function(){P.dataset_tgl_input(fld, 0);};fld.fill_list(List);}this.dataset_update(fld);tr.appendChild(tdName);tr.appendChild(tdValue);tdValue.onmousedown=function(e){if(!e)var e=event;if(VUI_BROWSER_INFO.name=='opera' && e.srcElement !=this)return;P.dataset_tgl_input(fld, 1);};this.TBodyNode.appendChild(tr);};this.dataset_build=function(fields){var i, fld;this.flush();this.fields=fields;for(i in this.fields){fld=this.fields[i];this.dataset_add(fld);}this.adjust();};this.dataset_cancel_input=function(newValue){var fld=this.selFld;if(!fld || !fld.hasInput )return;fld.hasInput=false;this.selFld=null;this.CbInput.undock();this.FldInput.undock();this.FldInputPw.undock();if(fld.type==VUI_PSET_LIST){var List=this.C['Lst_'+fld.name];List.undock();}this.dataset_update(fld, newValue);if(fld.oncancel)fld.oncancel();};this.dataset_tgl_input=function(fld, b){if(!fld.valueNode)return;if((fld.hasInput && b)|| (!fld.hasInput && !b))return;if(fld.disabled )return;var P=this, node=fld.valueNode;if(b){this.dataset_cancel_input();this.selFld=fld;this.Nctrl.control(node);fld.hasInput=1;switch(fld.type){case VUI_PSET_CHECK: this.CbInput.undock();this.CbInput.Css.width='95%';this.CbInput.hide(0);this.CbInput.tgl_check(fld.value, true);this.Nctrl.clear(this.CbInput.Base);break;case VUI_PSET_LIST: var List=this.C['Lst_'+fld.name];List.Css.position='relative';List.move(0,0);List.hide(0);this.Nctrl.clear(List.Base);fld.fill_list(List);List.select(fld.value, true);this.adjust();break;case VUI_PSET_CUSTOM: if(fld.fetch)fld.fetch(this, fld);break;case VUI_PSET_INPUT: default: var o=(fld.isPassword ? this.FldInputPw : this.FldInput);if(o==this.FldInput && fld.is_large > 0){o=this.FldInputLarge;o.resize(null, fld.is_large);}o.undock();o.Css.width='95%';o.hide(0);o.Base.value=fld.value;this.Nctrl.clear(o.Base);o.Base.focus();o.Base.select();break;}}else {switch(fld.type){case VUI_PSET_CUSTOM: break;case VUI_PSET_CHECK: fld.value=parseInt(this.CbInput.isChecked);break;case VUI_PSET_LIST: var List=this.C['Lst_'+fld.name];fld.value=List.sValue;fld.labelNode=List.sItem.node.childNodes[0].cloneNode(true);break;case VUI_PSET_INPUT: default: var o=(fld.isPassword ? this.FldInputPw : this.FldInput);if(o==this.FldInput && fld.is_large > 0)o=this.FldInputLarge;fld.value=o.Base.value;break;}this.dataset_cancel_input(fld.value);}};this.dataset_update=function(fld, newValue){if(!fld)return;this.dataset_cancel_input();this.Nctrl.control(fld.valueNode);if(newValue !==undefined)fld.value=newValue;switch(fld.type){case VUI_PSET_CHECK: this.Nctrl.clear(txtnode(fld.value ? 'true' : 'false'));break;case VUI_PSET_LIST: this.Nctrl.clear(fld.labelNode ? fld.labelNode : txtnode('select ...'));this.adjust();break;case VUI_PSET_INPUT: default: var v=(fld.isPassword ? '<hidden>' : fld.value);this.Nctrl.clear(txtnode(v !==undefined ? v : ''));break;}};this.flush=function(){this.dataset_cancel_input();this.Nctrl.control(this.TBodyNode);this.Nctrl.clear();var i;for(i in this.fields){fld=this.fields[i];if(this.C['Lst_'+fld.name])this.C['Lst_'+fld.name].kill(1);}this.fields={};this.adjust();};this.set=this.set_propset=function(w, h, x, y, nameWidth, fields, listX, listY, cssTable, cssName, cssValue, itemHeight){this.set_cbox(w, h, x, y);if(fields)this.T.fields=fields;if(cssTable)this.T.cssTable=cssTable;if(cssName)this.T.cssName=cssName;if(cssValue)this.T.cssValue=cssValue;if(!isNaN(nameWidth)&& nameWidth > 0)this.T.nameWidth=nameWidth;if(!isNaN(listX))this.T.listX=listX;if(!isNaN(listY))this.T.listY=listY;if(!isNaN(itemHeight))this.T.itemHeight=itemHeight;};this.to_xml=function(tag){var i,f,n;var strOTag='';var strTag='<'+tag+' ';for(i in this.fields){f=this.fields[i];if(f.xml_ignore)continue;n=f.xml_name || f.name;if(!f.xml_type)strTag+=n+'="'+f.value+'" ';else strOTag+='<'+n+'>'+f.value+'</'+n+'>\n';}strTag+='>'+strOTag+'</'+tag+'>';return strTag;};}VegUIPropertySet.prototype=VegUIContentBox;var VUI_TASKBAR=20;vui_module_add(VUI_TASKBAR, VegUITaskBar, 'vegui.taskbar.class.js');var VUI_TB_HORIZONTAL=1;var VUI_TB_VERTICAL=2;function VegUITaskBar(refName, Parent, Manager){this.constructor=VegUINode;this.constructor(refName, Parent, Manager);this.type=VUI_TASKBAR;this.Btns={};this.tbType=VUI_TB_HORIZONTAL;this.buttonSpace=5;this.btnNum=0;this.TplButton=this.add_child('TplButton', VUI_BUTTON);this.TplButton.flags |=VUI_TEMPLATE;this.set_taskbar=this.set=function(w,h,x,y,type,space){this.set_node('div', w, h, x, y);if(type)this.T.tbType=type;if(!isNaN(space))this.T.buttonSpace=space;};this.build_taskbar=this.build=function(toNode){this.tbType=this.T.tbType || VUI_TB_HORIZONTAL;this.buttonSpace=this.T.buttonSpace;this.btnOffset=this.T.btnOffset || 0;if(!this.build_node())return null;this.dock(toNode);return 1;};this.taskbutton_add=function(Win){if(this.taskbutton_exists(Win))return null;if(Win.flags & VUI_NOTASK)return null;var Btn=this.add_child('Btn_'+Win.winIdx, VUI_BUTTON);Btn.clone(this.TplButton);Btn.flags ^=VUI_TEMPLATE;Btn.set(null,null,0,0,0,0,Win.winTitle);Btn.build(this.Base);this.Btns[Win.winIdx]=Btn;this.btnNum++;this.taskbutton_reorder();Btn.States[VUI_MOUSE_UP].Scripts.add(function(){if(Win.Manager.FX && Win.is_hidden()&& typeof vuiTpl_Scale !=='undefined'){var abs=Btn.abs_middle();Win.Manager.FX.effect_add(Win, new VegUIFXScale(abs[0], abs[1], 300, 0, vuiTpl_Scale, true, VUI_WIN_Z+100), function(){Win.show();});}else {Win.show();}});var TB=this;Win.event_add('onclose', function(args){TB.taskbutton_remove(args[0]);});if(this.Manager.FX){Win.event_add('onminimize', function(){if(typeof vuiTpl_Scale=='undefined')return;var abs=Btn.abs_middle();Win.Manager.FX.effect_add(Win, new VegUIFXScale(abs[0], abs[1], 300, 1, vuiTpl_Scale, true, VUI_WIN_Z+100));});}return Btn;};this.taskbutton_exists=function(Win){var winIdx=Win.winIdx;if(!this.Btns[winIdx])return false;return true;};this.taskbutton_reorder=function(){var i, lastPos=this.buttonSpace, fsize;if(this.btnOffset)lastPos+=this.btnOffset;switch(this.tbType){case VUI_TB_HORIZONTAL: if(this.btnNum*this.TplButton.T.w > this.width()){fsize=(this.width()/this.btnNum)-this.buttonSpace-((this.buttonSpace*2)/this.btnNum);}break;case VUI_TB_VERTICAL: if(this.btnNum+this.TplButton.T.h > this.height()){fsize=(this.height()/this.btnNum)-this.buttonSpace-((this.buttonSpace*2)/this.btnNum);}break;}for(i in this.Btns){var Btn=this.Btns[i];switch(this.tbType){case VUI_TB_HORIZONTAL: Btn.move(lastPos, null);if(fsize)Btn.resize(fsize, null);break;case VUI_TB_VERTICAL: Btn.move(null, lastPos);if(fsize)Btn.resize(null, fsize);break;}lastPos+=Btn.width()+this.buttonSpace;}};this.taskbutton_remove=function(Win){var winIdx=Win.winIdx;if(!this.Btns[winIdx])return null;var Btn=this.Btns[winIdx];var Taskbar=this;if(this.Manager.FX){var Effect=this.Manager.FX.effect_add(Btn, new VegUIFXFadeOut(500), function(){Btn.kill(1);delete Taskbar.Btns[winIdx];Taskbar.taskbutton_reorder();Taskbar.btnNum--;});}else {this.Btns[winIdx].kill(1);delete this.Btns[winIdx];this.taskbutton_reorder();this.btnNum--;}};}VegUITaskBar.prototype=VegUINode; var VUI_UIOP_REQUEST=1;var VUI_UIOP_ROUTE=2;var VUI_UIOP_ALERT=3;var VUI_CLIENT_PROTOCOL='xml';function pi(str){return parseInt(str);}function vui_node_attr(node,name,d){var a=node.getAttribute(name);return typeof a==undefined ? d:a;}function VegUIClient(refName,Parent,Manager){this.constructor=VegUIManager;this.constructor(refName);var C=this;this.init_bridge();this.alert=function(str){alert(str);};this.Bridge.execute=function(vreq){var r,i,req=vreq.request;if(VUI_CLIENT_PROTOCOL=='vegui'){var incoming=vreq.request.responseText;var cmds=incoming.split(";");var i;for(i=0;i < cmds.length;i++){C.exec_uiop(cmds[i].split('|'));}}else if(VUI_CLIENT_PROTOCOL=='xml'){C.exec_xml(req.responseXML);}return true;};this.exec_uiop_client=this.exec_uiop=function(p){if(p[0]===undefined)return null;switch(pi(p[0])){case VUI_UIOP_REQUEST: this.request(p[1],(p[2]?p[2]:''),(p[3]?p[3]:'GET'));return 1;case VUI_UIOP_ROUTE: var objName=p[1];p.shift();p.shift();eval('this.'+objName+'.exec_uiop(p);');return 1;case VUI_UIOP_ALERT: this.alert(p[1]);return 1;}return 0;};this.exec_xml_client=this.exec_xml=function(xml){if(!xml||!xml.firstChild)return 0;var c=xml.firstChild.childNodes,i,e;for(i=0;i < c.length;i++){e=c[i];if(e.nodeName=='op'){switch(e.getAttribute('id')){case 'request': this.request(vui_node_attr(e,'script'), vui_node_attr(e,'parameters'), vui_node_attr(e,'method'));break;case 'alert': this.alert(vui_node_attr(e,'text'));break;}}else if(e.nodeName=='module'){var mod=vui_node_attr(e,'name',null);if(!mod||!this.C[mod])continue;this.C[mod].exec_xml(e.childNodes);}}return 1;};this.request=function(scriptName,parameters,method){this.Bridge.send('execute_script.php', 'scr='+scriptName+(parameters?'&'+parameters:''), (method?method:'GET'));};}VegUIClient.prototype=VegUIManager;var VUI_DATASET=40;vui_module_add(VUI_DATASET,VegUIDataset,'vegui.dataset.class.js');var VUI_DSET_INPUT_TEXT=1;var VUI_DSET_INPUT_LIST=2;var VUI_DSET_INPUT_BOOL=3;var VUI_DSET_INPUT_CUSTOM=4;function VegUIDataset(refName,Parent,Manager){this.constructor=VegUIList;this.constructor(refName,Parent,Manager);this.type=VUI_DATASET;this.DetailNodes={};this.T.rows={};this.T.colums={};this.rows={};this.columns={};this.T.cssColumnOver='';this.T.cssColumnNormal='';this.T.cssRow='';this.ListTpl=null;this.Control=this.add_child('Control',VUI_NODE);this.Control.flags|=VUI_TEMPLATE;this.FldInput=this.add_child('FldInput',VUI_NODE);this.FldInputPw=this.add_child('FldInputPw',VUI_NODE);this.FldInputD=this.add_child('FldInputD',VUI_NODE);this.FldInput.flags|=VUI_HMOUSE_OVER| VUI_HMOUSE_OUT| VUI_HFORM_BLUR| VUI_HFORM_FOCUS| VUI_HKEY_DOWN;this.FldInputPw.flags=this.FldInputD.flags=this.FldInput.flags;this.Scaler=this.Manager.get_new(VUI_NODE);this.ListPanel=this.add_child('ListPanel',VUI_NODE);this.FldInput.noAutoShow=this.FldInputPw.noAutoShow=this.FldInputD.noAutoShow=this.ListPanel.noAutoShow=true;this.build_dataset=this.build=function(toNode){this.columns=this.T.columns;this.rows=this.T.rows;this.cssColumnOver=this.T.cssColumnOver;this.cssColumnNormal=this.T.cssColumnNormal;this.cssRow=this.T.cssRow;this.cssDetailed=this.T.cssDetailed;this.noFX=this.T.noFX;this.fxFadeSpeed=this.T.fxFadeSpeed;this.fixCols=this.T.fixCols;this.forceExpand=this.T.forceExpand;if(this.T.multiSelect)this.T.listType=VUI_LISTTYPE_MULTI;this.T.itemHeight=null;this.FldInput.set('input');this.FldInputPw.set('input');this.FldInputD.set('textarea');this.FldInputPw.T.type='password';this.FldInput.T.pos=this.FldInputPw.T.pos=this.FldInputD.T.pos='static';this.FldInput.T.z=this.FldInputPw.T.z=this.FldInputD.T.z=1000;if(!this.build_list())return null;var D=this;this.States[VUI_KEY_DOWN].Scripts.add(function(arg){if(!D.inputFocus&&arg[0].aKey==32)D.expand();else if(arg[0].aKey==46){if(D.sItems.length > 1)D.delete_req_m(D.sItems);else D.delete_req(D.sValue);}});var accept_input=function(arg){if(arg[0].aKey==13){if(arg[0].Base.nodeName.toLowerCase()!='textarea'||arg[0].keyCtrl)D.input_halt();}};var input_mover=function(){D.blockTextSelection=true;};var input_mout=function(){D.blockTextSelection=false;};var input_focus=function(){D.blockTextSelection=D.inputFocus=D.blockKeyScrolling=true;};var input_blur=function(){D.blockTextSelection=D.inputFocus=D.blockKeyScrolling=false;};this.FldInput.States[VUI_KEY_DOWN].Scripts.add(accept_input);this.FldInputPw.States[VUI_KEY_DOWN].Scripts.add(accept_input);this.FldInputD.States[VUI_KEY_DOWN].Scripts.add(accept_input);this.FldInput.States[VUI_MOUSE_OVER].Scripts.add(input_mover);this.FldInputPw.States[VUI_MOUSE_OVER].Scripts.add(input_mover);this.FldInputD.States[VUI_MOUSE_OVER].Scripts.add(input_mover);this.FldInput.States[VUI_MOUSE_OUT].Scripts.add(input_mout);this.FldInputPw.States[VUI_MOUSE_OUT].Scripts.add(input_mout);this.FldInputD.States[VUI_MOUSE_OUT].Scripts.add(input_mout);this.FldInput.States[VUI_FORM_FOCUS].Scripts.add(input_focus);this.FldInputPw.States[VUI_FORM_FOCUS].Scripts.add(input_focus);this.FldInputD.States[VUI_FORM_FOCUS].Scripts.add(input_focus);this.FldInput.States[VUI_FORM_BLUR].Scripts.add(input_blur);this.FldInputPw.States[VUI_FORM_BLUR].Scripts.add(input_blur);this.FldInputD.States[VUI_FORM_BLUR].Scripts.add(input_blur);if(this.Manager.FX){this.Manager.FX.effect_add(this.ListPanel,new VegUIFXShadow());}this.FldInput.hide(1);this.FldInputD.hide(1);this.FldInputPw.hide(1);this.ListPanel.hide(1);this.dock(toNode);this.rebuild();return 1;};this.create_entry=function(fields,asHeader){var c,cell,col;var table=htmlnode('table');table.style.width='100%';table.className=this.cssRow;if(this.fixCols){table.style.tableLayout='fixed';}var tbody=htmlnode('tbody',table);var row=htmlnode('tr',tbody);var D=this;for(c in this.columns){if(typeof fields[c]=='undefined')continue;col=this.columns[c];if(col.hidden)continue;cell=htmlnode('td',row);cell.vuiColName=c;cell.style.overflow='hidden';if(this.fixCols)cell.style.whiteSpace='nowrap';var rowId=fields.id;if(!asHeader){cell.className=this.cssColumnNormal;var cssH=this.cssColumnOver;var cssN=this.cssColumnNormal;cell.onmouseover=function(){if(!D.blockMouse)this.className=cssH;};cell.onmouseout=function(){if(!D.blockMouse)this.className=cssN;};cell.ondblclick=function(){if(!D.blockMouse)D.input_go(rowId,this);};}cell.setAttribute('width',this.columns[c].width+'%');if(!asHeader&&col.editType==VUI_DSET_INPUT_LIST){var cn,L=this.ListPanel.C['List_'+c];var n=L.Table.Base.childNodes[L.find(fields[c])];if(n){var caption=htmlnode('div');for(cn=0;cn < n.childNodes.length;cn++){caption.appendChild(n.childNodes[cn].cloneNode(1));}}}else var caption=txtnode(fields[c]);cell.appendChild(caption);}return table;};this.delete_item=function(value){this.input_halt();delete this.rows[this.row_get(value)];this.drop_item(this.find(value));if(this.C['dNode_'+value])this.C['dNode_'+value].kill(1);};this.delete_items=function(sItems){var i,l;this.input_halt();for(i=0,l=sItems.length;i < l;i++){delete this.rows[this.row_get(sItems[i].itemValue)];if(this.C['dNode_'+sItems[i].itemValue])this.C['dNode_'+sItems[i].itemValue].kill(1);this.drop_item(this.find(sItems[i].itemValue));}};this.delete_req=function(value){this.delete_item(value);};this.delete_req_m=function(sItems){this.delete_items(sItems);};this.expand=function(id){if(id===undefined&&!this.hItem)return null;var n=(id===undefined ? this.hItem.node:this.Table.Base.childNodes[this.find(id)]);var row=this.rows[n.dsetRowIndex];var d=row.detailed;var D=this;if(!d)return null;if(!row.expanded){var dNode=this.add_child('dNode_'+row.id,VUI_NODE);dNode.T.pos='static';dNode.T.className=this.cssDetailed;dNode.T.micon='pointer';dNode.flags|=VUI_HMOUSE_DBL_CLICK;dNode.States[VUI_MOUSE_DBL_CLICK].Scripts.add(function(a){D.input_go(row.id,a[0].Base);});var fx=(Manager.FX&&!this.noFX);if(fx){dNode.T.t=1;}this.Manager.build_element(dNode);if(this.columns.detailed&&this.columns.detailed.raw)dNode.clear(txtnode(d));else dNode.Base.innerHTML=d;if(fx){this.Manager.FX.effect_add(dNode,new VegUIFXFadeIn(this.fxFadeSpeed));}nNode=n.nextSibling;if(nNode)this.Table.Base.insertBefore(dNode.Base,nNode);else this.Table.Base.appendChild(dNode.Base);dNode.Base.vuiColName='detailed';this.DetailNodes[row.id]=dNode;}else {this.DetailNodes[row.id].kill(1);delete this.DetailNodes[row.id];}row.expanded ^=1;this.adjust();};this.input_go=function(id,cell){var row,col,rowNode;if(!(row=this.row_get(id))||(!cell||!cell.vuiColName))return null;if(cell.vuiHasInput)return null;if(this.inputRow&&this.inputCol){this.input_halt();}col=this.columns[cell.vuiColName];if(!col||!col.editType)return null;this.Control.control(cell);this.inputRow=row;this.inputCol=cell.vuiColName;this.inputCell=cell;cell.vuiHasInput=true;switch(col.editType){default: case VUI_DSET_INPUT_TEXT: var isD=false;if(cell.vuiColName !='detailed'){var E=(col.password ? this.FldInputPw:this.FldInput);}else {var E=this.FldInputD;isD=true;}if(isD&&!this.DetailNodes[row.id])break;E.resize(cell.offsetWidth*0.9,cell.offsetHeight*0.9);if(!isD){this.Control.control(cell).clear(E.Base);}else {this.DetailNodes[row.id].clear(E.Base);}if(!col.password){E.Base.value=row[cell.vuiColName];}E.hide(0);E.Base.focus();E.Base.select();this.Manager.unblock_key([37,38,39,40]);break;case VUI_DSET_INPUT_LIST: this.ListPanel.hide(1);var L=this.ListPanel.C['List_'+cell.vuiColName];L.select(row[cell.vuiColName],true);if(this.Manager.FX){var abs=this.Control.abs_middle(this.Table.Base);this.Manager.FX.effect_add(this.ListPanel,new VegUIFXScale(abs[0],abs[1],350,0,this.Scaler,true), function(){L.hide(0);});}else {this.ListPanel.hide(0);L.hide(0);}this.blockMouse=true;this.blockKeyScrolling=true;break;case VUI_DSET_INPUT_CUSTOM: case VUI_DSET_INPUT_BOOL: this.input_halt();break;}};this.input_halt=function(){this.Manager.block_key([37,38,39,40]);if(!this.inputRow||!this.inputCol)return;var newValue,c=this.inputCol,row=this.inputRow;var col=this.columns[c];var isD=false;switch(col.editType){case VUI_DSET_INPUT_TEXT: default: isD=(c=='detailed');if(isD){var E=this.FldInputD;}else var E=(col.password ? this.FldInputPw:this.FldInput);newValue=E.Base.value;E.Base.blur();E.hide(1);E.undock();break;case VUI_DSET_INPUT_LIST: var L=this.ListPanel.C['List_'+c];newValue=L.sValue;this.blockMouse=false;this.blockKeyScrolling=false;if(this.Manager.FX){this.Control.control(this.inputCell);var abs=this.Control.abs_middle();this.Manager.FX.effect_add(this.ListPanel,new VegUIFXScale(abs[0],abs[1],350,1,this.Scaler,true ));}else this.ListPanel.hide(1);break;case VUI_DSET_INPUT_BOOL: newValue=(!row[c]);break;case VUI_DSET_INPUT_CUSTOM: if(col.fetch)newValue=col.fetch();break;}row[c]=newValue;this.row_update(row);if(isD){this.expand(row.id);this.expand(row.id);}this.inputRow=null;this.inputCol=null;this.inputFocus=false;};this.flush_dset=function(){var i;for(i in this.DetailNodes)this.DetailNodes[i].kill(1);this.flush();};this.rebuild=function(){this.flush_dset();var c,r,row,fields={},col,D=this;for(c in this.columns){fields[c]=this.columns[c].caption ? this.columns[c].caption:c;col=this.columns[c];switch(col.editType){case VUI_DSET_INPUT_LIST: var L=this.ListPanel.add_child('List_'+c,VUI_LIST);L.clone(this.ListTpl);L.set_marg(10,10);L.set(100,100,10,10);this.Manager.build_element(L);L.noAutoShow=true;L.hide(1);L.event_add('onchange',function(){D.input_halt();});if(col.fill_list){col.fill_list(L);}break;}}this.add_item(this.create_entry(fields,true),0,true,true);var rowId,l;for(r in this.rows){row=this.rows[r];rowId=row.id;row=this.add_item(this.create_entry(row),row.id,true);row.dsetRowIndex=r;}if(this.forceExpand){for(r in this.rows)this.expand(this.rows[r].id);}this.ListPanel.align_childs();this.adjust();};this.row_add=function(fields,id){fields.id=id;this.rows.push(fields);};this.row_get=function(rowId,getIdx){var i;for(i in this.rows){if(this.rows[i]&&this.rows[i].id===rowId)return (!getIdx ? this.rows[i]:i);}return null;};this.row_update=function(fields){var entry=this.create_entry(fields);var row=this.add_item(entry,fields.id,false,false,true);row.dsetRowIndex=this.row_get(fields.id,true);};this.set_style_dset=this.set_style=function(over,normal,select,header,overSelect,colNormal, colOver,detail){this.set_style_list(over,normal,select,header,overSelect);if(colNormal)this.T.cssColumnNormal=colNormal;if(colOver)this.T.cssColumnOver=colOver;if(detail)this.T.cssDetailed=detail;};this.to_xml=function(tag){var i,f,n,c,C,l;var strOTag='';var strTag='<'+(tag?tag:'dataset')+'>\n';for(i in this.rows){f=this.rows[i];strTag+="<row ";for(c in this.columns){C=this.columns[c];if(C.hidden)continue;strTag+=c+'="'+f[c]+'" ';}var dName=(this.columns.detailed&&this.columns.detailed.xml_attribute ? this.columns.detailed.xml_attribute: 'detailed' );strTag+='id="'+f.id+'" '+dName+'="'+(f.detailed?f.detailed:'')+'" ';strTag+="/>\n";}strTag+='</'+(tag?tag:'dataset')+'>';return strTag;};}VegUIDataset.prototype=VegUIList;var VUI_URL='http://demo.vegui.org/';var VUIDEMO_UIOP_MENU_ADD=200;VUI_WIN_Z=250;var VUI_DEMO_NOTE=2301;vui_module_add(VUI_DEMO_NOTE,VegUIDemoNote,'demo.std.js' );function xml_save(str){var str=str.replace(/\;/,'#SC#');str=str.replace(/\|/,'#P#');return str;}function xml_unsave(str){var str=str.replace(/#SC#/g,';');str=str.replace(/#P#/g,'|');return str;}VUI_CLIENT_PROTOCOL='vegui';function VegUIDemo(refName){this.constructor=VegUIClient;this.constructor(refName);this.Panel=this.add_child('Panel',VUI_DEMO_PANEL);this.Note=this.add_child('Note',VUI_DEMO_NOTE);this.LblVersion=this.add_child('LblVersion',VUI_NODE);this.build_demo=this.build=function(toNode){if(!this.build_manager())return null;this.LblVersion.clear(txtnode('version '+VUI_VERSION));this.dock(toNode);return 1;};this.exec_uiop=this.exec_uiop_demo=function(p){if(p[0]===undefined)return null;if(this.exec_uiop_client(p))return 1;switch(pi(p[0])){case VUIDEMO_UIOP_MENU_ADD: this.Panel.menu_add(p[1],p[2],p[3],p[4]);return 1;}return 0;};this.init=function(){this.Note.set_text('Welcome to the vegUI demonstration! Click the '+'button on the taskbar that says \'vegUI\' to open '+'the vegUI menu' );this.request('init');};this.note_set=function(){};}VegUIDemo.prototype=VegUIClient;function VegUIDemoNote(refName,Parent,Manager){this.constructor=VegUINode;this.constructor(refName,Parent,Manager);this.type=VUI_DEMO_NOTE;this.text='';this.Skin=this.add_child('Skin',VUI_NODE);this.Label=this.add_child('Label',VUI_NODE);this.Label.T.z=2;this.Skin.set_marg(0,0);this.Label.set_marg(0,0);this.build=this.built_note=function(toNode){if(!this.build_node())return null;this.dock(toNode);return 1;};this.set=this.set_note=function(w,h,x,y){this.set_node('div',w,h,x,y);};this.set_text=function(txt){if(this.text&&this.Manager.FX){var Label=this.Label,M=this.Manager;this.Manager.FX.effect_add(this.Label,new VegUIFXFadeOut(500),function(){Label.clear(txtnode(txt));M.FX.effect_add(Label,new VegUIFXFadeIn(500));});}else {this.Label.set_transparency(0);this.Label.clear(txtnode(txt));if(this.Manager.FX)this.Manager.FX.effect_add(this.Label,new VegUIFXFadeIn(500));}this.text=txt;};}VegUIDemoNote.prototype=VegUINode;var VUI_DEMO_PANEL=2501;vui_module_add(VUI_DEMO_PANEL,VegUIDemoPanel,'demo.panel.js' );function VegUIDemoPanel(refName,Parent,Manager){this.constructor=VegUINode;this.constructor(refName,Parent,Manager);this.type=VUI_DEMO_PANEL;this.Clock=null;this.Taskbar=this.add_child('Taskbar',VUI_TASKBAR);this.BtnMenu=this.add_child('BtnMenu',VUI_BUTTON);this.LblTime=this.add_child('LblTime',VUI_NODE);this.MnuStuff=this.add_child('MnuStuff',VUI_MENU);this.MnuApps=this.add_child('MnuApps',VUI_MENU);this.MnuGames=this.add_child('MnuGames',VUI_MENU);this.MnuThemes=this.add_child('MnuThemes',VUI_MENU);this.build=this.build_demo_panel=function(toNode){this.T.Css.overflow='visible';this.iconApps=this.T.iconApps;this.iconGames=this.T.iconGames;this.iconThemes=this.T.iconThemes;if(!this.build_node())return null;var P=this;this.BtnMenu.States[VUI_MOUSE_DOWN].Scripts.add(function(){P.MnuStuff.popup();});this.MnuStuff.add_item('Applications',function(){return;},this.iconApps );this.MnuStuff.add_item('Games',function(){return;},this.iconGames );this.MnuStuff.add_item('Themes',function(){return;},this.iconThemes );this.MnuThemes.add_item('Stylish Blue',function(){document.location.href='?theme=stylishblue';});this.MnuThemes.add_item('Classic Desktop',function(){document.location.href='?theme=classicdesktop';});this.MnuStuff.link_menu(0,this.MnuApps);this.MnuStuff.link_menu(1,this.MnuGames);this.MnuStuff.link_menu(2,this.MnuThemes);this.Clock=setInterval(function(){P.update_clock();},1000 );this.update_clock();this.dock(toNode);return 1;};this.menu_add=function(inMenu,icon,text,script){if(!this['Mnu'+inMenu])return null;this['Mnu'+inMenu].add_item(text,function(){Demo.include(script);},ui_path+'/'+icon );};this.set=this.set_demo_panel=function(w,h,x,y,className){this.set_node('div',w,h,x,y);if(className)this.T.className=className;};this.update_clock=function(){var date=new Date();var d=date.getDay()< 10 ? '0'+date.getDay():date.getDay();var m=date.getMonth()< 10 ? '0'+date.getMonth():date.getMonth();var h=date.getHours()< 10 ? '0'+date.getHours():date.getHours();var i=date.getMinutes()< 10 ? '0'+date.getMinutes():date.getMinutes();var str=h+':'+i+' '+d+'.'+m+'.'+(date.getYear()<1900?date.getYear()+1900:date.getYear());this.LblTime.clear(txtnode(str));};}VegUIDemoPanel.prototype=VegUINode;var VUI_DEMO_INFORMATION=2550;vui_module_add(VUI_DEMO_INFORMATION, VegUIDemoInformation, 'demo.information.js' );function VegUIDemoInformation(refName,Parent,Manager){this.constructor=VegUIWindow;this.constructor(refName,Parent,Manager);this.type=VUI_DEMO_INFORMATION;this.DemoElements=[];this.Tabs=this.Ui.add_child('Tabs',VUI_TABBEDDIALOG);this.TabWidgets=this.Tabs.add_tab('widgets','Overview',100);this.TabTEngine=this.Tabs.add_tab('tengine','Template System',150);this.WidLstWidgets=this.TabWidgets.Panel.add_child('LstWidgets',VUI_LIST);this.WidCBox=this.TabWidgets.Panel.add_child('CBox',VUI_CBOX);this.TesCBox=this.TabTEngine.Panel.add_child('CBox',VUI_CBOX);this.build_info=this.build=function(toNode){if(!this.build_win())return null;var L=this.WidLstWidgets;var I=this;L.add_item_txt('Introduction','introduction');L.add_item_txt('Button','button');L.add_item_txt('Checkbox','checkbox');L.add_item_txt('Contentbox','contentbox');L.add_item_txt('List','list');L.add_item_txt('Selector','selector');L.add_item_txt('Menu','menu');L.add_item_txt('Property Set','propertyset');L.add_item_txt('Tabbed Dialog','tabbeddialog');L.add_item_txt('Window','window');L.onchange=function(){var v=this.sValue;I.WidCBox.fill_remote('module/info/html/'+this.sValue+'.html', function(){I.prepare_page(v);});};this.TesCBox.fill_remote('module/info/html/templateengine.html');this.dock(toNode);return 1;};this.prepare_page=function(page){var i,l;if(this.DemoElements){for(i=0,l=this.DemoElements.length;i < l;i++){this.DemoElements[i].kill(1);}}this.DemoElements=[];var I=this;switch(page){case 'button': var Btn=this.add_child('DemoButton',VUI_BUTTON);Btn.clone(vuitpl_DemoButton);Btn.States[VUI_MOUSE_DOWN].Scripts.add(function(){document.getElementById('demo_button_text').appendChild(txtnode('Click .. Click .. '));I.WidCBox.resize(I.WidCBox.width());});Btn.build(document.getElementById('guide1'));this.DemoElements.push(Btn);break;case 'checkbox': var Cb=this.add_child('DemoCheckbox',VUI_CHECKBOX);Cb.clone(vuitpl_CheckBox);Cb.set(null,null,null,null,'vegUI rocks!');Cb.T.pos='relative';Cb.onchange=function(){var node=document.getElementById('checkbox_message');if(node.childNodes.length > 0)node.removeChild(node.childNodes[0]);if(this.isChecked)node.appendChild(txtnode('Hey,thanks!;D'));else node.appendChild(txtnode('Unacceptable:('));};Cb.build(document.getElementById('guide1'));this.DemoElements.push(Cb);break;case 'contentbox': var Cb=this.WidCBox.add_child('DemoContentBox',VUI_CBOX);Cb.clone(vuitpl_CBox);Cb.set(200,150);Cb.flags ^=VUI_HIDE_SCROLLX;Cb.T.pos='relative';Cb.CHolder.T.bmarg=22;Cb.Content.T.Css.padding='0px';Cb.build(document.getElementById('guide1'));Cb.fill(imgnode(ui_path+'/logo_big.jpg',400,295));this.DemoElements.push(Cb);break;case 'list': var List=this.WidCBox.add_child('DemoList',VUI_LIST);List.clone(vuitpl_List);List.set(150,200,0,0,16,0,3);List.T.pos='relative';List.build(document.getElementById('guide1'));List.add_item_imgtxt(ui_path+'/menu_icon_infos.gif','Text with image',1);var i;for(i=2;i < 12;i++){if(i==6)List.add_item_txt('Header',0,false,true);else List.add_item_txt('Plain Text '+i,i);}this.DemoElements.push(List);break;case 'selector': var Selector=this.WidCBox.add_child('DemoSelector',VUI_SELECTOR);Selector.clone(vuitpl_Selector);Selector.set(200);Selector.T.pos='relative';Selector.Items=[['#838f9a','Default'], ['red','Red'], ['blue','Blue'], ['green','Green']];Selector.onchange=function(){document.getElementById('guide2').style.color=this.value;};Selector.build(document.getElementById('guide1'));this.DemoElements.push(Selector);break;case 'menu': var Menu1=this.WidCBox.add_child('Menu1',VUI_MENU);Menu1.clone(vuitpl_Menu);Menu1.add_item('Some Item',null,ui_path+'/menu_icon_infos.gif');Menu1.add_item('Nested Menu',null,ui_path+'/menu_icon_apps.gif');Menu1.add_item('Another Item',null,ui_path+'/menu_icon_theme.gif');var Menu2=this.WidCBox.add_child('Menu2',VUI_MENU);Menu2.clone(vuitpl_Menu);Menu2.add_item('Sub Item 1',null,ui_path+'/menu_icon_infos.gif');Menu2.add_item('Sub Item 2');var BtnMenuOpen=this.WidCBox.add_child('BtnMenuOpen',VUI_BUTTON);BtnMenuOpen.clone(vuitpl_DemoButton);BtnMenuOpen.set(10,10);var CbNoFade=this.WidCBox.add_child('CbNoFade',VUI_CHECKBOX);CbNoFade.clone(vuitpl_CheckBox);CbNoFade.set(10,150,200,0,'Disable fade effect');var node=document.getElementById('guide1');BtnMenuOpen.States[VUI_MOUSE_DOWN].Scripts.add(function(){Menu1.popup();});BtnMenuOpen.build(node);Menu1.build(node);Menu2.build(node);CbNoFade.build(node);Menu1.link_menu(1,Menu2);Menu1.move(BtnMenuOpen.x()+10,BtnMenuOpen.y2()+15);CbNoFade.onchange=function(){Menu1.fxNoFade=Menu2.fxNoFade=this.isChecked;};this.DemoElements.push(Menu1);this.DemoElements.push(Menu2);this.DemoElements.push(BtnMenuOpen);this.DemoElements.push(CbNoFade);break;case 'propertyset': var PSet=this.WidCBox.add_child('PSet',VUI_PROP_SET);PSet.clone(vuitpl_PropertySet);PSet.T.pos='relative';window.agelist=function(List){var i;List.flush();for(i=18;i < 30;i++)List.add_item_txt(i,i,true);List.adjust();};PSet.set(300,150,0,0,45);PSet.T.fields={yourname:{name:'yourname', caption:'Your Name:', type:VUI_PSET_INPUT, value:'Enter name...' }, age:{name:'age', caption:'Your Age:', type:VUI_PSET_LIST, fill_list:agelist, value:18 }, bored:{name:'bored', caption:'Are you bored?', type:VUI_PSET_CHECK, value:false }};PSet.build(document.getElementById('guide1'));this.DemoElements.push(PSet);break;case 'tabbeddialog': var Tabs=this.WidCBox.add_child('Tabs',VUI_TABBEDDIALOG);Tabs.add_tab('tab1','Tab 1',50);Tabs.add_tab('tab2','Tab 2',50);Tabs.clone(vuitpl_Tab);Tabs.set(200,100,0,0);Tabs.T.pos='relative';Tabs.build(document.getElementById('guide1'));Tabs.Tabs['tab1'].Panel.clear(txtnode('There could be some text and widgets here!'));Tabs.Tabs['tab2'].Panel.clear(txtnode('And there could be even more text and widgets on this tab ...'));this.DemoElements.push(Tabs);break;}this.WidCBox.resize(this.WidCBox.width());};}VegUIDemoInformation.prototype=VegUIWindow;var VUI_DEMO_POPUP_MACHINE=2503;vui_module_add(VUI_DEMO_POPUP_MACHINE,VegUIDemoPopupMachine,'demo.popupmachine.js' );function VegUIDemoPopupMachine(refName,Parent,Manager){this.constructor=VegUIWindow;this.constructor(refName,Parent,Manager);this.type=VUI_DEMO_POPUP_MACHINE;this.Popups=[];this.LblTitle=this.Ui.add_child('LblTitle',VUI_NODE);this.FldTitle=this.Ui.add_child('FldTitle',VUI_NODE);this.LblText=this.Ui.add_child('LblText',VUI_NODE);this.FldText=this.Ui.add_child('FldText',VUI_NODE);this.BtnSpawn=this.Ui.add_child('BtnSpawn',VUI_BUTTON);this.BtnClear=this.Ui.add_child('BtnClear',VUI_BUTTON);this.build=this.build_popupmachine=function(toNode){if(!this.build_win())return null;this.LblTitle.clear(txtnode('Title:'));this.LblText.clear(txtnode('Text:'));this.FldTitle.Base.value='A Window';this.FldText.Base.value='You could change this text if youre not lazy';var PM=this;this.BtnSpawn.States[VUI_MOUSE_UP].Scripts.add(function(){PM.popup_spawn();});this.BtnClear.States[VUI_MOUSE_DOWN].Scripts.add(function(){PM.popup_clear();});this.dock(toNode);return 1;};this.popup_spawn=function(){var title=this.FldTitle.Base.value||'Some title';var text=this.FldText.Base.value||'Some text';var Win=this.Manager.get_new(VUI_WIN);Win.clone(vuitpl_Window);Win.set(title,350,150,vui_rand(100,300),vui_rand(100,300));Win.flags|=VUI_NORESIZE|VUI_KILL_ON_CLOSE|VUI_NOMINIMIZE|VUI_NOTASK;var node=Win.Ui.add_child('thetext',VUI_NODE);node.T.className='win_label_b';node.T.Css.padding='5px';node.set('div',0,0,10,30);node.set_marg(10,10);this.Manager.build_element(Win);node.clear(txtnode(text));this.Popups.push(Win);};this.popup_clear=function(){var i;for(i in this.Popups){this.Popups[i].close();}this.Popups=[];return 1;};}VegUIDemoPopupMachine.prototype=VegUIWindow;var VUI_DEMO_BLOG_COMMENT=2505;vui_module_add(VUI_DEMO_BLOG_COMMENT,VegUIBlogCommentEditor,'demo.blogcomment.js');var VUID_UIOP_BLOG_COMMENT_ERROR=1;var VUID_UIOP_BLOG_COMMENT_INFO=2;var VUID_UIOP_BLOG_COMMENT_RESET=3;var VUID_UIOP_BLOG_COMMENT_SET_COMMENTS=4;function VegUIBlogCommentEditor(refName,Parent,Manager){this.constructor=VegUIWindow;this.constructor(refName,Parent,Manager);this.type=VUI_DEMO_BLOG_COMMENT;this.message='';this.lastCommentId=0;this.LblUsername=this.Ui.add_child('LblUsername',VUI_NODE);this.LblEmail=this.Ui.add_child('LblEmail',VUI_NODE);this.LblWeblink=this.Ui.add_child('LblWeblink',VUI_NODE);this.LblComment=this.Ui.add_child('LblComment',VUI_NODE);this.FldUsername=this.Ui.add_child('FldUsername',VUI_NODE);this.FldEmail=this.Ui.add_child('FldEmail',VUI_NODE);this.FldWeblink=this.Ui.add_child('FldWeblink',VUI_NODE);this.FldComment=this.Ui.add_child('FldComment',VUI_NODE);this.DSetComments=this.Ui.add_child('DSetComments',VUI_CBOX);this.BtnPost=this.Ui.add_child('BtnPost',VUI_BUTTON);this.LblLink=this.Ui.add_child('LblLink',VUI_NODE);this.LblLog=this.Ui.add_child('LblLog',VUI_NODE);this.LblMessage=this.LblLog.add_child('LblMessage',VUI_NODE);this.build=this.build_blogcomment=function(toNode){this.LblLink.T.innerHTML='You can also check the comments directly on '+'the blog entry on the vegui website,simply '+'follow <a href="http://www.vegui.org/site/'+'blog/2" target="_blank">this link</a>.';this.cssUsername=this.T.cssUsername;this.cssEmail=this.T.cssEmail;this.cssText=this.T.cssText;this.cssComment=this.T.cssComment;var BC=this;this.Fetch=setInterval(function(){BC.Manager.request('comment.fetch','&from_id='+BC.lastCommentId );},20000 );this.event_add('onkill',function(a){clearInterval(a[0].Fetch);});if(!this.build_win())return null;this.LblUsername.clear(txtnode('Name:'));this.LblEmail.clear(txtnode('E-mail:'));this.LblWeblink.clear(txtnode('Website:'));this.LblComment.clear(txtnode('Comment:'));this.BtnPost.States[VUI_MOUSE_DOWN].Scripts.add(function(){BC.send();});this.dock(toNode);return 1;};this.build_message=function(message,isError){this.message=message;var node=htmlnode('div');var icon=imgnode(ui_path+(isError?'/bc_failed.gif':'/bc_okay.gif'),39,36);icon.style.verticalAlign='middle';node.appendChild(icon);node.appendChild(txtnode(message));node.className=(isError?'bc_msg_error':'bc_msg_info');this.LblMessage.clear(node);};this.exec_uiop=function(p){if(p[0]===undefined)return 0;switch(pi(p[0])){case VUID_UIOP_BLOG_COMMENT_ERROR: this.set_message(p[1],true);break;case VUID_UIOP_BLOG_COMMENT_INFO: this.set_message(p[1]);break;case VUID_UIOP_BLOG_COMMENT_RESET: this.reset();this.Manager.request('comment.fetch','&from_id='+this.lastCommentId);break;case VUID_UIOP_BLOG_COMMENT_SET_COMMENTS: var i;for(i=2;i < p.length;i+=5){var comment=htmlnode('div');var username=htmlnode('div',comment);username.appendChild(txtnode(xml_unsave(p[i])));if(p[i+1]){var email=htmlnode('div',comment);email.appendChild(txtnode(xml_unsave(p[i+1])));email.className=this.cssEmail;}var text=htmlnode('div',comment);text.innerHTML=xml_unsave(p[i+3]);username.className=this.cssUsername;text.className=this.cssText;comment.className=this.cssComment;var CommentControl=this.Manager.get_new(VUI_NODE);CommentControl.control(comment);CommentControl.set_transparency(0);CommentControl.dock(this.DSetComments.Content.Base, (this.lastCommentId ? this.DSetComments.Content.Base.childNodes[0]: null));this.DSetComments.resize(this.DSetComments.width());this.Manager.FX.effect_add(CommentControl,new VegUIFXFadeIn(500),function(){this.Element.kill(1,1);});}this.lastCommentId=pi(p[1]);break;}};this.reset=function(){if(!this.Base)return 0;this.FldUsername.Base.value='';this.FldEmail.Base.value='';this.FldWeblink.Base.value='';this.FldComment.Base.value='';};this.send=function(){var username=this.FldUsername.Base.value;var email=this.FldEmail.Base.value;var weblink=this.FldWeblink.Base.value;var comment=this.FldComment.Base.value;this.Manager.request('comment','&username='+username+'&weblink='+weblink+'&email='+email+'&comment='+comment,'POST' );};this.set_message=function(message,isError){var M=this.Manager,BC=this;if(this.message&&this.Manager.FX){this.Manager.FX.effect_add(this.LblMessage,new VegUIFXFadeOut(500),function(){BC.build_message(message,isError);M.FX.effect_add(BC.LblMessage,new VegUIFXFadeIn(500));});}else if(!this.message){this.LblMessage.set_transparency(0);this.build_message(message,isError);M.FX.effect_add(this.LblMessage,new VegUIFXFadeIn(500));}else {this.build_message(message,isError);}};}VegUIBlogCommentEditor.prototype=VegUIWindow;var GUTRIS=871;var GUTRIS_GRID=872;vui_module_add(GUTRIS,GUTris,'gutris.js');vui_module_add(GUTRIS_GRID,GUTrisGrid,'gutris.js');var GUTRIS_BLOCK_RED=1;var GUTRIS_BLOCK_GREEN=2;var GUTRIS_BLOCK_BLUE=3;var GUTRIS_BLOCK_ORANGE=4;var GUTRIS_BLOCK_TURQ=5;var GUTRIS_BLOCK_PURPLE=6;var GUTRIS_BLOCK_SPECIAL=7;function strfill(c,i){var n,str='';for(n=0;n < i;n++)str+=c;return str;}var GUTRIS_SHAPE_L={w:2, h:3, grid:'101011' };var GUTRIS_SHAPE_LR={w:2, h:3, grid:'020222' };var GUTRIS_SHAPE_SQ={w:2, h:2, grid:'3333' };var GUTRIS_SHAPE_P={w:1, h:4, grid:'4444' };var GUTRIS_SHAPE_N={w:2, h:3, grid:'055550' };var GUTRIS_SHAPE_NR={w:2, h:3, grid:'606606' };var GUTRIS_SHAPE_T={w:3, h:2, grid:'040444' };var GUTRIS_SHAPES=[GUTRIS_SHAPE_L,GUTRIS_SHAPE_LR,GUTRIS_SHAPE_SQ,GUTRIS_SHAPE_P, GUTRIS_SHAPE_N,GUTRIS_SHAPE_NR,GUTRIS_SHAPE_T ];var GUTRIS_LEVELS={10:{score:100000,move:80 }, 9:{score:70000,move:100}, 8:{score:60000,move:200}, 7:{score:45000,move:300}, 6:{score:35000,move:400}, 5:{score:25000,move:500}, 4:{score:10000,move:600}, 3:{score:5000,move:700}, 2:{score:2500,move:800}, 1:{score:1000,move:1000}, 0:{score:0,move:1000}};function GUTris(refName,Parent,Manager){this.constructor=VegUINode;this.constructor(refName,Parent,Manager);this.type=GUTRIS;this.score=0;this.multiplicator=0;this.Shape=0;this.blockSize=16;this.moveTime=1000;this.level=0;var G=this;this.TplShapeNext=GUTRIS_SHAPES[vui_rand(0,GUTRIS_SHAPES.length-1)];this.flags|=VUI_HMOUSE_DOWN|VUI_HKEY_DOWN;this.Grid=this.add_child('Grid',GUTRIS_GRID);this.LblScoreHead=this.add_child('LblScoreHead',VUI_NODE);this.LblScore=this.add_child('LblScore',VUI_NODE);this.LblNextHead=this.add_child('LblNextHead',VUI_NODE);this.LblNext=this.add_child('LblNext',VUI_NODE);this.ShapeNext=this.LblNext.add_child('ShapeNext',GUTRIS_GRID);this.ShapeNext.T.pos='relative';this.LblLevel=this.add_child('LblLevel',VUI_NODE);this.LblAlert=this.add_child('LblAlert',VUI_NODE);this.LblAlert.noAutoShow=true;this.BtnRestart=this.add_child('BtnRestart',VUI_BUTTON);this.process=function(){this.LblScore.clear(txtnode(this.score));this.LblLevel.clear(txtnode('Level:'+this.level));if(this.hold)return;if(this.C['Shape']&&!this.moveCounter){this.shape_move(this.Shape.posX,this.Shape.posY+1);this.moveCounter=this.moveTime;}if(this.moveCounter)this.moveCounter-=100;};this.shape_spawn=function(){var Tpl=this.TplShapeNext;this.TplShapeNext=GUTRIS_SHAPES[vui_rand(0,GUTRIS_SHAPES.length-1)];var Shape=this.add_child('Shape',GUTRIS_GRID);Shape.set(Tpl.h,Tpl.w);Shape.T.gridStr=Tpl.grid;Shape.T.Css.visibility='hidden';Shape.T.imgPath=this.Grid.imgPath;this.ShapeNext.kill(1);this.ShapeNext=this.LblNext.add_child('ShapeNext',GUTRIS_GRID);this.ShapeNext.set(this.TplShapeNext.h,this.TplShapeNext.w);this.ShapeNext.T.gridStr=this.TplShapeNext.grid;this.ShapeNext.T.imgPath=this.Grid.imgPath;this.ShapeNext.build(this.LblNext.Base);this.Shape=Shape;this.Manager.build_element(Shape);if(this.shape_move(this.Grid.cols/2-Tpl.w/2,0,true)!==false ){this.Shape.hide(0);}else {clearInterval(this.GameTimer);this.alert('Game Over!');}};this.advance_score=function(n){if(this.multiplicator)var n=n*this.multiplicator;this.score+=n;var l,L,level;for(l in GUTRIS_LEVELS){L=GUTRIS_LEVELS[l];level=parseInt(l);if(this.score > L.score&&this.level < level){this.level=level;this.moveTime=L.move;}}};this.flush_rows=function(){var r,Row,erased=[],G=this;for(r=0;r < this.Grid.rows;r++){Row=this.Grid['Row'+r];if(Row.Base.childNodes.length==this.Grid.cols){this.Grid.row_erase(r,false,function(){G.advance_score(120);G.flush_rows();});this.multiplicator++;this.hold=true;return true;}}this.multiplicator=0;this.hold=false;};this.shape_move=function(x,y,noBail){if(!this.C['Shape'])return false;var x=parseInt(x);var y=parseInt(y);if(this.Grid.collides(this.Shape,x,y)){if(!noBail){this.Grid.merge(this.Shape);this.Shape.kill(1);this.flush_rows();this.shape_spawn();}return false;}this.Shape.move(x*this.Grid.blockSize,y*this.Grid.blockSize );this.Shape.posX=x;this.Shape.posY=y;};this.alert=function(msg){this.LblAlert.clear(txtnode(msg));this.LblAlert.set_transparency(0);this.LblAlert.hide(0);this.Manager.FX.effect_add(this.LblAlert,new VegUIFXFadeIn(500,80));};this.restart=function(noStart){var G=this;clearInterval(this.GameTimer);this.LblAlert.hide(1);this.Grid.flush();this.ShapeNext.flush();this.score=0;this.hold=false;this.level=0;this.moveTime=1000;if(this.C['Shape'])this.C['Shape'].kill(1);if(!noStart){this.shape_spawn();this.GameTimer=setInterval(function(){G.process();},100);}};this.build=this.build_gutris=function(toNode){var G=this;if(!this.build_node())return null;this.States[VUI_MOUSE_DOWN].Scripts.add(function(){G.set_focus(VUI_FOCUS_ACTIVE);});this.States[VUI_KEY_DOWN].Scripts.add(function(){G.process_key(G.aKey);});this.BtnRestart.States[VUI_MOUSE_DOWN].Scripts.add(function(){G.restart();});this.LblScoreHead.clear(txtnode('Score:'));this.LblNextHead.clear(txtnode('Next Shape:'));this.onkill=function(){this.restart(true);};this.LblAlert.hide(1);this.dock(toNode);return 1;};this.process_key=function(key){if(this.hold)return;switch(key){case 37: if(this.C['Shape'])this.shape_move(this.Shape.posX-1,this.Shape.posY,1);break;case 38: if(this.C['Shape']){this.Shape.rotate(this.Grid);}break;case 39: if(this.C['Shape'])this.shape_move(this.Shape.posX+1,this.Shape.posY,1);break;case 40: if(this.C['Shape'])this.shape_move(this.Shape.posX,this.Shape.posY+1,1);break;default: break;}};}GUTris.prototype=VegUINode;function GUTrisGrid(refName,Parent,Manager){this.constructor=VegUINode;this.constructor(refName,Parent,Manager);this.type=GUTRIS_GRID;this.gridStr='';this.posX=0;this.posY=0;this.Rows=[];this.BlockTypes=[];this.BlockTypes[GUTRIS_BLOCK_RED]='red';this.BlockTypes[GUTRIS_BLOCK_GREEN]='green';this.BlockTypes[GUTRIS_BLOCK_BLUE]='blue';this.BlockTypes[GUTRIS_BLOCK_ORANGE]='orange';this.BlockTypes[GUTRIS_BLOCK_TURQ]='turq';this.BlockTypes[GUTRIS_BLOCK_PURPLE]='purple';this.BlockTypes[GUTRIS_BLOCK_SPECIAL]='gold';this.BlockControl=this.add_child('BlockControl',VUI_NODE);this.BlockControl.flags|=VUI_TEMPLATE;this.build=this.build_grid=function(toNode){this.blockSize=this.T.blockSize||16;this.rows=this.T.rows||20;this.cols=this.T.cols||10;this.imgPath=this.T.imgPath||'';this.gridStr=this.T.gridStr||strfill('0',(this.rows*this.cols));this.set_node('div',this.cols*this.blockSize,this.rows*this.blockSize);var i,o;for(i=0;i < this.rows;i++){o=this['Row'+i]=this.add_child('Row'+i,VUI_NODE);o.set_marg(0);o.set('div',this.blockSize,this.blockSize,0,i*this.blockSize);this.Rows.push(o);}if(!this.build_node())return null;this.update_grid();this.dock(toNode);return 1;};this.update_grid=function(){var str=this.gridStr;if(!str)return null;var x,y,i=0,c,R,N=this.BlockControl;for(y=0;y < this.rows;y++){R=this['Row'+y];R.clear();for(x=0;x < this.cols;x++,i++){if(i > str.length)return;c=parseInt(str.charAt(i));if(c){N.control(imgnode(this.imgPath+'block_'+this.BlockTypes[c]+'.gif', this.blockSize, this.blockSize ));N.set_pos('absolute');N.move(x*this.blockSize);N.dock(R.Base);}}}};this.set=this.set_grid=function(rows,cols){if(rows)this.T.rows=rows;if(cols)this.T.cols=cols;};this.row_set=function(row,block){var i=(this.cols*row);var str,strl,strr;if(!(str=this.gridStr))return;strl=str.substr(0,i);strr=str.substr(i+this.cols);this.gridStr=strl+strfill(block,this.cols)+strr;var R=this['Row'+row];R.clear();R.set_transparency(100);if(block){var n,N=this.BlockControl;for(n=0;n < this.cols;n++){N.control(imgnode(this.imgPath+'block_'+this.BlockTypes[block]+'.gif'), this.blockSize, this.blockSize );N.move(this.blockSize*n);}}};this.row_pull=function(row,noUpdate){var i=(this.cols*row)+this.cols-1;var grid=this.gridStr.split("");for(;i>=0;i--){if(i >=this.cols)grid[i]=grid[i-this.cols];else grid[i]=0;}this.gridStr=grid.join("");if(!noUpdate)this.update_grid();};this.row_erase=function(row,noUpdate,func){var G=this;this.Manager.FX.effect_add(this['Row'+row],new VegUIFXFadeOut(500),function(){G.row_set(row,0);G.row_pull(row,noUpdate);if(func)func();});};this.merge=function(Grid){var i,str,strl,strr,x,y,r;var Parent=this.gridStr.split("");var Child=Grid.gridStr.split("");for(y=0;y < Grid.rows;y++){for(x=0;x < Grid.cols;x++){if((r=parseInt(Child[y*Grid.cols+x])))Parent[((Grid.posY+y)*this.cols)+(Grid.posX+x)]=r;}}this.gridStr=Parent.join("");this.update_grid();};this.collides=function(Grid,pX,pY){if(!Grid)return;if(isNaN(pX))var pX=Grid.posX;if(isNaN(pY))var pY=Grid.posY;var x,y,x2,y2,i,n,w=pX+Grid.cols,h=pY+Grid.rows;if(h > this.rows||w > this.cols||pX < 0||pY < 0)return true;var Parent=this.gridStr.split("");var Child=Grid.gridStr.split("");for(y=0;y < Grid.rows;y++){for(x=0;x < Grid.cols;x++){if(parseInt(Child[y*Grid.cols+x])&&parseInt(Parent[((pY+y)*this.cols)+(pX+x)]))return true;}}return false;};this.flush=function(){var i;for(i=0;i < this.rows;i++)this['Row'+i].clear();this.gridStr=strfill('0',this.cols*this.rows);};this.rotate=function(cGrid){var i,o,tmp;var x,y,c;var oldGrid=this.gridStr.split("");var Grid=new Array(this.cols*this.rows);for(y=0;y < this.rows;y++){for(x=0;x < this.cols;x++){c=parseInt(oldGrid[y*this.cols+x]);Grid[(x*this.rows)+(this.rows-(y+1))]=c;}}var oldGridStr=this.gridStr;this.gridStr=Grid.join("");tmp=this.cols;this.cols=this.rows;this.rows=tmp;if(cGrid&&cGrid.collides(this)){tmp=this.cols;this.cols=this.rows;this.rows=tmp;this.gridStr=oldGridStr;return;}for(i in this.Rows)this.Rows[i].kill(1);this.Rows=[];this.resize(this.height(),this.width());for(i=0;i < this.rows;i++){o=this['Row'+i]=this.add_child('Row'+i,VUI_NODE);o.set_marg(0);o.set('div',this.blockSize,this.blockSize,0,i*this.blockSize);this.Rows.push(o);o.build(this.Base);}this.update_grid();};}GUTrisGrid.prototype=VegUINode;