summaryrefslogtreecommitdiff
path: root/swat/apps/script/qx.js
blob: 13ae211c94bd8459f6668144838215bc0e977034 (plain)
1
if(!window.qx){qx={}};if(!qx.Settings){qx.Settings={}};if(!qx.Settings._customSettings){qx.Settings._customSettings={}};qx.Settings._defaultSettings={};qx._LOADSTART=(new Date).valueOf();qx.Settings.substitute=function(vTemplate){if(typeof vTemplate!=="string"){return vTemplate};return vTemplate.replace(/\%\{(.+)\}/g,function(vMatch,vKey){return eval(vKey)})};qx.Settings.getValue=function(vKey){return qx.Settings.getValueOfClass(qx.Class.classname,vKey)};qx.Settings.getValueOfClass=function(vClassName,vKey){var vCustomObject=qx.Settings._customSettings[vClassName];if(vCustomObject&&vCustomObject[vKey]!=null){return vCustomObject[vKey]};var vDefaultObject=qx.Settings._defaultSettings[vClassName];if(vDefaultObject&&vDefaultObject[vKey]!=null){return vDefaultObject[vKey]};return null};qx.Settings.setDefault=function(vKey,vValue){return qx.Settings.setDefaultOfClass(qx.Class.classname,vKey,vValue)};qx.Settings.setDefaultOfClass=function(vClassName,vKey,vValue){var vDefaultObject=qx.Settings._defaultSettings[vClassName];if(!vDefaultObject){vDefaultObject=qx.Settings._defaultSettings[vClassName]={}};vDefaultObject[vKey]=vValue};qx.Settings.setCustom=function(vKey,vValue){return qx.Settings.setCustomOfClass(qx.Class.classname,vKey,vValue)};qx.Settings.setCustomOfClass=function(vClassName,vKey,vValue){var vCustomObject=qx.Settings._customSettings[vClassName];if(!vCustomObject){vCustomObject=qx.Settings._customSettings[vClassName]={}};vCustomObject[vKey]=qx.Settings.substitute(vValue)};qx.Settings.init=function(){for(var vClass in qx.Settings._customSettings){var vSettings=qx.Settings._customSettings[vClass];for(var vKey in vSettings){qx.Settings.setCustomOfClass(vClass,vKey,vSettings[vKey])}}};qx.Settings.init();qx.OO={};qx.OO.classes={};qx.OO.setter={};qx.OO.getter={};qx.OO.resetter={};qx.OO.values={};qx.OO.propertyNumber=0;qx.OO.C_SET="set";qx.OO.C_GET="get";qx.OO.C_APPLY="apply";qx.OO.C_RESET="reset";qx.OO.C_FORCE="force";qx.OO.C_TOGGLE="toggle";qx.OO.C_CHANGE="change";qx.OO.C_STORE="store";qx.OO.C_RETRIEVE="retrieve";qx.OO.C_PRIVATECHANGE="_change";qx.OO.C_INVALIDATE="_invalidate";qx.OO.C_INVALIDATED="_invalidated";qx.OO.C_RECOMPUTE="_recompute";qx.OO.C_CACHED="_cached";qx.OO.C_COMPUTE="_compute";qx.OO.C_COMPUTED="_computed";qx.OO.C_UNITDETECTION="_unitDetection";qx.OO.C_GLOBALPROPERTYREF="PROPERTY_";qx.OO.C_UNIT_VALUE="Value";qx.OO.C_UNIT_PARSED="Parsed";qx.OO.C_UNIT_TYPE="Type";qx.OO.C_UNIT_TYPE_NULL="TypeNull";qx.OO.C_UNIT_TYPE_PIXEL="TypePixel";qx.OO.C_UNIT_TYPE_PERCENT="TypePercent";qx.OO.C_UNIT_TYPE_AUTO="TypeAuto";qx.OO.C_UNIT_TYPE_FLEX="TypeFlex";qx.OO.C_GETDEFAULT="getDefault";qx.OO.C_SETDEFAULT="setDefault";qx.OO.C_RETRIEVEDEFAULT="retrieveDefault";qx.OO.C_STOREDEFAULT="storeDefault";qx.OO.C_VALUE="_value";qx.OO.C_NULL="_null";qx.OO.C_EVAL="_eval";qx.OO.C_CHECK="_check";qx.OO.C_MODIFY="_modify";qx.OO.C_NAMESPACE_SEP=".";qx.OO.C_UNDEFINED="undefined";qx.OO.defineClass=function(vClassName,vSuper,vConstructor){var vSplitName=vClassName.split(qx.OO.C_NAMESPACE_SEP);var vNameLength=vSplitName.length-1;var vTempObject=window;for(var i=0;i<vNameLength;i++){if(typeof vTempObject[vSplitName[i]]===qx.OO.C_UNDEFINED){vTempObject[vSplitName[i]]={}};vTempObject=vTempObject[vSplitName[i]]};if(typeof vSuper===qx.OO.C_UNDEFINED){if(typeof vConstructor!==qx.OO.C_UNDEFINED){throw new Error("SuperClass is undefined, but constructor was given for class: "+vClassName)};qx.Class=vTempObject[vSplitName[i]]={};qx.Proto=null;qx.Super=null}else if(typeof vConstructor===qx.OO.C_UNDEFINED){qx.Class=vTempObject[vSplitName[i]]=vSuper;qx.Proto=null;qx.Super=vSuper}else{qx.Class=vTempObject[vSplitName[i]]=vConstructor;var vHelperConstructor=function(){};vHelperConstructor.prototype=vSuper.prototype;qx.Proto=vConstructor.prototype=new vHelperConstructor;qx.Super=vConstructor.superclass=vSuper;qx.Proto.classname=vConstructor.classname=vClassName;qx.Proto.constructor=vConstructor};qx.OO.classes[vClassName]=qx.Class};qx.OO.addFastProperty=function(vConfig){var vName=vConfig.name;var vUpName=qx.lang.String.toFirstUp(vName);var vStorageField=qx.OO.C_VALUE+vUpName;var vGetterName=qx.OO.C_GET+vUpName;var vSetterName=qx.OO.C_SET+vUpName;var vComputerName=qx.OO.C_COMPUTE+vUpName;qx.Proto[vStorageField]=typeof vConfig.defaultValue!==qx.constant.Type.UNDEFINED?vConfig.defaultValue:null;if(vConfig.noCompute){qx.Proto[vGetterName]=function(){return this[vStorageField]}}else{qx.Proto[vGetterName]=function(){return this[vStorageField]==null?this[vStorageField]=this[vComputerName]():this[vStorageField]}};if(vConfig.setOnlyOnce){qx.Proto[vSetterName]=function(vValue){this[vStorageField]=vValue;this[vSetterName]=null;return vValue}}else{qx.Proto[vSetterName]=function(vValue){return this[vStorageField]=vValue}};if(!vConfig.noCompute){qx.Proto[vComputerName]=function(){return null}}};qx.OO.addCachedProperty=function(p){var vName=p.name;var vUpName=qx.lang.String.toFirstUp(vName);var vStorageField=qx.OO.C_CACHED+vUpName;var vComputerName=qx.OO.C_COMPUTE+vUpName;var vChangeName=qx.OO.C_PRIVATECHANGE+vUpName;if(typeof p.defaultValue!==qx.constant.Type.UNDEFINED){qx.Proto[vStorageField]=p.defaultValue};qx.Proto[qx.OO.C_GET+vUpName]=function(){if(this[vStorageField]==null){this[vStorageField]=this[vComputerName]()};return this[vStorageField]};qx.Proto[qx.OO.C_INVALIDATE+vUpName]=function(){if(this[vStorageField]!=null){this[vStorageField]=null;if(p.addToQueueRuntime){this.addToQueueRuntime(p.name)}}};qx.Proto[qx.OO.C_RECOMPUTE+vUpName]=function(){var vOld=this[vStorageField];var vNew=this[vComputerName]();if(vNew!=vOld){this[vStorageField]=vNew;this[vChangeName](vNew,vOld);return true};return false};qx.Proto[vChangeName]=function(vNew,vOld){};qx.Proto[vComputerName]=function(){return null}};qx.OO.addPropertyGroup=function(p){if(typeof p!==qx.constant.Type.OBJECT){throw new Error("Param should be an object!")};if(qx.util.Validation.isInvalid(p.name)){throw new Error("Malformed input parameters: name needed!")};if(qx.util.Validation.isInvalid(p.members)){throw new Error("Malformed input parameters: members needed!")};p.method=qx.lang.String.toFirstUp(p.name);p.getter=[];p.setter=[];for(var i=0,l=p.members.length;i<l;i++){p.setter.push(qx.OO.C_SET+qx.lang.String.toFirstUp(p.members[i]))};for(var i=0,l=p.members.length;i<l;i++){p.getter.push(qx.OO.C_GET+qx.lang.String.toFirstUp(p.members[i]))};qx.Proto[qx.OO.C_GET+p.method]=function(){var a=[];var g=p.getter;for(var i=0,l=g.length;i<l;i++){a.push(this[g[i]]())};return a};switch(p.mode){case "shorthand":qx.Proto[qx.OO.C_SET+p.method]=function(){if(arguments.length>4||arguments.length==0){throw new Error("Invalid number of arguments for property "+p.name+": "+arguments)};try{var ret=qx.lang.Array.fromShortHand(arguments)}catch(ex){throw new Error("Invalid shorthand values for property "+p.name+": "+arguments+": "+ex)};var s=p.setter;var l=s.length;for(var i=0;i<l;i++){this[s[i]](ret[i])}};break;default:qx.Proto[qx.OO.C_SET+p.method]=function(){var s=p.setter;var l=s.length;if(arguments.length!=l){throw new Error("Invalid number of arguments (needs: "+l+", is: "+arguments.length+") for property "+p.name+": "+qx.lang.Array.fromArguments(arguments).toString())};for(var i=0;i<l;i++){this[s[i]](arguments[i])}}}};qx.OO.removeProperty=function(p){if(typeof qx.Proto._properties!==qx.constant.Type.STRING){throw new Error("Has no properties!")};if(typeof p!==qx.constant.Type.OBJECT){throw new Error("Param should be an object!")};if(qx.util.Validation.isInvalid(p.name)){throw new Error("Malformed input parameters: name needed!")};var pp=qx.Proto;p.method=qx.lang.String.toFirstUp(p.name);p.implMethod=p.impl?qx.lang.String.toFirstUp(p.impl):p.method;var valueKey=qx.OO.C_VALUE+p.method;pp._properties=qx.lang.String.remove(pp._properties,p.name);pp[valueKey]=null;pp[qx.OO.C_GET+p.method]=null;pp[qx.OO.C_SET+p.method]=null;pp[qx.OO.C_RESET+p.method]=null;pp[qx.OO.C_APPLY+p.method]=null;pp[qx.OO.C_FORCE+p.method]=null;pp[qx.OO.C_GETDEFAULT+p.method]=null;pp[qx.OO.C_SETDEFAULT+p.method]=null};qx.OO._createProperty=function(p){if(typeof p!==qx.constant.Type.OBJECT){throw new Error("AddProperty: Param should be an object!")};if(qx.util.Validation.isInvalid(p.name)){throw new Error("AddProperty: Malformed input parameters: name needed!")};var pp=qx.Proto;p.method=qx.lang.String.toFirstUp(p.name);p.implMethod=p.impl?qx.lang.String.toFirstUp(p.impl):p.method;if(qx.util.Validation.isInvalid(p.defaultValue)){p.defaultValue=null};if(qx.util.Validation.isInvalidBoolean(p.allowNull)){p.allowNull=true};if(qx.util.Validation.isInvalidBoolean(p.allowMultipleArguments)){p.allowMultipleArguments=false};if(typeof p.type===qx.constant.Type.STRING){p.hasType=true}else if(typeof p.type!==qx.constant.Type.UNDEFINED){throw new Error("AddProperty: Invalid type definition for property "+p.name+": "+p.type)}else{p.hasType=false};if(typeof p.instance===qx.constant.Type.STRING){p.hasInstance=true}else if(typeof p.instance!==qx.constant.Type.UNDEFINED){throw new Error("AddProperty: Invalid instance definition for property "+p.name+": "+p.instance)}else{p.hasInstance=false};if(typeof p.classname===qx.constant.Type.STRING){p.hasClassName=true}else if(typeof p.classname!==qx.constant.Type.UNDEFINED){throw new Error("AddProperty: Invalid classname definition for property "+p.name+": "+p.classname)}else{p.hasClassName=false};p.hasConvert=qx.util.Validation.isValidFunction(p.convert);p.hasPossibleValues=qx.util.Validation.isValidArray(p.possibleValues);p.hasUnitDetection=qx.util.Validation.isValidString(p.unitDetection);p.addToQueue=p.addToQueue||false;p.addToQueueRuntime=p.addToQueueRuntime||false;p.up=p.name.toUpperCase();qx.OO[qx.OO.C_GLOBALPROPERTYREF+p.up]=p.name;var valueKey=qx.OO.C_VALUE+p.method;var evalKey=qx.OO.C_EVAL+p.method;var changeKey=qx.OO.C_CHANGE+p.method;var modifyKey=qx.OO.C_MODIFY+p.implMethod;var checkKey=qx.OO.C_CHECK+p.implMethod;if(!qx.OO.setter[p.name]){qx.OO.setter[p.name]=qx.OO.C_SET+p.method;qx.OO.getter[p.name]=qx.OO.C_GET+p.method;qx.OO.resetter[p.name]=qx.OO.C_RESET+p.method;qx.OO.values[p.name]=valueKey};if(p.hasUnitDetection){var cu=qx.OO.C_COMPUTED+p.method;pp[cu+qx.OO.C_UNIT_VALUE]=null;pp[cu+qx.OO.C_UNIT_PARSED]=null;pp[cu+qx.OO.C_UNIT_TYPE]=null;pp[cu+qx.OO.C_UNIT_TYPE_NULL]=true;pp[cu+qx.OO.C_UNIT_TYPE_PIXEL]=false;pp[cu+qx.OO.C_UNIT_TYPE_PERCENT]=false;pp[cu+qx.OO.C_UNIT_TYPE_AUTO]=false;pp[cu+qx.OO.C_UNIT_TYPE_FLEX]=false;var unitDetectionKey=qx.OO.C_UNITDETECTION+qx.lang.String.toFirstUp(p.unitDetection)};pp[valueKey]=p.defaultValue;pp[qx.OO.C_GET+p.method]=function(){return this[valueKey]};pp[qx.OO.C_FORCE+p.method]=function(newValue){return this[valueKey]=newValue};pp[qx.OO.C_RESET+p.method]=function(){return this[qx.OO.C_SET+p.method](p.defaultValue)};if(p.type===qx.constant.Type.BOOLEAN){pp[qx.OO.C_TOGGLE+p.method]=function(newValue){return this[qx.OO.C_SET+p.method](!this[valueKey])}};if(p.allowMultipleArguments||p.hasConvert||p.hasInstance||p.hasClassName||p.hasPossibleValues||p.hasUnitDetection||p.addToQueue||p.addToQueueRuntime||p.addToStateQueue){pp[qx.OO.C_SET+p.method]=function(newValue){if(p.allowMultipleArguments&&arguments.length>1){newValue=qx.lang.Array.fromArguments(arguments)};if(p.hasConvert){try{newValue=p.convert.call(this,newValue,p)}catch(ex){throw new Error("Attention! Could not convert new value for "+p.name+": "+newValue+": "+ex)}};var oldValue=this[valueKey];if(newValue===oldValue){return newValue};if(!(p.allowNull&&newValue==null)){if(p.hasType&&typeof newValue!==p.type){return this.error("Attention! The value \""+newValue+"\" is an invalid value for the property \""+p.name+"\" which must be typeof \""+p.type+"\" but is typeof \""+typeof newValue+"\"!",new Error())};if(p.hasInstance&&!(newValue instanceof qx.OO.classes[p.instance])){return this.error("Attention! The value \""+newValue+"\" is an invalid value for the property \""+p.name+"\" which must be an instance of \""+p.instance+"\"!",new Error())};if(p.hasClassName&&newValue.classname!=p.classname){return this.error("Attention! The value \""+newValue+"\" is an invalid value for the property \""+p.name+"\" which must be an object with the classname \""+p.classname+"\"!",new Error())};if(p.hasPossibleValues&&newValue!=null&&!qx.lang.Array.contains(p.possibleValues,newValue)){return this.error("Failed to save value for "+p.name+". '"+newValue+"' is not a possible value!",new Error())}};if(this[checkKey]){try{newValue=this[checkKey](newValue,p);if(newValue===oldValue){return newValue}}catch(ex){return this.error("Failed to check property "+p.name,ex)}};this[valueKey]=newValue;if(this[modifyKey]){try{var r=this[modifyKey](newValue,oldValue,p);if(!r){return this.error("Modification of property \""+p.name+"\" failed without exception ("+r+")",new Error())}}catch(ex){return this.error("Modification of property \""+p.name+"\" failed with exception",ex)}};if(p.hasUnitDetection){this[unitDetectionKey](p,newValue)};if(p.addToQueue){this.addToQueue(p.name)}else if(p.addToQueueRuntime){this.addToQueueRuntime(p.name)};if(p.addToStateQueue){this.addToStateQueue()};if(this.hasEventListeners&&this.hasEventListeners(changeKey)){try{this.createDispatchDataEvent(changeKey,newValue)}catch(ex){throw new Error("Property "+p.name+" modified: Failed to dispatch change event: "+ex)}};return newValue}}else{pp[qx.OO.C_SET+p.method]=function(newValue){var oldValue=this[valueKey];if(newValue===oldValue){return newValue};if(!(p.allowNull&&newValue==null)){if(p.hasType&&typeof newValue!==p.type){return this.error("Attention! The value \""+newValue+"\" is an invalid value for the property \""+p.name+"\" which must be typeof \""+p.type+"\" but is typeof \""+typeof newValue+"\"!",new Error())}};if(this[checkKey]){try{newValue=this[checkKey](newValue,p);if(newValue===oldValue){return newValue}}catch(ex){return this.error("Failed to check property "+p.name,ex)}};this[valueKey]=newValue;if(this[modifyKey]){try{var r=this[modifyKey](newValue,oldValue,p);if(!r){return this.error("Modification of property \""+p.name+"\" failed without exception ("+r+")",new Error())}}catch(ex){return this.error("Modification of property \""+p.name+"\" failed with exception",ex)}};if(this.hasEventListeners&&this.hasEventListeners(changeKey)){var vEvent=new qx.event.type.DataEvent(changeKey,newValue,oldValue,false);vEvent.setTarget(this);try{this.dispatchEvent(vEvent,true)}catch(ex){throw new Error("Property "+p.name+" modified: Failed to dispatch change event: "+ex)}};return newValue}};if(typeof p.getAlias===qx.constant.Type.STRING){pp[p.getAlias]=pp[qx.OO.C_GET+p.method]};if(typeof p.setAlias===qx.constant.Type.STRING){pp[p.setAlias]=pp[qx.OO.C_SET+p.method]}};qx.OO.changeProperty=qx.OO._createProperty;qx.OO.addProperty=function(p){qx.OO.propertyNumber++;qx.OO._createProperty(p);if(typeof qx.Proto._properties!==qx.constant.Type.STRING){qx.Proto._properties=p.name}else{qx.Proto._properties+=qx.constant.Core.COMMA+p.name};switch(p.type){case undefined:case qx.constant.Type.OBJECT:case qx.constant.Type.FUNCTION:if(typeof qx.Proto._objectproperties!==qx.constant.Type.STRING){qx.Proto._objectproperties=p.name}else{qx.Proto._objectproperties+=qx.constant.Core.COMMA+p.name}}};qx.OO.inheritField=function(vField,vData){qx.lang.Object.carefullyMergeWith(vData,qx.Super.prototype[vField]);qx.Proto[vField]=vData};qx.OO.isAvailable=function(vClassName){return typeof qx.OO.classes[vClassName]!==qx.constant.Type.UNDEFINED};qx.OO.defineClass("qx.lang.String");qx.Class.toCamelCase=function(str){var vArr=str.split(qx.constant.Core.DASH),vLength=vArr.length;if(vLength==1){return vArr[0]};var vNew=str.indexOf(qx.constant.Core.DASH)==0?vArr[0].charAt(0).toUpperCase()+vArr[0].substring(1):vArr[0];for(var vPart,i=1;i<vLength;i++){vPart=vArr[i];vNew+=vPart.charAt(0).toUpperCase()+vPart.substring(1)};return vNew};qx.Class.trimLeft=function(str){return str.replace(/^\s+/,qx.constant.Core.EMPTY)};qx.Class.trimRight=function(str){return str.replace(/\s+$/,qx.constant.Core.EMPTY)};qx.Class.trim=function(str){return str.replace(/^\s+|\s+$/g,qx.constant.Core.EMPTY)};qx.Class.stripTags=function(str){return str.replace(/<\/?[^>]+>/gi,qx.constant.Core.EMPTY)};qx.Class.startsWith=function(fullstr,substr){return !fullstr.indexOf(substr)};qx.Class.endsWith=function(fullstr,substr){return fullstr.lastIndexOf(substr)===fullstr.length-substr.length};qx.Class.pad=function(str,length,ch){if(typeof ch===qx.constant.Type.UNDEFINED){ch=qx.constant.Core.ZERO};var temp=qx.constant.Core.EMPTY;for(var i=length,l=str.length;l<i;l++){temp+=ch};return temp+str};qx.Class.toFirstUp=function(str){return str.charAt(0).toUpperCase()+str.substr(1)};qx.Class.add=function(str,v,sep){if(str==v){return str}else if(str==qx.constant.Core.EMPTY){return v}else{if(qx.util.Validation.isInvalid(sep)){sep=qx.constant.Core.COMMA};var a=str.split(sep);if(a.indexOf(v)==-1){a.push(v);return a.join(sep)}else{return str}}};qx.Class.remove=function(str,v,sep){if(str==v||str==qx.constant.Core.EMPTY){return qx.constant.Core.EMPTY}else{if(qx.util.Validation.isInvalid(sep)){sep=qx.constant.Core.COMMA};var a=str.split(sep);var p=a.indexOf(v);if(p===-1){return str};do{a.splice(p,1)}while((p=a.indexOf(v))!=-1);return a.join(sep)}};qx.Class.contains=function(str,s){return str.indexOf(s)!=-1};qx.Class.escapeRegexpChars=function(str){return str.replace(/([\\\.\(\)\[\]\{\}\^\$\?\+\*])/g,"\\$1")};qx.OO.defineClass("qx.constant.Core",{EMPTY:"",SPACE:" ",SLASH:"/",DOT:".",ZERO:"0",QUOTE:'"',NEWLINE:"\n",SINGLEQUOTE:"'",STAR:"*",PLUS:"+",MINUS:"-",COMMA:",",DASH:"-",UNDERLINE:"_",SEMICOLON:";",COLON:":",EQUAL:"=",AMPERSAND:"&",QUESTIONMARK:"?",HASH:"#",SMALLER:"<",BIGGER:">",PERCENT:"%",PIXEL:"px",MILLISECONDS:"ms",FLEX:"1*",ZEROPIXEL:"0px",HUNDREDPERCENT:"100%",YES:"yes",NO:"no",ON:"on",OFF:"off",SET:"set",GET:"get",DEFAULT:"default",AUTO:"auto",NONE:"none",DISABLED:"disabled",HIDDEN:"hidden"});qx.OO.defineClass("qx.constant.Type",{UNDEFINED:"undefined",NUMBER:"number",STRING:"string",BOOLEAN:"boolean",FUNCTION:"function",OBJECT:"object"});qx.OO.defineClass("qx.util.Validation");qx.util.Validation.isValid=function(v){switch(typeof v){case qx.constant.Type.UNDEFINED:return false;case qx.constant.Type.OBJECT:return v!==null;case qx.constant.Type.STRING:return v!==qx.constant.Core.EMPTY;case qx.constant.Type.NUMBER:return !isNaN(v);case qx.constant.Type.FUNCTION:case qx.constant.Type.BOOLEAN:return true};return false};qx.util.Validation.isInvalid=function(v){switch(typeof v){case qx.constant.Type.UNDEFINED:return true;case qx.constant.Type.OBJECT:return v===null;case qx.constant.Type.STRING:return v===qx.constant.Core.EMPTY;case qx.constant.Type.NUMBER:return isNaN(v);case qx.constant.Type.FUNCTION:case qx.constant.Type.BOOLEAN:return false};return true};qx.util.Validation.isValidNumber=function(v){return typeof v===qx.constant.Type.NUMBER&&!isNaN(v)};qx.util.Validation.isInvalidNumber=function(v){return typeof v!==qx.constant.Type.NUMBER||isNaN(v)};qx.util.Validation.isValidString=function(v){return typeof v===qx.constant.Type.STRING&&v!==qx.constant.Core.EMPTY};qx.util.Validation.isInvalidString=function(v){return typeof v!==qx.constant.Type.STRING||v===qx.constant.Core.EMPTY};qx.util.Validation.isValidArray=function(v){return typeof v===qx.constant.Type.OBJECT&&v!==null&&v instanceof Array};qx.util.Validation.isInvalidArray=function(v){return typeof v!==qx.constant.Type.OBJECT||v===null||!(v instanceof Array)};qx.util.Validation.isValidObject=function(v){return typeof v===qx.constant.Type.OBJECT&&v!==null&&!(v instanceof Array)};qx.util.Validation.isInvalidObject=function(v){return typeof v!==qx.constant.Type.OBJECT||v===null||v instanceof Array};qx.util.Validation.isValidNode=function(v){return typeof v===qx.constant.Type.OBJECT&&v!==null};qx.util.Validation.isInvalidNode=function(v){return typeof v!==qx.constant.Type.OBJECT||v===null};qx.util.Validation.isValidElement=function(v){return typeof v===qx.constant.Type.OBJECT&&v!==null||v.nodeType!==1};qx.util.Validation.isInvalidElement=function(v){return typeof v!==qx.constant.Type.OBJECT||v===null||v.nodeType!==1};qx.util.Validation.isValidFunction=function(v){return typeof v===qx.constant.Type.FUNCTION};qx.util.Validation.isInvalidFunction=function(v){return typeof v!==qx.constant.Type.FUNCTION};qx.util.Validation.isValidBoolean=function(v){return typeof v===qx.constant.Type.BOOLEAN};qx.util.Validation.isInvalidBoolean=function(v){return typeof v!==qx.constant.Type.BOOLEAN};qx.util.Validation.isValidStringOrNumber=function(v){switch(typeof v){case qx.constant.Type.STRING:return v!==qx.constant.Core.EMPTY;case qx.constant.Type.NUMBER:return !isNaN(v)};return false};qx.util.Validation.isInvalidStringOrNumber=function(v){switch(typeof v){case qx.constant.Type.STRING:return v===qx.constant.Core.EMPTY;case qx.constant.Type.NUMBER:return isNaN(v)};return false};qx.OO.defineClass("qx.lang.Array");qx.lang.Array.fromArguments=function(args){return Array.prototype.slice.call(args,0)};qx.lang.Array.fromShortHand=function(params){var l=params.length;if(l>4){throw new Error("Invalid number of arguments!")};var v;var list=[];for(var i=0;i<l;i++){v=params[i];if(qx.util.Validation.isValidNumber(v)){list.push(v)}else if(qx.util.Validation.isInvalidString(v)){list.push(null)}else{throw new Error("Invalid shorthand value: "+v)}};switch(l){case 1:list[1]=list[2]=list[3]=list[0];break;case 2:list[2]=list[0];case 3:list[3]=list[1]};return list};qx.lang.Array.copy=function(arr){return arr.concat()};qx.lang.Array.clone=function(arr){return arr.concat()};qx.lang.Array.getLast=function(arr){return arr[arr.length-1]};qx.lang.Array.getFirst=function(arr){return arr[0]};qx.lang.Array.insertAt=function(arr,obj,i){arr.splice(i,0,obj);return arr};qx.lang.Array.insertBefore=function(arr,obj,obj2){var i=arr.indexOf(obj2);if(i==-1){arr.push(obj)}else{arr.splice(i,0,obj)};return arr};qx.lang.Array.insertAfter=function(arr,o,o2){var i=arr.indexOf(o2);if(i==-1||i==(arr.length-1)){arr.push(o)}else{arr.splice(i+1,0,o)};return arr};qx.lang.Array.removeAt=function(arr,i){return arr.splice(i,1)};qx.lang.Array.removeAll=function(arr){return arr.splice(0,arr.length)};qx.lang.Array.append=function(arr,a){Array.prototype.push.apply(arr,a)};qx.lang.Array.remove=function(arr,obj){var i=arr.indexOf(obj);if(i!=-1){return arr.splice(i,1)}};qx.lang.Array.contains=function(arr,obj){return arr.indexOf(obj)!=-1};qx.OO.defineClass("qx.lang.Object");qx.Class.isEmpty=function(h){for(var s in h){return false};return true};qx.Class.hasMinLength=function(h,j){var i=0;for(var s in h){if((++i)>=j){return true}};return false};qx.Class.getLength=function(h){var i=0;for(var s in h){i++};return i};qx.Class.getKeys=function(h){var r=[];for(var s in h){r.push(s)};return r};qx.Class.getKeysAsString=function(h){return qx.lang.Object.getKeys(h).join(", ")};qx.Class.getValues=function(h){var r=[];for(var s in h){r.push(h[s])};return r};qx.Class.mergeWith=function(vObjectA,vObjectB){for(var vKey in vObjectB){vObjectA[vKey]=vObjectB[vKey]};return vObjectA};qx.Class.carefullyMergeWith=function(vObjectA,vObjectB){for(vKey in vObjectB){if(typeof vObjectA[vKey]===qx.constant.Type.UNDEFINED){vObjectA[vKey]=vObjectB[vKey]}};return vObjectA};qx.Class.merge=function(vObjectA){var vLength=arguments.length;for(var i=1;i<vLength;i++){qx.lang.Object.mergeWith(vObjectA,arguments[i])};return vObjectA};qx.Class.copy=function(vObject){return qx.lang.Object.mergeWith({},vObject)};qx.OO.defineClass("qx.lang.Core");if(!Error.prototype.toString){Error.prototype.toString=function(){return this.message}};if(!Function.prototype.apply){Function.prototype.apply=function(oScope,args){var sarg=[];var rtrn,call;if(!oScope){oScope=window};if(!args){args=[]};for(var i=0;i<args.length;i++){sarg[i]="args["+i+"]"};call="oScope._applyTemp_("+sarg.join(qx.constant.Core.COMMA)+");";oScope._applyTemp_=this;rtrn=eval(call);delete oScope._applyTemp_;return rtrn}};Function.prototype.closure=function(obj){if(!window.__objs){window.__objs=[];window.__funs=[]};var fun=this;var objId=obj.__objId;if(!objId){__objs[objId=obj.__objId=__objs.length]=obj};var funId=fun.__funId;if(!funId){__funs[funId=fun.__funId=__funs.length]=fun};if(!obj.__closures){obj.__closures=[]};var closure=obj.__closures[funId];if(closure){return closure};obj=null;fun=null;return __objs[objId].__closures[funId]=function(){return __funs[funId].apply(__objs[objId],arguments)}};if(!Array.prototype.indexOf){Array.prototype.indexOf=function(obj,fromIndex){if(fromIndex==null){fromIndex=0}else if(fromIndex<0){fromIndex=Math.max(0,this.length+fromIndex)};for(var i=fromIndex;i<this.length;i++){if(this[i]===obj){return i}};return -1}};if(!Array.prototype.lastIndexOf){Array.prototype.lastIndexOf=function(obj,fromIndex){if(fromIndex==null){fromIndex=this.length-1}else if(fromIndex<0){fromIndex=Math.max(0,this.length+fromIndex)};for(var i=fromIndex;i>=0;i--){if(this[i]===obj){return i}};return -1}};if(!Array.prototype.forEach){Array.prototype.forEach=function(f,obj){for(var i=0,l=this.length;i<l;i++){f.call(obj,this[i],i,this)}}};if(!Array.prototype.filter){Array.prototype.filter=function(f,obj){var l=this.length;var res=[];for(var i=0;i<l;i++){if(f.call(obj,this[i],i,this)){res.push(this[i])}};return res}};if(!Array.prototype.map){Array.prototype.map=function(f,obj){var l=this.length;var res=[];for(var i=0;i<l;i++){res.push(f.call(obj,this[i],i,this))};return res}};if(!Array.prototype.some){Array.prototype.some=function(f,obj){var l=this.length;for(var i=0;i<l;i++){if(f.call(obj,this[i],i,this)){return true}};return false}};if(!Array.prototype.every){Array.prototype.every=function(f,obj){var l=this.length;for(var i=0;i<l;i++){if(!f.call(obj,this[i],i,this)){return false}};return true}};qx.OO.defineClass("qx.util.Return");qx.util.Return.returnTrue=function(){return true};qx.util.Return.returnFalse=function(){return false};qx.util.Return.returnNull=function(){return null};qx.util.Return.returnThis=function(){return this};qx.util.Return.returnInstance=function(){if(!this._instance){this._instance=new this};return this._instance};qx.util.Return.returnZero=function(){return 0};qx.util.Return.returnNegativeIndex=function(){return -1};qx.OO.defineClass("qx.core.Object",Object,function(vAutoDispose){this._hashCode=qx.core.Object._counter++;if(vAutoDispose!==false){qx.core.Object._db.push(this)}});qx.Settings.setDefault("enableDisposerDebug",false);qx.Class._counter=0;qx.Class._db=[];qx.Class.toHashCode=function(o){if(o._hashCode!=null){return o._hashCode};return o._hashCode=qx.core.Object._counter++};qx.Class.dispose=function(){var vObject;for(var i=qx.core.Object._db.length-1;i>=0;i--){vObject=qx.core.Object._db[i];if(vObject&&vObject._disposed===false){vObject.dispose()}}};qx.Class.summary=function(){var vData={};var vCounter=0;for(var i=qx.core.Object._db.length-1;i>=0;i--){vObject=qx.core.Object._db[i];if(vObject&&vObject._disposed===false){if(vData[vObject.classname]==null){vData[vObject.classname]=1}else{vData[vObject.classname]++};vCounter++}};var vArrData=[];for(var vClassName in vData){vArrData.push({classname:vClassName,number:vData[vClassName]})};vArrData.sort(function(a,b){return b.number-a.number});var vMsg="Summary: ("+vCounter+" Objects)\n\n";for(var i=0;i<vArrData.length;i++){vMsg+=vArrData[i].number+": "+vArrData[i].classname+"\n"};alert(vMsg)};qx.OO.addProperty({name:"enabled",type:qx.constant.Type.BOOLEAN,defaultValue:true,getAlias:"isEnabled"});qx.Proto.toString=function(){if(this.classname){return "[object "+this.classname+"]"};return "[object Object]"};qx.Proto.toHashCode=function(){return this._hashCode};qx.Proto.getDisposed=function(){return this._disposed};qx.Proto.isDisposed=function(){return this._disposed};qx.Proto.getSetting=function(vKey){return qx.Settings.getValueOfClass(this.classname,vKey)};qx.Proto.getLogger=function(){return qx.dev.log.Logger.getClassLogger(this.constructor)};qx.Proto.debug=function(msg,exc){this.getLogger().debug(msg,this._hashCode,exc)};qx.Proto.info=function(msg,exc){this.getLogger().info(msg,this._hashCode,exc)};qx.Proto.warn=function(msg,exc){this.getLogger().warn(msg,this._hashCode,exc)};qx.Proto.error=function(msg,exc){this.getLogger().error(msg,this._hashCode,exc)};qx.Proto.set=function(propertyValues){if(typeof propertyValues!==qx.constant.Type.OBJECT){throw new Error("Please use a valid hash of property key-values pairs.")};for(var prop in propertyValues){try{this[qx.OO.setter[prop]](propertyValues[prop])}catch(ex){this.error("Setter of property "+prop+" returned with an error",ex)}};return this};qx.Proto.get=function(propertyNames,outputHint){switch(typeof propertyNames){case qx.constant.Type.STRING:return this[qx.constant.Core.GET+qx.lang.String.toFirstUp(propertyNames)]();case qx.constant.Type.OBJECT:if(typeof propertyNames.length===qx.constant.Type.NUMBER){if(outputHint=="hash"){var h={};propertyLength=propertyNames.length;for(var i=0;i<propertyLength;i++){try{h[propertyNames[i]]=this[qx.constant.Core.GET+qx.lang.String.toFirstUp(propertyNames[i])]()}catch(ex){throw new Error("Could not get a valid value from property: "+propertyNames[i]+"! Is the property existing? ("+ex+")")}};return h}else{propertyLength=propertyNames.length;for(var i=0;i<propertyLength;i++){try{propertyNames[i]=this[qx.constant.Core.GET+qx.lang.String.toFirstUp(propertyNames[i])]()}catch(ex){throw new Error("Could not get a valid value from property: "+propertyNames[i]+"! Is the property existing? ("+ex+")")}};return propertyNames}}else{for(var i in propertyNames){propertyNames[i]=this[qx.constant.Core.GET+qx.lang.String.toFirstUp(i)]()};return propertyNames};default:throw new Error("Please use a valid array, hash or string as parameter!")}};qx.Proto.setUserData=function(vKey,vValue){if(!this._userData){this._userData={}};this._userData[vKey]=vValue};qx.Proto.getUserData=function(vKey){if(!this._userData){return null};return this._userData[vKey]};qx.Proto._disposed=false;qx.Proto.dispose=function(){if(this.getDisposed()){return};if(this._userData){for(var vKey in this._userData){this._userData[vKey]=null};this._userData=null};if(this._objectproperties){var a=this._objectproperties.split(qx.constant.Core.COMMA);var d=qx.OO.values;for(var i=0,l=a.length;i<l;i++){this[d[a[i]]]=null};this._objectproperties=null};if(this.getSetting("enableDisposerDebug")){for(var vKey in this){if(this[vKey]!==null&&typeof this[vKey]===qx.constant.Type.OBJECT){this.debug("Missing class implementation to dispose: "+vKey);delete this[vKey]}}};qx.core.Object._db[this._hashCode]=null;this._disposed=true};qx.OO.defineClass("qx.dev.log.LogEventProcessor",qx.core.Object,function(){qx.core.Object.call(this)});qx.Proto.addFilter=function(filter){if(this._filterArr==null){this._filterArr=[]};this._filterArr.push(filter)};qx.Proto.clearFilters=function(){this._filterArr=null};qx.Proto.getHeadFilter=function(){return (this._filterArr==null||this._filterArr.length==0)?null:this._filterArr[0]};qx.Proto._getDefaultFilter=function(){var headFilter=this.getHeadFilter();if(!(headFilter instanceof qx.dev.log.DefaultFilter)){this.clearFilters();headFilter=new qx.dev.log.DefaultFilter();this.addFilter(headFilter)};return headFilter};qx.Proto.setEnabled=function(enabled){this._getDefaultFilter().setEnabled(enabled)};qx.Proto.setMinLevel=function(minLevel){this._getDefaultFilter().setMinLevel(minLevel)};qx.Proto.decideLogEvent=function(evt){var NEUTRAL=qx.dev.log.Filter.NEUTRAL;if(this._filterArr!=null){for(var i=0;i<this._filterArr.length;i++){var decision=this._filterArr[i].decide(evt);if(decision!=NEUTRAL){return decision}}};return NEUTRAL};qx.Proto.handleLogEvent=function(evt){throw new Error("handleLogEvent is abstract")};qx.OO.defineClass("qx.dev.log.Filter",qx.core.Object,function(){qx.core.Object.call(this)});qx.Proto.decide=function(evt){throw new Error("decide is abstract")};qx.Class.ACCEPT=1;qx.Class.DENY=2;qx.Class.NEUTRAL=3;qx.OO.defineClass("qx.dev.log.DefaultFilter",qx.dev.log.Filter,function(){qx.dev.log.Filter.call(this)});qx.OO.addProperty({name:"enabled",type:qx.constant.Type.BOOLEAN,defaultValue:true,allowNull:false,getAlias:"isEnabled"});qx.OO.addProperty({name:"minLevel",type:qx.constant.Type.NUMBER,defaultValue:null});qx.Proto.decide=function(evt){var Filter=qx.dev.log.Filter;if(!this.isEnabled()){return Filter.DENY}else if(this.getMinLevel()==null){return Filter.NEUTRAL}else{return (evt.level>=this.getMinLevel())?Filter.ACCEPT:Filter.DENY}};qx.OO.defineClass("qx.dev.log.Appender",qx.dev.log.LogEventProcessor,function(){qx.dev.log.LogEventProcessor.call(this)});qx.OO.addProperty({name:"useLongFormat",type:qx.constant.Type.BOOLEAN,defaultValue:true,allowNull:false});qx.Proto.handleLogEvent=function(evt){if(this.decideLogEvent(evt)!=qx.dev.log.Filter.DENY){this.appendLogEvent(evt)}};qx.Proto.appendLogEvent=function(evt){throw new Error("appendLogEvent is abstract")};qx.Proto.formatLogEvent=function(evt){var Logger=qx.dev.log.Logger;var text="";var time=new String(new Date().getTime()-qx._LOADSTART);while(time.length<6){time=qx.constant.Core.ZERO+time};text+=time;if(this.getUseLongFormat()){switch(evt.level){case Logger.LEVEL_DEBUG:text+=" DEBUG: ";break;case Logger.LEVEL_INFO:text+=" INFO:  ";break;case Logger.LEVEL_WARN:text+=" WARN:  ";break;case Logger.LEVEL_ERROR:text+=" ERROR: ";break;case Logger.LEVEL_FATAL:text+=" FATAL: ";break}}else{text+=": "};var indent="";for(var i=0;i<evt.indent;i++){indent+="  "};text+=indent;if(this.getUseLongFormat()){text+=evt.logger.getName();if(evt.instanceId!=null){text+="["+evt.instanceId+"]"};text+=": "};if(typeof evt.message=="string"){text+=evt.message}else{var obj=evt.message;if(obj==null){text+="Object is null"}else{text+="--- Object: "+obj+" ---\n";var attrArr=new Array();try{for(var attr in obj){attrArr.push(attr)}}catch(exc){text+=indent+"  [not readable: "+exc+"]\n"};attrArr.sort();for(var i=0;i<attrArr.length;i++){try{text+=indent+"  "+attrArr[i]+"="+obj[attrArr[i]]+"\n"}catch(exc){text+=indent+"  "+attrArr[i]+"=[not readable: "+exc+"]\n"}};text+=indent+"--- End of object ---"}};if(evt.throwable!=null){var thr=evt.throwable;if(thr.name==null){text+=": "+thr}else{text+=": "+thr.name};if(thr.message!=null){text+=" - "+thr.message};if(thr.number!=null){text+=" (#"+thr.number+")"};if(thr.stack!=null){text+="\n"+this._beautyStackTrace(thr.stack)}};return text};qx.Proto._beautyStackTrace=function(stack){var lineRe=/@(.+):(\d+)$/gm;var hit;var out="";var scriptDir="/script/";while((hit=lineRe.exec(stack))!=null){var url=hit[1];var jsPos=url.indexOf(scriptDir);var className=(jsPos==-1)?url:url.substring(jsPos+scriptDir.length).replace(/\//g,".");var lineNumber=hit[2];out+="  at "+className+":"+lineNumber+"\n"};return out};qx.OO.defineClass("qx.dev.log.WindowAppender",qx.dev.log.Appender,function(name){qx.dev.log.Appender.call(this);this._id=qx.dev.log.WindowAppender.register(this);this._name=(name==null)?"Log":name;this._logWindowOpened=false});qx.OO.addProperty({name:"maxMessages",type:qx.constant.Type.NUMBER,defaultValue:500});qx.OO.addProperty({name:"popUnder",type:qx.constant.Type.BOOLEAN,defaultValue:false,allowNull:false});qx.Proto.openWindow=function(){if(this._logWindowOpened){return };var winWidth=600;var winHeight=350;var winLeft=window.screen.width-winWidth;var winTop=window.screen.height-winHeight;var params="toolbar=no,scrollbars=yes,resizable=yes,"+"width="+winWidth+",height="+winHeight+",left="+winLeft+",top="+winTop;this._logWindow=window.open("",this._name,params);if(!this._logWindow||this._logWindow.closed){if(!this._popupBlockerWarning){alert("Couldn't open debug window. Please disable your popup blocker!")};this._popupBlockerWarning=true;return};this._popupBlockerWarning=false;this._logWindowOpened=true;if(this.getPopUnder()){this._logWindow.blur();window.focus()};var logDocument=this._logWindow.document;logDocument.open();logDocument.write("<html><head><title>"+this._name+"</title></head>"+'<body onload="qx = opener.qx;" onunload="qx.dev.log.WindowAppender._registeredAppenders['+this._id+'].closeWindow()">'+'<pre id="log" wrap="wrap" style="font-size:11"></pre></body></html>');logDocument.close();this._logElem=logDocument.getElementById("log");if(this._logEventQueue!=null){for(var i=0;i<this._logEventQueue.length;i++){this.appendLogEvent(this._logEventQueue[i])};this._logEventQueue=null}};qx.Proto.closeWindow=function(){if(this._logWindow!=null){this._logWindow.close();this._logWindow=null;this._logElem=null;this._logWindowOpened=false}};qx.Proto.appendLogEvent=function(evt){if(!this._logWindowOpened){this._logEventQueue=[];this._logEventQueue.push(evt);this.openWindow();if(!this._logWindowOpened){return}}else if(this._logElem==null){this._logEventQueue.push(evt)}else{var divElem=this._logWindow.document.createElement("div");if(evt.level==qx.dev.log.Logger.LEVEL_ERROR){divElem.style.backgroundColor="#FFEEEE"}else if(evt.level==qx.dev.log.Logger.LEVEL_DEBUG){divElem.style.color="gray"};divElem.innerHTML=this.formatLogEvent(evt).replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/  /g," &#160;").replace(/[\n]/g,"<br>");this._logElem.appendChild(divElem);while(this._logElem.childNodes.length>this.getMaxMessages()){this._logElem.removeChild(this._logElem.firstChild);if(this._removedMessageCount==null){this._removedMessageCount=1}else{this._removedMessageCount++}};if(this._removedMessageCount!=null){this._logElem.firstChild.innerHTML="("+this._removedMessageCount+" messages removed)"};this._logWindow.scrollTo(0,this._logElem.offsetHeight)}};qx.Proto.dispose=function(){if(this.getDisposed()){return true};this.closeWindow();return qx.dev.log.Appender.prototype.dispose.call(this)};qx.Class._nextId=1;qx.Class._registeredAppenders={};qx.Class.register=function(appender){var WindowAppender=qx.dev.log.WindowAppender;var id=WindowAppender._nextId++;WindowAppender._registeredAppenders[id]=appender;return id};qx.Class.getAppender=function(id){return qx.dev.log.WindowAppender._registeredAppenders[id]};qx.OO.defineClass("qx.dev.log.Logger",qx.dev.log.LogEventProcessor,function(name,parentLogger){qx.dev.log.LogEventProcessor.call(this);this._name=name;this._parentLogger=parentLogger});qx.Proto.getName=function(){return this._name};qx.Proto.getParentLogger=function(){return this._parentLogger};qx.Proto.indent=function(){qx.dev.log.Logger._indent++};qx.Proto.unindent=function(){qx.dev.log.Logger._indent--};qx.Proto.addAppender=function(appender){if(this._appenderArr==null){this._appenderArr=[]};this._appenderArr.push(appender)};qx.Proto.removeAppender=function(appender){if(this._appenderArr!=null){this._appenderArr.remove(appender)}};qx.Proto.removeAllAppenders=function(){this._appenderArr=null};qx.Proto.handleLogEvent=function(evt){var Filter=qx.dev.log.Filter;var decision=Filter.NEUTRAL;var logger=this;while(decision==Filter.NEUTRAL&&logger!=null){decision=logger.decideLogEvent(evt);logger=logger.getParentLogger()};if(decision!=Filter.DENY){this.appendLogEvent(evt)}};qx.Proto.appendLogEvent=function(evt){if(this._appenderArr!=null&&this._appenderArr.length!=0){for(var i=0;i<this._appenderArr.length;i++){this._appenderArr[i].handleLogEvent(evt)}}else if(this._parentLogger!=null){this._parentLogger.appendLogEvent(evt)}};qx.Proto.log=function(level,msg,instanceId,exc){var evt={logger:this,level:level,message:msg,throwable:exc,indent:qx.dev.log.Logger._indent,instanceId:instanceId};this.handleLogEvent(evt)};qx.Proto.debug=function(msg,instanceId,exc){this.log(qx.dev.log.Logger.LEVEL_DEBUG,msg,instanceId,exc)};qx.Proto.info=function(msg,instanceId,exc){this.log(qx.dev.log.Logger.LEVEL_INFO,msg,instanceId,exc)};qx.Proto.warn=function(msg,instanceId,exc){this.log(qx.dev.log.Logger.LEVEL_WARN,msg,instanceId,exc)};qx.Proto.error=function(msg,instanceId,exc){this.log(qx.dev.log.Logger.LEVEL_ERROR,msg,instanceId,exc)};qx.Proto.fatal=function(msg,instanceId,exc){this.log(qx.dev.log.Logger.LEVEL_FATAL,msg,instanceId,exc)};qx.Proto.measureReset=function(){if(this._totalMeasureTime!=null){this.debug("Measure reset. Total measure time: "+this._totalMeasureTime+" ms")};this._lastMeasureTime=null;this._totalMeasureTime=null};qx.Proto.measure=function(msg,instanceId,exc){if(this._lastMeasureTime==null){msg="(measure start) "+msg}else{var delta=new Date().getTime()-this._lastMeasureTime;if(this._totalMeasureTime==null){this._totalMeasureTime=0};this._totalMeasureTime+=delta;msg="(passed time: "+delta+" ms) "+msg};this.debug(msg,instanceId,exc);this._lastMeasureTime=new Date().getTime()};qx.Proto.printStackTrace=function(){try{forced_exception.go}catch(exc){this.debug("Current stack trace","",exc)}};qx.Class.getClassLogger=function(clazz){var logger=clazz._logger;if(logger==null){var classname=clazz.classname;var splits=classname.split(".");var currPackage=window;var currPackageName="";var parentLogger=qx.dev.log.Logger.ROOT_LOGGER;for(var i=0;i<splits.length-1;i++){currPackage=currPackage[splits[i]];currPackageName+=((i!=0)?".":"")+splits[i];if(currPackage._logger==null){currPackage._logger=new qx.dev.log.Logger(currPackageName,parentLogger)};parentLogger=currPackage._logger};logger=new qx.dev.log.Logger(classname,parentLogger);clazz._logger=logger};return logger};qx.Class._indent=0;qx.Class.LEVEL_ALL=0;qx.Class.LEVEL_DEBUG=200;qx.Class.LEVEL_INFO=500;qx.Class.LEVEL_WARN=600;qx.Class.LEVEL_ERROR=700;qx.Class.LEVEL_FATAL=800;qx.Class.LEVEL_OFF=1000;qx.Class.ROOT_LOGGER=new qx.dev.log.Logger("root",null);qx.Class.ROOT_LOGGER.setMinLevel(qx.dev.log.Logger.LEVEL_DEBUG);qx.Class.ROOT_LOGGER.addAppender(new qx.dev.log.WindowAppender);qx.OO.defineClass("qx.core.Target",qx.core.Object,function(vAutoDispose){qx.core.Object.call(this,vAutoDispose)});qx.Class.EVENTPREFIX="evt";qx.Proto.addEventListener=function(vType,vFunction,vObject){if(this._disposed){return};if(typeof vFunction!==qx.constant.Type.FUNCTION){throw new Error("qx.core.Target: addEventListener("+vType+"): '"+vFunction+"' is not a function!")};if(typeof this._listeners===qx.constant.Type.UNDEFINED){this._listeners={};this._listeners[vType]={}}else if(typeof this._listeners[vType]===qx.constant.Type.UNDEFINED){this._listeners[vType]={}};var vKey=qx.core.Target.EVENTPREFIX+qx.core.Object.toHashCode(vFunction)+(vObject?qx.constant.Core.UNDERLINE+qx.core.Object.toHashCode(vObject):qx.constant.Core.EMPTY);this._listeners[vType][vKey]={handler:vFunction,object:vObject}};qx.Proto.removeEventListener=function(vType,vFunction,vObject){if(this._disposed){return};var vListeners=this._listeners;if(!vListeners||typeof vListeners[vType]===qx.constant.Type.UNDEFINED){return};if(typeof vFunction!==qx.constant.Type.FUNCTION){throw new Error("qx.core.Target: removeEventListener("+vType+"): '"+vFunction+"' is not a function!")};var vKey=qx.core.Target.EVENTPREFIX+qx.core.Object.toHashCode(vFunction)+(vObject?qx.constant.Core.UNDERLINE+qx.core.Object.toHashCode(vObject):qx.constant.Core.EMPTY);delete this._listeners[vType][vKey]};qx.Proto.hasEventListeners=function(vType){return this._listeners&&typeof this._listeners[vType]!==qx.constant.Type.UNDEFINED&&!qx.lang.Object.isEmpty(this._listeners[vType])};qx.Proto.createDispatchEvent=function(vType){if(this.hasEventListeners(vType)){this.dispatchEvent(new qx.event.type.Event(vType),true)}};qx.Proto.createDispatchDataEvent=function(vType,vData){if(this.hasEventListeners(vType)){this.dispatchEvent(new qx.event.type.DataEvent(vType,vData),true)}};qx.Proto.dispatchEvent=function(vEvent,vEnableDispose){if(this.getDisposed()){return};if(vEvent.getTarget()==null){vEvent.setTarget(this)};if(vEvent.getCurrentTarget()==null){vEvent.setCurrentTarget(this)};this._dispatchEvent(vEvent,vEnableDispose);return !vEvent._defaultPrevented};qx.Proto._dispatchEvent=function(vEvent,vEnableDispose){if(this.getDisposed()){return};var vListeners=this._listeners;if(vListeners){vEvent.setCurrentTarget(this);var vTypeListeners=vListeners[vEvent.getType()];if(vTypeListeners){var vFunction,vObject;for(var vHashCode in vTypeListeners){vFunction=vTypeListeners[vHashCode].handler;vObject=vTypeListeners[vHashCode].object;try{if(typeof vFunction===qx.constant.Type.FUNCTION){vFunction.call(qx.util.Validation.isValid(vObject)?vObject:this,vEvent)}}catch(ex){this.error("Could not dispatch event of type \""+vEvent.getType()+"\"",ex)}}}};var vParent=this.getParent();if(vEvent.getBubbles()&&!vEvent.getPropagationStopped()&&vParent&&!vParent.getDisposed()&&vParent.getEnabled()){vParent._dispatchEvent(vEvent,false)};vEnableDispose&&vEvent.dispose()};qx.Proto.getParent=function(){return null};qx.Proto.dispose=function(){if(this.getDisposed()){return};if(typeof this._listeners===qx.constant.Type.OBJECT){for(var vType in this._listeners){for(var vKey in this._listeners[vType]){this._listeners[vType][vKey]=null;delete this._listeners[vType][vKey]};this._listeners[vType]=null;delete this._listeners[vType]}};this._listeners=null;delete this._listeners;return qx.core.Object.prototype.dispose.call(this)};qx.OO.defineClass("qx.event.type.Event",qx.core.Object,function(vType){qx.core.Object.call(this,false);this.setType(vType)});qx.OO.addFastProperty({name:"type",setOnlyOnce:true});qx.OO.addFastProperty({name:"originalTarget",setOnlyOnce:true});qx.OO.addFastProperty({name:"target",setOnlyOnce:true});qx.OO.addFastProperty({name:"relatedTarget",setOnlyOnce:true});qx.OO.addFastProperty({name:"currentTarget"});qx.OO.addFastProperty({name:"bubbles",defaultValue:false,noCompute:true});qx.OO.addFastProperty({name:"propagationStopped",defaultValue:true,noCompute:true});qx.OO.addFastProperty({name:"defaultPrevented",defaultValue:false,noCompute:true});qx.Proto.preventDefault=function(){this.setDefaultPrevented(true)};qx.Proto.stopPropagation=function(){this.setPropagationStopped(true)};qx.Proto.dispose=function(){if(this.getDisposed()){return};this._valueOriginalTarget=null;this._valueTarget=null;this._valueRelatedTarget=null;this._valueCurrentTarget=null;return qx.core.Object.prototype.dispose.call(this)};qx.OO.defineClass("qx.event.type.DataEvent",qx.event.type.Event,function(vType,vData){qx.event.type.Event.call(this,vType);this.setData(vData)});qx.OO.addFastProperty({name:"propagationStopped",defaultValue:false});qx.OO.addFastProperty({name:"data"});qx.Proto.dispose=function(){if(this.getDisposed()){return};this._valueData=null;return qx.event.type.Event.prototype.dispose.call(this)};qx.OO.defineClass("qx.sys.Client",Object,function(){var vRunsLocally=window.location.protocol==="file:";var vBrowserUserAgent=navigator.userAgent;var vBrowserVendor=navigator.vendor;var vBrowserProduct=navigator.product;var vBrowserPlatform=navigator.platform;var vBrowserModeHta=false;var vBrowser;var vEngine=null;var vEngineVersion=null;var vEngineVersionMajor=0;var vEngineVersionMinor=0;var vEngineVersionRevision=0;var vEngineVersionBuild=0;var vEngineEmulation=null;var vVersionHelper;if(window.opera&&/Opera[\s\/]([0-9\.]*)/.test(vBrowserUserAgent)){vEngine="opera";vEngineVersion=RegExp.$1;vEngineVersion=vEngineVersion.substring(0,3)+"."+vEngineVersion.substring(3);vEngineEmulation=vBrowserUserAgent.indexOf("MSIE")!==-1?"mshtml":vBrowserUserAgent.indexOf("Mozilla")!==-1?"gecko":null}else if(typeof vBrowserVendor==="string"&&vBrowserVendor==="KDE"&&/KHTML\/([0-9-\.]*)/.test(vBrowserUserAgent)){vEngine="khtml";vBrowser="konqueror";vEngineVersion=RegExp.$1}else if(vBrowserUserAgent.indexOf("AppleWebKit")!=-1&&/AppleWebKit\/([0-9-\.]*)/.test(vBrowserUserAgent)){vEngine="webkit";vEngineVersion=RegExp.$1;if(vBrowserUserAgent.indexOf("Safari")!=-1){vBrowser="safari"}else if(vBrowserUserAgent.indexOf("Omni")!=-1){vBrowser="omniweb"}else{vBrowser="other webkit"}}else if(window.controllers&&typeof vBrowserProduct==="string"&&vBrowserProduct==="Gecko"&&/rv\:([^\);]+)(\)|;)/.test(vBrowserUserAgent)){vEngine="gecko";vEngineVersion=RegExp.$1;if(vBrowserUserAgent.indexOf("Firefox")!=-1){vBrowser="firefox"}else if(vBrowserUserAgent.indexOf("Camino")!=-1){vBrowser="camino"}else if(vBrowserUserAgent.indexOf("Galeon")!=-1){vBrowser="galeon"}else{vBrowser="other gecko"}}else if(/MSIE\s+([^\);]+)(\)|;)/.test(vBrowserUserAgent)){vEngine="mshtml";vEngineVersion=RegExp.$1;vBrowserModeHta=!window.external};if(vEngineVersion){vVersionHelper=vEngineVersion.split(".");vEngineVersionMajor=vVersionHelper[0]||0;vEngineVersionMinor=vVersionHelper[1]||0;vEngineVersionRevision=vVersionHelper[2]||0;vEngineVersionBuild=vVersionHelper[3]||0};var vEngineBoxSizingAttr=vEngine=="gecko"?"-moz-box-sizing":vEngine=="mshtml"?null:"box-sizing";var vEngineQuirksMode=document.compatMode!=="CSS1Compat";var vDefaultLocale="en";var vBrowserLocale=(vEngine=="mshtml"?navigator.userLanguage:navigator.language).toLowerCase();var vBrowserLocaleVariant=null;var vBrowserLocaleVariantIndex=vBrowserLocale.indexOf("-");if(vBrowserLocaleVariantIndex!=-1){vBrowserLocaleVariant=vBrowserLocale.substr(vBrowserLocaleVariantIndex+1);vBrowserLocale=vBrowserLocale.substr(0,vBrowserLocaleVariantIndex)};var vPlatform="none";var vPlatformWindows=false;var vPlatformMacintosh=false;var vPlatformUnix=false;var vPlatformOther=false;if(vBrowserPlatform.indexOf("Windows")!=-1||vBrowserPlatform.indexOf("Win32")!=-1||vBrowserPlatform.indexOf("Win64")!=-1){vPlatformWindows=true;vPlatform="win"}else if(vBrowserPlatform.indexOf("Macintosh")!=-1||vBrowserPlatform.indexOf("MacIntel")!=-1){vPlatformMacintosh=true;vPlatform="mac"}else if(vBrowserPlatform.indexOf("X11")!=-1||vBrowserPlatform.indexOf("Linux")!=-1||vBrowserPlatform.indexOf("BSD")!=-1){vPlatformUnix=true;vPlatform="unix"}else{vPlatformOther=true;vPlatform="other"};var vGfxVml=false;var vGfxSvg=false;var vGfxSvgBuiltin=false;var vGfxSvgPlugin=false;if(vEngine=="mshtml"){vGfxVml=true};if(document.implementation&&document.implementation.hasFeature){if(document.implementation.hasFeature("org.w3c.dom.svg","1.0")){vGfxSvg=vGfxSvgBuiltin=true}};this._runsLocally=vRunsLocally;this._engineName=vEngine;this._engineNameMshtml=vEngine==="mshtml";this._engineNameGecko=vEngine==="gecko";this._engineNameOpera=vEngine==="opera";this._engineNameKhtml=vEngine==="khtml";this._engineNameWebkit=vEngine==="webkit";this._engineVersion=parseFloat(vEngineVersion);this._engineVersionMajor=parseInt(vEngineVersionMajor);this._engineVersionMinor=parseInt(vEngineVersionMinor);this._engineVersionRevision=parseInt(vEngineVersionRevision);this._engineVersionBuild=parseInt(vEngineVersionBuild);this._engineQuirksMode=vEngineQuirksMode;this._engineBoxSizingAttribute=vEngineBoxSizingAttr;this._engineEmulation=vEngineEmulation;this._defaultLocale=vDefaultLocale;this._browserPlatform=vPlatform;this._browserPlatformWindows=vPlatformWindows;this._browserPlatformMacintosh=vPlatformMacintosh;this._browserPlatformUnix=vPlatformUnix;this._browserPlatformOther=vPlatformOther;this._browserModeHta=vBrowserModeHta;this._browserLocale=vBrowserLocale;this._browserLocaleVariant=vBrowserLocaleVariant;this._gfxVml=vGfxVml;this._gfxSvg=vGfxSvg;this._gfxSvgBuiltin=vGfxSvgBuiltin;this._gfxSvgPlugin=vGfxSvgPlugin});qx.Proto.getRunsLocally=function(){return this._runsLocally};qx.Proto.getEngine=function(){return this._engineName};qx.Proto.getVersion=function(){return this._engineVersion};qx.Proto.getMajor=function(){return this._engineVersionMajor};qx.Proto.getMinor=function(){return this._engineVersionMinor};qx.Proto.getRevision=function(){return this._engineVersionRevision};qx.Proto.getBuild=function(){return this._engineVersionBuild};qx.Proto.getEmulation=function(){return this._engineEmulation};qx.Proto.isMshtml=function(){return this._engineNameMshtml};qx.Proto.isGecko=function(){return this._engineNameGecko};qx.Proto.isOpera=function(){return this._engineNameOpera};qx.Proto.isKhtml=function(){return this._engineNameKhtml};qx.Proto.isWebkit=function(){return this._engineNameWebkit};qx.Proto.isInQuirksMode=function(){return this._engineQuirksMode};qx.Proto.getLocale=function(){return this._browserLocale};qx.Proto.getLocaleVariant=function(){return this._browserLocaleVariant};qx.Proto.getDefaultLocale=function(){return this._defaultLocale};qx.Proto.usesDefaultLocale=function(){return this._browserLocale===this._defaultLocale};qx.Proto.getEngineBoxSizingAttribute=function(){return this._engineBoxSizingAttribute};qx.Proto.getPlatform=function(){return this._browserPlatform};qx.Proto.runsOnWindows=function(){return this._browserPlatformWindows};qx.Proto.runsOnMacintosh=function(){return this._browserPlatformMacintosh};qx.Proto.runsOnUnix=function(){return this._browserPlatformUnix};qx.Proto.supportsVml=function(){return this._gfxVml};qx.Proto.supportsSvg=function(){return this._gfxSvg};qx.Proto.usesSvgBuiltin=function(){return this._gfxSvgBuiltin};qx.Proto.usesSvgPlugin=function(){return this._gfxSvgPlugin};qx.Class.getInstance=qx.util.Return.returnInstance;qx.OO.defineClass("qx.dom.DomEventRegistration");if(qx.sys.Client.getInstance().isMshtml()){qx.dom.DomEventRegistration.addEventListener=function(vElement,vType,vFunction){vElement.attachEvent(qx.constant.Core.ON+vType,vFunction)};qx.dom.DomEventRegistration.removeEventListener=function(vElement,vType,vFunction){vElement.detachEvent(qx.constant.Core.ON+vType,vFunction)}}else{qx.dom.DomEventRegistration.addEventListener=function(vElement,vType,vFunction){vElement.addEventListener(vType,vFunction,false)};qx.dom.DomEventRegistration.removeEventListener=function(vElement,vType,vFunction){vElement.removeEventListener(vType,vFunction,false)}};qx.OO.defineClass("qx.core.Init",qx.core.Target,function(){qx.core.Target.call(this,false);var o=this;this.__onload=function(e){return o._onload(e)};this.__onbeforeunload=function(e){return o._onbeforeunload(e)};this.__onunload=function(e){return o._onunload(e)};qx.dom.DomEventRegistration.addEventListener(window,"load",this.__onload);qx.dom.DomEventRegistration.addEventListener(window,"beforeunload",this.__onbeforeunload);qx.dom.DomEventRegistration.addEventListener(window,"unload",this.__onunload)});qx.Settings.setDefault("component","qx.component.init.InterfaceInitComponent");qx.OO.addProperty({name:"component",type:qx.constant.Type.OBJECT,instance:"qx.component.init.BasicInitComponent"});qx.OO.addProperty({name:"application",type:qx.constant.Type.FUNCTION});qx.Proto._modifyApplication=function(propValue,propOldValue,propData){if(propValue){this._applicationInstance=new propValue};return true};qx.Proto.getApplicationInstance=function(){if(!this.getApplication()){this.setApplication(qx.component.DummyApplication)};return this._applicationInstance};qx.Proto.defineInitialize=function(vFunc){this.getApplicationInstance().initialize=vFunc};qx.Proto.defineMain=function(vFunc){this.getApplicationInstance().main=vFunc};qx.Proto.defineFinalize=function(vFunc){this.getApplicationInstance().finalize=vFunc};qx.Proto.defineClose=function(vFunc){this.getApplicationInstance().close=vFunc};qx.Proto.defineTerminate=function(vFunc){this.getApplicationInstance().terminate=vFunc};qx.Proto._onload=function(e){this.debug("qooxdoo "+qx.core.Version.toString());this.debug("loaded "+qx.lang.Object.getLength(qx.OO.classes)+" classes");var cl=qx.sys.Client.getInstance();this.debug("client: "+cl.getEngine()+"-"+cl.getMajor()+"."+cl.getMinor()+"/"+cl.getPlatform()+"/"+cl.getLocale());if(cl.isMshtml()&&!cl.isInQuirksMode()){this.warn("Wrong box sizing: Please modify the document's DOCTYPE!")};this.setComponent(new qx.OO.classes[this.getSetting("component")](this));return this.getComponent()._onload(e)};qx.Proto._onbeforeunload=function(e){return this.getComponent()._onbeforeunload(e)};qx.Proto._onunload=function(e){this.getComponent()._onunload(e);qx.core.Object.dispose()};qx.Proto.dispose=function(){if(this.getDisposed()){return};qx.dom.DomEventRegistration.removeEventListener(window,"load",this.__onload);qx.dom.DomEventRegistration.removeEventListener(window,"beforeunload",this.__onbeforeunload);qx.dom.DomEventRegistration.removeEventListener(window,"unload",this.__onunload);this.__onload=this.__onbeforeunload=this.__onunload=null;if(this._applicationInstance){this._applicationInstance.dispose();this._applicationInstance=null};qx.core.Target.prototype.dispose.call(this)};qx.Class.getInstance=qx.util.Return.returnInstance;qx.Class.getInstance();qx.OO.defineClass("qx.component.AbstractComponent",qx.core.Target,function(){qx.core.Target.call(this)});qx.Proto.dispose=function(){if(this.getDisposed()){return};return qx.core.Target.prototype.dispose.call(this)};qx.OO.defineClass("qx.component.init.AbstractInitComponent",qx.component.AbstractComponent,function(){qx.component.AbstractComponent.call(this)});qx.Proto.initialize=function(e){return qx.core.Init.getInstance().getApplicationInstance().initialize(e)};qx.Proto.main=function(e){return qx.core.Init.getInstance().getApplicationInstance().main(e)};qx.Proto.finalize=function(e){return qx.core.Init.getInstance().getApplicationInstance().finalize(e)};qx.Proto.close=function(e){return qx.core.Init.getInstance().getApplicationInstance().close(e)};qx.Proto.terminate=function(e){return qx.core.Init.getInstance().getApplicationInstance().terminate(e)};qx.OO.defineClass("qx.component.init.BasicInitComponent",qx.component.init.AbstractInitComponent,function(){qx.component.init.AbstractInitComponent.call(this)});qx.Proto._onload=function(e){this.initialize(e);this.main(e);this.finalize(e)};qx.Proto._onbeforeunload=function(e){this.close(e)};qx.Proto._onunload=function(e){this.terminate(e)};qx.OO.defineClass("qx.component.AbstractApplication",qx.component.AbstractComponent,function(){qx.component.AbstractComponent.call(this)});qx.Proto.initialize=function(){};qx.Proto.main=function(){};qx.Proto.finalize=function(){};qx.Proto.close=function(){};qx.Proto.terminate=function(){};qx.OO.defineClass("qx.component.DummyApplication",qx.component.AbstractApplication,function(){qx.component.AbstractApplication.call(this)});qx.Class.getInstance=qx.util.Return.returnInstance;qx.OO.defineClass("qx.core.Version",{major:0,minor:6,revision:2,state:"pre",svn:Number("$Rev: 4314 $".match(/[0-9]+/)[0]),toString:function(){with(qx.core.Version){return major+"."+minor+(revision==0?"":"."+revision)+(state==""?"":"-"+state)+" (r"+svn+")"}}});qx.OO.defineClass("qx.constant.Tags",{H1:"h1",H2:"h2",H3:"h3",H4:"h4",H5:"h5",H6:"h6",P:"p",DIV:"div",SPAN:"span",BODY:"body",EM:"em",I:"i",STRONG:"strong",B:"b",UL:"ul",OL:"ol",LI:"li",TABLE:"table",TD:"td",TR:"tr",THEAD:"thead",TBODY:"tbody",TFOOT:"tfoot"});qx.OO.defineClass("qx.renderer.color.ColorCache");qx.renderer.color.ColorCache=function(propValue){var propKey;var propKeyAsStyle=false;switch(typeof propValue){case qx.constant.Type.STRING:if(propValue!=qx.constant.Core.EMPTY){propValue=propKey=propValue.toLowerCase();break};return propValue;case qx.constant.Type.NUMBER:if(propValue>=0&&propValue<=255){propKey=propValue.toString();break};return propValue;case qx.constant.Type.OBJECT:if(propValue==null||propValue instanceof qx.renderer.color.Color){return propValue};if(typeof propValue.join===qx.constant.Type.FUNCTION&&propValue.length==3){propKey=qx.renderer.color.Color.RGBCSS_START+propValue.join(qx.constant.Core.COMMA)+qx.renderer.color.Color.RGBCSS_STOP;propKeyAsStyle=true;break};default:return propValue};if(qx.renderer.color.ColorCache._data[propKey]){return qx.renderer.color.ColorCache._data[propKey]};var vColorObject=qx.renderer.color.ColorCache._data[propKey]=qx.renderer.color.Color.themedNames[propValue]?new qx.renderer.color.ColorObject(propValue):new qx.renderer.color.Color(propValue);if(propKeyAsStyle){vColorObject._style=propKey};return vColorObject};qx.renderer.color.ColorCache._data={};qx.OO.defineClass("qx.renderer.color.Color",qx.core.Object,function(vValue){if(qx.util.Validation.isValid(vValue)){this.setValue(vValue)};qx.core.Object.call(this)});qx.renderer.color.Color.rgb2style=function(r,g,b){return qx.renderer.color.Color.RGBCSS_START+r+qx.constant.Core.COMMA+g+qx.constant.Core.COMMA+b+qx.renderer.color.Color.RGBCSS_STOP};qx.renderer.color.Color.RGBCSS_START="rgb(";qx.renderer.color.Color.RGBCSS_STOP=")";qx.renderer.color.Color.m_hex=["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f"];qx.renderer.color.Color.m_rgb={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,a:10,b:11,c:12,d:13,e:14,f:15};qx.renderer.color.Color.r_hex3=/^#([0-9a-f]{1})([0-9a-f]{1})([0-9a-f]{1})$/;qx.renderer.color.Color.r_hex6=/^#([0-9a-f]{1})([0-9a-f]{1})([0-9a-f]{1})([0-9a-f]{1})([0-9a-f]{1})([0-9a-f]{1})$/;qx.renderer.color.Color.r_cssrgb=/^rgb\(\s*([0-9]{1,3}\.{0,1}[0-9]*)\s*,\s*([0-9]{1,3}\.{0,1}[0-9]*)\s*,\s*([0-9]{1,3}\.{0,1}[0-9]*)\s*\)$/;qx.renderer.color.Color.r_rgb=/^[0-9]{1,3},[0-9]{1,3},[0-9]{1,3}$/;qx.renderer.color.Color.r_number=/^[0-9]{1,3}\.{0,1}[0-9]*$/;qx.renderer.color.Color.r_percent=/^[0-9]{1,3}\.{0,1}[0-9]*%$/;qx.renderer.color.Color.htmlNames={maroon:[128,0,0],red:[255,0,0],orange:[255,165,0],yellow:[255,255,0],olive:[128,128,0],purple:[128,0,128],fuchsia:[255,0,255],white:[255,255,255],lime:[0,255,0],green:[0,128,0],navy:[0,0,128],blue:[0,0,255],aqua:[0,255,255],teal:[0,128,128],black:[0,0,0],silver:[192,192,192],gray:[128,128,128],transparent:[-1,-1,-1]};qx.renderer.color.Color.themedNames={activeborder:1,activecaption:1,appworkspace:1,background:1,buttonface:1,buttonhighlight:1,buttonshadow:1,buttontext:1,captiontext:1,graytext:1,highlight:1,highlighttext:1,inactiveborder:1,inactivecaption:1,inactivecaptiontext:1,infobackground:1,infotext:1,menu:1,menutext:1,scrollbar:1,threeddarkshadow:1,threedface:1,threedhighlight:1,threedlightshadow:1,threedshadow:1,window:1,windowframe:1,windowtext:1};qx.renderer.color.Color.fromString=function(vDefString){return new qx.renderer.color.Color(vDefString)};qx.renderer.color.Color.fromRandom=function(){return new qx.renderer.color.Color([Math.round(255*Math.random()),Math.round(255*Math.random()),Math.round(255*Math.random())])};qx.Proto._value=null;qx.Proto._style=null;qx.Proto._isRgbColor=false;qx.Proto._isHtmlColor=false;qx.Proto._isThemedColor=false;qx.Proto._red=null;qx.Proto._green=null;qx.Proto._blue=null;qx.Proto._hex=null;qx.Proto.add=qx.util.Return.returnTrue;qx.Proto.remove=qx.util.Return.returnTrue;qx.Proto.isRgbColor=function(){return this._isRgbColor};qx.Proto.isHtmlColor=function(){return this._isHtmlColor};qx.Proto.isThemedColor=function(){return this._isThemedColor};qx.Proto.setValue=function(vValue){this._normalize(vValue);if(this._isThemedColor){throw new Error("Please use qx.renderer.color.ColorObject for themed colors!")}};qx.Proto.getValue=function(){return this._value||qx.constant.Core.EMPTY};qx.Proto.getStyle=function(){if(this._style==null){this._evalStyle()};return this._style};qx.Proto._evalStyle=function(){if(this._isRgbColor){this._style=qx.renderer.color.Color.rgb2style(this._red,this._green,this._blue)}else if(this._isThemedColor){this._applyThemedValue()}else if(this._isHtmlColor){this._style=this._value}else if(qx.util.Validation.isValid(this._value)){throw new Error("_evalStyle could not handle non-rgb colors :"+this.getValue()+"!")}};qx.Proto.getHex=function(){if(this._hex==null){this._evalHex()};return this._hex};qx.Proto._evalHex=function(){if(this._isRgbColor){var a=[qx.constant.Core.HASH];var r=this.getRed();a.push(qx.renderer.color.Color.m_hex[Math.floor(r/16)]);a.push(qx.renderer.color.Color.m_hex[Math.floor(r%16)]);var g=this.getGreen();a.push(qx.renderer.color.Color.m_hex[Math.floor(g/16)]);a.push(qx.renderer.color.Color.m_hex[Math.floor(g%16)]);var b=this.getBlue();a.push(qx.renderer.color.Color.m_hex[Math.floor(b/16)]);a.push(qx.renderer.color.Color.m_hex[Math.floor(b%16)]);this._hex=a.join(qx.constant.Core.EMPTY)}else{}};qx.Proto.getRed=function(){if(this._red==null){this._evalRgb()};return this._red};qx.Proto.getGreen=function(){if(this._green==null){this._evalRgb()};return this._green};qx.Proto.getBlue=function(){if(this._blue==null){this._evalRgb()};return this._blue};qx.Proto._evalRgb=function(){if(this._isThemedColor){this._applyThemedValue()}else if(this._isHtmlColor){var a=qx.renderer.color.Color.htmlNames[this._value];this._red=a[0];this._green=a[1];this._blue=a[2]}else{throw new Error("_evalRgb needs implementation!")}};qx.Proto._normalize=function(vInValue){this._isThemedColor=this._isRgbColor=this._isHtmlColor=false;this._hex=null;var invalid=new Error("Invalid color: "+vInValue);switch(typeof vInValue){case qx.constant.Type.STRING:vInValue=vInValue.toLowerCase();if(qx.renderer.color.Color.htmlNames[vInValue]){this._isHtmlColor=true}else if(qx.renderer.color.Color.themedNames[vInValue]){this._isThemedColor=true}else if(qx.renderer.color.Color.r_cssrgb.test(vInValue)){this._red=parseInt(RegExp.$1);this._green=parseInt(RegExp.$2);this._blue=parseInt(RegExp.$3);this._isRgbColor=true}else if(qx.renderer.color.Color.r_hex3.test(vInValue)){this._hex=vInValue;this._red=(qx.renderer.color.Color.m_rgb[RegExp.$1]*16)+qx.renderer.color.Color.m_rgb[RegExp.$1];this._green=(qx.renderer.color.Color.m_rgb[RegExp.$2]*16)+qx.renderer.color.Color.m_rgb[RegExp.$2];this._blue=(qx.renderer.color.Color.m_rgb[RegExp.$3]*16)+qx.renderer.color.Color.m_rgb[RegExp.$3];this._isRgbColor=true}else if(qx.renderer.color.Color.r_hex6.test(vInValue)){this._hex=vInValue;this._red=(qx.renderer.color.Color.m_rgb[RegExp.$1]*16)+qx.renderer.color.Color.m_rgb[RegExp.$2];this._green=(qx.renderer.color.Color.m_rgb[RegExp.$3]*16)+qx.renderer.color.Color.m_rgb[RegExp.$4];this._blue=(qx.renderer.color.Color.m_rgb[RegExp.$5]*16)+qx.renderer.color.Color.m_rgb[RegExp.$6];this._isRgbColor=true}else{throw invalid};break;case qx.constant.Type.NUMBER:if(vInValue>=0&&vInValue<=255){this._red=this._green=this._blue=vInValue;this._isRgbColor=true}else{throw invalid};break;case qx.constant.Type.OBJECT:if(qx.util.Validation.isValidArray(vInValue)&&vInValue.length==3){this._red=vInValue[0];this._green=vInValue[1];this._blue=vInValue[2];this._isRgbColor=true;break};default:throw invalid};if(!this._isRgbColor){this._red=this._green=this._blue=null;this._style=this._isHtmlColor?vInValue:null}else{this._style=null;if(!(this._red>=0&&this._red<=255&&this._green>=0&&this._green<=255&&this._blue>=0&&this._blue<=255)){throw invalid}};return this._value=vInValue};qx.Proto.dispose=function(){if(this.getDisposed()){return true};delete this._value;delete this._style;delete this._red;delete this._green;delete this._blue;delete this._isRgbColor;delete this._isHtmlColor;delete this._isThemedColor;return qx.core.Object.prototype.dispose.call(this)};qx.OO.defineClass("qx.renderer.color.ColorObject",qx.renderer.color.Color,function(vValue){this.setValue(vValue);if(qx.manager.object.ColorManager.getInstance().has(this._value)){return qx.manager.object.ColorManager.getInstance().get(this._value)};qx.core.Object.call(this);qx.manager.object.ColorManager.getInstance().add(this);this._dependentObjects={}});qx.renderer.color.ColorObject.fromString=function(vDefString){return new qx.renderer.color.ColorObject(vDefString)};qx.Proto._updateTheme=function(vTheme){if(!this._isThemedColor){throw new Error("Could not redefine themed value of non os colors!")};this._applyThemedValue();this._syncObjects()};qx.Proto._applyThemedValue=function(){var vTheme=qx.manager.object.ColorManager.getInstance().getColorTheme();var vRgb=vTheme.getValueByName(this._value);if(vRgb){this._red=vRgb[0];this._green=vRgb[1];this._blue=vRgb[2]};this._style=vTheme.getStyleByName(this._value);this._hex=null};qx.Proto._syncObjects=function(){for(var i in this._dependentObjects){this._dependentObjects[i]._updateColors(this,this._style)}};qx.Proto.setValue=function(vValue){this._normalize(vValue);this._syncObjects()};qx.Proto.add=function(vObject){this._dependentObjects[vObject.toHashCode()]=vObject};qx.Proto.remove=function(vObject){delete this._dependentObjects[vObject.toHashCode()]};qx.Proto.dispose=function(){if(this.getDisposed()){return true};if(this._dependentObjects){for(var i in this._dependentObjects){delete this._dependentObjects[i]};delete this._dependentObjects};return qx.renderer.color.Color.prototype.dispose.call(this)};qx.OO.defineClass("qx.manager.object.ObjectManager",qx.core.Target,function(){qx.core.Target.call(this);this._objects={}});qx.Proto.add=function(vObject){if(this.getDisposed()){return};this._objects[vObject.toHashCode()]=vObject;return true};qx.Proto.remove=function(vObject){if(this.getDisposed()){return};delete this._objects[vObject.toHashCode()];return true};qx.Proto.has=function(vObject){return this._objects[vObject.toHashCode()]!=null};qx.Proto.get=function(vObject){return this._objects[vObject.toHashCode()]};qx.Proto.getAll=function(){return this._objects};qx.Proto.enableAll=function(){for(var vHashCode in this._objects){this._objects[vHashCode].setEnabled(true)}};qx.Proto.disableAll=function(){for(var vHashCode in this._objects){this._objects[vHashCode].setEnabled(false)}};qx.Proto.dispose=function(){if(this.getDisposed()){return};if(this._objects){for(var i in this._objects){delete this._objects[i]};delete this._objects};return qx.core.Target.prototype.dispose.call(this)};qx.OO.defineClass("qx.manager.object.ColorManager",qx.manager.object.ObjectManager,function(){qx.manager.object.ObjectManager.call(this);this._colorThemes={};this._dependentObjects={}});qx.Settings.setDefault("colorTheme","qx.theme.color.WindowsRoyaleColorTheme");qx.OO.addProperty({name:"colorTheme",type:qx.constant.Type.OBJECT,allowNull:false,instance:"qx.renderer.theme.ColorTheme"});qx.Proto.registerColorTheme=function(vThemeClass){this._colorThemes[vThemeClass.classname]=vThemeClass;if(vThemeClass.classname==this.getSetting("colorTheme")){this.setColorTheme(vThemeClass.getInstance())}};qx.Proto.setColorThemeById=function(vId){this.setColorTheme(this._colorThemes[vId].getInstance())};qx.Proto.add=function(oObject){var vValue=oObject.getValue();this._objects[vValue]=oObject;if(oObject.isThemedColor()){this._dependentObjects[vValue]=oObject}};qx.Proto.remove=function(oObject){var vValue=oObject.getValue();delete this._objects[vValue];delete this._dependentObjects[vValue]};qx.Proto.has=function(vValue){return this._objects[vValue]!=null};qx.Proto.get=function(vValue){return this._objects[vValue]};qx.Proto._modifyColorTheme=function(propValue,propOldValue,propData){propValue.compile();for(var i in this._dependentObjects){this._dependentObjects[i]._updateTheme(propValue)};return true};qx.Proto.createThemeList=function(vParent,xCor,yCor){var vButton;var vThemes=this._colorThemes;var vIcon="icon/16/colors.png";var vPrefix="Color Theme: ";var vEvent=qx.constant.Event.EXECUTE;for(var vId in vThemes){var vObj=vThemes[vId].getInstance();var vButton=new qx.ui.form.Button(vPrefix+vObj.getTitle(),vIcon);vButton.setLocation(xCor,yCor);vButton.addEventListener(vEvent,new Function("qx.manager.object.ColorManager.getInstance().setColorThemeById('"+vId+"')"));vParent.add(vButton);yCor+=30}};qx.Proto.dispose=function(){if(this.getDisposed()){return};this._colorThemes=null;for(var i in this._dependentObjects){delete this._dependentObjects[i]};delete this._dependentObjects;return qx.manager.object.ObjectManager.prototype.dispose.call(this)};qx.Class.getInstance=qx.util.Return.returnInstance;qx.OO.defineClass("qx.renderer.theme.ColorTheme",qx.core.Object,function(vTitle){qx.core.Object.call(this);this._compiledColors={};this.setTitle(vTitle)});qx.OO.addProperty({name:"title",type:qx.constant.Type.STRING,allowNull:false,defaultValue:qx.constant.Core.EMPTY});qx.Proto._needsCompilation=true;qx.Proto._colors={};qx.Proto.getValueByName=function(vName){return this._colors[vName]||qx.constant.Core.EMPTY};qx.Proto.getStyleByName=function(vName){return this._compiledColors[vName]||qx.constant.Core.EMPTY};qx.Proto.compile=function(){if(!this._needsCompilation){return};for(var vName in qx.renderer.color.Color.themedNames){this._compileValue(vName)};this._needsCompilation=false};qx.Proto._compileValue=function(vName){var v=this._colors[vName];this._compiledColors[vName]=v?qx.renderer.color.Color.rgb2style.apply(this,this._colors[vName]):vName};qx.Proto._register=function(){return qx.manager.object.ColorManager.getInstance().registerTheme(this)};qx.Proto.dispose=function(){if(this.getDisposed()){return};delete this._colors;delete this._compiledColors;qx.core.Object.prototype.dispose.call(this)};qx.OO.defineClass("qx.theme.color.WindowsRoyaleColorTheme",qx.renderer.theme.ColorTheme,function(){qx.renderer.theme.ColorTheme.call(this,"Windows Royale")});qx.Proto._colors=qx.lang.Object.carefullyMergeWith({activeborder:[212,208,200],activecaption:[51,94,168],appworkspace:[128,128,128],background:[0,0,64],buttonface:[235,233,237],buttonhighlight:[255,255,255],buttonshadow:[167,166,170],buttontext:[0,0,0],captiontext:[255,255,255],graytext:[167,166,170],highlight:[51,94,168],highlighttext:[255,255,255],inactiveborder:[212,208,200],inactivecaption:[111,161,217],inactivecaptiontext:[255,255,255],infobackground:[255,255,225],infotext:[0,0,0],menu:[255,255,255],menutext:[0,0,0],scrollbar:[212,208,200],threeddarkshadow:[133,135,140],threedface:[235,233,237],threedhighlight:[255,255,255],threedlightshadow:[220,223,228],threedshadow:[167,166,170],window:[255,255,255],windowframe:[0,0,0],windowtext:[0,0,0]},qx.Super.prototype._colors);qx.Class.getInstance=qx.util.Return.returnInstance;qx.manager.object.ColorManager.getInstance().registerColorTheme(qx.Class);qx.OO.defineClass("qx.constant.Event",{MOUSEOVER:"mouseover",MOUSEMOVE:"mousemove",MOUSEOUT:"mouseout",MOUSEDOWN:"mousedown",MOUSEUP:"mouseup",MOUSEWHEEL:"mousewheel",CLICK:"click",DBLCLICK:"dblclick",CONTEXTMENU:"contextmenu",KEYDOWN:"keydown",KEYPRESS:"keypress",KEYUP:"keyup",BLUR:"blur",FOCUS:"focus",FOCUSIN:"focusin",FOCUSOUT:"focusout",SELECT:"select",SCROLL:"scroll",INPUT:"input",CHANGE:"change",RESIZE:"resize",CHANGESELECTION:"changeSelection",INTERVAL:"interval",EXECUTE:"execute",CREATE:"create",LOAD:"load",ERROR:"error",SUBMIT:"submit",UNLOAD:"unload",BEFOREUNLOAD:"beforeunload",TREEOPENWITHCONTENT:"treeOpenWithContent",TREEOPENWHILEEMPTY:"treeOpenWhileEmpty",TREECLOSE:"treeClose",BEFOREAPPEAR:"beforeAppear",APPEAR:"appear",BEFOREDISAPPEAR:"beforeDisappear",DISAPPEAR:"disappear",BEFOREINSERTDOM:"beforeInsertDom",INSERTDOM:"insertDom",BEFOREREMOVEDOM:"beforeRemoveDom",REMOVEDOM:"removeDom",DRAGDROP:"dragdrop",DRAGOVER:"dragover",DRAGOUT:"dragout",DRAGMOVE:"dragmove",DRAGSTART:"dragstart",DRAGEND:"dragend",CREATED:"created",CONFIGURED:"configured",QUEUED:"queued",SENDING:"sending",RECEIVING:"receiving",COMPLETED:"completed",ABORTED:"aborted",FAILED:"failed",TIMEOUT:"timeout",DIALOGOK:"dialogok",DIALOGCANCEL:"dialogcancel",DIALOGCLOSE:"dialogclose",DIALOGPREVIOUS:"dialogprevious",DIALOGNEXT:"dialognext",DIALOGFIRST:"dialogfirst",DIALOGLAST:"dialoglast"});qx.OO.defineClass("qx.renderer.border.BorderCache");qx.renderer.border.BorderCache=function(propValue,propData){if(qx.util.Validation.isValidArray(propValue)&&propValue.length>1){propString=qx.constant.Core.EMPTY;for(var i=0,l=propValue.length,p;i<l;i++){p=propValue[i];propString+=p;if(typeof p===qx.constant.Type.NUMBER){propString+=qx.constant.Core.PIXEL};if(i<(l-1)){propString+=qx.constant.Core.SPACE}};propValue=propString}else if(qx.util.Validation.isInvalidString(propValue)){return propValue};if(qx.renderer.border.BorderCache._data[propValue]){return qx.renderer.border.BorderCache._data[propValue]};return qx.renderer.border.BorderCache._data[propValue]=qx.renderer.border.BorderObject.fromString(propValue)};qx.renderer.border.BorderCache._data={};qx.OO.defineClass("qx.renderer.border.Border",qx.core.Object,function(vWidth,vStyle,vColor){qx.core.Object.call(this);this._themedEdges={};this._initCache();if(qx.util.Validation.isValidNumber(vWidth)){this.setWidth(vWidth);if(qx.util.Validation.isValidString(vStyle)){this.setStyle(vStyle)};if(qx.util.Validation.isValid(vColor)){this.setColor(vColor)}}});qx.Class.STYLE_GROOVE="groove";qx.Class.STYLE_RIDGE="ridge";qx.Class.STYLE_INSET="inset";qx.Class.STYLE_OUTSET="outset";qx.Class.STYLE_SOLID="solid";qx.Class.STYLE_DOTTED="dotted";qx.Class.STYLE_DASHED="dashed";qx.Class.STYLE_DOUBLE="double";qx.Class.STYLE_NONE="none";qx.Class.POSITION_TOP="top";qx.Class.POSITION_RIGHT="right";qx.Class.POSITION_BOTTOM="bottom";qx.Class.POSITION_LEFT="left";qx.Class.enhancedCrossBrowserMode=true;qx.Class.baseColor="threedlightshadow";qx.Class.stylePart="Style";qx.Class.colorPart="Color";qx.Proto._needsCompilationTop=true;qx.Proto._needsCompilationRight=true;qx.Proto._needsCompilationBottom=true;qx.Proto._needsCompilationLeft=true;qx.OO.addProperty({name:"topWidth",type:qx.constant.Type.NUMBER,defaultValue:0,impl:"borderTopProperty"});qx.OO.addProperty({name:"rightWidth",type:qx.constant.Type.NUMBER,defaultValue:0,impl:"borderRightProperty"});qx.OO.addProperty({name:"bottomWidth",type:qx.constant.Type.NUMBER,defaultValue:0,impl:"borderBottomProperty"});qx.OO.addProperty({name:"leftWidth",type:qx.constant.Type.NUMBER,defaultValue:0,impl:"borderLeftProperty"});qx.OO.addProperty({name:"topStyle",type:qx.constant.Type.STRING,defaultValue:qx.constant.Core.NONE,impl:"borderTopProperty"});qx.OO.addProperty({name:"rightStyle",type:qx.constant.Type.STRING,defaultValue:qx.constant.Core.NONE,impl:"borderRightProperty"});qx.OO.addProperty({name:"bottomStyle",type:qx.constant.Type.STRING,defaultValue:qx.constant.Core.NONE,impl:"borderBottomProperty"});qx.OO.addProperty({name:"leftStyle",type:qx.constant.Type.STRING,defaultValue:qx.constant.Core.NONE,impl:"borderLeftProperty"});qx.OO.addProperty({name:"topColor",impl:"borderTopProperty",type:qx.constant.Type.OBJECT,instance:"qx.renderer.color.Color",convert:qx.renderer.color.ColorCache});qx.OO.addProperty({name:"rightColor",impl:"borderRightProperty",type:qx.constant.Type.OBJECT,instance:"qx.renderer.color.Color",convert:qx.renderer.color.ColorCache});qx.OO.addProperty({name:"bottomColor",impl:"borderBottomProperty",type:qx.constant.Type.OBJECT,instance:"qx.renderer.color.Color",convert:qx.renderer.color.ColorCache});qx.OO.addProperty({name:"leftColor",impl:"borderLeftProperty",type:qx.constant.Type.OBJECT,instance:"qx.renderer.color.Color",convert:qx.renderer.color.ColorCache});qx.renderer.border.Border.fromString=function(vDefString){var vBorder=new qx.renderer.border.Border;var vAllParts=vDefString.split(/\s+/);var vPart,vTemp;for(var i=0;i<vAllParts.length;i++){switch(vPart=vAllParts[i]){case qx.renderer.border.Border.STYLE_GROOVE:case qx.renderer.border.Border.STYLE_RIDGE:case qx.renderer.border.Border.STYLE_INSET:case qx.renderer.border.Border.STYLE_OUTSET:case qx.renderer.border.Border.STYLE_SOLID:case qx.renderer.border.Border.STYLE_DOTTED:case qx.renderer.border.Border.STYLE_DASHED:case qx.renderer.border.Border.STYLE_DOUBLE:case qx.renderer.border.Border.STYLE_NONE:vBorder.setStyle(vPart);break;default:vTemp=parseFloat(vPart);if(vTemp==vPart||qx.lang.String.contains(vPart,qx.constant.Core.PIXEL)){vBorder.setWidth(vTemp)}else{vPart=vPart.toLowerCase();vBorder.setColor(new qx.renderer.color.Color(vPart))};break}};return vBorder};qx.Proto.addListenerWidget=qx.util.Return.returnTrue;qx.Proto.removeListenerWidget=qx.util.Return.returnTrue;qx.Proto._sync=qx.util.Return.returnTrue;qx.Proto.setWidth=function(vWidth){this.setTopWidth(vWidth);this.setRightWidth(vWidth);this.setBottomWidth(vWidth);this.setLeftWidth(vWidth);return true};qx.Proto.setStyle=function(vStyle){this.setTopStyle(vStyle);this.setRightStyle(vStyle);this.setBottomStyle(vStyle);this.setLeftStyle(vStyle);return true};qx.Proto.setColor=function(vColor){this.setTopColor(vColor);this.setRightColor(vColor);this.setBottomColor(vColor);this.setLeftColor(vColor);return true};qx.Proto.setTop=function(vWidth,vStyle,vColor){this.setTopWidth(vWidth);this.setTopStyle(vStyle);this.setTopColor(vColor);return true};qx.Proto.setRight=function(vWidth,vStyle,vColor){this.setRightWidth(vWidth);this.setRightStyle(vStyle);this.setRightColor(vColor);return true};qx.Proto.setBottom=function(vWidth,vStyle,vColor){this.setBottomWidth(vWidth);this.setBottomStyle(vStyle);this.setBottomColor(vColor);return true};qx.Proto.setLeft=function(vWidth,vStyle,vColor){this.setLeftWidth(vWidth);this.setLeftStyle(vStyle);this.setLeftColor(vColor);return true};if(qx.sys.Client.getInstance().isGecko()){qx.Proto._initCache=function(){this._defsX={borderLeft:qx.constant.Core.EMPTY,borderRight:qx.constant.Core.EMPTY,MozBorderLeftColors:qx.constant.Core.EMPTY,MozBorderRightColors:qx.constant.Core.EMPTY};this._defsY={borderTop:qx.constant.Core.EMPTY,borderBottom:qx.constant.Core.EMPTY,MozBorderTopColors:qx.constant.Core.EMPTY,MozBorderBottomColors:qx.constant.Core.EMPTY}}}else{qx.Proto._initCache=function(){this._defsX={borderLeft:qx.constant.Core.EMPTY,borderRight:qx.constant.Core.EMPTY};this._defsY={borderTop:qx.constant.Core.EMPTY,borderBottom:qx.constant.Core.EMPTY};if(qx.renderer.border.Border.enhancedCrossBrowserMode){this._enhancedDefsX={borderLeft:qx.constant.Core.EMPTY,borderRight:qx.constant.Core.EMPTY};this._enhancedDefsY={borderTop:qx.constant.Core.EMPTY,borderBottom:qx.constant.Core.EMPTY}}}};if(qx.sys.Client.getInstance().isGecko()||qx.renderer.border.Border.enhancedCrossBrowserMode){qx.Proto._addToThemed3DColors=function(vProp){var needRegistering=qx.lang.Object.isEmpty(this._themedEdges);this._themedEdges[vProp]=true;if(needRegistering){(new qx.renderer.color.ColorObject("ThreeDDarkShadow")).add(this);(new qx.renderer.color.ColorObject("ThreeDShadow")).add(this);(new qx.renderer.color.ColorObject("ThreeDLightShadow")).add(this);(new qx.renderer.color.ColorObject("ThreeDHighlight")).add(this)}};qx.Proto._removeFromThemed3DColors=function(vProp){delete this._themedEdges[vProp];if(qx.lang.Object.isEmpty(this._themedEdges)){(new qx.renderer.color.ColorObject("ThreeDDarkShadow")).remove(this);(new qx.renderer.color.ColorObject("ThreeDShadow")).remove(this);(new qx.renderer.color.ColorObject("ThreeDLightShadow")).remove(this);(new qx.renderer.color.ColorObject("ThreeDHighlight")).remove(this)}}}else{qx.Proto._addToThemed3DColors=function(vProp){var needRegistering=qx.lang.Object.isEmpty(this._themedEdges);this._themedEdges[vProp]=true;if(needRegistering){(new qx.renderer.color.ColorObject("ThreeDLightShadow")).add(this)}};qx.Proto._removeFromThemed3DColors=function(vProp){delete this._themedEdges[vProp];if(qx.lang.Object.isEmpty(this._themedEdges)){(new qx.renderer.color.ColorObject("ThreeDLightShadow")).remove(this)}}};qx.renderer.border.Border.data={1:{outset:{top:["threedhighlight"],right:["threedshadow"],bottom:["threedshadow"],left:["threedhighlight"]},inset:{top:["threedshadow"],right:["threedhighlight"],bottom:["threedhighlight"],left:["threedshadow"]}},2:{outset:{top:["threedlightshadow","threedhighlight"],right:["threeddarkshadow","threedshadow"],bottom:["threeddarkshadow","threedshadow"],left:["threedlightshadow","threedhighlight"]},inset:{top:["threedshadow","threeddarkshadow"],right:["threedhighlight","threedlightshadow"],bottom:["threedhighlight","threedlightshadow"],left:["threedshadow","threeddarkshadow"]},ridge:{top:["threedhighlight","threedshadow"],right:["threedshadow","threedhighlight"],bottom:["threedshadow","threedhighlight"],left:["threedhighlight","threedshadow"]},groove:{top:["threedshadow","threedhighlight"],right:["threedhighlight","threedshadow"],bottom:["threedhighlight","threedshadow"],left:["threedshadow","threedhighlight"]}}};qx.Proto._generateDefString=function(vWidth,vStyle,vColor){if(typeof vWidth!==qx.constant.Type.NUMBER||vWidth<0){return qx.constant.Core.EMPTY};var vArr=[vWidth+qx.constant.Core.PIXEL];if(qx.util.Validation.isValidString(vStyle)){vArr.push(vStyle)};if(qx.util.Validation.isValidObject(vColor)&&vColor instanceof qx.renderer.color.Color){vColor=vColor.getStyle()};if(qx.util.Validation.isValidString(vColor)){vArr.push(vColor)};return vArr.join(qx.constant.Core.SPACE)};qx.Proto._updateColors=function(vColorObject,vNewValue){this._needsCompilationTop=true;this._needsCompilationRight=true;this._needsCompilationBottom=true;this._needsCompilationLeft=true;this._sync(qx.renderer.border.Border.POSITION_TOP);this._sync(qx.renderer.border.Border.POSITION_RIGHT);this._sync(qx.renderer.border.Border.POSITION_BOTTOM);this._sync(qx.renderer.border.Border.POSITION_LEFT)};qx.Proto._handleColorRegistration=function(propValue,propOldValue,propData){if(qx.lang.String.contains(propData.name,qx.renderer.border.Border.stylePart)){switch(propValue){case qx.renderer.border.Border.STYLE_OUTSET:case qx.renderer.border.Border.STYLE_INSET:case qx.renderer.border.Border.STYLE_GROOVE:case qx.renderer.border.Border.STYLE_RIDGE:this._addToThemed3DColors(propData.name);break;default:this._removeFromThemed3DColors(propData.name)}};if(qx.lang.String.contains(propData.name,qx.renderer.border.Border.colorPart)){if(propOldValue instanceof qx.renderer.color.ColorObject){switch(propOldValue){case this.getTopColor():case this.getRightColor():case this.getBottomColor():case this.getLeftColor():break;default:propOldValue.remove(this)}};if(propValue instanceof qx.renderer.color.ColorObject){propValue.add(this)}}};qx.Proto._modifyBorderTopProperty=function(propValue,propOldValue,propData){this._handleColorRegistration(propValue,propOldValue,propData);this._needsCompilationTop=true;this._useEnhancedCrossBrowserMode=null;this._sync("top");return true};qx.Proto._modifyBorderRightProperty=function(propValue,propOldValue,propData){this._handleColorRegistration(propValue,propOldValue,propData);this._needsCompilationRight=true;this._useEnhancedCrossBrowserMode=null;this._sync("right");return true};qx.Proto._modifyBorderBottomProperty=function(propValue,propOldValue,propData){this._handleColorRegistration(propValue,propOldValue,propData);this._needsCompilationBottom=true;this._useEnhancedCrossBrowserMode=null;this._sync("bottom");return true};qx.Proto._modifyBorderLeftProperty=function(propValue,propOldValue,propData){this._handleColorRegistration(propValue,propOldValue,propData);this._needsCompilationLeft=true;this._useEnhancedCrossBrowserMode=null;this._sync("left");return true};qx.Proto.getUseEnhancedCrossBrowserMode=function(){if(this._useEnhancedCrossBrowserMode==null){this._useEnhancedCrossBrowserMode=this._evalUseEnhancedCrossBrowserMode()};return this._useEnhancedCrossBrowserMode};qx.Proto._evalUseEnhancedCrossBrowserMode=function(){if(this.getTopWidth()==2){switch(this.getTopStyle()){case qx.renderer.border.Border.STYLE_OUTSET:case qx.renderer.border.Border.STYLE_INSET:case qx.renderer.border.Border.STYLE_GROOVE:case qx.renderer.border.Border.STYLE_RIDGE:return true}};if(this.getRightWidth()==2){switch(this.getRightStyle()){case qx.renderer.border.Border.STYLE_OUTSET:case qx.renderer.border.Border.STYLE_INSET:case qx.renderer.border.Border.STYLE_GROOVE:case qx.renderer.border.Border.STYLE_RIDGE:return true}};if(this.getBottomWidth()==2){switch(this.getBottomStyle()){case qx.renderer.border.Border.STYLE_OUTSET:case qx.renderer.border.Border.STYLE_INSET:case qx.renderer.border.Border.STYLE_GROOVE:case qx.renderer.border.Border.STYLE_RIDGE:return true}};if(this.getLeftWidth()==2){switch(this.getLeftStyle()){case qx.renderer.border.Border.STYLE_OUTSET:case qx.renderer.border.Border.STYLE_INSET:case qx.renderer.border.Border.STYLE_GROOVE:case qx.renderer.border.Border.STYLE_RIDGE:return true}};return false};qx.Proto._applyWidget=function(o){this._applyWidgetX(o);this._applyWidgetY(o)};qx.Proto._resetWidget=function(o){this._resetWidgetX(o);this._resetWidgetY(o)};qx.Proto._resetWidgetX=function(o){return qx.renderer.border.Border._resetBorderX(o)};qx.Proto._resetWidgetY=function(o){return qx.renderer.border.Border._resetBorderY(o)};qx.Proto._applyWidgetXCommon=function(vObject){if(this._needsCompilationLeft){this._compileLeft()};if(this._needsCompilationRight){this._compileRight()};for(var i in this._defsX){vObject._style[i]=this._defsX[i]};if(!qx.sys.Client.getInstance().isGecko()&&qx.renderer.border.Border.enhancedCrossBrowserMode){if(this.getUseEnhancedCrossBrowserMode()){vObject._createElementForEnhancedBorder()};if(vObject._borderStyle){for(var i in this._enhancedDefsX){vObject._borderStyle[i]=this._enhancedDefsX[i]}}}};qx.Proto._applyWidgetYCommon=function(vObject){if(this._needsCompilationTop){this._compileTop()};if(this._needsCompilationBottom){this._compileBottom()};for(var i in this._defsY){vObject._style[i]=this._defsY[i]};if(!qx.sys.Client.getInstance().isGecko()&&qx.renderer.border.Border.enhancedCrossBrowserMode){if(this.getUseEnhancedCrossBrowserMode()){vObject._createElementForEnhancedBorder()};if(vObject._borderStyle){for(var i in this._enhancedDefsY){vObject._borderStyle[i]=this._enhancedDefsY[i]}}}};if(qx.sys.Client.getInstance().isGecko()){qx.Proto._applyWidgetX=qx.Proto._applyWidgetXCommon;qx.Proto._applyWidgetY=qx.Proto._applyWidgetYCommon;qx.Proto._generateMozColorDefString=function(vWidth,vStyle,vEdge){try{try{var a=qx.renderer.border.Border.data[vWidth][vStyle][vEdge]}catch(ex){};if(typeof a===qx.constant.Type.OBJECT){for(var i=0,s=[],l=a.length;i<l;i++){s.push((new qx.renderer.color.ColorObject(a[i]).getStyle()))};return s.join(qx.constant.Core.SPACE)}}catch(ex){this.error("Failed to generate Mozilla Color Definition Strings",ex)};return qx.constant.Core.EMPTY};qx.Proto._compileTop=function(){var w=this.getTopWidth(),s=this.getTopStyle(),d=this._defsY;d.borderTop=this._generateDefString(w,s,this.getTopColor());d.MozBorderTopColors=this._generateMozColorDefString(w,s,qx.renderer.border.Border.POSITION_TOP);this._needsCompilationTop=false};qx.Proto._compileRight=function(){var w=this.getRightWidth(),s=this.getRightStyle(),d=this._defsX;d.borderRight=this._generateDefString(w,s,this.getRightColor());d.MozBorderRightColors=this._generateMozColorDefString(w,s,qx.renderer.border.Border.POSITION_RIGHT);this._needsCompilationRight=false};qx.Proto._compileBottom=function(){var w=this.getBottomWidth(),s=this.getBottomStyle(),d=this._defsY;d.borderBottom=this._generateDefString(w,s,this.getBottomColor());d.MozBorderBottomColors=this._generateMozColorDefString(w,s,qx.renderer.border.Border.POSITION_BOTTOM);this._needsCompilationBottom=false};qx.Proto._compileLeft=function(){var w=this.getLeftWidth(),s=this.getLeftStyle(),d=this._defsX;d.borderLeft=this._generateDefString(w,s,this.getLeftColor());d.MozBorderLeftColors=this._generateMozColorDefString(w,s,qx.renderer.border.Border.POSITION_LEFT);this._needsCompilationLeft=false};qx.renderer.border.Border._resetBorderX=function(o){var s=o._style;s.borderLeft=s.borderRight=s.MozBorderLeftColors=s.MozBorderRightColors=qx.constant.Core.EMPTY};qx.renderer.border.Border._resetBorderY=function(o){var s=o._style;s.borderTop=s.borderBottom=s.MozBorderTopColors=s.MozBorderBottomColors=qx.constant.Core.EMPTY}}else{qx.Proto._applyWidgetX=function(vObject){this._applyWidgetXCommon(vObject);if(qx.renderer.border.Border.enhancedCrossBrowserMode){if(this.getUseEnhancedCrossBrowserMode()){vObject._createElementForEnhancedBorder()};if(vObject._borderStyle){for(var i in this._enhancedDefsX){vObject._borderStyle[i]=this._enhancedDefsX[i]}}}};qx.Proto._applyWidgetY=function(vObject){this._applyWidgetYCommon(vObject);if(qx.renderer.border.Border.enhancedCrossBrowserMode){if(this.getUseEnhancedCrossBrowserMode()){vObject._createElementForEnhancedBorder()};if(vObject._borderStyle){for(var i in this._enhancedDefsY){vObject._borderStyle[i]=this._enhancedDefsY[i]}}}};qx.Proto._compileTop=function(){var vTopWidth=this.getTopWidth();var vTopStyle=this.getTopStyle();var vTopColor=this.getTopColor();switch(vTopWidth){case 1:switch(vTopStyle){case qx.renderer.border.Border.STYLE_OUTSET:case qx.renderer.border.Border.STYLE_INSET:vTopColor=(new qx.renderer.color.ColorObject(qx.renderer.border.Border.data[vTopWidth][vTopStyle][qx.renderer.border.Border.POSITION_TOP][0]));vTopStyle=qx.renderer.border.Border.STYLE_SOLID};break;case 2:switch(vTopStyle){case qx.renderer.border.Border.STYLE_OUTSET:case qx.renderer.border.Border.STYLE_INSET:case qx.renderer.border.Border.STYLE_GROOVE:case qx.renderer.border.Border.STYLE_RIDGE:if(qx.renderer.border.Border.enhancedCrossBrowserMode){try{var c=qx.renderer.border.Border.data[vTopWidth][vTopStyle][qx.renderer.border.Border.POSITION_TOP];if(typeof c===qx.constant.Type.OBJECT){vTopStyle=qx.renderer.border.Border.STYLE_SOLID;vTopWidth=1;vTopColor=(new qx.renderer.color.ColorObject(c[1]));this._enhancedDefsY.borderTop=this._generateDefString(vTopWidth,vTopStyle,vTopColor);vTopColor=(new qx.renderer.color.ColorObject(c[0]))}}catch(ex){this.error("Failed to compile top border",ex);this.warn("Details: Width="+vTopWidth+", Style="+vTopStyle)}}else{vTopColor=(new qx.renderer.color.ColorObject(qx.renderer.border.Border.baseColor))}};break};this._defsY.borderTop=this._generateDefString(vTopWidth,vTopStyle,vTopColor);this._needsCompilationTop=false};qx.Proto._compileRight=function(){var vRightWidth=this.getRightWidth();var vRightStyle=this.getRightStyle();var vRightColor=this.getRightColor();switch(vRightWidth){case 1:switch(vRightStyle){case qx.renderer.border.Border.STYLE_OUTSET:case qx.renderer.border.Border.STYLE_INSET:vRightColor=(new qx.renderer.color.ColorObject(qx.renderer.border.Border.data[vRightWidth][vRightStyle][qx.renderer.border.Border.POSITION_RIGHT][0]));vRightStyle=qx.renderer.border.Border.STYLE_SOLID};break;case 2:switch(vRightStyle){case qx.renderer.border.Border.STYLE_OUTSET:case qx.renderer.border.Border.STYLE_INSET:case qx.renderer.border.Border.STYLE_GROOVE:case qx.renderer.border.Border.STYLE_RIDGE:if(qx.renderer.border.Border.enhancedCrossBrowserMode){try{var c=qx.renderer.border.Border.data[vRightWidth][vRightStyle][qx.renderer.border.Border.POSITION_RIGHT];if(typeof c===qx.constant.Type.OBJECT){vRightStyle=qx.renderer.border.Border.STYLE_SOLID;vRightWidth=1;vRightColor=(new qx.renderer.color.ColorObject(c[1]));this._enhancedDefsX.borderRight=this._generateDefString(vRightWidth,vRightStyle,vRightColor);vRightColor=(new qx.renderer.color.ColorObject(c[0]))}}catch(ex){this.error("Failed to compile right border",ex);this.warn("Details: Width="+vRightWidth+", Style="+vRightStyle)}}else{vRightColor=(new qx.renderer.color.ColorObject(qx.renderer.border.Border.baseColor))}};break};this._defsX.borderRight=this._generateDefString(vRightWidth,vRightStyle,vRightColor);this._needsCompilationRight=false};qx.Proto._compileBottom=function(){var vBottomWidth=this.getBottomWidth();var vBottomStyle=this.getBottomStyle();var vBottomColor=this.getBottomColor();switch(vBottomWidth){case 1:switch(vBottomStyle){case qx.renderer.border.Border.STYLE_OUTSET:case qx.renderer.border.Border.STYLE_INSET:vBottomColor=(new qx.renderer.color.ColorObject(qx.renderer.border.Border.data[vBottomWidth][vBottomStyle][qx.renderer.border.Border.POSITION_BOTTOM][0]));vBottomStyle=qx.renderer.border.Border.STYLE_SOLID};break;case 2:switch(vBottomStyle){case qx.renderer.border.Border.STYLE_OUTSET:case qx.renderer.border.Border.STYLE_INSET:case qx.renderer.border.Border.STYLE_GROOVE:case qx.renderer.border.Border.STYLE_RIDGE:if(qx.renderer.border.Border.enhancedCrossBrowserMode){try{var c=qx.renderer.border.Border.data[vBottomWidth][vBottomStyle][qx.renderer.border.Border.POSITION_BOTTOM];if(typeof c===qx.constant.Type.OBJECT){vBottomStyle=qx.renderer.border.Border.STYLE_SOLID;vBottomWidth=1;vBottomColor=(new qx.renderer.color.ColorObject(c[1]));this._enhancedDefsY.borderBottom=this._generateDefString(vBottomWidth,vBottomStyle,vBottomColor);vBottomColor=(new qx.renderer.color.ColorObject(c[0]))}}catch(ex){this.error("Failed to compile bottom border",ex);this.warn("Details: Width="+vBottomWidth+", Style="+vBottomStyle)}}else{vBottomColor=(new qx.renderer.color.ColorObject(qx.renderer.border.Border.baseColor))}};break};this._defsY.borderBottom=this._generateDefString(vBottomWidth,vBottomStyle,vBottomColor);this._needsCompilationBottom=false};qx.Proto._compileLeft=function(){var vLeftWidth=this.getLeftWidth();var vLeftStyle=this.getLeftStyle();var vLeftColor=this.getLeftColor();switch(vLeftWidth){case 1:switch(vLeftStyle){case qx.renderer.border.Border.STYLE_OUTSET:case qx.renderer.border.Border.STYLE_INSET:vLeftColor=(new qx.renderer.color.ColorObject(qx.renderer.border.Border.data[vLeftWidth][vLeftStyle][qx.renderer.border.Border.POSITION_LEFT][0]));vLeftStyle=qx.renderer.border.Border.STYLE_SOLID};break;case 2:switch(vLeftStyle){case qx.renderer.border.Border.STYLE_OUTSET:case qx.renderer.border.Border.STYLE_INSET:case qx.renderer.border.Border.STYLE_GROOVE:case qx.renderer.border.Border.STYLE_RIDGE:if(qx.renderer.border.Border.enhancedCrossBrowserMode){try{var c=qx.renderer.border.Border.data[vLeftWidth][vLeftStyle][qx.renderer.border.Border.POSITION_LEFT];if(typeof c===qx.constant.Type.OBJECT){vLeftStyle=qx.renderer.border.Border.STYLE_SOLID;vLeftWidth=1;vLeftColor=(new qx.renderer.color.ColorObject(c[1]));this._enhancedDefsX.borderLeft=this._generateDefString(vLeftWidth,vLeftStyle,vLeftColor);vLeftColor=(new qx.renderer.color.ColorObject(c[0]))}}catch(ex){this.error("Failed to compile left border",ex);this.warn("Details: Width="+vLeftWidth+", Style="+vLeftStyle)}}else{vLeftColor=(new qx.renderer.color.ColorObject(qx.renderer.border.Border.baseColor))}};break};this._defsX.borderLeft=this._generateDefString(vLeftWidth,vLeftStyle,vLeftColor);this._needsCompilationLeft=false};qx.renderer.border.Border._resetBorderX=function(o){var s=o._style;s.borderLeft=s.borderRight=qx.constant.Core.EMPTY;if(qx.renderer.border.Border.enhancedCrossBrowserMode){s=o._borderStyle;if(s){s.borderLeft=s.borderRight=qx.constant.Core.EMPTY}}};qx.renderer.border.Border._resetBorderY=function(o){var s=o._style;s.borderTop=s.borderBottom=qx.constant.Core.EMPTY;if(qx.renderer.border.Border.enhancedCrossBrowserMode){s=o._borderStyle;if(s){s.borderTop=s.borderBottom=qx.constant.Core.EMPTY}}}};qx.Proto.dispose=function(){if(this.getDisposed()){return};if(typeof this._defsX===qx.constant.Type.OBJECT){for(var i in this._defsX){delete this._defsX[i]}};delete this._defsX;if(typeof this._defsY===qx.constant.Type.OBJECT){for(var i in this._defsY){delete this._defsY[i]}};delete this._defsY;if(qx.renderer.border.Border.enhancedCrossBrowserMode){if(typeof this._enhancedDefsX===qx.constant.Type.OBJECT){for(var i in this._enhancedDefsX){delete this._enhancedDefsX[i]}};delete this._enhancedDefsX;if(typeof this._enhancedDefsY===qx.constant.Type.OBJECT){for(var i in this._enhancedDefsY){delete this._enhancedDefsY[i]}};delete this._enhancedDefsY};delete this._themedEdges;return qx.core.Object.prototype.dispose.call(this)};qx.OO.defineClass("qx.renderer.border.BorderObject",qx.renderer.border.Border,function(vWidth,vStyle,vColor){this._dependentObjects={};qx.renderer.border.Border.call(this,vWidth,vStyle,vColor)});qx.renderer.border.BorderObject.fromString=function(vDefString){var vBorder=new qx.renderer.border.BorderObject;var vAllParts=vDefString.split(/\s+/);var vPart,vTemp;for(var i=0;i<vAllParts.length;i++){vPart=vAllParts[i];switch(vPart){case qx.renderer.border.Border.STYLE_GROOVE:case qx.renderer.border.Border.STYLE_RIDGE:case qx.renderer.border.Border.STYLE_INSET:case qx.renderer.border.Border.STYLE_OUTSET:case qx.renderer.border.Border.STYLE_SOLID:case qx.renderer.border.Border.STYLE_DOTTED:case qx.renderer.border.Border.STYLE_DASHED:case qx.renderer.border.Border.STYLE_DOUBLE:case qx.renderer.border.Border.STYLE_NONE:vBorder.setStyle(vPart);break;default:vTemp=parseFloat(vPart);if(vTemp==vPart||qx.lang.String.contains(vPart,qx.constant.Core.PIXEL)){vBorder.setWidth(vTemp)}else{vPart=vPart.toLowerCase();vBorder.setColor(qx.renderer.color.Color.themedNames[vPart]?new qx.renderer.color.ColorObject(vPart):new qx.renderer.color.Color(vPart))};break}};return vBorder};qx.Proto.addListenerWidget=function(o){this._dependentObjects[o.toHashCode()]=o};qx.Proto.removeListenerWidget=function(o){delete this._dependentObjects[o.toHashCode()]};qx.Proto._sync=function(vEdge){var vAll=this._dependentObjects;var vCurrent;for(vKey in vAll){vCurrent=vAll[vKey];if(vCurrent.isCreated()){vCurrent._updateBorder(vEdge)}}};qx.Proto.dispose=function(){if(this.getDisposed()){return};if(typeof this._dependentObjects===qx.constant.Type.OBJECT){var vAll=this._dependentObjects;for(vKey in vAll){delete vAll[vKey]};vAll=null;delete this._dependentObjects};return qx.renderer.border.Border.prototype.dispose.call(this)};qx.OO.defineClass("qx.manager.object.AppearanceManager",qx.manager.object.ObjectManager,function(){qx.manager.object.ObjectManager.call(this);this._appearanceThemes={}});qx.Settings.setDefault("appearanceTheme","qx.theme.appearance.DefaultAppearanceTheme");qx.OO.addProperty({name:"appearanceTheme",type:qx.constant.Type.OBJECT,allowNull:false,instance:"qx.renderer.theme.AppearanceTheme"});qx.Proto.registerAppearanceTheme=function(vThemeClass){this._appearanceThemes[vThemeClass.classname]=vThemeClass;if(vThemeClass.classname==this.getSetting("appearanceTheme")){this.setAppearanceTheme(vThemeClass.getInstance())}};qx.Proto._modifyAppearanceTheme=function(propValue,propOldValue,propData){var vComp=qx.core.Init.getInstance().getComponent();if(vComp&&vComp.isUiReady()){qx.ui.core.ClientDocument.getInstance()._recursiveAppearanceThemeUpdate(propValue,propOldValue)};return true};qx.Proto.dispose=function(){if(this.getDisposed()){return};this._appearanceThemes=null;return qx.manager.object.ObjectManager.prototype.dispose.call(this)};qx.Class.getInstance=qx.util.Return.returnInstance;qx.OO.defineClass("qx.renderer.theme.AppearanceTheme",qx.core.Object,function(vTitle){qx.core.Object.call(this);this.setTitle(vTitle)});qx.OO.addProperty({name:"title",type:qx.constant.Type.STRING,allowNull:false,defaultValue:qx.constant.Core.EMPTY});qx.Proto._appearances={};qx.Proto.registerAppearance=function(vId,vData){this._appearances[vId]=vData};qx.Proto.getAppearance=function(vId){return this._appearances[vId]};qx.Proto.setupAppearance=function(vAppearance){if(!vAppearance._setupDone){if(vAppearance.setup){vAppearance.setup(this)};vAppearance._setupDone=true}};qx.Proto.initialFrom=function(vId){var vAppearance=this.getAppearance(vId);if(vAppearance){this.setupAppearance(vAppearance);try{return vAppearance.initial?vAppearance.initial(this):{}}catch(ex){this.error("Couldn't apply initial appearance",ex)}}else{return this.error("Missing appearance: "+vId)}};qx.Proto.stateFrom=function(vId,vStates){var vAppearance=this.getAppearance(vId);if(vAppearance){this.setupAppearance(vAppearance);try{return vAppearance.state?vAppearance.state(this,vStates):{}}catch(ex){this.error("Couldn't apply state appearance",ex)}}else{return this.error("Missing appearance: "+vId)}};qx.Proto.dispose=function(){if(this.getDisposed()){return};this._appearances=null;return qx.core.Object.prototype.dispose.call(this)};qx.OO.defineClass("qx.theme.appearance.DefaultAppearanceTheme",qx.renderer.theme.AppearanceTheme,function(vTitle){qx.renderer.theme.AppearanceTheme.call(this,vTitle||"qooxdoo default appearance")});qx.Proto._appearances=qx.lang.Object.carefullyMergeWith({"image":{initial:function(vTheme){return {allowStretchX:false,allowStretchY:false}}},"client-document":{setup:function(){this.bgcolor=new qx.renderer.color.ColorObject("threedface");this.color=new qx.renderer.color.ColorObject("windowtext")},initial:function(vTheme){return {backgroundColor:this.bgcolor,color:this.color,hideFocus:true,enableElementFocus:false}}},"blocker":{initial:function(vTheme){return {cursor:qx.constant.Core.DEFAULT,backgroundImage:"static/image/blank.gif"}}},"atom":{initial:function(vTheme){return {cursor:qx.constant.Core.DEFAULT,spacing:4,width:qx.constant.Core.AUTO,height:qx.constant.Core.AUTO,horizontalChildrenAlign:qx.constant.Layout.ALIGN_CENTER,verticalChildrenAlign:qx.constant.Layout.ALIGN_MIDDLE,stretchChildrenOrthogonalAxis:false,allowStretchY:false,allowStretchX:false}}},"label":{setup:function(){this.color_disabled=new qx.renderer.color.ColorObject("graytext");this.font=new qx.renderer.font.Font(11,'"Segoe UI", Corbel, Calibri, Tahoma, "Lucida Sans Unicode", sans-serif')},initial:function(vTheme){return {font:this.font,wrap:false}},state:function(vTheme,vStates){return {color:vStates.disabled?this.color_disabled:null}}},"htmlcontainer":{initial:function(vTheme){return vTheme.initialFrom("label")},state:function(vTheme,vStates){return vTheme.stateFrom("label",vStates)}},"popup":{initial:function(vTheme){return {width:qx.constant.Core.AUTO,height:qx.constant.Core.AUTO}}},"tool-tip":{setup:function(){this.bgcolor=new qx.renderer.color.ColorObject("InfoBackground");this.color=new qx.renderer.color.ColorObject("InfoText")},initial:function(vTheme){return qx.lang.Object.mergeWith(vTheme.initialFrom("popup"),{backgroundColor:this.bgcolor,color:this.color,border:qx.renderer.border.BorderPresets.getInstance().info,paddingTop:1,paddingRight:3,paddingBottom:2,paddingLeft:3})}},"iframe":{initial:function(vTheme){return {border:qx.renderer.border.BorderPresets.getInstance().inset}}},"button":{setup:function(){this.bgcolor_default=new qx.renderer.color.ColorObject("buttonface");this.bgcolor_over=new qx.renderer.color.Color("#87BCE5");this.bgcolor_left=new qx.renderer.color.Color("#FFF0C9");this.border_pressed=qx.renderer.border.BorderPresets.getInstance().inset;this.border_default=qx.renderer.border.BorderPresets.getInstance().outset},initial:function(vTheme){return vTheme.initialFrom("atom")},state:function(vTheme,vStates){var vReturn={backgroundColor:vStates.abandoned?this.bgcolor_left:vStates.over?this.bgcolor_over:this.bgcolor_default,border:vStates.pressed||vStates.checked||vStates.abandoned?this.border_pressed:this.border_default};if(vStates.pressed||vStates.abandoned){vReturn.paddingTop=4;vReturn.paddingRight=3;vReturn.paddingBottom=2;vReturn.paddingLeft=5}else{vReturn.paddingTop=vReturn.paddingBottom=3;vReturn.paddingRight=vReturn.paddingLeft=4};return vReturn}},"toolbar":{setup:function(){this.bgcolor=new qx.renderer.color.ColorObject("threedface")},initial:function(vTheme){return {border:qx.renderer.border.BorderPresets.getInstance().thinOutset,backgroundColor:this.bgcolor,height:qx.constant.Core.AUTO}}},"toolbar-part":{initial:function(vTheme){return {width:qx.constant.Core.AUTO}}},"toolbar-part-handle":{initial:function(vTheme){return {width:10}}},"toolbar-part-handle-line":{initial:function(vTheme){return {top:2,left:3,bottom:2,width:4,border:qx.renderer.border.BorderPresets.getInstance().thinOutset}}},"toolbar-separator":{initial:function(vTheme){return {width:8}}},"toolbar-separator-line":{setup:function(){var b=this.border=new qx.renderer.border.BorderObject;b.setLeftColor("threedshadow");b.setRightColor("threedhighlight");b.setLeftStyle(qx.renderer.border.Border.STYLE_SOLID);b.setRightStyle(qx.renderer.border.Border.STYLE_SOLID);b.setLeftWidth(1);b.setRightWidth(1);b.setTopWidth(0);b.setBottomWidth(0)},initial:function(vTheme){return {top:2,left:2,width:2,bottom:2,border:this.border}}},"toolbar-button":{setup:function(){this.bgcolor_default=new qx.renderer.color.ColorObject("buttonface");this.bgcolor_left=new qx.renderer.color.Color("#FFF0C9");this.border_pressed=qx.renderer.border.BorderPresets.getInstance().thinInset;this.border_over=qx.renderer.border.BorderPresets.getInstance().thinOutset;this.border_default=null;this.checked_background="static/image/dotted_white.gif"},initial:function(vTheme){return {cursor:qx.constant.Core.DEFAULT,spacing:4,width:qx.constant.Core.AUTO,verticalChildrenAlign:qx.constant.Layout.ALIGN_MIDDLE}},state:function(vTheme,vStates){var vReturn={backgroundColor:vStates.abandoned?this.bgcolor_left:this.bgcolor_default,backgroundImage:vStates.checked&&!vStates.over?this.checked_background:null};if(vStates.pressed||vStates.checked||vStates.abandoned){vReturn.border=this.border_pressed;vReturn.paddingTop=3;vReturn.paddingRight=2;vReturn.paddingBottom=1;vReturn.paddingLeft=4}else if(vStates.over){vReturn.border=this.border_over;vReturn.paddingTop=vReturn.paddingBottom=2;vReturn.paddingLeft=vReturn.paddingRight=3}else{vReturn.border=this.border_default;vReturn.paddingTop=vReturn.paddingBottom=3;vReturn.paddingLeft=vReturn.paddingRight=4};return vReturn}},"bar-view":{setup:function(){this.background=new qx.renderer.color.ColorObject("#FAFBFE")},initial:function(vTheme){return {backgroundColor:this.background,border:qx.renderer.border.BorderPresets.getInstance().shadow}}},"bar-view-pane":{state:function(vTheme,vStates){if(vStates.barHorizontal){return {width:null,height:qx.constant.Core.FLEX}}else{return {width:qx.constant.Core.FLEX,height:null}}}},"bar-view-page":{initial:function(vTheme){return {left:10,right:10,top:10,bottom:10}}},"bar-view-bar":{setup:function(){this.background_color=new qx.renderer.color.ColorObject("#E1EEFF");this.border_color=new qx.renderer.color.ColorObject("threedshadow");this.border_top=new qx.renderer.border.BorderObject;this.border_top.setBottom(1,qx.renderer.border.Border.STYLE_SOLID,this.border_color);this.border_bottom=new qx.renderer.border.BorderObject;this.border_bottom.setTop(1,qx.renderer.border.Border.STYLE_SOLID,this.border_color);this.border_left=new qx.renderer.border.BorderObject;this.border_left.setRight(1,qx.renderer.border.Border.STYLE_SOLID,this.border_color);this.border_right=new qx.renderer.border.BorderObject;this.border_right.setLeft(1,qx.renderer.border.Border.STYLE_SOLID,this.border_color)},initial:function(vTheme){return {backgroundColor:this.background_color}},state:function(vTheme,vStates){if(vStates.barTop){return {paddingTop:1,paddingRight:0,paddingBottom:1,paddingLeft:0,border:this.border_top,height:qx.constant.Core.AUTO,width:null,orientation:qx.constant.Layout.ORIENTATION_HORIZONTAL}}else if(vStates.barBottom){return {paddingTop:1,paddingRight:0,paddingBottom:1,paddingLeft:0,border:this.border_bottom,height:qx.constant.Core.AUTO,width:null,orientation:qx.constant.Layout.ORIENTATION_HORIZONTAL}}else if(vStates.barLeft){return {paddingTop:0,paddingRight:1,paddingBottom:0,paddingLeft:1,border:this.border_left,height:null,width:qx.constant.Core.AUTO,orientation:qx.constant.Layout.ORIENTATION_VERTICAL}}else if(vStates.barRight){return {paddingTop:0,paddingRight:1,paddingBottom:0,paddingLeft:1,border:this.border_right,height:null,width:qx.constant.Core.AUTO,orientation:qx.constant.Layout.ORIENTATION_VERTICAL}}}},"bar-view-button":{setup:function(){this.background_color_normal=null;this.background_color_checked=new qx.renderer.color.ColorObject("#FAFBFE");this.border_color=new qx.renderer.color.ColorObject("threedshadow");this.border_color_checked=new qx.renderer.color.ColorObject("#FEC83C");this.border_top_checked=new qx.renderer.border.Border(1,qx.renderer.border.Border.STYLE_SOLID,this.border_color);this.border_top_checked.setBottom(3,qx.renderer.border.Border.STYLE_SOLID,this.border_color_checked);this.border_bottom_checked=new qx.renderer.border.Border(1,qx.renderer.border.Border.STYLE_SOLID,this.border_color);this.border_bottom_checked.setTop(3,qx.renderer.border.Border.STYLE_SOLID,this.border_color_checked);this.border_left_checked=new qx.renderer.border.Border(1,qx.renderer.border.Border.STYLE_SOLID,this.border_color);this.border_left_checked.setRight(3,qx.renderer.border.Border.STYLE_SOLID,this.border_color_checked);this.border_right_checked=new qx.renderer.border.Border(1,qx.renderer.border.Border.STYLE_SOLID,this.border_color);this.border_right_checked.setLeft(3,qx.renderer.border.Border.STYLE_SOLID,this.border_color_checked)},initial:function(vTheme){return qx.lang.Object.mergeWith(vTheme.initialFrom("atom"),{iconPosition:qx.constant.Layout.ALIGN_TOP})},state:function(vTheme,vStates){var vReturn={backgroundColor:vStates.checked?this.background_color_checked:this.background_color_normal,allowStretchX:true,allowStretchY:true};if(vStates.checked||vStates.over){if(vStates.barTop){vReturn.border=this.border_top_checked;vReturn.paddingTop=3;vReturn.paddingRight=6;vReturn.paddingBottom=1;vReturn.paddingLeft=6}else if(vStates.barBottom){vReturn.border=this.border_bottom_checked;vReturn.paddingTop=1;vReturn.paddingRight=6;vReturn.paddingBottom=3;vReturn.paddingLeft=6}else if(vStates.barLeft){vReturn.border=this.border_left_checked;vReturn.paddingTop=3;vReturn.paddingRight=4;vReturn.paddingBottom=3;vReturn.paddingLeft=6}else if(vStates.barRight){vReturn.border=this.border_right_checked;vReturn.paddingTop=3;vReturn.paddingRight=6;vReturn.paddingBottom=3;vReturn.paddingLeft=4}}else{vReturn.border=null;vReturn.paddingTop=vReturn.paddingBottom=4;vReturn.paddingRight=vReturn.paddingLeft=7};if(vStates.barTop||vStates.barBottom){vReturn.marginTop=vReturn.marginBottom=0;vReturn.marginRight=vReturn.marginLeft=1;vReturn.width=qx.constant.Core.AUTO;vReturn.height=null}else if(vStates.barLeft||vStates.barRight){vReturn.marginTop=vReturn.marginBottom=1;vReturn.marginRight=vReturn.marginLeft=0;vReturn.height=qx.constant.Core.AUTO;vReturn.width=null};return vReturn}},"window":{setup:function(){this.bgcolor=new qx.renderer.color.ColorObject("threedface");this.color=new qx.renderer.color.ColorObject("windowtext")},initial:function(vTheme){return {backgroundColor:this.bgcolor,color:this.color,paddingTop:1,paddingRight:1,paddingBottom:1,paddingLeft:1}},state:function(vTheme,vStates){return {border:vStates.maximized?qx.renderer.border.BorderPresets.getInstance().none:qx.renderer.border.BorderPresets.getInstance().outset}}},"window-captionbar":{setup:function(){this.bgcolor_active=new qx.renderer.color.ColorObject("activecaption");this.color_active=new qx.renderer.color.ColorObject("captiontext");this.bgcolor_inactive=new qx.renderer.color.ColorObject("inactivecaption");this.color_inactive=new qx.renderer.color.ColorObject("inactivecaptiontext")},initial:function(vTheme){return {paddingTop:1,paddingRight:2,paddingBottom:2,paddingLeft:2,verticalChildrenAlign:qx.constant.Layout.ALIGN_MIDDLE,height:qx.constant.Core.AUTO,overflow:qx.constant.Style.OVERFLOW_HIDDEN}},state:function(vTheme,vStates){return {backgroundColor:vStates.active?this.bgcolor_active:this.bgcolor_inactive,color:vStates.active?this.color_active:this.color_inactive}}},"window-resize-frame":{initial:function(vTheme){return {border:qx.renderer.border.BorderPresets.getInstance().shadow}}},"window-captionbar-icon":{initial:function(vTheme){return {marginRight:2}}},"window-captionbar-title":{setup:function(){this.font=new qx.renderer.font.Font(11,'"Segoe UI", Corbel, Calibri, Tahoma, "Lucida Sans Unicode", sans-serif');this.font.setBold(true)},initial:function(vTheme){return {cursor:qx.constant.Core.DEFAULT,font:this.font,marginRight:2,wrap:false}}},"window-captionbar-button":{initial:function(vTheme){return vTheme.initialFrom("button")},state:function(vTheme,vStates){var vReturn=vTheme.stateFrom("button",vStates);if(vStates.pressed||vStates.abandoned){vReturn.paddingTop=2;vReturn.paddingRight=1;vReturn.paddingBottom=0;vReturn.paddingLeft=3}else{vReturn.paddingTop=vReturn.paddingBottom=1;vReturn.paddingRight=vReturn.paddingLeft=2};return vReturn}},"window-captionbar-minimize-button":{initial:function(vTheme){return vTheme.initialFrom("window-captionbar-button")},state:function(vTheme,vStates){return vTheme.stateFrom("window-captionbar-button",vStates)}},"window-captionbar-restore-button":{initial:function(vTheme){return vTheme.initialFrom("window-captionbar-button")},state:function(vTheme,vStates){return vTheme.stateFrom("window-captionbar-button",vStates)}},"window-captionbar-maximize-button":{initial:function(vTheme){return vTheme.initialFrom("window-captionbar-button")},state:function(vTheme,vStates){return vTheme.stateFrom("window-captionbar-button",vStates)}},"window-captionbar-close-button":{initial:function(vTheme){return qx.lang.Object.mergeWith(vTheme.initialFrom("window-captionbar-button"),{marginLeft:2})},state:function(vTheme,vStates){return vTheme.stateFrom("window-captionbar-button",vStates)}},"window-statusbar":{initial:function(vTheme){return {border:qx.renderer.border.BorderPresets.getInstance().thinInset,height:qx.constant.Core.AUTO}}},"window-statusbar-text":{initial:function(vTheme){return {paddingTop:1,paddingRight:4,paddingBottom:1,paddingLeft:4,cursor:qx.constant.Core.DEFAULT}}},"menu":{setup:function(){this.bgcolor=new qx.renderer.color.ColorObject("menu")},initial:function(vTheme){return {width:qx.constant.Core.AUTO,height:qx.constant.Core.AUTO,backgroundColor:this.bgcolor,border:qx.renderer.border.BorderPresets.getInstance().outset,paddingTop:1,paddingRight:1,paddingBottom:1,paddingLeft:1}}},"menu-layout":{initial:function(vTheme){return {top:0,right:0,bottom:0,left:0}}},"menu-button":{setup:function(){this.BGCOLOR_OVER=new qx.renderer.color.ColorObject("highlight");this.BGCOLOR_OUT=null;this.COLOR_OVER=new qx.renderer.color.ColorObject("highlighttext");this.COLOR_OUT=null},initial:function(vTheme){return {minWidth:qx.constant.Core.AUTO,height:qx.constant.Core.AUTO,spacing:2,paddingTop:2,paddingRight:4,paddingBottom:2,paddingLeft:4,cursor:qx.constant.Core.DEFAULT,verticalChildrenAlign:qx.constant.Layout.ALIGN_MIDDLE,allowStretchX:true}},state:function(vTheme,vStates){return {backgroundColor:vStates.over?this.BGCOLOR_OVER:this.BGCOLOR_OUT,color:vStates.over?this.COLOR_OVER:this.COLOR_OUT}}},"menu-check-box":{initial:function(vTheme){return vTheme.initialFrom("menu-button")},state:function(vTheme,vStates){return vTheme.stateFrom("menu-button",vStates)}},"menu-radio-button":{initial:function(vTheme){return vTheme.initialFrom("menu-button")},state:function(vTheme,vStates){return vTheme.stateFrom("menu-button",vStates)}},"menu-separator":{initial:function(vTheme){return {height:qx.constant.Core.AUTO,marginTop:3,marginBottom:2,paddingLeft:3,paddingRight:3}}},"menu-separator-line":{initial:function(vTheme){return {right:0,left:0,height:qx.constant.Core.AUTO,border:qx.renderer.border.BorderPresets.getInstance().verticalDivider}}},"list":{setup:function(){this.bgcolor=new qx.renderer.color.Color("white")},initial:function(vTheme){return {overflow:qx.constant.Style.OVERFLOW_HIDDEN,border:qx.renderer.border.BorderPresets.getInstance().thinInset,backgroundColor:this.bgcolor}}},"list-item":{setup:function(){this.bgcolor_selected=new qx.renderer.color.ColorObject("highlight");this.color_selected=new qx.renderer.color.ColorObject("highlighttext")},initial:function(vTheme){return {cursor:qx.constant.Core.DEFAULT,height:qx.constant.Core.AUTO,horizontalChildrenAlign:qx.constant.Layout.ALIGN_LEFT,verticalChildrenAlign:qx.constant.Layout.ALIGN_MIDDLE,spacing:4,paddingTop:3,paddingRight:5,paddingBottom:3,paddingLeft:5,minWidth:qx.constant.Core.AUTO}},state:function(vTheme,vStates){return {backgroundColor:vStates.selected?this.bgcolor_selected:null,color:vStates.selected?this.color_selected:null}}},"text-field":{setup:function(){this.font=new qx.renderer.font.Font(11,'"Segoe UI", Corbel, Calibri, Tahoma, "Lucida Sans Unicode", sans-serif')},initial:function(vTheme){return {hideFocus:true,border:qx.renderer.border.BorderPresets.getInstance().thinInset,paddingTop:1,paddingRight:3,paddingBottom:1,paddingLeft:3,allowStretchY:false,allowStretchX:true,font:this.font,width:qx.constant.Core.AUTO,height:qx.constant.Core.AUTO}},state:function(vTheme,vStates){return vTheme.stateFrom("label",vStates)}},"text-area":{initial:function(vTheme){return qx.lang.Object.mergeWith(vTheme.initialFrom("text-field"),{overflow:qx.constant.Core.AUTO,marginTop:0,marginBottom:0})},state:function(vTheme,vStates){return vTheme.stateFrom("text-field",vStates)}},"combo-box":{setup:function(){this.bgcolor=new qx.renderer.color.Color("white")},initial:function(vTheme){return {minWidth:40,width:120,height:qx.constant.Core.AUTO,border:qx.renderer.border.BorderPresets.getInstance().inset,backgroundColor:this.bgcolor,allowStretchY:false}}},"combo-box-list":{initial:function(vTheme){return qx.lang.Object.mergeWith(vTheme.initialFrom("list"),{top:0,right:0,bottom:0,left:0,border:null,overflow:qx.constant.Style.OVERFLOW_VERTICAL})}},"combo-box-popup":{initial:function(vTheme){return qx.lang.Object.mergeWith(vTheme.initialFrom("list"),{height:qx.constant.Core.AUTO,maxHeight:150,border:qx.renderer.border.BorderPresets.getInstance().shadow})}},"combo-box-text-field":{setup:function(){this.bgcolor=new qx.renderer.color.Color("transparent")},initial:function(vTheme){return qx.lang.Object.mergeWith(vTheme.initialFrom("text-field"),{border:qx.renderer.border.BorderPresets.getInstance().none,width:qx.constant.Core.FLEX,backgroundColor:this.bgcolor})}},"combo-box-button":{initial:function(vTheme){return qx.lang.Object.mergeWith(vTheme.initialFrom("button"),{height:null,allowStretchY:true})},state:function(vTheme,vStates){return qx.lang.Object.mergeWith(vTheme.stateFrom("button",vStates),{paddingTop:0,paddingRight:3,paddingBottom:0,paddingLeft:2})}},"tree-element":{initial:function(vTheme){return {height:16,verticalChildrenAlign:qx.constant.Layout.ALIGN_MIDDLE}}},"tree-element-icon":{initial:function(vTheme){return {width:16,height:16}}},"tree-element-label":{setup:function(){this.bgcolor_selected=new qx.renderer.color.ColorObject("highlight");this.color_selected=new qx.renderer.color.ColorObject("highlighttext")},initial:function(vTheme){return qx.lang.Object.mergeWith(vTheme.initialFrom("label"),{cursor:qx.constant.Core.DEFAULT,marginLeft:3,height:15,paddingTop:2,paddingRight:2,paddingBottom:2,paddingLeft:2,allowStretchY:false})},state:function(vTheme,vStates){return qx.lang.Object.mergeWith(vTheme.stateFrom("label",vStates),{backgroundColor:vStates.selected?this.bgcolor_selected:null,color:vStates.selected?this.color_selected:null})}},"tree-folder":{initial:function(vTheme){return vTheme.initialFrom("tree-element")},state:function(vTheme,vStates){return vTheme.stateFrom("tree-element",vStates)}},"tree-folder-icon":{initial:function(vTheme){return {width:16,height:16}}},"tree-folder-label":{initial:function(vTheme){return vTheme.initialFrom("tree-element-label")},state:function(vTheme,vStates){return vTheme.stateFrom("tree-element-label",vStates)}},"tree":{initial:function(vTheme){return vTheme.initialFrom("tree-folder")},state:function(vTheme,vStates){return vTheme.stateFrom("tree-folder",vStates)}},"tree-icon":{initial:function(vTheme){return vTheme.initialFrom("tree-folder-icon")},state:function(vTheme,vStates){return vTheme.stateFrom("tree-folder-icon",vStates)}},"tree-label":{initial:function(vTheme){return vTheme.initialFrom("tree-folder-label")},state:function(vTheme,vStates){return vTheme.stateFrom("tree-folder-label",vStates)}},"tree-container":{initial:function(vTheme){return {verticalChildrenAlign:qx.constant.Layout.ALIGN_TOP}}},"tree-folder-container":{initial:function(vTheme){return {height:qx.constant.Core.AUTO,verticalChildrenAlign:qx.constant.Layout.ALIGN_TOP}}},"list-view":{initial:function(vTheme){return {cursor:qx.constant.Core.DEFAULT,overflow:qx.constant.Style.OVERFLOW_HIDDEN}}},"list-view-pane":{initial:function(vTheme){return {width:qx.constant.Core.FLEX,horizontalSpacing:1,overflow:qx.constant.Style.OVERFLOW_HIDDEN}}},"list-view-header":{setup:function(){this.border=new qx.renderer.border.Border;this.border.setBottom(1,"solid","#e2e2e2");this.bgcolor=new qx.renderer.color.Color("#f2f2f2")},initial:function(vTheme){return {height:qx.constant.Core.AUTO,overflow:qx.constant.Style.OVERFLOW_HIDDEN,border:this.border,backgroundColor:this.bgcolor}}},"list-view-header-cell":{setup:function(){this.border_hover=new qx.renderer.border.Border;this.border_hover.setBottom(2,"solid","#F9B119");this.bgcolor_hover=new qx.renderer.color.Color("white")},initial:function(vTheme){return {overflow:qx.constant.Style.OVERFLOW_HIDDEN,paddingTop:2,paddingRight:6,paddingBottom:2,paddingLeft:6,spacing:4}},state:function(vTheme,vStates){if(vStates.over){return {backgroundColor:this.bgcolor_hover,paddingBottom:0,border:this.border_hover}}else{return {backgroundColor:null,paddingBottom:2,border:null}}}},"list-view-header-separator":{setup:function(){this.bgcolor=new qx.renderer.color.Color("#D6D5D9")},initial:function(vTheme){return {backgroundColor:this.bgcolor,width:1,marginTop:1,marginBottom:1}}},"list-view-content-cell":{setup:function(){this.bgcolor_selected=new qx.renderer.color.ColorObject("highlight");this.color_selected=new qx.renderer.color.ColorObject("highlighttext")},state:function(vTheme,vStates){return {backgroundColor:vStates.selected?this.bgcolor_selected:null,color:vStates.selected?this.color_selected:null}}},"list-view-content-cell-image":{initial:function(vTheme){return {paddingLeft:6,paddingRight:6}},state:function(vTheme,vStates){return vTheme.stateFrom("list-view-content-cell",vStates)}},"list-view-content-cell-text":{initial:function(vTheme){return qx.lang.Object.mergeWith(vTheme.initialFrom("htmlcontainer"),{overflow:qx.constant.Style.OVERFLOW_HIDDEN,paddingLeft:6,paddingRight:6})},state:function(vTheme,vStates){return qx.lang.Object.mergeWith(vTheme.stateFrom("htmlcontainer",vStates),vTheme.stateFrom("list-view-content-cell",vStates))}},"list-view-content-cell-html":{initial:function(vTheme){return vTheme.initialFrom("list-view-content-cell-text")},state:function(vTheme,vStates){return vTheme.stateFrom("list-view-content-cell-text",vStates)}},"list-view-content-cell-icon-html":{initial:function(vTheme){return vTheme.initialFrom("list-view-content-cell-text")},state:function(vTheme,vStates){return vTheme.stateFrom("list-view-content-cell-text",vStates)}},"list-view-content-cell-link":{initial:function(vTheme){return vTheme.initialFrom("list-view-content-cell-text")},state:function(vTheme,vStates){return vTheme.stateFrom("list-view-content-cell-text",vStates)}},"tab-view":{initial:function(vTheme){return {spacing:-1}}},"tab-view-bar":{initial:function(vTheme){return {height:qx.constant.Core.AUTO}}},"tab-view-pane":{setup:function(){this.border=new qx.renderer.border.Border(1,qx.renderer.border.Border.STYLE_SOLID,"#91A5BD");this.bgcolor=new qx.renderer.color.ColorObject("#FAFBFE")},initial:function(vTheme){return {height:qx.constant.Core.FLEX,backgroundColor:this.bgcolor,border:this.border,paddingTop:10,paddingRight:10,paddingBottom:10,paddingLeft:10}}},"tab-view-page":{initial:function(vTheme){return {top:0,right:0,bottom:0,left:0}}},"tab-view-button":{setup:function(){this.bgcolor_normal=new qx.renderer.color.ColorObject("#E1EEFF");this.bgcolor_checked=new qx.renderer.color.ColorObject("#FAFBFE");this.border_top_normal=new qx.renderer.border.Border(1,qx.renderer.border.Border.STYLE_SOLID,"#91A5BD");this.border_top_normal.setBottomWidth(0);this.border_top_checked=new qx.renderer.border.Border(1,qx.renderer.border.Border.STYLE_SOLID,"#91A5BD");this.border_top_checked.setBottomWidth(0);this.border_top_checked.setTop(3,qx.renderer.border.Border.STYLE_SOLID,"#FEC83C");this.border_bottom_normal=new qx.renderer.border.Border(1,qx.renderer.border.Border.STYLE_SOLID,"#91A5BD");this.border_bottom_normal.setTopWidth(0);this.border_bottom_checked=new qx.renderer.border.Border(1,qx.renderer.border.Border.STYLE_SOLID,"#91A5BD");this.border_bottom_checked.setTopWidth(0);this.border_bottom_checked.setBottom(3,qx.renderer.border.Border.STYLE_SOLID,"#FEC83C")},initial:function(vTheme){return vTheme.initialFrom("atom")},state:function(vTheme,vStates){var vReturn;if(vStates.checked){vReturn={backgroundColor:this.bgcolor_checked,zIndex:1,paddingTop:2,paddingBottom:4,paddingLeft:7,paddingRight:8,border:vStates.barTop?this.border_top_checked:this.border_bottom_checked,marginTop:0,marginBottom:0,marginRight:-1,marginLeft:-2};if(vStates.alignLeft){if(vStates.firstChild){vReturn.paddingLeft=6;vReturn.paddingRight=7;vReturn.marginLeft=0}}else{if(vStates.lastChild){vReturn.paddingLeft=8;vReturn.paddingRight=5;vReturn.marginRight=0}}}else{vReturn={backgroundColor:vStates.over?this.bgcolor_checked:this.bgcolor_normal,zIndex:0,paddingTop:2,paddingBottom:2,paddingLeft:5,paddingRight:6,marginRight:1,marginLeft:0};if(vStates.alignLeft){if(vStates.firstChild){vReturn.paddingLeft=6;vReturn.paddingRight=5}}else{if(vStates.lastChild){vReturn.paddingLeft=6;vReturn.paddingRight=5;vReturn.marginRight=0}};if(vStates.barTop){vReturn.border=this.border_top_normal;vReturn.marginTop=3;vReturn.marginBottom=1}else{vReturn.border=this.border_bottom_normal;vReturn.marginTop=1;vReturn.marginBottom=3}};return vReturn}},"field-set":{setup:function(){this.bgcolor=new qx.renderer.color.ColorObject("threedface")},initial:function(vTheme){return {backgroundColor:this.bgcolor}}},"field-set-legend":{setup:function(){this.bgcolor=new qx.renderer.color.ColorObject("threedface")},initial:function(vTheme){return qx.lang.Object.mergeWith(vTheme.initialFrom("atom"),{top:1,left:10,backgroundColor:this.bgcolor,paddingRight:3,paddingLeft:4})}},"field-set-frame":{initial:function(vTheme){return {top:8,left:2,right:2,bottom:2,paddingTop:12,paddingRight:9,paddingBottom:12,paddingLeft:9,border:qx.renderer.border.BorderPresets.getInstance().groove}}},"check-box-field-set-legend":{setup:function(){this.bgcolor=new qx.renderer.color.ColorObject("threedface")},initial:function(vTheme){return qx.lang.Object.mergeWith(vTheme.initialFrom("atom"),{top:1,left:10,backgroundColor:this.bgcolor,paddingRight:3})}},"radio-button-field-set-legend":{initial:function(vTheme){return vTheme.initialFrom("check-box-field-set-legend")}},"spinner":{setup:function(){this.bgcolor=new qx.renderer.color.Color("white")},initial:function(vTheme){return {width:60,height:22,border:qx.renderer.border.BorderPresets.getInstance().inset,backgroundColor:this.bgcolor}}},"spinner-field":{initial:function(vTheme){return qx.lang.Object.mergeWith(vTheme.initialFrom("text-field"),{width:qx.constant.Core.FLEX,border:qx.renderer.border.BorderPresets.getInstance().none})},state:function(vTheme,vStates){return vTheme.stateFrom("text-field",vStates)}},"spinner-button-up":{initial:function(vTheme){return qx.lang.Object.mergeWith(vTheme.initialFrom("image"),{height:qx.constant.Core.FLEX,width:16,backgroundColor:new qx.renderer.color.ColorObject("threedface")})},state:function(vTheme,vStates){return qx.lang.Object.mergeWith(vTheme.stateFrom("button",vStates),{paddingTop:0,paddingRight:0,paddingBottom:0,paddingLeft:3})}},"spinner-button-down":{initial:function(vTheme){return qx.lang.Object.mergeWith(vTheme.initialFrom("image"),{height:qx.constant.Core.FLEX,width:16,backgroundColor:new qx.renderer.color.ColorObject("threedface")})},state:function(vTheme,vStates){return qx.lang.Object.mergeWith(vTheme.stateFrom("button",vStates),{paddingTop:1,paddingRight:0,paddingBottom:0,paddingLeft:3})}},"colorselector":{setup:function(){this.border=qx.renderer.border.BorderPresets.getInstance().outset},initial:function(vTheme){return {border:this.border,width:qx.constant.Core.AUTO,height:qx.constant.Core.AUTO}},state:function(vTheme,vStates){}},"datechooser-toolbar-button":{setup:function(){this.bgcolor_default=new qx.renderer.color.ColorObject("buttonface");this.bgcolor_left=new qx.renderer.color.Color("#FFF0C9");this.border_pressed=qx.renderer.border.BorderPresets.getInstance().thinInset;this.border_over=qx.renderer.border.BorderPresets.getInstance().thinOutset;this.border_default=null;this.checked_background="static/image/dotted_white.gif"},initial:function(vTheme){return {cursor:qx.constant.Core.DEFAULT,spacing:4,width:qx.constant.Core.AUTO,verticalChildrenAlign:qx.constant.Layout.ALIGN_MIDDLE}},state:function(vTheme,vStates){var vReturn={backgroundColor:vStates.abandoned?this.bgcolor_left:this.bgcolor_default,backgroundImage:(vStates.checked&&!vStates.over)?this.checked_background:null};if(vStates.pressed||vStates.checked||vStates.abandoned){vReturn.border=this.border_pressed}else if(vStates.over){vReturn.border=this.border_over}else{vReturn.border=this.border_default};if(vStates.pressed||vStates.checked||vStates.abandoned){vReturn.paddingTop=2;vReturn.paddingRight=0;vReturn.paddingBottom=0;vReturn.paddingLeft=2}else if(vStates.over){vReturn.paddingTop=vReturn.paddingBottom=1;vReturn.paddingLeft=vReturn.paddingRight=1}else{vReturn.paddingTop=vReturn.paddingBottom=2;vReturn.paddingLeft=vReturn.paddingRight=2};return vReturn}},"datechooser-monthyear":{setup:function(){this.font=new qx.renderer.font.Font(13,'"Segoe UI", Corbel, Calibri, Tahoma, "Lucida Sans Unicode", sans-serif')},initial:function(vTheme){return {font:this.font,textAlign:"center",verticalAlign:"middle"}}},"datechooser-datepane":{setup:function(){this.border=new qx.renderer.border.Border(1,qx.renderer.border.Border.STYLE_SOLID,"gray");this.bgcolor=new qx.renderer.color.ColorObject("window")},initial:function(vTheme){return {border:this.border,backgroundColor:this.bgcolor}}},"datechooser-weekday":{setup:function(){this.border=new qx.renderer.border.Border;this.border.set({bottomColor:"gray",bottomStyle:qx.renderer.border.Border.STYLE_SOLID,bottomWidth:1});this.color=new qx.renderer.color.ColorObject("window");this.bgcolor=new qx.renderer.color.ColorObject("#6285BA");this.font=new qx.renderer.font.Font(11,'"Segoe UI", Corbel, Calibri, Tahoma, "Lucida Sans Unicode", sans-serif');this.font.setBold(true)},initial:function(vTheme){return {border:this.border,font:this.font,textAlign:"center"}},state:function(vTheme,vStates){return {color:vStates.weekend?this.bgcolor:this.color,backgroundColor:vStates.weekend?this.color:this.bgcolor}}},"datechooser-day":{setup:function(){this.font=new qx.renderer.font.Font(11,'"Segoe UI", Corbel, Calibri, Tahoma, "Lucida Sans Unicode", sans-serif');this.selectedColor=new qx.renderer.color.ColorObject("highlightText");this.selectedBgColor=new qx.renderer.color.ColorObject("highlight");this.color=new qx.renderer.color.ColorObject("windowText");this.otherMonthColor=new qx.renderer.color.ColorObject("grayText");this.transparentBorder=new qx.renderer.border.Border(1,qx.renderer.border.Border.STYLE_NONE)},initial:function(vTheme){return {cursor:qx.constant.Core.DEFAULT,border:this.border,color:this.color,font:this.font,textAlign:"center",verticalAlign:"middle",selectable:false}},state:function(vTheme,vStates){return {border:vStates.today?qx.renderer.border.BorderPresets.getInstance().black:this.transparentBorder,color:vStates.selected?this.selectedColor:(vStates.otherMonth?this.otherMonthColor:this.color),backgroundColor:vStates.selected?this.selectedBgColor:null}}},"datechooser-week":{setup:function(){this.border=new qx.renderer.border.Border;this.border.set({rightColor:"gray",rightStyle:qx.renderer.border.Border.STYLE_SOLID,rightWidth:1});this.headerBorder=new qx.renderer.border.Border;this.headerBorder.set({rightColor:"gray",rightStyle:qx.renderer.border.Border.STYLE_SOLID,rightWidth:1,bottomColor:"gray",bottomStyle:qx.renderer.border.Border.STYLE_SOLID,bottomWidth:1});this.color=new qx.renderer.color.ColorObject("#6285BA");this.font=new qx.renderer.font.Font(11,'"Segoe UI", Corbel, Calibri, Tahoma, "Lucida Sans Unicode", sans-serif')},initial:function(vTheme){return {border:this.border,font:this.font,color:this.color,paddingLeft:2}},state:function(vTheme,vStates){return {border:vStates.header?this.headerBorder:this.border}}},"table-focus-statusbar":{setup:function(){this.font=new qx.renderer.font.Font(11,'"Segoe UI", Corbel, Calibri, Tahoma, "Lucida Sans Unicode", sans-serif');this.border=new qx.renderer.border.Border;this.border.set({topColor:"threedshadow",topStyle:qx.renderer.border.Border.STYLE_SOLID,topWidth:1})},initial:function(vTheme){return {font:this.font,border:this.border,paddingLeft:2,paddingRight:2}}},"table-focus-indicator":{setup:function(){this.border=new qx.renderer.border.Border(3,qx.renderer.border.Border.STYLE_SOLID,"#b3d9ff");this.editingBorder=new qx.renderer.border.Border(2,qx.renderer.border.Border.STYLE_SOLID,"#b3d9ff")},state:function(vTheme,vStates){return {border:vStates.editing?this.editingBorder:this.border}}},"table-editor-textfield":{setup:function(){this.font=new qx.renderer.font.Font(11,'"Segoe UI", Corbel, Calibri, Tahoma, "Lucida Sans Unicode", sans-serif')},initial:function(vTheme){return {font:this.font,border:qx.renderer.border.BorderPresets.getInstance().none,paddingLeft:2,paddingRight:2,paddingTop:0,paddingBottom:0}}},"table-header-cell":{setup:function(){this.border=new qx.renderer.border.Border;this.border.set({rightColor:"#d6d2c2",rightStyle:qx.renderer.border.Border.STYLE_SOLID,rightWidth:1,bottomColor:"#d6d2c2",bottomStyle:qx.renderer.border.Border.STYLE_SOLID,bottomWidth:2});this.mouseOverBorder=new qx.renderer.border.Border;this.mouseOverBorder.set({rightColor:"#d6d2c2",rightStyle:qx.renderer.border.Border.STYLE_SOLID,rightWidth:1,bottomColor:"#F9B119",bottomStyle:qx.renderer.border.Border.STYLE_SOLID,bottomWidth:2});this.mouseOverBackground=new qx.renderer.color.ColorObject("white");this.background=new qx.renderer.color.ColorObject("#ebeadb")},initial:function(vTheme){return {cursor:qx.constant.Core.DEFAULT,border:this.border,paddingLeft:2,paddingRight:2,spacing:2,overflow:"hidden",selectable:false,backgroundColor:this.background,iconPosition:"right",verticalChildrenAlign:"middle"}},state:function(vTheme,vStates){return {backgroundColor:vStates.mouseover?this.mouseOverBackground:this.background,border:vStates.mouseover?this.mouseOverBorder:this.border}}},"splitpane":{initial:function(vTheme){return {overflow:"hidden"}}},"splitpane-glasspane":{setup:function(){this.background=new qx.renderer.color.ColorObject("threedshadow")},initial:function(vTheme){return {zIndex:1e7,backgroundColor:this.background}},state:function(vTheme,vStates){return {opacity:vStates.visible?0.2:0}}},"splitpane-splitter":{initial:function(vTheme){return {backgroundColor:"threedface"}}},"splitpane-slider":{initial:function(vTheme){return {opacity:0.5,zIndex:1e8}},state:function(vTheme,vStates){return {backgroundColor:vStates.dragging?"threeddarkshadow":"threedface"}}}},qx.Super.prototype._appearances);qx.Class.getInstance=qx.util.Return.returnInstance;qx.manager.object.AppearanceManager.getInstance().registerAppearanceTheme(qx.Class);qx.OO.defineClass("qx.constant.Layout",{ORIENTATION_HORIZONTAL:"horizontal",ORIENTATION_VERTICAL:"vertical",ALIGN_LEFT:"left",ALIGN_LEFT_REVERSED:"left-reversed",ALIGN_CENTER:"center",ALIGN_CENTER_REVERSED:"center-reversed",ALIGN_RIGHT:"right",ALIGN_RIGHT_REVERSED:"right-reversed",ALIGN_TOP:"top",ALIGN_TOP_REVERSED:"top-reversed",ALIGN_MIDDLE:"middle",ALIGN_MIDDLE_REVERSED:"middle-reversed",ALIGN_BOTTOM:"bottom",ALIGN_BOTTOM_REVERSED:"bottom-reversed"});qx.OO.defineClass("qx.renderer.border.BorderPresets",qx.core.Object,function(){qx.core.Object.call(this);this.black=new qx.renderer.border.Border(1,qx.renderer.border.Border.STYLE_SOLID,"black");this.white=new qx.renderer.border.Border(1,qx.renderer.border.Border.STYLE_SOLID,"white");this.none=new qx.renderer.border.Border(0,qx.renderer.border.Border.STYLE_NONE);this.inset=new qx.renderer.border.BorderObject(2,qx.renderer.border.Border.STYLE_INSET);this.outset=new qx.renderer.border.BorderObject(2,qx.renderer.border.Border.STYLE_OUTSET);this.groove=new qx.renderer.border.BorderObject(2,qx.renderer.border.Border.STYLE_GROOVE);this.ridge=new qx.renderer.border.BorderObject(2,qx.renderer.border.Border.STYLE_RIDGE);this.thinInset=new qx.renderer.border.BorderObject(1,qx.renderer.border.Border.STYLE_INSET);this.thinOutset=new qx.renderer.border.BorderObject(1,qx.renderer.border.Border.STYLE_OUTSET);this.verticalDivider=new qx.renderer.border.BorderObject(1,qx.renderer.border.Border.STYLE_INSET);this.verticalDivider.setLeftWidth(0);this.verticalDivider.setRightWidth(0);this.horizontalDivider=new qx.renderer.border.BorderObject(1,qx.renderer.border.Border.STYLE_INSET);this.horizontalDivider.setTopWidth(0);this.horizontalDivider.setBottomWidth(0);this.shadow=new qx.renderer.border.BorderObject(1,qx.renderer.border.Border.STYLE_SOLID,"threedshadow");this.lightShadow=new qx.renderer.border.BorderObject(1,qx.renderer.border.Border.STYLE_SOLID,"threedlightshadow");this.info=new qx.renderer.border.BorderObject(1,qx.renderer.border.Border.STYLE_SOLID,"infotext")});qx.Class.getInstance=qx.util.Return.returnInstance;qx.OO.defineClass("qx.constant.Style",{PROPERTY_FILTER:"filter",PROPERTY_ZINDEX:"zIndex",PROPERTY_DISPLAY:"display",PROPERTY_POSITION:"position",PROPERTY_VISIBILITY:"visibility",PROPERTY_DISABLED:"disabled",PROPERTY_LINEHEIGHT:"lineHeight",PROPERTY_TEXTALIGN:"textAlign",PROPERTY_WHITESPACE:"whiteSpace",PROPERTY_COLOR:"color",PROPERTY_BACKGROUNDCOLOR:"backgroundColor",PROPERTY_HEIGHT:"height",PROPERTY_WIDTH:"width",PROPERTY_TOP:"top",PROPERTY_BOTTOM:"bottom",PROPERTY_LEFT:"left",PROPERTY_RIGHT:"right",PROPERTY_PADDING:"padding",PROPERTY_PADDINGTOP:"paddingTop",PROPERTY_PADDINGRIGHT:"paddingRight",PROPERTY_PADDINGBOTTOM:"paddingBottom",PROPERTY_PADDINGLEFT:"paddingLeft",PROPERTY_MARGIN:"margin",PROPERTY_MARGINTOP:"marginTop",PROPERTY_MARGINRIGHT:"marginRight",PROPERTY_MARGINBOTTOM:"marginBottom",PROPERTY_MARGINLEFT:"marginLeft",PROPERTY_OVERFLOW_BOTH:"overflow",PROPERTY_OVERFLOW_TEXT:"textOverflow",PROPERTY_OVERFLOW_HORIZONTAL:"overflowX",PROPERTY_OVERFLOW_VERTICAL:"overflowY",POSITION_ABSOLUTE:"absolute",POSITION_RELATIVE:"relative",POSITION_STATIC:"static",POSITION_FIXED:"fixed",CURSOR_WAIT:"wait",CURSOR_PROGRESS:"progress",CURSOR_DEFAULT:"default",OVERFLOW_AUTO:"auto",OVERFLOW_HIDDEN:"hidden",OVERFLOW_BOTH:"scroll",OVERFLOW_HORIZONTAL:"scrollX",OVERFLOW_VERTICAL:"scrollY",OVERFLOW_ELLIPSIS:"ellipsis",OVERFLOW_MOZ_NONE:"-moz-scrollbars-none",OVERFLOW_MOZ_HORIZONTAL:"-moz-scrollbars-horizontal",OVERFLOW_MOZ_VERTICAL:"-moz-scrollbars-vertical",FOCUS_OUTLINE:"1px dotted invert"});qx.OO.defineClass("qx.component.init.InterfaceInitComponent",qx.component.init.BasicInitComponent,function(){qx.component.init.BasicInitComponent.call(this)});qx.Proto._uiReady=false;qx.Proto.isUiReady=function(){return this._uiReady};qx.Proto.initialize=function(){qx.event.handler.EventHandler.getInstance();qx.ui.core.ClientDocument.getInstance();var start=(new Date).valueOf();qx.component.init.BasicInitComponent.prototype.initialize.call(this);this.info("initialize runtime: "+((new Date).valueOf()-start)+"ms")};qx.Proto.main=function(){var start=(new Date).valueOf();qx.component.init.BasicInitComponent.prototype.main.call(this);this.info("main runtime: "+((new Date).valueOf()-start)+"ms");this.debug("preloading visible images...");new qx.io.image.ImagePreloaderSystem(qx.manager.object.ImageManager.getInstance().getPreloadImageList(),this.finalize,this)};qx.Proto.finalize=function(){var start=(new Date).valueOf();this._printPreloadComplete();this._uiReady=true;qx.ui.core.Widget.flushGlobalQueues();qx.event.handler.EventHandler.getInstance().attachEvents();qx.component.init.BasicInitComponent.prototype.finalize.call(this);this.info("finalize runtime: "+((new Date).valueOf()-start)+"ms")};qx.Proto.close=function(){var start=(new Date).valueOf();qx.component.init.BasicInitComponent.prototype.close.call(this);this.info("close runtime: "+((new Date).valueOf()-start)+"ms")};qx.Proto.terminate=function(){var start=(new Date).valueOf();qx.component.init.BasicInitComponent.prototype.terminate.call(this);this.info("terminate runtime: "+((new Date).valueOf()-start)+"ms")};qx.Proto.preload=function(){if(!this._preloadDone){this.debug("preloading hidden images...");new qx.io.image.ImagePreloaderSystem(qx.manager.object.ImageManager.getInstance().getPostPreloadImageList(),this._printPreloadComplete,this);this._preloadDone=true}};qx.Proto._printPreloadComplete=function(){this.debug("preloading complete")};qx.Proto._onload=function(e){this.initialize();this.main()};qx.Proto.dispose=function(){if(this.getDisposed()){return};this._preloadDone=null;this._uiReady=null;return qx.component.init.BasicInitComponent.prototype.dispose.call(this)};qx.OO.defineClass("qx.event.handler.EventHandler",qx.core.Target,function(){qx.core.Target.call(this);var o=this;this.__onmouseevent=function(e){return o._onmouseevent(e)};this.__onkeyevent=function(e){return o._onkeyevent(e)};this.__ondragevent=function(e){return o._ondragevent(e)};this.__onselectevent=function(e){return o._onselectevent(e)};this.__onwindowblur=function(e){return o._onwindowblur(e)};this.__onwindowfocus=function(e){return o._onwindowfocus(e)};this.__onwindowresize=function(e){return o._onwindowresize(e)};this._commands={}});qx.OO.addProperty({name:"allowClientContextMenu",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.OO.addProperty({name:"allowClientSelectAll",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.OO.addProperty({name:"captureWidget",type:qx.constant.Type.OBJECT,instance:"qx.ui.core.Widget",allowNull:true});qx.OO.addProperty({name:"focusRoot",type:qx.constant.Type.OBJECT,instance:"qx.ui.core.Parent",allowNull:true});qx.Class.DOMMOUSESCROLL="DOMMouseScroll";qx.Class.mouseEventTypes=[qx.constant.Event.MOUSEOVER,qx.constant.Event.MOUSEMOVE,qx.constant.Event.MOUSEOUT,qx.constant.Event.MOUSEDOWN,qx.constant.Event.MOUSEUP,qx.constant.Event.CLICK,qx.constant.Event.DBLCLICK,qx.constant.Event.CONTEXTMENU,qx.sys.Client.getInstance().isMshtml()?qx.constant.Event.MOUSEWHEEL:qx.Class.DOMMOUSESCROLL];qx.Class.keyEventTypes=[qx.constant.Event.KEYDOWN,qx.constant.Event.KEYPRESS,qx.constant.Event.KEYUP];if(qx.sys.Client.getInstance().isGecko()){qx.Class.dragEventTypes=[qx.constant.Event.DRAGDROP,qx.constant.Event.DRAGOVER,"dragenter","dragexit","draggesture"]}else if(qx.sys.Client.getInstance().isMshtml()){qx.Class.dragEventTypes=[qx.constant.Event.DRAGEND,qx.constant.Event.DRAGOVER,qx.constant.Event.DRAGSTART,"drag","dragenter","dragleave"]}else{qx.Class.dragEventTypes=[qx.constant.Event.DRAGSTART,qx.constant.Event.DRAGDROP,qx.constant.Event.DRAGOVER,"drag","dragleave","dragenter","dragexit","draggesture"]};qx.Proto._lastMouseEventType=null;qx.Proto._lastMouseDown=false;qx.Proto._lastMouseEventDate=0;qx.Proto._lastKeyEventType=null;qx.Proto._modifyCaptureWidget=function(propValue,propOldValue,propData){if(propOldValue){propOldValue.setCapture(false)};if(propValue){propValue.setCapture(true)};return true};qx.Proto._modifyFocusRoot=function(propValue,propOldValue,propData){if(propOldValue){propOldValue.setFocusedChild(null)};if(propValue){if(propValue.getFocusedChild()==null){propValue.setFocusedChild(propValue)}};return true};qx.Proto.addCommand=function(vCommand){this._commands[vCommand.toHashCode()]=vCommand};qx.Proto.removeCommand=function(vCommand){delete this._commands[vCommand.toHashCode()]};qx.Proto._checkKeyEventMatch=function(e){var vCommand;for(var vHash in this._commands){vCommand=this._commands[vHash];if(vCommand.getEnabled()&&vCommand._matchesKeyEvent(e)){if(!vCommand.execute()){e.preventDefault()};break}}};qx.Proto.attachEvents=function(){this.attachEventTypes(qx.event.handler.EventHandler.mouseEventTypes,this.__onmouseevent);this.attachEventTypes(qx.event.handler.EventHandler.keyEventTypes,this.__onkeyevent);this.attachEventTypes(qx.event.handler.EventHandler.dragEventTypes,this.__ondragevent);qx.dom.DomEventRegistration.addEventListener(window,qx.constant.Event.BLUR,this.__onwindowblur);qx.dom.DomEventRegistration.addEventListener(window,qx.constant.Event.FOCUS,this.__onwindowfocus);qx.dom.DomEventRegistration.addEventListener(window,qx.constant.Event.RESIZE,this.__onwindowresize);document.body.onselect=document.onselectstart=document.onselectionchange=this.__onselectevent};qx.Proto.detachEvents=function(){this.detachEventTypes(qx.event.handler.EventHandler.mouseEventTypes,this.__onmouseevent);this.detachEventTypes(qx.event.handler.EventHandler.keyEventTypes,this.__onkeyevent);this.detachEventTypes(qx.event.handler.EventHandler.dragEventTypes,this.__ondragevent);qx.dom.DomEventRegistration.removeEventListener(window,qx.constant.Event.BLUR,this.__onwindowblur);qx.dom.DomEventRegistration.removeEventListener(window,qx.constant.Event.FOCUS,this.__onwindowfocus);qx.dom.DomEventRegistration.removeEventListener(window,qx.constant.Event.RESIZE,this.__onwindowresize);document.body.onselect=document.onselectstart=document.onselectionchange=null};qx.Proto.attachEventTypes=function(vEventTypes,vFunctionPointer){try{var el=qx.sys.Client.getInstance().isGecko()?window:document.body;for(var i=0,l=vEventTypes.length;i<l;i++){qx.dom.DomEventRegistration.addEventListener(el,vEventTypes[i],vFunctionPointer)}}catch(ex){throw new Error("qx.event.handler.EventHandler: Failed to attach window event types: "+vEventTypes+": "+ex)}};qx.Proto.detachEventTypes=function(vEventTypes,vFunctionPointer){try{var el=qx.sys.Client.getInstance().isGecko()?window:document.body;for(var i=0,l=vEventTypes.length;i<l;i++){qx.dom.DomEventRegistration.removeEventListener(el,vEventTypes[i],vFunctionPointer)}}catch(ex){throw new Error("qx.event.handler.EventHandler: Failed to detach window event types: "+vEventTypes+": "+ex)}};qx.Class.getOriginalTargetObject=function(vNode){if(vNode==document.documentElement){vNode=document.body};while(vNode!=null&&vNode.qx_Widget==null){try{vNode=vNode.parentNode}catch(vDomEvent){vNode=null}};return vNode?vNode.qx_Widget:null};qx.Class.getOriginalTargetObjectFromEvent=function(vDomEvent,vWindow){var vNode=vDomEvent.target||vDomEvent.srcElement;if(vWindow){var vDocument=vWindow.document;if(vNode==vWindow||vNode==vDocument||vNode==vDocument.documentElement||vNode==vDocument.body){return vDocument.body.qx_Widget}};return qx.event.handler.EventHandler.getOriginalTargetObject(vNode)};qx.Class.getRelatedOriginalTargetObjectFromEvent=function(vDomEvent){return qx.event.handler.EventHandler.getOriginalTargetObject(vDomEvent.relatedTarget||(vDomEvent.type==qx.constant.Event.MOUSEOVER?vDomEvent.fromElement:vDomEvent.toElement))};qx.Class.getTargetObject=function(vNode,vObject){if(!vObject){var vObject=qx.event.handler.EventHandler.getOriginalTargetObject(vNode);if(!vObject){return null}};while(vObject){if(!vObject.getEnabled()){return null};if(!vObject.getAnonymous()){break};vObject=vObject.getParent()};return vObject};qx.Class.getTargetObjectFromEvent=function(vDomEvent){return qx.event.handler.EventHandler.getTargetObject(vDomEvent.target||vDomEvent.srcElement)};qx.Class.getRelatedTargetObjectFromEvent=function(vDomEvent){return qx.event.handler.EventHandler.getTargetObject(vDomEvent.relatedTarget||(vDomEvent.type==qx.constant.Event.MOUSEOVER?vDomEvent.fromElement:vDomEvent.toElement))};if(qx.sys.Client.getInstance().isMshtml()){qx.Class.stopDomEvent=function(vDomEvent){vDomEvent.returnValue=false}}else{qx.Class.stopDomEvent=function(vDomEvent){vDomEvent.preventDefault();vDomEvent.returnValue=false}};qx.Proto._onkeyevent=function(vDomEvent){if(this.getDisposed()||typeof qx.event.type.KeyEvent!=qx.constant.Type.FUNCTION){return};if(!vDomEvent){vDomEvent=window.event};var vType=vDomEvent.type;if(this._lastKeyEventType===qx.constant.Event.KEYDOWN&&vType===qx.constant.Event.KEYUP){this._onkeyevent_post(vDomEvent,qx.constant.Event.KEYPRESS)};this._lastKeyEventType=vType;this._onkeyevent_post(vDomEvent,vType)};qx.Proto._onkeyevent_post=function(vDomEvent,vType){var vDomTarget=vDomEvent.target||vDomEvent.srcElement;var vKeyCode=vDomEvent.keyCode||vDomEvent.charCode;var vTarget=this.getCaptureWidget()||this.getFocusRoot().getActiveChild();if(vTarget==null||!vTarget.getEnabled()){return false};var vDomEventTarget=vTarget.getElement();switch(vKeyCode){case qx.event.type.KeyEvent.keys.esc:case qx.event.type.KeyEvent.keys.tab:if(qx.OO.isAvailable("qx.manager.object.MenuManager")){qx.manager.object.MenuManager.getInstance().update(vTarget,vType)};break};if(!this.getAllowClientSelectAll()){if(vDomEvent.ctrlKey&&(vKeyCode==65||vKeyCode==97)){switch(vDomTarget.tagName){case "INPUT":case "TEXTAREA":case "IFRAME":break;default:qx.event.handler.EventHandler.stopDomEvent(vDomEvent)}}};var vKeyEventObject=new qx.event.type.KeyEvent(vType,vDomEvent,vDomTarget,vTarget,null,vKeyCode);if(vDomEvent.type==qx.constant.Event.KEYDOWN){this._checkKeyEventMatch(vKeyEventObject)};vTarget.dispatchEvent(vKeyEventObject);if(qx.OO.isAvailable("qx.event.handler.DragAndDropHandler")){qx.event.handler.DragAndDropHandler.getInstance().handleKeyEvent(vKeyEventObject)};vKeyEventObject.dispose();qx.ui.core.Widget.flushGlobalQueues()};if(qx.sys.Client.getInstance().isMshtml()){qx.Proto._onmouseevent=function(vDomEvent){qx.core.Init.getInstance().getComponent().preload();if(!vDomEvent){vDomEvent=window.event};var vDomTarget=vDomEvent.target||vDomEvent.srcElement;var vType=vDomEvent.type;if(vType==qx.constant.Event.MOUSEMOVE){if(this._mouseIsDown&&vDomEvent.button==0){this._onmouseevent_post(vDomEvent,qx.constant.Event.MOUSEUP);this._mouseIsDown=false}}else{if(vType==qx.constant.Event.MOUSEDOWN){this._mouseIsDown=true}else if(vType==qx.constant.Event.MOUSEUP){this._mouseIsDown=false};if(vType==qx.constant.Event.MOUSEUP&&!this._lastMouseDown&&((new Date).valueOf()-this._lastMouseEventDate)<250){this._onmouseevent_post(vDomEvent,qx.constant.Event.MOUSEDOWN)}else if(vType==qx.constant.Event.DBLCLICK&&this._lastMouseEventType==qx.constant.Event.MOUSEUP&&((new Date).valueOf()-this._lastMouseEventDate)<250){this._onmouseevent_post(vDomEvent,qx.constant.Event.CLICK)};switch(vType){case qx.constant.Event.MOUSEDOWN:case qx.constant.Event.MOUSEUP:case qx.constant.Event.CLICK:case qx.constant.Event.DBLCLICK:case qx.constant.Event.CONTEXTMENU:this._lastMouseEventType=vType;this._lastMouseEventDate=(new Date).valueOf();this._lastMouseDown=vType==qx.constant.Event.MOUSEDOWN}};this._onmouseevent_post(vDomEvent,vType,vDomTarget)}}else{qx.Proto._onmouseevent=function(vDomEvent){qx.core.Init.getInstance().getComponent().preload();var vDomTarget=vDomEvent.target;var vType=vDomEvent.type;switch(vType){case qx.event.handler.EventHandler.DOMMOUSESCROLL:vType=qx.constant.Event.MOUSEWHEEL;break;case qx.constant.Event.CLICK:case qx.constant.Event.DBLCLICK:if(vDomEvent.button!==qx.event.type.MouseEvent.buttons.left){return}};this._onmouseevent_post(vDomEvent,vType,vDomTarget)}};if(qx.sys.Client.getInstance().isGecko()){qx.Proto._onmouseevent_click_fix=function(vDomTarget,vType,vDispatchTarget){var vReturn=false;switch(vType){case qx.constant.Event.MOUSEDOWN:this._lastMouseDownDomTarget=vDomTarget;this._lastMouseDownDispatchTarget=vDispatchTarget;break;case qx.constant.Event.MOUSEUP:if(this._lastMouseDownDispatchTarget===vDispatchTarget&&vDomTarget!==this._lastMouseDownDomTarget){vReturn=true}else{this._lastMouseDownDomTarget=null;this._lastMouseDownDispatchTarget=null}};return vReturn}}else{qx.Proto._onmouseevent_click_fix=function(vDomTarget,vDispatchTarget){return false}};qx.Proto._onmouseevent_post=function(vDomEvent,vType,vDomTarget){try{var vEventObject,vCaptureTarget,vDispatchTarget,vTarget,vOriginalTarget,vRelatedTarget,vFixClick;vCaptureTarget=this.getCaptureWidget();vOriginalTarget=qx.event.handler.EventHandler.getOriginalTargetObject(vDomTarget);if(!vCaptureTarget){vDispatchTarget=vTarget=qx.event.handler.EventHandler.getTargetObject(null,vOriginalTarget)}else{vDispatchTarget=vCaptureTarget;vTarget=qx.event.handler.EventHandler.getTargetObject(null,vOriginalTarget)};if(!vTarget){return false};vFixClick=this._onmouseevent_click_fix(vDomTarget,vType,vDispatchTarget);switch(vType){case qx.constant.Event.CONTEXTMENU:if(!this.getAllowClientContextMenu()){qx.event.handler.EventHandler.stopDomEvent(vDomEvent)};break;case qx.constant.Event.MOUSEDOWN:qx.event.handler.FocusHandler.mouseFocus=true;var vRoot=vTarget.getFocusRoot();if(vRoot){this.setFocusRoot(vRoot);vRoot.setActiveChild(vTarget);vRoot.setFocusedChild(vTarget.isFocusable()?vTarget:vRoot)};this._ignoreBlur=true;break};var vDomEventTarget=vTarget.getElement();switch(vType){case qx.constant.Event.MOUSEOVER:case qx.constant.Event.MOUSEOUT:vRelatedTarget=qx.event.handler.EventHandler.getRelatedTargetObjectFromEvent(vDomEvent);if(vRelatedTarget==vTarget){return}};try{vEventObject=new qx.event.type.MouseEvent(vType,vDomEvent,vDomTarget,vTarget,vOriginalTarget,vRelatedTarget)}catch(ex){return this.error("Failed to create mouse event",ex)};qx.event.type.MouseEvent._storeEventState(vEventObject);try{var vReturnValue=vDispatchTarget?vDispatchTarget.dispatchEvent(vEventObject):true}catch(ex){return this.error("Failed to dispatch mouse event",ex)};switch(vType){case qx.constant.Event.MOUSEDOWN:if(qx.OO.isAvailable("qx.manager.object.PopupManager")){qx.manager.object.PopupManager.getInstance().update(vTarget)};if(qx.OO.isAvailable("qx.manager.object.MenuManager")){qx.manager.object.MenuManager.getInstance().update(vTarget,vType)};if(qx.OO.isAvailable("qx.manager.object.IframeManager")){qx.manager.object.IframeManager.getInstance().handleMouseDown(vEventObject)};break;case qx.constant.Event.MOUSEUP:if(qx.OO.isAvailable("qx.manager.object.MenuManager")){qx.manager.object.MenuManager.getInstance().update(vTarget,vType)};if(qx.OO.isAvailable("qx.manager.object.IframeManager")){qx.manager.object.IframeManager.getInstance().handleMouseUp(vEventObject)};break;case qx.constant.Event.MOUSEOVER:if(qx.OO.isAvailable("qx.manager.object.ToolTipManager")){qx.manager.object.ToolTipManager.getInstance().handleMouseOver(vEventObject)};break;case qx.constant.Event.MOUSEOUT:if(qx.OO.isAvailable("qx.manager.object.ToolTipManager")){qx.manager.object.ToolTipManager.getInstance().handleMouseOut(vEventObject)};break;case qx.constant.Event.MOUSEWHEEL:vReturnValue?this._onmousewheel(vOriginalTarget||vDispatchTarget,vEventObject):qx.event.handler.EventHandler.stopDomEvent(vDomEvent);break};if(qx.OO.isAvailable("qx.event.handler.DragAndDropHandler")&&vTarget){qx.event.handler.DragAndDropHandler.getInstance().handleMouseEvent(vEventObject)};vEventObject.dispose();vEventObject=null;qx.ui.core.Widget.flushGlobalQueues();if(vFixClick){this._onmouseevent_post(vDomEvent,qx.constant.Event.CLICK,this._lastMouseDownDomTarget);this._lastMouseDownDomTarget=null;this._lastMouseDownDispatchTarget=null}}catch(ex){return this.error("Failed to handle mouse event",ex)}};if(qx.sys.Client.getInstance().isGecko()){qx.Proto._onmousewheel=function(vTarget,vEvent){if(vTarget==null){return};if(vTarget.getOverflowY()==qx.ui.core.Widget.SCROLL_VALUE_HIDDEN){return this._onmousewheel(vTarget.getParent(),vEvent)};var vScrollTop=vTarget.getScrollTop();var vDelta=20*vEvent.getWheelDelta();if(vScrollTop==0&&vDelta>0){return this._onmousewheel(vTarget.getParent(),vEvent)};var vScrollHeight=vTarget.getScrollHeight();var vClientHeight=vTarget.getClientHeight();if(vScrollTop+vClientHeight>=vScrollHeight&&vDelta<0){return this._onmousewheel(vTarget.getParent(),vEvent)};vTarget.setScrollTop(vScrollTop-vDelta);vEvent.preventDefault()}}else{qx.Proto._onmousewheel=function(){}};qx.Proto._ondragevent=function(vEvent){if(!vEvent){vEvent=window.event};qx.event.handler.EventHandler.stopDomEvent(vEvent)};qx.Proto._onselectevent=function(e){if(!e){e=window.event};var vTarget=qx.event.handler.EventHandler.getOriginalTargetObjectFromEvent(e);if(vTarget&&!vTarget.getSelectable()){qx.event.handler.EventHandler.stopDomEvent(e)}};qx.Proto._onwindowblur=function(e){if(this._ignoreBlur){delete this._ignoreBlur;return};this._allowFocus=true;this.setCaptureWidget(null);if(qx.OO.isAvailable("qx.manager.object.PopupManager")){qx.manager.object.PopupManager.getInstance().update()};if(qx.OO.isAvailable("qx.manager.object.MenuManager")){qx.manager.object.MenuManager.getInstance().update()};if(qx.OO.isAvailable("qx.event.handler.DragAndDropHandler")){qx.event.handler.DragAndDropHandler.getInstance().globalCancelDrag()};qx.ui.core.ClientDocument.getInstance().createDispatchEvent("windowblur")};qx.Proto._onwindowfocus=function(e){if(!this._allowFocus){return};delete this._allowFocus;qx.ui.core.ClientDocument.getInstance().createDispatchEvent("windowfocus")};qx.Proto._onwindowresize=function(e){qx.ui.core.ClientDocument.getInstance().createDispatchEvent("windowresize")};qx.Proto.dispose=function(){if(this.getDisposed()){return};this.detachEvents();this.__onmouseevent=this.__onkeyevent=this.__ondragevent=this.__onselectevent=null;this.__onwindowblur=this.__onwindowfocus=this.__onwindowresize=null;this._lastMouseEventType=null;this._lastMouseDown=null;this._lastMouseEventDate=null;this._lastKeyEventType=null;this._lastMouseDownDomTarget=null;this._lastMouseDownDispatchTarget=null;if(this._commands){for(var vHash in this._commands){this._commands[vHash].dispose();delete this._commands[vHash]};this._commands=null};qx.core.Target.prototype.dispose.call(this)};qx.Class.getInstance=qx.util.Return.returnInstance;qx.OO.defineClass("qx.ui.core.Widget",qx.core.Target,function(){if(this.classname==qx.ui.core.Widget.ABSTRACT_CLASS){throw new Error("Please omit the usage of qx.ui.core.Widget directly. Choose between qx.ui.core.Parent and qx.ui.basic.Terminator instead!")};qx.core.Target.call(this,true);this._styleProperties={position:qx.constant.Style.POSITION_ABSOLUTE};this._layoutChanges={};this._states={};this._applyInitialAppearance()});qx.Class.ABSTRACT_CLASS="qx.ui.core.Widget";qx.Class.SCROLLBAR_SIZE=16;qx.Class.PROPERTY_CLASSNAME="className";qx.Class.PROPERTY_BORDERX="borderX";qx.Class.PROPERTY_BORDERWIDTHX="borderWidthX";qx.Class.PROPERTY_BORDERY="borderY";qx.Class.PROPERTY_BORDERWIDTHY="borderWidthY";qx.ui.core.Widget.PROPERTY_PARENT_PADDINGLEFT="parentPaddingLeft";qx.ui.core.Widget.PROPERTY_PARENT_PADDINGRIGHT="parentPaddingRight";qx.ui.core.Widget.PROPERTY_PARENT_PADDINGTOP="parentPaddingTop";qx.ui.core.Widget.PROPERTY_PARENT_PADDINGBOTTOM="parentPaddingBottom";qx.Class.STATE_OVER="over";qx.Class.STATE_FOCUSED="focused";qx.Class.STATE_DISABLED="disabled";qx.Class.JOB_INITIAL="initial";qx.Class.JOB_VISIBLE="visible";qx.Class.JOB_LOCATION="location";qx.Class.JOB_LOCATIONX="locationX";qx.Class.JOB_LOCATIONY="locationY";qx.Class.JOB_ADDCHILD="addChild";qx.Class.JOB_REMOVECHILD="removeChild";qx.Class.JOB_FRAMEWIDTH="frameWidth";qx.Class.JOB_FRAMEHEIGHT="frameHeight";qx.Class.JOB_PREFERREDINNERWIDTH="preferredInnerWidth";qx.Class.JOB_PREFERREDINNERHEIGHT="preferredInnerHeight";qx.Class.FOCUS_OUTLINE="1px dotted invert";qx.Settings.setDefault("enableQueueDebug",false);qx.OO.addProperty({name:"parent",type:qx.constant.Type.OBJECT,instance:"qx.ui.core.Parent",defaultValue:null});qx.OO.addProperty({name:"element"});qx.OO.addProperty({name:"visibility",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.OO.addProperty({name:"display",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.OO.addProperty({name:"anonymous",type:qx.constant.Type.BOOLEAN,defaultValue:false,getAlias:"isAnonymous"});qx.OO.addProperty({name:"tagName",type:qx.constant.Type.STRING,defaultValue:qx.constant.Tags.DIV});qx.OO.addProperty({name:"horizontalAlign",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"verticalAlign",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"allowStretchX",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.OO.addProperty({name:"allowStretchY",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.OO.addProperty({name:"zIndex",type:qx.constant.Type.NUMBER});qx.OO.addProperty({name:"backgroundColor",type:qx.constant.Type.OBJECT,instance:"qx.renderer.color.Color",convert:qx.renderer.color.ColorCache,allowMultipleArguments:true});qx.OO.addProperty({name:"color",type:qx.constant.Type.OBJECT,instance:"qx.renderer.color.Color",convert:qx.renderer.color.ColorCache,allowMultipleArguments:true});qx.OO.addProperty({name:"border",type:qx.constant.Type.OBJECT,instance:"qx.renderer.border.Border",convert:qx.renderer.border.BorderCache,allowMultipleArguments:true});qx.OO.addProperty({name:"opacity",type:qx.constant.Type.NUMBER});qx.OO.addProperty({name:"cursor",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"backgroundImage",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"overflow",type:qx.constant.Type.STRING,addToQueue:true});qx.OO.addProperty({name:"clipLeft",type:qx.constant.Type.NUMBER,impl:"clip"});qx.OO.addProperty({name:"clipTop",type:qx.constant.Type.NUMBER,impl:"clip"});qx.OO.addProperty({name:"clipWidth",type:qx.constant.Type.NUMBER,impl:"clip"});qx.OO.addProperty({name:"clipHeight",type:qx.constant.Type.NUMBER,impl:"clip"});qx.OO.addProperty({name:"tabIndex",type:qx.constant.Type.NUMBER,defaultValue:-1});qx.OO.addProperty({name:"hideFocus",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.OO.addProperty({name:"enableElementFocus",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.OO.addProperty({name:"focused",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.OO.addProperty({name:"selectable",type:qx.constant.Type.BOOLEAN,defaultValue:true,getAlias:"isSelectable"});qx.OO.addProperty({name:"toolTip",type:qx.constant.Type.OBJECT,instance:"qx.ui.popup.ToolTip"});qx.OO.addProperty({name:"contextMenu",type:qx.constant.Type.OBJECT,instance:"qx.ui.menu.Menu"});qx.OO.addProperty({name:"capture",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.OO.addProperty({name:"dropDataTypes"});qx.OO.addProperty({name:"command",type:qx.constant.Type.OBJECT,instance:"qx.client.Command"});qx.OO.addProperty({name:"appearance",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"marginTop",type:qx.constant.Type.NUMBER,addToQueue:true,impl:"marginY"});qx.OO.addProperty({name:"marginRight",type:qx.constant.Type.NUMBER,addToQueue:true,impl:"marginX"});qx.OO.addProperty({name:"marginBottom",type:qx.constant.Type.NUMBER,addToQueue:true,impl:"marginY"});qx.OO.addProperty({name:"marginLeft",type:qx.constant.Type.NUMBER,addToQueue:true,impl:"marginX"});qx.OO.addProperty({name:"paddingTop",type:qx.constant.Type.NUMBER,addToQueue:true,impl:"paddingY"});qx.OO.addProperty({name:"paddingRight",type:qx.constant.Type.NUMBER,addToQueue:true,impl:"paddingX"});qx.OO.addProperty({name:"paddingBottom",type:qx.constant.Type.NUMBER,addToQueue:true,impl:"paddingY"});qx.OO.addProperty({name:"paddingLeft",type:qx.constant.Type.NUMBER,addToQueue:true,impl:"paddingX"});qx.OO.addProperty({name:"left",addToQueue:true,unitDetection:"pixelPercent"});qx.OO.addProperty({name:"right",addToQueue:true,unitDetection:"pixelPercent"});qx.OO.addProperty({name:"width",addToQueue:true,unitDetection:"pixelPercentAutoFlex"});qx.OO.addProperty({name:"minWidth",addToQueue:true,unitDetection:"pixelPercentAuto"});qx.OO.addProperty({name:"maxWidth",addToQueue:true,unitDetection:"pixelPercentAuto"});qx.OO.addProperty({name:"top",addToQueue:true,unitDetection:"pixelPercent"});qx.OO.addProperty({name:"bottom",addToQueue:true,unitDetection:"pixelPercent"});qx.OO.addProperty({name:"height",addToQueue:true,unitDetection:"pixelPercentAutoFlex"});qx.OO.addProperty({name:"minHeight",addToQueue:true,unitDetection:"pixelPercentAuto"});qx.OO.addProperty({name:"maxHeight",addToQueue:true,unitDetection:"pixelPercentAuto"});qx.OO.addPropertyGroup({name:"location",members:["left","top"]});qx.OO.addPropertyGroup({name:"dimension",members:["width","height"]});qx.OO.addPropertyGroup({name:"space",members:["left","width","top","height"]});qx.OO.addPropertyGroup({name:"edge",members:["top","right","bottom","left"],mode:"shorthand"});qx.OO.addPropertyGroup({name:"padding",members:["paddingTop","paddingRight","paddingBottom","paddingLeft"],mode:"shorthand"});qx.OO.addPropertyGroup({name:"margin",members:["marginTop","marginRight","marginBottom","marginLeft"],mode:"shorthand"});qx.OO.addPropertyGroup({name:"heights",members:["minHeight","height","maxHeight"]});qx.OO.addPropertyGroup({name:"widths",members:["minWidth","width","maxWidth"]});qx.OO.addPropertyGroup({name:"align",members:["horizontalAlign","verticalAlign"]});qx.OO.addPropertyGroup({name:"stretch",members:["stretchX","stretchY"]});qx.OO.addPropertyGroup({name:"clipLocation",members:["clipLeft","clipTop"]});qx.OO.addPropertyGroup({name:"clipDimension",members:["clipWidth","clipHeight"]});qx.OO.addPropertyGroup({name:"clip",members:["clipLeft","clipTop","clipWidth","clipHeight"]});if(qx.Settings.getValueOfClass("qx.ui.core.Widget","enableQueueDebug")){qx.ui.core.Widget.flushGlobalQueues=function(){if(qx.ui.core.Widget._inFlushGlobalQueues||!qx.core.Init.getInstance().getComponent().isUiReady()){return};if(!(qx.ui.core.Widget._globalWidgetQueue.length>0||qx.ui.core.Widget._globalElementQueue.length>0||qx.ui.core.Widget._globalStateQueue.length>0||qx.ui.core.Widget._globalJobQueue.length>0||qx.ui.core.Widget._globalLayoutQueue.length>0||qx.ui.core.Widget._fastGlobalDisplayQueue.length>0||!qx.lang.Object.isEmpty(qx.ui.core.Widget._lazyGlobalDisplayQueue))){return};var globalWidgetQueueLength=qx.ui.core.Widget._globalWidgetQueue.length;var globalElementQueueLength=qx.ui.core.Widget._globalElementQueue.length;var globalStateQueueLength=qx.ui.core.Widget._globalStateQueue.length;var globalJobQueueLength=qx.ui.core.Widget._globalJobQueue.length;var globalLayoutQueueLength=qx.ui.core.Widget._globalLayoutQueue.length;var fastGlobalDisplayQueueLength=qx.ui.core.Widget._fastGlobalDisplayQueue.length;var lazyGlobalDisplayQueueLength=qx.ui.core.Widget._lazyGlobalDisplayQueue?qx.ui.core.Widget._lazyGlobalDisplayQueue.length:0;qx.ui.core.Widget._inFlushGlobalQueues=true;var vStart;vStart=(new Date).valueOf();qx.ui.core.Widget.flushGlobalWidgetQueue();var vWidgetDuration=(new Date).valueOf()-vStart;vStart=(new Date).valueOf();qx.ui.core.Widget.flushGlobalStateQueue();var vStateDuration=(new Date).valueOf()-vStart;vStart=(new Date).valueOf();qx.ui.core.Widget.flushGlobalElementQueue();var vElementDuration=(new Date).valueOf()-vStart;vStart=(new Date).valueOf();qx.ui.core.Widget.flushGlobalJobQueue();var vJobDuration=(new Date).valueOf()-vStart;vStart=(new Date).valueOf();qx.ui.core.Widget.flushGlobalLayoutQueue();var vLayoutDuration=(new Date).valueOf()-vStart;vStart=(new Date).valueOf();qx.ui.core.Widget.flushGlobalDisplayQueue();var vDisplayDuration=(new Date).valueOf()-vStart;var vSum=vWidgetDuration+vStateDuration+vElementDuration+vJobDuration+vLayoutDuration+vDisplayDuration;if(vSum>0){var logger=qx.dev.log.Logger.getClassLogger(qx.ui.core.Widget);logger.debug("Flush Global Queues");logger.debug("Widgets: "+vWidgetDuration+"ms ("+globalWidgetQueueLength+")");logger.debug("State: "+vStateDuration+"ms ("+globalStateQueueLength+")");logger.debug("Element: "+vElementDuration+"ms ("+globalElementQueueLength+")");logger.debug("Job: "+vJobDuration+"ms ("+globalJobQueueLength+")");logger.debug("Layout: "+vLayoutDuration+"ms ("+globalLayoutQueueLength+")");logger.debug("Display: "+vDisplayDuration+"ms (fast:"+fastGlobalDisplayQueueLength+",lazy:"+lazyGlobalDisplayQueueLength+")");window.status="Flush: Widget:"+vWidgetDuration+" State:"+vStateDuration+" Element:"+vElementDuration+" Job:"+vJobDuration+" Layout:"+vLayoutDuration+" Display:"+vDisplayDuration};delete qx.ui.core.Widget._inFlushGlobalQueues}}else{qx.ui.core.Widget.flushGlobalQueues=function(){if(qx.ui.core.Widget._inFlushGlobalQueues||!qx.core.Init.getInstance().getComponent().isUiReady()){return};qx.ui.core.Widget._inFlushGlobalQueues=true;qx.ui.core.Widget.flushGlobalWidgetQueue();qx.ui.core.Widget.flushGlobalStateQueue();qx.ui.core.Widget.flushGlobalElementQueue();qx.ui.core.Widget.flushGlobalJobQueue();qx.ui.core.Widget.flushGlobalLayoutQueue();qx.ui.core.Widget.flushGlobalDisplayQueue();delete qx.ui.core.Widget._inFlushGlobalQueues}};qx.ui.core.Widget._globalWidgetQueue=[];qx.ui.core.Widget.addToGlobalWidgetQueue=function(vWidget){if(!vWidget._isInGlobalWidgetQueue&&vWidget._isDisplayable){qx.ui.core.Widget._globalWidgetQueue.push(vWidget);vWidget._isInGlobalWidgetQueue=true}};qx.ui.core.Widget.removeFromGlobalWidgetQueue=function(vWidget){if(vWidget._isInGlobalWidgetQueue){qx.lang.Array.remove(qx.ui.core.Widget._globalWidgetQueue,vWidget);delete vWidget._isInGlobalWidgetQueue}};qx.ui.core.Widget.flushGlobalWidgetQueue=function(){var vQueue=qx.ui.core.Widget._globalWidgetQueue,vLength,vWidget;while((vLength=vQueue.length)>0){for(var i=0;i<vLength;i++){vWidget=vQueue[i];vWidget.flushWidgetQueue();delete vWidget._isInGlobalWidgetQueue};vQueue.splice(0,vLength)}};qx.ui.core.Widget._globalElementQueue=[];qx.ui.core.Widget.addToGlobalElementQueue=function(vWidget){if(!vWidget._isInGlobalElementQueue&&vWidget._isDisplayable){qx.ui.core.Widget._globalElementQueue.push(vWidget);vWidget._isInGlobalElementQueue=true}};qx.ui.core.Widget.removeFromGlobalElementQueue=function(vWidget){if(vWidget._isInGlobalElementQueue){qx.lang.Array.remove(qx.ui.core.Widget._globalElementQueue,vWidget);delete vWidget._isInGlobalElementQueue}};qx.ui.core.Widget.flushGlobalElementQueue=function(){var vQueue=qx.ui.core.Widget._globalElementQueue,vLength,vWidget;while((vLength=vQueue.length)>0){for(var i=0;i<vLength;i++){vWidget=vQueue[i];vWidget._createElementImpl();delete vWidget._isInGlobalElementQueue};vQueue.splice(0,vLength)}};qx.ui.core.Widget._globalStateQueue=[];qx.ui.core.Widget.addToGlobalStateQueue=function(vWidget){if(!vWidget._isInGlobalStateQueue&&vWidget._isDisplayable){qx.ui.core.Widget._globalStateQueue.push(vWidget);vWidget._isInGlobalStateQueue=true}};qx.ui.core.Widget.removeFromGlobalStateQueue=function(vWidget){if(vWidget._isInGlobalStateQueue){qx.lang.Array.remove(qx.ui.core.Widget._globalStateQueue,vWidget);delete vWidget._isInGlobalStateQueue}};qx.ui.core.Widget.flushGlobalStateQueue=function(){var vQueue=qx.ui.core.Widget._globalStateQueue,vLength,vWidget;while((vLength=vQueue.length)>0){for(var i=0;i<vLength;i++){vWidget=vQueue[i];vWidget._applyStateAppearance();delete vWidget._isInGlobalStateQueue};vQueue.splice(0,vLength)}};qx.ui.core.Widget._globalJobQueue=[];qx.ui.core.Widget.addToGlobalJobQueue=function(vWidget){if(!vWidget._isInGlobalJobQueue&&vWidget._isDisplayable){qx.ui.core.Widget._globalJobQueue.push(vWidget);vWidget._isInGlobalJobQueue=true}};qx.ui.core.Widget.removeFromGlobalJobQueue=function(vWidget){if(vWidget._isInGlobalJobQueue){qx.lang.Array.remove(qx.ui.core.Widget._globalJobQueue,vWidget);delete vWidget._isInGlobalJobQueue}};qx.ui.core.Widget.flushGlobalJobQueue=function(){var vQueue=qx.ui.core.Widget._globalJobQueue,vLength,vWidget;while((vLength=vQueue.length)>0){for(var i=0;i<vLength;i++){vWidget=vQueue[i];vWidget._flushJobQueue(vWidget._jobQueue);delete vWidget._isInGlobalJobQueue};vQueue.splice(0,vLength)}};qx.ui.core.Widget._globalLayoutQueue=[];qx.ui.core.Widget.addToGlobalLayoutQueue=function(vParent){if(!vParent._isInGlobalLayoutQueue&&vParent._isDisplayable){qx.ui.core.Widget._globalLayoutQueue.push(vParent);vParent._isInGlobalLayoutQueue=true}};qx.ui.core.Widget.removeFromGlobalLayoutQueue=function(vParent){if(vParent._isInGlobalLayoutQueue){qx.lang.Array.remove(qx.ui.core.Widget._globalLayoutQueue,vParent);delete vParent._isInGlobalLayoutQueue}};qx.ui.core.Widget.flushGlobalLayoutQueue=function(){var vQueue=qx.ui.core.Widget._globalLayoutQueue,vLength,vParent;while((vLength=vQueue.length)>0){for(var i=0;i<vLength;i++){vParent=vQueue[i];vParent._flushChildrenQueue();delete vParent._isInGlobalLayoutQueue};vQueue.splice(0,vLength)}};qx.ui.core.Widget._fastGlobalDisplayQueue=[];qx.ui.core.Widget._lazyGlobalDisplayQueues={};qx.ui.core.Widget.addToGlobalDisplayQueue=function(vWidget){if(!vWidget._isInGlobalDisplayQueue&&vWidget._isDisplayable){var vParent=vWidget.getParent();if(vParent.isSeeable()){var vKey=vParent.toHashCode();if(qx.ui.core.Widget._lazyGlobalDisplayQueues[vKey]){qx.ui.core.Widget._lazyGlobalDisplayQueues[vKey].push(vWidget)}else{qx.ui.core.Widget._lazyGlobalDisplayQueues[vKey]=[vWidget]}}else{qx.ui.core.Widget._fastGlobalDisplayQueue.push(vWidget)};vWidget._isInGlobalDisplayQueue=true}};qx.ui.core.Widget.removeFromGlobalDisplayQueue=function(vWidget){};qx.ui.core.Widget.flushGlobalDisplayQueue=function(){var vKey,vLazyQueue,vWidget,vFragment;var vFastQueue=qx.ui.core.Widget._fastGlobalDisplayQueue;var vLazyQueues=qx.ui.core.Widget._lazyGlobalDisplayQueues;for(var i=0,l=vFastQueue.length;i<l;i++){vWidget=vFastQueue[i];vWidget.getParent()._getTargetNode().appendChild(vWidget.getElement())};if(qx.OO.isAvailable("qx.ui.basic.Inline")){for(vKey in vLazyQueues){vLazyQueue=vLazyQueues[vKey];for(var i=0;i<vLazyQueue.length;i++){vWidget=vLazyQueue[i];if(vWidget instanceof qx.ui.basic.Inline){vWidget._beforeInsertDom();try{document.getElementById(vWidget.getInlineNodeId()).appendChild(vWidget.getElement())}catch(ex){vWidget.debug("Could not append to inline id: "+vWidget.getInlineNodeId(),ex)};vWidget._afterInsertDom();vWidget._afterAppear();qx.lang.Array.remove(vLazyQueue,vWidget);i--;delete vWidget._isInGlobalDisplayQueue}}}};for(vKey in vLazyQueues){vLazyQueue=vLazyQueues[vKey];if(document.createDocumentFragment&&vLazyQueue.length>=3){vFragment=document.createDocumentFragment();for(var i=0,l=vLazyQueue.length;i<l;i++){vWidget=vLazyQueue[i];vWidget._beforeInsertDom();vFragment.appendChild(vWidget.getElement())};vLazyQueue[0].getParent()._getTargetNode().appendChild(vFragment);for(var i=0,l=vLazyQueue.length;i<l;i++){vWidget=vLazyQueue[i];vWidget._afterInsertDom()}}else{for(var i=0,l=vLazyQueue.length;i<l;i++){vWidget=vLazyQueue[i];vWidget._beforeInsertDom();vWidget.getParent()._getTargetNode().appendChild(vWidget.getElement());vWidget._afterInsertDom()}}};for(vKey in vLazyQueues){vLazyQueue=vLazyQueues[vKey];for(var i=0,l=vLazyQueue.length;i<l;i++){vWidget=vLazyQueue[i];if(vWidget.getVisibility()){vWidget._afterAppear()};delete vWidget._isInGlobalDisplayQueue};delete vLazyQueues[vKey]};for(var i=0,l=vFastQueue.length;i<l;i++){delete vFastQueue[i]._isInGlobalDisplayQueue};qx.lang.Array.removeAll(vFastQueue)};qx.ui.core.Widget.getActiveSiblingHelperIgnore=function(vIgnoreClasses,vInstance){for(var j=0;j<vIgnoreClasses.length;j++){if(vInstance instanceof vIgnoreClasses[j]){return true}};return false};qx.ui.core.Widget.getActiveSiblingHelper=function(vObject,vParent,vCalc,vIgnoreClasses,vMode){if(!vIgnoreClasses){vIgnoreClasses=[]};var vChilds=vParent.getChildren();var vPosition=qx.util.Validation.isInvalid(vMode)?vChilds.indexOf(vObject)+vCalc:vMode=="first"?0:vChilds.length-1;var vInstance=vChilds[vPosition];while(!vInstance.isEnabled()||qx.ui.core.Widget.getActiveSiblingHelperIgnore(vIgnoreClasses,vInstance)){vPosition+=vCalc;vInstance=vChilds[vPosition];if(!vInstance){return null}};return vInstance};qx.Proto.isMaterialized=function(){var el=this._element;return (this._initialLayoutDone&&this._isDisplayable&&qx.dom.DomStyle.getStyleProperty(el,qx.constant.Style.PROPERTY_DISPLAY)!=qx.constant.Core.NONE&&qx.dom.DomStyle.getStyleProperty(el,qx.constant.Style.PROPERTY_VISIBILITY)!=qx.constant.Core.HIDDEN&&el.offsetWidth>0&&el.offsetHeight>0)};qx.Proto.pack=function(){this.setWidth(this.getPreferredBoxWidth());this.setHeight(this.getPreferredBoxHeight())};qx.Proto.auto=function(){this.setWidth(qx.constant.Core.AUTO);this.setHeight(qx.constant.Core.AUTO)};qx.Proto.getChildren=qx.util.Return.returnNull;qx.Proto.getChildrenLength=qx.util.Return.returnZero;qx.Proto.hasChildren=qx.util.Return.returnFalse;qx.Proto.isEmpty=qx.util.Return.returnTrue;qx.Proto.indexOf=qx.util.Return.returnNegativeIndex;qx.Proto.contains=qx.util.Return.returnFalse;qx.Proto.getVisibleChildren=qx.util.Return.returnNull;qx.Proto.getVisibleChildrenLength=qx.util.Return.returnZero;qx.Proto.hasVisibleChildren=qx.util.Return.returnFalse;qx.Proto.isVisibleEmpty=qx.util.Return.returnTrue;qx.Proto._hasParent=false;qx.Proto._isDisplayable=false;qx.Proto.isDisplayable=function(){return this._isDisplayable};qx.Proto._checkParent=function(propValue,propOldValue,propData){if(this.contains(propValue)){throw new Error("Could not insert myself into a child "+propValue+"!")};return propValue};qx.Proto._modifyParent=function(propValue,propOldValue,propData){if(propOldValue){var vOldIndex=propOldValue.getChildren().indexOf(this);this._computedWidthValue=this._computedMinWidthValue=this._computedMaxWidthValue=this._computedLeftValue=this._computedRightValue=null;this._computedHeightValue=this._computedMinHeightValue=this._computedMaxHeightValue=this._computedTopValue=this._computedBottomValue=null;this._cachedBoxWidth=this._cachedInnerWidth=this._cachedOuterWidth=null;this._cachedBoxHeight=this._cachedInnerHeight=this._cachedOuterHeight=null;qx.lang.Array.removeAt(propOldValue.getChildren(),vOldIndex);propOldValue._invalidateVisibleChildren();propOldValue._removeChildFromChildrenQueue(this);propOldValue.getLayoutImpl().updateChildrenOnRemoveChild(this,vOldIndex);propOldValue.addToJobQueue(qx.ui.core.Widget.JOB_REMOVECHILD);propOldValue._invalidatePreferredInnerDimensions();this._oldParent=propOldValue};if(propValue){this._hasParent=true;if(qx.util.Validation.isValidNumber(this._insertIndex)){qx.lang.Array.insertAt(propValue.getChildren(),this,this._insertIndex);delete this._insertIndex}else{propValue.getChildren().push(this)}}else{this._hasParent=false};return this._handleDisplayable(qx.OO.PROPERTY_PARENT)};qx.Proto._modifyDisplay=function(propValue,propOldValue,propData){return this._handleDisplayable(qx.constant.Style.PROPERTY_DISPLAY)};qx.Proto._handleDisplayable=function(vHint){var vDisplayable=this._computeDisplayable();if(this._isDisplayable==vDisplayable&&!(vDisplayable&&vHint==qx.OO.PROPERTY_PARENT)){return true};this._isDisplayable=vDisplayable;var vParent=this.getParent();if(vParent){vParent._invalidateVisibleChildren();vParent._invalidatePreferredInnerDimensions()};if(vHint&&this._oldParent&&this._oldParent._initialLayoutDone){var vElement=this.getElement();if(vElement){if(this.getVisibility()){this._beforeDisappear()};this._beforeRemoveDom();this._oldParent._getTargetNode().removeChild(vElement);this._afterRemoveDom();if(this.getVisibility()){this._afterDisappear()}};delete this._oldParent};if(vDisplayable){if(vParent._initialLayoutDone){vParent.getLayoutImpl().updateChildrenOnAddChild(this,vParent.getChildren().indexOf(this));vParent.addToJobQueue(qx.ui.core.Widget.JOB_ADDCHILD)};this.addToLayoutChanges(qx.ui.core.Widget.JOB_INITIAL);this.addToCustomQueues(vHint);if(this.getVisibility()){this._beforeAppear()};if(!this._isCreated){qx.ui.core.Widget.addToGlobalElementQueue(this)};qx.ui.core.Widget.addToGlobalStateQueue(this);if(!qx.lang.Object.isEmpty(this._jobQueue)){qx.ui.core.Widget.addToGlobalJobQueue(this)};if(!qx.lang.Object.isEmpty(this._childrenQueue)){qx.ui.core.Widget.addToGlobalLayoutQueue(this)}}else{qx.ui.core.Widget.removeFromGlobalElementQueue(this);qx.ui.core.Widget.removeFromGlobalStateQueue(this);qx.ui.core.Widget.removeFromGlobalJobQueue(this);qx.ui.core.Widget.removeFromGlobalLayoutQueue(this);this.removeFromCustomQueues(vHint);if(vParent&&vHint){if(this.getVisibility()){this._beforeDisappear()};if(vParent._initialLayoutDone&&this._initialLayoutDone){vParent.getLayoutImpl().updateChildrenOnRemoveChild(this,vParent.getChildren().indexOf(this));vParent.addToJobQueue(qx.ui.core.Widget.JOB_REMOVECHILD);this._beforeRemoveDom();vParent._getTargetNode().removeChild(this.getElement());this._afterRemoveDom()};vParent._removeChildFromChildrenQueue(this);if(this.getVisibility()){this._afterDisappear()}}};this._handleDisplayableCustom(vDisplayable,vParent,vHint);return true};qx.Proto.addToCustomQueues=qx.util.Return.returnTrue;qx.Proto.removeFromCustomQueues=qx.util.Return.returnTrue;qx.Proto._handleDisplayableCustom=qx.util.Return.returnTrue;qx.Proto._computeDisplayable=function(){return this.getDisplay()&&this._hasParent&&this.getParent()._isDisplayable?true:false};qx.Proto._beforeAppear=function(){this.createDispatchEvent(qx.constant.Event.BEFOREAPPEAR)};qx.Proto._afterAppear=function(){this._isSeeable=true;this.createDispatchEvent(qx.constant.Event.APPEAR)};qx.Proto._beforeDisappear=function(){this.removeState(qx.ui.core.Widget.STATE_OVER);if(qx.OO.isAvailable("qx.ui.form.Button")){this.removeState(qx.ui.form.Button.STATE_PRESSED);this.removeState(qx.ui.form.Button.STATE_ABANDONED)};this.createDispatchEvent(qx.constant.Event.BEFOREDISAPPEAR)};qx.Proto._afterDisappear=function(){this._isSeeable=false;this.createDispatchEvent(qx.constant.Event.DISAPPEAR)};qx.Proto._isSeeable=false;qx.Proto.isSeeable=function(){return this._isSeeable};qx.Proto.isAppearRelevant=function(){return this.getVisibility()&&this._isDisplayable};qx.Proto._beforeInsertDom=function(){this.createDispatchEvent(qx.constant.Event.BEFOREINSERTDOM)};qx.Proto._afterInsertDom=function(){this.createDispatchEvent(qx.constant.Event.INSERTDOM)};qx.Proto._beforeRemoveDom=function(){this.createDispatchEvent(qx.constant.Event.BEFOREREMOVEDOM)};qx.Proto._afterRemoveDom=function(){this.createDispatchEvent(qx.constant.Event.REMOVEDOM)};qx.Proto._modifyVisibility=function(propValue,propOldValue,propData){if(propValue){if(this._isDisplayable){this._beforeAppear()};this.removeStyleProperty(qx.constant.Style.PROPERTY_DISPLAY);if(this._isDisplayable){this._afterAppear()}}else{if(this._isDisplayable){this._beforeDisappear()};this.setStyleProperty(qx.constant.Style.PROPERTY_DISPLAY,qx.constant.Core.NONE);if(this._isDisplayable){this._afterDisappear()}};return true};qx.Proto.show=function(){this.setVisibility(true);this.setDisplay(true)};qx.Proto.hide=function(){this.setVisibility(false)};qx.Proto.connect=function(){this.setDisplay(true)};qx.Proto.disconnect=function(){this.setDisplay(false)};if(qx.sys.Client.getInstance().isGecko()){qx.Proto._createElementForEnhancedBorder=qx.util.Return.returnTrue}else{qx.Proto._createElementForEnhancedBorder=function(){if(qx.renderer.border.Border.enhancedCrossBrowserMode&&this.getTagName()==qx.constant.Tags.DIV&&!this._borderElement){var el=this.getElement();var cl=this._borderElement=document.createElement(qx.constant.Tags.DIV);var es=el.style;var cs=this._borderStyle=cl.style;cs.width=cs.height=qx.constant.Core.HUNDREDPERCENT;cs.position=qx.constant.Style.POSITION_ABSOLUTE;for(var i in this._styleProperties){switch(i){case qx.constant.Style.PROPERTY_POSITION:case qx.constant.Style.PROPERTY_ZINDEX:case qx.constant.Style.PROPERTY_FILTER:case qx.constant.Style.PROPERTY_DISPLAY:break;default:cs[i]=this._styleProperties[i];es[i]=qx.constant.Core.EMPTY}};while(el.firstChild){cl.appendChild(el.firstChild)};el.appendChild(cl)}}};qx.Proto._isCreated=false;if(qx.sys.Client.getInstance().isGecko()){qx.Proto._getTargetNode=function(){return this._element}}else{qx.Proto._getTargetNode=function(){return this._borderElement||this._element}};qx.Proto.addToDocument=function(){qx.ui.core.ClientDocument.getInstance().add(this)};qx.Proto.isCreated=function(){return this._isCreated};qx.Proto._createElementImpl=function(){this.setElement(this.getTopLevelWidget().getDocumentElement().createElement(this.getTagName()))};qx.Proto._modifyElement=function(propValue,propOldValue,propData){this._isCreated=qx.util.Validation.isValidElement(propValue);if(propOldValue){propOldValue.qx_Widget=null;this._removeInlineEvents(propOldValue)};if(propValue){propValue.qx_Widget=this;this._element=propValue;this._style=propValue.style;this._applyStyleProperties(propValue);this._applyHtmlProperties(propValue);this._applyHtmlAttributes(propValue);this._applyElementData(propValue);this._addInlineEvents(propValue);this.createDispatchEvent(qx.constant.Event.CREATE)}else{this._element=this._style=null};return true};qx.Proto.addToJobQueue=function(p){if(this._hasParent){qx.ui.core.Widget.addToGlobalJobQueue(this)};if(!this._jobQueue){this._jobQueue={}};this._jobQueue[p]=true;return true};qx.Proto._flushJobQueue=function(q){try{var vQueue=this._jobQueue;var vParent=this.getParent();if(!vParent||qx.lang.Object.isEmpty(vQueue)){return};var vLayoutImpl=this instanceof qx.ui.core.Parent?this.getLayoutImpl():null;if(vLayoutImpl){vLayoutImpl.updateSelfOnJobQueueFlush(vQueue)}}catch(ex){this.error("Flushing job queue (prechecks#1) failed",ex)};try{var vFlushParentJobQueue=false;var vRecomputeOuterWidth=vQueue.marginLeft||vQueue.marginRight;var vRecomputeOuterHeight=vQueue.marginTop||vQueue.marginBottom;var vRecomputeInnerWidth=vQueue.frameWidth;var vRecomputeInnerHeight=vQueue.frameHeight;var vRecomputeParentPreferredInnerWidth=(vQueue.frameWidth||vQueue.preferredInnerWidth)&&this._recomputePreferredBoxWidth();var vRecomputeParentPreferredInnerHeight=(vQueue.frameHeight||vQueue.preferredInnerHeight)&&this._recomputePreferredBoxHeight();if(vRecomputeParentPreferredInnerWidth){var vPref=this.getPreferredBoxWidth();if(this._computedWidthTypeAuto){this._computedWidthValue=vPref;vQueue.width=true};if(this._computedMinWidthTypeAuto){this._computedMinWidthValue=vPref;vQueue.minWidth=true};if(this._computedMaxWidthTypeAuto){this._computedMaxWidthValue=vPref;vQueue.maxWidth=true}};if(vRecomputeParentPreferredInnerHeight){var vPref=this.getPreferredBoxHeight();if(this._computedHeightTypeAuto){this._computedHeightValue=vPref;vQueue.height=true};if(this._computedMinHeightTypeAuto){this._computedMinHeightValue=vPref;vQueue.minHeight=true};if(this._computedMaxHeightTypeAuto){this._computedMaxHeightValue=vPref;vQueue.maxHeight=true}};if((vQueue.width||vQueue.minWidth||vQueue.maxWidth||vQueue.left||vQueue.right)&&this._recomputeBoxWidth()){vRecomputeOuterWidth=vRecomputeInnerWidth=true};if((vQueue.height||vQueue.minHeight||vQueue.maxHeight||vQueue.top||vQueue.bottom)&&this._recomputeBoxHeight()){vRecomputeOuterHeight=vRecomputeInnerHeight=true}}catch(ex){this.error("Flushing job queue (recompute#2) failed",ex)};try{if((vRecomputeOuterWidth&&this._recomputeOuterWidth())||vRecomputeParentPreferredInnerWidth){vParent._invalidatePreferredInnerWidth();vParent.getLayoutImpl().updateSelfOnChildOuterWidthChange(this);vFlushParentJobQueue=true};if((vRecomputeOuterHeight&&this._recomputeOuterHeight())||vRecomputeParentPreferredInnerHeight){vParent._invalidatePreferredInnerHeight();vParent.getLayoutImpl().updateSelfOnChildOuterHeightChange(this);vFlushParentJobQueue=true};if(vFlushParentJobQueue){vParent._flushJobQueue()}}catch(ex){this.error("Flushing job queue (parentsignals#3) failed",ex)};try{vParent._addChildToChildrenQueue(this);for(var i in vQueue){this._layoutChanges[i]=true}}catch(ex){this.error("Flushing job queue (addjobs#4) failed",ex)};try{if(this instanceof qx.ui.core.Parent&&(vQueue.paddingLeft||vQueue.paddingRight||vQueue.paddingTop||vQueue.paddingBottom)){var ch=this.getChildren(),chl=ch.length;if(vQueue.paddingLeft){for(var i=0;i<chl;i++){ch[i].addToLayoutChanges(qx.ui.core.Widget.PROPERTY_PARENT_PADDINGLEFT)}};if(vQueue.paddingRight){for(var i=0;i<chl;i++){ch[i].addToLayoutChanges(qx.ui.core.Widget.PROPERTY_PARENT_PADDINGRIGHT)}};if(vQueue.paddingTop){for(var i=0;i<chl;i++){ch[i].addToLayoutChanges(qx.ui.core.Widget.PROPERTY_PARENT_PADDINGTOP)}};if(vQueue.paddingBottom){for(var i=0;i<chl;i++){ch[i].addToLayoutChanges(qx.ui.core.Widget.PROPERTY_PARENT_PADDINGBOTTOM)}}};if(vRecomputeInnerWidth){this._recomputeInnerWidth()};if(vRecomputeInnerHeight){this._recomputeInnerHeight()};if(this._initialLayoutDone){if(vLayoutImpl){vLayoutImpl.updateChildrenOnJobQueueFlush(vQueue)}}}catch(ex){this.error("Flushing job queue (childrensignals#5) failed",ex)};delete this._jobQueue};qx.Proto._isWidthEssential=qx.util.Return.returnTrue;qx.Proto._isHeightEssential=qx.util.Return.returnTrue;qx.ui.core.Widget.initApplyMethods=function(){var f="_applyRuntime";var r="_resetRuntime";var s="this._style.";var e="=qx.constant.Core.EMPTY";var v="=v+qx.constant.Core.PIXEL";var vpar="v";var props=["left","right","top","bottom","width","height","minWidth","maxWidth","minHeight","maxHeight"];var propsup=["Left","Right","Top","Bottom","Width","Height","MinWidth","MaxWidth","MinHeight","MaxHeight"];for(var i=0,fn=f+"Margin",rn=r+"Margin",sp=s+"margin";i<4;i++){qx.Proto[fn+propsup[i]]=new Function(vpar,sp+propsup[i]+v);qx.Proto[rn+propsup[i]]=new Function(sp+propsup[i]+e)};var pad="padding";var upad="Padding";if(qx.sys.Client.getInstance().isGecko()){for(var i=0,fn=f+upad,rn=r+upad,sp=s+pad;i<4;i++){qx.Proto[fn+propsup[i]]=new Function(vpar,sp+propsup[i]+v);qx.Proto[rn+propsup[i]]=new Function(sp+propsup[i]+e)}}else{var s1="this.setStyleProperty('padding";var s2="', v+'px')";var s3="this.removeStyleProperty('padding";var s4="')";for(var i=0,fn=f+upad,rn=r+upad,sp=s+pad;i<4;i++){qx.Proto[fn+propsup[i]]=new Function(vpar,s1+propsup[i]+s2);qx.Proto[rn+propsup[i]]=new Function(s3+propsup[i]+s4)}};if(qx.sys.Client.getInstance().isMshtml()){for(var i=0,tpos="pos",vset="=v";i<6;i++){qx.Proto[f+propsup[i]]=new Function(vpar,s+tpos+propsup[i]+vset);qx.Proto[r+propsup[i]]=new Function(s+props[i]+e)}}else{for(var i=0;i<10;i++){qx.Proto[f+propsup[i]]=new Function(vpar,s+props[i]+v);qx.Proto[r+propsup[i]]=new Function(s+props[i]+e)}}};qx.ui.core.Widget.initApplyMethods();qx.OO.addCachedProperty({name:"innerWidth",defaultValue:null});qx.OO.addCachedProperty({name:"innerHeight",defaultValue:null});qx.OO.addCachedProperty({name:"boxWidth",defaultValue:null});qx.OO.addCachedProperty({name:"boxHeight",defaultValue:null});qx.OO.addCachedProperty({name:"outerWidth",defaultValue:null});qx.OO.addCachedProperty({name:"outerHeight",defaultValue:null});qx.Proto._computeBoxWidthFallback=function(){return 0};qx.Proto._computeBoxHeightFallback=function(){return 0};qx.Proto._computeBoxWidth=function(){var vLayoutImpl=this.getParent().getLayoutImpl();return Math.max(0,qx.lang.Number.limit(vLayoutImpl.computeChildBoxWidth(this),this.getMinWidthValue(),this.getMaxWidthValue()))};qx.Proto._computeBoxHeight=function(){var vLayoutImpl=this.getParent().getLayoutImpl();return Math.max(0,qx.lang.Number.limit(vLayoutImpl.computeChildBoxHeight(this),this.getMinHeightValue(),this.getMaxHeightValue()))};qx.Proto._computeOuterWidth=function(){return Math.max(0,(this.getMarginLeft()+this.getBoxWidth()+this.getMarginRight()))};qx.Proto._computeOuterHeight=function(){return Math.max(0,(this.getMarginTop()+this.getBoxHeight()+this.getMarginBottom()))};qx.Proto._computeInnerWidth=function(){return Math.max(0,this.getBoxWidth()-this.getFrameWidth())};qx.Proto._computeInnerHeight=function(){return Math.max(0,this.getBoxHeight()-this.getFrameHeight())};qx.Proto.getNeededWidth=function(){var vLayoutImpl=this.getParent().getLayoutImpl();return Math.max(0,vLayoutImpl.computeChildNeededWidth(this))};qx.Proto.getNeededHeight=function(){var vLayoutImpl=this.getParent().getLayoutImpl();return Math.max(0,vLayoutImpl.computeChildNeededHeight(this))};qx.Proto._recomputeFlexX=function(){if(!this.getHasFlexX()){return false};if(this._computedWidthTypeFlex){this._computedWidthValue=null;this.addToLayoutChanges(qx.OO.PROPERTY_WIDTH)};return true};qx.Proto._recomputeFlexY=function(){if(!this.getHasFlexY()){return false};if(this._computedHeightTypeFlex){this._computedHeightValue=null;this.addToLayoutChanges(qx.OO.PROPERTY_HEIGHT)};return true};qx.Proto._recomputePercentX=function(){if(!this.getHasPercentX()){return false};if(this._computedWidthTypePercent){this._computedWidthValue=null;this.addToLayoutChanges(qx.OO.PROPERTY_WIDTH)};if(this._computedMinWidthTypePercent){this._computedMinWidthValue=null;this.addToLayoutChanges(qx.OO.PROPERTY_MINWIDTH)};if(this._computedMaxWidthTypePercent){this._computedMaxWidthValue=null;this.addToLayoutChanges(qx.OO.PROPERTY_MAXWIDTH)};if(this._computedLeftTypePercent){this._computedLeftValue=null;this.addToLayoutChanges(qx.OO.PROPERTY_LEFT)};if(this._computedRightTypePercent){this._computedRightValue=null;this.addToLayoutChanges(qx.OO.PROPERTY_RIGHT)};return true};qx.Proto._recomputePercentY=function(){if(!this.getHasPercentY()){return false};if(this._computedHeightTypePercent){this._computedHeightValue=null;this.addToLayoutChanges(qx.OO.PROPERTY_HEIGHT)};if(this._computedMinHeightTypePercent){this._computedMinHeightValue=null;this.addToLayoutChanges(qx.OO.PROPERTY_MINHEIGHT)};if(this._computedMaxHeightTypePercent){this._computedMaxHeightValue=null;this.addToLayoutChanges(qx.OO.PROPERTY_MAXHEIGHT)};if(this._computedTopTypePercent){this._computedTopValue=null;this.addToLayoutChanges(qx.OO.PROPERTY_TOP)};if(this._computedBottomTypePercent){this._computedBottomValue=null;this.addToLayoutChanges(qx.OO.PROPERTY_BOTTOM)};return true};if(qx.sys.Client.getInstance().isMshtml()||qx.sys.Client.getInstance().isOpera()){qx.Proto._recomputeRangeX=function(){if(this._computedLeftTypeNull||this._computedRightTypeNull){return false};this.addToLayoutChanges(qx.OO.PROPERTY_WIDTH);return true};qx.Proto._recomputeRangeY=function(){if(this._computedTopTypeNull||this._computedBottomTypeNull){return false};this.addToLayoutChanges(qx.OO.PROPERTY_HEIGHT);return true}}else{qx.Proto._recomputeRangeX=function(){return !(this._computedLeftTypeNull||this._computedRightTypeNull)};qx.Proto._recomputeRangeY=function(){return !(this._computedTopTypeNull||this._computedBottomTypeNull)}};if(qx.sys.Client.getInstance().isMshtml()||qx.sys.Client.getInstance().isOpera()){qx.Proto._recomputeStretchingX=function(){if(this.getAllowStretchX()&&this._computedWidthTypeNull){this._computedWidthValue=null;this.addToLayoutChanges(qx.OO.PROPERTY_WIDTH);return true};return false};qx.Proto._recomputeStretchingY=function(){if(this.getAllowStretchY()&&this._computedHeightTypeNull){this._computedHeightValue=null;this.addToLayoutChanges(qx.OO.PROPERTY_HEIGHT);return true};return false}}else{qx.Proto._recomputeStretchingX=function(){if(this.getAllowStretchX()&&this._computedWidthTypeNull){return true};return false};qx.Proto._recomputeStretchingY=function(){if(this.getAllowStretchY()&&this._computedHeightTypeNull){return true};return false}};qx.Proto._computeValuePixel=function(v){return Math.round(v)};qx.Proto._computeValuePixelLimit=function(v){return Math.max(0,this._computeValuePixel(v))};qx.Proto._computeValuePercentX=function(v){return Math.round(this.getParent().getInnerWidthForChild(this)*v*0.01)};qx.Proto._computeValuePercentXLimit=function(v){return Math.max(0,this._computeValuePercentX(v))};qx.Proto._computeValuePercentY=function(v){return Math.round(this.getParent().getInnerHeightForChild(this)*v*0.01)};qx.Proto._computeValuePercentYLimit=function(v){return Math.max(0,this._computeValuePercentY(v))};qx.Proto.getWidthValue=function(){if(this._computedWidthValue!=null){return this._computedWidthValue};switch(this._computedWidthType){case qx.ui.core.Widget.TYPE_PIXEL:return this._computedWidthValue=this._computeValuePixelLimit(this._computedWidthParsed);case qx.ui.core.Widget.TYPE_PERCENT:return this._computedWidthValue=this._computeValuePercentXLimit(this._computedWidthParsed);case qx.ui.core.Widget.TYPE_AUTO:return this._computedWidthValue=this.getPreferredBoxWidth();case qx.ui.core.Widget.TYPE_FLEX:try{this.getParent().getLayoutImpl().computeChildrenFlexWidth()}catch(e){if(this.getParent().getLayoutImpl()["computeChildrenFlexWidth"]==null){throw new Error("Widget "+this+": having flex size but parent layout does not support it")}else{throw e}};return this._computedWidthValue=this._computedWidthFlexValue};return null};qx.Proto.getMinWidthValue=function(){if(this._computedMinWidthValue!=null){return this._computedMinWidthValue};switch(this._computedMinWidthType){case qx.ui.core.Widget.TYPE_PIXEL:return this._computedWidthValue=this._computeValuePixelLimit(this._computedMinWidthParsed);case qx.ui.core.Widget.TYPE_PERCENT:return this._computedWidthValue=this._computeValuePercentXLimit(this._computedMinWidthParsed);case qx.ui.core.Widget.TYPE_AUTO:return this._computedMinWidthValue=this.getPreferredBoxWidth()};return null};qx.Proto.getMaxWidthValue=function(){if(this._computedMaxWidthValue!=null){return this._computedMaxWidthValue};switch(this._computedMaxWidthType){case qx.ui.core.Widget.TYPE_PIXEL:return this._computedWidthValue=this._computeValuePixelLimit(this._computedMaxWidthParsed);case qx.ui.core.Widget.TYPE_PERCENT:return this._computedWidthValue=this._computeValuePercentXLimit(this._computedMaxWidthParsed);case qx.ui.core.Widget.TYPE_AUTO:return this._computedMaxWidthValue=this.getPreferredBoxWidth()};return null};qx.Proto.getLeftValue=function(){if(this._computedLeftValue!=null){return this._computedLeftValue};switch(this._computedLeftType){case qx.ui.core.Widget.TYPE_PIXEL:return this._computedLeftValue=this._computeValuePixel(this._computedLeftParsed);case qx.ui.core.Widget.TYPE_PERCENT:return this._computedLeftValue=this._computeValuePercentX(this._computedLeftParsed)};return null};qx.Proto.getRightValue=function(){if(this._computedRightValue!=null){return this._computedRightValue};switch(this._computedRightType){case qx.ui.core.Widget.TYPE_PIXEL:return this._computedRightValue=this._computeValuePixel(this._computedRightParsed);case qx.ui.core.Widget.TYPE_PERCENT:return this._computedRightValue=this._computeValuePercentX(this._computedRightParsed)};return null};qx.Proto.getHeightValue=function(){if(this._computedHeightValue!=null){return this._computedHeightValue};switch(this._computedHeightType){case qx.ui.core.Widget.TYPE_PIXEL:return this._computedHeightValue=this._computeValuePixelLimit(this._computedHeightParsed);case qx.ui.core.Widget.TYPE_PERCENT:return this._computedHeightValue=this._computeValuePercentYLimit(this._computedHeightParsed);case qx.ui.core.Widget.TYPE_AUTO:return this._computedHeightValue=this.getPreferredBoxHeight();case qx.ui.core.Widget.TYPE_FLEX:try{this.getParent().getLayoutImpl().computeChildrenFlexHeight()}catch(e){if(this.getParent().getLayoutImpl()["computeChildrenFlexHeight"]==null){throw new Error("Widget "+this+": having flex size but parent layout does not support it")}else{throw e}};return this._computedHeightValue=this._computedHeightFlexValue};return null};qx.Proto.getMinHeightValue=function(){if(this._computedMinHeightValue!=null){return this._computedMinHeightValue};switch(this._computedMinHeightType){case qx.ui.core.Widget.TYPE_PIXEL:return this._computedMinHeightValue=this._computeValuePixelLimit(this._computedMinHeightParsed);case qx.ui.core.Widget.TYPE_PERCENT:return this._computedMinHeightValue=this._computeValuePercentYLimit(this._computedMinHeightParsed);case qx.ui.core.Widget.TYPE_AUTO:return this._computedMinHeightValue=this.getPreferredBoxHeight()};return null};qx.Proto.getMaxHeightValue=function(){if(this._computedMaxHeightValue!=null){return this._computedMaxHeightValue};switch(this._computedMaxHeightType){case qx.ui.core.Widget.TYPE_PIXEL:return this._computedMaxHeightValue=this._computeValuePixelLimit(this._computedMaxHeightParsed);case qx.ui.core.Widget.TYPE_PERCENT:return this._computedMaxHeightValue=this._computeValuePercentYLimit(this._computedMaxHeightParsed);case qx.ui.core.Widget.TYPE_AUTO:return this._computedMaxHeightValue=this.getPreferredBoxHeight()};return null};qx.Proto.getTopValue=function(){if(this._computedTopValue!=null){return this._computedTopValue};switch(this._computedTopType){case qx.ui.core.Widget.TYPE_PIXEL:return this._computedTopValue=this._computeValuePixel(this._computedTopParsed);case qx.ui.core.Widget.TYPE_PERCENT:return this._computedTopValue=this._computeValuePercentY(this._computedTopParsed)};return null};qx.Proto.getBottomValue=function(){if(this._computedBottomValue!=null){return this._computedBottomValue};switch(this._computedBottomType){case qx.ui.core.Widget.TYPE_PIXEL:return this._computedBottomValue=this._computeValuePixel(this._computedBottomParsed);case qx.ui.core.Widget.TYPE_PERCENT:return this._computedBottomValue=this._computeValuePercentY(this._computedBottomParsed)};return null};qx.OO.addCachedProperty({name:"frameWidth",defaultValue:null,addToQueueRuntime:true});qx.OO.addCachedProperty({name:"frameHeight",defaultValue:null,addToQueueRuntime:true});qx.Proto._computeFrameWidth=function(){var fw=this._cachedBorderLeft+this.getPaddingLeft()+this.getPaddingRight()+this._cachedBorderRight;switch(this.getOverflow()){case qx.ui.core.Widget.SCROLL_VALUE_SCROLL:case qx.ui.core.Widget.SCROLL_VALUE_SCROLLY:qx.ui.core.Widget.initOverflow();fw+=qx.ui.core.Widget.SCROLLBAR_SIZE;break;case qx.ui.core.Widget.SCROLL_VALUE_AUTO:break};return fw};qx.Proto._computeFrameHeight=function(){var fh=this._cachedBorderTop+this.getPaddingTop()+this.getPaddingBottom()+this._cachedBorderBottom;switch(this.getOverflow()){case qx.ui.core.Widget.SCROLL_VALUE_SCROLL:case qx.ui.core.Widget.SCROLL_VALUE_SCROLLX:qx.ui.core.Widget.initOverflow();fh+=qx.ui.core.Widget.SCROLLBAR_SIZE;break;case qx.ui.core.Widget.SCROLL_VALUE_AUTO:break};return fh};qx.Proto._invalidateFrameDimensions=function(){this._invalidateFrameWidth();this._invalidateFrameHeight()};qx.OO.addCachedProperty({name:"preferredInnerWidth",defaultValue:null,addToQueueRuntime:true});qx.OO.addCachedProperty({name:"preferredInnerHeight",defaultValue:null,addToQueueRuntime:true});qx.Proto._invalidatePreferredInnerDimensions=function(){this._invalidatePreferredInnerWidth();this._invalidatePreferredInnerHeight()};qx.OO.addCachedProperty({name:"preferredBoxWidth",defaultValue:null});qx.OO.addCachedProperty({name:"preferredBoxHeight",defaultValue:null});qx.Proto._computePreferredBoxWidth=function(){try{return Math.max(0,this.getPreferredInnerWidth()+this.getFrameWidth())}catch(ex){this.error("_computePreferredBoxWidth failed",ex)}};qx.Proto._computePreferredBoxHeight=function(){try{return Math.max(0,this.getPreferredInnerHeight()+this.getFrameHeight())}catch(ex){this.error("_computePreferredBoxHeight failed",ex)}};qx.Proto._initialLayoutDone=false;qx.Proto.addToLayoutChanges=function(p){if(this._isDisplayable){this.getParent()._addChildToChildrenQueue(this)};return this._layoutChanges[p]=true};qx.Proto.addToQueue=function(p){this._initialLayoutDone?this.addToJobQueue(p):this.addToLayoutChanges(p)};qx.Proto.addToQueueRuntime=function(p){return !this._initialLayoutDone||this.addToJobQueue(p)};qx.Proto._applyBorderX=function(vChild,vChanges,vStyle){var vBorder=vChild.getBorder();vBorder?vBorder._applyWidgetX(vChild):qx.renderer.border.Border._resetBorderX(vChild)};qx.Proto._applyBorderY=function(vChild,vChanges,vStyle){var vBorder=vChild.getBorder();vBorder?vBorder._applyWidgetY(vChild):qx.renderer.border.Border._resetBorderY(vChild)};qx.Proto._applyPaddingX=qx.util.Return.returnTrue;qx.Proto._applyPaddingY=qx.util.Return.returnTrue;qx.OO.addCachedProperty({name:"hasPercentX",defaultValue:false});qx.OO.addCachedProperty({name:"hasPercentY",defaultValue:false});qx.OO.addCachedProperty({name:"hasAutoX",defaultValue:false});qx.OO.addCachedProperty({name:"hasAutoY",defaultValue:false});qx.OO.addCachedProperty({name:"hasFlexX",defaultValue:false});qx.OO.addCachedProperty({name:"hasFlexY",defaultValue:false});qx.Proto._computeHasPercentX=function(){return (this._computedLeftTypePercent||this._computedWidthTypePercent||this._computedMinWidthTypePercent||this._computedMaxWidthTypePercent||this._computedRightTypePercent)};qx.Proto._computeHasPercentY=function(){return (this._computedTopTypePercent||this._computedHeightTypePercent||this._computedMinHeightTypePercent||this._computedMaxHeightTypePercent||this._computedBottomTypePercent)};qx.Proto._computeHasAutoX=function(){return (this._computedWidthTypeAuto||this._computedMinWidthTypeAuto||this._computedMaxWidthTypeAuto)};qx.Proto._computeHasAutoY=function(){return (this._computedHeightTypeAuto||this._computedMinHeightTypeAuto||this._computedMaxHeightTypeAuto)};qx.Proto._computeHasFlexX=function(){return this._computedWidthTypeFlex};qx.Proto._computeHasFlexY=function(){return this._computedHeightTypeFlex};qx.ui.core.Widget.TYPE_NULL=0;qx.ui.core.Widget.TYPE_PIXEL=1;qx.ui.core.Widget.TYPE_PERCENT=2;qx.ui.core.Widget.TYPE_AUTO=3;qx.ui.core.Widget.TYPE_FLEX=4;qx.Proto._evalUnitsPixelPercentAutoFlex=function(propValue){switch(propValue){case qx.constant.Core.AUTO:return qx.ui.core.Widget.TYPE_AUTO;case Infinity:case -Infinity:return qx.ui.core.Widget.TYPE_NULL};switch(typeof propValue){case qx.constant.Type.NUMBER:return isNaN(propValue)?qx.ui.core.Widget.TYPE_NULL:qx.ui.core.Widget.TYPE_PIXEL;case qx.constant.Type.STRING:return propValue.indexOf(qx.constant.Core.PERCENT)!=-1?qx.ui.core.Widget.TYPE_PERCENT:propValue.indexOf(qx.constant.Core.STAR)!=-1?qx.ui.core.Widget.TYPE_FLEX:qx.ui.core.Widget.TYPE_NULL};return qx.ui.core.Widget.TYPE_NULL};qx.Proto._evalUnitsPixelPercentAuto=function(propValue){switch(propValue){case qx.constant.Core.AUTO:return qx.ui.core.Widget.TYPE_AUTO;case Infinity:case -Infinity:return qx.ui.core.Widget.TYPE_NULL};switch(typeof propValue){case qx.constant.Type.NUMBER:return isNaN(propValue)?qx.ui.core.Widget.TYPE_NULL:qx.ui.core.Widget.TYPE_PIXEL;case qx.constant.Type.STRING:return propValue.indexOf(qx.constant.Core.PERCENT)!=-1?qx.ui.core.Widget.TYPE_PERCENT:qx.ui.core.Widget.TYPE_NULL};return qx.ui.core.Widget.TYPE_NULL};qx.Proto._evalUnitsPixelPercent=function(propValue){switch(propValue){case Infinity:case -Infinity:return qx.ui.core.Widget.TYPE_NULL};switch(typeof propValue){case qx.constant.Type.NUMBER:return isNaN(propValue)?qx.ui.core.Widget.TYPE_NULL:qx.ui.core.Widget.TYPE_PIXEL;case qx.constant.Type.STRING:return propValue.indexOf(qx.constant.Core.PERCENT)!=-1?qx.ui.core.Widget.TYPE_PERCENT:qx.ui.core.Widget.TYPE_NULL};return qx.ui.core.Widget.TYPE_NULL};qx.ui.core.Widget.layoutPropertyTypes={};qx.ui.core.Widget.initLayoutProperties=function(){var a=["width","height","minWidth","maxWidth","minHeight","maxHeight","left","right","top","bottom"];for(var i=0,l=a.length,p,b,t;i<l;i++){p=a[i];b=qx.OO.C_COMPUTED+qx.lang.String.toFirstUp(p);t=b+qx.OO.C_UNIT_TYPE;qx.ui.core.Widget.layoutPropertyTypes[p]={dataType:t,dataParsed:b+qx.OO.C_UNIT_PARSED,dataValue:b+qx.OO.C_UNIT_VALUE,typePixel:t+"Pixel",typePercent:t+"Percent",typeAuto:t+"Auto",typeFlex:t+"Flex",typeNull:t+"Null"}}};qx.ui.core.Widget.initLayoutProperties();qx.Proto._unitDetectionPixelPercentAutoFlex=function(propData,propValue){var r=qx.ui.core.Widget.layoutPropertyTypes[propData.name];var s=r.dataType;var p=r.dataParsed;var v=r.dataValue;var s1=r.typePixel;var s2=r.typePercent;var s3=r.typeAuto;var s4=r.typeFlex;var s5=r.typeNull;var wasPercent=this[s2];var wasAuto=this[s3];var wasFlex=this[s4];switch(this[s]=this._evalUnitsPixelPercentAutoFlex(propValue)){case qx.ui.core.Widget.TYPE_PIXEL:this[s1]=true;this[s2]=this[s3]=this[s4]=this[s5]=false;this[p]=this[v]=Math.round(propValue);break;case qx.ui.core.Widget.TYPE_PERCENT:this[s2]=true;this[s1]=this[s3]=this[s4]=this[s5]=false;this[p]=parseFloat(propValue);this[v]=null;break;case qx.ui.core.Widget.TYPE_AUTO:this[s3]=true;this[s1]=this[s2]=this[s4]=this[s5]=false;this[p]=this[v]=null;break;case qx.ui.core.Widget.TYPE_FLEX:this[s4]=true;this[s1]=this[s2]=this[s3]=this[s5]=false;this[p]=parseFloat(propValue);this[v]=null;break;default:this[s5]=true;this[s1]=this[s2]=this[s3]=this[s4]=false;this[p]=this[v]=null;break};if(wasPercent!=this[s2]){switch(propData.name){case qx.OO.PROPERTY_MINWIDTH:case qx.OO.PROPERTY_MAXWIDTH:case qx.OO.PROPERTY_WIDTH:case qx.OO.PROPERTY_LEFT:case qx.OO.PROPERTY_RIGHT:this._invalidateHasPercentX();break;case qx.OO.PROPERTY_MAXHEIGHT:case qx.OO.PROPERTY_MINHEIGHT:case qx.OO.PROPERTY_HEIGHT:case qx.OO.PROPERTY_TOP:case qx.OO.PROPERTY_BOTTOM:this._invalidateHasPercentY();break}};if(wasAuto!=this[s3]){switch(propData.name){case qx.OO.PROPERTY_MINWIDTH:case qx.OO.PROPERTY_MAXWIDTH:case qx.OO.PROPERTY_WIDTH:this._invalidateHasAutoX();break;case qx.OO.PROPERTY_MINHEIGHT:case qx.OO.PROPERTY_MAXHEIGHT:case qx.OO.PROPERTY_HEIGHT:this._invalidateHasAutoY();break}};if(wasFlex!=this[s4]){switch(propData.name){case qx.OO.PROPERTY_WIDTH:this._invalidateHasFlexX();break;case qx.OO.PROPERTY_HEIGHT:this._invalidateHasFlexY();break}}};qx.Proto._unitDetectionPixelPercentAuto=function(propData,propValue){var r=qx.ui.core.Widget.layoutPropertyTypes[propData.name];var s=r.dataType;var p=r.dataParsed;var v=r.dataValue;var s1=r.typePixel;var s2=r.typePercent;var s3=r.typeAuto;var s4=r.typeNull;var wasPercent=this[s2];var wasAuto=this[s3];switch(this[s]=this._evalUnitsPixelPercentAuto(propValue)){case qx.ui.core.Widget.TYPE_PIXEL:this[s1]=true;this[s2]=this[s3]=this[s4]=false;this[p]=this[v]=Math.round(propValue);break;case qx.ui.core.Widget.TYPE_PERCENT:this[s2]=true;this[s1]=this[s3]=this[s4]=false;this[p]=parseFloat(propValue);this[v]=null;break;case qx.ui.core.Widget.TYPE_AUTO:this[s3]=true;this[s1]=this[s2]=this[s4]=false;this[p]=this[v]=null;break;default:this[s4]=true;this[s1]=this[s2]=this[s3]=false;this[p]=this[v]=null;break};if(wasPercent!=this[s2]){switch(propData.name){case qx.OO.PROPERTY_MINWIDTH:case qx.OO.PROPERTY_MAXWIDTH:case qx.OO.PROPERTY_WIDTH:case qx.OO.PROPERTY_LEFT:case qx.OO.PROPERTY_RIGHT:this._invalidateHasPercentX();break;case qx.OO.PROPERTY_MINHEIGHT:case qx.OO.PROPERTY_MAXHEIGHT:case qx.OO.PROPERTY_HEIGHT:case qx.OO.PROPERTY_TOP:case qx.OO.PROPERTY_BOTTOM:this._invalidateHasPercentY();break}};if(wasAuto!=this[s3]){switch(propData.name){case qx.OO.PROPERTY_MINWIDTH:case qx.OO.PROPERTY_MAXWIDTH:case qx.OO.PROPERTY_WIDTH:this._invalidateHasAutoX();break;case qx.OO.PROPERTY_MINHEIGHT:case qx.OO.PROPERTY_MAXHEIGHT:case qx.OO.PROPERTY_HEIGHT:this._invalidateHasAutoY();break}}};qx.Proto._unitDetectionPixelPercent=function(propData,propValue){var r=qx.ui.core.Widget.layoutPropertyTypes[propData.name];var s=r.dataType;var p=r.dataParsed;var v=r.dataValue;var s1=r.typePixel;var s2=r.typePercent;var s3=r.typeNull;var wasPercent=this[s2];switch(this[s]=this._evalUnitsPixelPercent(propValue)){case qx.ui.core.Widget.TYPE_PIXEL:this[s1]=true;this[s2]=this[s3]=false;this[p]=this[v]=Math.round(propValue);break;case qx.ui.core.Widget.TYPE_PERCENT:this[s2]=true;this[s1]=this[s3]=false;this[p]=parseFloat(propValue);this[v]=null;break;default:this[s3]=true;this[s1]=this[s2]=false;this[p]=this[v]=null;break};if(wasPercent!=this[s2]){switch(propData.name){case qx.OO.PROPERTY_MINWIDTH:case qx.OO.PROPERTY_MAXWIDTH:case qx.OO.PROPERTY_WIDTH:case qx.OO.PROPERTY_LEFT:case qx.OO.PROPERTY_RIGHT:this._invalidateHasPercentX();break;case qx.OO.PROPERTY_MINHEIGHT:case qx.OO.PROPERTY_MAXHEIGHT:case qx.OO.PROPERTY_HEIGHT:case qx.OO.PROPERTY_TOP:case qx.OO.PROPERTY_BOTTOM:this._invalidateHasPercentY();break}}};if(qx.sys.Client.getInstance().isMshtml()){qx.ui.core.Widget.inlineEventMap={input:"onpropertychange",select:"onselect",scroll:"onscroll",focus:"onfocus",blur:"onblur"};qx.Proto.enableInlineEvent=function(vEventName){var vEventType=qx.ui.core.Widget.inlineEventMap[vEventName];if(!this._inlineEvents){this._inlineEvents=[vEventType]}else{this._inlineEvents.push(vEventType)};if(this._isCreated){this.getElement()[vEventType]=qx.ui.core.Widget.__oninlineevent}};qx.Proto.disableInlineEvent=function(vEventName){var vEventType=qx.ui.core.Widget.inlineEventMap[vEventName];if(this._inlineEvents){qx.lang.Array.remove(this._inlineEvents,vEventType)};if(this._isCreated){this.getElement()[vEventType]=null}};qx.Proto._addInlineEvents=function(vElement){if(this._inlineEvents){for(var i=0,a=this._inlineEvents,l=a.length;i<l;i++){vElement[a[i]]=qx.ui.core.Widget.__oninlineevent}}};qx.Proto._removeInlineEvents=function(vElement){if(this._inlineEvents){for(var i=0,a=this._inlineEvents,l=a.length;i<l;i++){vElement[a[i]]=null}}}}else{qx.Proto.enableInlineEvent=function(vEventName){if(!this._inlineEvents){this._inlineEvents=[vEventName]}else{this._inlineEvents.push(vEventName)};if(this._isCreated){this.getElement().addEventListener(vEventName,qx.ui.core.Widget.__oninlineevent,false)}};qx.Proto.disableInlineEvent=function(vEventName){if(this._inlineEvents){qx.lang.Array.remove(this._inlineEvents,vEventName)};if(this._isCreated){this.getElement().removeEventListener(vEventName,qx.ui.core.Widget.__oninlineevent,false)}};qx.Proto._addInlineEvents=function(vElement){if(this._inlineEvents){for(var i=0,a=this._inlineEvents,l=a.length;i<l;i++){vElement.addEventListener(a[i],qx.ui.core.Widget.__oninlineevent,false)}}};qx.Proto._removeInlineEvents=function(vElement){if(this._inlineEvents){for(var i=0,a=this._inlineEvents,l=a.length;i<l;i++){vElement.removeEventListener(a[i],qx.ui.core.Widget.__oninlineevent,false)}}}};qx.ui.core.Widget.__oninlineevent=function(e){if(!e){e=window.event};if(this.qx_Widget){return this.qx_Widget._oninlineevent(e)}};qx.Class.INLINE_EVENTTYPE="propertychange";qx.Class.INLINE_EVENTTYPE_PROPERTY="value";qx.Proto._oninlineevent=function(e){if(qx.ui.core.Widget._inFlushGlobalQueues){return};switch(e.type){case qx.ui.core.Widget.INLINE_EVENTTYPE:this._oninlineproperty(e);break;case qx.constant.Event.INPUT:this._oninlineinput(e);break;default:this.createDispatchEvent(e.type)}};qx.Proto._oninlineinput=function(e){this.createDispatchDataEvent(qx.constant.Event.INPUT,this.getComputedValue());if(e.stopPropagation){e.stopPropagation()};e.returnValue=-1};qx.Proto._oninlineproperty=function(e){switch(e.propertyName){case qx.ui.core.Widget.INLINE_EVENTTYPE_PROPERTY:if(!this._inValueProperty){this._oninlineinput(e)};break}};qx.Proto.getTopLevelWidget=function(){return this._hasParent?this.getParent().getTopLevelWidget():null};qx.Proto.moveSelfBefore=function(vBefore){this.getParent().addBefore(this,vBefore)};qx.Proto.moveSelfAfter=function(vAfter){this.getParent().addAfter(this,vAfter)};qx.Proto.moveSelfToBegin=function(){this.getParent().addAtBegin(this)};qx.Proto.moveSelfToEnd=function(){this.getParent().addAtEnd(this)};qx.Proto.getPreviousSibling=function(){var p=this.getParent();if(p==null){return null};var cs=p.getChildren();return cs[cs.indexOf(this)-1]};qx.Proto.getNextSibling=function(){var p=this.getParent();if(p==null){return null};var cs=p.getChildren();return cs[cs.indexOf(this)+1]};qx.Proto.getPreviousVisibleSibling=function(){if(!this._hasParent){return null};var vChildren=this.getParent().getVisibleChildren();return vChildren[vChildren.indexOf(this)-1]};qx.Proto.getNextVisibleSibling=function(){if(!this._hasParent){return null};var vChildren=this.getParent().getVisibleChildren();return vChildren[vChildren.indexOf(this)+1]};qx.Proto.getPreviousActiveSibling=function(vIgnoreClasses){var vPrev=qx.ui.core.Widget.getActiveSiblingHelper(this,this.getParent(),-1,vIgnoreClasses,null);return vPrev?vPrev:this.getParent().getLastActiveChild()};qx.Proto.getNextActiveSibling=function(vIgnoreClasses){var vNext=qx.ui.core.Widget.getActiveSiblingHelper(this,this.getParent(),1,vIgnoreClasses,null);return vNext?vNext:this.getParent().getFirstActiveChild()};qx.Proto.isFirstChild=function(){return this._hasParent&&this.getParent().getFirstChild()==this};qx.Proto.isLastChild=function(){return this._hasParent&&this.getParent().getLastChild()==this};qx.Proto.isFirstVisibleChild=function(){return this._hasParent&&this.getParent().getFirstVisibleChild()==this};qx.Proto.isLastVisibleChild=function(){return this._hasParent&&this.getParent().getLastVisibleChild()==this};qx.Proto._modifyEnabled=function(propValue,propOldValue,propData){if(propValue){this.removeState(qx.ui.core.Widget.STATE_DISABLED)}else{this.addState(qx.ui.core.Widget.STATE_DISABLED);this.removeState(qx.ui.core.Widget.STATE_OVER);if(qx.OO.isAvailable("qx.ui.form.Button")){this.removeState(qx.ui.form.Button.STATE_ABANDONED);this.removeState(qx.ui.form.Button.STATE_PRESSED)}};return true};qx.Proto.hasState=function(vState){return this._states[vState]?true:false};qx.Proto.addState=function(vState){if(!this._states[vState]){this._states[vState]=true;if(this._hasParent){qx.ui.core.Widget.addToGlobalStateQueue(this)}}};qx.Proto.removeState=function(vState){if(this._states[vState]){delete this._states[vState];if(this._hasParent){qx.ui.core.Widget.addToGlobalStateQueue(this)}}};qx.Proto.setState=function(state,enabled){if(enabled){this.addState(state)}else{this.removeState(state)}};qx.Proto._applyInitialAppearance=function(){var vAppearance=this.getAppearance();if(vAppearance){try{var r=qx.manager.object.AppearanceManager.getInstance().getAppearanceTheme().initialFrom(vAppearance);if(r){this.set(r)}}catch(ex){this.error("Could not apply initial appearance",ex)}}};qx.Proto._applyStateAppearance=function(){this._applyStateStyleFocus(this._states);var vAppearance=this.getAppearance();if(vAppearance){try{var r=qx.manager.object.AppearanceManager.getInstance().getAppearanceTheme().stateFrom(vAppearance,this._states);if(r){this.set(r)}}catch(ex){this.error("Could not apply state appearance",ex)}}};qx.Proto._resetAppearanceThemeWrapper=function(vNewAppearanceTheme,vOldAppearanceTheme){var vAppearance=this.getAppearance();if(vAppearance){var vOldAppearanceThemeObject=qx.manager.object.AppearanceManager.getInstance().getThemeById(vOldAppearanceTheme);var vNewAppearanceThemeObject=qx.manager.object.AppearanceManager.getInstance().getThemeById(vNewAppearanceTheme);var vOldAppearanceProperties=qx.lang.Object.mergeWith(vOldAppearanceThemeObject.initialFrom(vAppearance),vOldAppearanceThemeObject.stateFrom(vAppearance,this._states));var vNewAppearanceProperties=qx.lang.Object.mergeWith(vNewAppearanceThemeObject.initialFrom(vAppearance),vNewAppearanceThemeObject.stateFrom(vAppearance,this._states));for(var vProp in vOldAppearanceProperties){if(!(vProp in vNewAppearanceProperties)){this[qx.OO.resetter[vProp]]()}};this.set(vNewAppearanceProperties)}};if(qx.sys.Client.getInstance().isMshtml()){qx.Proto._applyStateStyleFocus=function(vStates){}}else if(qx.sys.Client.getInstance().isGecko()){qx.Proto._applyStateStyleFocus=function(vStates){if(vStates.focused){if(!qx.event.handler.FocusHandler.mouseFocus&&!this.getHideFocus()){this.setStyleProperty("MozOutline",qx.ui.core.Widget.FOCUS_OUTLINE)}}else{this.removeStyleProperty("MozOutline")}}}else{qx.Proto._applyStateStyleFocus=function(vStates){if(vStates.focused){if(!qx.event.handler.FocusHandler.mouseFocus&&!this.getHideFocus()){this.setStyleProperty("outline",qx.ui.core.Widget.FOCUS_OUTLINE)}}else{this.removeStyleProperty("outline")}}};qx.Proto.addToStateQueue=function(){qx.ui.core.Widget.addToGlobalStateQueue(this)};qx.Proto.recursiveAddToStateQueue=function(){this.addToStateQueue()};qx.Proto._modifyAppearance=function(propValue,propOldValue,propData){var vAppearanceThemeObject=qx.manager.object.AppearanceManager.getInstance().getAppearanceTheme();var vNewAppearanceProperties=vAppearanceThemeObject.initialFrom(propValue);if(this.isCreated()){qx.lang.Object.mergeWith(vNewAppearanceProperties,vAppearanceThemeObject.stateFrom(propValue,this._states))};if(propOldValue){var vOldAppearanceProperties=vAppearanceThemeObject.initialFrom(propOldValue);if(this.isCreated()){qx.lang.Object.mergeWith(vOldAppearanceProperties,vAppearanceThemeObject.stateFrom(propOldValue,this._states))};for(var vProp in vOldAppearanceProperties){if(!(vProp in vNewAppearanceProperties)){this[qx.OO.resetter[vProp]]()}}};this.set(vNewAppearanceProperties);return true};qx.Proto._recursiveAppearanceThemeUpdate=function(vNewAppearanceTheme,vOldAppearanceTheme){try{this._resetAppearanceThemeWrapper(vNewAppearanceTheme,vOldAppearanceTheme)}catch(ex){this.error("Failed to update appearance theme",ex)}};qx.Proto._applyElementData=function(el){};qx.Proto.setHtmlProperty=function(propName,propValue){if(!this._htmlProperties){this._htmlProperties={}};this._htmlProperties[propName]=propValue;if(this._isCreated&&this.getElement()[propName]!=propValue){this.getElement()[propName]=propValue};return true};if(qx.sys.Client.getInstance().isMshtml()){qx.Proto.removeHtmlProperty=function(propName){if(!this._htmlProperties){return};delete this._htmlProperties[propName];if(this._isCreated){this.getElement().removeAttribute(propName)};return true}}else{qx.Proto.removeHtmlProperty=function(propName){if(!this._htmlProperties){return};delete this._htmlProperties[propName];if(this._isCreated){this.getElement().removeAttribute(propName);delete this.getElement()[propName]};return true}};qx.Proto.getHtmlProperty=function(propName){if(!this._htmlProperties){return qx.constant.Core.EMPTY};return this._htmlProperties[propName]||qx.constant.Core.EMPTY};qx.Proto._applyHtmlProperties=function(vElement){var vProperties=this._htmlProperties;if(vProperties){var propName;for(propName in vProperties){vElement[propName]=vProperties[propName]}}};qx.Proto.setHtmlAttribute=function(propName,propValue){if(!this._htmlAttributes){this._htmlAttributes={}};this._htmlAttributes[propName]=propValue;if(this._isCreated){this.getElement().setAttribute(propName,propValue)};return true};qx.Proto.removeHtmlAttribute=function(propName){if(!this._htmlAttributes){return};delete this._htmlAttributes[propName];if(this._isCreated){this.getElement().removeAttribute(propName)};return true};qx.Proto.getHtmlAttribute=function(propName){if(!this._htmlAttributes){return qx.constant.Core.EMPTY};return this._htmlAttributes[propName]||qx.constant.Core.EMPTY};qx.Proto._applyHtmlAttributes=function(vElement){var vAttributes=this._htmlAttributes;if(vAttributes){var propName;for(propName in vAttributes){vElement.setAttribute(propName,vAttributes[propName])}}};qx.Proto.getStyleProperty=function(propName){return this._styleProperties[propName]||qx.constant.Core.EMPTY};qx.Proto.setStyleProperty=function(propName,propValue){this._styleProperties[propName]=propValue;if(this._isCreated){switch(propName){case qx.constant.Style.PROPERTY_ZINDEX:case qx.constant.Style.PROPERTY_FILTER:case qx.constant.Style.PROPERTY_DISPLAY:case qx.constant.Style.PROPERTY_VISIBILITY:var vElement=this.getElement();break;default:var vElement=this._getTargetNode()};if(vElement){vElement.style[propName]=propValue}};return true};qx.Proto.removeStyleProperty=function(propName){delete this._styleProperties[propName];if(this._isCreated){switch(propName){case qx.constant.Style.PROPERTY_ZINDEX:case qx.constant.Style.PROPERTY_FILTER:case qx.constant.Style.PROPERTY_DISPLAY:case qx.constant.Style.PROPERTY_VISIBILITY:var vElement=this.getElement();break;default:var vElement=this._getTargetNode()};if(vElement){vElement.style[propName]=qx.constant.Core.EMPTY}};return true};qx.Proto._applyStyleProperties=function(vElement){var vProperties=this._styleProperties;var propName;var vBaseElement=vElement;var vTargetElement=this._getTargetNode();for(propName in vProperties){switch(propName){case qx.OO.PROPERTY_ZINDEX:case qx.constant.Style.PROPERTY_FILTER:vElement=vBaseElement;break;default:vElement=vTargetElement};vElement.style[propName]=vProperties[propName]}};qx.Proto.isFocusable=function(){return this.isEnabled()&&this.isSeeable()&&this.getTabIndex()>=0};qx.Proto.isFocusRoot=function(){return false};qx.Proto.getFocusRoot=function(){if(this._hasParent){return this.getParent().getFocusRoot()};return null};qx.Proto.getActiveChild=function(){var vRoot=this.getFocusRoot();if(vRoot){return vRoot.getActiveChild()};return null};qx.Proto._ontabfocus=qx.util.Return.returnTrue;qx.Proto._modifyFocused=function(propValue,propOldValue,propData){if(!this.isCreated()){return true};var vFocusRoot=this.getFocusRoot();if(vFocusRoot){if(propValue){vFocusRoot.setFocusedChild(this);this._visualizeFocus()}else{if(vFocusRoot.getFocusedChild()==this){vFocusRoot.setFocusedChild(null)};this._visualizeBlur()}};return true};qx.Proto._visualizeBlur=function(){if(this.getEnableElementFocus()&&(!this.getFocusRoot().getFocusedChild()||(this.getFocusRoot().getFocusedChild()&&this.getFocusRoot().getFocusedChild().getEnableElementFocus()))){try{this.getElement().blur()}catch(ex){}};this.removeState(qx.ui.core.Widget.STATE_FOCUSED);return true};qx.Proto._visualizeFocus=function(){if(!qx.event.handler.FocusHandler.mouseFocus&&this.getEnableElementFocus()){try{this.getElement().focus()}catch(ex){}};this.addState(qx.ui.core.Widget.STATE_FOCUSED);return true};qx.Proto.focus=function(){delete qx.event.handler.FocusHandler.mouseFocus;this.setFocused(true)};qx.Proto.blur=function(){delete qx.event.handler.FocusHandler.mouseFocus;this.setFocused(false)};qx.Proto._modifyCapture=function(propValue,propOldValue,propData){var vMgr=qx.event.handler.EventHandler.getInstance();if(propOldValue){vMgr.setCaptureWidget(null)}else if(propValue){vMgr.setCaptureWidget(this)};return true};qx.Proto._modifyZIndex=function(propValue,propOldValue,propData){return this.setStyleProperty(propData.name,propValue)};qx.ui.core.Widget.TAB_PROPERTY_UNSELECTABLE="unselectable";qx.ui.core.Widget.TAB_PROPERTY_TABINDEX="tabIndex";qx.ui.core.Widget.TAB_PROPERTY_USERFOCUS="userFocus";qx.ui.core.Widget.TAB_PROPERTY_MOZUSERFOCUS="MozUserFocus";qx.ui.core.Widget.TAB_VALUE_IGNORE="ignore";qx.ui.core.Widget.TAB_VALUE_NORMAL="normal";qx.ui.core.Widget.TAB_VALUE_ON="on";if(qx.sys.Client.getInstance().isMshtml()){qx.Proto._modifyTabIndex=function(propValue,propOldValue,propData){if(propValue<0||!this.getEnabled()){this.setHtmlProperty(qx.ui.core.Widget.TAB_PROPERTY_UNSELECTABLE,qx.ui.core.Widget.TAB_VALUE_ON)}else{this.removeHtmlProperty(qx.ui.core.Widget.TAB_PROPERTY_UNSELECTABLE)};this.setHtmlProperty(qx.ui.core.Widget.TAB_PROPERTY_TABINDEX,propValue<0?-1:1);return true}}else if(qx.sys.Client.getInstance().isGecko()){qx.Proto._modifyTabIndex=function(propValue,propOldValue,propData){this.setStyleProperty(qx.ui.core.Widget.TAB_PROPERTY_MOZUSERFOCUS,(propValue<0?qx.ui.core.Widget.TAB_VALUE_IGNORE:qx.ui.core.Widget.TAB_VALUE_NORMAL));this.setStyleProperty(qx.ui.core.Widget.TAB_PROPERTY_USERFOCUS,(propValue<0?qx.ui.core.Widget.TAB_VALUE_IGNORE:qx.ui.core.Widget.TAB_VALUE_NORMAL));return true}}else{qx.Proto._modifyTabIndex=function(propValue,propOldValue,propData){this.setStyleProperty(qx.ui.core.Widget.TAB_PROPERTY_USERFOCUS,(propValue<0?qx.ui.core.Widget.TAB_VALUE_IGNORE:qx.ui.core.Widget.TAB_VALUE_NORMAL));if(propValue<0||!this.getEnabled()){this.setHtmlProperty(qx.ui.core.Widget.TAB_PROPERTY_UNSELECTABLE,qx.ui.core.Widget.TAB_VALUE_ON)}else{this.removeHtmlProperty(qx.ui.core.Widget.TAB_PROPERTY_UNSELECTABLE)};this.setHtmlProperty(qx.ui.core.Widget.TAB_PROPERTY_TABINDEX,propValue<0?-1:1);return true}};qx.Proto.setCssClassName=function(propValue){this.setHtmlProperty(qx.ui.core.Widget.PROPERTY_CLASSNAME,propValue)};qx.Proto.getCssClassName=function(){return this.getHtmlProperty(qx.ui.core.Widget.PROPERTY_CLASSNAME)};qx.Proto.getWidgetFromPoint=function(x,y){var ret=this.getWidgetFromPointHelper(x,y);return ret&&ret!=this?ret:null};qx.Proto.getWidgetFromPointHelper=function(x,y){return this};qx.ui.core.Widget.SEL_PROPERTY_UNSELECTABLE="unselectable";qx.ui.core.Widget.SEL_PROPERTY_USERSELECT="userSelect";qx.ui.core.Widget.SEL_PROPERTY_MOZUSERSELECT="MozUserSelect";qx.ui.core.Widget.SEL_PROPERTY_KHTMLUSERSELECT="KhtmlUserSelect";qx.ui.core.Widget.SEL_VALUE_ON="on";if(qx.sys.Client.getInstance().isMshtml()){qx.Proto._modifySelectable=function(propValue,propOldValue,propData){if(propValue){return this.removeHtmlProperty(qx.ui.core.Widget.SEL_PROPERTY_UNSELECTABLE)}else{return this.setHtmlProperty(qx.ui.core.Widget.SEL_PROPERTY_UNSELECTABLE,qx.ui.core.Widget.SEL_VALUE_ON)}}}else if(qx.sys.Client.getInstance().isGecko()){qx.Proto._modifySelectable=function(propValue,propOldValue,propData){if(propValue){this.removeStyleProperty(qx.ui.core.Widget.SEL_PROPERTY_MOZUSERSELECT)}else{this.setStyleProperty(qx.ui.core.Widget.SEL_PROPERTY_MOZUSERSELECT,qx.constant.Core.NONE)};return true}}else if(qx.sys.Client.getInstance().isOpera()){qx.Proto._modifySelectable=function(propValue,propOldValue,propData){return true}}else if(qx.sys.Client.getInstance().isKhtml()||qx.sys.Client.getInstance().isWebkit()){qx.Proto._modifySelectable=function(propValue,propOldValue,propData){if(propValue){this.removeStyleProperty(qx.ui.core.Widget.SEL_PROPERTY_KHTMLUSERSELECT)}else{this.setStyleProperty(qx.ui.core.Widget.SEL_PROPERTY_KHTMLUSERSELECT,qx.constant.Core.NONE)};return true}}else{qx.Proto._modifySelectable=function(propValue,propOldValue,propData){if(propValue){return this.removeStyleProperty(qx.ui.core.Widget.SEL_PROPERTY_USERSELECT)}else{this.setStyleProperty(qx.ui.core.Widget.SEL_PROPERTY_USERSELECT,qx.constant.Core.NONE)}}};qx.ui.core.Widget.OPACITY_FILTER_START="Alpha(Opacity=";qx.ui.core.Widget.OPACITY_FILTER_STOP=")";qx.ui.core.Widget.OPACITY_FILTER_REGEXP=/Alpha\(Opacity=([0-9]{1,3})\)/;qx.ui.core.Widget.OPACITY_PROPERTY_CSS3="opacity";qx.ui.core.Widget.OPACITY_PROPERTY_MOZ="MozOpacity";qx.ui.core.Widget.OPACITY_PROPERTY_KHTML="KhtmlOpacity";if(qx.sys.Client.getInstance().isMshtml()){qx.Proto._modifyOpacity=function(propValue,propOldValue,propData){if(propValue==null||propValue>=1||propValue<0){this.removeStyleProperty(qx.constant.Style.PROPERTY_FILTER)}else if(qx.util.Validation.isValidNumber(propValue)){this.setStyleProperty(qx.constant.Style.PROPERTY_FILTER,(qx.ui.core.Widget.OPACITY_FILTER_START+Math.round(propValue*100)+qx.ui.core.Widget.OPACITY_FILTER_STOP))}else{throw new Error("Unsupported opacity value: "+propValue)};return true}}else{qx.Proto._modifyOpacity=function(propValue,propOldValue,propData){if(propValue==null||propValue>1){if(qx.sys.Client.getInstance().isGecko()){this.removeStyleProperty(qx.ui.core.Widget.OPACITY_PROPERTY_MOZ)}else if(qx.sys.Client.getInstance().isKhtml()){this.removeStyleProperty(qx.ui.core.Widget.OPACITY_PROPERTY_KHTML)};this.removeStyleProperty(qx.ui.core.Widget.OPACITY_PROPERTY_CSS3)}else if(qx.util.Validation.isValidNumber(propValue)){propValue=qx.lang.Number.limit(propValue,0,1);if(qx.sys.Client.getInstance().isGecko()){this.setStyleProperty(qx.ui.core.Widget.OPACTIY_PROPERTY_MOZ,propValue)}else if(qx.sys.Client.getInstance().isKhtml()){this.setStyleProperty(qx.ui.core.Widget.OPACITY_PROPERTY_KHTML,propValue)};this.setStyleProperty(qx.ui.core.Widget.OPACITY_PROPERTY_CSS3,propValue)};return true}};qx.ui.core.Widget.CURSOR_PROPERTY="cursor";qx.ui.core.Widget.CURSOR_VALUE_POINTER="pointer";qx.ui.core.Widget.CURSOR_VALUE_HAND="hand";qx.Proto._modifyCursor=function(propValue,propOldValue,propData){if(propValue){if(propValue==qx.ui.core.Widget.CURSOR_VALUE_POINTER&&qx.sys.Client.getInstance().isMshtml()){this.setStyleProperty(qx.ui.core.Widget.CURSOR_PROPERTY,qx.ui.core.Widget.CURSOR_VALUE_HAND)}else{this.setStyleProperty(qx.ui.core.Widget.CURSOR_PROPERTY,propValue)}}else{this.removeStyleProperty(qx.ui.core.Widget.CURSOR_PROPERTY)};return true};qx.ui.core.Widget.BACKGROUNDIMG_PROPERTY="backgroundImage";qx.ui.core.Widget.BACKGROUNDIMG_VALUE_START="url(";qx.ui.core.Widget.BACKGROUNDIMG_VALUE_STOP=")";qx.ui.core.Widget.BACKGROUNDIMG_REGEXP1=/^url\(/i;qx.ui.core.Widget.BACKGROUNDIMG_REGEXP2=/\)$/;qx.Proto._modifyBackgroundImage=function(propValue,propOldValue,propData){return qx.util.Validation.isValidString(propValue)?this.setStyleProperty(qx.ui.core.Widget.BACKGROUNDIMG_PROPERTY,qx.ui.core.Widget.BACKGROUNDIMG_VALUE_START+qx.manager.object.AliasManager.getInstance().resolvePath(propValue)+qx.ui.core.Widget.BACKGROUNDIMG_VALUE_STOP):this.removeStyleProperty(qx.ui.core.Widget.BACKGROUNDIMG_PROPERTY)};qx.ui.core.Widget.CLIP_PROPERTY="clip";qx.ui.core.Widget.CLIP_VALUE_START="rect(";qx.ui.core.Widget.CLIP_VALUE_STOP=")";qx.Proto._modifyClip=function(propValue,propOldValue,propData){return this._compileClipString()};qx.Proto._compileClipString=function(){var vLeft=this.getClipLeft();var vTop=this.getClipTop();var vWidth=this.getClipWidth();var vHeight=this.getClipHeight();var vRight,vBottom;if(vLeft==null){vRight=(vWidth==null?qx.constant.Core.AUTO:vWidth+qx.constant.Core.PIXEL);vLeft=qx.constant.Core.AUTO}else{vRight=(vWidth==null?qx.constant.Core.AUTO:vLeft+vWidth+qx.constant.Core.PIXEL);vLeft=vLeft+qx.constant.Core.PIXEL};if(vTop==null){vBottom=(vHeight==null?qx.constant.Core.AUTO:vHeight+qx.constant.Core.PIXEL);vTop=qx.constant.Core.AUTO}else{vBottom=(vHeight==null?qx.constant.Core.AUTO:vTop+vHeight+qx.constant.Core.PIXEL);vTop=vTop+qx.constant.Core.PIXEL};return this.setStyleProperty(qx.ui.core.Widget.CLIP_PROPERTY,(qx.ui.core.Widget.CLIP_VALUE_START+vTop+qx.constant.Core.COMMA+vRight+qx.constant.Core.COMMA+vBottom+qx.constant.Core.COMMA+vLeft+qx.ui.core.Widget.CLIP_VALUE_STOP))};qx.ui.core.Widget.initOverflow=function(){if(qx.ui.core.Widget.initOverflowDone){return};var t=document.createElement(qx.constant.Tags.DIV);var s=t.style;s.height=s.width="100px";s.overflow="scroll";document.body.appendChild(t);var c=qx.dom.DomDimension.getScrollBarSizeRight(t);if(c){qx.ui.core.Widget.SCROLLBAR_SIZE=c};document.body.removeChild(t);qx.ui.core.Widget.initOverflowDone=true};qx.ui.core.Widget.SCROLL_PROPERTY="overflow";qx.ui.core.Widget.SCROLL_PROPERTYX="overflowX";qx.ui.core.Widget.SCROLL_PROPERTYY="overflowY";qx.ui.core.Widget.SCROLL_VALUE_AUTO="auto";qx.ui.core.Widget.SCROLL_VALUE_HIDDEN="hidden";qx.ui.core.Widget.SCROLL_VALUE_SCROLL="scroll";qx.ui.core.Widget.SCROLL_VALUE_SCROLLX="scrollX";qx.ui.core.Widget.SCROLL_VALUE_SCROLLY="scrollY";qx.ui.core.Widget.SCROLL_VALUE_MOZNONE="-moz-scrollbars-none";qx.ui.core.Widget.SCROLL_VALUE_MOZSCROLLX="-moz-scrollbars-horizontal";qx.ui.core.Widget.SCROLL_VALUE_MOZSCROLLY="-moz-scrollbars-vertical";if(qx.sys.Client.getInstance().isGecko()){qx.Proto._modifyOverflow=function(propValue,propOldValue,propData){var pv=propValue;var pn=propData.name;switch(pv){case qx.ui.core.Widget.SCROLL_VALUE_HIDDEN:pv=qx.ui.core.Widget.SCROLL_VALUE_MOZNONE;break;case qx.ui.core.Widget.SCROLL_VALUE_SCROLLX:pv=qx.ui.core.Widget.SCROLL_VALUE_MOZSCROLLX;break;case qx.ui.core.Widget.SCROLL_VALUE_SCROLLY:pv=qx.ui.core.Widget.SCROLL_VALUE_MOZSCROLLY;break};return this._applyOverflow(pn,pv,propValue,propOldValue)}}else if(qx.sys.Client.getInstance().isMshtml()){qx.Proto._modifyOverflow=function(propValue,propOldValue,propData){var pv=propValue;var pn=propData.name;switch(pv){case qx.ui.core.Widget.SCROLL_VALUE_SCROLLX:pn=qx.ui.core.Widget.SCROLL_PROPERTYX;pv=qx.ui.core.Widget.SCROLL_VALUE_SCROLL;break;case qx.ui.core.Widget.SCROLL_VALUE_SCROLLY:pn=qx.ui.core.Widget.SCROLL_PROPERTYY;pv=qx.ui.core.Widget.SCROLL_VALUE_SCROLL;break};var a=[qx.ui.core.Widget.SCROLL_PROPERTY,qx.ui.core.Widget.SCROLL_PROPERTYX,qx.ui.core.Widget.SCROLL_PROPERTYY];for(var i=0;i<a.length;i++){if(a[i]!=pn){this.removeStyleProperty(a[i])}};return this._applyOverflow(pn,pv,propValue,propOldValue)}}else{qx.Proto._modifyOverflow=function(propValue,propOldValue,propData){var pv=propValue;var pn=propData.name;switch(pv){case qx.ui.core.Widget.SCROLL_VALUE_SCROLLX:case qx.ui.core.Widget.SCROLL_VALUE_SCROLLY:pv=qx.ui.core.Widget.SCROLL_VALUE_SCROLL;break};return this._applyOverflow(pn,pv,propValue,propOldValue)}};qx.Proto._applyOverflow=function(pn,pv,propValue,propOldValue){this.setStyleProperty(pn,pv);this._invalidateFrameWidth();this._invalidateFrameHeight();return true};qx.Proto.getOverflowX=function(){var vOverflow=this.getOverflow();return vOverflow==qx.ui.core.Widget.SCROLL_VALUE_SCROLLY?qx.ui.core.Widget.SCROLL_VALUE_HIDDEN:vOverflow};qx.Proto.getOverflowY=function(){var vOverflow=this.getOverflow();return vOverflow==qx.ui.core.Widget.SCROLL_VALUE_SCROLLX?qx.ui.core.Widget.SCROLL_VALUE_HIDDEN:vOverflow};if(qx.sys.Client.getInstance().isMshtml()){qx.Proto._modifyHideFocus=function(propValue,propOldValue,propData){this.setHtmlProperty(propData.name,propValue);return true}};qx.Proto._modifyBackgroundColor=function(propValue,propOldValue,propData){if(propOldValue){propOldValue.remove(this)};if(propValue){this._applyBackgroundColor(propValue.getStyle());propValue.add(this)}else{this._resetBackgroundColor()};return true};qx.Proto._modifyColor=function(propValue,propOldValue,propData){if(propOldValue){propOldValue.remove(this)};if(propValue){this._applyColor(propValue.getStyle());propValue.add(this)}else{this._resetColor()};return true};qx.Proto._updateColors=function(vColor,vNewValue){if(this.getColor()==vColor){this._applyColor(vNewValue)};if(this.getBackgroundColor()==vColor){this._applyBackgroundColor(vNewValue)}};qx.Proto._applyColor=function(vNewValue){this.setStyleProperty(qx.constant.Style.PROPERTY_COLOR,vNewValue)};qx.Proto._applyBackgroundColor=function(vNewValue){this.setStyleProperty(qx.constant.Style.PROPERTY_BACKGROUNDCOLOR,vNewValue)};qx.Proto._resetColor=function(vNewValue){this.removeStyleProperty(qx.constant.Style.PROPERTY_COLOR)};qx.Proto._resetBackgroundColor=function(){this.removeStyleProperty(qx.constant.Style.PROPERTY_BACKGROUNDCOLOR)};qx.Proto._cachedBorderTop=0;qx.Proto._cachedBorderRight=0;qx.Proto._cachedBorderBottom=0;qx.Proto._cachedBorderLeft=0;qx.Proto._modifyBorder=function(propValue,propOldValue,propData){var vOldTop=this._cachedBorderTop;var vOldRight=this._cachedBorderRight;var vOldBottom=this._cachedBorderBottom;var vOldLeft=this._cachedBorderLeft;if(propOldValue){propOldValue.removeListenerWidget(this)};if(propValue){propValue.addListenerWidget(this);this._cachedBorderTop=propValue.getTopWidth();this._cachedBorderRight=propValue.getRightWidth();this._cachedBorderBottom=propValue.getBottomWidth();this._cachedBorderLeft=propValue.getLeftWidth()}else{this._cachedBorderTop=this._cachedBorderRight=this._cachedBorderBottom=this._cachedBorderLeft=0};if((vOldLeft+vOldRight)!=(this._cachedBorderLeft+this._cachedBorderRight)){this._invalidateFrameWidth()};this.addToQueue(qx.ui.core.Widget.PROPERTY_BORDERX);if((vOldTop+vOldBottom)!=(this._cachedBorderTop+this._cachedBorderBottom)){this._invalidateFrameHeight()};this.addToQueue(qx.ui.core.Widget.PROPERTY_BORDERY);return true};qx.Proto.getCachedBorderTop=function(){return this._cachedBorderTop};qx.Proto.getCachedBorderRight=function(){return this._cachedBorderRight};qx.Proto.getCachedBorderBottom=function(){return this._cachedBorderBottom};qx.Proto.getCachedBorderLeft=function(){return this._cachedBorderLeft};qx.Proto._updateBorder=function(vEdge){var vBorder=this.getBorder();var vEdgeUp=qx.lang.String.toFirstUp(vEdge);var vNewValue=vBorder[qx.constant.Core.GET+vEdgeUp+"Width"]();var vCacheName="_cachedBorder"+vEdgeUp;var vWidthChanged=this[vCacheName]!=vNewValue;this[vCacheName]=vNewValue;switch(vEdge){case qx.renderer.border.Border.POSITION_LEFT:case qx.renderer.border.Border.POSITION_RIGHT:if(vWidthChanged){this.addToJobQueue(qx.ui.core.Widget.PROPERTY_BORDERWIDTHX)};this.addToJobQueue(qx.ui.core.Widget.PROPERTY_BORDERX);break;case qx.renderer.border.Border.POSITION_TOP:case qx.renderer.border.Border.POSITION_BOTTOM:if(vWidthChanged){this.addToJobQueue(qx.ui.core.Widget.PROPERTY_BORDERWIDTHY)};this.addToJobQueue(qx.ui.core.Widget.PROPERTY_BORDERY);break}};qx.Proto._modifyPaddingX=function(propValue,propOldValue,propData){this._invalidateFrameWidth();return true};qx.Proto._modifyPaddingY=function(propValue,propOldValue,propData){this._invalidateFrameHeight();return true};qx.Proto._clonePropertyIgnoreList="parent,element,visible";qx.Proto.clone=function(cloneRecursive,customPropertyList){var cloneInstance=new this.constructor;var propertyName;var propertyList=[];var propertyIngoreList=this._clonePropertyIgnoreList.split(qx.constant.Core.COMMA);var sourcePropertyList=qx.util.Validation.isValid(customPropertyList)?customPropertyList:this._properties.split(qx.constant.Core.COMMA);var sourcePropertyListLength=sourcePropertyList.length-1;do{propertyName=sourcePropertyList[sourcePropertyListLength];if(!qx.lang.Array.contains(propertyIngoreList,propertyName)){propertyList.push(propertyName)}}while(sourcePropertyListLength--);propertyListLength=propertyList.length-1;do{propertyName=qx.lang.String.toFirstUp(propertyList[propertyListLength]);cloneInstance[qx.constant.Core.SET+propertyName](this[qx.constant.Core.GET+propertyName]())}while(propertyListLength--);if(qx.lang.Array.contains(sourcePropertyList,"parent")){var myParent=this.getParent();if(myParent){cloneInstance.setParent(myParent)}};if(cloneRecursive){this._cloneRecursive(cloneInstance)};return cloneInstance};qx.Proto._cloneRecursive=function(cloneInstance){};qx.Proto.execute=function(){var vCommand=this.getCommand();if(vCommand){vCommand.execute(this)};this.createDispatchEvent(qx.constant.Event.EXECUTE)};qx.Proto._visualPropertyCheck=function(){if(!this.isCreated()){throw new Error("Element must be created previously!")}};qx.Proto.setScrollLeft=function(nScrollLeft){this._visualPropertyCheck();this._getTargetNode().scrollLeft=nScrollLeft};qx.Proto.setScrollTop=function(nScrollTop){this._visualPropertyCheck();this._getTargetNode().scrollTop=nScrollTop};qx.Proto.getOffsetLeft=function(){this._visualPropertyCheck();return qx.dom.DomOffset.getLeft(this.getElement())};qx.Proto.getOffsetTop=function(){this._visualPropertyCheck();return qx.dom.DomOffset.getTop(this.getElement())};qx.Proto.getScrollLeft=function(){this._visualPropertyCheck();return this._getTargetNode().scrollLeft};qx.Proto.getScrollTop=function(){this._visualPropertyCheck();return this._getTargetNode().scrollTop};qx.Proto.getClientWidth=function(){this._visualPropertyCheck();return this._getTargetNode().clientWidth};qx.Proto.getClientHeight=function(){this._visualPropertyCheck();return this._getTargetNode().clientHeight};qx.Proto.getOffsetWidth=function(){this._visualPropertyCheck();return this.getElement().offsetWidth};qx.Proto.getOffsetHeight=function(){this._visualPropertyCheck();return this.getElement().offsetHeight};qx.Proto.getScrollWidth=function(){this._visualPropertyCheck();return this.getElement().scrollWidth};qx.Proto.getScrollHeight=function(){this._visualPropertyCheck();return this.getElement().scrollHeight};qx.Proto.scrollIntoView=function(vAlignTopLeft){this.scrollIntoViewX(vAlignTopLeft);this.scrollIntoViewY(vAlignTopLeft)};qx.Proto.scrollIntoViewX=function(vAlignLeft){if(!this._isCreated||!this._isDisplayable){return false};return qx.dom.DomScrollIntoView.scrollX(this.getElement(),vAlignLeft)};qx.Proto.scrollIntoViewY=function(vAlignTop){if(!this._isCreated||!this._isDisplayable){return false};return qx.dom.DomScrollIntoView.scrollY(this.getElement(),vAlignTop)};qx.Proto.supportsDrop=function(vDragCache){return true};qx.OO.addProperty({name:'fadeSteps',type:qx.constant.Type.NUMBER,allowNull:false,defaultValue:10});qx.OO.addProperty({name:'fadeTime',type:qx.constant.Type.NUMBER,allowNull:false,defaultValue:400});qx.OO.addProperty({name:'fadeInterval',type:qx.constant.Type.NUMBER,allowNull:false,defaultValue:40});qx.OO.addProperty({name:'fadeCounter',type:qx.constant.Type.NUMBER,allowNull:false,defaultValue:0});qx.OO.addProperty({name:'fadeUnit',type:qx.constant.Type.NUMBER,allowNull:false,defaultValue:10});qx.OO.addProperty({name:'fadeMax',type:qx.constant.Type.NUMBER,allowNull:false,defaultValue:100});qx.ui.core.Widget.FADE_IN='FADE_IN';qx.ui.core.Widget.FADE_OUT='FADE_OUT';qx.ui.core.Widget.FADE_FINISHED='FADE_FINISHED';qx.Proto.fadeIn=function(vSteps,vTime){if(vSteps)this.setFadeSteps(vSteps);if(vTime)this.setFadeTime(vTime);this._fadeMode=qx.ui.core.Widget.FADE_IN;var timer=this.getFadeTimer();timer.addEventListener(qx.constant.Event.INTERVAL,this._onInterval,this);timer.start()};qx.Proto.fadeOut=function(vSteps,vTime){if(vSteps)this.setFadeSteps(vSteps);if(vTime)this.setFadeTime(vTime);this._fadeMode=qx.ui.core.Widget.FADE_OUT;var timer=this.getFadeTimer();timer.addEventListener(qx.constant.Event.INTERVAL,this._onInterval,this);timer.start()};qx.Proto.getFadeTimer=function(){if(this._fadeTimer){this._fadeTimer.setInterval(this.getFadeInterval())}else{this._fadeTimer=new qx.client.Timer(this.getFadeInterval())};return this._fadeTimer};qx.Proto.resetFader=function(){this.setFadeCounter(0);if(this.getFadeTimer()){this._fadeTimer.stop();this._fadeTimer.dispose()};this._fadeTimer.dispose();this._fadeTimer=null};qx.Proto._onInterval=function(e){this.getFadeTimer().stop();var counter=this.getFadeCounter();switch(this._fadeMode){case qx.ui.core.Widget.FADE_IN:this.setFadeCounter(++counter);if(counter<=this.getFadeSteps()){this.setOpacity(this._computeFadeOpacity());this.getFadeTimer().restart()}else if(this.hasEventListeners(qx.ui.core.Widget.FADE_FINISHED)){this.createDispatchDataEvent(qx.ui.core.Widget.FADE_FINISHED,qx.ui.core.Widget.FADE_IN)};break;case qx.ui.core.Widget.FADE_OUT:this.setFadeCounter(--counter);if(counter>=0){this.setOpacity(this._computeFadeOpacity());this.getFadeTimer().restart()}else if(this.hasEventListeners(qx.ui.core.Widget.FADE_FINISHED)){this.createDispatchDataEvent(qx.ui.core.Widget.FADE_FINISHED,qx.ui.core.Widget.FADE_OUT)};break};qx.ui.core.Widget.flushGlobalQueues()};qx.Proto._modifyFadeSteps=function(propValue,propOldValue,propData){if(propValue<1)return;this.setFadeInterval(parseInt(this.getFadeTime()/propValue));this.setFadeUnit(Math.round(this.getFadeMax()/propValue));return true};qx.Proto._modifyFadeTime=function(propValue,propOldValue,propData){if(propValue<1)return;this.setFadeInterval(parseInt(propValue/this.getFadeSteps()));return true};qx.Proto._modifyFadeUnit=function(propValue,propOldValue,propData){this.setFadeSteps(Math.round(this.getFadeMax()/propValue));return true};qx.Proto._modifyFadeMax=function(propValue,propOldValue,propData){this.setFadeUnit(Math.round(propValue/this.getFadeSteps()));return true};qx.Proto._computeFadeOpacity=function(){var op=this.getFadeUnit()*this.getFadeCounter()/100;return (op)};qx.Proto.dispose=function(){if(this.getDisposed()){return};var vElement=this.getElement();if(vElement){this._removeInlineEvents(vElement);delete this._isCreated;vElement.qx_Widget=null;this._element=null;this._style=null};this._inlineEvents=null;this._element=null;this._style=null;this._borderElement=null;this._borderStyle=null;this._oldParent=null;delete this._styleProperties;delete this._htmlProperties;delete this._htmlAttributes;delete this._states;for(var i in this._jobQueue){delete this._jobQueue[i]};delete this._jobQueue;for(var i in this._layoutChanges){delete this._layoutChanges[i]};delete this._layoutChanges;if(this._fadeTimer){this._fadeTimer.dispose();this._fadeTimer=null};return qx.core.Target.prototype.dispose.call(this)};qx.OO.defineClass("qx.dom.DomStyle");if(Boolean(document.defaultView)&&Boolean(document.defaultView.getComputedStyle)){qx.dom.DomStyle.getStylePropertySure=function(el,prop){return !el?null:el.ownerDocument?el.ownerDocument.defaultView.getComputedStyle(el,qx.constant.Core.EMPTY)[prop]:el.style[prop]};qx.dom.DomStyle.getStyleProperty=function(el,prop){try{return el.ownerDocument.defaultView.getComputedStyle(el,qx.constant.Core.EMPTY)[prop]}catch(ex){throw new Error("Could not evaluate computed style: "+el+"["+prop+"]: "+ex)}}}else if(qx.sys.Client.getInstance().isMshtml()){qx.dom.DomStyle.getStyleProperty=function(el,prop){try{return el.currentStyle[prop]}catch(ex){throw new Error("Could not evaluate computed style: "+el+"["+prop+"]: "+ex)}};qx.dom.DomStyle.getStylePropertySure=function(el,prop){try{if(!el){return null};if(el.parentNode&&el.currentStyle){return el.currentStyle[prop]}else{var v1=el.runtimeStyle[prop];if(v1!=null&&typeof v1!=qx.constant.Type.UNDEFINED&&v1!=qx.constant.Core.EMPTY){return v1};return el.style[prop]}}catch(ex){throw new Error("Could not evaluate computed style: "+el+"["+prop+"]: "+ex)}}}else{qx.dom.DomStyle.getStylePropertySure=function(el,prop){return !el?null:el.style[prop]};qx.dom.DomStyle.getStyleProperty=function(el,prop){try{return el.style[prop]}catch(ex){throw new Error("Could not evaluate computed style: "+el+"["+prop+"]")}}};qx.dom.DomStyle.getStyleSize=function(el,prop){return parseInt(qx.dom.DomStyle.getStyleProperty(el,prop))||0};qx.dom.DomStyle.getMarginLeft=function(el){return qx.dom.DomStyle.getStyleSize(el,qx.constant.Style.PROPERTY_MARGINLEFT)};qx.dom.DomStyle.getMarginTop=function(el){return qx.dom.DomStyle.getStyleSize(el,qx.constant.Style.PROPERTY_MARGINTOP)};qx.dom.DomStyle.getMarginRight=function(el){return qx.dom.DomStyle.getStyleSize(el,qx.constant.Style.PROPERTY_MARGINRIGHT)};qx.dom.DomStyle.getMarginBottom=function(el){return qx.dom.DomStyle.getStyleSize(el,qx.constant.Style.PROPERTY_MARGINBOTTOM)};qx.dom.DomStyle.getPaddingLeft=function(el){return qx.dom.DomStyle.getStyleSize(el,qx.constant.Style.PROPERTY_PADDINGLEFT)};qx.dom.DomStyle.getPaddingTop=function(el){return qx.dom.DomStyle.getStyleSize(el,qx.constant.Style.PROPERTY_PADDINGTOP)};qx.dom.DomStyle.getPaddingRight=function(el){return qx.dom.DomStyle.getStyleSize(el,qx.constant.Style.PROPERTY_PADDINGRIGHT)};qx.dom.DomStyle.getPaddingBottom=function(el){return qx.dom.DomStyle.getStyleSize(el,qx.constant.Style.PROPERTY_PADDINGBOTTOM)};qx.dom.DomStyle.getBorderLeft=function(el){return qx.dom.DomStyle.getStyleProperty(el,"borderLeftStyle")==qx.constant.Core.NONE?0:qx.dom.DomStyle.getStyleSize(el,"borderLeftWidth")};qx.dom.DomStyle.getBorderTop=function(el){return qx.dom.DomStyle.getStyleProperty(el,"borderTopStyle")==qx.constant.Core.NONE?0:qx.dom.DomStyle.getStyleSize(el,"borderTopWidth")};qx.dom.DomStyle.getBorderRight=function(el){return qx.dom.DomStyle.getStyleProperty(el,"borderRightStyle")==qx.constant.Core.NONE?0:qx.dom.DomStyle.getStyleSize(el,"borderRightWidth")};qx.dom.DomStyle.getBorderBottom=function(el){return qx.dom.DomStyle.getStyleProperty(el,"borderBottomStyle")==qx.constant.Core.NONE?0:qx.dom.DomStyle.getStyleSize(el,"borderBottomWidth")};qx.OO.defineClass("qx.ui.core.Parent",qx.ui.core.Widget,function(){if(this.classname==qx.ui.core.Parent.ABSTRACT_CLASS){throw new Error("Please omit the usage of qx.ui.core.Parent directly. Choose between any widget which inherits from qx.ui.core.Parent and so comes with a layout implementation!")};qx.ui.core.Widget.call(this);this._children=[];this._layoutImpl=this._createLayoutImpl()});qx.ui.core.Parent.ABSTRACT_CLASS="qx.ui.core.Parent";qx.OO.addProperty({name:"focusHandler",type:qx.constant.Type.OBJECT,instance:"qx.event.handler.FocusHandler"});qx.OO.addProperty({name:"activeChild",type:qx.constant.Type.OBJECT,instance:"qx.ui.core.Widget"});qx.OO.addProperty({name:"focusedChild",type:qx.constant.Type.OBJECT,instance:"qx.ui.core.Widget"});qx.OO.addCachedProperty({name:"visibleChildren",defaultValue:null});qx.Proto.isFocusRoot=function(){return this.getFocusHandler()!=null};qx.Proto.getFocusRoot=function(){if(this.isFocusRoot()){return this};if(this._hasParent){return this.getParent().getFocusRoot()};return null};qx.Proto.activateFocusRoot=function(){this.setFocusHandler(new qx.event.handler.FocusHandler(this))};qx.Proto._onfocuskeyevent=function(e){this.getFocusHandler()._onkeyevent(this,e)};qx.Proto._modifyFocusHandler=function(propValue,propOldValue,propData){if(propValue){this.addEventListener(qx.constant.Event.KEYDOWN,this._onfocuskeyevent);this.addEventListener(qx.constant.Event.KEYPRESS,this._onfocuskeyevent);if(this.getTabIndex()<1){this.setTabIndex(1)};this.setHideFocus(true);this.setActiveChild(this)}else{this.removeEventListener(qx.constant.Event.KEYDOWN,this._onfocuskeyevent);this.removeEventListener(qx.constant.Event.KEYPRESS,this._onfocuskeyevent);this.setTabIndex(-1);this.setHideFocus(false)};return true};qx.Proto._modifyFocusedChild=function(propValue,propOldValue,propData){var vFocusValid=qx.util.Validation.isValidObject(propValue);var vBlurValid=qx.util.Validation.isValidObject(propOldValue);if(qx.OO.isAvailable("qx.manager.object.PopupManager")&&vFocusValid){var vMgr=qx.manager.object.PopupManager.getInstance();if(vMgr){vMgr.update(propValue)}};if(vBlurValid){if(propOldValue.hasEventListeners(qx.constant.Event.FOCUSOUT)){var vEventObject=new qx.event.type.FocusEvent(qx.constant.Event.FOCUSOUT,propOldValue);if(vFocusValid){vEventObject.setRelatedTarget(propValue)};propOldValue.dispatchEvent(vEventObject);vEventObject.dispose()}};if(vFocusValid){if(propValue.hasEventListeners(qx.constant.Event.FOCUSIN)){var vEventObject=new qx.event.type.FocusEvent(qx.constant.Event.FOCUSIN,propValue);if(vBlurValid){vEventObject.setRelatedTarget(propOldValue)};propValue.dispatchEvent(vEventObject);vEventObject.dispose()}};if(vBlurValid){if(this.getActiveChild()==propOldValue){this.setActiveChild(null)};propOldValue.setFocused(false);var vEventObject=new qx.event.type.FocusEvent(qx.constant.Event.BLUR,propOldValue);if(vFocusValid){vEventObject.setRelatedTarget(propValue)};propOldValue.dispatchEvent(vEventObject);if(qx.OO.isAvailable("qx.manager.object.ToolTipManager")){var vMgr=qx.manager.object.ToolTipManager.getInstance();if(vMgr){vMgr.handleBlur(vEventObject)}};vEventObject.dispose()};if(vFocusValid){this.setActiveChild(propValue);propValue.setFocused(true);qx.event.handler.EventHandler.getInstance().setFocusRoot(this);var vEventObject=new qx.event.type.FocusEvent(qx.constant.Event.FOCUS,propValue);if(vBlurValid){vEventObject.setRelatedTarget(propOldValue)};propValue.dispatchEvent(vEventObject);if(qx.OO.isAvailable("qx.manager.object.ToolTipManager")){var vMgr=qx.manager.object.ToolTipManager.getInstance();if(vMgr){vMgr.handleFocus(vEventObject)}};vEventObject.dispose()};return true};qx.Proto._layoutImpl=null;qx.Proto._createLayoutImpl=function(){return null};qx.Proto.getLayoutImpl=function(){return this._layoutImpl};qx.Proto.getChildren=function(){return this._children};qx.Proto.getChildrenLength=function(){return this.getChildren().length};qx.Proto.hasChildren=function(){return this.getChildrenLength()>0};qx.Proto.isEmpty=function(){return this.getChildrenLength()==0};qx.Proto.indexOf=function(vChild){return this.getChildren().indexOf(vChild)};qx.Proto.contains=function(vWidget){switch(vWidget){case null:return false;case this:return true;default:return this.contains(vWidget.getParent())}};qx.Proto._computeVisibleChildren=function(){var vVisible=[];var vChildren=this.getChildren();var vLength=vChildren.length;for(var i=0;i<vLength;i++){var vChild=vChildren[i];if(vChild._isDisplayable){vVisible.push(vChild)}};return vVisible};qx.Proto.getVisibleChildrenLength=function(){return this.getVisibleChildren().length};qx.Proto.hasVisibleChildren=function(){return this.getVisibleChildrenLength()>0};qx.Proto.isVisibleEmpty=function(){return this.getVisibleChildrenLength()==0};qx.Proto.add=function(){var vWidget;for(var i=0,l=arguments.length;i<l;i++){vWidget=arguments[i];if(!(vWidget instanceof qx.ui.core.Parent)&&!(vWidget instanceof qx.ui.basic.Terminator)){throw new Error("Invalid Widget: "+vWidget)}else{vWidget.setParent(this)}};return this};qx.Proto.addAt=function(vChild,vIndex){if(qx.util.Validation.isInvalidNumber(vIndex)||vIndex==-1){throw new Error("Not a valid index for addAt(): "+vIndex)};if(vChild.getParent()==this){var vChildren=this.getChildren();var vOldIndex=vChildren.indexOf(vChild);if(vOldIndex!=vIndex){if(vOldIndex!=-1){qx.lang.Array.removeAt(vChildren,vOldIndex)};qx.lang.Array.insertAt(vChildren,vChild,vIndex);if(this._initialLayoutDone){this._invalidateVisibleChildren();this.getLayoutImpl().updateChildrenOnMoveChild(vChild,vIndex,vOldIndex)}}}else{vChild._insertIndex=vIndex;vChild.setParent(this)}};qx.Proto.addAtBegin=function(vChild){return this.addAt(vChild,0)};qx.Proto.addAtEnd=function(vChild){var vLength=this.getChildrenLength();return this.addAt(vChild,vChild.getParent()==this?vLength-1:vLength)};qx.Proto.addBefore=function(vChild,vBefore){var vChildren=this.getChildren();var vTargetIndex=vChildren.indexOf(vBefore);if(vTargetIndex==-1){throw new Error("Child to add before: "+vBefore+" is not inside this parent.")};var vSourceIndex=vChildren.indexOf(vChild);if(vSourceIndex==-1||vSourceIndex>vTargetIndex){vTargetIndex++};return this.addAt(vChild,Math.max(0,vTargetIndex-1))};qx.Proto.addAfter=function(vChild,vAfter){var vChildren=this.getChildren();var vTargetIndex=vChildren.indexOf(vAfter);if(vTargetIndex==-1){throw new Error("Child to add after: "+vAfter+" is not inside this parent.")};var vSourceIndex=vChildren.indexOf(vChild);if(vSourceIndex!=-1&&vSourceIndex<vTargetIndex){vTargetIndex--};return this.addAt(vChild,Math.min(vChildren.length,vTargetIndex+1))};qx.Proto.remove=function(){var vWidget;for(var i=0,l=arguments.length;i<l;i++){vWidget=arguments[i];if(!(vWidget instanceof qx.ui.core.Parent)&&!(vWidget instanceof qx.ui.basic.Terminator)){throw new Error("Invalid Widget: "+vWidget)}else if(vWidget.getParent()==this){vWidget.setParent(null)}}};qx.Proto.removeAt=function(vIndex){var vChild=this.getChildren()[vIndex];if(vChild){delete vChild._insertIndex;vChild.setParent(null)}};qx.Proto.removeAll=function(){var cs=this.getChildren();var co=cs[0];while(co){this.remove(co);co=cs[0]}};qx.Proto.getFirstChild=function(){return qx.lang.Array.getFirst(this.getChildren())};qx.Proto.getFirstVisibleChild=function(){return qx.lang.Array.getFirst(this.getVisibleChildren())};qx.Proto.getFirstActiveChild=function(vIgnoreClasses){return qx.ui.core.Widget.getActiveSiblingHelper(null,this,1,vIgnoreClasses,"first")};qx.Proto.getLastChild=function(){return qx.lang.Array.getLast(this.getChildren())};qx.Proto.getLastVisibleChild=function(){return qx.lang.Array.getLast(this.getVisibleChildren())};qx.Proto.getLastActiveChild=function(vIgnoreClasses){return qx.ui.core.Widget.getActiveSiblingHelper(null,this,-1,vIgnoreClasses,"last")};qx.Proto.forEachChild=function(vFunc){var ch=this.getChildren(),chc,i=-1;while(chc=ch[++i]){vFunc.call(chc,i)}};qx.Proto.forEachVisibleChild=function(vFunc){var ch=this.getVisibleChildren(),chc,i=-1;while(chc=ch[++i]){vFunc.call(chc,i)}};qx.Proto._beforeAppear=function(){qx.ui.core.Widget.prototype._beforeAppear.call(this);this.forEachVisibleChild(function(){if(this.isAppearRelevant()){this._beforeAppear()}})};qx.Proto._afterAppear=function(){qx.ui.core.Widget.prototype._afterAppear.call(this);this.forEachVisibleChild(function(){if(this.isAppearRelevant()){this._afterAppear()}})};qx.Proto._beforeDisappear=function(){qx.ui.core.Widget.prototype._beforeDisappear.call(this);this.forEachVisibleChild(function(){if(this.isAppearRelevant()){this._beforeDisappear()}})};qx.Proto._afterDisappear=function(){qx.ui.core.Widget.prototype._afterDisappear.call(this);this.forEachVisibleChild(function(){if(this.isAppearRelevant()){this._afterDisappear()}})};qx.Proto._beforeInsertDom=function(){qx.ui.core.Widget.prototype._beforeInsertDom.call(this);this.forEachVisibleChild(function(){if(this.isAppearRelevant()){this._beforeInsertDom()}})};qx.Proto._afterInsertDom=function(){qx.ui.core.Widget.prototype._afterInsertDom.call(this);this.forEachVisibleChild(function(){if(this.isAppearRelevant()){this._afterInsertDom()}})};qx.Proto._beforeRemoveDom=function(){qx.ui.core.Widget.prototype._beforeRemoveDom.call(this);this.forEachVisibleChild(function(){if(this.isAppearRelevant()){this._beforeRemoveDom()}})};qx.Proto._afterRemoveDom=function(){qx.ui.core.Widget.prototype._afterRemoveDom.call(this);this.forEachVisibleChild(function(){if(this.isAppearRelevant()){this._afterRemoveDom()}})};qx.Proto._handleDisplayableCustom=function(vDisplayable,vParent,vHint){this.forEachChild(function(){this._handleDisplayable()})};qx.Proto._addChildrenToStateQueue=function(){this.forEachVisibleChild(function(){this.addToStateQueue()})};qx.Proto.recursiveAddToStateQueue=function(){this.addToStateQueue();this.forEachVisibleChild(function(){this.recursiveAddToStateQueue()})};qx.Proto._recursiveAppearanceThemeUpdate=function(vNewAppearanceTheme,vOldAppearanceTheme){qx.ui.core.Widget.prototype._recursiveAppearanceThemeUpdate.call(this,vNewAppearanceTheme,vOldAppearanceTheme);this.forEachVisibleChild(function(){this._recursiveAppearanceThemeUpdate(vNewAppearanceTheme,vOldAppearanceTheme)})};qx.Proto._addChildToChildrenQueue=function(vChild){if(!vChild._isInParentChildrenQueue&&!vChild._isDisplayable){this.warn("Ignoring invisible child: "+vChild)};if(!vChild._isInParentChildrenQueue&&vChild._isDisplayable){qx.ui.core.Widget.addToGlobalLayoutQueue(this);if(!this._childrenQueue){this._childrenQueue={}};this._childrenQueue[vChild.toHashCode()]=vChild}};qx.Proto._removeChildFromChildrenQueue=function(vChild){if(this._childrenQueue&&vChild._isInParentChildrenQueue){delete this._childrenQueue[vChild.toHashCode()];if(qx.lang.Object.isEmpty(this._childrenQueue)){qx.ui.core.Widget.removeFromGlobalLayoutQueue(this)}}};qx.Proto._flushChildrenQueue=function(){if(!qx.lang.Object.isEmpty(this._childrenQueue)){this.getLayoutImpl().flushChildrenQueue(this._childrenQueue);delete this._childrenQueue}};qx.Proto._addChildrenToLayoutQueue=function(p){this.forEachChild(function(){this.addToLayoutChanges(p)})};qx.Proto._layoutChild=function(vChild){if(!vChild._isDisplayable){this.warn("Want to render an invisible child: "+vChild+" -> omitting!");return};var vChanges=vChild._layoutChanges;try{if(vChanges.borderX){this._applyBorderX(vChild,vChanges)};if(vChanges.borderY){this._applyBorderY(vChild,vChanges)}}catch(ex){this.error("Could not apply border to child "+vChild,ex)};try{if(vChanges.paddingLeft||vChanges.paddingRight){vChild._applyPaddingX(this,vChanges)};if(vChanges.paddingTop||vChanges.paddingBottom){vChild._applyPaddingY(this,vChanges)}}catch(ex){this.error("Could not apply padding to child "+vChild,ex)};try{this.getLayoutImpl().layoutChild(vChild,vChanges)}catch(ex){this.error("Could not layout child "+vChild+" through layout handler",ex)};try{vChild._layoutPost(vChanges)}catch(ex){this.error("Could not post layout child "+vChild,ex)};try{if(vChanges.initial){vChild._initialLayoutDone=true;qx.ui.core.Widget.addToGlobalDisplayQueue(vChild)}}catch(ex){this.error("Could not handle display updates from layout flush for child "+vChild,ex)};vChild._layoutChanges={};delete vChild._isInParentLayoutQueue;delete this._childrenQueue[vChild.toHashCode()]};qx.Proto._layoutPost=qx.util.Return.returnTrue;if(qx.sys.Client.getInstance().isOpera()){qx.Proto._layoutChildOrig=qx.Proto._layoutChild;qx.Proto._layoutChild=function(vChild){if(!vChild._initialLayoutDone||!vChild._layoutChanges.borderX||!vChild._layoutChanges.borderY){return this._layoutChildOrig(vChild)};var vStyle=vChild.getElement().style;var vOldDisplay=vStyle.display;vStyle.display=qx.constant.Core.NONE;var vRet=this._layoutChildOrig(vChild);vStyle.display=vOldDisplay;return vRet}};qx.Proto._computePreferredInnerWidth=function(){return this.getLayoutImpl().computeChildrenNeededWidth()};qx.Proto._computePreferredInnerHeight=function(){return this.getLayoutImpl().computeChildrenNeededHeight()};qx.Proto._changeInnerWidth=function(vNew,vOld){var vLayout=this.getLayoutImpl();if(vLayout.invalidateChildrenFlexWidth){vLayout.invalidateChildrenFlexWidth()};this.forEachVisibleChild(function(){if(vLayout.updateChildOnInnerWidthChange(this)&&this._recomputeBoxWidth()){this._recomputeOuterWidth();this._recomputeInnerWidth()}})};qx.Proto._changeInnerHeight=function(vNew,vOld){var vLayout=this.getLayoutImpl();if(vLayout.invalidateChildrenFlexHeight){vLayout.invalidateChildrenFlexHeight()};this.forEachVisibleChild(function(){if(vLayout.updateChildOnInnerHeightChange(this)&&this._recomputeBoxHeight()){this._recomputeOuterHeight();this._recomputeInnerHeight()}})};qx.Proto.getInnerWidthForChild=function(vChild){return this.getInnerWidth()};qx.Proto.getInnerHeightForChild=function(vChild){return this.getInnerHeight()};qx.Proto.getWidgetFromPointHelper=function(x,y){var ch=this.getChildren();for(var chl=ch.length,i=0;i<chl;i++){if(qx.dom.DomElementFromPoint.getElementAbsolutePointChecker(ch[i].getElement(),x,y)){return ch[i].getWidgetFromPointHelper(x,y)}};return this};qx.Proto._cloneRecursive=function(cloneInstance){var ch=this.getChildren();var chl=ch.length;var cloneChild;for(var i=0;i<chl;i++){cloneChild=ch[i].clone(true);cloneInstance.add(cloneChild)}};qx.Proto._remappingChildTable=["add","remove","addAt","addAtBegin","addAtEnd","removeAt","addBefore","addAfter","removeAll"];qx.Proto._remapStart="return this._remappingChildTarget.";qx.Proto._remapStop=".apply(this._remappingChildTarget, arguments)";qx.Proto.remapChildrenHandlingTo=function(vTarget){var t=this._remappingChildTable;this._remappingChildTarget=vTarget;for(var i=0,l=t.length,s;i<l;i++){s=t[i];this[s]=new Function(qx.ui.core.Parent.prototype._remapStart+s+qx.ui.core.Parent.prototype._remapStop)}};qx.Proto.dispose=function(){if(this.getDisposed()){return};if(this._layoutImpl){this._layoutImpl.dispose();this._layoutImpl=null};for(var i in this._childrenQueue){delete this._childrenQueue[i]};this._childrenQueue=null;this._remappingChildTable=null;this._remappingChildTarget=null;if(this._children){var chl=this._children.length;for(var i=chl-1;i>=0;i--){this._children[i].dispose();this._children[i]=null};this._children=null};delete this._cachedVisibleChildren;if(this.getFocusHandler()){this.removeEventListener(qx.constant.Event.KEYDOWN,this._onfocuskeyevent);this.removeEventListener(qx.constant.Event.KEYPRESS,this._onfocuskeyevent);this.forceFocusHandler(null)};return qx.ui.core.Widget.prototype.dispose.call(this)};qx.OO.defineClass("qx.event.type.FocusEvent",qx.event.type.Event,function(vType,vTarget){qx.event.type.Event.call(this,vType);this.setTarget(vTarget);switch(vType){case qx.constant.Event.FOCUSIN:case qx.constant.Event.FOCUSOUT:this.setBubbles(true);this.setPropagationStopped(false)}});qx.OO.defineClass("qx.ui.basic.Terminator",qx.ui.core.Widget,function(){qx.ui.core.Widget.call(this)});qx.Proto._applyPaddingX=function(vParent,vChanges,vStyle){if(vChanges.paddingLeft){this._applyRuntimePaddingLeft(this.getPaddingLeft())};if(vChanges.paddingRight){this._applyRuntimePaddingRight(this.getPaddingRight())}};qx.Proto._applyPaddingY=function(vParent,vChanges,vStyle){if(vChanges.paddingTop){this._applyRuntimePaddingTop(this.getPaddingTop())};if(vChanges.paddingBottom){this._applyRuntimePaddingBottom(this.getPaddingBottom())}};qx.Proto._applyContent=function(){if(this._computedWidthTypePixel){this._cachedPreferredInnerWidth=null}else{this._invalidatePreferredInnerWidth()};if(this._computedHeightTypePixel){this._cachedPreferredInnerHeight=null}else{this._invalidatePreferredInnerHeight()};if(this._initialLayoutDone){this.addToJobQueue(qx.constant.Event.LOAD)}};qx.Proto._layoutPost=function(vChanges){if(vChanges.initial||vChanges.load||vChanges.width||vChanges.height){this._postApply()}};qx.Proto._postApply=qx.util.Return.returnTrue;qx.Proto._computeBoxWidthFallback=qx.Proto.getPreferredBoxWidth;qx.Proto._computeBoxHeightFallback=qx.Proto.getPreferredBoxHeight;qx.Proto._computePreferredInnerWidth=qx.util.Return.returnZero;qx.Proto._computePreferredInnerHeight=qx.util.Return.returnZero;qx.Proto._isWidthEssential=function(){if(!this._computedLeftTypeNull&&!this._computedRightTypeNull){return true};if(!this._computedWidthTypeNull&&!this._computedWidthTypeAuto){return true};if(!this._computedMinWidthTypeNull&&!this._computedMinWidthTypeAuto){return true};if(!this._computedMaxWidthTypeNull&&!this._computedMaxWidthTypeAuto){return true};if(this._borderElement){return true};return false};qx.Proto._isHeightEssential=function(){if(!this._computedTopTypeNull&&!this._computedBottomTypeNull){return true};if(!this._computedHeightTypeNull&&!this._computedHeightTypeAuto){return true};if(!this._computedMinHeightTypeNull&&!this._computedMinHeightTypeAuto){return true};if(!this._computedMaxHeightTypeNull&&!this._computedMaxHeightTypeAuto){return true};if(this._borderElement){return true};return false};qx.OO.defineClass("qx.ui.layout.CanvasLayout",qx.ui.core.Parent,function(){qx.ui.core.Parent.call(this)});qx.Proto._createLayoutImpl=function(){return new qx.renderer.layout.CanvasLayoutImpl(this)};qx.OO.defineClass("qx.renderer.layout.LayoutImpl",qx.core.Object,function(vWidget){qx.core.Object.call(this);this._widget=vWidget});qx.Proto.getWidget=function(){return this._widget};qx.Proto.computeChildBoxWidth=function(vChild){return vChild.getWidthValue()||vChild._computeBoxWidthFallback()};qx.Proto.computeChildBoxHeight=function(vChild){return vChild.getHeightValue()||vChild._computeBoxHeightFallback()};qx.Proto.computeChildNeededWidth=function(vChild){var vMinBox=vChild._computedMinWidthTypePercent?null:vChild.getMinWidthValue();var vMaxBox=vChild._computedMaxWidthTypePercent?null:vChild.getMaxWidthValue();var vBox=(vChild._computedWidthTypePercent||vChild._computedWidthTypeFlex?null:vChild.getWidthValue())||vChild.getPreferredBoxWidth()||0;return qx.lang.Number.limit(vBox,vMinBox,vMaxBox)+vChild.getMarginLeft()+vChild.getMarginRight()};qx.Proto.computeChildNeededHeight=function(vChild){var vMinBox=vChild._computedMinHeightTypePercent?null:vChild.getMinHeightValue();var vMaxBox=vChild._computedMaxHeightTypePercent?null:vChild.getMaxHeightValue();var vBox=(vChild._computedHeightTypePercent||vChild._computedHeightTypeFlex?null:vChild.getHeightValue())||vChild.getPreferredBoxHeight()||0;return qx.lang.Number.limit(vBox,vMinBox,vMaxBox)+vChild.getMarginTop()+vChild.getMarginBottom()};qx.Proto.computeChildrenNeededWidth_max=function(){for(var i=0,ch=this.getWidget().getVisibleChildren(),chl=ch.length,maxv=0;i<chl;i++){maxv=Math.max(maxv,ch[i].getNeededWidth())};return maxv};qx.Proto.computeChildrenNeededHeight_max=function(){for(var i=0,ch=this.getWidget().getVisibleChildren(),chl=ch.length,maxv=0;i<chl;i++){maxv=Math.max(maxv,ch[i].getNeededHeight())};return maxv};qx.Proto.computeChildrenNeededWidth_sum=function(){for(var i=0,ch=this.getWidget().getVisibleChildren(),chl=ch.length,sumv=0;i<chl;i++){sumv+=ch[i].getNeededWidth()};return sumv};qx.Proto.computeChildrenNeededHeight_sum=function(){for(var i=0,ch=this.getWidget().getVisibleChildren(),chl=ch.length,sumv=0;i<chl;i++){sumv+=ch[i].getNeededHeight()};return sumv};qx.Proto.computeChildrenNeededWidth=qx.Proto.computeChildrenNeededWidth_max;qx.Proto.computeChildrenNeededHeight=qx.Proto.computeChildrenNeededHeight_max;qx.Proto.updateSelfOnChildOuterWidthChange=function(vChild){};qx.Proto.updateSelfOnChildOuterHeightChange=function(vChild){};qx.Proto.updateChildOnInnerWidthChange=function(vChild){};qx.Proto.updateChildOnInnerHeightChange=function(vChild){};qx.Proto.updateSelfOnJobQueueFlush=function(vJobQueue){};qx.Proto.updateChildrenOnJobQueueFlush=function(vQueue){};qx.Proto.updateChildrenOnAddChild=function(vChild,vIndex){};qx.Proto.updateChildrenOnRemoveChild=function(vChild,vIndex){};qx.Proto.updateChildrenOnMoveChild=function(vChild,vIndex,vOldIndex){};qx.Proto.flushChildrenQueue=function(vChildrenQueue){var vWidget=this.getWidget();for(var vHashCode in vChildrenQueue){vWidget._layoutChild(vChildrenQueue[vHashCode])}};qx.Proto.layoutChild=function(vChild,vJobs){};if(qx.sys.Client.getInstance().isMshtml()){qx.Proto.layoutChild_sizeLimitX=qx.util.Return.returnTrue;qx.Proto.layoutChild_sizeLimitY=qx.util.Return.returnTrue}else{qx.Proto.layoutChild_sizeLimitX=function(vChild,vJobs){if(vJobs.minWidth){vChild._computedMinWidthTypeNull?vChild._resetRuntimeMinWidth():vChild._applyRuntimeMinWidth(vChild.getMinWidthValue())}else if(vJobs.initial&&!vChild._computedMinWidthTypeNull){vChild._applyRuntimeMinWidth(vChild.getMinWidthValue())};if(vJobs.maxWidth){vChild._computedMaxWidthTypeNull?vChild._resetRuntimeMaxWidth():vChild._applyRuntimeMaxWidth(vChild.getMaxWidthValue())}else if(vJobs.initial&&!vChild._computedMaxWidthTypeNull){vChild._applyRuntimeMaxWidth(vChild.getMaxWidthValue())}};qx.Proto.layoutChild_sizeLimitY=function(vChild,vJobs){if(vJobs.minHeight){vChild._computedMinHeightTypeNull?vChild._resetRuntimeMinHeight():vChild._applyRuntimeMinHeight(vChild.getMinHeightValue())}else if(vJobs.initial&&!vChild._computedMinHeightTypeNull){vChild._applyRuntimeMinHeight(vChild.getMinHeightValue())};if(vJobs.maxHeight){vChild._computedMaxHeightTypeNull?vChild._resetRuntimeMaxHeight():vChild._applyRuntimeMaxHeight(vChild.getMaxHeightValue())}else if(vJobs.initial&&!vChild._computedMaxHeightTypeNull){vChild._applyRuntimeMaxHeight(vChild.getMaxHeightValue())}}};qx.Proto.layoutChild_marginX=function(vChild,vJobs){if(vJobs.marginLeft||vJobs.initial){var vValueLeft=vChild.getMarginLeft();vValueLeft!=null?vChild._applyRuntimeMarginLeft(vValueLeft):vChild._resetRuntimeMarginLeft()};if(vJobs.marginRight||vJobs.initial){var vValueRight=vChild.getMarginRight();vValueRight!=null?vChild._applyRuntimeMarginRight(vValueRight):vChild._resetRuntimeMarginRight()}};qx.Proto.layoutChild_marginY=function(vChild,vJobs){if(vJobs.marginTop||vJobs.initial){var vValueTop=vChild.getMarginTop();vValueTop!=null?vChild._applyRuntimeMarginTop(vValueTop):vChild._resetRuntimeMarginTop()};if(vJobs.marginBottom||vJobs.initial){var vValueBottom=vChild.getMarginBottom();vValueBottom!=null?vChild._applyRuntimeMarginBottom(vValueBottom):vChild._resetRuntimeMarginBottom()}};qx.Proto.layoutChild_sizeX_essentialWrapper=function(vChild,vJobs){return vChild._isWidthEssential()?this.layoutChild_sizeX(vChild,vJobs):vChild._resetRuntimeWidth()};qx.Proto.layoutChild_sizeY_essentialWrapper=function(vChild,vJobs){return vChild._isHeightEssential()?this.layoutChild_sizeY(vChild,vJobs):vChild._resetRuntimeHeight()};qx.Proto.dispose=function(){if(this.getDisposed()){return true};this._widget=null;qx.core.Object.prototype.dispose.call(this)};qx.OO.defineClass("qx.lang.Number");qx.lang.Number.isInRange=function(nr,vmin,vmax){return nr>=vmin&&nr<=vmax};qx.lang.Number.isBetweenRange=function(nr,vmin,vmax){return nr>vmin&&nr<vmax};qx.lang.Number.limit=function(nr,vmin,vmax){if(typeof vmax===qx.constant.Type.NUMBER&&nr>vmax){return vmax}else if(typeof vmin===qx.constant.Type.NUMBER&&nr<vmin){return vmin}else{return nr}};qx.OO.defineClass("qx.renderer.layout.CanvasLayoutImpl",qx.renderer.layout.LayoutImpl,function(vWidget){qx.renderer.layout.LayoutImpl.call(this,vWidget)});qx.Proto.computeChildBoxWidth=function(vChild){var vValue=null;if(vChild._computedLeftTypeNull||vChild._computedRightTypeNull){vValue=vChild.getWidthValue()}else if(vChild._hasParent){vValue=this.getWidget().getInnerWidth()-vChild.getLeftValue()-vChild.getRightValue()};return vValue||vChild._computeBoxWidthFallback()};qx.Proto.computeChildBoxHeight=function(vChild){var vValue=null;if(vChild._computedTopTypeNull||vChild._computedBottomTypeNull){vValue=vChild.getHeightValue()}else if(vChild._hasParent){vValue=this.getWidget().getInnerHeight()-vChild.getTopValue()-vChild.getBottomValue()};return vValue||vChild._computeBoxHeightFallback()};qx.Proto.computeChildNeededWidth=function(vChild){var vLeft=vChild._computedLeftTypePercent?null:vChild.getLeftValue();var vRight=vChild._computedRightTypePercent?null:vChild.getRightValue();var vMinBox=vChild._computedMinWidthTypePercent?null:vChild.getMinWidthValue();var vMaxBox=vChild._computedMaxWidthTypePercent?null:vChild.getMaxWidthValue();if(vLeft!=null&&vRight!=null){var vBox=vChild.getPreferredBoxWidth()||0}else{var vBox=(vChild._computedWidthTypePercent?null:vChild.getWidthValue())||vChild.getPreferredBoxWidth()||0};return qx.lang.Number.limit(vBox,vMinBox,vMaxBox)+vLeft+vRight+vChild.getMarginLeft()+vChild.getMarginRight()};qx.Proto.computeChildNeededHeight=function(vChild){var vTop=vChild._computedTopTypePercent?null:vChild.getTopValue();var vBottom=vChild._computedBottomTypePercent?null:vChild.getBottomValue();var vMinBox=vChild._computedMinHeightTypePercent?null:vChild.getMinHeightValue();var vMaxBox=vChild._computedMaxHeightTypePercent?null:vChild.getMaxHeightValue();if(vTop!=null&&vBottom!=null){var vBox=vChild.getPreferredBoxHeight()||0}else{var vBox=(vChild._computedHeightTypePercent?null:vChild.getHeightValue())||vChild.getPreferredBoxHeight()||0};return qx.lang.Number.limit(vBox,vMinBox,vMaxBox)+vTop+vBottom+vChild.getMarginTop()+vChild.getMarginBottom()};qx.Proto.updateChildOnInnerWidthChange=function(vChild){var vUpdatePercent=vChild._recomputePercentX();var vUpdateRange=vChild._recomputeRangeX();return vUpdatePercent||vUpdateRange};qx.Proto.updateChildOnInnerHeightChange=function(vChild){var vUpdatePercent=vChild._recomputePercentY();var vUpdateRange=vChild._recomputeRangeY();return vUpdatePercent||vUpdateRange};qx.Proto.layoutChild=function(vChild,vJobs){this.layoutChild_sizeX_essentialWrapper(vChild,vJobs);this.layoutChild_sizeY_essentialWrapper(vChild,vJobs);this.layoutChild_sizeLimitX(vChild,vJobs);this.layoutChild_sizeLimitY(vChild,vJobs);this.layoutChild_locationX(vChild,vJobs);this.layoutChild_locationY(vChild,vJobs);this.layoutChild_marginX(vChild,vJobs);this.layoutChild_marginY(vChild,vJobs)};if(qx.sys.Client.getInstance().isMshtml()||qx.sys.Client.getInstance().isOpera()){qx.Proto.layoutChild_sizeX=function(vChild,vJobs){if(vJobs.initial||vJobs.width||vJobs.minWidth||vJobs.maxWidth||vJobs.left||vJobs.right){if(vChild._computedMinWidthTypeNull&&vChild._computedWidthTypeNull&&vChild._computedMaxWidthTypeNull&&!(!vChild._computedLeftTypeNull&&!vChild._computedRightTypeNull)){vChild._resetRuntimeWidth()}else{vChild._applyRuntimeWidth(vChild.getBoxWidth())}}};qx.Proto.layoutChild_sizeY=function(vChild,vJobs){if(vJobs.initial||vJobs.height||vJobs.minHeight||vJobs.maxHeight||vJobs.top||vJobs.bottom){if(vChild._computedMinHeightTypeNull&&vChild._computedHeightTypeNull&&vChild._computedMaxHeightTypeNull&&!(!vChild._computedTopTypeNull&&!vChild._computedBottomTypeNull)){vChild._resetRuntimeHeight()}else{vChild._applyRuntimeHeight(vChild.getBoxHeight())}}}}else{qx.Proto.layoutChild_sizeX=function(vChild,vJobs){if(vJobs.initial||vJobs.width){vChild._computedWidthTypeNull?vChild._resetRuntimeWidth():vChild._applyRuntimeWidth(vChild.getWidthValue())}};qx.Proto.layoutChild_sizeY=function(vChild,vJobs){if(vJobs.initial||vJobs.height){vChild._computedHeightTypeNull?vChild._resetRuntimeHeight():vChild._applyRuntimeHeight(vChild.getHeightValue())}}};qx.Proto.layoutChild_locationX=function(vChild,vJobs){var vWidget=this.getWidget();if(vJobs.initial||vJobs.left||vJobs.parentPaddingLeft){vChild._computedLeftTypeNull?vChild._computedRightTypeNull&&vWidget.getPaddingLeft()>0?vChild._applyRuntimeLeft(vWidget.getPaddingLeft()):vChild._resetRuntimeLeft():vChild._applyRuntimeLeft(vChild.getLeftValue()+vWidget.getPaddingLeft())};if(vJobs.initial||vJobs.right||vJobs.parentPaddingRight){vChild._computedRightTypeNull?vChild._computedLeftTypeNull&&vWidget.getPaddingRight()>0?vChild._applyRuntimeRight(vWidget.getPaddingRight()):vChild._resetRuntimeRight():vChild._applyRuntimeRight(vChild.getRightValue()+vWidget.getPaddingRight())}};qx.Proto.layoutChild_locationY=function(vChild,vJobs){var vWidget=this.getWidget();if(vJobs.initial||vJobs.top||vJobs.parentPaddingTop){vChild._computedTopTypeNull?vChild._computedBottomTypeNull&&vWidget.getPaddingTop()>0?vChild._applyRuntimeTop(vWidget.getPaddingTop()):vChild._resetRuntimeTop():vChild._applyRuntimeTop(vChild.getTopValue()+vWidget.getPaddingTop())};if(vJobs.initial||vJobs.bottom||vJobs.parentPaddingBottom){vChild._computedBottomTypeNull?vChild._computedTopTypeNull&&vWidget.getPaddingBottom()>0?vChild._applyRuntimeBottom(vWidget.getPaddingBottom()):vChild._resetRuntimeBottom():vChild._applyRuntimeBottom(vChild.getBottomValue()+vWidget.getPaddingBottom())}};qx.OO.defineClass("qx.dom.DomStyleSheet");if(qx.sys.Client.getInstance().isMshtml()){qx.dom.DomStyleSheet.createElement=function(vCssText){var vSheet=document.createStyleSheet();if(vCssText){vSheet.cssText=vCssText};return vSheet};qx.dom.DomStyleSheet.addRule=function(vSheet,vSelector,vStyle){vSheet.addRule(vSelector,vStyle)};qx.dom.DomStyleSheet.removeRule=function(vSheet,vSelector){var vRules=vSheet.rules;var vLength=vRules.length;for(var i=vLength-1;i>=0;i--){if(vRules[i].selectorText==vSelector){vSheet.removeRule(i)}}};qx.dom.DomStyleSheet.removeAllRules=function(vSheet){var vRules=vSheet.rules;var vLength=vRules.length;for(var i=vLength-1;i>=0;i--){vSheet.removeRule(i)}};qx.dom.DomStyleSheet.addImport=function(vSheet,vUrl){vSheet.addImport(vUrl)};qx.dom.DomStyleSheet.removeImport=function(vSheet,vUrl){var vImports=vSheet.imports;var vLength=vImports.length;for(var i=vLength-1;i>=0;i--){if(vImports[i].href==vUrl){vSheet.removeImport(i)}}};qx.dom.DomStyleSheet.removeAllImports=function(vSheet){var vImports=vSheet.imports;var vLength=vImports.length;for(var i=vLength-1;i>=0;i--){vSheet.removeImport(i)}}}else{qx.dom.DomStyleSheet.createElement=function(vCssText){var vElement=document.createElement("STYLE");vElement.type="text/css";if(vCssText){vElement.appendChild(document.createTextNode(vCssText))};document.getElementsByTagName("HEAD")[0].appendChild(vElement);return vElement.sheet};qx.dom.DomStyleSheet.addRule=function(vSheet,vSelector,vStyle){vSheet.insertRule(vSelector+"{"+vStyle+"}",vSheet.cssRules.length)};qx.dom.DomStyleSheet.removeRule=function(vSheet,vSelector){var vRules=vSheet.cssRules;var vLength=vRules.length;for(var i=vLength-1;i>=0;i--){if(vRules[i].selectorText==vSelector){vSheet.deleteRule(i)}}};qx.dom.DomStyleSheet.removeAllRules=function(vSheet){var vRules=vSheet.cssRules;var vLength=vRules.length;for(var i=vLength-1;i>=0;i--){vSheet.deleteRule(i)}};qx.dom.DomStyleSheet.addImport=function(vSheet,vUrl){vSheet.insertRule('@import "'+vUrl+'";',vSheet.cssRules.length)};qx.dom.DomStyleSheet.removeImport=function(vSheet,vUrl){var vRules=vSheet.cssRules;var vLength=vRules.length;for(var i=vLength-1;i>=0;i--){if(vRules[i].href==vUrl){vSheet.deleteRule(i)}}};qx.dom.DomStyleSheet.removeAllImports=function(vSheet){var vRules=vSheet.cssRules;var vLength=vRules.length;for(var i=vLength-1;i>=0;i--){if(vRules[i].type==vRules[i].IMPORT_RULE){vSheet.deleteRule(i)}}}};qx.OO.defineClass("qx.ui.core.ClientDocument",qx.ui.layout.CanvasLayout,function(){this._window=window;this._document=window.document;this.setElement(this._document.body);this.addToStateQueue();qx.ui.layout.CanvasLayout.call(this);this._styleProperties={};this.activateFocusRoot();this._cachedInnerWidth=this._document.body.offsetWidth;this._cachedInnerHeight=this._document.body.offsetHeight;this.addEventListener("windowresize",this._onwindowresize);this._modalWidgets=[];this._modalNativeWindow=null;qx.event.handler.EventHandler.getInstance().setFocusRoot(this)});qx.OO.addProperty({name:"globalCursor",type:qx.constant.Type.STRING});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"client-document"});qx.Settings.setDefault("enableApplicationLayout",true);qx.Proto._modifyParent=qx.util.Return.returnTrue;qx.Proto._modifyVisible=qx.util.Return.returnTrue;qx.Proto._modifyElement=function(propValue,propOldValue,propData){this._isCreated=qx.util.Validation.isValidElement(propValue);if(propOldValue){propOldValue.qx_Widget=null};if(propValue){propValue.qx_Widget=this;this._element=propValue;this._style=propValue.style}else{this._element=null;this._style=null};return true};qx.Proto.getTopLevelWidget=qx.util.Return.returnThis;qx.Proto.getWindowElement=function(){return this._window};qx.Proto.getDocumentElement=function(){return this._document};qx.Proto.getParent=qx.Proto.getToolTip=qx.util.Return.returnNull;qx.Proto.isMaterialized=qx.Proto.isSeeable=qx.util.Return.returnTrue;qx.Proto._isDisplayable=true;qx.Proto._hasParent=false;qx.Proto._initialLayoutDone=true;qx.Proto._getBlocker=function(){if(!this._blocker){this._blocker=new qx.ui.core.ClientDocumentBlocker;this._blocker.addEventListener(qx.constant.Event.MOUSEDOWN,this.blockHelper,this);this._blocker.addEventListener(qx.constant.Event.MOUSEUP,this.blockHelper,this);this.add(this._blocker)};return this._blocker};qx.Proto.blockHelper=function(e){if(this._modalNativeWindow){try{this._modalNativeWindow._window.focus()}catch(ex){this.debug("Window seems to be closed already! => Releasing Blocker: ("+e.getType()+")",ex);this.release(this._modalNativeWindow)}}};qx.Proto.block=function(vActiveChild){this._getBlocker().show();if(qx.OO.isAvailable("qx.ui.window.Window")&&vActiveChild instanceof qx.ui.window.Window){this._modalWidgets.push(vActiveChild);var vOrigIndex=vActiveChild.getZIndex();this._getBlocker().setZIndex(vOrigIndex);vActiveChild.setZIndex(vOrigIndex+1)}else if(qx.OO.isAvailable("qx.client.NativeWindow")&&vActiveChild instanceof qx.client.NativeWindow){this._modalNativeWindow=vActiveChild;this._getBlocker().setZIndex(1e7)}};qx.Proto.release=function(vActiveChild){if(vActiveChild){if(qx.OO.isAvailable("qx.client.NativeWindow")&&vActiveChild instanceof qx.client.NativeWindow){this._modalNativeWindow=null}else{qx.lang.Array.remove(this._modalWidgets,vActiveChild)}};var l=this._modalWidgets.length;if(l==0){this._getBlocker().hide()}else{var oldActiveChild=this._modalWidgets[l-1];var o=oldActiveChild.getZIndex();this._getBlocker().setZIndex(o);oldActiveChild.setZIndex(o+1)}};qx.Proto.createStyleElement=function(vCssText){return qx.dom.DomStyleSheet.createElement(vCssText)};qx.Proto.addCssRule=function(vSheet,vSelector,vStyle){return qx.dom.DomStyleSheet.addRule(vSheet,vSelector,vStyle)};qx.Proto.removeCssRule=function(vSheet,vSelector){return qx.dom.DomStyleSheet.removeRule(vSheet,vSelector)};qx.Proto.removeAllCssRules=function(vSheet){return qx.dom.DomStyleSheet.removeAllRules(vSheet)};qx.dom.DomStyleSheet.createElement("html,body{margin:0;border:0;padding:0;}"+" html{border:0 none;} *{"+qx.sys.Client.getInstance().getEngineBoxSizingAttribute()+":border-box;} img{"+qx.sys.Client.getInstance().getEngineBoxSizingAttribute()+":content-box;}");if(qx.Settings.getValueOfClass("qx.ui.core.ClientDocument","enableApplicationLayout")){qx.dom.DomStyleSheet.createElement("html,body{width:100%;height:100%;overflow:hidden;}")};qx.Proto._modifyGlobalCursor=function(propValue,propOldValue,propData){if(!this._globalCursorStyleSheet){this._globalCursorStyleSheet=this.createStyleElement()};this.removeAllCssRules(this._globalCursorStyleSheet);if(propValue){this.addCssRule(this._globalCursorStyleSheet,qx.constant.Core.STAR,"cursor:"+propValue+" !important")};return true};qx.Proto._onwindowresize=function(e){if(qx.OO.isAvailable("qx.manager.object.PopupManager")){qx.manager.object.PopupManager.getInstance().update()};this._recomputeInnerWidth();this._recomputeInnerHeight();qx.ui.core.Widget.flushGlobalQueues()};qx.Proto._computeInnerWidth=function(){return this._document.body.offsetWidth};qx.Proto._computeInnerHeight=function(){return this._document.body.offsetHeight};qx.Proto.dispose=function(){if(this.getDisposed()){return};delete this._document;delete this._modalWidgets;delete this._modalNativeWindow;this.removeEventListener("windowresize",this._onwindowresize);this._globalCursorStyleSheet=null;if(this._blocker){this._blocker.removeEventListener(qx.constant.Event.MOUSEDOWN,this.blockHelper,this);this._blocker.removeEventListener(qx.constant.Event.MOUSEUP,this.blockHelper,this);this._blocker.dispose();this._blocker=null};return qx.ui.layout.CanvasLayout.prototype.dispose.call(this)};qx.Class.getInstance=qx.util.Return.returnInstance;qx.OO.defineClass("qx.ui.core.ClientDocumentBlocker",qx.ui.basic.Terminator,function(){qx.ui.basic.Terminator.call(this);this.setEdge(0);this.setZIndex(1e8);this.setDisplay(false)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"blocker"});qx.OO.defineClass("qx.event.handler.FocusHandler",qx.core.Target,function(vWidget){qx.core.Target.call(this);if(qx.util.Validation.isValidObject(vWidget)){this._attachedWidget=vWidget}});qx.event.handler.FocusHandler.mouseFocus=false;qx.Proto.getAttachedWidget=function(){return this._attachedWidget};qx.event.handler.FocusHandler.tabEventType=qx.sys.Client.getInstance().isMshtml()?qx.constant.Event.KEYDOWN:qx.constant.Event.KEYPRESS;qx.Proto._onkeyevent=function(vContainer,vEvent){if(vEvent.getKeyCode()!=qx.event.type.KeyEvent.keys.tab){return};vEvent.stopPropagation();vEvent.preventDefault();if(vEvent.getType()!=qx.event.handler.FocusHandler.tabEventType){return};qx.event.handler.FocusHandler.mouseFocus=false;var vCurrent=this.getAttachedWidget().getFocusedChild();if(!vEvent.getShiftKey()){var vNext=vCurrent?this.getWidgetAfter(vContainer,vCurrent):this.getFirstWidget(vContainer)}else{var vNext=vCurrent?this.getWidgetBefore(vContainer,vCurrent):this.getLastWidget(vContainer)};if(vNext){vNext.setFocused(true);vNext._ontabfocus()}};qx.Proto.compareTabOrder=function(c1,c2){if(c1==c2){return 0};var t1=c1.getTabIndex();var t2=c2.getTabIndex();if(t1!=t2){return t1-t2};var y1=qx.dom.DomLocation.getPageBoxTop(c1.getElement());var y2=qx.dom.DomLocation.getPageBoxTop(c2.getElement());if(y1!=y2){return y1-y2};var x1=qx.dom.DomLocation.getPageBoxLeft(c1.getElement());var x2=qx.dom.DomLocation.getPageBoxLeft(c2.getElement());if(x1!=x2){return x1-x2};var z1=c1.getZIndex();var z2=c2.getZIndex();if(z1!=z2){return z1-z2};return 0};qx.Proto.getFirstWidget=function(vParentContainer){return this._getFirst(vParentContainer,null)};qx.Proto.getLastWidget=function(vParentContainer){return this._getLast(vParentContainer,null)};qx.Proto.getWidgetAfter=function(vParentContainer,vWidget){if(vParentContainer==vWidget){return this.getFirstWidget(vParentContainer)};if(vWidget.getAnonymous()){vWidget=vWidget.getParent()};if(vWidget==null){return []};var vAll=[];this._getAllAfter(vParentContainer,vWidget,vAll);vAll.sort(this.compareTabOrder);return vAll.length>0?vAll[0]:this.getFirstWidget(vParentContainer)};qx.Proto.getWidgetBefore=function(vParentContainer,vWidget){if(vParentContainer==vWidget){return this.getLastWidget(vParentContainer)};if(vWidget.getAnonymous()){vWidget=vWidget.getParent()};if(vWidget==null){return []};var vAll=[];this._getAllBefore(vParentContainer,vWidget,vAll);vAll.sort(this.compareTabOrder);var vChildrenLength=vAll.length;return vChildrenLength>0?vAll[vChildrenLength-1]:this.getLastWidget(vParentContainer)};qx.Proto._getAllAfter=function(vParent,vWidget,vArray){var vChildren=vParent.getChildren();var vCurrentChild;var vChildrenLength=vChildren.length;for(var i=0;i<vChildrenLength;i++){vCurrentChild=vChildren[i];if(!(vCurrentChild instanceof qx.ui.core.Parent)&&!(vCurrentChild instanceof qx.ui.basic.Terminator)){continue};if(vCurrentChild.isFocusable()&&vCurrentChild.getTabIndex()>0&&this.compareTabOrder(vWidget,vCurrentChild)<0){vArray.push(vChildren[i])};if(!vCurrentChild.isFocusRoot()&&vCurrentChild instanceof qx.ui.core.Parent){this._getAllAfter(vCurrentChild,vWidget,vArray)}}};qx.Proto._getAllBefore=function(vParent,vWidget,vArray){var vChildren=vParent.getChildren();var vCurrentChild;var vChildrenLength=vChildren.length;for(var i=0;i<vChildrenLength;i++){vCurrentChild=vChildren[i];if(!(vCurrentChild instanceof qx.ui.core.Parent)&&!(vCurrentChild instanceof qx.ui.basic.Terminator)){continue};if(vCurrentChild.isFocusable()&&vCurrentChild.getTabIndex()>0&&this.compareTabOrder(vWidget,vCurrentChild)>0){vArray.push(vCurrentChild)};if(!vCurrentChild.isFocusRoot()&&vCurrentChild instanceof qx.ui.core.Parent){this._getAllBefore(vCurrentChild,vWidget,vArray)}}};qx.Proto._getFirst=function(vParent,vFirstWidget){var vChildren=vParent.getChildren();var vCurrentChild;var vChildrenLength=vChildren.length;for(var i=0;i<vChildrenLength;i++){vCurrentChild=vChildren[i];if(!(vCurrentChild instanceof qx.ui.core.Parent)&&!(vCurrentChild instanceof qx.ui.basic.Terminator)){continue};if(vCurrentChild.isFocusable()&&vCurrentChild.getTabIndex()>0){if(vFirstWidget==null||this.compareTabOrder(vCurrentChild,vFirstWidget)<0){vFirstWidget=vCurrentChild}};if(!vCurrentChild.isFocusRoot()&&vCurrentChild instanceof qx.ui.core.Parent){vFirstWidget=this._getFirst(vCurrentChild,vFirstWidget)}};return vFirstWidget};qx.Proto._getLast=function(vParent,vLastWidget){var vChildren=vParent.getChildren();var vCurrentChild;var vChildrenLength=vChildren.length;for(var i=0;i<vChildrenLength;i++){vCurrentChild=vChildren[i];if(!(vCurrentChild instanceof qx.ui.core.Parent)&&!(vCurrentChild instanceof qx.ui.basic.Terminator)){continue};if(vCurrentChild.isFocusable()&&vCurrentChild.getTabIndex()>0){if(vLastWidget==null||this.compareTabOrder(vCurrentChild,vLastWidget)>0){vLastWidget=vCurrentChild}};if(!vCurrentChild.isFocusRoot()&&vCurrentChild instanceof qx.ui.core.Parent){vLastWidget=this._getLast(vCurrentChild,vLastWidget)}};return vLastWidget};qx.Proto.dispose=function(){if(this.getDisposed()){return};this._attachedWidget=null;qx.core.Target.prototype.dispose.call(this)};qx.OO.defineClass("qx.event.type.DomEvent",qx.event.type.Event,function(vType,vDomEvent,vDomTarget,vTarget,vOriginalTarget){qx.event.type.Event.call(this,vType);this.setDomEvent(vDomEvent);this.setDomTarget(vDomTarget);this.setTarget(vTarget);this.setOriginalTarget(vOriginalTarget)});qx.OO.addFastProperty({name:"bubbles",defaultValue:true,noCompute:true});qx.OO.addFastProperty({name:"propagationStopped",defaultValue:false,noCompute:true});qx.OO.addFastProperty({name:"domEvent",setOnlyOnce:true,noCompute:true});qx.OO.addFastProperty({name:"domTarget",setOnlyOnce:true,noCompute:true});qx.OO.addCachedProperty({name:"modifiers",defaultValue:null});qx.Proto._computeModifiers=function(){var mask=0;var evt=this.getDomEvent();if(evt.shiftKey)mask|=qx.event.type.DomEvent.SHIFT_MASK;if(evt.ctrlKey)mask|=qx.event.type.DomEvent.CTRL_MASK;if(evt.altKey)mask|=qx.event.type.DomEvent.ALT_MASK;if(evt.metaKey)mask|=qx.event.type.DomEvent.META_MASK;return mask};qx.Proto.isCtrlPressed=function(){return this.getDomEvent().ctrlKey};qx.Proto.getCtrlKey=qx.Proto.isCtrlPressed;qx.Proto.isShiftPressed=function(){return this.getDomEvent().shiftKey};qx.Proto.getShiftKey=qx.Proto.isShiftPressed;qx.Proto.isAltPressed=function(){return this.getDomEvent().altKey};qx.Proto.getAltKey=qx.Proto.isAltPressed;qx.Proto.isMetaPressed=function(){return this.getDomEvent().metaKey};qx.Proto.isCtrlOrCommandPressed=function(){if(qx.sys.Client.getInstance().runsOnMacintosh()){return this.getDomEvent().metaKey}else{return this.getDomEvent().ctrlKey}};if(qx.sys.Client.getInstance().isMshtml()){qx.Proto.setDefaultPrevented=function(vValue){if(!vValue){return this.error("It is not possible to set preventDefault to false if it was true before!","setDefaultPrevented")};this.getDomEvent().returnValue=false;qx.event.type.Event.prototype.setDefaultPrevented.call(this,vValue)}}else{qx.Proto.setDefaultPrevented=function(vValue){if(!vValue){return this.error("It is not possible to set preventDefault to false if it was true before!","setDefaultPrevented")};this.getDomEvent().preventDefault();this.getDomEvent().returnValue=false;qx.event.type.Event.prototype.setDefaultPrevented.call(this,vValue)}};qx.Proto.dispose=function(){if(this.getDisposed()){return};this._valueDomEvent=null;this._valueDomTarget=null;return qx.event.type.Event.prototype.dispose.call(this)};qx.Class.SHIFT_MASK=1;qx.Class.CTRL_MASK=2;qx.Class.ALT_MASK=4;qx.Class.META_MASK=8;qx.OO.defineClass("qx.event.type.KeyEvent",qx.event.type.DomEvent,function(vType,vDomEvent,vDomTarget,vTarget,vOriginalTarget,vKeyCode){qx.event.type.DomEvent.call(this,vType,vDomEvent,vDomTarget,vTarget,vOriginalTarget);this.setKeyCode(vKeyCode)});qx.OO.addFastProperty({name:"keyCode",setOnlyOnce:true,noCompute:true});qx.event.type.KeyEvent.keys={esc:27,enter:13,tab:9,space:32,up:38,down:40,left:37,right:39,shift:16,ctrl:17,alt:18,f1:112,f2:113,f3:114,f4:115,f5:116,f6:117,f7:118,f8:119,f9:120,f10:121,f11:122,f12:123,del:46,backspace:8,insert:45,home:36,end:35,pageup:33,pagedown:34,numlock:144,numpad_0:96,numpad_1:97,numpad_2:98,numpad_3:99,numpad_4:100,numpad_5:101,numpad_6:102,numpad_7:103,numpad_8:104,numpad_9:105,numpad_divide:111,numpad_multiply:106,numpad_minus:109,numpad_plus:107};(function(){qx.event.type.KeyEvent.codes={};for(var i in qx.event.type.KeyEvent.keys){qx.event.type.KeyEvent.codes[qx.event.type.KeyEvent.keys[i]]=i}})();qx.OO.defineClass("qx.dom.DomLocation");qx.dom.DomLocation.getPageOuterLeft=function(el){return qx.dom.DomLocation.getPageBoxLeft(el)-qx.dom.DomStyle.getMarginLeft(el)};qx.dom.DomLocation.getPageOuterTop=function(el){return qx.dom.DomLocation.getPageBoxTop(el)-qx.dom.DomStyle.getMarginTop(el)};qx.dom.DomLocation.getPageOuterRight=function(el){return qx.dom.DomLocation.getPageBoxRight(el)+qx.dom.DomStyle.getMarginRight(el)};qx.dom.DomLocation.getPageOuterBottom=function(el){return qx.dom.DomLocation.getPageBoxBottom(el)+qx.dom.DomStyle.getMarginBottom(el)};qx.dom.DomLocation.getClientOuterLeft=function(el){return qx.dom.DomLocation.getClientBoxLeft(el)-qx.dom.DomStyle.getMarginLeft(el)};qx.dom.DomLocation.getClientOuterTop=function(el){return qx.dom.DomLocation.getClientBoxTop(el)-qx.dom.DomStyle.getMarginTop(el)};qx.dom.DomLocation.getClientOuterRight=function(el){return qx.dom.DomLocation.getClientBoxRight(el)+qx.dom.DomStyle.getMarginRight(el)};qx.dom.DomLocation.getClientOuterBottom=function(el){return qx.dom.DomLocation.getClientBoxBottom(el)+qx.dom.DomStyle.getMarginBottom(el)};if(qx.sys.Client.getInstance().isMshtml()){qx.dom.DomLocation.getClientBoxLeft=function(el){return el.getBoundingClientRect().left};qx.dom.DomLocation.getClientBoxTop=function(el){return el.getBoundingClientRect().top};qx.dom.DomLocation.getPageBoxLeft=function(el){return qx.dom.DomLocation.getClientBoxLeft(el)+qx.dom.DomScroll.getLeftSum(el)};qx.dom.DomLocation.getPageBoxTop=function(el){return qx.dom.DomLocation.getClientBoxTop(el)+qx.dom.DomScroll.getTopSum(el)}}else if(qx.sys.Client.getInstance().isGecko()){qx.dom.DomLocation.getClientBoxLeft=function(el){return qx.dom.DomLocation.getClientAreaLeft(el)-qx.dom.DomStyle.getBorderLeft(el)};qx.dom.DomLocation.getClientBoxTop=function(el){return qx.dom.DomLocation.getClientAreaTop(el)-qx.dom.DomStyle.getBorderTop(el)};qx.dom.DomLocation.getPageBoxLeft=function(el){return qx.dom.DomLocation.getPageAreaLeft(el)-qx.dom.DomStyle.getBorderLeft(el)};qx.dom.DomLocation.getPageBoxTop=function(el){return qx.dom.DomLocation.getPageAreaTop(el)-qx.dom.DomStyle.getBorderTop(el)}}else{qx.dom.DomLocation.getPageBoxLeft=function(el){var sum=el.offsetLeft;while(el.tagName!="BODY"){el=el.offsetParent;sum+=el.offsetLeft};return sum};qx.dom.DomLocation.getPageBoxTop=function(el){var sum=el.offsetTop;while(el.tagName!="BODY"){el=el.offsetParent;sum+=el.offsetTop};return sum};qx.dom.DomLocation.getClientBoxLeft=function(el){var sum=el.offsetLeft;while(el.tagName!="BODY"){el=el.offsetParent;sum+=el.offsetLeft-el.scrollLeft};return sum};qx.dom.DomLocation.getClientBoxTop=function(el){var sum=el.offsetTop;while(el.tagName!="BODY"){el=el.offsetParent;sum+=el.offsetTop-el.scrollTop};return sum}};if(qx.sys.Client.getInstance().isMshtml()){qx.dom.DomLocation.getClientBoxRight=function(el){return el.getBoundingClientRect().right};qx.dom.DomLocation.getClientBoxBottom=function(el){return el.getBoundingClientRect().bottom};qx.dom.DomLocation.getPageBoxRight=function(el){return qx.dom.DomLocation.getClientBoxRight(el)+qx.dom.DomScroll.getLeftSum(el)};qx.dom.DomLocation.getPageBoxBottom=function(el){return qx.dom.DomLocation.getClientBoxBottom(el)+qx.dom.DomScroll.getTopSum(el)}}else{qx.dom.DomLocation.getClientBoxRight=function(el){return qx.dom.DomLocation.getClientBoxLeft(el)+qx.dom.DomDimension.getBoxWidth(el)};qx.dom.DomLocation.getClientBoxBottom=function(el){return qx.dom.DomLocation.getClientBoxTop(el)+qx.dom.DomDimension.getBoxHeight(el)};qx.dom.DomLocation.getPageBoxRight=function(el){return qx.dom.DomLocation.getPageBoxLeft(el)+qx.dom.DomDimension.getBoxWidth(el)};qx.dom.DomLocation.getPageBoxBottom=function(el){return qx.dom.DomLocation.getPageBoxTop(el)+qx.dom.DomDimension.getBoxHeight(el)}};if(qx.sys.Client.getInstance().isGecko()){qx.dom.DomLocation.getPageAreaLeft=function(el){return el.ownerDocument.getBoxObjectFor(el).x};qx.dom.DomLocation.getPageAreaTop=function(el){return el.ownerDocument.getBoxObjectFor(el).y};qx.dom.DomLocation.getClientAreaLeft=function(el){return qx.dom.DomLocation.getPageAreaLeft(el)-qx.dom.DomScroll.getLeftSum(el)};qx.dom.DomLocation.getClientAreaTop=function(el){return qx.dom.DomLocation.getPageAreaTop(el)-qx.dom.DomScroll.getTopSum(el)}}else{qx.dom.DomLocation.getClientAreaLeft=function(el){return qx.dom.DomLocation.getClientBoxLeft(el)+qx.dom.DomStyle.getBorderLeft(el)};qx.dom.DomLocation.getClientAreaTop=function(el){return qx.dom.DomLocation.getClientBoxTop(el)+qx.dom.DomStyle.getBorderTop(el)};qx.dom.DomLocation.getPageAreaLeft=function(el){return qx.dom.DomLocation.getPageBoxLeft(el)+qx.dom.DomStyle.getBorderLeft(el)};qx.dom.DomLocation.getPageAreaTop=function(el){return qx.dom.DomLocation.getPageBoxTop(el)+qx.dom.DomStyle.getBorderTop(el)}};qx.dom.DomLocation.getClientAreaRight=function(el){return qx.dom.DomLocation.getClientAreaLeft(el)+qx.dom.DomDimension.getAreaWidth(el)};qx.dom.DomLocation.getClientAreaBottom=function(el){return qx.dom.DomLocation.getClientAreaTop(el)+qx.dom.DomDimension.getAreaHeight(el)};qx.dom.DomLocation.getPageAreaRight=function(el){return qx.dom.DomLocation.getPageAreaLeft(el)+qx.dom.DomDimension.getAreaWidth(el)};qx.dom.DomLocation.getPageAreaBottom=function(el){return qx.dom.DomLocation.getPageAreaTop(el)+qx.dom.DomDimension.getAreaHeight(el)};qx.dom.DomLocation.getClientInnerLeft=function(el){return qx.dom.DomLocation.getClientAreaLeft(el)+qx.dom.DomStyle.getPaddingLeft(el)};qx.dom.DomLocation.getClientInnerTop=function(el){return qx.dom.DomLocation.getClientAreaTop(el)+qx.dom.DomStyle.getPaddingTop(el)};qx.dom.DomLocation.getClientInnerRight=function(el){return qx.dom.DomLocation.getClientInnerLeft(el)+qx.dom.DomDimension.getInnerWidth(el)};qx.dom.DomLocation.getClientInnerBottom=function(el){return qx.dom.DomLocation.getClientInnerTop(el)+qx.dom.DomDimension.getInnerHeight(el)};qx.dom.DomLocation.getPageInnerLeft=function(el){return qx.dom.DomLocation.getPageAreaLeft(el)+qx.dom.DomStyle.getPaddingLeft(el)};qx.dom.DomLocation.getPageInnerTop=function(el){return qx.dom.DomLocation.getPageAreaTop(el)+qx.dom.DomStyle.getPaddingTop(el)};qx.dom.DomLocation.getPageInnerRight=function(el){return qx.dom.DomLocation.getPageInnerLeft(el)+qx.dom.DomDimension.getInnerWidth(el)};qx.dom.DomLocation.getPageInnerBottom=function(el){return qx.dom.DomLocation.getPageInnerTop(el)+qx.dom.DomDimension.getInnerHeight(el)};if(qx.sys.Client.getInstance().isGecko()){qx.dom.DomLocation.getScreenBoxLeft=function(el){var sum=0;var p=el.parentNode;while(p.nodeType==1){sum+=p.scrollLeft;p=p.parentNode};return el.ownerDocument.getBoxObjectFor(el).screenX-sum};qx.dom.DomLocation.getScreenBoxTop=function(el){var sum=0;var p=el.parentNode;while(p.nodeType==1){sum+=p.scrollTop;p=p.parentNode};return el.ownerDocument.getBoxObjectFor(el).screenY-sum}}else{qx.dom.DomLocation.getScreenBoxLeft=function(el){return qx.dom.DomLocation.getScreenDocumentLeft(el)+qx.dom.DomLocation.getPageBoxLeft(el)};qx.dom.DomLocation.getScreenBoxTop=function(el){return qx.dom.DomLocation.getScreenDocumentTop(el)+qx.dom.DomLocation.getPageBoxTop(el)}};qx.dom.DomLocation.getScreenBoxRight=function(el){return qx.dom.DomLocation.getScreenBoxLeft(el)+qx.dom.DomDimension.getBoxWidth(el)};qx.dom.DomLocation.getScreenBoxBottom=function(el){return qx.dom.DomLocation.getScreenBoxTop(el)+qx.dom.DomDimension.getBoxHeight(el)};qx.dom.DomLocation.getScreenOuterLeft=function(el){return qx.dom.DomLocation.getScreenBoxLeft(el)-qx.dom.DomStyle.getMarginLeft(el)};qx.dom.DomLocation.getScreenOuterTop=function(el){return qx.dom.DomLocation.getScreenBoxTop(el)-qx.dom.DomStyle.getMarginTop(el)};qx.dom.DomLocation.getScreenOuterRight=function(el){return qx.dom.DomLocation.getScreenBoxRight(el)+qx.dom.DomStyle.getMarginRight(el)};qx.dom.DomLocation.getScreenOuterBottom=function(el){return qx.dom.DomLocation.getScreenBoxBottom(el)+qx.dom.DomStyle.getMarginBottom(el)};qx.dom.DomLocation.getScreenAreaLeft=function(el){return qx.dom.DomLocation.getScreenBoxLeft(el)+qx.dom.DomDimension.getInsetLeft(el)};qx.dom.DomLocation.getScreenAreaTop=function(el){return qx.dom.DomLocation.getScreenBoxTop(el)+qx.dom.DomDimension.getInsetTop(el)};qx.dom.DomLocation.getScreenAreaRight=function(el){return qx.dom.DomLocation.getScreenBoxRight(el)-qx.dom.DomDimension.getInsetRight(el)};qx.dom.DomLocation.getScreenAreaBottom=function(el){return qx.dom.DomLocation.getScreenBoxBottom(el)-qx.dom.DomDimension.getInsetBottom(el)};qx.dom.DomLocation.getScreenInnerLeft=function(el){return qx.dom.DomLocation.getScreenAreaLeft(el)+qx.dom.DomStyle.getPaddingLeft(el)};qx.dom.DomLocation.getScreenInnerTop=function(el){return qx.dom.DomLocation.getScreenAreaTop(el)+qx.dom.DomStyle.getPaddingTop(el)};qx.dom.DomLocation.getScreenInnerRight=function(el){return qx.dom.DomLocation.getScreenAreaRight(el)-qx.dom.DomStyle.getPaddingRight(el)};qx.dom.DomLocation.getScreenInnerBottom=function(el){return qx.dom.DomLocation.getScreenAreaBottom(el)-qx.dom.DomStyle.getPaddingBottom(el)};if(qx.sys.Client.getInstance().isGecko()){qx.dom.DomLocation.getScreenDocumentLeft=function(el){return qx.dom.DomLocation.getScreenOuterLeft(el.ownerDocument.body)};qx.dom.DomLocation.getScreenDocumentTop=function(el){return qx.dom.DomLocation.getScreenOuterTop(el.ownerDocument.body)};qx.dom.DomLocation.getScreenDocumentRight=function(el){return qx.dom.DomLocation.getScreenOuterRight(el.ownerDocument.body)};qx.dom.DomLocation.getScreenDocumentBottom=function(el){return qx.dom.DomLocation.getScreenOuterBottom(el.ownerDocument.body)}}else{qx.dom.DomLocation.getScreenDocumentLeft=function(el){return el.document.parentWindow.screenLeft};qx.dom.DomLocation.getScreenDocumentTop=function(el){return el.document.parentWindow.screenTop};qx.dom.DomLocation.getScreenDocumentRight=function(el){};qx.dom.DomLocation.getScreenDocumentBottom=function(el){}};qx.OO.defineClass("qx.dom.DomScroll");qx.dom.DomScroll.getLeftSum=function(el){var sum=0;var p=el.parentNode;while(p.nodeType==1){sum+=p.scrollLeft;p=p.parentNode};return sum};qx.dom.DomScroll.getTopSum=function(el){var sum=0;var p=el.parentNode;while(p.nodeType==1){sum+=p.scrollTop;p=p.parentNode};return sum};qx.OO.defineClass("qx.dom.DomDimension");qx.dom.DomDimension.getOuterWidth=function(el){return qx.dom.DomDimension.getBoxWidth(el)+qx.dom.DomStyle.getMarginLeft(el)+qx.dom.DomStyle.getMarginRight(el)};qx.dom.DomDimension.getOuterHeight=function(el){return qx.dom.DomDimension.getBoxHeight(el)+qx.dom.DomStyle.getMarginTop(el)+qx.dom.DomStyle.getMarginBottom(el)};qx.dom.DomDimension.getBoxWidthForZeroHeight=function(el){var h=el.offsetHeight;if(h==0){var o=el.style.height;el.style.height="1px"};var v=el.offsetWidth;if(h==0){el.style.height=o};return v};qx.dom.DomDimension.getBoxHeightForZeroWidth=function(el){var w=el.offsetWidth;if(w==0){var o=el.style.width;el.style.width="1px"};var v=el.offsetHeight;if(w==0){el.style.width=o};return v};qx.dom.DomDimension.getBoxWidth=function(el){return el.offsetWidth};qx.dom.DomDimension.getBoxHeight=function(el){return el.offsetHeight};if(qx.sys.Client.getInstance().isGecko()){qx.dom.DomDimension.getAreaWidth=function(el){if(el.clientWidth!=0&&el.clientWidth!=(qx.dom.DomStyle.getBorderLeft(el)+qx.dom.DomStyle.getBorderRight(el))){return el.clientWidth}else{return qx.dom.DomDimension.getBoxWidth(el)-qx.dom.DomDimension.getInsetLeft(el)-qx.dom.DomDimension.getInsetRight(el)}};qx.dom.DomDimension.getAreaHeight=function(el){if(el.clientHeight!=0&&el.clientHeight!=(qx.dom.DomStyle.getBorderTop(el)+qx.dom.DomStyle.getBorderBottom(el))){return el.clientHeight}else{return qx.dom.DomDimension.getBoxHeight(el)-qx.dom.DomDimension.getInsetTop(el)-qx.dom.DomDimension.getInsetBottom(el)}}}else{qx.dom.DomDimension.getAreaWidth=function(el){return el.clientWidth!=0?el.clientWidth:(qx.dom.DomDimension.getBoxWidth(el)-qx.dom.DomDimension.getInsetLeft(el)-qx.dom.DomDimension.getInsetRight(el))};qx.dom.DomDimension.getAreaHeight=function(el){return el.clientHeight!=0?el.clientHeight:(qx.dom.DomDimension.getBoxHeight(el)-qx.dom.DomDimension.getInsetTop(el)-qx.dom.DomDimension.getInsetBottom(el))}};qx.dom.DomDimension.getInnerWidth=function(el){return qx.dom.DomDimension.getAreaWidth(el)-qx.dom.DomStyle.getPaddingLeft(el)-qx.dom.DomStyle.getPaddingRight(el)};qx.dom.DomDimension.getInnerHeight=function(el){return qx.dom.DomDimension.getAreaHeight(el)-qx.dom.DomStyle.getPaddingTop(el)-qx.dom.DomStyle.getPaddingBottom(el)};if(qx.sys.Client.getInstance().isMshtml()){qx.dom.DomDimension.getInsetLeft=function(el){return el.clientLeft};qx.dom.DomDimension.getInsetTop=function(el){return el.clientTop};qx.dom.DomDimension.getInsetRight=function(el){if(qx.dom.DomStyle.getStyleProperty(el,"overflowY")==qx.constant.Core.HIDDEN||el.clientWidth==0){return qx.dom.DomStyle.getBorderRight(el)};return Math.max(0,el.offsetWidth-el.clientLeft-el.clientWidth)};qx.dom.DomDimension.getInsetBottom=function(el){if(qx.dom.DomStyle.getStyleProperty(el,"overflowX")==qx.constant.Core.HIDDEN||el.clientHeight==0){return qx.dom.DomStyle.getBorderBottom(el)};return Math.max(0,el.offsetHeight-el.clientTop-el.clientHeight)}}else{qx.dom.DomDimension.getInsetLeft=function(el){return qx.dom.DomStyle.getBorderLeft(el)};qx.dom.DomDimension.getInsetTop=function(el){return qx.dom.DomStyle.getBorderTop(el)};qx.dom.DomDimension.getInsetRight=function(el){if(el.clientWidth==0){var ov=qx.dom.DomStyle.getStyleProperty(el,qx.constant.Style.PROPERTY_OVERFLOW_BOTH);var sbv=ov=="scroll"||ov=="-moz-scrollbars-vertical"?16:0;return Math.max(0,qx.dom.DomStyle.getBorderRight(el)+sbv)};return Math.max(0,el.offsetWidth-el.clientWidth-qx.dom.DomStyle.getBorderLeft(el))};qx.dom.DomDimension.getInsetBottom=function(el){if(el.clientHeight==0){var ov=qx.dom.DomStyle.getStyleProperty(el,qx.constant.Style.PROPERTY_OVERFLOW_BOTH);var sbv=ov=="scroll"||ov=="-moz-scrollbars-horizontal"?16:0;return Math.max(0,qx.dom.DomStyle.getBorderBottom(el)+sbv)};return Math.max(0,el.offsetHeight-el.clientHeight-qx.dom.DomStyle.getBorderTop(el))}};qx.dom.DomDimension.getScrollBarSizeLeft=function(el){return 0};qx.dom.DomDimension.getScrollBarSizeTop=function(el){return 0};qx.dom.DomDimension.getScrollBarSizeRight=function(el){return qx.dom.DomDimension.getInsetRight(el)-qx.dom.DomStyle.getBorderRight(el)};qx.dom.DomDimension.getScrollBarSizeBottom=function(el){return qx.dom.DomDimension.getInsetBottom(el)-qx.dom.DomStyle.getBorderBottom(el)};qx.dom.DomDimension.getScrollBarVisibleX=function(el){return qx.dom.DomDimension.getScrollBarSizeRight(el)>0};qx.dom.DomDimension.getScrollBarVisibleY=function(el){return qx.dom.DomDimension.getScrollBarSizeBottom(el)>0};qx.OO.defineClass("qx.manager.object.AliasManager",qx.core.Target,function(){qx.core.Target.call(this);this._aliases={};this._uris={};this.add("static",this.getSetting("staticUri"))});qx.Settings.setDefault("resourceUri","../../resource");qx.Settings.setDefault("staticUri",qx.Settings.getValue("resourceUri")+"/static");qx.Proto.add=function(vPrefix,vPath){this._aliases[vPrefix]=vPath;this.createDispatchEvent(qx.constant.Event.CHANGE)};qx.Proto.remove=function(vPrefix){delete this._aliases[vPrefix];this.createDispatchEvent(qx.constant.Event.CHANGE)};qx.Proto.resolve=function(vPrefix){return this._aliases[vPrefix]};qx.Proto.resolvePath=function(vPath,vForceUpdate){var vUri=this._uris[vPath];if(vForceUpdate||typeof vUri===qx.constant.Type.UNDEFINED){vUri=this._uris[vPath]=this._computePath(vPath)};return vUri};qx.Proto._computePath=function(vPath,vForce){switch(vPath.charAt(0)){case qx.constant.Core.SLASH:case qx.constant.Core.DOT:return vPath;default:if(qx.lang.String.startsWith(vPath,qx.constant.Net.URI_HTTP)||qx.lang.String.startsWith(vPath,qx.constant.Net.URI_HTTPS)||qx.lang.String.startsWith(vPath,qx.constant.Net.URI_FILE)){return vPath};var vAlias=vPath.substring(0,vPath.indexOf(qx.constant.Core.SLASH));var vResolved=this._aliases[vAlias];if(qx.util.Validation.isValidString(vResolved)){return vResolved+vPath.substring(vAlias.length)};return vPath}};qx.Proto.dispose=function(){if(this.getDisposed()){return};this._aliases=null;this._uris=null;return qx.core.Target.prototype.dispose.call(this)};qx.Class.getInstance=qx.util.Return.returnInstance;qx.OO.defineClass("qx.constant.Net",{NAMESPACE_SVG:"http:/"+"/www.w3.org/2000/svg",NAMESPACE_SMIL:"http:/"+"/www.w3.org/2001/SMIL20/",NAMESPACE_MML:"http:/"+"/www.w3.org/1998/Math/MathML",NAMESPACE_CML:"http:/"+"/www.xml-cml.org",NAMESPACE_XLINK:"http:/"+"/www.w3.org/1999/xlink",NAMESPACE_XHTML:"http:/"+"/www.w3.org/1999/xhtml",NAMESPACE_XUL:"http:/"+"/www.mozilla.org/keymaster/gatekeeper/there.is.only.xul",NAMESPACE_XBL:"http:/"+"/www.mozilla.org/xbl",NAMESPACE_FO:"http:/"+"/www.w3.org/1999/XSL/Format",NAMESPACE_XSL:"http:/"+"/www.w3.org/1999/XSL/Transform",NAMESPACE_XSLT:"http:/"+"/www.w3.org/1999/XSL/Transform",NAMESPACE_XI:"http:/"+"/www.w3.org/2001/XInclude",NAMESPACE_XFORMS:"http:/"+"/www.w3.org/2002/01/xforms",NAMESPACE_SAXON:"http:/"+"/icl.com/saxon",NAMESPACE_XALAN:"http:/"+"/xml.apache.org/xslt",NAMESPACE_XSD:"http:/"+"/www.w3.org/2001/XMLSchema",NAMESPACE_DT:"http:/"+"/www.w3.org/2001/XMLSchema-datatypes",NAMESPACE_XSI:"http:/"+"/www.w3.org/2001/XMLSchema-instance",NAMESPACE_RDF:"http:/"+"/www.w3.org/1999/02/22-rdf-syntax-ns#",NAMESPACE_RDFS:"http:/"+"/www.w3.org/2000/01/rdf-schema#",NAMESPACE_DC:"http:/"+"/purl.org/dc/elements/1.1/",NAMESPACE_DCQ:"http:/"+"/purl.org/dc/qualifiers/1.0",NAMESPACE_SOAPENV:"http:/"+"/schemas.xmlsoap.org/soap/envelope/",NAMESPACE_WSDL:"http:/"+"/schemas.xmlsoap.org/wsdl/",NAMESPACE_ADOBESVGEXTENSIONS:"http:/"+"/ns.adobe.com/AdobeSVGViewerExtensions/3.0/",STATE_CREATED:"created",STATE_CONFIGURED:"configured",STATE_QUEUED:"queued",STATE_SENDING:"sending",STATE_RECEIVING:"receiving",STATE_COMPLETED:"completed",STATE_ABORTED:"aborted",STATE_FAILED:"failed",STATE_TIMEOUT:"timeout",PROTOCOL_HTTP:"http",PROTOCOL_HTTPS:"https",PROTOCOL_FTP:"ftp",PROTOCOL_FILE:"file",URI_HTTP:"http:/"+"/",URI_HTTPS:"https:/"+"/",URI_FTP:"ftp:/"+"/",URI_FILE:"file:/"+"/",METHOD_GET:"GET",METHOD_POST:"POST",METHOD_PUT:"PUT",METHOD_HEAD:"HEAD",METHOD_DELETE:"DELETE"});qx.OO.defineClass("qx.dom.DomOffset");if(qx.sys.Client.getInstance().isGecko()){qx.dom.DomOffset.getLeft=function(el){var val=el.offsetLeft;var pa=el.parentNode;var pose=qx.dom.DomStyle.getStyleProperty(el,"position");var posp=qx.dom.DomStyle.getStyleProperty(pa,"position");if(pose!=qx.constant.Style.POSITION_ABSOLUTE&&pose!=qx.constant.Style.POSITION_FIXED){val-=qx.dom.DomStyle.getBorderLeft(pa)};if(posp!=qx.constant.Style.POSITION_ABSOLUTE&&posp!=qx.constant.Style.POSITION_FIXED){while(pa){pa=pa.parentNode;if(!pa||qx.util.Validation.isInvalidString(pa.tagName)){break};var posi=qx.dom.DomStyle.getStyleProperty(pa,"position");if(posi==qx.constant.Style.POSITION_ABSOLUTE||posi==qx.constant.Style.POSITION_FIXED){val-=qx.dom.DomStyle.getBorderLeft(pa)+qx.dom.DomStyle.getPaddingLeft(pa);break}}};return val};qx.dom.DomOffset.getTop=function(el){var val=el.offsetTop;var pa=el.parentNode;var pose=qx.dom.DomStyle.getStyleProperty(el,"position");var posp=qx.dom.DomStyle.getStyleProperty(pa,"position");if(pose!=qx.constant.Style.POSITION_ABSOLUTE&&pose!=qx.constant.Style.POSITION_FIXED){val-=qx.dom.DomStyle.getBorderTop(pa)};if(posp!=qx.constant.Style.POSITION_ABSOLUTE&&posp!=qx.constant.Style.POSITION_FIXED){while(pa){pa=pa.parentNode;if(!pa||qx.util.Validation.isInvalidString(pa.tagName)){break};var posi=qx.dom.DomStyle.getStyleProperty(pa,"position");if(posi==qx.constant.Style.POSITION_ABSOLUTE||posi==qx.constant.Style.POSITION_FIXED){val-=qx.dom.DomStyle.getBorderTop(pa)+qx.dom.DomStyle.getPaddingTop(pa);break}}};return val}}else{qx.dom.DomOffset.getLeft=function(el){return el.offsetLeft};qx.dom.DomOffset.getTop=function(el){return el.offsetTop}};qx.OO.defineClass("qx.dom.DomScrollIntoView");qx.dom.BODY_TAG_NAME="BODY";qx.dom.DomScrollIntoView.scrollX=function(vElement,vAlignLeft){var vParentWidth,vParentScrollLeft,vWidth,vHasScroll;var vParent=vElement.parentNode;var vOffset=vElement.offsetLeft;var vWidth=vElement.offsetWidth;while(vParent){switch(qx.dom.DomStyle.getStyleProperty(vParent,qx.constant.Style.PROPERTY_OVERFLOW_BOTH)){case qx.constant.Style.OVERFLOW_BOTH:case qx.constant.Style.OVERFLOW_AUTO:case qx.constant.Style.OVERFLOW_MOZ_HORIZONTAL:vHasScroll=true;break;default:switch(qx.dom.DomStyle.getStyleProperty(vParent,qx.constant.Style.PROPERTY_OVERFLOW_HORIZONTAL)){case qx.constant.Style.OVERFLOW_BOTH:case qx.constant.Style.OVERFLOW_AUTO:vHasScroll=true;break;default:vHasScroll=false}};if(vHasScroll){vParentWidth=vParent.clientWidth;vParentScrollLeft=vParent.scrollLeft;if(vAlignLeft){vParent.scrollLeft=vOffset}else if(vAlignLeft==false){vParent.scrollLeft=vOffset+vWidth-vParentWidth}else if(vWidth>vParentWidth||vOffset<vParentScrollLeft){vParent.scrollLeft=vOffset}else if((vOffset+vWidth)>(vParentScrollLeft+vParentWidth)){vParent.scrollLeft=vOffset+vWidth-vParentWidth};vOffset=vParent.offsetLeft;vWidth=vParent.offsetWidth}else{vOffset+=vParent.offsetLeft};if(vParent.tagName==qx.dom.BODY_TAG_NAME){break};vParent=vParent.parentNode};return true};qx.dom.DomScrollIntoView.scrollY=function(vElement,vAlignTop){var vParentHeight,vParentScrollTop,vHeight,vHasScroll;var vParent=vElement.parentNode;var vOffset=vElement.offsetTop;var vHeight=vElement.offsetHeight;while(vParent){switch(qx.dom.DomStyle.getStyleProperty(vParent,qx.constant.Style.PROPERTY_OVERFLOW_BOTH)){case qx.constant.Style.OVERFLOW_BOTH:case qx.constant.Style.OVERFLOW_AUTO:case qx.constant.Style.OVERFLOW_MOZ_VERTICAL:vHasScroll=true;break;default:switch(qx.dom.DomStyle.getStyleProperty(vParent,qx.constant.Style.PROPERTY_OVERFLOW_VERTICAL)){case qx.constant.Style.OVERFLOW_BOTH:case qx.constant.Style.OVERFLOW_AUTO:vHasScroll=true;break;default:vHasScroll=false}};if(vHasScroll){vParentHeight=vParent.clientHeight;vParentScrollTop=vParent.scrollTop;if(vAlignTop){vParent.scrollTop=vOffset}else if(vAlignTop==false){vParent.scrollTop=vOffset+vHeight-vParentHeight}else if(vHeight>vParentHeight||vOffset<vParentScrollTop){vParent.scrollTop=vOffset}else if((vOffset+vHeight)>(vParentScrollTop+vParentHeight)){vParent.scrollTop=vOffset+vHeight-vParentHeight};vOffset=vParent.offsetTop;vHeight=vParent.offsetHeight}else{vOffset+=vParent.offsetTop};if(vParent.tagName==qx.dom.BODY_TAG_NAME){break};vParent=vParent.parentNode};return true};qx.OO.defineClass("qx.event.type.MouseEvent",qx.event.type.DomEvent,function(vType,vDomEvent,vDomTarget,vTarget,vOriginalTarget,vRelatedTarget){qx.event.type.DomEvent.call(this,vType,vDomEvent,vDomTarget,vTarget,vOriginalTarget);if(vRelatedTarget){this.setRelatedTarget(vRelatedTarget)}});qx.Class.C_BUTTON_LEFT="left";qx.Class.C_BUTTON_MIDDLE="middle";qx.Class.C_BUTTON_RIGHT="right";qx.Class.C_BUTTON_NONE="none";qx.event.type.MouseEvent._screenX=qx.event.type.MouseEvent._screenY=qx.event.type.MouseEvent._clientX=qx.event.type.MouseEvent._clientY=qx.event.type.MouseEvent._pageX=qx.event.type.MouseEvent._pageY=0;qx.event.type.MouseEvent._button=null;qx.event.type.MouseEvent._storeEventState=function(e){qx.event.type.MouseEvent._screenX=e.getScreenX();qx.event.type.MouseEvent._screenY=e.getScreenY();qx.event.type.MouseEvent._clientX=e.getClientX();qx.event.type.MouseEvent._clientY=e.getClientY();qx.event.type.MouseEvent._pageX=e.getPageX();qx.event.type.MouseEvent._pageY=e.getPageY();qx.event.type.MouseEvent._button=e.getButton()};qx.event.type.MouseEvent.getScreenX=function(){return qx.event.type.MouseEvent._screenX};qx.event.type.MouseEvent.getScreenY=function(){return qx.event.type.MouseEvent._screenY};qx.event.type.MouseEvent.getClientX=function(){return qx.event.type.MouseEvent._clientX};qx.event.type.MouseEvent.getClientY=function(){return qx.event.type.MouseEvent._clientY};qx.event.type.MouseEvent.getPageX=function(){return qx.event.type.MouseEvent._pageX};qx.event.type.MouseEvent.getPageY=function(){return qx.event.type.MouseEvent._pageY};qx.event.type.MouseEvent.getButton=function(){return qx.event.type.MouseEvent._button};if(qx.sys.Client.getInstance().isMshtml()){qx.event.type.MouseEvent.buttons={left:1,right:2,middle:4}}else{qx.event.type.MouseEvent.buttons={left:0,right:2,middle:1}};qx.Proto.getScreenX=function(){return this.getDomEvent().screenX};qx.Proto.getScreenY=function(){return this.getDomEvent().screenY};if(qx.sys.Client.getInstance().isMshtml()){qx.OO.addFastProperty({name:"pageX",readOnly:true});qx.OO.addFastProperty({name:"pageY",readOnly:true});if(qx.sys.Client.getInstance().isInQuirksMode()){qx.Proto._computePageX=function(){return this.getDomEvent().clientX+document.documentElement.scrollLeft};qx.Proto._computePageY=function(){return this.getDomEvent().clientY+document.documentElement.scrollTop}}else{qx.Proto._computePageX=function(){return this.getDomEvent().clientX+document.body.scrollLeft};qx.Proto._computePageY=function(){return this.getDomEvent().clientY+document.body.scrollTop}}}else if(qx.sys.Client.getInstance().isGecko()){qx.Proto.getPageX=function(){return this.getDomEvent().pageX};qx.Proto.getPageY=function(){return this.getDomEvent().pageY}}else{qx.Proto.getPageX=function(){return this.getDomEvent().clientX};qx.Proto.getPageY=function(){return this.getDomEvent().clientY}};if(qx.sys.Client.getInstance().isMshtml()||qx.sys.Client.getInstance().isGecko()){qx.Proto.getClientX=function(){return this.getDomEvent().clientX};qx.Proto.getClientY=function(){return this.getDomEvent().clientY}}else{qx.OO.addFastProperty({name:"clientX",readOnly:true});qx.OO.addFastProperty({name:"clientY",readOnly:true});qx.Proto._computeClientX=function(){return this.getDomEvent().clientX+(document.body&&document.body.scrollLeft!=null?document.body.scrollLeft:0)};qx.Proto._computeClientY=function(){return this.getDomEvent().clientY+(document.body&&document.body.scrollTop!=null?document.body.scrollTop:0)}};qx.OO.addFastProperty({name:"button",readOnly:true});qx.Proto.isLeftButtonPressed=function(){return this.getButton()===qx.event.type.MouseEvent.C_BUTTON_LEFT};qx.Proto.isMiddleButtonPressed=function(){return this.getButton()===qx.event.type.MouseEvent.C_BUTTON_MIDDLE};qx.Proto.isRightButtonPressed=function(){return this.getButton()===qx.event.type.MouseEvent.C_BUTTON_RIGHT};if(qx.sys.Client.getInstance().isMshtml()){qx.Proto._computeButton=function(){switch(this.getDomEvent().button){case 1:return qx.event.type.MouseEvent.C_BUTTON_LEFT;case 2:return qx.event.type.MouseEvent.C_BUTTON_RIGHT;case 4:return qx.event.type.MouseEvent.C_BUTTON_MIDDLE;default:return qx.event.type.MouseEvent.C_BUTTON_NONE}}}else{qx.Proto._computeButton=function(){switch(this.getDomEvent().button){case 0:return qx.event.type.MouseEvent.C_BUTTON_LEFT;case 1:return qx.event.type.MouseEvent.C_BUTTON_MIDDLE;case 2:return qx.event.type.MouseEvent.C_BUTTON_RIGHT;default:return qx.event.type.MouseEvent.C_BUTTON_NONE}}};qx.OO.addFastProperty({name:"wheelDelta",readOnly:true});if(qx.sys.Client.getInstance().isMshtml()){qx.Proto._computeWheelDelta=function(){return this.getDomEvent().wheelDelta?this.getDomEvent().wheelDelta/40:0}}else{qx.Proto._computeWheelDelta=function(){return -(this.getDomEvent().detail||0)}};qx.OO.defineClass("qx.manager.object.IframeManager",qx.manager.object.ObjectManager,function(){qx.manager.object.ObjectManager.call(this)});qx.Proto.handleMouseDown=function(evt){var iframeMap=this.getAll();for(var key in iframeMap){var iframe=iframeMap[key];iframe.block()}};qx.Proto.handleMouseUp=function(evt){var iframeMap=this.getAll();for(var key in iframeMap){var iframe=iframeMap[key];iframe.release()}};qx.Class.getInstance=qx.util.Return.returnInstance;qx.OO.defineClass("qx.io.image.ImagePreloaderSystem",qx.core.Target,function(vPreloadList,vCallBack,vCallBackScope){qx.core.Target.call(this);this._list=vPreloadList;this._timer=new qx.client.Timer(this.getSetting("timeout"));this._timer.addEventListener("interval",this._oninterval,this);if(vCallBack){this.addEventListener(qx.constant.Event.COMPLETED,vCallBack,vCallBackScope||null);this.start()}});qx.Proto._stopped=false;qx.Settings.setDefault("timeout",3000);qx.Proto.start=function(){if(qx.lang.Object.isEmpty(this._list)){this.createDispatchEvent(qx.constant.Event.COMPLETED);return};for(var vSource in this._list){var vPreloader=qx.manager.object.ImagePreloaderManager.getInstance().create(qx.manager.object.AliasManager.getInstance().resolvePath(vSource));if(vPreloader.isErroneous()||vPreloader.isLoaded()){delete this._list[vSource]}else{vPreloader._origSource=vSource;vPreloader.addEventListener(qx.constant.Event.LOAD,this._onload,this);vPreloader.addEventListener(qx.constant.Event.ERROR,this._onerror,this)}};this._check()};qx.Proto._onload=function(e){delete this._list[e.getTarget()._origSource];this._check()};qx.Proto._onerror=function(e){delete this._list[e.getTarget()._origSource];this._check()};qx.Proto._oninterval=function(e){this.error("Could not preload: "+qx.lang.Object.getKeysAsString(this._list));this._stopped=true;this._timer.stop();this.createDispatchEvent(qx.constant.Event.COMPLETED)};qx.Proto._check=function(){if(this._stopped){return};if(qx.lang.Object.isEmpty(this._list)){this._timer.stop();this.createDispatchEvent(qx.constant.Event.COMPLETED)}else{this._timer.restart()}};qx.Proto.dispose=function(){if(this.getDisposed()){return true};this._list=null;if(this._timer){this._timer.dispose();this._timer=null};return qx.core.Target.prototype.dispose.call(this)};qx.OO.defineClass("qx.client.Timer",qx.core.Target,function(vInterval){qx.core.Target.call(this);this.setEnabled(false);if(qx.util.Validation.isValidNumber(vInterval)){this.setInterval(vInterval)};var o=this;this.__oninterval=function(){o._oninterval()}});qx.OO.addProperty({name:"interval",type:qx.constant.Type.NUMBER,defaultValue:1000});qx.Proto._intervalHandle=null;qx.Proto._modifyEnabled=function(propValue,propOldValue,propData){if(propOldValue){window.clearInterval(this._intervalHandle);this._intervalHandle=null}else if(propValue){this._intervalHandle=window.setInterval(this.__oninterval,this.getInterval())};return true};qx.Proto.start=function(){this.setEnabled(true)};qx.Proto.startWith=function(vInterval){this.setInterval(vInterval);this.start()};qx.Proto.stop=function(){this.setEnabled(false)};qx.Proto.restart=function(){this.stop();this.start()};qx.Proto.restartWith=function(vInterval){this.stop();this.startWith(vInterval)};qx.Proto._oninterval=function(){if(this.getEnabled()){this.createDispatchEvent(qx.constant.Event.INTERVAL)}};qx.Proto.dispose=function(){if(this.getDisposed()){return};this.stop();if(this._intervalHandler){window.clearInterval(this._intervalHandle);this._intervalHandler=null};this.__oninterval=null;return qx.core.Target.prototype.dispose.call(this)};qx.client.Timer.once=function(vFunction,vObject,vTimeout){var vTimer=new qx.client.Timer(vTimeout);vTimer.addEventListener(qx.constant.Event.INTERVAL,function(e){vFunction.call(vObject,e);vTimer.dispose();vObject=null},vObject);vTimer.start()};qx.OO.defineClass("qx.manager.object.ImagePreloaderManager",qx.manager.object.ObjectManager,function(){qx.manager.object.ObjectManager.call(this)});qx.Proto.add=function(vObject){this._objects[vObject.getUri()]=vObject};qx.Proto.remove=function(vObject){delete this._objects[vObject.getUri()]};qx.Proto.has=function(vSource){return this._objects[vSource]!=null};qx.Proto.get=function(vSource){return this._objects[vSource]};qx.Proto.create=function(vSource){if(this._objects[vSource]){return this._objects[vSource]};return new qx.io.image.ImagePreloader(vSource)};qx.Class.getInstance=qx.util.Return.returnInstance;qx.OO.defineClass("qx.io.image.ImagePreloader",qx.core.Target,function(vSource){if(qx.manager.object.ImagePreloaderManager.getInstance().has(vSource)){this.debug("Reuse qx.io.image.ImagePreloader in old-style!");this.debug("Please use qx.manager.object.ImagePreloaderManager.getInstance().create(source) instead!");return qx.manager.object.ImagePreloaderManager.getInstance().get(vSource)};qx.core.Target.call(this);this._element=new Image;this._element.qx_ImagePreloader=this;if(qx.sys.Client.getInstance().isWebkit()){var self=this;this._element.onload=function(e){return self._onload(e)};this._element.onerror=function(e){return self._onerror(e)}}else{this._element.onload=qx.io.image.ImagePreloader.__onload;this._element.onerror=qx.io.image.ImagePreloader.__onerror};this._source=vSource;this._element.src=vSource;if(qx.sys.Client.getInstance().isMshtml()){this._isPng=/\.png$/i.test(this._element.nameProp)};qx.manager.object.ImagePreloaderManager.getInstance().add(this)});qx.Proto._source=null;qx.Proto._isLoaded=false;qx.Proto._isErroneous=false;qx.Proto.getUri=function(){return this._source};qx.Proto.getSource=function(){return this._source};qx.Proto.isLoaded=function(){return this._isLoaded};qx.Proto.isErroneous=function(){return this._isErroneous};qx.Proto._isPng=false;qx.Proto.getIsPng=function(){return this._isPng};if(qx.sys.Client.getInstance().isGecko()){qx.Proto.getWidth=function(){return this._element.naturalWidth};qx.Proto.getHeight=function(){return this._element.naturalHeight}}else{qx.Proto.getWidth=function(){return this._element.width};qx.Proto.getHeight=function(){return this._element.height}};qx.io.image.ImagePreloader.__onload=function(e){this.qx_ImagePreloader._onload()};qx.io.image.ImagePreloader.__onerror=function(e){this.qx_ImagePreloader._onerror()};qx.Proto._onload=function(){if(this._isLoaded||this._isErroneous){return};this._isLoaded=true;this._isErroneous=false;if(this.hasEventListeners(qx.constant.Event.LOAD)){this.dispatchEvent(new qx.event.type.Event(qx.constant.Event.LOAD),true)}};qx.Proto._onerror=function(){if(this._isLoaded||this._isErroneous){return};this.debug("Could not load: "+this._source);this._isLoaded=false;this._isErroneous=true;if(this.hasEventListeners(qx.constant.Event.ERROR)){this.dispatchEvent(new qx.event.type.Event(qx.constant.Event.ERROR),true)}};qx.Proto.dispose=function(){if(this.getDisposed()){return};if(this._element){this._element.onload=this._element.onerror=null;this._element.qx_ImagePreloader=null;this._element=null};this._isLoaded=this._isErroneous=this._isPng=false;return qx.core.Target.prototype.dispose.call(this)};qx.OO.defineClass("qx.manager.object.ImageManager",qx.manager.object.ObjectManager,function(){qx.manager.object.ObjectManager.call(this);this._iconThemes={};this._widgetThemes={};this._sources={};qx.manager.object.AliasManager.getInstance().addEventListener(qx.constant.Event.CHANGE,this._onaliaschange,this)});qx.Settings.setDefault("iconTheme","qx.theme.icon.CrystalSvgIconTheme");qx.Settings.setDefault("widgetTheme","qx.theme.widget.WindowsWidgetTheme");qx.OO.addProperty({name:"iconTheme",type:qx.constant.Type.OBJECT,instance:"qx.renderer.theme.IconTheme"});qx.OO.addProperty({name:"widgetTheme",type:qx.constant.Type.OBJECT,instance:"qx.renderer.theme.WidgetTheme"});qx.Proto.registerIconTheme=function(vThemeClass){this._iconThemes[vThemeClass.classname]=vThemeClass;if(vThemeClass.classname==this.getSetting("iconTheme")){this.setIconTheme(vThemeClass.getInstance())}};qx.Proto.registerWidgetTheme=function(vThemeClass){this._widgetThemes[vThemeClass.classname]=vThemeClass;if(vThemeClass.classname==this.getSetting("widgetTheme")){this.setWidgetTheme(vThemeClass.getInstance())}};qx.Proto.setIconThemeById=function(vId){this.setIconTheme(this._iconThemes[vId].getInstance())};qx.Proto.setWidgetThemeById=function(vId){this.setWidgetTheme(this._widgetThemes[vId].getInstance())};qx.Proto._onaliaschange=function(){this._updateImages()};qx.Proto._modifyIconTheme=function(propValue,propOldValue,propData){propValue?qx.manager.object.AliasManager.getInstance().add("icon",propValue.getSetting("imageUri")):qx.manager.object.AliasManager.getInstance().remove("icon");return true};qx.Proto._modifyWidgetTheme=function(propValue,propOldValue,propData){propValue?qx.manager.object.AliasManager.getInstance().add("widget",propValue.getSetting("imageUri")):qx.manager.object.AliasManager.getInstance().remove("widget");return true};qx.Proto.getPreloadImageList=function(){var vPreload={};for(var vSource in this._sources){if(this._sources[vSource]){vPreload[vSource]=true}};return vPreload};qx.Proto.getPostPreloadImageList=function(){var vPreload={};for(var vSource in this._sources){if(!this._sources[vSource]){vPreload[vSource]=true}};return vPreload};qx.Proto._updateImages=function(){var vAll=this.getAll();var vPreMgr=qx.manager.object.ImagePreloaderManager.getInstance();var vAliasMgr=qx.manager.object.AliasManager.getInstance();var vObject;for(var vHashCode in vAll){vObject=vAll[vHashCode];vObject.setPreloader(vPreMgr.create(vAliasMgr.resolvePath(vObject.getSource(),true)))};return true};qx.Proto.createThemeList=function(vParent,xCor,yCor){var vButton;var vThemes=this._iconThemes;var vIcon="icon/16/icons.png";var vPrefix="Icon Theme: ";var vEvent=qx.constant.Event.EXECUTE;for(var vId in vThemes){var vObj=vThemes[vId].getInstance();var vButton=new qx.ui.form.Button(vPrefix+vObj.getTitle(),vIcon);vButton.setLocation(xCor,yCor);vButton.addEventListener(vEvent,new Function("qx.manager.object.ImageManager.getInstance().setIconThemeById('"+vId+"')"));vParent.add(vButton);yCor+=30}};qx.Proto.preload=function(vPath){qx.manager.object.ImagePreloaderManager.getInstance().create(qx.manager.object.AliasManager.getInstance().resolvePath(vPath))};qx.Proto.dispose=function(){if(this.getDisposed()){return};qx.manager.object.AliasManager.getInstance().removeEventListener(qx.constant.Event.CHANGE,this._onaliaschange,this);this._sources=null;this._iconThemes=null;this._widgetThemes=null;return qx.manager.object.ObjectManager.prototype.dispose.call(this)};qx.Class.getInstance=qx.util.Return.returnInstance;qx.OO.defineClass("qx.renderer.theme.IconTheme",qx.core.Object,function(vTitle){qx.core.Object.call(this);this.setTitle(vTitle)});qx.OO.addProperty({name:"title",type:qx.constant.Type.STRING,allowNull:false,defaultValue:qx.constant.Core.EMPTY});qx.OO.defineClass("qx.theme.icon.CrystalSvgIconTheme",qx.renderer.theme.IconTheme,function(){qx.renderer.theme.IconTheme.call(this,"Crystal SVG")});qx.Settings.setDefault("imageUri",qx.Settings.getValueOfClass("qx.manager.object.AliasManager","resourceUri")+"/icon/crystalsvg");qx.Class.getInstance=qx.util.Return.returnInstance;qx.manager.object.ImageManager.getInstance().registerIconTheme(qx.Class);qx.OO.defineClass("qx.renderer.theme.WidgetTheme",qx.core.Object,function(vTitle){qx.core.Object.call(this);this.setTitle(vTitle)});qx.OO.addProperty({name:"title",type:qx.constant.Type.STRING,allowNull:false,defaultValue:qx.constant.Core.EMPTY});qx.OO.defineClass("qx.theme.widget.WindowsWidgetTheme",qx.renderer.theme.WidgetTheme,function(){qx.renderer.theme.WidgetTheme.call(this,"Windows")});qx.Settings.setDefault("imageUri",qx.Settings.getValueOfClass("qx.manager.object.AliasManager","resourceUri")+"/widget/windows");qx.Class.getInstance=qx.util.Return.returnInstance;qx.manager.object.ImageManager.getInstance().registerWidgetTheme(qx.Class);qx.OO.defineClass("qx.renderer.font.FontCache");qx.renderer.font.FontCache=function(propValue,propData){var propKey;var propKeyAsStyle=false;switch(typeof propValue){case qx.constant.Type.STRING:if(propValue!=qx.constant.Core.EMPTY){propValue=propKey=propValue.toLowerCase();break};return propValue;case qx.constant.Type.NUMBER:propKey=propValue.toString();break;case qx.constant.Type.OBJECT:if(propValue==null||propValue instanceof qx.renderer.font.Font){return propValue};if(typeof propValue.join===qx.constant.Type.FUNCTION){propKey=propValue.join(qx.constant.Core.SPACE).toLowerCase();break};default:return propValue};if(qx.renderer.font.FontCache._data[propKey]){return qx.renderer.font.FontCache._data[propKey]};return qx.renderer.font.FontCache._data[propKey]=qx.renderer.font.Font.fromString(propKey)};qx.renderer.font.FontCache._data={};qx.OO.defineClass("qx.renderer.font.Font",qx.core.Object,function(vSize,vName){qx.core.Object.call(this);this._defs={};if(qx.util.Validation.isValidNumber(vSize)){this.setSize(vSize)};if(qx.util.Validation.isValidString(vName)){this.setName(vName)}});qx.Class.STYLE_BOLD="bold";qx.Class.STYLE_NORMAL="normal";qx.Class.STYLE_ITALIC="italic";qx.Class.STYLE_UNDERLINE="underline";qx.Class.STYLE_STRIKEOUT="strikeout";qx.OO.addProperty({name:"size",type:qx.constant.Type.NUMBER,impl:"style"});qx.OO.addProperty({name:"name",type:qx.constant.Type.STRING,impl:"style"});qx.OO.addProperty({name:"bold",type:qx.constant.Type.BOOLEAN,defaultValue:false,impl:"style"});qx.OO.addProperty({name:"italic",type:qx.constant.Type.BOOLEAN,defaultValue:false,impl:"style"});qx.OO.addProperty({name:"underline",type:qx.constant.Type.BOOLEAN,defaultValue:false,impl:"style"});qx.OO.addProperty({name:"strikeout",type:qx.constant.Type.BOOLEAN,defaultValue:false,impl:"style"});qx.Proto._modifyStyle=function(propValue,propOldValue,propData){this._needsCompilation=true;return true};qx.renderer.font.Font.fromString=function(s){var vFont=new qx.renderer.font.Font;var vAllParts=s.split(/\s+/);var vName=[];var vPart;for(var i=0;i<vAllParts.length;i++){switch(vPart=vAllParts[i]){case qx.renderer.font.Font.STYLE_BOLD:vFont.setBold(true);break;case qx.renderer.font.Font.STYLE_ITALIC:vFont.setItalic(true);break;case qx.renderer.font.Font.STYLE_UNDERLINE:vFont.setUnderline(true);break;case qx.renderer.font.Font.STYLE_STRIKEOUT:vFont.setStrikeout(true);break;default:var vTemp=parseFloat(vPart);if(vTemp==vPart||qx.lang.String.contains(vPart,qx.constant.Core.PIXEL)){vFont.setSize(vTemp)}else{vName.push(vPart)};break}};if(vName.length>0){vFont.setName(vName.join(qx.constant.Core.SPACE))};return vFont};qx.renderer.font.Font.PROPERTY_FAMILY="fontFamily";qx.renderer.font.Font.PROPERTY_SIZE="fontSize";qx.renderer.font.Font.PROPERTY_WEIGHT="fontWeight";qx.renderer.font.Font.PROPERTY_STYLE="fontStyle";qx.renderer.font.Font.PROPERTY_DECORATION="textDecoration";qx.Proto._needsCompilation=true;qx.Proto._compile=function(){var vName=this.getName();var vSize=this.getSize();var vBold=this.getBold();var vItalic=this.getItalic();var vUnderline=this.getUnderline();var vStrikeout=this.getStrikeout();var vDecoration=qx.constant.Core.EMPTY;if(this.getUnderline()){vDecoration=qx.renderer.font.Font.STYLE_UNDERLINE};if(this.getStrikeout()){vDecoration+=qx.constant.Core.SPACE+qx.renderer.font.Font.STYLE_STRIKEOUT};this._defs.fontFamily=qx.util.Validation.isValidString(vName)?vName:qx.constant.Core.EMPTY;this._defs.fontSize=qx.util.Validation.isValidNumber(vSize)?vSize+qx.constant.Core.PIXEL:qx.constant.Core.EMPTY;this._defs.fontWeight=this.getBold()?qx.renderer.font.Font.STYLE_BOLD:qx.renderer.font.Font.STYLE_NORMAL;this._defs.fontStyle=this.getItalic()?qx.renderer.font.Font.STYLE_ITALIC:qx.renderer.font.Font.STYLE_NORMAL;this._defs.textDecoration=qx.util.Validation.isValidString(vDecoration)?vDecoration:qx.constant.Core.EMPTY;this._needsCompilation=false};qx.Proto._applyWidget=function(vWidget){if(this._needsCompilation){this._compile()};vWidget.setStyleProperty(qx.renderer.font.Font.PROPERTY_FAMILY,this._defs.fontFamily);vWidget.setStyleProperty(qx.renderer.font.Font.PROPERTY_SIZE,this._defs.fontSize);vWidget.setStyleProperty(qx.renderer.font.Font.PROPERTY_WEIGHT,this._defs.fontWeight);vWidget.setStyleProperty(qx.renderer.font.Font.PROPERTY_STYLE,this._defs.fontStyle);vWidget.setStyleProperty(qx.renderer.font.Font.PROPERTY_DECORATION,this._defs.textDecoration)};qx.Proto._resetWidget=function(vWidget){vWidget.removeStyleProperty(qx.renderer.font.Font.PROPERTY_FAMILY);vWidget.removeStyleProperty(qx.renderer.font.Font.PROPERTY_SIZE);vWidget.removeStyleProperty(qx.renderer.font.Font.PROPERTY_WEIGHT);vWidget.removeStyleProperty(qx.renderer.font.Font.PROPERTY_STYLE);vWidget.removeStyleProperty(qx.renderer.font.Font.PROPERTY_DECORATION)};qx.Proto.dispose=function(){if(this.getDisposed()){return true};delete this._defs;return qx.core.Object.prototype.dispose.call(this)};qx.OO.defineClass("qx.renderer.font.FontObject",qx.renderer.font.Font,function(vSize,vName){this._dependentObjects={};qx.renderer.font.Font.call(this,vSize,vName)});qx.Proto.addListenerWidget=function(o){this._dependentObjects[o.toHashCode()]=o};qx.Proto.removeListenerWidget=function(o){delete this._dependentObjects[o.toHashCode()]};qx.Proto._sync=function(vEdge){var vAll=this._dependentObjects;var vCurrent;for(vKey in vAll){vCurrent=vAll[vKey];if(vCurrent.isCreated()){vCurrent._updateFont(vEdge)}}};qx.Proto.dispose=function(){if(this.getDisposed()){return};if(typeof this._dependentObjects===qx.constant.Type.OBJECT){for(vKey in this._dependentObjects){delete this._dependentObjects[vKey]};delete this._dependentObjects};return qx.renderer.font.Font.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.embed.HtmlEmbed",qx.ui.basic.Terminator,function(vHtml){qx.ui.basic.Terminator.call(this);if(qx.util.Validation.isValidString(vHtml)){this.setHtml(vHtml)}});qx.OO.addProperty({name:"html",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"font",type:qx.constant.Type.OBJECT,instance:"qx.renderer.font.Font",convert:qx.renderer.font.FontCache,allowMultipleArguments:true});qx.OO.addProperty({name:"wrap",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.Proto._modifyHtml=function(){if(this._isCreated){this._syncHtml()};return true};qx.Proto._modifyFont=function(propValue,propOldValue,propData){if(propValue){propValue._applyWidget(this)}else if(propOldValue){propOldValue._resetWidget(this)};return true};qx.Proto._modifyWrap=function(propValue,propOldValue,propData){this.setStyleProperty(qx.constant.Style.PROPERTY_WHITESPACE,propValue?"normal":"nowrap");return true};qx.Proto._applyElementData=function(){this._syncHtml()};qx.Proto._syncHtml=function(){this.getElement().innerHTML=this.getHtml()};qx.OO.defineClass("qx.ui.embed.LinkEmbed",qx.ui.embed.HtmlEmbed,function(vHtml,vUri,vTarget){qx.ui.embed.HtmlEmbed.call(this,vHtml);if(typeof vUri!=qx.constant.Type.UNDEFINED){this.setUri(vUri)};if(typeof vTarget!=qx.constant.Type.UNDEFINED){this.setTarget(vTarget)}});qx.OO.addProperty({name:"uri",type:qx.constant.Type.STRING,defaultValue:"#",impl:"html"});qx.OO.addProperty({name:"target",type:qx.constant.Type.STRING,defaultValue:"_blank",impl:"html"});qx.ui.embed.LinkEmbed.LINK_START="<a target='";qx.ui.embed.LinkEmbed.HREF_START="' href='";qx.ui.embed.LinkEmbed.HREF_STOP="'>";qx.ui.embed.LinkEmbed.LINK_STOP="</a>";qx.Proto._syncHtml=function(){var vHtml=[];vHtml.push(qx.ui.embed.LinkEmbed.LINK_START);vHtml.push(this.getTarget());vHtml.push(qx.ui.embed.LinkEmbed.HREF_START);vHtml.push(this.getUri());vHtml.push(qx.ui.embed.LinkEmbed.HREF_STOP);vHtml.push(this.getHtml());vHtml.push(qx.ui.embed.LinkEmbed.LINK_STOP);this.getElement().innerHTML=vHtml.join(qx.constant.Core.EMPTY)};qx.OO.defineClass("qx.ui.layout.BoxLayout",qx.ui.core.Parent,function(vOrientation){qx.ui.core.Parent.call(this);if(qx.util.Validation.isValidString(vOrientation)){this.setOrientation(vOrientation)}});qx.ui.layout.BoxLayout.STR_REVERSED="-reversed";qx.OO.addProperty({name:"orientation",type:qx.constant.Type.STRING,possibleValues:[qx.constant.Layout.ORIENTATION_HORIZONTAL,qx.constant.Layout.ORIENTATION_VERTICAL],addToQueueRuntime:true});qx.OO.addProperty({name:"spacing",type:qx.constant.Type.NUMBER,defaultValue:0,addToQueueRuntime:true,impl:"layout"});qx.OO.addProperty({name:"horizontalChildrenAlign",type:qx.constant.Type.STRING,defaultValue:"left",possibleValues:["left","center","right"],impl:"layoutOrder",addToQueueRuntime:true});qx.OO.addProperty({name:"verticalChildrenAlign",type:qx.constant.Type.STRING,defaultValue:"top",possibleValues:["top","middle","bottom"],impl:"layoutOrder",addToQueueRuntime:true});qx.OO.addProperty({name:"reverseChildrenOrder",type:qx.constant.Type.BOOLEAN,defaultValue:false,impl:"layoutOrder",addToQueueRuntime:true});qx.OO.addProperty({name:"stretchChildrenOrthogonalAxis",type:qx.constant.Type.BOOLEAN,defaultValue:true,addToQueueRuntime:true});qx.OO.addProperty({name:"useAdvancedFlexAllocation",type:qx.constant.Type.BOOLEAN,defaultValue:false,addToQueueRuntime:true});qx.Proto._createLayoutImpl=function(){return this.getOrientation()==qx.constant.Layout.ORIENTATION_VERTICAL?new qx.renderer.layout.VerticalBoxLayoutImpl(this):new qx.renderer.layout.HorizontalBoxLayoutImpl(this)};qx.Proto._layoutHorizontal=false;qx.Proto._layoutVertical=false;qx.Proto._layoutMode="left";qx.Proto.isHorizontal=function(){return this._layoutHorizontal};qx.Proto.isVertical=function(){return this._layoutVertical};qx.Proto.getLayoutMode=function(){if(this._layoutMode==null){this._updateLayoutMode()};return this._layoutMode};qx.Proto._updateLayoutMode=function(){this._layoutMode=this._layoutVertical?this.getVerticalChildrenAlign():this.getHorizontalChildrenAlign();if(this.getReverseChildrenOrder()){this._layoutMode+=qx.ui.layout.BoxLayout.STR_REVERSED}};qx.Proto._invalidateLayoutMode=function(){this._layoutMode=null};qx.Proto._modifyOrientation=function(propValue,propOldValue,propData){this._layoutHorizontal=propValue==qx.constant.Layout.ORIENTATION_HORIZONTAL;this._layoutVertical=propValue==qx.constant.Layout.ORIENTATION_VERTICAL;if(this._layoutImpl){this._layoutImpl.dispose();this._layoutImpl=null};if(qx.util.Validation.isValidString(propValue)){this._layoutImpl=this._createLayoutImpl()};return this._modifyLayoutOrder(propValue,propOldValue,propData)};qx.Proto._modifyLayoutOrder=function(propValue,propOldValue,propData){this._invalidateLayoutMode();return this._modifyLayout(propValue,propOldValue,propData)};qx.Proto._modifyLayout=function(propValue,propOldValue,propData){this._invalidatePreferredInnerDimensions();this._invalidateAccumulatedChildrenOuterWidth();this._invalidateAccumulatedChildrenOuterHeight();return true};qx.OO.addCachedProperty({name:"accumulatedChildrenOuterWidth",defaultValue:null});qx.OO.addCachedProperty({name:"accumulatedChildrenOuterHeight",defaultValue:null});qx.Proto._computeAccumulatedChildrenOuterWidth=function(){var ch=this.getVisibleChildren(),chc,i=-1,sp=this.getSpacing(),s=-sp;while(chc=ch[++i]){s+=chc.getOuterWidth()+sp};return s};qx.Proto._computeAccumulatedChildrenOuterHeight=function(){var ch=this.getVisibleChildren(),chc,i=-1,sp=this.getSpacing(),s=-sp;while(chc=ch[++i]){s+=chc.getOuterHeight()+sp};return s};qx.Proto._recomputeChildrenStretchingX=function(){var ch=this.getVisibleChildren(),chc,i=-1;while(chc=ch[++i]){if(chc._recomputeStretchingX()&&chc._recomputeBoxWidth()){chc._recomputeOuterWidth()}}};qx.Proto._recomputeChildrenStretchingY=function(){var ch=this.getVisibleChildren(),chc,i=-1;while(chc=ch[++i]){if(chc._recomputeStretchingY()&&chc._recomputeBoxHeight()){chc._recomputeOuterHeight()}}};qx.OO.defineClass("qx.renderer.layout.VerticalBoxLayoutImpl",qx.renderer.layout.LayoutImpl,function(vWidget){qx.renderer.layout.LayoutImpl.call(this,vWidget)});qx.OO.addProperty({name:"enableFlexSupport",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.Proto.computeChildBoxWidth=function(vChild){if(this.getWidget().getStretchChildrenOrthogonalAxis()&&vChild._computedWidthTypeNull&&vChild.getAllowStretchX()){return this.getWidget().getInnerWidth()};return vChild.getWidthValue()||vChild._computeBoxWidthFallback()};qx.Proto.computeChildBoxHeight=function(vChild){return vChild.getHeightValue()||vChild._computeBoxHeightFallback()};qx.Proto.computeChildrenFlexHeight=function(){if(this._childrenFlexHeightComputed||!this.getEnableFlexSupport()){return};this._childrenFlexHeightComputed=true;var vWidget=this.getWidget();var vChildren=vWidget.getVisibleChildren();var vChildrenLength=vChildren.length;var vCurrentChild;var vFlexibleChildren=[];var vAvailHeight=vWidget.getInnerHeight();var vUsedHeight=vWidget.getSpacing()*(vChildrenLength-1);var vIterator;for(vIterator=0;vIterator<vChildrenLength;vIterator++){vCurrentChild=vChildren[vIterator];if(vCurrentChild._computedHeightTypeFlex){vFlexibleChildren.push(vCurrentChild);if(vWidget._computedHeightTypeAuto){vUsedHeight+=vCurrentChild.getPreferredBoxHeight()}}else{vUsedHeight+=vCurrentChild.getOuterHeight()}};var vRemainingHeight=vAvailHeight-vUsedHeight;var vFlexibleChildrenLength=vFlexibleChildren.length;var vPrioritySum=0;for(vIterator=0;vIterator<vFlexibleChildrenLength;vIterator++){vPrioritySum+=vFlexibleChildren[vIterator]._computedHeightParsed};var vPartHeight=vRemainingHeight/vPrioritySum;if(!vWidget.getUseAdvancedFlexAllocation()){for(vIterator=0;vIterator<vFlexibleChildrenLength;vIterator++){vCurrentChild=vFlexibleChildren[vIterator];vCurrentChild._computedHeightFlexValue=Math.round(vCurrentChild._computedHeightParsed*vPartHeight);vUsedHeight+=vCurrentChild._computedHeightFlexValue}}else{var vAllocationDiff=0;var vMinAllocationLoops,vFlexibleChildrenLength,vAdjust,vCurrentAllocationSum,vFactorSum,vComputedFlexibleHeight;for(vIterator=0;vIterator<vFlexibleChildrenLength;vIterator++){vCurrentChild=vFlexibleChildren[vIterator];vComputedFlexibleHeight=vCurrentChild._computedHeightFlexValue=vCurrentChild._computedHeightParsed*vPartHeight;vAllocationDiff+=vComputedFlexibleHeight-qx.lang.Number.limit(vComputedFlexibleHeight,vCurrentChild.getMinHeightValue(),vCurrentChild.getMaxHeightValue())};vAllocationDiff=Math.round(vAllocationDiff);if(vAllocationDiff==0){for(vIterator=0;vIterator<vFlexibleChildrenLength;vIterator++){vCurrentChild=vFlexibleChildren[vIterator];vCurrentChild._computedHeightFlexValue=Math.round(vCurrentChild._computedHeightFlexValue);vUsedHeight+=vCurrentChild._computedHeightFlexValue}}else{var vUp=vAllocationDiff>0;for(vIterator=vFlexibleChildrenLength-1;vIterator>=0;vIterator--){vCurrentChild=vFlexibleChildren[vIterator];if(vUp){vAdjust=(vCurrentChild.getMaxHeightValue()||Infinity)-vCurrentChild._computedHeightFlexValue;if(vAdjust>0){vCurrentChild._allocationLoops=Math.floor(vAdjust/vCurrentChild._computedHeightParsed)}else{qx.lang.Array.removeAt(vFlexibleChildren,vIterator);vCurrentChild._computedHeightFlexValue=Math.round(vCurrentChild._computedHeightFlexValue);vUsedHeight+=Math.round(vCurrentChild._computedHeightFlexValue+vAdjust)}}else{vAdjust=qx.util.Validation.isValidNumber(vCurrentChild.getMinHeightValue())?vCurrentChild._computedHeightFlexValue-vCurrentChild.getMinHeightValue():vCurrentChild._computedHeightFlexValue;if(vAdjust>0){vCurrentChild._allocationLoops=Math.floor(vAdjust/vCurrentChild._computedHeightParsed)}else{qx.lang.Array.removeAt(vFlexibleChildren,vIterator);vCurrentChild._computedHeightFlexValue=Math.round(vCurrentChild._computedHeightFlexValue);vUsedHeight+=Math.round(vCurrentChild._computedHeightFlexValue-vAdjust)}}};while(vAllocationDiff!=0&&vFlexibleChildrenLength>0){vFlexibleChildrenLength=vFlexibleChildren.length;vMinAllocationLoops=Infinity;vFactorSum=0;for(vIterator=0;vIterator<vFlexibleChildrenLength;vIterator++){vMinAllocationLoops=Math.min(vMinAllocationLoops,vFlexibleChildren[vIterator]._allocationLoops);vFactorSum+=vFlexibleChildren[vIterator]._computedHeightParsed};vCurrentAllocationSum=Math.min(vFactorSum*vMinAllocationLoops,vAllocationDiff);vAllocationDiff-=vCurrentAllocationSum;for(vIterator=vFlexibleChildrenLength-1;vIterator>=0;vIterator--){vCurrentChild=vFlexibleChildren[vIterator];vCurrentChild._computedHeightFlexValue+=vCurrentAllocationSum/vFactorSum*vCurrentChild._computedHeightParsed;if(vCurrentChild._allocationLoops==vMinAllocationLoops){vCurrentChild._computedHeightFlexValue=Math.round(vCurrentChild._computedHeightFlexValue);vUsedHeight+=vCurrentChild._computedHeightFlexValue;delete vCurrentChild._allocationLoops;qx.lang.Array.removeAt(vFlexibleChildren,vIterator)}else{if(vAllocationDiff==0){vCurrentChild._computedHeightFlexValue=Math.round(vCurrentChild._computedHeightFlexValue);vUsedHeight+=vCurrentChild._computedHeightFlexValue;delete vCurrentChild._allocationLoops}else{vCurrentChild._allocationLoops-=vMinAllocationLoops}}}}}};vCurrentChild._computedHeightFlexValue+=vAvailHeight-vUsedHeight};qx.Proto.invalidateChildrenFlexHeight=function(){delete this._childrenFlexHeightComputed};qx.Proto.computeChildrenNeededHeight=function(){var w=this.getWidget();return qx.renderer.layout.LayoutImpl.prototype.computeChildrenNeededHeight_sum.call(this)+((w.getVisibleChildrenLength()-1)*w.getSpacing())};qx.Proto.updateSelfOnChildOuterHeightChange=function(vChild){this.getWidget()._invalidateAccumulatedChildrenOuterHeight()};qx.Proto.updateChildOnInnerWidthChange=function(vChild){var vUpdatePercent=vChild._recomputePercentX();var vUpdateStretch=vChild._recomputeStretchingX();if((vChild.getHorizontalAlign()||this.getWidget().getHorizontalChildrenAlign())==qx.constant.Layout.ALIGN_CENTER){vChild.addToLayoutChanges(qx.ui.core.Widget.JOB_LOCATIONX)};return vUpdatePercent||vUpdateStretch};qx.Proto.updateChildOnInnerHeightChange=function(vChild){if(this.getWidget().getVerticalChildrenAlign()==qx.constant.Layout.ALIGN_MIDDLE){vChild.addToLayoutChanges(qx.ui.core.Widget.JOB_LOCATIONY)};var vUpdatePercent=vChild._recomputePercentY();var vUpdateFlex=vChild._recomputeFlexY();return vUpdatePercent||vUpdateFlex};qx.Proto.updateSelfOnJobQueueFlush=function(vJobQueue){if(vJobQueue.addChild||vJobQueue.removeChild){this.getWidget()._invalidateAccumulatedChildrenOuterHeight()}};qx.Proto.updateChildrenOnJobQueueFlush=function(vQueue){var vStretchX=false,vStretchY=false;var vWidget=this.getWidget();if(vQueue.orientation){vStretchX=vStretchY=true};if(vQueue.spacing||vQueue.orientation||vQueue.reverseChildrenOrder||vQueue.verticalChildrenAlign){vWidget._addChildrenToLayoutQueue(qx.ui.core.Widget.JOB_LOCATIONY)};if(vQueue.horizontalChildrenAlign){vWidget._addChildrenToLayoutQueue(qx.ui.core.Widget.JOB_LOCATIONX)};if(vQueue.stretchChildrenOrthogonalAxis){vStretchX=true};if(vStretchX){vWidget._recomputeChildrenStretchingX();vWidget._addChildrenToLayoutQueue(qx.OO.PROPERTY_WIDTH)};if(vStretchY){vWidget._recomputeChildrenStretchingY();vWidget._addChildrenToLayoutQueue(qx.OO.PROPERTY_HEIGHT)};return true};qx.Proto.updateChildrenOnRemoveChild=function(vChild,vIndex){var w=this.getWidget(),ch=w.getVisibleChildren(),chl=ch.length,chc,i=-1;if(this.getEnableFlexSupport()){for(var i=0;i<chl;i++){chc=ch[i];if(chc.getHasFlexY()){vIndex=Math.min(vIndex,i);break}};i=-1};switch(w.getLayoutMode()){case qx.constant.Layout.ALIGN_BOTTOM:case qx.constant.Layout.ALIGN_TOP_REVERSED:while((chc=ch[++i])&&i<vIndex){chc.addToLayoutChanges(qx.ui.core.Widget.JOB_LOCATIONY)};break;case qx.constant.Layout.ALIGN_MIDDLE:case qx.constant.Layout.ALIGN_MIDDLE_REVERSED:while(chc=ch[++i]){chc.addToLayoutChanges(qx.ui.core.Widget.JOB_LOCATIONY)};break;default:i+=vIndex;while(chc=ch[++i]){chc.addToLayoutChanges(qx.ui.core.Widget.JOB_LOCATIONY)}}};qx.Proto.updateChildrenOnMoveChild=function(vChild,vIndex,vOldIndex){var vChildren=this.getWidget().getVisibleChildren();var vStart=Math.min(vIndex,vOldIndex);var vStop=Math.max(vIndex,vOldIndex)+1;for(var i=vStart;i<vStop;i++){vChildren[i].addToLayoutChanges(qx.ui.core.Widget.JOB_LOCATIONY)}};qx.Proto.flushChildrenQueue=function(vChildrenQueue){var w=this.getWidget(),ch=w.getVisibleChildren(),chl=ch.length,chc,i;if(this.getEnableFlexSupport()){this.invalidateChildrenFlexHeight();for(i=0;i<chl;i++){chc=ch[i];if(chc.getHasFlexY()){chc._computedHeightValue=null;if(chc._recomputeBoxHeight()){chc._recomputeOuterHeight();chc._recomputeInnerHeight()};vChildrenQueue[chc.toHashCode()]=chc;chc._layoutChanges.height=true}}};switch(w.getLayoutMode()){case qx.constant.Layout.ALIGN_BOTTOM:case qx.constant.Layout.ALIGN_TOP_REVERSED:for(var i=chl-1;i>=0&&!vChildrenQueue[ch[i].toHashCode()];i--){};for(var j=0;j<=i;j++){w._layoutChild(chc=ch[j])};break;case qx.constant.Layout.ALIGN_MIDDLE:case qx.constant.Layout.ALIGN_MIDDLE_REVERSED:i=-1;while(chc=ch[++i]){w._layoutChild(chc)};break;default:i=-1;var changed=false;while(chc=ch[++i]){if(changed||vChildrenQueue[chc.toHashCode()]){w._layoutChild(chc);changed=true}}}};qx.Proto.layoutChild=function(vChild,vJobs){this.layoutChild_sizeX(vChild,vJobs);this.layoutChild_sizeY(vChild,vJobs);this.layoutChild_sizeLimitX(vChild,vJobs);this.layoutChild_sizeLimitY(vChild,vJobs);this.layoutChild_locationX(vChild,vJobs);this.layoutChild_locationY(vChild,vJobs);this.layoutChild_marginX(vChild,vJobs);this.layoutChild_marginY(vChild,vJobs)};if(qx.sys.Client.getInstance().isMshtml()||qx.sys.Client.getInstance().isOpera()){qx.Proto.layoutChild_sizeX=function(vChild,vJobs){if(vJobs.initial||vJobs.width||vJobs.minWidth||vJobs.maxWidth){if((vChild._isWidthEssential()&&(!vChild._computedWidthTypeNull||!vChild._computedMinWidthTypeNull||!vChild._computedMaxWidthTypeNull))||(vChild.getAllowStretchX()&&this.getWidget().getStretchChildrenOrthogonalAxis())){vChild._applyRuntimeWidth(vChild.getBoxWidth())}else{vChild._resetRuntimeWidth()}}};qx.Proto.layoutChild_sizeY=function(vChild,vJobs){if(vJobs.initial||vJobs.height||vJobs.minHeight||vJobs.maxHeight){if(vChild._isHeightEssential()&&(!vChild._computedHeightTypeNull||!vChild._computedMinHeightTypeNull||!vChild._computedMaxHeightTypeNull)){vChild._applyRuntimeHeight(vChild.getBoxHeight())}else{vChild._resetRuntimeHeight()}}}}else{qx.Proto.layoutChild_sizeX=function(vChild,vJobs){if(vJobs.initial||vJobs.width){if(vChild._isWidthEssential()&&!vChild._computedWidthTypeNull){vChild._applyRuntimeWidth(vChild.getWidthValue())}else{vChild._resetRuntimeWidth()}}};qx.Proto.layoutChild_sizeY=function(vChild,vJobs){if(vJobs.initial||vJobs.height){if(vChild._isHeightEssential()&&!vChild._computedHeightTypeNull){vChild._applyRuntimeHeight(vChild.getHeightValue())}else{vChild._resetRuntimeHeight()}}}};qx.Proto.layoutChild_locationY=function(vChild,vJobs){var vWidget=this.getWidget();if(vWidget.getFirstVisibleChild()==vChild){switch(vWidget.getLayoutMode()){case qx.constant.Layout.ALIGN_BOTTOM:case qx.constant.Layout.ALIGN_TOP_REVERSED:var vPos=vWidget.getPaddingBottom()+vWidget.getAccumulatedChildrenOuterHeight()-vChild.getOuterHeight();break;case qx.constant.Layout.ALIGN_MIDDLE:case qx.constant.Layout.ALIGN_MIDDLE_REVERSED:var vPos=vWidget.getPaddingTop()+Math.round((vWidget.getInnerHeight()-vWidget.getAccumulatedChildrenOuterHeight())/2);break;default:var vPos=vWidget.getPaddingTop()}}else{var vPrev=vChild.getPreviousVisibleSibling();switch(vWidget.getLayoutMode()){case qx.constant.Layout.ALIGN_BOTTOM:case qx.constant.Layout.ALIGN_TOP_REVERSED:var vPos=vPrev._cachedLocationVertical-vChild.getOuterHeight()-vWidget.getSpacing();break;default:var vPos=vPrev._cachedLocationVertical+vPrev.getOuterHeight()+vWidget.getSpacing()}};vChild._cachedLocationVertical=vPos;switch(this.getWidget().getLayoutMode()){case qx.constant.Layout.ALIGN_BOTTOM:case qx.constant.Layout.ALIGN_BOTTOM_REVERSED:case qx.constant.Layout.ALIGN_MIDDLE_REVERSED:vPos+=!vChild._computedBottomTypeNull?vChild.getBottomValue():!vChild._computedTopTypeNull?-(vChild.getTopValue()):0;vChild._resetRuntimeTop();vChild._applyRuntimeBottom(vPos);break;default:vPos+=!vChild._computedTopTypeNull?vChild.getTopValue():!vChild._computedBottomTypeNull?-(vChild.getBottomValue()):0;vChild._resetRuntimeBottom();vChild._applyRuntimeTop(vPos)}};qx.Proto.layoutChild_locationX=function(vChild,vJobs){var vWidget=this.getWidget();if(qx.sys.Client.getInstance().isGecko()&&vChild.getAllowStretchX()&&vWidget.getStretchChildrenOrthogonalAxis()&&vChild._computedWidthTypeNull){vChild._applyRuntimeLeft(vWidget.getPaddingLeft()||0);vChild._applyRuntimeRight(vWidget.getPaddingRight()||0);return};var vAlign=vChild.getHorizontalAlign()||vWidget.getHorizontalChildrenAlign();var vPos=vAlign==qx.constant.Layout.ALIGN_CENTER?Math.round((vWidget.getInnerWidth()-vChild.getOuterWidth())/2):0;if(vAlign==qx.constant.Layout.ALIGN_RIGHT){vPos+=vWidget.getPaddingRight();if(!vChild._computedRightTypeNull){vPos+=vChild.getRightValue()}else if(!vChild._computedLeftTypeNull){vPos-=vChild.getLeftValue()};vChild._resetRuntimeLeft();vChild._applyRuntimeRight(vPos)}else{vPos+=vWidget.getPaddingLeft();if(!vChild._computedLeftTypeNull){vPos+=vChild.getLeftValue()}else if(!vChild._computedRightTypeNull){vPos-=vChild.getRightValue()};vChild._resetRuntimeRight();vChild._applyRuntimeLeft(vPos)}};qx.OO.defineClass("qx.renderer.layout.HorizontalBoxLayoutImpl",qx.renderer.layout.LayoutImpl,function(vWidget){qx.renderer.layout.LayoutImpl.call(this,vWidget)});qx.OO.addProperty({name:"enableFlexSupport",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.Proto.computeChildBoxWidth=function(vChild){return vChild.getWidthValue()||vChild._computeBoxWidthFallback()};qx.Proto.computeChildBoxHeight=function(vChild){if(this.getWidget().getStretchChildrenOrthogonalAxis()&&vChild._computedHeightTypeNull&&vChild.getAllowStretchY()){return this.getWidget().getInnerHeight()};return vChild.getHeightValue()||vChild._computeBoxHeightFallback()};qx.Proto.computeChildrenFlexWidth=function(){if(this._childrenFlexWidthComputed||!this.getEnableFlexSupport()){return};this._childrenFlexWidthComputed=true;var vWidget=this.getWidget();var vChildren=vWidget.getVisibleChildren();var vChildrenLength=vChildren.length;var vCurrentChild;var vFlexibleChildren=[];var vAvailWidth=vWidget.getInnerWidth();var vUsedWidth=vWidget.getSpacing()*(vChildrenLength-1);var vIterator;for(vIterator=0;vIterator<vChildrenLength;vIterator++){vCurrentChild=vChildren[vIterator];if(vCurrentChild._computedWidthTypeFlex){vFlexibleChildren.push(vCurrentChild);if(vWidget._computedWidthTypeAuto){vUsedWidth+=vCurrentChild.getPreferredBoxWidth()}}else{vUsedWidth+=vCurrentChild.getOuterWidth()}};var vRemainingWidth=vAvailWidth-vUsedWidth;var vFlexibleChildrenLength=vFlexibleChildren.length;var vPrioritySum=0;for(vIterator=0;vIterator<vFlexibleChildrenLength;vIterator++){vPrioritySum+=vFlexibleChildren[vIterator]._computedWidthParsed};var vPartWidth=vRemainingWidth/vPrioritySum;if(!vWidget.getUseAdvancedFlexAllocation()){for(vIterator=0;vIterator<vFlexibleChildrenLength;vIterator++){vCurrentChild=vFlexibleChildren[vIterator];vCurrentChild._computedWidthFlexValue=Math.round(vCurrentChild._computedWidthParsed*vPartWidth);vUsedWidth+=vCurrentChild._computedWidthFlexValue}}else{var vAllocationDiff=0;var vMinAllocationLoops,vFlexibleChildrenLength,vAdjust,vCurrentAllocationSum,vFactorSum,vComputedFlexibleWidth;for(vIterator=0;vIterator<vFlexibleChildrenLength;vIterator++){vCurrentChild=vFlexibleChildren[vIterator];vComputedFlexibleWidth=vCurrentChild._computedWidthFlexValue=vCurrentChild._computedWidthParsed*vPartWidth;vAllocationDiff+=vComputedFlexibleWidth-qx.lang.Number.limit(vComputedFlexibleWidth,vCurrentChild.getMinWidthValue(),vCurrentChild.getMaxWidthValue())};vAllocationDiff=Math.round(vAllocationDiff);if(vAllocationDiff==0){for(vIterator=0;vIterator<vFlexibleChildrenLength;vIterator++){vCurrentChild=vFlexibleChildren[vIterator];vCurrentChild._computedWidthFlexValue=Math.round(vCurrentChild._computedWidthFlexValue);vUsedWidth+=vCurrentChild._computedWidthFlexValue}}else{var vUp=vAllocationDiff>0;for(vIterator=vFlexibleChildrenLength-1;vIterator>=0;vIterator--){vCurrentChild=vFlexibleChildren[vIterator];if(vUp){vAdjust=(vCurrentChild.getMaxWidthValue()||Infinity)-vCurrentChild._computedWidthFlexValue;if(vAdjust>0){vCurrentChild._allocationLoops=Math.floor(vAdjust/vCurrentChild._computedWidthParsed)}else{qx.lang.Array.removeAt(vFlexibleChildren,vIterator);vCurrentChild._computedWidthFlexValue=Math.round(vCurrentChild._computedWidthFlexValue);vUsedWidth+=Math.round(vCurrentChild._computedWidthFlexValue+vAdjust)}}else{vAdjust=qx.util.Validation.isValidNumber(vCurrentChild.getMinWidthValue())?vCurrentChild._computedWidthFlexValue-vCurrentChild.getMinWidthValue():vCurrentChild._computedWidthFlexValue;if(vAdjust>0){vCurrentChild._allocationLoops=Math.floor(vAdjust/vCurrentChild._computedWidthParsed)}else{qx.lang.Array.removeAt(vFlexibleChildren,vIterator);vCurrentChild._computedWidthFlexValue=Math.round(vCurrentChild._computedWidthFlexValue);vUsedWidth+=Math.round(vCurrentChild._computedWidthFlexValue-vAdjust)}}};while(vAllocationDiff!=0&&vFlexibleChildrenLength>0){vFlexibleChildrenLength=vFlexibleChildren.length;vMinAllocationLoops=Infinity;vFactorSum=0;for(vIterator=0;vIterator<vFlexibleChildrenLength;vIterator++){vMinAllocationLoops=Math.min(vMinAllocationLoops,vFlexibleChildren[vIterator]._allocationLoops);vFactorSum+=vFlexibleChildren[vIterator]._computedWidthParsed};vCurrentAllocationSum=Math.min(vFactorSum*vMinAllocationLoops,vAllocationDiff);vAllocationDiff-=vCurrentAllocationSum;for(vIterator=vFlexibleChildrenLength-1;vIterator>=0;vIterator--){vCurrentChild=vFlexibleChildren[vIterator];vCurrentChild._computedWidthFlexValue+=vCurrentAllocationSum/vFactorSum*vCurrentChild._computedWidthParsed;if(vCurrentChild._allocationLoops==vMinAllocationLoops){vCurrentChild._computedWidthFlexValue=Math.round(vCurrentChild._computedWidthFlexValue);vUsedWidth+=vCurrentChild._computedWidthFlexValue;delete vCurrentChild._allocationLoops;qx.lang.Array.removeAt(vFlexibleChildren,vIterator)}else{if(vAllocationDiff==0){vCurrentChild._computedWidthFlexValue=Math.round(vCurrentChild._computedWidthFlexValue);vUsedWidth+=vCurrentChild._computedWidthFlexValue;delete vCurrentChild._allocationLoops}else{vCurrentChild._allocationLoops-=vMinAllocationLoops}}}}}};vCurrentChild._computedWidthFlexValue+=vAvailWidth-vUsedWidth};qx.Proto.invalidateChildrenFlexWidth=function(){delete this._childrenFlexWidthComputed};qx.Proto.computeChildrenNeededWidth=function(){var w=this.getWidget();return qx.renderer.layout.LayoutImpl.prototype.computeChildrenNeededWidth_sum.call(this)+((w.getVisibleChildrenLength()-1)*w.getSpacing())};qx.Proto.updateSelfOnChildOuterWidthChange=function(vChild){this.getWidget()._invalidateAccumulatedChildrenOuterWidth()};qx.Proto.updateChildOnInnerWidthChange=function(vChild){if(this.getWidget().getHorizontalChildrenAlign()==qx.constant.Layout.ALIGN_CENTER){vChild.addToLayoutChanges(qx.ui.core.Widget.JOB_LOCATIONX)};var vUpdatePercent=vChild._recomputePercentX();var vUpdateFlex=vChild._recomputeFlexX();return vUpdatePercent||vUpdateFlex};qx.Proto.updateChildOnInnerHeightChange=function(vChild){var vUpdatePercent=vChild._recomputePercentY();var vUpdateStretch=vChild._recomputeStretchingY();if((vChild.getVerticalAlign()||this.getWidget().getVerticalChildrenAlign())==qx.constant.Layout.ALIGN_MIDDLE){vChild.addToLayoutChanges(qx.ui.core.Widget.JOB_LOCATIONY)};return vUpdatePercent||vUpdateStretch};qx.Proto.updateSelfOnJobQueueFlush=function(vJobQueue){if(vJobQueue.addChild||vJobQueue.removeChild){this.getWidget()._invalidateAccumulatedChildrenOuterWidth()}};qx.Proto.updateChildrenOnJobQueueFlush=function(vQueue){var vStretchX=false,vStretchY=false;var vWidget=this.getWidget();if(vQueue.orientation){vStretchX=vStretchY=true};if(vQueue.spacing||vQueue.orientation||vQueue.reverseChildrenOrder||vQueue.horizontalChildrenAlign){vWidget._addChildrenToLayoutQueue(qx.ui.core.Widget.JOB_LOCATIONX)};if(vQueue.verticalChildrenAlign){vWidget._addChildrenToLayoutQueue(qx.ui.core.Widget.JOB_LOCATIONY)};if(vQueue.stretchChildrenOrthogonalAxis){vStretchY=true};if(vStretchX){vWidget._recomputeChildrenStretchingX();vWidget._addChildrenToLayoutQueue(qx.OO.PROPERTY_WIDTH)};if(vStretchY){vWidget._recomputeChildrenStretchingY();vWidget._addChildrenToLayoutQueue(qx.OO.PROPERTY_HEIGHT)};return true};qx.Proto.updateChildrenOnRemoveChild=function(vChild,vIndex){var w=this.getWidget(),ch=w.getVisibleChildren(),chl=ch.length,chc,i=-1;if(this.getEnableFlexSupport()){for(i=0;i<chl;i++){chc=ch[i];if(chc.getHasFlexX()){vIndex=Math.min(vIndex,i);break}};i=-1};switch(w.getLayoutMode()){case qx.constant.Layout.ALIGN_RIGHT:case qx.constant.Layout.ALIGN_LEFT_REVERSED:while((chc=ch[++i])&&i<vIndex){chc.addToLayoutChanges(qx.ui.core.Widget.JOB_LOCATIONX)};break;case qx.constant.Layout.ALIGN_CENTER:case qx.constant.Layout.ALIGN_CENTER_REVERSED:while(chc=ch[++i]){chc.addToLayoutChanges(qx.ui.core.Widget.JOB_LOCATIONX)};break;default:i+=vIndex;while(chc=ch[++i]){chc.addToLayoutChanges(qx.ui.core.Widget.JOB_LOCATIONX)}}};qx.Proto.updateChildrenOnMoveChild=function(vChild,vIndex,vOldIndex){var vChildren=this.getWidget().getVisibleChildren();var vStart=Math.min(vIndex,vOldIndex);var vStop=Math.max(vIndex,vOldIndex)+1;for(var i=vStart;i<vStop;i++){vChildren[i].addToLayoutChanges(qx.ui.core.Widget.JOB_LOCATIONX)}};qx.Proto.flushChildrenQueue=function(vChildrenQueue){var w=this.getWidget(),ch=w.getVisibleChildren(),chl=ch.length,chc,i;if(this.getEnableFlexSupport()){this.invalidateChildrenFlexWidth();for(i=0;i<chl;i++){chc=ch[i];if(chc.getHasFlexX()){chc._computedWidthValue=null;if(chc._recomputeBoxWidth()){chc._recomputeOuterWidth();chc._recomputeInnerWidth()};vChildrenQueue[chc.toHashCode()]=chc;chc._layoutChanges.width=true}}};switch(w.getLayoutMode()){case qx.constant.Layout.ALIGN_RIGHT:case qx.constant.Layout.ALIGN_LEFT_REVERSED:for(var i=chl-1;i>=0&&!vChildrenQueue[ch[i].toHashCode()];i--){};for(var j=0;j<=i;j++){w._layoutChild(chc=ch[j])};break;case qx.constant.Layout.ALIGN_CENTER:case qx.constant.Layout.ALIGN_CENTER_REVERSED:i=-1;while(chc=ch[++i]){w._layoutChild(chc)};break;default:i=-1;var changed=false;while(chc=ch[++i]){if(changed||vChildrenQueue[chc.toHashCode()]){w._layoutChild(chc);changed=true}}}};qx.Proto.layoutChild=function(vChild,vJobs){this.layoutChild_sizeX(vChild,vJobs);this.layoutChild_sizeY(vChild,vJobs);this.layoutChild_sizeLimitX(vChild,vJobs);this.layoutChild_sizeLimitY(vChild,vJobs);this.layoutChild_locationX(vChild,vJobs);this.layoutChild_locationY(vChild,vJobs);this.layoutChild_marginX(vChild,vJobs);this.layoutChild_marginY(vChild,vJobs)};if(qx.sys.Client.getInstance().isMshtml()||qx.sys.Client.getInstance().isOpera()){qx.Proto.layoutChild_sizeX=function(vChild,vJobs){if(vJobs.initial||vJobs.width||vJobs.minWidth||vJobs.maxWidth){if(vChild._isWidthEssential()&&(!vChild._computedWidthTypeNull||!vChild._computedMinWidthTypeNull||!vChild._computedMaxWidthTypeNull)){vChild._applyRuntimeWidth(vChild.getBoxWidth())}else{vChild._resetRuntimeWidth()}}};qx.Proto.layoutChild_sizeY=function(vChild,vJobs){if(vJobs.initial||vJobs.height||vJobs.minHeight||vJobs.maxHeight){if((vChild._isHeightEssential()&&(!vChild._computedHeightTypeNull||!vChild._computedMinHeightTypeNull||!vChild._computedMaxHeightTypeNull))||(vChild.getAllowStretchY()&&this.getWidget().getStretchChildrenOrthogonalAxis())){vChild._applyRuntimeHeight(vChild.getBoxHeight())}else{vChild._resetRuntimeHeight()}}}}else{qx.Proto.layoutChild_sizeX=function(vChild,vJobs){if(vJobs.initial||vJobs.width){if(vChild._isWidthEssential()&&!vChild._computedWidthTypeNull){vChild._applyRuntimeWidth(vChild.getWidthValue())}else{vChild._resetRuntimeWidth()}}};qx.Proto.layoutChild_sizeY=function(vChild,vJobs){if(vJobs.initial||vJobs.height){if(vChild._isHeightEssential()&&!vChild._computedHeightTypeNull){vChild._applyRuntimeHeight(vChild.getHeightValue())}else{vChild._resetRuntimeHeight()}}}};qx.Proto.layoutChild_locationX=function(vChild,vJobs){var vWidget=this.getWidget();if(vWidget.getFirstVisibleChild()==vChild){switch(vWidget.getLayoutMode()){case qx.constant.Layout.ALIGN_RIGHT:case qx.constant.Layout.ALIGN_LEFT_REVERSED:var vPos=vWidget.getPaddingRight()+vWidget.getAccumulatedChildrenOuterWidth()-vChild.getOuterWidth();break;case qx.constant.Layout.ALIGN_CENTER:case qx.constant.Layout.ALIGN_CENTER_REVERSED:var vPos=vWidget.getPaddingLeft()+Math.round((vWidget.getInnerWidth()-vWidget.getAccumulatedChildrenOuterWidth())/2);break;default:var vPos=vWidget.getPaddingLeft()}}else{var vPrev=vChild.getPreviousVisibleSibling();switch(vWidget.getLayoutMode()){case qx.constant.Layout.ALIGN_RIGHT:case qx.constant.Layout.ALIGN_LEFT_REVERSED:var vPos=vPrev._cachedLocationHorizontal-vChild.getOuterWidth()-vWidget.getSpacing();break;default:var vPos=vPrev._cachedLocationHorizontal+vPrev.getOuterWidth()+vWidget.getSpacing()}};vChild._cachedLocationHorizontal=vPos;switch(vWidget.getLayoutMode()){case qx.constant.Layout.ALIGN_RIGHT:case qx.constant.Layout.ALIGN_RIGHT_REVERSED:case qx.constant.Layout.ALIGN_CENTER_REVERSED:vPos+=!vChild._computedRightTypeNull?vChild.getRightValue():!vChild._computedLeftTypeNull?-(vChild.getLeftValue()):0;vChild._resetRuntimeLeft();vChild._applyRuntimeRight(vPos);break;default:vPos+=!vChild._computedLeftTypeNull?vChild.getLeftValue():!vChild._computedRightTypeNull?-(vChild.getRightValue()):0;vChild._resetRuntimeRight();vChild._applyRuntimeLeft(vPos)}};qx.Proto.layoutChild_locationY=function(vChild,vJobs){var vWidget=this.getWidget();if(qx.sys.Client.getInstance().isGecko()&&vChild.getAllowStretchY()&&vWidget.getStretchChildrenOrthogonalAxis()&&vChild._computedHeightTypeNull){vChild._applyRuntimeTop(vWidget.getPaddingTop()||0);vChild._applyRuntimeBottom(vWidget.getPaddingBottom()||0);return};var vAlign=vChild.getVerticalAlign()||vWidget.getVerticalChildrenAlign();var vPos=vAlign==qx.constant.Layout.ALIGN_MIDDLE?Math.round((vWidget.getInnerHeight()-vChild.getOuterHeight())/2):0;if(vAlign==qx.constant.Layout.ALIGN_BOTTOM){vPos+=vWidget.getPaddingBottom();if(!vChild._computedBottomTypeNull){vPos+=vChild.getBottomValue()}else if(!vChild._computedTopTypeNull){vPos-=vChild.getTopValue()};vChild._resetRuntimeTop();vChild._applyRuntimeBottom(vPos)}else{vPos+=vWidget.getPaddingTop();if(!vChild._computedTopTypeNull){vPos+=vChild.getTopValue()}else if(!vChild._computedBottomTypeNull){vPos-=vChild.getBottomValue()};vChild._resetRuntimeBottom();vChild._applyRuntimeTop(vPos)}};qx.OO.defineClass("qx.ui.basic.Atom",qx.ui.layout.BoxLayout,function(vLabel,vIcon,vIconWidth,vIconHeight,vFlash){qx.ui.layout.BoxLayout.call(this);if(this.getOrientation()==null){this.setOrientation(qx.constant.Layout.ORIENTATION_HORIZONTAL)};this.setSelectable(false);this.getLayoutImpl().setEnableFlexSupport(false);if(qx.util.Validation.isValidString(vLabel)){this.setLabel(vLabel)};if(qx.OO.isAvailable("qx.ui.embed.Flash")&&qx.util.Validation.isValidString(vFlash)&&qx.util.Validation.isValidNumber(vIconWidth)&&qx.util.Validation.isValidNumber(vIconHeight)&&qx.ui.embed.Flash.getPlayerVersion().getMajor()>0){this._flashMode=true;this.setIcon(vFlash);this.setIconWidth(vIconWidth);this.setIconHeight(vIconHeight)}else if(qx.util.Validation.isValidString(vIcon)){this.setIcon(vIcon);if(qx.util.Validation.isValidNumber(vIconWidth)){this.setIconWidth(vIconWidth)};if(qx.util.Validation.isValidNumber(vIconHeight)){this.setIconHeight(vIconHeight)}}});qx.ui.basic.Atom.SHOW_LABEL="label";qx.ui.basic.Atom.SHOW_ICON="icon";qx.ui.basic.Atom.SHOW_BOTH="both";qx.OO.addProperty({name:"label",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"icon",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"disabledIcon",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"show",type:qx.constant.Type.STRING,defaultValue:"both",possibleValues:["both","label","icon",qx.constant.Core.NONE,null]});qx.OO.addProperty({name:"iconPosition",type:qx.constant.Type.STRING,defaultValue:"left",possibleValues:["top","right","bottom","left"]});qx.OO.addProperty({name:"iconWidth",type:qx.constant.Type.NUMBER});qx.OO.addProperty({name:"iconHeight",type:qx.constant.Type.NUMBER});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"atom"});qx.Proto._flashMode=false;qx.Proto._labelObject=null;qx.Proto._iconObject=null;qx.Proto._createLabel=function(){var l=this._labelObject=new qx.ui.basic.Label(this.getLabel());l.setAnonymous(true);l.setEnabled(this.getEnabled());l.setSelectable(false);this.addAt(l,this._iconObject?1:0)};qx.Proto._createIcon=function(){if(this._flashMode&&qx.OO.isAvailable("qx.ui.embed.Flash")){var i=this._iconObject=new qx.ui.embed.Flash(this.getIcon())}else{var i=this._iconObject=new qx.ui.basic.Image()};i.setAnonymous(true);this._updateIcon();this.addAt(i,0)};qx.Proto._updateIcon=function(){if(this._iconObject&&this.getIcon&&this.getDisabledIcon){var disabledIcon=this.getDisabledIcon();if(disabledIcon){if(this.getEnabled()){this._iconObject.setSource(this.getIcon())}else{this._iconObject.setSource(disabledIcon)};this._iconObject.setEnabled(true)}else{this._iconObject.setSource(this.getIcon());this._iconObject.setEnabled(this.getEnabled())}}};qx.Proto.getLabelObject=function(){return this._labelObject};qx.Proto.getIconObject=function(){return this._iconObject};qx.Proto._modifyEnabled=function(propValue,propOldValue,propData){this._updateIcon();if(this._labelObject){this._labelObject.setEnabled(propValue)};return qx.ui.layout.BoxLayout.prototype._modifyEnabled.call(this,propValue,propOldValue,propData)};qx.Proto._modifyIconPosition=function(propValue,propOldValue,propData){switch(propValue){case qx.constant.Layout.ALIGN_TOP:case qx.constant.Layout.ALIGN_BOTTOM:this.setOrientation(qx.constant.Layout.ORIENTATION_VERTICAL);this.setReverseChildrenOrder(propValue==qx.constant.Layout.ALIGN_BOTTOM);break;default:this.setOrientation(qx.constant.Layout.ORIENTATION_HORIZONTAL);this.setReverseChildrenOrder(propValue==qx.constant.Layout.ALIGN_RIGHT);break};return true};qx.Proto._modifyShow=function(propValue,propOldValue,propData){this._handleIcon();this._handleLabel();return true};qx.Proto._modifyLabel=function(propValue,propOldValue,propData){if(this._labelObject){this._labelObject.setHtml(propValue)};this._handleLabel();return true};qx.Proto._modifyIcon=function(propValue,propOldValue,propData){this._updateIcon();this._handleIcon();return true};qx.Proto._modifyDisabledIcon=function(propValue,propOldValue,propData){this._updateIcon();this._handleIcon();return true};qx.Proto._modifyIconWidth=function(propValue,propOldValue,propData){this._iconObject.setWidth(propValue);return true};qx.Proto._modifyIconHeight=function(propValue,propOldValue,propData){this._iconObject.setHeight(propValue);return true};qx.Proto._iconIsVisible=false;qx.Proto._labelIsVisible=false;qx.Proto._handleLabel=function(){switch(this.getShow()){case qx.ui.basic.Atom.SHOW_LABEL:case qx.ui.basic.Atom.SHOW_BOTH:this._labelIsVisible=qx.util.Validation.isValidString(this.getLabel());break;default:this._labelIsVisible=false};if(this._labelIsVisible){this._labelObject?this._labelObject.setDisplay(true):this._createLabel()}else if(this._labelObject){this._labelObject.setDisplay(false)}};qx.Proto._handleIcon=function(){switch(this.getShow()){case qx.ui.basic.Atom.SHOW_ICON:case qx.ui.basic.Atom.SHOW_BOTH:this._iconIsVisible=qx.util.Validation.isValidString(this.getIcon());break;default:this._iconIsVisible=false};if(this._iconIsVisible){this._iconObject?this._iconObject.setDisplay(true):this._createIcon()}else if(this._iconObject){this._iconObject.setDisplay(false)}};qx.Proto._cloneRecursive=qx.util.Return.returnTrue;qx.Proto.dispose=function(){if(this.getDisposed()){return true};if(this._iconObject){this._iconObject.dispose();this._iconObject=null};if(this._labelObject){this._labelObject.dispose();this._labelObject=null};return qx.ui.layout.BoxLayout.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.basic.Label",qx.ui.basic.Terminator,function(vHtml,vMnemonic){qx.ui.basic.Terminator.call(this);if(qx.util.Validation.isValidString(vHtml)){this.setHtml(vHtml)};if(qx.util.Validation.isValidString(vMnemonic)){this.setMnemonic(vMnemonic)};this.setAllowStretchX(false);this.setAllowStretchY(false);this.auto()});qx.Class.COPY_STYLEPROPERTY="styleproperty";qx.Class.COPY_COMPUTEDELEMENT="computedelement";qx.Class.COPY_LOCALELEMENT="localelement";qx.Class._measureNodes={};qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"label"});qx.OO.addProperty({name:"html",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"textAlign",type:qx.constant.Type.STRING,defaultValue:"left",possibleValues:["left","center","right","justify"]});qx.OO.addProperty({name:"fontPropertiesProfile",type:qx.constant.Type.STRING,defaultValue:qx.constant.Core.DEFAULT,possibleValues:[qx.constant.Core.NONE,qx.constant.Core.DEFAULT,"extended","multiline","extendedmultiline","all"]});qx.OO.addProperty({name:"mnemonic",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"font",type:qx.constant.Type.OBJECT,instance:"qx.renderer.font.Font",convert:qx.renderer.font.FontCache,allowMultipleArguments:true});qx.OO.addProperty({name:"wrap",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.ui.basic.Label.OVERFLOW_HIDDEN="hidden";qx.ui.basic.Label.OVERFLOW_ELLIPSIS="ellipsis";qx.ui.basic.Label.SYMBOL_ELLIPSIS=String.fromCharCode(8230);qx.ui.basic.Label.INNER_TEXT="innerText";qx.ui.basic.Label.INNER_HTML="innerHTML";qx.ui.basic.Label.SUPPORT_NATIVE_ELLIPSIS=qx.sys.Client.getInstance().isMshtml();qx.ui.basic.Label.MNEMONIC_OUT_START="(<span style=\"text-decoration:underline\">";qx.ui.basic.Label.MNEMONIC_OUT_STOP="</span>)";qx.ui.basic.Label.MNEMONIC_IN_START="<span style=\"text-decoration:underline\">";qx.ui.basic.Label.MNEMONIC_IN_STOP="</span>";qx.ui.basic.Label.MNEMONIC_TEST1="^(((<([^>]|";qx.ui.basic.Label.MNEMONIC_TEST2=")+>)|(&([^;]|";qx.ui.basic.Label.MNEMONIC_TEST3=")+;)|[^&";qx.ui.basic.Label.MNEMONIC_TEST4="])*)(";qx.ui.basic.Label.MNEMONIC_TEST5=")";qx.ui.basic.Label.MNEMONIC_REGMODE="i";qx.ui.basic.Label._fontProperties={"none":[],"default":["fontFamily","fontSize","fontStyle","fontWeight","textDecoration"],"extended":["fontFamily","fontSize","fontStyle","fontWeight","letterSpacing","textDecoration","textTransform","whiteSpace","wordSpacing"],"multiline":["fontFamily","fontSize","fontStyle","fontWeight","textDecoration","lineHeight","wordWrap"],"extendedmultiline":["fontFamily","fontSize","fontStyle","fontWeight","letterSpacing","textDecoration","textTransform","whiteSpace","wordSpacing","lineHeight","wordBreak","wordWrap","quotes"],"all":["fontFamily","fontSize","fontStyle","fontVariant","fontWeight","letterSpacing","lineBreak","lineHeight","quotes","textDecoration","textIndent","textShadow","textTransform","textUnderlinePosition","whiteSpace","wordBreak","wordSpacing","wordWrap"]};qx.ui.basic.Label.BR="<br/>";qx.ui.basic.Label.CODE1="&#x";qx.ui.basic.Label.CODE2="&#";qx.ui.basic.Label.TOSTRHELPER="0x";qx.ui.basic.Label.htmlToText=function(s){return String(s).replace(/\s+|<([^>])+>|&amp;|&lt;|&gt;|&quot;|&nbsp;|&#[0-9]+;|&#x[0-9a-fA-F];]/gi,qx.ui.basic.Label._htmlToText)};qx.ui.basic.Label._htmlToText=function(s){switch(s){case qx.constant.Html.AMPERSAND:return qx.constant.Core.AMPERSAND;case qx.constant.Html.SMALLER:return qx.constant.Core.SMALLER;case qx.constant.Html.BIGGER:return qx.constant.Core.BIGGER;case qx.constant.Html.QUOTE:return qx.constant.Core.QUOTE;case qx.constant.Html.SPACE:return String.fromCharCode(160);default:if(s.substring(0,3)==qx.ui.basic.Label.CODE1){return String.fromCharCode(parseInt(qx.ui.basic.Label.TOSTRHELPER+s.substring(3,s.length-1)))}else if(s.substring(0,2)==qx.ui.basic.Label.CODE2){return String.fromCharCode(s.substring(2,s.length-1))}else if(/\s+/.test(s)){return qx.constant.Core.SPACE}else if(/^<BR/gi.test(s)){return qx.constant.Core.NEWLINE};return qx.constant.Core.EMPTY}};qx.ui.basic.Label.textToHtml=function(s){return String(s).replace(/&|<|>|\n|\u00A0/g,qx.ui.basic.Label._textToHtml)};qx.ui.basic.Label._textToHtml=function(s){switch(s){case qx.constant.Core.AMPERSAND:return qx.constant.Html.AMPERSAND;case qx.constant.Core.SMALLER:return qx.constant.Html.SMALLER;case qx.constant.Core.BIGGER:return qx.constant.Html.BIGGER;case qx.constant.Core.NEWLINE:return qx.ui.basic.Label.BR;default:return qx.constant.Core.SPACE}};qx.ui.basic.Label.createMeasureNode=function(vId){var vNode=qx.ui.basic.Label._measureNodes[vId];if(!vNode){vNode=document.createElement(qx.constant.Tags.DIV);var vStyle=vNode.style;vStyle.width=vStyle.height=qx.constant.Core.AUTO;vStyle.visibility=qx.constant.Core.HIDDEN;vStyle.position=qx.constant.Style.POSITION_ABSOLUTE;vStyle.zIndex="-1";document.body.appendChild(vNode);qx.ui.basic.Label._measureNodes[vId]=vNode};return vNode};qx.Proto._htmlMode=false;qx.Proto._hasMnemonic=false;qx.Proto._mnemonicHtml=qx.constant.Core.EMPTY;qx.Proto._mnemonicTest=null;qx.Proto._modifyHtml=function(propValue,propOldValue,propData){this._htmlMode=qx.util.Validation.isValidString(propValue)&&propValue.match(/<.*>/)?true:false;if(this._isCreated){this._applyContent()};return true};qx.Proto._modifyTextAlign=function(propValue,propOldValue,propData){this.setStyleProperty("textAlign",propValue);return true};qx.Proto._modifyMnemonic=function(propValue,propOldValue,propData){this._hasMnemonic=qx.util.Validation.isValidString(propValue)&&propValue.length==1;this._mnemonicHtml=this._hasMnemonic?qx.ui.basic.Label.MNEMONIC_OUT_START+propValue+qx.ui.basic.Label.MNEMONIC_OUT_STOP:qx.constant.Core.EMPTY;this._mnemonicTest=this._hasMnemonic?new RegExp(qx.ui.basic.Label.MNEMONIC_TEST1+propValue+qx.ui.basic.Label.MNEMONIC_TEST2+propValue+qx.ui.basic.Label.MNEMONIC_TEST3+propValue+qx.ui.basic.Label.MNEMONIC_TEST4+propValue+qx.ui.basic.Label.MNEMONIC_TEST5,qx.ui.basic.Label.MNEMONIC_REGMODE):null;return true};qx.Proto._modifyFont=function(propValue,propOldValue,propData){this._invalidatePreferredInnerDimensions();if(propValue){propValue._applyWidget(this)}else if(propOldValue){propOldValue._resetWidget(this)};return true};qx.Proto._modifyWrap=function(propValue,propOldValue,propData){this.setStyleProperty(qx.constant.Style.PROPERTY_WHITESPACE,propValue?"normal":"nowrap");return true};qx.Proto._computeObjectNeededDimensions=function(){var vNode=this._copyStyles();var vHtml=this.getHtml();if(this._hasMnemonic&&!this._mnemonicTest.test(vHtml)){vHtml+=this._mnemonicHtml};vNode.innerHTML=vHtml;this._cachedPreferredInnerWidth=vNode.scrollWidth;this._cachedPreferredInnerHeight=vNode.scrollHeight};qx.Proto._copyStyles=function(){var vProps=this.getFontPropertiesProfile();var vNode=qx.ui.basic.Label.createMeasureNode(vProps);var vUseProperties=qx.ui.basic.Label._fontProperties[vProps];var vUsePropertiesLength=vUseProperties.length-1;var vProperty=vUseProperties[vUsePropertiesLength--];var vStyle=vNode.style;var vTemp;if(!vProperty){return vNode};do{vStyle[vProperty]=qx.util.Validation.isValid(vTemp=this.getStyleProperty([vProperty]))?vTemp:qx.constant.Core.EMPTY}while(vProperty=vUseProperties[vUsePropertiesLength--]);return vNode};qx.Proto._computePreferredInnerWidth=function(){this._computeObjectNeededDimensions();return this._cachedPreferredInnerWidth};qx.Proto._computePreferredInnerHeight=function(){this._computeObjectNeededDimensions();return this._cachedPreferredInnerHeight};qx.Proto._postApply=function(){var vHtml=this.getHtml();var vElement=this._getTargetNode();var vMnemonicMode=0;if(qx.util.Validation.isInvalidString(vHtml)){vElement.innerHTML=qx.constant.Core.EMPTY;return};if(this._hasMnemonic){vMnemonicMode=this._mnemonicTest.test(vHtml)?1:2};if(!this._htmlMode&&!this.getWrap()){switch(this._computedWidthType){case qx.ui.core.Widget.TYPE_PIXEL:case qx.ui.core.Widget.TYPE_PERCENT:case qx.ui.core.Widget.TYPE_FLEX:var vNeeded=this.getPreferredInnerWidth();var vInner=this.getInnerWidth();if(vInner<vNeeded){var vUseInnerText=true;try{vElement.innerText=qx.constant.Core.DEFAULT}catch(ex){vUseInnerText=false};vElement.style.overflow=qx.ui.basic.Label.OVERFLOW_HIDDEN;if(qx.ui.basic.Label.SUPPORT_NATIVE_ELLIPSIS){vElement.style.textOverflow=qx.ui.basic.Label.OVERFLOW_ELLIPSIS;vHtml+=this._mnemonicHtml}else{var vMeasureNode=this._copyStyles();var vSplitString=vHtml.split(qx.constant.Core.SPACE);var vSplitLength=vSplitString.length;var vWordIterator=0;var vCharaterIterator=0;var vPost=qx.ui.basic.Label.SYMBOL_ELLIPSIS;if(vMnemonicMode==2){var vPost=this._mnemonicHtml+vPost;vUseInnerText=false};if(vSplitLength>1){var vSplitTemp=[];for(vWordIterator=0;vWordIterator<vSplitLength;vWordIterator++){vSplitTemp.push(vSplitString[vWordIterator]);vMeasureNode[vUseInnerText?qx.ui.basic.Label.INNER_TEXT:qx.ui.basic.Label.INNER_HTML]=vSplitTemp.join(qx.constant.Core.SPACE)+vPost;if((vMeasureNode.scrollWidth>vInner)&&(this._computedWidthType!=qx.ui.core.Widget.TYPE_FLEX)){break}};vSplitTemp.pop();vSplitTemp=[vSplitTemp.join(qx.constant.Core.SPACE)];vCharaterString=vHtml.replace(vSplitTemp[0],qx.constant.Core.EMPTY)}else{var vSplitTemp=[];vCharaterString=vHtml};var vCharaterLength=vCharaterString.length;for(var vCharaterIterator=0;vCharaterIterator<vCharaterLength;vCharaterIterator++){vSplitTemp.push(vCharaterString.charAt(vCharaterIterator));vMeasureNode[vUseInnerText?qx.ui.basic.Label.INNER_TEXT:qx.ui.basic.Label.INNER_HTML]=vSplitTemp.join(qx.constant.Core.EMPTY)+vPost;if(vMeasureNode.scrollWidth>vInner){break}};vSplitTemp.pop();vSplitTemp.push(vPost);vHtml=vSplitTemp.join(qx.constant.Core.EMPTY)};break}else{vHtml+=this._mnemonicHtml};default:vElement.style.overflow=qx.constant.Core.EMPTY;if(qx.ui.basic.Label.SUPPORT_NATIVE_ELLIPSIS){vElement.style.textOverflow=qx.constant.Core.EMPTY}}};if(vMnemonicMode==1){this._mnemonicTest.test(vHtml);vHtml=RegExp.$1+qx.ui.basic.Label.MNEMONIC_IN_START+RegExp.$7+qx.ui.basic.Label.MNEMONIC_IN_STOP+RegExp.rightContext};return this._postApplyHtml(vElement,vHtml,vMnemonicMode)};if(qx.sys.Client.getInstance().isMshtml()||qx.sys.Client.getInstance().isOpera()){qx.Proto._postApplyHtml=function(vElement,vHtml,vMnemonicMode){if(this._htmlMode||vMnemonicMode>0){vElement.innerHTML=vHtml}else{try{vElement.textContent=vHtml;vElement.innerText=vHtml}catch(ex){vElement.innerHTML=vHtml}}}}else{qx.Proto._postApplyHtml=function(vElement,vHtml,vMnemonicMode){if(this._htmlMode||vMnemonicMode>0){vElement.innerHTML=vHtml}else{try{vElement.textContent=vHtml}catch(ex){vElement.innerHTML=vHtml}}}};qx.OO.defineClass("qx.constant.Html",{AMPERSAND:"&amp;",SMALLER:"&lt;",BIGGER:"&gt;",QUOTE:"&quot;",SPACE:"&nbsp;"});qx.OO.defineClass("qx.ui.basic.Image",qx.ui.basic.Terminator,function(vSource,vWidth,vHeight){qx.ui.basic.Terminator.call(this);this.setHtmlProperty(qx.ui.basic.Image.ATTR_ALT,qx.constant.Core.EMPTY);this.setHtmlProperty(qx.ui.basic.Image.ATTR_TITLE,qx.constant.Core.EMPTY);this.setSource(qx.util.Validation.isValid(vSource)?vSource:"static/image/blank.gif");this.setWidth(qx.util.Validation.isValid(vWidth)?vWidth:qx.constant.Core.AUTO);this.setHeight(qx.util.Validation.isValid(vHeight)?vHeight:qx.constant.Core.AUTO);this.setSelectable(false)});qx.ui.basic.Image.ATTR_ALT="alt";qx.ui.basic.Image.ATTR_TITLE="title";qx.ui.basic.Image.BORDER_NONE="0 none";qx.ui.basic.Image.RESET_VALIGN="top";qx.OO.addProperty({name:"source",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"preloader",type:qx.constant.Type.OBJECT});qx.OO.addProperty({name:"loaded",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.OO.addProperty({name:"resizeToInner",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"image"});qx.Proto._onload=function(){this.setLoaded(true)};qx.Proto._onerror=function(){this.debug("Could not load: "+this.getSource());this.setLoaded(false);if(this.hasEventListeners(qx.constant.Event.ERROR)){this.dispatchEvent(new qx.event.type.Event(qx.constant.Event.ERROR),true)}};qx.Proto._beforeAppear=function(){var vSource=this.getSource();if(qx.util.Validation.isValidString(vSource)){qx.manager.object.ImageManager.getInstance()._sources[vSource]++};return qx.ui.basic.Terminator.prototype._beforeAppear.call(this)};qx.Proto._beforeDisappear=function(){var vSource=this.getSource();if(qx.util.Validation.isValidString(vSource)){if(qx.manager.object.ImageManager.getInstance()._sources[vSource]<=1){delete qx.manager.object.ImageManager.getInstance()._sources[vSource]}else{qx.manager.object.ImageManager.getInstance()._sources[vSource]--}};return qx.ui.basic.Terminator.prototype._beforeDisappear.call(this)};qx.Proto._modifySource=function(propValue,propOldValue,propData){if(propValue&&typeof qx.manager.object.ImageManager.getInstance()._sources[propValue]===qx.constant.Type.UNDEFINED){qx.manager.object.ImageManager.getInstance()._sources[propValue]=0};if(propOldValue){if(qx.manager.object.ImageManager.getInstance()._sources[propOldValue]<=1){delete qx.manager.object.ImageManager.getInstance()._sources[propOldValue]}else{qx.manager.object.ImageManager.getInstance()._sources[propOldValue]--}};if(this.isCreated()){if(propValue){this.setPreloader(qx.manager.object.ImagePreloaderManager.getInstance().create(qx.manager.object.AliasManager.getInstance().resolvePath(propValue)))}else if(propOldValue){this._resetContent();this.setPreloader(null)}};return true};qx.Proto._modifyPreloader=function(propValue,propOldValue,propData){if(propOldValue){propOldValue.removeEventListener(qx.constant.Event.LOAD,this._onload,this);propOldValue.removeEventListener(qx.constant.Event.ERROR,this._onerror,this)};if(propValue){qx.manager.object.ImageManager.getInstance().add(this);this.forceLoaded(false);if(propValue.isErroneous()){this._onerror()}else if(propValue.isLoaded()){this.setLoaded(true)}else{propValue.addEventListener(qx.constant.Event.LOAD,this._onload,this);propValue.addEventListener(qx.constant.Event.ERROR,this._onerror,this)}}else{qx.manager.object.ImageManager.getInstance().remove(this);this.setLoaded(false)};return true};qx.Proto._modifyLoaded=function(propValue,propOldValue,propData){if(propValue&&this.isCreated()){this._applyContent()}else if(!propValue){this._invalidatePreferredInnerWidth();this._invalidatePreferredInnerHeight()};return true};qx.Proto._modifyElement=function(propValue,propOldValue,propData){if(propValue){if(!this._image){try{if(qx.sys.Client.getInstance().isWebkit()){this._image=document.createElement("img")}else{this._image=new Image};this._image.style.border=qx.ui.basic.Image.BORDER_NONE;this._image.style.verticalAlign=qx.ui.basic.Image.RESET_VALIGN}catch(ex){this.error("Failed while creating image #1",ex)};if(!qx.sys.Client.getInstance().isMshtml()){this._applyEnabled()}};propValue.appendChild(this._image)};qx.ui.basic.Terminator.prototype._modifyElement.call(this,propValue,propOldValue,propData);if(propValue){try{var vSource=this.getSource();if(qx.util.Validation.isValidString(vSource)){this.setPreloader(qx.manager.object.ImagePreloaderManager.getInstance().create(qx.manager.object.AliasManager.getInstance().resolvePath(vSource)))}}catch(ex){this.error("Failed while creating image #2",ex)}};return true};qx.Proto._postApply=function(){if(!this.getLoaded()){return};this._postApplyDimensions();this._updateContent()};if(qx.sys.Client.getInstance().isMshtml()){qx.ui.basic.Image.IMGLOADER_START="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='";qx.ui.basic.Image.IMGLOADER_STOP="',sizingMethod='scale')";qx.ui.basic.Image.FILTER_GRAY="Gray() Alpha(Opacity=30)";qx.Proto._modifyEnabled=function(propValue,propOldValue,propData){if(this._image){this._applyEnabled()};return qx.ui.basic.Terminator.prototype._modifyEnabled.call(this,propValue,propOldValue,propData)};qx.Proto._updateContent=function(vSource){var i=this._image;var pl=this.getPreloader();if(pl.getIsPng()&&this.getEnabled()){i.src=qx.manager.object.AliasManager.getInstance().resolvePath("static/image/blank.gif");i.style.filter=qx.ui.basic.Image.IMGLOADER_START+(vSource||pl.getSource())+qx.ui.basic.Image.IMGLOADER_STOP}else{i.src=vSource||pl.getSource();i.style.filter=this.getEnabled()?qx.constant.Core.EMPTY:qx.ui.basic.Image.FILTER_GRAY}};qx.Proto._resetContent=function(){var i=this._image;i.src=qx.manager.object.AliasManager.getInstance().resolvePath("static/image/blank.gif");i.style.filter=qx.constant.Core.EMPTY};qx.Proto._applyEnabled=qx.Proto._postApply}else{qx.Proto._postApply=function(){if(!this.getLoaded()){return};this._postApplyDimensions();this._updateContent()};qx.Proto._updateContent=function(vSource){this._image.src=vSource||this.getPreloader().getSource()};qx.Proto._resetContent=function(){this._image.src=qx.manager.object.AliasManager.getInstance().resolvePath("static/image/blank.gif")};qx.Proto._applyEnabled=function(){if(this._image){var o=this.getEnabled()?qx.constant.Core.EMPTY:0.3;var s=this._image.style;s.opacity=s.KhtmlOpacity=s.MozOpacity=o}};qx.Proto._modifyEnabled=function(propValue,propOldValue,propData){if(this._image){this._applyEnabled()};return qx.ui.basic.Terminator.prototype._modifyEnabled.call(this,propValue,propOldValue,propData)}};qx.Proto._computePreferredInnerWidth=function(){if(this.getLoaded()){return this.getPreloader().getWidth()}else if(qx.util.Validation.isValidString(this.getSource())){var vPreloader=qx.manager.object.ImagePreloaderManager.getInstance().get(qx.manager.object.AliasManager.getInstance().resolvePath(this.getSource()));if(vPreloader&&vPreloader.isLoaded()){return vPreloader.getWidth()}};return 0};qx.Proto._computePreferredInnerHeight=function(){if(this.getLoaded()){return this.getPreloader().getHeight()}else if(qx.util.Validation.isValidString(this.getSource())){var vPreloader=qx.manager.object.ImagePreloaderManager.getInstance().get(qx.manager.object.AliasManager.getInstance().resolvePath(this.getSource()));if(vPreloader&&vPreloader.isLoaded()){return vPreloader.getHeight()}};return 0};qx.Proto._applyContent=function(){qx.ui.basic.Terminator.prototype._applyContent.call(this);qx.ui.core.Widget.flushGlobalQueues()};if(qx.sys.Client.getInstance().isMshtml()){qx.Proto._postApplyDimensions=function(){try{var vImageStyle=this._image.style;if(this.getResizeToInner()){vImageStyle.pixelWidth=this.getInnerWidth();vImageStyle.pixelHeight=this.getInnerHeight()}else{vImageStyle.pixelWidth=this.getPreferredInnerWidth();vImageStyle.pixelHeight=this.getPreferredInnerHeight()}}catch(ex){this.error("postApplyDimensions failed",ex)}}}else{qx.Proto._postApplyDimensions=function(){try{var vImageNode=this._image;if(this.getResizeToInner()){vImageNode.width=this.getInnerWidth();vImageNode.height=this.getInnerHeight()}else{vImageNode.width=this.getPreferredInnerWidth();vImageNode.height=this.getPreferredInnerHeight()}}catch(ex){this.error("postApplyDimensions failed",ex)}}};if(qx.sys.Client.getInstance().isMshtml()){qx.Proto._changeInnerWidth=function(vNew,vOld){if(this.getResizeToInner()){this._image.style.pixelWidth=vNew}};qx.Proto._changeInnerHeight=function(vNew,vOld){if(this.getResizeToInner()){this._image.style.pixelHeight=vNew}}}else{qx.Proto._changeInnerWidth=function(vNew,vOld){if(this.getResizeToInner()){this._image.width=vNew}};qx.Proto._changeInnerHeight=function(vNew,vOld){if(this.getResizeToInner()){this._image.height=vNew}}};qx.Proto.dispose=function(){if(this.getDisposed()){return true};var vPreloader=this.getPreloader();if(vPreloader){vPreloader.removeEventListener(qx.constant.Event.LOAD,this._onload,this);vPreloader.removeEventListener(qx.constant.Event.ERROR,this._onerror,this);this.forcePreloader(null)};if(this._image){this._image.style.filter=qx.constant.Core.EMPTY;this._image=null};qx.manager.object.ImageManager.getInstance().remove(this);return qx.ui.basic.Terminator.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.form.ListItem",qx.ui.basic.Atom,function(vText,vIcon,vValue){qx.ui.basic.Atom.call(this,vText,vIcon);if(qx.util.Validation.isValid(vValue)){this.setValue(vValue)};this.addEventListener(qx.constant.Event.DBLCLICK,this._ondblclick)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"list-item"});qx.OO.addProperty({name:"value"});qx.Proto.handleStateChange=function(){if(this.hasState(qx.manager.selection.SelectionManager.STATE_LEAD)){this.setStyleProperty("MozOutline",qx.constant.Style.FOCUS_OUTLINE);this.setStyleProperty("outline",qx.constant.Style.FOCUS_OUTLINE)}else{this.removeStyleProperty("MozOutline");this.removeStyleProperty("outline")}};qx.Proto._applyStateStyleFocus=function(vStates){};qx.Proto.matchesString=function(vText){return vText!=qx.constant.Core.EMPTY&&this.getLabel().toLowerCase().indexOf(vText.toLowerCase())==0};qx.Proto.matchesStringExact=function(vText){return vText!=qx.constant.Core.EMPTY&&this.getLabel().toLowerCase()==String(vText).toLowerCase()};qx.Proto.matchesValue=function(vText){return vText!=qx.constant.Core.EMPTY&&this.getValue().toLowerCase().indexOf(vText.toLowerCase())==0};qx.Proto.matchesValueExact=function(vText){return vText!=qx.constant.Core.EMPTY&&this.getValue().toLowerCase()==String(vText).toLowerCase()};qx.Proto._ondblclick=function(e){var vCommand=this.getCommand();if(vCommand){vCommand.execute()}};qx.OO.defineClass("qx.manager.selection.SelectionManager",qx.core.Target,function(vBoundedWidget){qx.core.Target.call(this);this._selectedItems=new qx.type.Selection(this);if(qx.util.Validation.isValid(vBoundedWidget)){this.setBoundedWidget(vBoundedWidget)}});qx.Class.STATE_SELECTED="selected";qx.Class.STATE_ANCHOR="anchor";qx.Class.STATE_LEAD="lead";qx.OO.addProperty({name:"boundedWidget",type:qx.constant.Type.OBJECT});qx.OO.addProperty({name:"multiSelection",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.OO.addProperty({name:"dragSelection",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.OO.addProperty({name:"canDeselect",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.OO.addProperty({name:"fireChange",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.OO.addProperty({name:"anchorItem",type:qx.constant.Type.OBJECT});qx.OO.addProperty({name:"leadItem",type:qx.constant.Type.OBJECT});qx.OO.addProperty({name:"multiColumnSupport",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.Proto._modifyAnchorItem=function(propValue,propOldValue,propData){if(propOldValue){this.renderItemAnchorState(propOldValue,false)};if(propValue){this.renderItemAnchorState(propValue,true)};return true};qx.Proto._modifyLeadItem=function(propValue,propOldValue,propData){if(propOldValue){this.renderItemLeadState(propOldValue,false)};if(propValue){this.renderItemLeadState(propValue,true)};return true};qx.Proto._getFirst=function(){return this.getBoundedWidget().getFirstVisibleChild()};qx.Proto._getLast=function(){return this.getBoundedWidget().getLastVisibleChild()};qx.Proto.getFirst=function(){var vItem=this._getFirst();if(vItem){return vItem.isEnabled()?vItem:this.getNext(vItem)}};qx.Proto.getLast=function(){var vItem=this._getLast();if(vItem){return vItem.isEnabled()?vItem:this.getPrevious(vItem)}};qx.Proto.getItems=function(){return this.getBoundedWidget().getChildren()};qx.Proto.getNextSibling=function(vItem){return vItem.getNextSibling()};qx.Proto.getPreviousSibling=function(vItem){return vItem.getPreviousSibling()};qx.Proto.getNext=function(vItem){while(vItem){vItem=this.getNextSibling(vItem);if(!vItem){break};if(this.getItemEnabled(vItem)){return vItem}};return null};qx.Proto.getPrevious=function(vItem){while(vItem){vItem=this.getPreviousSibling(vItem);if(!vItem){break};if(this.getItemEnabled(vItem)){return vItem}};return null};qx.Proto.isBefore=function(vItem1,vItem2){var cs=this.getItems();return cs.indexOf(vItem1)<cs.indexOf(vItem2)};qx.Proto.isEqual=function(vItem1,vItem2){return vItem1==vItem2};qx.Proto.getItemHashCode=function(vItem){return vItem.toHashCode()};qx.Proto.scrollItemIntoView=function(vItem,vTopLeft){vItem.scrollIntoView(vTopLeft)};qx.Proto.getItemLeft=function(vItem){return vItem.getOffsetLeft()};qx.Proto.getItemTop=function(vItem){return vItem.getOffsetTop()};qx.Proto.getItemWidth=function(vItem){return vItem.getOffsetWidth()};qx.Proto.getItemHeight=function(vItem){return vItem.getOffsetHeight()};qx.Proto.getItemEnabled=function(vItem){return vItem.getEnabled()};qx.Proto.renderItemSelectionState=function(vItem,vIsSelected){vIsSelected?vItem.addState(qx.manager.selection.SelectionManager.STATE_SELECTED):vItem.removeState(qx.manager.selection.SelectionManager.STATE_SELECTED);if(vItem.handleStateChange){vItem.handleStateChange()}};qx.Proto.renderItemAnchorState=function(vItem,vIsAnchor){vIsAnchor?vItem.addState(qx.manager.selection.SelectionManager.STATE_ANCHOR):vItem.removeState(qx.manager.selection.SelectionManager.STATE_ANCHOR);if(vItem.handleStateChange!=null){vItem.handleStateChange()}};qx.Proto.renderItemLeadState=function(vItem,vIsLead){vIsLead?vItem.addState(qx.manager.selection.SelectionManager.STATE_LEAD):vItem.removeState(qx.manager.selection.SelectionManager.STATE_LEAD);if(vItem.handleStateChange!=null){vItem.handleStateChange()}};qx.Proto.getItemSelected=function(vItem){return this._selectedItems.contains(vItem)};qx.Proto.setItemSelected=function(vItem,vSelected){var hc=this.getItemHashCode(vItem);switch(this.getMultiSelection()){case true:if(!this.getItemEnabled(vItem)){return};if(this.getItemSelected(vItem)==vSelected){return};this.renderItemSelectionState(vItem,vSelected);vSelected?this._selectedItems.add(vItem):this._selectedItems.remove(vItem);this._dispatchChange();break;case false:var item0=this.getSelectedItems()[0];if(vSelected){var old=item0;if(this.isEqual(vItem,old)){return};if(old!=null){this.renderItemSelectionState(old,false)};this.renderItemSelectionState(vItem,true);this._selectedItems.removeAll();this._selectedItems.add(vItem);this._dispatchChange()}else{if(!this.isEqual(item0,vItem)){this.renderItemSelectionState(vItem,false);this._selectedItems.removeAll();this._dispatchChange()}};break}};qx.Proto.getSelectedItems=function(){return this._selectedItems.toArray()};qx.Proto.getSelectedItem=function(){return this._selectedItems.getFirst()};qx.Proto.setSelectedItems=function(vItems){var oldVal=this._getChangeValue();var oldFireChange=this.getFireChange();this.setFireChange(false);this._deselectAll();var vItem;var vItemLength=vItems.length;for(var i=0;i<vItemLength;i++){vItem=vItems[i];if(!this.getItemEnabled(vItem)){continue};this._selectedItems.add(vItem);this.renderItemSelectionState(vItem,true)};this.setFireChange(oldFireChange);if(oldFireChange&&this._hasChanged(oldVal)){this._dispatchChange()}};qx.Proto.setSelectedItem=function(vItem){if(!vItem){return};if(!this.getItemEnabled(vItem)){return};var oldVal=this._getChangeValue();var oldFireChange=this.getFireChange();this.setFireChange(false);this._deselectAll();this._selectedItems.add(vItem);this.renderItemSelectionState(vItem,true);this.setFireChange(oldFireChange);if(oldFireChange&&this._hasChanged(oldVal)){this._dispatchChange()}};qx.Proto.selectAll=function(){var oldVal=this._getChangeValue();var oldFireChange=this.getFireChange();this.setFireChange(false);this._selectAll();this.setFireChange(oldFireChange);if(oldFireChange&&this._hasChanged(oldVal)){this._dispatchChange()}};qx.Proto._selectAll=function(){if(!this.getMultiSelection()){return};var vItem;var vItems=this.getItems();var vItemsLength=vItems.length;this._selectedItems.removeAll();for(var i=0;i<vItemsLength;i++){vItem=vItems[i];if(!this.getItemEnabled(vItem)){continue};this._selectedItems.add(vItem);this.renderItemSelectionState(vItem,true)};return true};qx.Proto.deselectAll=function(){var oldVal=this._getChangeValue();var oldFireChange=this.getFireChange();this.setFireChange(false);this._deselectAll();this.setFireChange(oldFireChange);if(oldFireChange&&this._hasChanged(oldVal))this._dispatchChange()};qx.Proto._deselectAll=function(){var items=this._selectedItems.toArray();for(var i=0;i<items.length;i++){this.renderItemSelectionState(items[i],false)};this._selectedItems.removeAll();return true};qx.Proto.selectItemRange=function(vItem1,vItem2){var oldVal=this._getChangeValue();var oldFireChange=this.getFireChange();this.setFireChange(false);this._selectItemRange(vItem1,vItem2,true);this.setFireChange(oldFireChange);if(oldFireChange&&this._hasChanged(oldVal)){this._dispatchChange()}};qx.Proto._selectItemRange=function(vItem1,vItem2,vDeselect){if(this.isBefore(vItem2,vItem1)){return this._selectItemRange(vItem2,vItem1,vDeselect)};if(vDeselect){this._deselectAll()};var vCurrentItem=vItem1;while(vCurrentItem!=null){if(this.getItemEnabled(vCurrentItem)){this._selectedItems.add(vCurrentItem);this.renderItemSelectionState(vCurrentItem,true)};if(this.isEqual(vCurrentItem,vItem2)){break};vCurrentItem=this.getNext(vCurrentItem)};return true};qx.Proto._deselectItemRange=function(vItem1,vItem2){if(this.isBefore(vItem2,vItem1)){return this._deselectItemRange(vItem2,vItem1)};var vCurrentItem=vItem1;while(vCurrentItem!=null){this._selectedItems.remove(vCurrentItem);this.renderItemSelectionState(vCurrentItem,false);if(this.isEqual(vCurrentItem,vItem2)){break};vCurrentItem=this.getNext(vCurrentItem)}};qx.Proto._activeDragSession=false;qx.Proto.handleMouseDown=function(vItem,e){if(!e.isLeftButtonPressed()&&!e.isRightButtonPressed()){return};if(e.isRightButtonPressed()&&this.getItemSelected(vItem)){return};if(e.getShiftKey()||this.getDragSelection()||(!this.getItemSelected(vItem)&&!e.getCtrlKey())){this._onmouseevent(vItem,e)}else{this.setLeadItem(vItem)};this._activeDragSession=this.getDragSelection();if(this._activeDragSession){this.getBoundedWidget().addEventListener(qx.constant.Event.MOUSEUP,this._ondragup,this);this.getBoundedWidget().setCapture(true)}};qx.Proto._ondragup=function(e){this.getBoundedWidget().removeEventListener(qx.constant.Event.MOUSEUP,this._ondragup,this);this.getBoundedWidget().setCapture(false);this._activeDragSession=false};qx.Proto.handleMouseUp=function(vItem,e){if(!e.isLeftButtonPressed()){return};if(e.getCtrlKey()||this.getItemSelected(vItem)&&!this._activeDragSession){this._onmouseevent(vItem,e)};if(this._activeDragSession){this._activeDragSession=false;this.getBoundedWidget().setCapture(false)}};qx.Proto.handleMouseOver=function(oItem,e){if(!this.getDragSelection()||!this._activeDragSession){return};this._onmouseevent(oItem,e,true)};qx.Proto.handleClick=function(vItem,e){};qx.Proto.handleDblClick=function(vItem,e){};qx.Proto._onmouseevent=function(oItem,e,bOver){if(!this.getItemEnabled(oItem)){return};var oldVal=this._getChangeValue();var oldLead=this.getLeadItem();var oldFireChange=this.getFireChange();this.setFireChange(false);var selectedItems=this.getSelectedItems();var selectedCount=selectedItems.length;this.setLeadItem(oItem);var currentAnchorItem=this.getAnchorItem();var vCtrlKey=e.getCtrlKey();var vShiftKey=e.getShiftKey();if(!currentAnchorItem||selectedCount==0||(vCtrlKey&&!vShiftKey&&this.getMultiSelection()&&!this.getDragSelection())){this.setAnchorItem(oItem);currentAnchorItem=oItem};if((!vCtrlKey&&!vShiftKey&&!this._activeDragSession||!this.getMultiSelection())){if(!this.getItemEnabled(oItem)){return};this._deselectAll();this.setAnchorItem(oItem);if(this._activeDragSession){this.scrollItemIntoView((this.getBoundedWidget().getScrollTop()>(this.getItemTop(oItem)-1)?this.getPrevious(oItem):this.getNext(oItem))||oItem)};if(!this.getItemSelected(oItem)){this.renderItemSelectionState(oItem,true)};this._selectedItems.add(oItem);this._addToCurrentSelection=true}else if(this._activeDragSession&&bOver){if(oldLead){this._deselectItemRange(currentAnchorItem,oldLead)};if(this.isBefore(currentAnchorItem,oItem)){if(this._addToCurrentSelection){this._selectItemRange(currentAnchorItem,oItem,false)}else{this._deselectItemRange(currentAnchorItem,oItem)}}else{if(this._addToCurrentSelection){this._selectItemRange(oItem,currentAnchorItem,false)}else{this._deselectItemRange(oItem,currentAnchorItem)}};this.scrollItemIntoView((this.getBoundedWidget().getScrollTop()>(this.getItemTop(oItem)-1)?this.getPrevious(oItem):this.getNext(oItem))||oItem)}else if(this.getMultiSelection()&&vCtrlKey&&!vShiftKey){if(!this._activeDragSession){this._addToCurrentSelection=!(this.getCanDeselect()&&this.getItemSelected(oItem))};this.setItemSelected(oItem,this._addToCurrentSelection);this.setAnchorItem(oItem)}else if(this.getMultiSelection()&&vCtrlKey&&vShiftKey){if(!this._activeDragSession){this._addToCurrentSelection=!(this.getCanDeselect()&&this.getItemSelected(oItem))};if(this._addToCurrentSelection){this._selectItemRange(currentAnchorItem,oItem,false)}else{this._deselectItemRange(currentAnchorItem,oItem)}}else if(this.getMultiSelection()&&!vCtrlKey&&vShiftKey){if(this.getCanDeselect()){this._selectItemRange(currentAnchorItem,oItem,true)}else{if(oldLead){this._deselectItemRange(currentAnchorItem,oldLead)};this._selectItemRange(currentAnchorItem,oItem,false)}};this.setFireChange(oldFireChange);if(oldFireChange&&this._hasChanged(oldVal)){this._dispatchChange()}};qx.Proto.handleKeyDown=function(e){var oldVal=this._getChangeValue();var oldFireChange=this.getFireChange();this.setFireChange(false);if(e.getKeyCode()==65&&e.getCtrlKey()){if(this.getMultiSelection()){this._selectAll();this.setLeadItem(this.getFirst())}}else{var aIndex=this.getAnchorItem();var itemToSelect=this.getItemToSelect(e);if(itemToSelect&&this.getItemEnabled(itemToSelect)){this.setLeadItem(itemToSelect);this.scrollItemIntoView(itemToSelect);e.preventDefault();if(e.getShiftKey()&&this.getMultiSelection()){if(aIndex==null){this.setAnchorItem(itemToSelect)};this._selectItemRange(this.getAnchorItem(),itemToSelect,true)}else if(!e.getCtrlKey()){this._deselectAll();this.renderItemSelectionState(itemToSelect,true);this._selectedItems.add(itemToSelect);this.setAnchorItem(itemToSelect)}else if(e.getKeyCode()==qx.event.type.KeyEvent.keys.space){if(this._selectedItems.contains(itemToSelect)){this.renderItemSelectionState(itemToSelect,false);this._selectedItems.remove(itemToSelect);this.setAnchorItem(this._selectedItems.getFirst())}else{if(!e.getCtrlKey()||!this.getMultiSelection()){this._deselectAll()};this.renderItemSelectionState(itemToSelect,true);this._selectedItems.add(itemToSelect);this.setAnchorItem(itemToSelect)}}}};this.setFireChange(oldFireChange);if(oldFireChange&&this._hasChanged(oldVal)){this._dispatchChange()}};qx.Proto.getItemToSelect=function(vKeyboardEvent){if(vKeyboardEvent.getAltKey()){return null};switch(vKeyboardEvent.getKeyCode()){case qx.event.type.KeyEvent.keys.home:return this.getHome(this.getLeadItem());case qx.event.type.KeyEvent.keys.end:return this.getEnd(this.getLeadItem());case qx.event.type.KeyEvent.keys.down:return this.getDown(this.getLeadItem());case qx.event.type.KeyEvent.keys.up:return this.getUp(this.getLeadItem());case qx.event.type.KeyEvent.keys.left:return this.getLeft(this.getLeadItem());case qx.event.type.KeyEvent.keys.right:return this.getRight(this.getLeadItem());case qx.event.type.KeyEvent.keys.pageup:return this.getPageUp(this.getLeadItem())||this.getHome(this.getLeadItem());case qx.event.type.KeyEvent.keys.pagedown:return this.getPageDown(this.getLeadItem())||this.getEnd(this.getLeadItem());case qx.event.type.KeyEvent.keys.space:if(vKeyboardEvent.getCtrlKey()){return this.getLeadItem()}};return null};qx.Proto._dispatchChange=function(){if(!this.getFireChange()){return};if(this.hasEventListeners(qx.constant.Event.CHANGESELECTION)){this.dispatchEvent(new qx.event.type.DataEvent(qx.constant.Event.CHANGESELECTION,this.getSelectedItems()),true)}};qx.Proto._hasChanged=function(sOldValue){return sOldValue!=this._getChangeValue()};qx.Proto._getChangeValue=function(){return this._selectedItems.getChangeValue()};qx.Proto.getHome=function(){return this.getFirst()};qx.Proto.getEnd=function(){return this.getLast()};qx.Proto.getDown=function(vItem){if(!vItem){return this.getFirst()};return this.getMultiColumnSupport()?(this.getUnder(vItem)||this.getLast()):this.getNext(vItem)};qx.Proto.getUp=function(vItem){if(!vItem){return this.getLast()};return this.getMultiColumnSupport()?(this.getAbove(vItem)||this.getFirst()):this.getPrevious(vItem)};qx.Proto.getLeft=function(vItem){if(!this.getMultiColumnSupport()){return null};return !vItem?this.getLast():this.getPrevious(vItem)};qx.Proto.getRight=function(vItem){if(!this.getMultiColumnSupport()){return null};return !vItem?this.getFirst():this.getNext(vItem)};qx.Proto.getAbove=function(vItem){throw new Error("getAbove(): Not implemented yet")};qx.Proto.getUnder=function(vItem){throw new Error("getUnder(): Not implemented yet")};qx.Proto.getPageUp=function(vItem){var vBoundedWidget=this.getBoundedWidget();var vParentScrollTop=vBoundedWidget.getScrollTop();var vParentClientHeight=vBoundedWidget.getClientHeight();var newItem;var nextItem=this.getLeadItem();if(!nextItem){nextItem=this.getFirst()};var tryLoops=0;while(tryLoops<2){while(nextItem&&(this.getItemTop(nextItem)-this.getItemHeight(nextItem)>=vParentScrollTop)){nextItem=this.getUp(nextItem)};if(nextItem==null){break};if(nextItem!=this.getLeadItem()){this.scrollItemIntoView(nextItem,true);break};vBoundedWidget.setScrollTop(vParentScrollTop-vParentClientHeight-this.getItemHeight(nextItem));vParentScrollTop=vBoundedWidget.getScrollTop();tryLoops++};return nextItem};qx.Proto.getPageDown=function(vItem){var vBoundedWidget=this.getBoundedWidget();var vParentScrollTop=vBoundedWidget.getScrollTop();var vParentClientHeight=vBoundedWidget.getClientHeight();var newItem;var nextItem=this.getLeadItem();if(!nextItem){nextItem=this.getFirst()};var tryLoops=0;while(tryLoops<2){while(nextItem&&((this.getItemTop(nextItem)+(2*this.getItemHeight(nextItem)))<=(vParentScrollTop+vParentClientHeight))){nextItem=this.getDown(nextItem)};if(nextItem==null){break};if(nextItem!=this.getLeadItem()){break};vBoundedWidget.setScrollTop(vParentScrollTop+vParentClientHeight-2*this.getItemHeight(nextItem));vParentScrollTop=vBoundedWidget.getScrollTop();tryLoops++};return nextItem};qx.Proto.dispose=function(){if(this.getDisposed()){return};if(this._selectedItems){this._selectedItems.dispose();this._selectedItems=null};return qx.core.Target.prototype.dispose.call(this)};qx.OO.defineClass("qx.type.Selection",qx.core.Object,function(vManager){qx.core.Object.call(this);this._manager=vManager;this.removeAll()});qx.Proto.add=function(oItem){this._storage[this.getItemHashCode(oItem)]=oItem};qx.Proto.remove=function(oItem){delete this._storage[this.getItemHashCode(oItem)]};qx.Proto.removeAll=function(){this._storage={}};qx.Proto.contains=function(oItem){return this.getItemHashCode(oItem) in this._storage};qx.Proto.toArray=function(){var res=[];for(var key in this._storage){res.push(this._storage[key])};return res};qx.Proto.getFirst=function(){for(var key in this._storage){return this._storage[key]}};qx.Proto.getChangeValue=function(){var sb=[];for(var hc in this._storage){sb.push(hc)};sb.sort();return sb.join(qx.constant.Core.SEMICOLON)};qx.Proto.getItemHashCode=function(oItem){return this._manager.getItemHashCode(oItem)};qx.Proto.isEmpty=function(){return qx.lang.Object.isEmpty(this._storage)};qx.Proto.dispose=function(){if(this.getDisposed()){return};this._storage=null;this._manager=null;qx.core.Object.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.listview.ListViewHeaderSeparator",qx.ui.basic.Terminator,function(){qx.ui.basic.Terminator.call(this)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"list-view-header-separator"});qx.OO.defineClass("qx.io.remote.AbstractRemoteTransport",qx.core.Target,function(){qx.core.Target.call(this)});qx.OO.addProperty({name:"url",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"method",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"asynchronous",type:qx.constant.Type.BOOLEAN});qx.OO.addProperty({name:"data",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"username",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"password",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"state",type:qx.constant.Type.STRING,possibleValues:[qx.constant.Net.STATE_CREATED,qx.constant.Net.STATE_CONFIGURED,qx.constant.Net.STATE_SENDING,qx.constant.Net.STATE_RECEIVING,qx.constant.Net.STATE_COMPLETED,qx.constant.Net.STATE_ABORTED,qx.constant.Net.STATE_TIMEOUT,qx.constant.Net.STATE_FAILED],defaultValue:qx.constant.Net.STATE_CREATED});qx.OO.addProperty({name:"requestHeaders",type:qx.constant.Type.OBJECT});qx.OO.addProperty({name:"parameters",type:qx.constant.Type.OBJECT});qx.OO.addProperty({name:"responseType",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"useBasicHttpAuth",type:qx.constant.Type.BOOLEAN});qx.Proto.send=function(){throw new Error("send is abstract")};qx.Proto.abort=function(){if(qx.Settings.getValueOfClass("qx.io.remote.RemoteExchange","enableDebug")){this.warn("Aborting...")};this.setState(qx.constant.Net.STATE_ABORTED)};qx.Proto.timeout=function(){if(qx.Settings.getValueOfClass("qx.io.remote.RemoteExchange","enableDebug")){this.warn("Timeout...")};this.setState(qx.constant.Net.STATE_TIMEOUT)};qx.Proto.failed=function(){if(qx.Settings.getValueOfClass("qx.io.remote.RemoteExchange","enableDebug")){this.warn("Failed...")};this.setState(qx.constant.Net.STATE_FAILED)};qx.Proto.setRequestHeader=function(vLabel,vValue){throw new Error("setRequestHeader is abstract")};qx.Proto.getResponseHeader=function(vLabel){throw new Error("getResponseHeader is abstract")};qx.Proto.getResponseHeaders=function(){throw new Error("getResponseHeaders is abstract")};qx.Proto.getStatusCode=function(){throw new Error("getStatusCode is abstract")};qx.Proto.getStatusText=function(){throw new Error("getStatusText is abstract")};qx.Proto.getResponseText=function(){throw new Error("getResponseText is abstract")};qx.Proto.getResponseXml=function(){throw new Error("getResponseXml is abstract")};qx.Proto.getFetchedLength=function(){throw new Error("getFetchedLength is abstract")};qx.Proto._modifyState=function(propValue,propOldValue,propData){if(qx.Settings.getValueOfClass("qx.io.remote.RemoteExchange","enableDebug")){this.debug("State: "+propValue)};switch(propValue){case qx.constant.Net.STATE_CREATED:this.createDispatchEvent(qx.constant.Event.CREATED);break;case qx.constant.Net.STATE_CONFIGURED:this.createDispatchEvent(qx.constant.Event.CONFIGURED);break;case qx.constant.Net.STATE_SENDING:this.createDispatchEvent(qx.constant.Event.SENDING);break;case qx.constant.Net.STATE_RECEIVING:this.createDispatchEvent(qx.constant.Event.RECEIVING);break;case qx.constant.Net.STATE_COMPLETED:this.createDispatchEvent(qx.constant.Event.COMPLETED);break;case qx.constant.Net.STATE_ABORTED:this.createDispatchEvent(qx.constant.Event.ABORTED);break;case qx.constant.Net.STATE_FAILED:this.createDispatchEvent(qx.constant.Event.FAILED);break;case qx.constant.Net.STATE_TIMEOUT:this.createDispatchEvent(qx.constant.Event.TIMEOUT);break};return true};qx.OO.defineClass("qx.io.remote.RemoteExchange",qx.core.Target,function(vRequest){qx.core.Target.call(this);this.setRequest(vRequest);vRequest.setTransport(this)});qx.Settings.setDefault("enableDebug",false);qx.io.remote.RemoteExchange.typesOrder=["qx.io.remote.XmlHttpTransport","qx.io.remote.IframeTransport","qx.io.remote.ScriptTransport"];qx.io.remote.RemoteExchange.typesReady=false;qx.io.remote.RemoteExchange.typesAvailable={};qx.io.remote.RemoteExchange.typesSupported={};qx.io.remote.RemoteExchange.registerType=function(vClass,vId){qx.io.remote.RemoteExchange.typesAvailable[vId]=vClass};qx.io.remote.RemoteExchange.initTypes=function(){if(qx.io.remote.RemoteExchange.typesReady){return};for(var vId in qx.io.remote.RemoteExchange.typesAvailable){vTransporterImpl=qx.io.remote.RemoteExchange.typesAvailable[vId];if(vTransporterImpl.isSupported()){qx.io.remote.RemoteExchange.typesSupported[vId]=vTransporterImpl}};qx.io.remote.RemoteExchange.typesReady=true;if(qx.lang.Object.isEmpty(qx.io.remote.RemoteExchange.typesSupported)){throw new Error("No supported transport types were found!")}};qx.io.remote.RemoteExchange.canHandle=function(vImpl,vNeeds,vResponseType){if(!qx.lang.Array.contains(vImpl.handles.responseTypes,vResponseType)){return false};for(var vKey in vNeeds){if(!vImpl.handles[vKey]){return false}};return true};qx.io.remote.RemoteExchange._nativeMap={0:qx.constant.Net.STATE_CREATED,1:qx.constant.Net.STATE_CONFIGURED,2:qx.constant.Net.STATE_SENDING,3:qx.constant.Net.STATE_RECEIVING,4:qx.constant.Net.STATE_COMPLETED};qx.io.remote.RemoteExchange.wasSuccessful=function(vStatusCode,vReadyState,vIsLocal){if(vIsLocal){switch(vStatusCode){case null:case 0:return true;case -1:return vReadyState<4;default:return typeof vStatusCode===qx.constant.Type.UNDEFINED}}else{switch(vStatusCode){case -1:if(qx.Settings.getValueOfClass("qx.io.remote.RemoteExchange","enableDebug")&&vReadyState>3){qx.dev.log.Logger.getClassLogger(qx.io.remote.RemoteExchange).debug("Failed with statuscode: -1 at readyState "+vReadyState)};return vReadyState<4;case 200:case 304:return true;case 201:case 202:case 203:case 204:case 205:return true;case 206:if(qx.Settings.getValueOfClass("qx.io.remote.RemoteExchange","enableDebug")&&vReadyState===4){qx.dev.log.Logger.getClassLogger(qx.io.remote.RemoteExchange).debug("Failed with statuscode: 206 (Partial content while being complete!)")};return vReadyState!==4;case 300:case 301:case 302:case 303:case 305:case 400:case 401:case 402:case 403:case 404:case 405:case 406:case 407:case 408:case 409:case 410:case 411:case 412:case 413:case 414:case 415:case 500:case 501:case 502:case 503:case 504:case 505:if(qx.Settings.getValueOfClass("qx.io.remote.RemoteExchange","enableDebug")){qx.dev.log.Logger.getClassLogger(qx.io.remote.RemoteExchange).debug("Failed with typical HTTP statuscode: "+vStatusCode)};return false;case 12002:case 12029:case 12030:case 12031:case 12152:case 13030:if(qx.Settings.getValueOfClass("qx.io.remote.RemoteExchange","enableDebug")){qx.dev.log.Logger.getClassLogger(qx.io.remote.RemoteExchange).debug("Failed with MSHTML specific HTTP statuscode: "+vStatusCode)};return false;default:if(vStatusCode>206&&vStatusCode<300){return true};qx.dev.log.Logger.getClassLogger(qx.io.remote.RemoteExchange).debug("Unknown status code: "+vStatusCode+" ("+vReadyState+")");throw new Error("Unknown status code: "+vStatusCode)}}};qx.io.remote.RemoteExchange.statusCodeToString=function(vStatusCode){switch(vStatusCode){case -1:return "Not available";case 200:return "Ok";case 304:return "Not modified";case 206:return "Partial content";case 204:return "No content";case 300:return "Multiple choices";case 301:return "Moved permanently";case 302:return "Moved temporarily";case 303:return "See other";case 305:return "Use proxy";case 400:return "Bad request";case 401:return "Unauthorized";case 402:return "Payment required";case 403:return "Forbidden";case 404:return "Not found";case 405:return "Method not allowed";case 406:return "Not acceptable";case 407:return "Proxy authentication required";case 408:return "Request time-out";case 409:return "Conflict";case 410:return "Gone";case 411:return "Length required";case 412:return "Precondition failed";case 413:return "Request entity too large";case 414:return "Request-URL too large";case 415:return "Unsupported media type";case 500:return "Server error";case 501:return "Not implemented";case 502:return "Bad gateway";case 503:return "Out of resources";case 504:return "Gateway time-out";case 505:return "HTTP version not supported";case 12002:return "Server timeout";case 12029:return "Connection dropped";case 12030:return "Connection dropped";case 12031:return "Connection dropped";case 12152:return "Connection closed by server";case 13030:return "MSHTML-specific HTTP status code";default:return "Unknown status code"}};qx.OO.addProperty({name:"request",type:qx.constant.Type.OBJECT,instance:"qx.io.remote.RemoteRequest"});qx.OO.addProperty({name:"implementation",type:qx.constant.Type.OBJECT});qx.OO.addProperty({name:"state",type:qx.constant.Type.STRING,possibleValues:[qx.constant.Net.STATE_CONFIGURED,qx.constant.Net.STATE_SENDING,qx.constant.Net.STATE_RECEIVING,qx.constant.Net.STATE_COMPLETED,qx.constant.Net.STATE_ABORTED,qx.constant.Net.STATE_TIMEOUT,qx.constant.Net.STATE_FAILED],defaultValue:qx.constant.Net.STATE_CONFIGURED});qx.Proto.send=function(){var vRequest=this.getRequest();if(!vRequest){return this.error("Please attach a request object first")};qx.io.remote.RemoteExchange.initTypes();var vUsage=qx.io.remote.RemoteExchange.typesOrder;var vSupported=qx.io.remote.RemoteExchange.typesSupported;var vResponseType=vRequest.getResponseType();var vNeeds={};if(vRequest.getAsynchronous()){vNeeds.asynchronous=true}else{vNeeds.synchronous=true};if(vRequest.getCrossDomain()){vNeeds.crossDomain=true};var vTransportImpl,vTransport;for(var i=0,l=vUsage.length;i<l;i++){vTransportImpl=vSupported[vUsage[i]];if(vTransportImpl){if(!qx.io.remote.RemoteExchange.canHandle(vTransportImpl,vNeeds,vResponseType)){continue};try{if(qx.Settings.getValueOfClass("qx.io.remote.RemoteExchange","enableDebug")){this.debug("Using implementation: "+vTransportImpl.classname)};vTransport=new vTransportImpl;this.setImplementation(vTransport);vTransport.setUseBasicHttpAuth(vRequest.getUseBasicHttpAuth());vTransport.send();return true}catch(ex){return this.error("Request handler throws error",ex)}}};this.error("There is no transport implementation available to handle this request: "+vRequest)};qx.Proto.abort=function(){var vImplementation=this.getImplementation();if(vImplementation){if(qx.Settings.getValueOfClass("qx.io.remote.RemoteExchange","enableDebug")){this.debug("Abort: implementation "+vImplementation.toHashCode())};vImplementation.abort()}else{if(qx.Settings.getValueOfClass("qx.io.remote.RemoteExchange","enableDebug")){this.debug("Abort: forcing state to be aborted")};this.setState(qx.constant.Net.STATE_ABORTED)}};qx.Proto.timeout=function(){var vImplementation=this.getImplementation();if(vImplementation){this.warn("Timeout: implementation "+vImplementation.toHashCode());vImplementation.timeout()}else{this.warn("Timeout: forcing state to timeout");this.setState(qx.constant.Net.STATE_TIMEOUT)};if(this.getRequest()){this.getRequest().setTimeout(0)}};qx.Proto._onsending=function(e){this.setState(qx.constant.Net.STATE_SENDING)};qx.Proto._onreceiving=function(e){this.setState(qx.constant.Net.STATE_RECEIVING)};qx.Proto._oncompleted=function(e){this.setState(qx.constant.Net.STATE_COMPLETED)};qx.Proto._onabort=function(e){this.setState(qx.constant.Net.STATE_ABORTED)};qx.Proto._onfailed=function(e){this.setState(qx.constant.Net.STATE_FAILED)};qx.Proto._ontimeout=function(e){this.setState(qx.constant.Net.STATE_TIMEOUT)};qx.Proto._modifyImplementation=function(propValue,propOldValue,propData){if(propOldValue){propOldValue.removeEventListener(qx.constant.Event.SENDING,this._onsending,this);propOldValue.removeEventListener(qx.constant.Event.RECEIVING,this._onreceiving,this);propOldValue.removeEventListener(qx.constant.Event.COMPLETED,this._oncompleted,this);propOldValue.removeEventListener(qx.constant.Event.ABORTED,this._onabort,this);propOldValue.removeEventListener(qx.constant.Event.TIMEOUT,this._ontimeout,this);propOldValue.removeEventListener(qx.constant.Event.FAILED,this._onfailed,this)};if(propValue){var vRequest=this.getRequest();propValue.setUrl(vRequest.getUrl());propValue.setMethod(vRequest.getMethod());propValue.setAsynchronous(vRequest.getAsynchronous());propValue.setUsername(vRequest.getUsername());propValue.setPassword(vRequest.getPassword());propValue.setParameters(vRequest.getParameters());propValue.setRequestHeaders(vRequest.getRequestHeaders());propValue.setData(vRequest.getData());propValue.setResponseType(vRequest.getResponseType());propValue.addEventListener(qx.constant.Event.SENDING,this._onsending,this);propValue.addEventListener(qx.constant.Event.RECEIVING,this._onreceiving,this);propValue.addEventListener(qx.constant.Event.COMPLETED,this._oncompleted,this);propValue.addEventListener(qx.constant.Event.ABORTED,this._onabort,this);propValue.addEventListener(qx.constant.Event.TIMEOUT,this._ontimeout,this);propValue.addEventListener(qx.constant.Event.FAILED,this._onfailed,this)};return true};qx.Proto._modifyState=function(propValue,propOldValue,propData){var vRequest=this.getRequest();if(qx.Settings.getValueOfClass("qx.io.remote.RemoteExchange","enableDebug")){this.debug("State: "+propOldValue+" => "+propValue)};switch(propValue){case qx.constant.Net.STATE_SENDING:this.createDispatchEvent(qx.constant.Event.SENDING);break;case qx.constant.Net.STATE_RECEIVING:this.createDispatchEvent(qx.constant.Event.RECEIVING);break;case qx.constant.Net.STATE_COMPLETED:case qx.constant.Net.STATE_ABORTED:case qx.constant.Net.STATE_TIMEOUT:case qx.constant.Net.STATE_FAILED:var vImpl=this.getImplementation();if(!vImpl){break};var vResponse=new qx.io.remote.RemoteResponse;if(propValue==qx.constant.Net.STATE_COMPLETED){var vContent=vImpl.getResponseContent();vResponse.setContent(vContent);if(vContent===null){if(qx.Settings.getValueOfClass("qx.io.remote.RemoteExchange","enableDebug")){this.debug("Altered State: "+propValue+" => failed")};propValue=qx.constant.Net.STATE_FAILED}};vResponse.setStatusCode(vImpl.getStatusCode());vResponse.setResponseHeaders(vImpl.getResponseHeaders());var vEventType;switch(propValue){case qx.constant.Net.STATE_COMPLETED:vEventType=qx.constant.Event.COMPLETED;break;case qx.constant.Net.STATE_ABORTED:vEventType=qx.constant.Event.ABORTED;break;case qx.constant.Net.STATE_TIMEOUT:vEventType=qx.constant.Event.TIMEOUT;break;case qx.constant.Net.STATE_FAILED:vEventType=qx.constant.Event.FAILED;break};this.setImplementation(null);vImpl.dispose();this.createDispatchDataEvent(vEventType,vResponse);break};return true};qx.Proto.dispose=function(){if(this.getDisposed()){return};var vImpl=this.getImplementation();if(vImpl){this.setImplementation(null);vImpl.dispose()};this.setRequest(null);return qx.core.Target.prototype.dispose.call(this)};qx.OO.defineClass("qx.constant.Mime",{JAVASCRIPT:"text/javascript",JSON:"text/json",XML:"application/xml",TEXT:"text/plain",HTML:"text/html"});qx.OO.defineClass("qx.io.remote.XmlHttpTransport",qx.io.remote.AbstractRemoteTransport,function(){qx.io.remote.AbstractRemoteTransport.call(this);this._req=qx.io.remote.XmlHttpTransport.createRequestObject();var o=this;this._req.onreadystatechange=function(e){return o._onreadystatechange(e)}});qx.io.remote.RemoteExchange.registerType(qx.io.remote.XmlHttpTransport,"qx.io.remote.XmlHttpTransport");qx.io.remote.XmlHttpTransport.handles={synchronous:true,asynchronous:true,crossDomain:false,fileUpload:false,responseTypes:[qx.constant.Mime.TEXT,qx.constant.Mime.JAVASCRIPT,qx.constant.Mime.JSON,qx.constant.Mime.XML,qx.constant.Mime.HTML]};qx.io.remote.XmlHttpTransport.requestObjects=[];qx.io.remote.XmlHttpTransport.requestObjectCount=0;qx.io.remote.XmlHttpTransport.isSupported=function(){if(window.XMLHttpRequest){if(qx.Settings.getValueOfClass("qx.io.remote.RemoteExchange","enableDebug")){qx.dev.log.Logger.getClassLogger(qx.io.remote.XmlHttpTransport).debug("Using XMLHttpRequest")};qx.io.remote.XmlHttpTransport.createRequestObject=qx.io.remote.XmlHttpTransport._createNativeRequestObject;return true};if(window.ActiveXObject){var vServers=["MSXML2.XMLHTTP.6.0","MSXML2.XMLHTTP.5.0","MSXML2.XMLHTTP.4.0","MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP.2.0","MSXML2.XMLHTTP","Microsoft.XMLHTTP"];var vObject;var vServer;for(var i=0,l=vServers.length;i<l;i++){vServer=vServers[i];try{vObject=new ActiveXObject(vServer);break}catch(ex){vObject=null}};if(vObject){if(qx.Settings.getValueOfClass("qx.io.remote.RemoteExchange","enableDebug")){qx.dev.log.Logger.getClassLogger(qx.io.remote.XmlHttpTransport).debug("Using ActiveXObject: "+vServer)};qx.io.remote.XmlHttpTransport._activeXServer=vServer;qx.io.remote.XmlHttpTransport.createRequestObject=qx.io.remote.XmlHttpTransport._createActiveXRequestObject;return true}};return false};qx.io.remote.XmlHttpTransport.createRequestObject=function(){throw new Error("XMLHTTP is not supported!")};qx.io.remote.XmlHttpTransport._createNativeRequestObject=function(){return new XMLHttpRequest};qx.io.remote.XmlHttpTransport._createActiveXRequestObject=function(){return new ActiveXObject(qx.io.remote.XmlHttpTransport._activeXServer)};qx.Proto._localRequest=false;qx.Proto._lastReadyState=0;qx.Proto.getRequest=function(){return this._req};qx.Proto.send=function(){this._lastReadyState=0;var vRequest=this.getRequest();var vMethod=this.getMethod();var vAsynchronous=this.getAsynchronous();var vUrl=this.getUrl();var vLocalRequest=(qx.sys.Client.getInstance().getRunsLocally()&&!(/^http(s){0,1}\:/.test(vUrl)));this._localRequest=vLocalRequest;var vParameters=this.getParameters();var vParametersList=[];for(var vId in vParameters){var value=vParameters[vId];if(value instanceof Array){for(var i=0;i<value.length;i++){vParametersList.push(encodeURIComponent(vId)+qx.constant.Core.EQUAL+encodeURIComponent(value[i]))}}else{vParametersList.push(encodeURIComponent(vId)+qx.constant.Core.EQUAL+encodeURIComponent(value))}};if(vParametersList.length>0){vUrl+=(vUrl.indexOf(qx.constant.Core.QUESTIONMARK)>=0?qx.constant.Core.AMPERSAND:(qx.constant.Core.QUESTIONMARK)+vParametersList.join(qx.constant.Core.AMPERSAND))};var encode64=function(input){var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;do{chr1=input.charCodeAt(i++);chr2=input.charCodeAt(i++);chr3=input.charCodeAt(i++);enc1=chr1>>2;enc2=((chr1&3)<<4)|(chr2>>4);enc3=((chr2&15)<<2)|(chr3>>6);enc4=chr3&63;if(isNaN(chr2)){enc3=enc4=64}else if(isNaN(chr3)){enc4=64};output+=keyStr.charAt(enc1)+keyStr.charAt(enc2)+keyStr.charAt(enc3)+keyStr.charAt(enc4)}while(i<input.length);return output};if(this.getUsername()){if(this.getUseBasicHttpAuth()){vRequest.open(vMethod,vUrl,vAsynchronous);vRequest.setRequestHeader('Authorization','Basic '+encode64(this.getUsername()+':'+this.getPassword()))}else{vRequest.open(vMethod,vUrl,vAsynchronous,this.getUsername(),this.getPassword())}}else{vRequest.open(vMethod,vUrl,vAsynchronous)};var vRequestHeaders=this.getRequestHeaders();for(var vId in vRequestHeaders){vRequest.setRequestHeader(vId,vRequestHeaders[vId])};try{vRequest.send(this.getData())}catch(ex){if(vLocalRequest){this.failedLocally()}else{this.error("Failed to send data: "+ex,"send");this.failed()};return};if(!vAsynchronous){this._onreadystatechange()}};qx.Proto.failedLocally=function(){if(this.getState()===qx.constant.Net.STATE_FAILED){return};this.warn("Could not load from file: "+this.getUrl());this.failed()};qx.Proto._onreadystatechange=function(e){switch(this.getState()){case qx.constant.Net.STATE_COMPLETED:case qx.constant.Net.STATE_ABORTED:case qx.constant.Net.STATE_FAILED:case qx.constant.Net.STATE_TIMEOUT:if(qx.Settings.getValueOfClass("qx.io.remote.RemoteExchange","enableDebug")){this.warn("Ignore Ready State Change")};return};var vReadyState=this.getReadyState();if(!qx.io.remote.RemoteExchange.wasSuccessful(this.getStatusCode(),vReadyState,this._localRequest)){return this.failed()};while(this._lastReadyState<vReadyState){this.setState(qx.io.remote.RemoteExchange._nativeMap[++this._lastReadyState])}};qx.Proto.getReadyState=function(){var vReadyState=null;try{vReadyState=this._req.readyState}catch(ex){};return vReadyState};qx.Proto.setRequestHeader=function(vLabel,vValue){this._req.setRequestHeader(vLabel,vValue)};qx.Proto.getResponseHeader=function(vLabel){var vResponseHeader=null;try{this.getRequest().getResponseHeader(vLabel)||null}catch(ex){};return vResponseHeader};qx.Proto.getStringResponseHeaders=function(){var vSourceHeader=null;try{var vLoadHeader=this._req.getAllResponseHeaders();if(vLoadHeader){vSourceHeader=vLoadHeader}}catch(ex){};return vSourceHeader};qx.Proto.getResponseHeaders=function(){var vSourceHeader=this.getStringResponseHeaders();var vHeader={};if(vSourceHeader){var vValues=vSourceHeader.split(/[\r\n]+/g);for(var i=0,l=vValues.length;i<l;i++){var vPair=vValues[i].match(/^([^:]+)\s*:\s*(.+)$/i);if(vPair){vHeader[vPair[1]]=vPair[2]}}};return vHeader};qx.Proto.getStatusCode=function(){var vStatusCode=-1;try{vStatusCode=this.getRequest().status}catch(ex){};return vStatusCode};qx.Proto.getStatusText=function(){var vStatusText=qx.constant.Core.EMPTY;try{vStatusText=this.getRequest().statusText}catch(ex){};return vStatusText};qx.Proto.getResponseText=function(){var vResponseText=null;var vStatus=this.getStatusCode();if((vStatus==0)||(vStatus>=200&&vStatus<300)){try{vResponseText=this.getRequest().responseText}catch(ex){}};return vResponseText};qx.Proto.getResponseXml=function(){var vResponseXML=null;var vStatus=this.getStatusCode();if((vStatus==0)||(vStatus>=200&&vStatus<300)){try{vResponseXML=this.getRequest().responseXML}catch(ex){}};return vResponseXML};qx.Proto.getFetchedLength=function(){var vText=this.getResponseText();return qx.util.Validation.isValidString(vText)?vText.length:0};qx.Proto.getResponseContent=function(){if(this.getState()!==qx.constant.Net.STATE_COMPLETED){if(qx.Settings.getValueOfClass("qx.io.remote.RemoteExchange","enableDebug")){this.warn("Transfer not complete, ignoring content!")};return null};if(qx.Settings.getValueOfClass("qx.io.remote.RemoteExchange","enableDebug")){this.debug("Returning content for responseType: "+this.getResponseType())};var vText=this.getResponseText();switch(this.getResponseType()){case qx.constant.Mime.TEXT:case qx.constant.Mime.HTML:return vText;case qx.constant.Mime.JSON:try{return vText&&vText.length>0?qx.io.Json.parseQx(vText):null}catch(ex){this.error("Could not execute json: ["+vText+"]",ex);return "<pre>Could not execute json: \n"+vText+"\n</pre>"};case qx.constant.Mime.JAVASCRIPT:try{return vText&&vText.length>0?window.eval(vText):null}catch(ex){return this.error("Could not execute javascript: ["+vText+"]",ex)};case qx.constant.Mime.XML:return this.getResponseXml();default:this.warn("No valid responseType specified ("+this.getResponseType()+")!");return null}};qx.Proto._modifyState=function(propValue,propOldValue,propData){if(qx.Settings.getValueOfClass("qx.io.remote.RemoteExchange","enableDebug")){this.debug("State: "+propValue)};switch(propValue){case qx.constant.Net.STATE_CREATED:this.createDispatchEvent(qx.constant.Event.CREATED);break;case qx.constant.Net.STATE_CONFIGURED:this.createDispatchEvent(qx.constant.Event.CONFIGURED);break;case qx.constant.Net.STATE_SENDING:this.createDispatchEvent(qx.constant.Event.SENDING);break;case qx.constant.Net.STATE_RECEIVING:this.createDispatchEvent(qx.constant.Event.RECEIVING);break;case qx.constant.Net.STATE_COMPLETED:this.createDispatchEvent(qx.constant.Event.COMPLETED);break;case qx.constant.Net.STATE_FAILED:this.createDispatchEvent(qx.constant.Event.FAILED);break;case qx.constant.Net.STATE_ABORTED:this.getRequest().abort();this.createDispatchEvent(qx.constant.Event.ABORTED);break;case qx.constant.Net.STATE_TIMEOUT:this.getRequest().abort();this.createDispatchEvent(qx.constant.Event.TIMEOUT);break};return true};qx.Proto.dispose=function(){if(this.getDisposed()){return};var vRequest=this.getRequest();if(vRequest){if(!qx.sys.Client.getInstance().isMshtml()){vRequest.onreadystatechange=null};switch(vRequest.readyState){case 1:case 2:case 3:vRequest.abort()};this._req=null};return qx.io.remote.AbstractRemoteTransport.prototype.dispose.call(this)};qx.OO.defineClass("qx.io.Json");qx.Settings.setDefault("encodeUndefined",true);qx.Settings.setDefault("enableDebug",false);qx.io.Json=function(){var m={'\b':'\\b','\t':'\\t','\n':'\\n','\f':'\\f','\r':'\\r','"':'\\"','\\':'\\\\'},s={'boolean':function(x){return String(x)},number:function(x){return isFinite(x)?String(x):'null'},string:function(x){if(/["\\\x00-\x1f]/.test(x)){x=x.replace(/([\x00-\x1f\\"])/g,function(a,b){var c=m[b];if(c){return c};c=b.charCodeAt();return '\\u00'+Math.floor(c/16).toString(16)+(c%16).toString(16)})};return '"'+x+'"'},object:function(x){if(x){var a=[],b,f,i,l,v;if(x instanceof Array){a[0]='[';l=x.length;for(i=0;i<l;i+=1){v=x[i];f=s[typeof v];if(f){v=f(v);if(typeof v=='string'){if(b){a[a.length]=','};a[a.length]=v;b=true}}};a[a.length]=']'}else if(x instanceof Date){var dateParams=x.getUTCFullYear()+","+x.getUTCMonth()+","+x.getUTCDate()+","+x.getUTCHours()+","+x.getUTCMinutes()+","+x.getUTCSeconds()+","+x.getUTCMilliseconds();return "new Date(Date.UTC("+dateParams+"))"}else if(x instanceof Object){a[0]='{';for(i in x){v=x[i];f=s[typeof v];if(f){v=f(v);if(typeof v=='string'){if(b){a[a.length]=','};a.push(s.string(i),':',v);b=true}}};a[a.length]='}'}else{return};return a.join('')};return 'null'},undefined:function(x){if(qx.Settings.getValueOfClass("qx.io.Json","encodeUndefined"))return 'null'}};return {copyright:'(c)2005 JSON.org',license:'http://www.JSON.org/license.html',stringify:function(v){var f=s[typeof v];var ret=null;if(f){v=f(v);if(typeof v=='string'){ret=v}};if(qx.Settings.getValueOfClass("qx.io.Json","enableDebug")){var logger=qx.dev.log.Logger.getClassLogger(qx.core.Object);logger.debug("JSON request: "+ret)};return ret},parse:function(text){try{return !(/[^,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t]/.test(text.replace(/"(\\.|[^"\\])*"/g,'')))&&eval('('+text+')')}catch(e){return false}}}}();qx.io.Json.parseQx=function(text){if(qx.Settings.getValueOfClass("qx.io.Json","enableDebug")){var logger=qx.dev.log.Logger.getClassLogger(qx.core.Object);logger.debug("JSON response: "+text)};var obj=(text&&text.length>0)?eval('('+text+')'):null;return obj};qx.OO.defineClass("qx.io.remote.IframeTransport",qx.io.remote.AbstractRemoteTransport,function(){qx.io.remote.AbstractRemoteTransport.call(this);var vUniqueId=(new Date).valueOf();var vFrameName="frame_"+vUniqueId;var vFormName="form_"+vUniqueId;if(qx.sys.Client.getInstance().isMshtml()){this._frame=document.createElement('<iframe name="'+vFrameName+'"></iframe>')}else{this._frame=document.createElement("iframe")};this._frame.src="javascript:void(0)";this._frame.id=this._frame.name=vFrameName;this._frame.onload=function(e){return o._onload(e)};this._frame.style.display="none";document.body.appendChild(this._frame);this._form=document.createElement("form");this._form.target=vFrameName;this._form.id=this._form.name=vFormName;this._form.style.display="none";document.body.appendChild(this._form);this._data=document.createElement("textarea");this._data.id=this._data.name="_data_";this._form.appendChild(this._data);var o=this;this._frame.onreadystatechange=function(e){return o._onreadystatechange(e)}});qx.Proto._lastReadyState=0;qx.io.remote.RemoteExchange.registerType(qx.io.remote.IframeTransport,"qx.io.remote.IframeTransport");qx.io.remote.IframeTransport.handles={synchronous:false,asynchronous:true,crossDomain:false,fileUpload:true,responseTypes:[qx.constant.Mime.TEXT,qx.constant.Mime.JAVASCRIPT,qx.constant.Mime.JSON,qx.constant.Mime.XML,qx.constant.Mime.HTML]};qx.io.remote.IframeTransport.isSupported=function(){return true};qx.Proto.send=function(){var vMethod=this.getMethod();var vUrl=this.getUrl();var vParameters=this.getParameters();var vParametersList=[];for(var vId in vParameters){var value=vParameters[vId];if(value instanceof Array){for(var i=0;i<value.length;i++){vParametersList.push(encodeURIComponent(vId)+qx.constant.Core.EQUAL+encodeURIComponent(value[i]))}}else{vParametersList.push(encodeURIComponent(vId)+qx.constant.Core.EQUAL+encodeURIComponent(value))}};if(vParametersList.length>0){vUrl+=(vUrl.indexOf(qx.constant.Core.QUESTIONMARK)>=0?qx.constant.Core.AMPERSAND:qx.constant.Core.QUESTIONMARK)+vParametersList.join(qx.constant.Core.AMPERSAND)};this._form.action=vUrl;this._form.method=vMethod;this._data.appendChild(document.createTextNode(this.getData()));this._form.submit()};qx.io.remote.IframeTransport._numericMap={"uninitialized":1,"loading":2,"loaded":2,"interactive":3,"complete":4};qx.Proto._onload=function(e){if(this._form.src){return};this._switchReadyState(qx.io.remote.IframeTransport._numericMap.complete)};qx.Proto._onreadystatechange=function(e){this._switchReadyState(qx.io.remote.IframeTransport._numericMap[this._frame.readyState])};qx.Proto._switchReadyState=function(vReadyState){switch(this.getState()){case qx.constant.Net.STATE_COMPLETED:case qx.constant.Net.STATE_ABORTED:case qx.constant.Net.STATE_FAILED:case qx.constant.Net.STATE_TIMEOUT:this.warn("Ignore Ready State Change");return};while(this._lastReadyState<vReadyState){this.setState(qx.io.remote.RemoteExchange._nativeMap[++this._lastReadyState])}};qx.Proto.setRequestHeader=function(vLabel,vValue){};qx.Proto.getResponseHeader=function(vLabel){return null};qx.Proto.getResponseHeaders=function(){return {}};qx.Proto.getStatusCode=function(){return 200};qx.Proto.getStatusText=function(){return qx.constant.Core.EMPTY};qx.Proto.getIframeWindow=function(){return qx.dom.DomIframe.getWindow(this._frame)};qx.Proto.getIframeDocument=function(){return qx.dom.DomIframe.getDocument(this._frame)};qx.Proto.getIframeBody=function(){return qx.dom.DomIframe.getBody(this._frame)};qx.Proto.getIframeTextContent=function(){var vBody=this.getIframeBody();if(!vBody){return null};if(vBody.firstChild.tagName=="PRE"){return vBody.firstChild.innerHTML}else{return vBody.innerHTML}};qx.Proto.getIframeHtmlContent=function(){var vBody=this.getIframeBody();return vBody?vBody.innerHTML:null};qx.Proto.getFetchedLength=function(){return 0};qx.Proto.getResponseContent=function(){if(this.getState()!==qx.constant.Net.STATE_COMPLETED){if(qx.Settings.getValueOfClass("qx.io.remote.RemoteExchange","enableDebug")){this.warn("Transfer not complete, ignoring content!")};return null};if(qx.Settings.getValueOfClass("qx.io.remote.RemoteExchange","enableDebug")){this.debug("Returning content for responseType: "+this.getResponseType())};var vText=this.getIframeTextContent();switch(this.getResponseType()){case qx.constant.Mime.TEXT:return vText;break;case qx.constant.Mime.HTML:return this.getIframeHtmlContent();break;case qx.constant.Mime.JSON:try{return vText&&vText.length>0?qx.io.Json.parseQx(vText):null}catch(ex){return this.error("Could not execute json: ("+vText+")",ex)};case qx.constant.Mime.JAVASCRIPT:try{return vText&&vText.length>0?window.eval(vText):null}catch(ex){return this.error("Could not execute javascript: ("+vText+")",ex)};case qx.constant.Mime.XML:return this.getIframeDocument();default:this.warn("No valid responseType specified ("+this.getResponseType()+")!");return null}};qx.Proto.dispose=function(){if(this.getDisposed()){return true};if(this._frame){this._frame.onload=null;this._frame.onreadystatechange=null;if(qx.sys.Client.getInstance().isGecko()){this._frame.src=qx.manager.object.AliasManager.getInstance().resolvePath("static/image/blank.gif")};document.body.removeChild(this._frame);this._frame=null};if(this._form){document.body.removeChild(this._form);this._form=null};return qx.io.remote.AbstractRemoteTransport.prototype.dispose.call(this)};qx.OO.defineClass("qx.dom.DomIframe");if(qx.sys.Client.getInstance().isMshtml()){qx.dom.DomIframe.getWindow=function(vIframe){try{return vIframe.contentWindow}catch(ex){return null}};qx.dom.DomIframe.getDocument=function(vIframe){try{var vWin=qx.dom.DomIframe.getWindow(vIframe);return vWin?vWin.document:null}catch(ex){return null}}}else{qx.dom.DomIframe.getWindow=function(vIframe){try{var vDoc=qx.dom.DomIframe.getDocument(vIframe);return vDoc?vDoc.defaultView:null}catch(ex){return null}};qx.dom.DomIframe.getDocument=function(vIframe){try{return vIframe.contentDocument}catch(ex){return null}}};qx.dom.DomIframe.getBody=function(vIframe){var vDoc=qx.dom.DomIframe.getDocument(vIframe);return vDoc?vDoc.getElementsByTagName("body")[0]:null};qx.OO.defineClass("qx.io.remote.ScriptTransport",qx.io.remote.AbstractRemoteTransport,function(){qx.io.remote.AbstractRemoteTransport.call(this);var vUniqueId=++qx.io.remote.ScriptTransport._uniqueId;if(vUniqueId>=2000000000){qx.io.remote.ScriptTransport._uniqueId=vUniqueId=1};this._element=null;this._uniqueId=vUniqueId});qx.Class._uniqueId=0;qx.Class._instanceRegistry={};qx.Class.ScriptTransport_PREFIX="_ScriptTransport_";qx.Class.ScriptTransport_ID_PARAM=qx.Class.ScriptTransport_PREFIX+"id";qx.Class.ScriptTransport_DATA_PARAM=qx.Class.ScriptTransport_PREFIX+"data";qx.Proto._lastReadyState=0;qx.io.remote.RemoteExchange.registerType(qx.io.remote.ScriptTransport,"qx.io.remote.ScriptTransport");qx.io.remote.ScriptTransport.handles={synchronous:false,asynchronous:true,crossDomain:true,fileUpload:false,responseTypes:[qx.constant.Mime.TEXT,qx.constant.Mime.JAVASCRIPT,qx.constant.Mime.JSON]};qx.io.remote.ScriptTransport.isSupported=function(){return true};qx.Proto.send=function(){var vUrl=this.getUrl();vUrl+=(vUrl.indexOf(qx.constant.Core.QUESTIONMARK)>=0?qx.constant.Core.AMPERSAND:qx.constant.Core.QUESTIONMARK)+qx.io.remote.ScriptTransport.ScriptTransport_ID_PARAM+qx.constant.Core.EQUAL+this._uniqueId;var vParameters=this.getParameters();var vParametersList=[];for(var vId in vParameters){if(vId.indexOf(qx.io.remote.ScriptTransport.ScriptTransport_PREFIX)==0){this.error("Illegal parameter name. The following prefix is used internally by qooxdoo): "+qx.io.remote.ScriptTransport.ScriptTransport_PREFIX)};var value=vParameters[vId];if(value instanceof Array){for(var i=0;i<value.length;i++){vParametersList.push(encodeURIComponent(vId)+qx.constant.Core.EQUAL+encodeURIComponent(value[i]))}}else{vParametersList.push(encodeURIComponent(vId)+qx.constant.Core.EQUAL+encodeURIComponent(value))}};if(vParametersList.length>0){vUrl+=qx.constant.Core.AMPERSAND+vParametersList.join(qx.constant.Core.AMPERSAND)};vData=this.getData();if(vData!=null){vUrl+=qx.constant.Core.AMPERSAND+qx.io.remote.ScriptTransport.ScriptTransport_DATA_PARAM+qx.constant.Core.EQUAL+encodeURIComponent(vData)};qx.io.remote.ScriptTransport._instanceRegistry[this._uniqueId]=this;this._element=document.createElement("script");this._element.charset="utf-8";this._element.src=vUrl;document.body.appendChild(this._element)};qx.io.remote.ScriptTransport._numericMap={"uninitialized":1,"loading":2,"loaded":2,"interactive":3,"complete":4};qx.Proto._switchReadyState=function(vReadyState){switch(this.getState()){case qx.constant.Net.STATE_COMPLETED:case qx.constant.Net.STATE_ABORTED:case qx.constant.Net.STATE_FAILED:case qx.constant.Net.STATE_TIMEOUT:this.warn("Ignore Ready State Change");return};while(this._lastReadyState<vReadyState){this.setState(qx.io.remote.RemoteExchange._nativeMap[++this._lastReadyState])}};qx.Class._requestFinished=function(id,content){var vInstance=qx.io.remote.ScriptTransport._instanceRegistry[id];if(vInstance==null){if(qx.Settings.getValueOfClass("qx.io.remote.RemoteExchange","enableDebug")){this.warn("Request finished for an unknown instance (probably aborted or timed out before)")}}else{vInstance._responseContent=content;vInstance._switchReadyState(qx.io.remote.ScriptTransport._numericMap.complete)}};qx.Proto.setRequestHeader=function(vLabel,vValue){};qx.Proto.getResponseHeader=function(vLabel){return null};qx.Proto.getResponseHeaders=function(){return {}};qx.Proto.getStatusCode=function(){return 200};qx.Proto.getStatusText=function(){return qx.constant.Core.EMPTY};qx.Proto.getFetchedLength=function(){return 0};qx.Proto.getResponseContent=function(){if(this.getState()!==qx.constant.Net.STATE_COMPLETED){if(qx.Settings.getValueOfClass("qx.io.remote.RemoteExchange","enableDebug")){this.warn("Transfer not complete, ignoring content!")};return null};if(qx.Settings.getValueOfClass("qx.io.remote.RemoteExchange","enableDebug")){this.debug("Returning content for responseType: "+this.getResponseType())};switch(this.getResponseType()){case qx.constant.Mime.TEXT:case qx.constant.Mime.JSON:case qx.constant.Mime.JAVASCRIPT:return this._responseContent;default:this.warn("No valid responseType specified ("+this.getResponseType()+")!");return null}};qx.Proto.dispose=function(){if(this.getDisposed()){return true};if(this._element!=null){delete qx.io.remote.ScriptTransport._instanceRegistry[this._uniqueId];document.body.removeChild(this._element);this._element=null};return qx.io.remote.AbstractRemoteTransport.prototype.dispose.call(this)};qx.OO.defineClass("qx.io.remote.RemoteRequest",qx.core.Target,function(vUrl,vMethod,vResponseType){qx.core.Target.call(this);this._requestHeaders={};this._parameters={};this.setUrl(vUrl);this.setMethod(vMethod||qx.constant.Net.METHOD_GET);this.setResponseType(vResponseType||qx.constant.Mime.TEXT);this.setProhibitCaching(true);this.setRequestHeader("X-Requested-With","qooxdoo");this.setRequestHeader("X-Qooxdoo-Version",qx.core.Version.toString());this._seqNum=++qx.io.remote.RemoteRequest._seqNum});qx.OO.addProperty({name:"url",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"method",type:qx.constant.Type.STRING,possibleValues:[qx.constant.Net.METHOD_GET,qx.constant.Net.METHOD_POST,qx.constant.Net.METHOD_PUT,qx.constant.Net.METHOD_HEAD,qx.constant.Net.METHOD_DELETE]});qx.OO.addProperty({name:"asynchronous",type:qx.constant.Type.BOOLEAN,defaultValue:true,getAlias:"isAsynchronous"});qx.OO.addProperty({name:"data",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"username",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"password",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"state",type:qx.constant.Type.STRING,possibleValues:[qx.constant.Net.STATE_CONFIGURED,qx.constant.Net.STATE_QUEUED,qx.constant.Net.STATE_SENDING,qx.constant.Net.STATE_RECEIVING,qx.constant.Net.STATE_COMPLETED,qx.constant.Net.STATE_ABORTED,qx.constant.Net.STATE_TIMEOUT,qx.constant.Net.STATE_FAILED],defaultValue:qx.constant.Net.STATE_CONFIGURED});qx.OO.addProperty({name:"responseType",type:qx.constant.Type.STRING,possibleValues:[qx.constant.Mime.TEXT,qx.constant.Mime.JAVASCRIPT,qx.constant.Mime.JSON,qx.constant.Mime.XML,qx.constant.Mime.HTML]});qx.OO.addProperty({name:"timeout",type:qx.constant.Type.NUMBER});qx.OO.addProperty({name:"prohibitCaching",type:qx.constant.Type.BOOLEAN});qx.OO.addProperty({name:"crossDomain",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.OO.addProperty({name:"transport",type:qx.constant.Type.OBJECT,instance:"qx.io.remote.RemoteExchange"});qx.OO.addProperty({name:"useBasicHttpAuth",type:qx.constant.Type.BOOLEAN});qx.Proto.send=function(){qx.io.remote.RemoteRequestQueue.getInstance().add(this)};qx.Proto.abort=function(){qx.io.remote.RemoteRequestQueue.getInstance().abort(this)};qx.Proto.reset=function(){switch(this.getState()){case qx.constant.Net.STATE_SENDING:case qx.constant.Net.STATE_RECEIVING:this.error("Aborting already sent request!");case qx.constant.Net.STATE_QUEUED:this.abort();break}};qx.Proto.isConfigured=function(){return this.getState()===qx.constant.Net.STATE_CONFIGURED};qx.Proto.isQueued=function(){return this.getState()===qx.constant.Net.STATE_QUEUED};qx.Proto.isSending=function(){return this.getState()===qx.constant.Net.STATE_SENDING};qx.Proto.isReceiving=function(){return this.getState()===qx.constant.Net.STATE_RECEIVING};qx.Proto.isCompleted=function(){return this.getState()===qx.constant.Net.STATE_COMPLETED};qx.Proto.isAborted=function(){return this.getState()===qx.constant.Net.STATE_ABORTED};qx.Proto.isTimeout=function(){return this.getState()===qx.constant.Net.STATE_TIMEOUT};qx.Proto.isFailed=function(){return this.getState()===qx.constant.Net.STATE_FAILED};qx.Proto._onqueued=function(e){this.setState(qx.constant.Net.STATE_QUEUED);this.dispatchEvent(e)};qx.Proto._onsending=function(e){this.setState(qx.constant.Net.STATE_SENDING);this.dispatchEvent(e)};qx.Proto._onreceiving=function(e){this.setState(qx.constant.Net.STATE_RECEIVING);this.dispatchEvent(e)};qx.Proto._oncompleted=function(e){this.setState(qx.constant.Net.STATE_COMPLETED);this.dispatchEvent(e);this.dispose()};qx.Proto._onaborted=function(e){this.setState(qx.constant.Net.STATE_ABORTED);this.dispatchEvent(e);this.dispose()};qx.Proto._ontimeout=function(e){this.setState(qx.constant.Net.STATE_TIMEOUT);this.dispatchEvent(e);this.dispose()};qx.Proto._onfailed=function(e){this.setState(qx.constant.Net.STATE_FAILED);this.dispatchEvent(e);this.dispose()};qx.Proto._modifyState=function(propValue,propOldValue,propData){if(qx.Settings.getValueOfClass("qx.io.remote.RemoteExchange","enableDebug")){this.debug("State: "+propValue)};return true};qx.Proto._modifyProhibitCaching=function(propValue,propOldValue,propData){propValue?this.setParameter("nocache",new Date().valueOf()):this.removeParameter("nocache");return true};qx.Proto._modifyMethod=function(propValue,propOldValue,propData){if(propValue===qx.constant.Net.METHOD_POST){this.setRequestHeader("Content-Type","application/x-www-form-urlencoded")};return true};qx.Proto._modifyResponseType=function(propValue,propOldValue,propData){this.setRequestHeader("X-Qooxdoo-Response-Type",propValue);return true};qx.Proto.setRequestHeader=function(vId,vValue){this._requestHeaders[vId]=vValue};qx.Proto.removeRequestHeader=function(vId){delete this._requestHeaders[vId]};qx.Proto.getRequestHeader=function(vId){return this._requestHeaders[vId]||null};qx.Proto.getRequestHeaders=function(){return this._requestHeaders};qx.Proto.setParameter=function(vId,vValue){this._parameters[vId]=vValue};qx.Proto.removeParameter=function(vId){delete this._parameters[vId]};qx.Proto.getParameter=function(vId){return this._parameters[vId]||null};qx.Proto.getParameters=function(){return this._parameters};qx.io.remote.RemoteRequest._seqNum=0;qx.Proto.getSequenceNumber=function(){return this._seqNum};qx.Proto.dispose=function(){if(this.getDisposed()){return};this._requestHeaders=null;this._parameters=null;this.setTransport(null);return qx.core.Target.prototype.dispose.call(this)};qx.OO.defineClass("qx.io.remote.RemoteRequestQueue",qx.core.Target,function(){qx.core.Target.call(this);this._queue=[];this._active=[];this._totalRequests=0;this._timer=new qx.client.Timer(50);this._timer.addEventListener(qx.constant.Event.INTERVAL,this._oninterval,this)});qx.OO.addProperty({name:"maxTotalRequests",type:qx.constant.Type.NUMBER});qx.OO.addProperty({name:"maxConcurrentRequests",type:qx.constant.Type.NUMBER,defaultValue:3});qx.OO.addProperty({name:"defaultTimeout",type:qx.constant.Type.NUMBER,defaultValue:5000});qx.Proto._debug=function(){var vText=this._active.length+"/"+(this._queue.length+this._active.length);if(qx.Settings.getValueOfClass("qx.io.remote.RemoteExchange","enableDebug")){this.debug("Progress: "+vText);window.status="Request-Queue Progress: "+vText}};qx.Proto._check=function(){this._debug();if(this._active.length==0&&this._queue.length==0){this._timer.stop()};if(!this.getEnabled()){return};if(this._active.length>=this.getMaxConcurrentRequests()||this._queue.length==0){return};if(this.getMaxTotalRequests()!=null&&this._totalRequests>=this.getMaxTotalRequests()){return};var vRequest=this._queue.shift();var vTransport=new qx.io.remote.RemoteExchange(vRequest);this._totalRequests++;this._active.push(vTransport);this._debug();vTransport.addEventListener(qx.constant.Event.SENDING,vRequest._onsending,vRequest);vTransport.addEventListener(qx.constant.Event.RECEIVING,vRequest._onreceiving,vRequest);vTransport.addEventListener(qx.constant.Event.COMPLETED,vRequest._oncompleted,vRequest);vTransport.addEventListener(qx.constant.Event.ABORTED,vRequest._onaborted,vRequest);vTransport.addEventListener(qx.constant.Event.TIMEOUT,vRequest._ontimeout,vRequest);vTransport.addEventListener(qx.constant.Event.FAILED,vRequest._onfailed,vRequest);vTransport.addEventListener(qx.constant.Event.SENDING,this._onsending,this);vTransport.addEventListener(qx.constant.Event.COMPLETED,this._oncompleted,this);vTransport.addEventListener(qx.constant.Event.ABORTED,this._oncompleted,this);vTransport.addEventListener(qx.constant.Event.TIMEOUT,this._oncompleted,this);vTransport.addEventListener(qx.constant.Event.FAILED,this._oncompleted,this);vTransport._start=(new Date).valueOf();vTransport.send();if(this._queue.length>0){this._check()}};qx.Proto._remove=function(vTransport){var vRequest=vTransport.getRequest();vTransport.removeEventListener(qx.constant.Event.SENDING,vRequest._onsending,vRequest);vTransport.removeEventListener(qx.constant.Event.RECEIVING,vRequest._onreceiving,vRequest);vTransport.removeEventListener(qx.constant.Event.COMPLETED,vRequest._oncompleted,vRequest);vTransport.removeEventListener(qx.constant.Event.ABORTED,vRequest._onaborted,vRequest);vTransport.removeEventListener(qx.constant.Event.TIMEOUT,vRequest._ontimeout,vRequest);vTransport.removeEventListener(qx.constant.Event.FAILED,vRequest._onfailed,vRequest);vTransport.removeEventListener(qx.constant.Event.SENDING,this._onsending,this);vTransport.removeEventListener(qx.constant.Event.COMPLETED,this._oncompleted,this);vTransport.removeEventListener(qx.constant.Event.ABORTED,this._oncompleted,this);vTransport.removeEventListener(qx.constant.Event.TIMEOUT,this._oncompleted,this);vTransport.removeEventListener(qx.constant.Event.FAILED,this._oncompleted,this);qx.lang.Array.remove(this._active,vTransport);vTransport.dispose();this._check()};qx.Proto._activeCount=0;qx.Proto._onsending=function(e){if(qx.Settings.getValueOfClass("qx.io.remote.RemoteExchange","enableDebug")){this._activeCount++;e.getTarget()._counted=true;this.debug("ActiveCount: "+this._activeCount)}};qx.Proto._oncompleted=function(e){if(qx.Settings.getValueOfClass("qx.io.remote.RemoteExchange","enableDebug")){if(e.getTarget()._counted){this._activeCount--;this.debug("ActiveCount: "+this._activeCount)}};this._remove(e.getTarget())};qx.Proto._oninterval=function(e){var vActive=this._active;if(vActive.length==0){return};var vCurrent=(new Date).valueOf();var vTransport;var vRequest;var vDefaultTimeout=this.getDefaultTimeout();var vTimeout;var vTime;for(var i=vActive.length-1;i>=0;i--){vTransport=vActive[i];vRequest=vTransport.getRequest();if(vRequest.isAsynchronous()){vTimeout=vRequest.getTimeout();if(vTimeout==0){continue};if(vTimeout==null){vTimeout=vDefaultTimeout};vTime=vCurrent-vTransport._start;if(vTime>vTimeout){this.warn("Timeout: transport "+vTransport.toHashCode());this.warn(vTime+"ms > "+vTimeout+"ms");vTransport.timeout()}}}};qx.Proto._modifyEnabled=function(propValue,propOldValue,propData){if(propValue){this._check()};this._timer.setEnabled(propValue);return true};qx.Proto.add=function(vRequest){vRequest.setState(qx.constant.Event.QUEUED);this._queue.push(vRequest);this._check();if(this.getEnabled()){this._timer.start()}};qx.Proto.abort=function(vRequest){var vTransport=vRequest.getTransport();if(vTransport){vTransport.abort()}else if(qx.lang.Array.contains(this._queue,vRequest)){qx.lang.Array.remove(this._queue,vRequest)}};qx.Proto.dispose=function(){if(this.getDisposed()){return true};if(this._active){for(var i=0,a=this._active,l=a.length;i<l;i++){this._remove(a[i])};this._active=null};if(this._timer){this._timer.removeEventListener(qx.constant.Event.INTERVAL,this._oninterval,this);this._timer=null};this._queue=null;return qx.core.Target.prototype.dispose.call(this)};qx.Class.getInstance=qx.util.Return.returnInstance;qx.OO.defineClass("qx.io.remote.RemoteResponse",qx.core.Target,function(){qx.core.Target.call(this)});qx.OO.addProperty({name:"state",type:qx.constant.Type.NUMBER});qx.OO.addProperty({name:"statusCode",type:qx.constant.Type.NUMBER});qx.OO.addProperty({name:"content"});qx.OO.addProperty({name:"responseHeaders",type:qx.constant.Type.OBJECT});qx.Proto.getResponseHeader=function(vHeader){var vAll=this.getResponseHeaders();if(vAll){return vAll[vHeader]||null};return null};qx.Proto.dispose=function(){if(this.getDisposed()){return};return qx.core.Target.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.layout.FlowLayout",qx.ui.core.Parent,function(){qx.ui.core.Parent.call(this)});qx.OO.addProperty({name:"horizontalSpacing",type:qx.constant.Type.NUMBER,defaultValue:0,addToQueueRuntime:true,impl:"layout"});qx.OO.addProperty({name:"verticalSpacing",type:qx.constant.Type.NUMBER,defaultValue:0,addToQueueRuntime:true,impl:"layout"});qx.OO.addProperty({name:"horizontalChildrenAlign",type:qx.constant.Type.STRING,defaultValue:"left",possibleValues:["left","right"],addToQueueRuntime:true});qx.OO.addProperty({name:"verticalChildrenAlign",type:qx.constant.Type.STRING,defaultValue:"top",possibleValues:["top","bottom"],addToQueueRuntime:true});qx.OO.addProperty({name:"reverseChildrenOrder",type:qx.constant.Type.BOOLEAN,defaultValue:false,addToQueueRuntime:true,impl:"layout"});qx.Proto._createLayoutImpl=function(){return new qx.renderer.layout.FlowLayoutImpl(this)};qx.Proto._changeInnerWidth=function(vNew,vOld){qx.ui.core.Parent.prototype._changeInnerWidth.call(this,vNew,vOld);this._invalidatePreferredInnerHeight()};qx.Proto._modifyLayout=function(propValue,propOldValue,propData){this._invalidatePreferredInnerDimensions();return true};qx.OO.defineClass("qx.renderer.layout.FlowLayoutImpl",qx.renderer.layout.LayoutImpl,function(vWidget){qx.renderer.layout.LayoutImpl.call(this,vWidget)});qx.renderer.layout.FlowLayoutImpl.STR_FIRST="getFirstVisibleChild";qx.renderer.layout.FlowLayoutImpl.STR_LAST="getLastVisibleChild";qx.renderer.layout.FlowLayoutImpl.STR_NEXT="getNextSibling";qx.renderer.layout.FlowLayoutImpl.STR_PREVIOUS="getPreviousSibling";qx.Proto.computeChildrenNeededWidth=function(){var w=this.getWidget();return qx.renderer.layout.LayoutImpl.prototype.computeChildrenNeededWidth_sum.call(this)+((w.getVisibleChildrenLength()-1)*w.getHorizontalSpacing())};qx.Proto.computeChildrenNeededHeight=function(){var vWidget=this.getWidget();var vInnerWidth=vWidget.getInnerWidth();var vHorizontalSpacing=vWidget.getHorizontalSpacing();var vVerticalSpacing=vWidget.getVerticalSpacing();var vReversed=vWidget.getReverseChildrenOrder();var vRowWidth=0;var vRowHeight=0;var vRowHeightSum=0;for(var i=0,ch=vWidget.getVisibleChildren(),chl=ch.length,chc;i<chl;i++){chc=vReversed?ch[chl-1-i]:ch[i];vRowWidth+=chc.getNeededWidth();if(vRowWidth>vInnerWidth){vRowHeightSum+=vRowHeight+vVerticalSpacing;vRowWidth=chc.getNeededWidth();vRowHeight=chc.getNeededHeight()}else{vRowHeight=Math.max(vRowHeight,chc.getNeededHeight())};vRowWidth+=vHorizontalSpacing};return vRowHeightSum+vRowHeight};qx.Proto.updateSelfOnChildOuterWidthChange=function(vChild){this.getWidget()._invalidatePreferredInnerHeight()};qx.Proto.updateChildOnInnerWidthChange=function(vChild){vChild._recomputePercentX();vChild.addToLayoutChanges(qx.ui.core.Widget.JOB_LOCATION);return true};qx.Proto.updateChildOnInnerHeightChange=function(vChild){vChild._recomputePercentY();vChild.addToLayoutChanges(qx.ui.core.Widget.JOB_LOCATION);return true};qx.Proto.updateChildrenOnJobQueueFlush=function(vQueue){if(vQueue.horizontalSpacing||vQueue.verticalSpacing||vQueue.reverseChildrenOrder||vQueue.horizontalChildrenAlign||vQueue.verticalChildrenAlign){this.getWidget()._addChildrenToLayoutQueue(qx.ui.core.Widget.JOB_LOCATION)}};qx.Proto.updateChildrenOnRemoveChild=function(vChild,vIndex){var w=this.getWidget(),ch=w.getVisibleChildren(),chl=ch.length,chc,i=-1;if(w.getReverseChildrenOrder()){while((chc=ch[++i])&&i<vIndex){chc.addToLayoutChanges(qx.ui.core.Widget.JOB_LOCATION)}}else{i+=vIndex;while(chc=ch[++i]){chc.addToLayoutChanges(qx.ui.core.Widget.JOB_LOCATION)}}};qx.Proto.updateChildrenOnMoveChild=function(vChild,vIndex,vOldIndex){for(var i=Math.min(vIndex,vOldIndex),ch=this.getWidget().getVisibleChildren(),l=ch.length;i<l;i++){ch[i].addToLayoutChanges(qx.ui.core.Widget.JOB_LOCATION)}};qx.Proto.flushChildrenQueue=function(vChildrenQueue){var w=this.getWidget(),ch=w.getVisibleChildren(),chl=ch.length,chc,chh;if(w.getReverseChildrenOrder()){var i=chl,changed=false;while(chc=ch[--i]){chh=chc.toHashCode();if(changed||vChildrenQueue[chh]){w._layoutChild(chc);changed=true}}}else{var i=-1,changed=false;while(chc=ch[++i]){chh=chc.toHashCode();if(changed||vChildrenQueue[chh]){w._layoutChild(chc);changed=true}}}};qx.Proto.layoutChild=function(vChild,vJobs){this.layoutChild_sizeX_essentialWrapper(vChild,vJobs);this.layoutChild_sizeY_essentialWrapper(vChild,vJobs);this.layoutChild_sizeLimitX(vChild,vJobs);this.layoutChild_sizeLimitY(vChild,vJobs);this.layoutChild_marginX(vChild,vJobs);this.layoutChild_marginY(vChild,vJobs);this.layoutChild_location(vChild,vJobs)};if(qx.sys.Client.getInstance().isMshtml()||qx.sys.Client.getInstance().isOpera()){qx.Proto.layoutChild_sizeX=function(vChild,vJobs){if(vJobs.initial||vJobs.width||vJobs.minWidth||vJobs.maxWidth){vChild._computedWidthTypeNull&&vChild._computedMinWidthTypeNull&&vChild._computedMaxWidthTypeNull?vChild._resetRuntimeWidth():vChild._applyRuntimeWidth(vChild.getBoxWidth())}};qx.Proto.layoutChild_sizeY=function(vChild,vJobs){if(vJobs.initial||vJobs.height||vJobs.minHeight||vJobs.maxHeight){vChild._computedHeightTypeNull&&vChild._computedMinHeightTypeNull&&vChild._computedMaxHeightTypeNull?vChild._resetRuntimeHeight():vChild._applyRuntimeHeight(vChild.getBoxHeight())}}}else{qx.Proto.layoutChild_sizeX=function(vChild,vJobs){if(vJobs.initial||vJobs.width){vChild._computedWidthTypeNull?vChild._resetRuntimeWidth():vChild._applyRuntimeWidth(vChild.getWidthValue())}};qx.Proto.layoutChild_sizeY=function(vChild,vJobs){if(vJobs.initial||vJobs.height){vChild._computedHeightTypeNull?vChild._resetRuntimeHeight():vChild._applyRuntimeHeight(vChild.getHeightValue())}}};qx.Proto.layoutChild_location=function(vChild,vJobs){var vWidget=this.getWidget();var vReverse=vWidget.getReverseChildrenOrder();var vMethodBegin=vReverse?qx.renderer.layout.FlowLayoutImpl.STR_LAST:qx.renderer.layout.FlowLayoutImpl.STR_FIRST;var vMethodContinue=vReverse?qx.renderer.layout.FlowLayoutImpl.STR_NEXT:qx.renderer.layout.FlowLayoutImpl.STR_PREVIOUS;if(vChild==vWidget[vMethodBegin]()){vChild._cachedLocationHorizontal=vChild._cachedLocationVertical=vChild._cachedRow=0}else{var vTempChild=vChild[vMethodContinue]();vChild._cachedLocationHorizontal=vTempChild._cachedLocationHorizontal+vTempChild.getOuterWidth()+vWidget.getHorizontalSpacing();vChild._cachedLocationVertical=vTempChild._cachedLocationVertical;vChild._cachedRow=vTempChild._cachedRow;if((vChild._cachedLocationHorizontal+vChild.getOuterWidth())>vWidget.getInnerWidth()){vRowMax=vTempChild.getOuterHeight();while((vTempChild=vTempChild[vMethodContinue]())&&vTempChild._cachedRow==vChild._cachedRow){vRowMax=Math.max(vRowMax,vTempChild.getOuterHeight())};vChild._cachedLocationHorizontal=0;vChild._cachedLocationVertical+=vWidget.getVerticalSpacing()+vRowMax;vChild._cachedRow++}};if(vWidget.getHorizontalChildrenAlign()==qx.constant.Layout.ALIGN_RIGHT){vChild._resetRuntimeLeft();vChild._applyRuntimeRight(vWidget.getPaddingRight()+vChild._cachedLocationHorizontal)}else{vChild._resetRuntimeRight();vChild._applyRuntimeLeft(vWidget.getPaddingLeft()+vChild._cachedLocationHorizontal)};if(vWidget.getVerticalChildrenAlign()==qx.constant.Layout.ALIGN_BOTTOM){vChild._resetRuntimeTop();vChild._applyRuntimeBottom(vWidget.getPaddingBottom()+vChild._cachedLocationVertical)}else{vChild._resetRuntimeBottom();vChild._applyRuntimeTop(vWidget.getPaddingTop()+vChild._cachedLocationVertical)}};qx.OO.defineClass("qx.ui.popup.Popup",qx.ui.layout.CanvasLayout,function(){qx.ui.layout.CanvasLayout.call(this);this.setZIndex(this._minZIndex)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"popup"});qx.OO.addProperty({name:"autoHide",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.OO.changeProperty({name:"display",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.OO.addProperty({name:"centered",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.OO.addProperty({name:"restrictToPageOnOpen",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.Proto._showTimeStamp=(new Date(0)).valueOf();qx.Proto._hideTimeStamp=(new Date(0)).valueOf();qx.Settings.setDefault("restrictToPageLeft","5");qx.Settings.setDefault("restrictToPageRight","5");qx.Settings.setDefault("restrictToPageTop","5");qx.Settings.setDefault("restrictToPageBottom","5");qx.Proto._beforeAppear=function(){qx.ui.layout.CanvasLayout.prototype._beforeAppear.call(this);qx.manager.object.PopupManager.getInstance().add(this);qx.manager.object.PopupManager.getInstance().update(this);this._showTimeStamp=(new Date).valueOf();this.bringToFront()};qx.Proto._beforeDisappear=function(){qx.ui.layout.CanvasLayout.prototype._beforeDisappear.call(this);qx.manager.object.PopupManager.getInstance().remove(this);this._hideTimeStamp=(new Date).valueOf()};qx.Proto._afterAppear=function(){qx.ui.layout.CanvasLayout.prototype._afterAppear.call(this);if(this.getRestrictToPageOnOpen()){var doc=qx.ui.core.ClientDocument.getInstance();var docWidth=doc.getClientWidth();var docHeight=doc.getClientHeight();var restrictToPageLeft=parseInt(qx.Settings.getValueOfClass("qx.ui.popup.Popup","restrictToPageLeft"));var restrictToPageRight=parseInt(qx.Settings.getValueOfClass("qx.ui.popup.Popup","restrictToPageRight"));var restrictToPageTop=parseInt(qx.Settings.getValueOfClass("qx.ui.popup.Popup","restrictToPageTop"));var restrictToPageBottom=parseInt(qx.Settings.getValueOfClass("qx.ui.popup.Popup","restrictToPageBottom"));var left=this.getLeft();var top=this.getTop();var width=this.getBoxWidth();var height=this.getBoxHeight();var oldLeft=left;var oldTop=top;if(left+width>docWidth-restrictToPageRight){left=docWidth-restrictToPageRight-width};if(top+height>docHeight-restrictToPageBottom){top=docHeight-restrictToPageBottom-height};if(left<restrictToPageLeft){left=restrictToPageLeft};if(top<restrictToPageTop){top=restrictToPageTop};if(left!=oldLeft||top!=oldTop){var self=this;self.getElement().style.visibility="hidden";window.setTimeout(function(){self.getElement().style.visibility="";self.setLeft(left);self.setTop(top);qx.ui.core.Widget.flushGlobalQueues()},0)}}};qx.Proto._makeActive=function(){this.getFocusRoot().setActiveChild(this)};qx.Proto._makeInactive=function(){var vRoot=this.getFocusRoot();var vCurrent=vRoot.getActiveChild();if(vCurrent==this){vRoot.setActiveChild(vRoot)}};qx.Proto.isFocusable=function(){return false};qx.Proto._minZIndex=1e6;qx.Proto.bringToFront=function(){this.forceZIndex(Infinity);this._sendTo()};qx.Proto.sendToBack=function(){this.forceZIndex(-Infinity);this._sendTo()};qx.Proto._sendTo=function(){var vPopups=qx.lang.Object.getValues(qx.manager.object.PopupManager.getInstance().getAll());var vMenus=qx.lang.Object.getValues(qx.manager.object.MenuManager.getInstance().getAll());var vAll=vPopups.concat(vMenus).sort(qx.util.Compare.byZIndex);var vLength=vAll.length;var vIndex=this._minZIndex;for(var i=0;i<vLength;i++){vAll[i].setZIndex(vIndex++)}};qx.Proto.getShowTimeStamp=function(){return this._showTimeStamp};qx.Proto.getHideTimeStamp=function(){return this._hideTimeStamp};qx.Proto.positionRelativeTo=function(el,offsetX,offsetY){if(el instanceof qx.ui.core.Widget){el=el.getElement()};if(el){var gecko=qx.sys.Client.getInstance().isGecko();var loc=qx.dom.DomLocation;this.setLocation(loc.getClientAreaLeft(el)-(gecko?qx.dom.DomStyle.getBorderLeft(el):0)+(offsetX||0),loc.getClientAreaTop(el)-(gecko?qx.dom.DomStyle.getBorderTop(el):0)+(offsetY||0))}else{this.warn('Missing reference element')}};qx.Proto.centerToBrowser=function(){var d=qx.ui.core.ClientDocument.getInstance();var left=(d.getClientWidth()-this.getBoxWidth())/2;var top=(d.getClientHeight()-this.getBoxHeight())/2;this.setLeft(left<0?0:left);this.setTop(top<0?0:top)};qx.Proto.dispose=function(){if(this.getDisposed()){return};this._showTimeStamp=null;this._hideTimeStamp=null;return qx.ui.layout.CanvasLayout.prototype.dispose.call(this)};qx.OO.defineClass("qx.manager.object.PopupManager",qx.manager.object.ObjectManager,function(){qx.manager.object.ObjectManager.call(this)});qx.Proto.update=function(vTarget){if(!(vTarget instanceof qx.ui.core.Widget)){vTarget=null};var vPopup,vHashCode;var vAll=this.getAll();for(vHashCode in vAll){vPopup=vAll[vHashCode];if(!vPopup.getAutoHide()||vTarget==vPopup||vPopup.contains(vTarget)){continue};vPopup.hide()}};qx.Class.getInstance=qx.util.Return.returnInstance;qx.OO.defineClass("qx.util.Compare");qx.util.Compare.byString=function(a,b){return a==b?0:a>b?1:-1};qx.util.Compare.byStringCaseInsensitive=function(a,b){return qx.util.Compare.byString(a.toLowerCase(),b.toLowerCase())};qx.util.Compare.byStringUmlautsShort=function(a,b){return qx.util.Compare.byString(qx.util.Normalization.umlautsShort(a),qx.util.Normalization.umlautsShort(b))};qx.util.Compare.byStringUmlautsShortCaseInsensitive=function(a,b){return qx.util.Compare.byString(qx.util.Normalization.umlautsShort(a).toLowerCase(),qx.util.Normalization.umlautsShort(b).toLowerCase())};qx.util.Compare.byStringUmlautsLong=function(a,b){return qx.util.Compare.byString(qx.util.Normalization.umlautsLong(a),qx.util.Normalization.umlautsLong(b))};qx.util.Compare.byStringUmlautsLongCaseInsensitive=function(a,b){return qx.util.Compare.byString(qx.util.Normalization.umlautsLong(a).toLowerCase(),qx.util.Normalization.umlautsLong(b).toLowerCase())};qx.util.Compare.byFloat=function(a,b){return a-b};qx.util.Compare.byInteger=qx.util.Compare.byNumber=qx.util.Compare.byFloat;qx.util.Compare.byIntegerString=function(a,b){return parseInt(a)-parseInt(b)};qx.util.Compare.byFloatString=function(a,b){return parseFloat(a)-parseFloat(b)};qx.util.Compare.byNumberString=qx.util.Compare.byFloatString;qx.util.Compare.byIPv4=function(a,b){var ipa=a.split(qx.constant.Core.DOT,4);var ipb=b.split(qx.constant.Core.DOT,4);for(var i=0;i<3;i++){a=parseInt(ipa[i]);b=parseInt(ipb[i]);if(a!=b){return a-b}};return parseInt(ipa[3])-parseInt(ipb[3])};qx.util.Compare.byZIndex=function(a,b){return a.getZIndex()-b.getZIndex()};qx.OO.defineClass("qx.util.Normalization");qx.util.Normalization._umlautsRegExp=/[\xE4\xF6\xFC\xDF\xC4\xD6\xDC]/g;qx.util.Normalization._umlautsShortData={"\xC4":"A","\xD6":"O","\xDC":"U","\xE4":"a","\xF6":"o","\xFC":"u","\xDF":"s"};qx.util.Normalization._umlautsShort=function(vChar){return qx.util.Normalization._umlautsShortData[vChar]};qx.util.Normalization.umlautsShort=function(vString){return vString.replace(qx.util.Normalization._umlautsRegExp,qx.util.Normalization._umlautsShort)};qx.util.Normalization._umlautsLongData={"\xC4":"Ae","\xD6":"Oe","\xDC":"Ue","\xE4":"ae","\xF6":"oe","\xFC":"ue","\xDF":"ss"};qx.util.Normalization._umlautsLong=function(vChar){return qx.util.Normalization._umlautsLongData[vChar]};qx.util.Normalization.umlautsLong=function(vString){return vString.replace(qx.util.Normalization._umlautsRegExp,qx.util.Normalization._umlautsLong)};qx.OO.defineClass("qx.dev.log.AlertAppender",qx.dev.log.Appender,function(){qx.dev.log.Appender.call(this)});qx.OO.changeProperty({name:"useLongFormat",type:qx.constant.Type.BOOLEAN,defaultValue:false,allowNull:false});qx.Proto.appendLogEvent=function(evt){var text=evt.logger.getName();if(evt.instanceId!=null){text+=" ("+evt.instanceId+")"};alert("\n"+text+"\n"+this.formatLogEvent(evt))};qx.Proto.dispose=function(){if(this.getDisposed()){return true};return qx.dev.log.Appender.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.form.Button",qx.ui.basic.Atom,function(vText,vIcon,vIconWidth,vIconHeight,vFlash){qx.ui.basic.Atom.call(this,vText,vIcon,vIconWidth,vIconHeight,vFlash);this.setTabIndex(1);this.addEventListener(qx.constant.Event.MOUSEOVER,this._onmouseover);this.addEventListener(qx.constant.Event.MOUSEOUT,this._onmouseout);this.addEventListener(qx.constant.Event.MOUSEDOWN,this._onmousedown);this.addEventListener(qx.constant.Event.MOUSEUP,this._onmouseup);this.addEventListener(qx.constant.Event.KEYDOWN,this._onkeydown);this.addEventListener(qx.constant.Event.KEYUP,this._onkeyup)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"button"});qx.Class.STATE_CHECKED="checked";qx.Class.STATE_PRESSED="pressed";qx.Class.STATE_ABANDONED="abandoned";qx.Proto._onmouseover=function(e){if(e.getTarget()!=this){return};if(this.hasState(qx.ui.form.Button.STATE_ABANDONED)){this.removeState(qx.ui.form.Button.STATE_ABANDONED);this.addState(qx.ui.form.Button.STATE_PRESSED)};this.addState(qx.ui.core.Widget.STATE_OVER)};qx.Proto._onmouseout=function(e){if(e.getTarget()!=this){return};this.removeState(qx.ui.core.Widget.STATE_OVER);if(this.hasState(qx.ui.form.Button.STATE_PRESSED)){this.setCapture(true);this.removeState(qx.ui.form.Button.STATE_PRESSED);this.addState(qx.ui.form.Button.STATE_ABANDONED)}};qx.Proto._onmousedown=function(e){if(e.getTarget()!=this||!e.isLeftButtonPressed()){return};this.removeState(qx.ui.form.Button.STATE_ABANDONED);this.addState(qx.ui.form.Button.STATE_PRESSED)};qx.Proto._onmouseup=function(e){this.setCapture(false);if(!this.hasState(qx.ui.form.Button.STATE_ABANDONED)){this.addState(qx.ui.core.Widget.STATE_OVER);if(this.hasState(qx.ui.form.Button.STATE_PRESSED)){this.execute()}};this.removeState(qx.ui.form.Button.STATE_ABANDONED);this.removeState(qx.ui.form.Button.STATE_PRESSED)};qx.Proto._onkeydown=function(e){switch(e.getKeyCode()){case qx.event.type.KeyEvent.keys.enter:case qx.event.type.KeyEvent.keys.space:this.removeState(qx.ui.form.Button.STATE_ABANDONED);this.addState(qx.ui.form.Button.STATE_PRESSED)}};qx.Proto._onkeyup=function(e){switch(e.getKeyCode()){case qx.event.type.KeyEvent.keys.enter:case qx.event.type.KeyEvent.keys.space:if(this.hasState(qx.ui.form.Button.STATE_PRESSED)){this.removeState(qx.ui.form.Button.STATE_ABANDONED);this.removeState(qx.ui.form.Button.STATE_PRESSED);this.execute()}}};qx.Proto.dispose=function(){if(this.getDisposed()){return};this.removeEventListener(qx.constant.Event.MOUSEOVER,this._onmouseover,this);this.removeEventListener(qx.constant.Event.MOUSEOUT,this._onmouseout,this);this.removeEventListener(qx.constant.Event.MOUSEDOWN,this._onmousedown,this);this.removeEventListener(qx.constant.Event.MOUSEUP,this._onmouseup,this);this.removeEventListener(qx.constant.Event.KEYDOWN,this._onkeydown,this);this.removeEventListener(qx.constant.Event.KEYUP,this._onkeyup,this);return qx.ui.basic.Atom.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.toolbar.ToolBarButton",qx.ui.form.Button,function(vText,vIcon,vIconWidth,vIconHeight,vFlash){qx.ui.form.Button.call(this,vText,vIcon,vIconWidth,vIconHeight,vFlash);this.setTabIndex(-1)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"toolbar-button"});qx.Proto._onkeydown=qx.util.Return.returnTrue;qx.Proto._onkeyup=qx.util.Return.returnTrue;qx.OO.defineClass("qx.ui.toolbar.ToolBarCheckBox",qx.ui.toolbar.ToolBarButton,function(vText,vIcon,vChecked){qx.ui.toolbar.ToolBarButton.call(this,vText,vIcon);if(qx.util.Validation.isValid(vChecked)){this.setChecked(vChecked)}});qx.OO.addProperty({name:"checked",type:qx.constant.Type.BOOLEAN,defaultValue:false,getAlias:"isChecked"});qx.Proto._modifyChecked=function(propValue,propOldValue,propData){propValue?this.addState(qx.ui.form.Button.STATE_CHECKED):this.removeState(qx.ui.form.Button.STATE_CHECKED);return true};qx.Proto._onmouseup=function(e){this.setCapture(false);if(!this.hasState(qx.ui.form.Button.STATE_ABANDONED)){this.addState(qx.ui.core.Widget.STATE_OVER);this.setChecked(!this.getChecked());this.execute()};this.removeState(qx.ui.form.Button.STATE_ABANDONED);this.removeState(qx.ui.form.Button.STATE_PRESSED);e.stopPropagation()};qx.OO.defineClass("qx.ui.layout.HorizontalBoxLayout",qx.ui.layout.BoxLayout,function(){qx.ui.layout.BoxLayout.call(this,qx.constant.Layout.ORIENTATION_HORIZONTAL)});qx.OO.defineClass("qx.ui.table.TablePaneHeader",qx.ui.layout.HorizontalBoxLayout,function(paneScroller){qx.ui.layout.HorizontalBoxLayout.call(this);this._paneScroller=paneScroller});qx.Proto.getPaneScroller=function(){return this._paneScroller};qx.Proto.getTable=function(){return this._paneScroller.getTable()};qx.Proto._onColWidthChanged=function(evt){var data=evt.getData();this.setColumnWidth(data.col,data.newWidth)};qx.Proto._onColOrderChanged=function(evt){this._updateContent(true)};qx.Proto._onPaneModelChanged=function(evt){this._updateContent(true)};qx.Proto._onTableModelMetaDataChanged=function(evt){this._updateContent()};qx.Proto.setColumnWidth=function(col,width){var x=this.getPaneScroller().getTablePaneModel().getX(col);var children=this.getChildren();if(children[x]!=null){children[x].setWidth(width)}};qx.Proto.setMouseOverColumn=function(col){if(col!=this._lastMouseOverColumn){var paneModel=this.getPaneScroller().getTablePaneModel();var children=this.getChildren();if(this._lastMouseOverColumn!=null){var widget=children[paneModel.getX(this._lastMouseOverColumn)];if(widget!=null){widget.removeState("mouseover")}};if(col!=null){children[paneModel.getX(col)].addState("mouseover")};this._lastMouseOverColumn=col}};qx.Proto.showColumnMoveFeedback=function(col,x){var elem=this.getElement();if(this._moveFeedback==null){var xPos=this.getPaneScroller().getTablePaneModel().getX(col);var cellWidget=this.getChildren()[xPos];var tableModel=this.getTable().getTableModel();var columnModel=this.getTable().getTableColumnModel();var cellInfo={xPos:xPos,col:col,name:tableModel.getColumnName(col)};var cellRenderer=columnModel.getHeaderCellRenderer(col);this._moveFeedback=cellRenderer.createHeaderCell(cellInfo);with(this._moveFeedback){setWidth(cellWidget.getBoxWidth());setHeight(cellWidget.getBoxHeight());setZIndex(1000000);setOpacity(0.8);setTop(qx.dom.DomLocation.getClientBoxTop(elem))};this.getTopLevelWidget().add(this._moveFeedback)};this._moveFeedback.setLeft(qx.dom.DomLocation.getClientBoxLeft(elem)+x)};qx.Proto.hideColumnMoveFeedback=function(){if(this._moveFeedback!=null){this.getTopLevelWidget().remove(this._moveFeedback);this._moveFeedback.dispose();this._moveFeedback=null}};qx.Proto.isShowingColumnMoveFeedback=function(){return this._moveFeedback!=null};qx.Proto.calculateHeaderHeight=function(){return 16;this._updateContent();var maxHeight=0;var children=this.getChildren();for(var i=0;i<children.length;i++){var height=children[i].getPreferredBoxHeight();maxHeight=Math.max(height,maxHeight)};return maxHeight};qx.Proto._updateContent=function(completeUpdate){var tableModel=this.getTable().getTableModel();var columnModel=this.getTable().getTableColumnModel();var paneModel=this.getPaneScroller().getTablePaneModel();var children=this.getChildren();var oldColCount=children.length;var colCount=paneModel.getColumnCount();var sortedColum=tableModel.getSortColumnIndex();if(completeUpdate){this._cleanUpCells()};var cellInfo={};cellInfo.sortedAscending=tableModel.isSortAscending();for(var x=0;x<colCount;x++){var col=paneModel.getColumnAtX(x);var colWidth=columnModel.getColumnWidth(col);var cellRenderer=columnModel.getHeaderCellRenderer(col);cellInfo.xPos=x;cellInfo.col=col;cellInfo.name=tableModel.getColumnName(col);cellInfo.editable=tableModel.isColumnEditable(col);cellInfo.sorted=(col==sortedColum);var cachedWidget=children[x];if(cachedWidget==null){cachedWidget=cellRenderer.createHeaderCell(cellInfo);cachedWidget.set({width:colWidth,height:qx.constant.Core.HUNDREDPERCENT});this.add(cachedWidget)}else{cellRenderer.updateHeaderCell(cellInfo,cachedWidget)}}};qx.Proto._cleanUpCells=function(){var children=this.getChildren();for(var x=children.length-1;x>=0;x--){var cellWidget=children[x];this.remove(cellWidget);cellWidget.dispose()}};qx.Proto.dispose=function(){if(this.getDisposed()){return true};if(this._tableModel!=null){this._tableModel.removeEventListener(qx.ui.table.TableModel.EVENT_TYPE_META_DATA_CHANGED,this._onTableModelMetaDataChanged,this)};if(this._tableColumnModel!=null){this._tableColumnModel.removeEventListener("widthChanged",this._onWidthChanged,this);this._tableColumnModel.removeEventListener("orderChanged",this._onColOrderChanged,this)};if(this._tablePaneModel!=null){this._tablePaneModel.removeEventListener("modelChanged",this._onPaneModelChanged,this)};this._cleanUpCells();return qx.ui.layout.HorizontalBoxLayout.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.table.TableModel",qx.core.Target,function(){qx.core.Target.call(this)});qx.Proto.getRowCount=function(){throw new Error("getRowCount is abstract")};qx.Proto.getRowData=function(rowIndex){return null};qx.Proto.getColumnCount=function(){throw new Error("getColumnCount is abstract")};qx.Proto.getColumnId=function(columnIndex){throw new Error("getColumnId is abstract")};qx.Proto.getColumnIndexById=function(columnId){throw new Error("getColumnIndexById is abstract")};qx.Proto.getColumnName=function(columnIndex){throw new Error("getColumnName is abstract")};qx.Proto.isColumnEditable=function(columnIndex){return false};qx.Proto.isColumnSortable=function(columnIndex){return false};qx.Proto.sortByColumn=function(columnIndex,ascending){};qx.Proto.getSortColumnIndex=function(){return -1};qx.Proto.isSortAscending=function(){return true};qx.Proto.prefetchRows=function(firstRowIndex,lastRowIndex){};qx.Proto.getValue=function(columnIndex,rowIndex){throw new Error("getValue is abstract")};qx.Proto.getValueById=function(columnId,rowIndex){return this.getValue(this.getColumnIndexById(columnId),rowIndex)};qx.Proto.setValue=function(columnIndex,rowIndex,value){throw new Error("setValue is abstract")};qx.Proto.setValueById=function(columnId,rowIndex,value){return this.setValue(this.getColumnIndexById(columnId),rowIndex,value)};qx.Class.EVENT_TYPE_DATA_CHANGED="dataChanged";qx.Class.EVENT_TYPE_META_DATA_CHANGED="metaDataChanged";qx.OO.defineClass("qx.lang.MshtmlEmu");if(qx.sys.Client.getInstance().isGecko()){CSSStyleDeclaration.prototype.__defineGetter__("styleFloat",function(){return this.cssFloat});CSSStyleDeclaration.prototype.__defineSetter__("styleFloat",function(vValue){this.cssFloat=vValue});CSSStyleDeclaration.prototype.__defineGetter__("pixelLeft",function(){return parseInt(this.left)||0});CSSStyleDeclaration.prototype.__defineSetter__("pixelLeft",function(vValue){this.left=vValue+qx.constant.Core.PIXEL});CSSStyleDeclaration.prototype.__defineGetter__("pixelTop",function(){return parseInt(this.top)||0});CSSStyleDeclaration.prototype.__defineSetter__("pixelTop",function(vValue){this.top=vValue+qx.constant.Core.PIXEL});CSSStyleDeclaration.prototype.__defineGetter__("pixelWidth",function(){return parseInt(this.width)||0});CSSStyleDeclaration.prototype.__defineSetter__("pixelWidth",function(vValue){this.width=vValue+qx.constant.Core.PIXEL});CSSStyleDeclaration.prototype.__defineGetter__("pixelHeight",function(){return parseInt(this.height)||0});CSSStyleDeclaration.prototype.__defineSetter__("pixelHeight",function(vValue){this.height=vValue+qx.constant.Core.PIXEL});HTMLDocument.prototype.__defineGetter__("all",function(){return this.getElementsByTagName(qx.constant.Core.STAR)});HTMLDocument.prototype.createEventObject=function(){return document.createEvent("Events")};HTMLElement.prototype.__defineGetter__("all",function(){return this.getElementsByTagName(qx.constant.Core.STAR)});HTMLElement.prototype.__defineGetter__("parentElement",function(){return (this.parentNode==this.ownerDocument)?null:this.parentNode});HTMLElement.prototype.__defineGetter__("uniqueID",function(){if(!arguments.callee.count){arguments.callee.count=0};var vUniqueID="moz_id"+arguments.callee.count++;window[vUniqueID]=this;this.__defineGetter__("uniqueID",function(){return vUniqueID});return vUniqueID});HTMLElement.prototype.__defineGetter__("currentStyle",function(){return getComputedStyle(this,null)});HTMLElement.prototype.__defineGetter__("runtimeStyle",function(){return this.style});HTMLElement.prototype.__defineGetter__("innerText",function(){return this.textContent});HTMLElement.prototype.__defineSetter__("innerText",function(vValue){this.textContent=vValue});HTMLElement.prototype.attachEvent=function(vName,vHandler){this.addEventListener(vName.slice(2),vHandler,false)};HTMLElement.prototype.removeEvent=function(vName,vHandler){this.removeEventListener(vName.slice(2),vHandler,false)};HTMLElement.prototype.createEventObject=function(){return this.ownerDocument.createEventObject()};HTMLElement.prototype.fireEvent=function(vName,vEvent){if(!vEvent){vEvent=this.ownerDocument.createEventObject()};vEvent.initEvent(vName.slice(2),false,false);this.dispatchEvent(vEvent);if(typeof this[vName]===qx.constant.Type.FUNCTION){this[vName]()}else if(this.getAttribute(vName)){eval(this.getAttribute(vName))}};HTMLElement.prototype.contains=function(vElement){return Boolean(vElement==this||(vElement&&this.contains(vElement.parentElement)))};Event.prototype.__defineGetter__("srcElement",function(){return (this.target.nodeType==Node.ELEMENT_NODE)?this.target:this.target.parentNode});Event.prototype.__defineGetter__("fromElement",function(){return (this.type==qx.constant.Event.MOUSEOVER)?this.relatedTarget:(this.type==qx.constant.Event.MOUSEOUT)?this.srcElement:null});Event.prototype.__defineGetter__("toElement",function(){return (this.type==qx.constant.Event.MOUSEOUT)?this.relatedTarget:(this.type==qx.constant.Event.MOUSEOVER)?this.srcElement:null});Event.prototype.__defineSetter__("cancelBubble",function(vValue){if(vValue){this.stopPropagation()}});Event.prototype.__defineGetter__("offsetX",function(){return this.layerX});Event.prototype.__defineGetter__("offsetY",function(){return this.layerY})};qx.OO.defineClass("qx.ui.listview.ListViewContentCellHtml",qx.ui.embed.HtmlEmbed,function(vHtml){qx.ui.embed.HtmlEmbed.call(this,vHtml);this.setSelectable(false)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"list-view-content-cell-html"});qx.ui.listview.ListViewContentCellHtml.empty={html:qx.constant.Core.EMPTY};qx.OO.defineClass("qx.ui.layout.VerticalBoxLayout",qx.ui.layout.BoxLayout,function(){qx.ui.layout.BoxLayout.call(this,qx.constant.Layout.ORIENTATION_VERTICAL)});qx.OO.defineClass("qx.ui.menu.MenuLayout",qx.ui.layout.VerticalBoxLayout,function(){qx.ui.layout.VerticalBoxLayout.call(this);this.setAnonymous(true)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"menu-layout"});qx.Proto._createLayoutImpl=function(){return new qx.renderer.layout.MenuLayoutImpl(this)};qx.OO.defineClass("qx.renderer.layout.MenuLayoutImpl",qx.renderer.layout.VerticalBoxLayoutImpl,function(vWidget){qx.renderer.layout.VerticalBoxLayoutImpl.call(this,vWidget);this.setEnableFlexSupport(false)});qx.Proto.updateChildrenOnJobQueueFlush=function(vQueue){var vWidget=this.getWidget();var ch,chc;if(vQueue.preferredInnerWidth){var ch=vWidget.getChildren(),chl=ch.length,chc;var sch,schl;for(var i=0;i<chl;i++){chc=ch[i];sch=chc.getChildren();schl=sch.length;for(var j=0;j<schl;j++){sch[j].addToLayoutChanges(qx.ui.core.Widget.JOB_LOCATIONX)}}};return qx.renderer.layout.VerticalBoxLayoutImpl.prototype.updateChildrenOnJobQueueFlush.call(this,vQueue)};qx.OO.defineClass("qx.dev.log.RingBufferAppender",qx.dev.log.Appender,function(){qx.dev.log.Appender.call(this);this._history=[];this._nextIndexToStoreTo=0;this._appenderToFormatStrings=null});qx.OO.addProperty({name:"maxMessages",type:qx.constant.Type.NUMBER,defaultValue:50});qx.Proto._modifyMaxMessages=function(propValue,propOldValue,propData){this._history=[];this._nextIndexToStoreTo=0};qx.Proto.appendLogEvent=function(evt){var maxMessages=this.getMaxMessages();if(this._history.length<maxMessages){this._history.push(evt)}else{this._history[this._nextIndexToStoreTo++]=evt;if(this._nextIndexToStoreTo>=maxMessages){this._nextIndexToStoreTo=0}}};qx.Proto.retrieveLogEvents=function(count){if(count>this._history.length){count=this._history.length};var indexOfYoungestElementInHistory=this._history.length==this.getMaxMessages()?this._nextIndexToStoreTo-1:this._history.length-1;var startIndex=indexOfYoungestElementInHistory-count+1;if(startIndex<0){startIndex+=this._history.length};var result;if(startIndex<=indexOfYoungestElementInHistory){result=this._history.slice(startIndex,indexOfYoungestElementInHistory+1)}else{result=this._history.slice(startIndex,this._history.length).concat(this._history.slice(0,indexOfYoungestElementInHistory+1))};return result};qx.Proto.formatLogEvents=function(count){if(this._appenderToFormatStrings==null){this._appenderToFormatStrings=new qx.dev.log.Appender()};var events=this.retrieveLogEvents(count);var string="";for(var idx=0;idx<events.length;idx++){string+=this._appenderToFormatStrings.formatLogEvent(events[idx])+"\n"};return string};qx.Proto.dispose=function(){if(this.getDisposed()){return true};return qx.dev.log.Appender.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.pageview.AbstractPageViewButton",qx.ui.basic.Atom,function(vText,vIcon,vIconWidth,vIconHeight,vFlash){qx.ui.basic.Atom.call(this,vText,vIcon,vIconWidth,vIconHeight,vFlash);this.setTabIndex(1);this.addEventListener(qx.constant.Event.MOUSEOVER,this._onmouseover);this.addEventListener(qx.constant.Event.MOUSEOUT,this._onmouseout);this.addEventListener(qx.constant.Event.MOUSEDOWN,this._onmousedown);this.addEventListener(qx.constant.Event.KEYDOWN,this._onkeydown)});qx.OO.addProperty({name:"checked",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.OO.addProperty({name:"page",type:qx.constant.Type.OBJECT});qx.OO.addProperty({name:"manager",type:qx.constant.Type.OBJECT,instance:"qx.manager.selection.RadioManager",allowNull:true});qx.OO.addProperty({name:"name",type:qx.constant.Type.STRING});qx.Proto.getView=function(){return this.getParent().getParent()};qx.Proto._modifyManager=function(propValue,propOldValue,propData){if(propOldValue){propOldValue.remove(this)};if(propValue){propValue.add(this)};return true};qx.Proto._modifyParent=function(propValue,propOldValue,propData){if(propOldValue){propOldValue.getManager().remove(this)};if(propValue){propValue.getManager().add(this)};return qx.ui.basic.Atom.prototype._modifyParent.call(this,propValue,propOldValue,propData)};qx.Proto._modifyPage=function(propValue,propOldValue,propData){if(propOldValue){propOldValue.setButton(null)};if(propValue){propValue.setButton(this);this.getChecked()?propValue.show():propValue.hide()};return true};qx.Proto._modifyChecked=function(propValue,propOldValue,propData){if(this._hasParent){var vManager=this.getManager();if(vManager){vManager.handleItemChecked(this,propValue)}};propValue?this.addState(qx.ui.form.Button.STATE_CHECKED):this.removeState(qx.ui.form.Button.STATE_CHECKED);var vPage=this.getPage();if(vPage){this.getChecked()?vPage.show():vPage.hide()};return true};qx.Proto._modifyName=function(propValue,propOldValue,propData){if(this.getManager()){this.getManager().setName(propValue)};return true};qx.Proto._onmousedown=function(e){this.setChecked(true)};qx.Proto._onmouseover=function(e){this.addState(qx.ui.core.Widget.STATE_OVER)};qx.Proto._onmouseout=function(e){this.removeState(qx.ui.core.Widget.STATE_OVER)};qx.Proto._onkeydown=function(e){};qx.Proto.dispose=function(){if(this.getDisposed()){return};this.removeEventListener(qx.constant.Event.MOUSEOVER,this._onmouseover);this.removeEventListener(qx.constant.Event.MOUSEOUT,this._onmouseout);this.removeEventListener(qx.constant.Event.MOUSEDOWN,this._onmousedown);this.removeEventListener(qx.constant.Event.KEYDOWN,this._onkeydown);return qx.ui.basic.Atom.prototype.dispose.call(this)};qx.OO.defineClass("qx.manager.selection.RadioManager",qx.core.Target,function(vName,vMembers){qx.core.Target.call(this);this._items=[];this.setName(qx.util.Validation.isValidString(vName)?vName:qx.manager.selection.RadioManager.AUTO_NAME_PREFIX+this._hashCode);if(qx.util.Validation.isValidArray(vMembers)){this.add.apply(this,vMembers)}});qx.manager.selection.RadioManager.AUTO_NAME_PREFIX="qx-radio-";qx.OO.addProperty({name:"selected"});qx.OO.addProperty({name:"name",type:qx.constant.Type.STRING});qx.Proto.getItems=function(){return this._items};qx.Proto.handleItemChecked=function(vItem,vChecked){if(vChecked){this.setSelected(vItem)}else if(this.getSelected()==vItem){this.setSelected(null)}};qx.Proto.add=function(){var vItems=arguments;var vLength=vItems.length;var vLast=vItems[vLength-1];if(!(vLast instanceof qx.ui.core.Parent)&&!(vLast instanceof qx.ui.basic.Terminator)){vLength--};var vItem;for(var i=0;i<vLength;i++){vItem=vItems[i];if(qx.lang.Array.contains(this._items,vItem)){return};this._items.push(vItem);vItem.setManager(this);if(vItem.getChecked()){this.setSelected(vItem)};vItem.setEnabled(this.getEnabled());vItem.setName(this.getName())}};qx.Proto.remove=function(vItem){qx.lang.Array.remove(this._items,vItem);vItem.setManager(null);if(vItem.getChecked()){this.setSelected(null)}};qx.Proto._modifySelected=function(propValue,propOldValue,propData){if(propOldValue&&propOldValue.getChecked()){propOldValue.setChecked(false)};if(propValue&&!propValue.getChecked()){propValue.setChecked(true)};return true};qx.Proto._modifyEnabled=function(propValue,propOldValue,propData){for(var i=0,vItems=this._items,vLength=vItems.length;i<vLength;i++){vItems[i].setEnabled(propValue)};return true};qx.Proto._modifyName=function(propValue,propOldValue,propData){for(var i=0,vItems=this._items,vLength=vItems.length;i<vLength;i++){vItems[i].setName(propValue)};return true};qx.Proto.selectNext=function(vItem){var vIndex=this._items.indexOf(vItem);if(vIndex==-1){return};var i=0;var vLength=this._items.length;vIndex=(vIndex+1)%vLength;while(i<vLength&&!this._items[vIndex].getEnabled()){vIndex=(vIndex+1)%vLength;i++};this._selectByIndex(vIndex)};qx.Proto.selectPrevious=function(vItem){var vIndex=this._items.indexOf(vItem);if(vIndex==-1){return};var i=0;var vLength=this._items.length;vIndex=(vIndex-1+vLength)%vLength;while(i<vLength&&!this._items[vIndex].getEnabled()){vIndex=(vIndex-1+vLength)%vLength;i++};this._selectByIndex(vIndex)};qx.Proto._selectByIndex=function(vIndex){if(this._items[vIndex].getEnabled()){this.setSelected(this._items[vIndex]);this._items[vIndex].setFocused(true)}};qx.Proto.dispose=function(){if(this.getDisposed()){return};this.forceSelected(null);if(this._items){for(var i,vItems=this._items,vLength=vItems.length;i<vLength;i++){vItems[i].dispose();delete vItems[i]};vItems=null;delete this._items};return qx.core.Target.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.core.ScrollBar",qx.ui.layout.BoxLayout,function(horizontal){qx.ui.layout.BoxLayout.call(this,horizontal?qx.constant.Layout.ORIENTATION_HORIZONTAL:qx.constant.Layout.ORIENTATION_VERTICAL);this._horizontal=(horizontal==true);this._scrollBar=new qx.ui.layout.CanvasLayout;if(qx.sys.Client.getInstance().isGecko()){this._scrollBar.setStyleProperty("position","")};this._scrollBar.setOverflow(horizontal?qx.constant.Style.OVERFLOW_HORIZONTAL:qx.constant.Style.OVERFLOW_VERTICAL);this._scrollBar.enableInlineEvent(qx.constant.Event.SCROLL);this._scrollBar.addEventListener(qx.constant.Event.SCROLL,this._onscroll,this);this._scrollContent=new qx.ui.basic.Terminator;if(qx.sys.Client.getInstance().isGecko()){this._scrollContent.setStyleProperty("position","")};this._scrollBar.add(this._scrollContent);if(this._horizontal){this._scrollContent.setHeight(5);this._scrollBar.setWidth("100%");this._scrollBar.setHeight(this._getScrollBarWidth());if(qx.sys.Client.getInstance().isMshtml()){this.setHeight(this._getScrollBarWidth());this.setOverflow(qx.constant.Style.OVERFLOW_HIDDEN);this._scrollBar.setHeight(this._getScrollBarWidth()+1);this._scrollBar.setTop(-1)}}else{this._scrollContent.setWidth(5);this._scrollBar.setHeight("100%");this._scrollBar.setWidth(this._getScrollBarWidth());if(qx.sys.Client.getInstance().isMshtml()){this.setWidth(this._getScrollBarWidth());this.setOverflow(qx.constant.Style.OVERFLOW_HIDDEN);this._scrollBar.setWidth(this._getScrollBarWidth()+1);this._scrollBar.setLeft(-1)}};this.add(this._scrollBar);this.setMaximum(0)});qx.OO.addProperty({name:"value",type:qx.constant.Type.NUMBER,defaultValue:0,allowNull:false});qx.OO.addProperty({name:"maximum",type:qx.constant.Type.NUMBER,allowNull:false});qx.OO.addProperty({name:"mergeEvents",type:qx.constant.Type.BOOLEAN,defaultValue:false,allowNull:false});qx.Proto._checkValue=function(propValue,propData){var innerSize=(this.getTopLevelWidget()==null)?0:(this._horizontal?this.getInnerWidth():this.getInnerHeight());return Math.max(0,Math.min(this.getMaximum()-innerSize,propValue))};qx.Proto._modifyValue=function(propValue,propOldValue,propData){if(!this._internalValueChange&&this._isCreated){this._positionKnob(propValue)};return true};qx.Proto._modifyMaximum=function(propValue,propOldValue,propData){if(this._horizontal){this._scrollContent.setWidth(propValue)}else{this._scrollContent.setHeight(propValue)};this.setValue(this._checkValue(this.getValue()));return true};qx.Proto._modifyVisibility=function(propValue,propOldValue,propData){if(!propValue){this._positionKnob(0)}else{this._positionKnob(this.getValue())};return qx.ui.layout.BoxLayout.prototype._modifyVisibility.call(this,propValue,propOldValue,propData)};qx.Proto._computePreferredInnerWidth=function(){return this._horizontal?0:this._getScrollBarWidth()};qx.Proto._computePreferredInnerHeight=function(){return this._horizontal?this._getScrollBarWidth():0};qx.Proto._getScrollBarWidth=function(){if(qx.ui.core.ScrollBar._scrollBarWidth==null){var dummy=document.createElement("div");dummy.style.width="100px";dummy.style.height="100px";dummy.style.overflow="scroll";dummy.style.visibility="hidden";document.body.appendChild(dummy);qx.ui.core.ScrollBar._scrollBarWidth=dummy.offsetWidth-dummy.clientWidth;document.body.removeChild(dummy)};return qx.ui.core.ScrollBar._scrollBarWidth};qx.Proto._onscroll=function(evt){var value=this._horizontal?this._scrollBar.getScrollLeft():this._scrollBar.getScrollTop();if(this.getMergeEvents()){this._lastScrollEventValue=value;window.clearTimeout(this._setValueTimerId);var self=this;this._setValueTimerId=window.setTimeout(function(){self._internalValueChange=true;self.setValue(self._lastScrollEventValue);self._internalValueChange=false;qx.ui.core.Widget.flushGlobalQueues()},qx.ui.core.ScrollBar.EVENT_DELAY)}else{this._internalValueChange=true;this.setValue(value);this._internalValueChange=false;qx.ui.core.Widget.flushGlobalQueues()}};qx.Proto._positionKnob=function(value){if(this._horizontal){this._scrollBar.setScrollLeft(value)}else{this._scrollBar.setScrollTop(value)}};qx.Proto._afterAppear=function(){qx.ui.layout.BoxLayout.prototype._afterAppear.call(this);this._positionKnob(this.getValue())};qx.Proto.dispose=function(){if(this.getDisposed()){return};if(this._scrollContent){this._scrollContent.dispose();this._scrollContent=null};return qx.ui.layout.BoxLayout.prototype.dispose.call(this)};qx.Class.EVENT_DELAY=250;qx.OO.defineClass("qx.ui.popup.PopupAtom",qx.ui.popup.Popup,function(vLabel,vIcon){qx.ui.popup.Popup.call(this);this._atom=new qx.ui.basic.Atom(vLabel,vIcon);this._atom.setParent(this)});qx.Proto.getAtom=function(){return this._atom};qx.Proto.dispose=function(){if(this.getDisposed()){return};if(this._atom){this._atom.dispose();this._atom=null};return qx.ui.popup.Popup.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.popup.ToolTip",qx.ui.popup.PopupAtom,function(vLabel,vIcon){qx.ui.popup.PopupAtom.call(this,vLabel,vIcon);this.setStyleProperty(qx.constant.Style.PROPERTY_FILTER,"progid:DXImageTransform.Microsoft.Shadow(color='Gray', Direction=135, Strength=4)");this._showTimer=new qx.client.Timer(this.getShowInterval());this._showTimer.addEventListener(qx.constant.Event.INTERVAL,this._onshowtimer,this);this._hideTimer=new qx.client.Timer(this.getHideInterval());this._hideTimer.addEventListener(qx.constant.Event.INTERVAL,this._onhidetimer,this);this.addEventListener(qx.constant.Event.MOUSEOVER,this._onmouseover);this.addEventListener(qx.constant.Event.MOUSEOUT,this._onmouseover)});qx.Proto._minZIndex=1e7;qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"tool-tip"});qx.OO.addProperty({name:"hideOnHover",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.OO.addProperty({name:"mousePointerOffsetX",type:qx.constant.Type.NUMBER,defaultValue:1});qx.OO.addProperty({name:"mousePointerOffsetY",type:qx.constant.Type.NUMBER,defaultValue:20});qx.OO.addProperty({name:"showInterval",type:qx.constant.Type.NUMBER,defaultValue:1000});qx.OO.addProperty({name:"hideInterval",type:qx.constant.Type.NUMBER,defaultValue:4000});qx.OO.addProperty({name:"boundToWidget",type:qx.constant.Type.OBJECT,instance:"qx.ui.core.Widget"});qx.Proto._modifyHideInterval=function(propValue,propOldValue,propData){this._hideTimer.setInterval(propValue);return true};qx.Proto._modifyShowInterval=function(propValue,propOldValue,propData){this._showTimer.setInterval(propValue);return true};qx.Proto._modifyBoundToWidget=function(propValue,propOldValue,propData){if(propValue){this.setParent(propValue.getTopLevelWidget())}else if(propOldValue){this.setParent(null)};return true};qx.Proto._beforeAppear=function(){this._stopShowTimer();this._startHideTimer()};qx.Proto._beforeDisappear=function(){this._stopHideTimer()};qx.Proto._startShowTimer=function(){if(!this._showTimer.getEnabled()){this._showTimer.start()}};qx.Proto._startHideTimer=function(){if(!this._hideTimer.getEnabled()){this._hideTimer.start()}};qx.Proto._stopShowTimer=function(){if(this._showTimer.getEnabled()){this._showTimer.stop()}};qx.Proto._stopHideTimer=function(){if(this._hideTimer.getEnabled()){this._hideTimer.stop()}};qx.Proto._onmouseover=function(e){if(this.getHideOnHover()){this.hide()}};qx.Proto._onshowtimer=function(e){this.setLeft(qx.event.type.MouseEvent.getPageX()+this.getMousePointerOffsetX());this.setTop(qx.event.type.MouseEvent.getPageY()+this.getMousePointerOffsetY());this.show();qx.ui.core.Widget.flushGlobalQueues();return true};qx.Proto._onhidetimer=function(e){return this.hide()};qx.Proto.dispose=function(){if(this.getDisposed()){return};this.removeEventListener(qx.constant.Event.MOUSEOVER,this._onmouseover);this.removeEventListener(qx.constant.Event.MOUSEOUT,this._onmouseover);if(this._showTimer){this._showTimer.removeEventListener(qx.constant.Event.INTERVAL,this._onshowtimer,this);this._showTimer.dispose();this._showTimer=null};if(this._hideTimer){this._hideTimer.removeEventListener(qx.constant.Event.INTERVAL,this._onhidetimer,this);this._hideTimer.dispose();this._hideTimer=null};return qx.ui.popup.PopupAtom.prototype.dispose.call(this)};qx.OO.defineClass("qx.manager.object.ToolTipManager",qx.manager.object.ObjectManager,function(){qx.manager.object.ObjectManager.call(this)});qx.OO.addProperty({name:"currentToolTip",type:qx.constant.Type.OBJECT,instance:"qx.ui.popup.ToolTip"});qx.Proto._modifyCurrentToolTip=function(propValue,propOldValue,propData){if(propOldValue&&propOldValue.contains(propValue)){return};if(propOldValue){propOldValue.hide();propOldValue._stopShowTimer();propOldValue._stopHideTimer()};if(propValue){propValue._startShowTimer()};return true};qx.Proto.handleMouseOver=function(e){var vTarget=e.getTarget();var vToolTip;if(!(vTarget instanceof qx.ui.core.Widget)&&vTarget.nodeType==1){vTarget=qx.event.handler.EventHandler.getTargetObject(vTarget)};while(vTarget!=null&&!(vToolTip=vTarget.getToolTip())){vTarget=vTarget.getParent()};if(vToolTip!=null){vToolTip.setBoundToWidget(vTarget)};this.setCurrentToolTip(vToolTip)};qx.Proto.handleMouseOut=function(e){var vTarget=e.getTarget();var vRelatedTarget=e.getRelatedTarget();var vToolTip=this.getCurrentToolTip();if(vToolTip&&(vRelatedTarget==vToolTip||vToolTip.contains(vRelatedTarget))){return};if(vRelatedTarget&&vTarget&&vTarget.contains(vRelatedTarget)){return};if(vToolTip&&!vRelatedTarget){this.setCurrentToolTip(null)}};qx.Proto.handleFocus=function(e){var vTarget=e.getTarget();var vToolTip=vTarget.getToolTip();if(vToolTip!=null){vToolTip.setBoundToWidget(vTarget);this.setCurrentToolTip(vToolTip)}};qx.Proto.handleBlur=function(e){var vTarget=e.getTarget();if(!vTarget){return};var vToolTip=this.getCurrentToolTip();if(vToolTip&&vToolTip==vTarget.getToolTip()){this.setCurrentToolTip(null)}};qx.Class.getInstance=qx.util.Return.returnInstance;qx.OO.defineClass("qx.ui.toolbar.ToolBarMenuButton",qx.ui.toolbar.ToolBarButton,function(vText,vMenu,vIcon,vIconWidth,vIconHeight,vFlash){qx.ui.toolbar.ToolBarButton.call(this,vText,vIcon,vIconWidth,vIconHeight,vFlash);if(qx.util.Validation.isValidObject(vMenu)){this.setMenu(vMenu)}});qx.OO.addProperty({name:"menu",type:qx.constant.Type.OBJECT,instance:"qx.ui.menu.Menu"});qx.OO.addProperty({name:"direction",type:qx.constant.Type.STRING,allowNull:false,possibleValues:["up","down"],defaultValue:"down"});qx.Proto.getParentToolBar=function(){var vParent=this.getParent();if(vParent instanceof qx.ui.toolbar.ToolBarPart){vParent=vParent.getParent()};return vParent instanceof qx.ui.toolbar.ToolBar?vParent:null};qx.Proto._showMenu=function(vFromKeyEvent){var vMenu=this.getMenu();if(vMenu){var vMenuParent=vMenu.getParent();var vMenuParentElement=vMenuParent.getElement();var vButtonElement=this.getElement();var vButtonHeight=qx.dom.DomDimension.getBoxHeight(vButtonElement);var vMenuParentLeft=qx.dom.DomLocation.getPageBoxLeft(vMenuParentElement);var vButtonLeft=qx.dom.DomLocation.getPageBoxLeft(vButtonElement);vMenu.setLeft(vButtonLeft-vMenuParentLeft);switch(this.getDirection()){case "up":var vBodyHeight=qx.dom.DomDimension.getInnerHeight(document.body);var vMenuParentBottom=qx.dom.DomLocation.getPageBoxBottom(vMenuParentElement);var vButtonBottom=qx.dom.DomLocation.getPageBoxBottom(vButtonElement);vMenu.setBottom(vButtonHeight+(vBodyHeight-vButtonBottom)-(vBodyHeight-vMenuParentBottom));vMenu.setTop(null);break;case "down":var vButtonTop=qx.dom.DomLocation.getPageBoxTop(vButtonElement);vMenu.setTop(vButtonTop+vButtonHeight);vMenu.setBottom(null);break};this.addState(qx.ui.form.Button.STATE_PRESSED);if(vFromKeyEvent){vMenu.setHoverItem(vMenu.getFirstActiveChild())};vMenu.show()}};qx.Proto._hideMenu=function(){var vMenu=this.getMenu();if(vMenu){vMenu.hide()}};qx.Proto._modifyMenu=function(propValue,propOldValue,propData){if(propOldValue){propOldValue.setOpener(null);propOldValue.removeEventListener(qx.constant.Event.APPEAR,this._onmenuappear,this);propOldValue.removeEventListener(qx.constant.Event.DISAPPEAR,this._onmenudisappear,this)};if(propValue){propValue.setOpener(this);propValue.addEventListener(qx.constant.Event.APPEAR,this._onmenuappear,this);propValue.addEventListener(qx.constant.Event.DISAPPEAR,this._onmenudisappear,this)};return true};qx.Proto._onmousedown=function(e){if(e.getTarget()!=this||!e.isLeftButtonPressed()){return};this.hasState(qx.ui.form.Button.STATE_PRESSED)?this._hideMenu():this._showMenu()};qx.Proto._onmouseup=function(e){};qx.Proto._onmouseout=function(e){if(e.getTarget()!=this){return};this.removeState(qx.ui.core.Widget.STATE_OVER)};qx.Proto._onmouseover=function(e){var vToolBar=this.getParentToolBar();if(vToolBar){var vMenu=this.getMenu();switch(vToolBar.getOpenMenu()){case null:case vMenu:break;default:qx.manager.object.MenuManager.getInstance().update();this._showMenu()}};return qx.ui.toolbar.ToolBarButton.prototype._onmouseover.call(this,e)};qx.Proto._onmenuappear=function(e){var vToolBar=this.getParentToolBar();if(!vToolBar){return};var vMenu=this.getMenu();vToolBar.setOpenMenu(vMenu)};qx.Proto._onmenudisappear=function(e){var vToolBar=this.getParentToolBar();if(!vToolBar){return};var vMenu=this.getMenu();if(vToolBar.getOpenMenu()==vMenu){vToolBar.setOpenMenu(null)}};qx.OO.defineClass("qx.ui.menu.Menu",qx.ui.popup.Popup,function(){qx.ui.popup.Popup.call(this);var l=this._layout=new qx.ui.menu.MenuLayout;this.add(l);this._openTimer=new qx.client.Timer(this.getOpenInterval());this._openTimer.addEventListener(qx.constant.Event.INTERVAL,this._onopentimer,this);this._closeTimer=new qx.client.Timer(this.getCloseInterval());this._closeTimer.addEventListener(qx.constant.Event.INTERVAL,this._onclosetimer,this);this.addEventListener(qx.constant.Event.MOUSEOVER,this._onmouseover);this.addEventListener(qx.constant.Event.MOUSEMOVE,this._onmouseover);this.addEventListener(qx.constant.Event.MOUSEOUT,this._onmouseout);this.addEventListener(qx.constant.Event.KEYDOWN,this._onkeydown);this.remapChildrenHandlingTo(this._layout)});qx.Proto._remappingChildTable=["add","remove","addAt","addAtBegin","addAtEnd","removeAt","addBefore","addAfter","removeAll","getFirstChild","getFirstActiveChild","getLastChild","getLastActiveChild"];qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"menu"});qx.OO.addProperty({name:"iconContentGap",type:qx.constant.Type.NUMBER,defaultValue:4});qx.OO.addProperty({name:"labelShortcutGap",type:qx.constant.Type.NUMBER,defaultValue:10});qx.OO.addProperty({name:"contentArrowGap",type:qx.constant.Type.NUMBER,defaultValue:8});qx.OO.addProperty({name:"contentNonIconPadding",type:qx.constant.Type.NUMBER,defaultValue:20});qx.OO.addProperty({name:"contentNonArrowPadding",type:qx.constant.Type.NUMBER,defaultValue:8});qx.OO.addProperty({name:"hoverItem",type:qx.constant.Type.OBJECT});qx.OO.addProperty({name:"openItem",type:qx.constant.Type.OBJECT});qx.OO.addProperty({name:"opener",type:qx.constant.Type.OBJECT});qx.OO.addProperty({name:"parentMenu",type:qx.constant.Type.OBJECT});qx.OO.addProperty({name:"fastReopen",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.OO.addProperty({name:"openInterval",type:qx.constant.Type.NUMBER,defaultValue:250});qx.OO.addProperty({name:"closeInterval",type:qx.constant.Type.NUMBER,defaultValue:250});qx.OO.addProperty({name:"subMenuHorizontalOffset",type:qx.constant.Type.NUMBER,defaultValue:-3});qx.OO.addProperty({name:"subMenuVerticalOffset",type:qx.constant.Type.NUMBER,defaultValue:-2});qx.OO.addProperty({name:"indentShortcuts",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.Proto.getLayout=function(){return this._layout};qx.Proto.isSubButton=function(vButton){if(vButton.getParent()===this._layout){return true};for(var a=this._layout.getChildren(),l=a.length,i=0;i<l;i++){if(a[i].getMenu&&a[i].getMenu()&&a[i].getMenu().isSubButton(vButton)){return true}};return false};qx.Proto._beforeAppear=function(){qx.ui.layout.CanvasLayout.prototype._beforeAppear.call(this);qx.manager.object.MenuManager.getInstance().add(this);this.bringToFront();this._makeActive()};qx.Proto._beforeDisappear=function(){qx.ui.layout.CanvasLayout.prototype._beforeDisappear.call(this);qx.manager.object.MenuManager.getInstance().remove(this);this._makeInactive();this.setHoverItem(null);this.setOpenItem(null);var vOpener=this.getOpener();if(vOpener){vOpener.removeState(qx.ui.form.Button.STATE_PRESSED)}};qx.Proto._modifyHoverItem=function(propValue,propOldValue,propData){if(propOldValue){propOldValue.removeState(qx.ui.core.Widget.STATE_OVER)};if(propValue){propValue.addState(qx.ui.core.Widget.STATE_OVER)};return true};qx.Proto._modifyOpenItem=function(propValue,propOldValue,propData){var vMakeActive=false;if(propOldValue){var vOldSub=propOldValue.getMenu();if(vOldSub){vOldSub.setParentMenu(null);vOldSub.setOpener(null);vOldSub.hide()}};if(propValue){var vSub=propValue.getMenu();if(vSub){vSub.setOpener(propValue);vSub.setParentMenu(this);var pl=propValue.getElement();var el=this.getElement();vSub.setTop(qx.dom.DomLocation.getPageBoxTop(pl)+this.getSubMenuVerticalOffset());vSub.setLeft(qx.dom.DomLocation.getPageBoxLeft(el)+qx.dom.DomDimension.getBoxWidth(el)+this.getSubMenuHorizontalOffset());vSub.show();qx.ui.core.Widget.flushGlobalQueues()}};return true};qx.OO.addCachedProperty({name:"maxIconWidth"});qx.OO.addCachedProperty({name:"maxLabelWidth"});qx.OO.addCachedProperty({name:"maxLabelWidthIncShortcut"});qx.OO.addCachedProperty({name:"maxShortcutWidth"});qx.OO.addCachedProperty({name:"maxArrowWidth"});qx.OO.addCachedProperty({name:"maxContentWidth"});qx.OO.addCachedProperty({name:"iconPosition",defaultValue:0});qx.OO.addCachedProperty({name:"labelPosition"});qx.OO.addCachedProperty({name:"shortcutPosition"});qx.OO.addCachedProperty({name:"arrowPosition"});qx.OO.addCachedProperty({name:"menuButtonNeededWidth"});qx.Proto._computeMaxIconWidth=function(){var ch=this.getLayout().getChildren(),chl=ch.length,chc,m=0;for(var i=0;i<chl;i++){chc=ch[i];if(chc.hasIcon()){m=Math.max(m,16)}};return m};qx.Proto._computeMaxLabelWidth=function(){var ch=this.getLayout().getChildren(),chl=ch.length,chc,m=0;for(var i=0;i<chl;i++){chc=ch[i];if(chc.hasLabel()){m=Math.max(m,chc.getLabelObject().getPreferredBoxWidth())}};return m};qx.Proto._computeMaxLabelWidthIncShortcut=function(){var ch=this.getLayout().getChildren(),chl=ch.length,chc,m=0;for(var i=0;i<chl;i++){chc=ch[i];if(chc.hasLabel()&&chc.hasShortcut()){m=Math.max(m,chc.getLabelObject().getPreferredBoxWidth())}};return m};qx.Proto._computeMaxShortcutWidth=function(){var ch=this.getLayout().getChildren(),chl=ch.length,chc,m=0;for(var i=0;i<chl;i++){chc=ch[i];if(chc.hasShortcut()){m=Math.max(m,chc.getShortcutObject().getPreferredBoxWidth())}};return m};qx.Proto._computeMaxArrowWidth=function(){var ch=this.getLayout().getChildren(),chl=ch.length,chc,m=0;for(var i=0;i<chl;i++){chc=ch[i];if(chc.hasMenu()){m=Math.max(m,4)}};return m};qx.Proto._computeMaxContentWidth=function(){var vSum;var lw=this.getMaxLabelWidth();var sw=this.getMaxShortcutWidth();if(this.getIndentShortcuts()){var vTemp=sw+this.getMaxLabelWidthIncShortcut();if(sw>0){vTemp+=this.getLabelShortcutGap()};vSum=Math.max(lw,vTemp)}else{vSum=lw+sw;if(lw>0&&sw>0){vSum+=this.getLabelShortcutGap()}};return vSum};qx.Proto._computeIconPosition=function(){return 0};qx.Proto._computeLabelPosition=function(){var v=this.getMaxIconWidth();return v>0?v+this.getIconContentGap():this.getContentNonIconPadding()};qx.Proto._computeShortcutPosition=function(){return this.getLabelPosition()+this.getMaxContentWidth()-this.getMaxShortcutWidth()};qx.Proto._computeArrowPosition=function(){var v=this.getMaxContentWidth();return this.getLabelPosition()+(v>0?v+this.getContentArrowGap():v)};qx.Proto._invalidateMaxIconWidth=function(){this._cachedMaxIconWidth=null;this._invalidateLabelPosition();this._invalidateMenuButtonNeededWidth()};qx.Proto._invalidateMaxLabelWidth=function(){this._cachedMaxLabelWidth=null;this._invalidateShortcutPosition();this._invalidateMaxLabelWidthIncShortcut();this._invalidateMaxContentWidth();this._invalidateMenuButtonNeededWidth()};qx.Proto._invalidateMaxShortcutWidth=function(){this._cachedMaxShortcutWidth=null;this._invalidateArrowPosition();this._invalidateMaxContentWidth();this._invalidateMenuButtonNeededWidth()};qx.Proto._invalidateMaxLabelWidth=function(){this._cachedMaxArrowWidth=null;this._invalidateMenuButtonNeededWidth()};qx.Proto._invalidateLabelPosition=function(){this._cachedLabelPosition=null;this._invalidateShortcutPosition()};qx.Proto._invalidateShortcutPosition=function(){this._cachedShortcutPosition=null;this._invalidateArrowPosition()};qx.Proto._computeMenuButtonNeededWidth=function(){var vSum=0;var vMaxIcon=this.getMaxIconWidth();var vMaxContent=this.getMaxContentWidth();var vMaxArrow=this.getMaxArrowWidth();if(vMaxIcon>0){vSum+=vMaxIcon}else{vSum+=this.getContentNonIconPadding()};if(vMaxContent>0){if(vMaxIcon>0){vSum+=this.getIconContentGap()};vSum+=vMaxContent};if(vMaxArrow>0){if(vMaxIcon>0||vMaxContent>0){vSum+=this.getContentArrowGap()};vSum+=vMaxArrow}else{vSum+=this.getContentNonArrowPadding()};return vSum};qx.Proto._onmouseover=function(e){var vParent=this.getParentMenu();if(vParent){vParent._closeTimer.stop();var vOpener=this.getOpener();if(vOpener){vParent.setHoverItem(vOpener)}};var t=e.getTarget();if(t==this){this._openTimer.stop();this._closeTimer.start();this.setHoverItem(null);return};var vOpen=this.getOpenItem();if(vOpen){this.setHoverItem(t);this._openTimer.stop();if(t.hasMenu()){if(this.getFastReopen()){this.setOpenItem(t);this._closeTimer.stop()}else{this._openTimer.start()}}else{this._closeTimer.start()}}else{this.setHoverItem(t);this._openTimer.stop();if(t.hasMenu()){this._openTimer.start()}}};qx.Proto._onmouseout=function(e){this._openTimer.stop();var t=e.getTarget();if(t!=this&&t.hasMenu()){this._closeTimer.start()};this.setHoverItem(null)};qx.Proto._onopentimer=function(e){this._openTimer.stop();var vHover=this.getHoverItem();if(vHover&&vHover.hasMenu()){this.setOpenItem(vHover)}};qx.Proto._onclosetimer=function(e){this._closeTimer.stop();this.setOpenItem(null)};qx.Proto._onkeydown=function(e){switch(e.getKeyCode()){case qx.event.type.KeyEvent.keys.up:this._onkeydown_up(e);break;case qx.event.type.KeyEvent.keys.down:this._onkeydown_down(e);break;case qx.event.type.KeyEvent.keys.left:this._onkeydown_left(e);break;case qx.event.type.KeyEvent.keys.right:this._onkeydown_right(e);break;case qx.event.type.KeyEvent.keys.enter:this._onkeydown_enter(e);break;default:return};e.preventDefault()};qx.Proto._onkeydown_up=function(e){var vHover=this.getHoverItem();var vPrev=vHover?vHover.isFirstChild()?this.getLastActiveChild():vHover.getPreviousActiveSibling([qx.ui.menu.MenuSeparator]):this.getLastActiveChild();this.setHoverItem(vPrev)};qx.Proto._onkeydown_down=function(e){var vHover=this.getHoverItem();var vNext=vHover?vHover.isLastChild()?this.getFirstActiveChild():vHover.getNextActiveSibling([qx.ui.menu.MenuSeparator]):this.getFirstActiveChild();this.setHoverItem(vNext)};qx.Proto._onkeydown_left=function(e){var vOpener=this.getOpener();if(vOpener instanceof qx.ui.menu.MenuButton){var vOpenerParent=this.getOpener().getParentMenu();vOpenerParent.setOpenItem(null);vOpenerParent.setHoverItem(vOpener);vOpenerParent._makeActive()}else if(vOpener instanceof qx.ui.toolbar.ToolBarMenuButton){var vToolBar=vOpener.getParentToolBar();this.getFocusRoot().setActiveChild(vToolBar);vToolBar._onkeydown(e)}};qx.Proto._onkeydown_right=function(e){var vHover=this.getHoverItem();if(vHover){var vMenu=vHover.getMenu();if(vMenu){this.setOpenItem(vHover);vMenu.setHoverItem(vMenu.getFirstActiveChild());return}}else if(!this.getOpenItem()){var vFirst=this.getLayout().getFirstActiveChild();if(vFirst){vFirst.hasMenu()?this.setOpenItem(vFirst):this.setHoverItem(vFirst)}};var vOpener=this.getOpener();if(vOpener instanceof qx.ui.toolbar.ToolBarMenuButton){var vToolBar=vOpener.getParentToolBar();this.getFocusRoot().setActiveChild(vToolBar);vToolBar._onkeydown(e)}else if(vOpener instanceof qx.ui.menu.MenuButton&&vHover){var vOpenerParent=vOpener.getParentMenu();while(vOpenerParent&&vOpenerParent instanceof qx.ui.menu.Menu){vOpener=vOpenerParent.getOpener();if(vOpener instanceof qx.ui.menu.MenuButton){vOpenerParent=vOpener.getParentMenu()}else{if(vOpener){vOpenerParent=vOpener.getParent()};break}};if(vOpenerParent instanceof qx.ui.toolbar.ToolBarPart){vOpenerParent=vOpenerParent.getParent()};if(vOpenerParent instanceof qx.ui.toolbar.ToolBar){this.getFocusRoot().setActiveChild(vOpenerParent);vOpenerParent._onkeydown(e)}}};qx.Proto._onkeydown_enter=function(e){var vHover=this.getHoverItem();if(vHover){vHover.execute()};qx.manager.object.MenuManager.getInstance().update()};qx.Proto.dispose=function(){if(this.getDisposed()){return};if(this._layout){this._layout.dispose();this._layout=null};if(this._openTimer){this._openTimer.dispose();this._openTimer=null};if(this._closeTimer){this._closeTimer.dispose();this._closeTimer=null};this.removeEventListener(qx.constant.Event.MOUSEOVER,this._onmouseover);this.removeEventListener(qx.constant.Event.MOUSEMOVE,this._onmouseover);this.removeEventListener(qx.constant.Event.MOUSEOUT,this._onmouseout);this.removeEventListener(qx.constant.Event.KEYDOWN,this._onkeydown);return qx.ui.popup.Popup.prototype.dispose.call(this)};qx.OO.defineClass("qx.manager.object.MenuManager",qx.manager.object.ObjectManager,function(){qx.manager.object.ObjectManager.call(this)});qx.Proto.update=function(vTarget,vEventName){var vMenu,vHashCode;var vAll=this.getAll();for(vHashCode in vAll){vMenu=vAll[vHashCode];if(!vMenu.getAutoHide()){continue};if(!vTarget){vMenu.hide()};if(vMenu.getOpener()!==vTarget&&((vTarget&&!vMenu.isSubButton(vTarget))||vEventName!==qx.constant.Event.MOUSEDOWN)){vMenu.hide()}}};qx.Class.getInstance=qx.util.Return.returnInstance;qx.OO.defineClass("qx.ui.menu.MenuSeparator",qx.ui.layout.CanvasLayout,function(){qx.ui.layout.CanvasLayout.call(this);this.setStyleProperty("fontSize","0");this.setStyleProperty("lineHeight","0");this._line=new qx.ui.basic.Terminator;this._line.setAnonymous(true);this._line.setAppearance("menu-separator-line");this.add(this._line);this.addEventListener(qx.constant.Event.MOUSEDOWN,this._onmousedown)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"menu-separator"});qx.Proto.hasIcon=qx.util.Return.returnFalse;qx.Proto.hasLabel=qx.util.Return.returnFalse;qx.Proto.hasShortcut=qx.util.Return.returnFalse;qx.Proto.hasMenu=qx.util.Return.returnFalse;qx.Proto._onmousedown=function(e){e.stopPropagation()};qx.Proto.dispose=function(){if(this.getDisposed()){return true};if(this._line){this._line.dispose();this._line=null};return qx.ui.layout.CanvasLayout.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.menu.MenuButton",qx.ui.layout.HorizontalBoxLayout,function(vLabel,vIcon,vCommand,vMenu){qx.ui.layout.HorizontalBoxLayout.call(this);var io=this._iconObject=new qx.ui.basic.Image;io.setWidth(16);io.setAnonymous(true);var lo=this._labelObject=new qx.ui.basic.Label;lo.setAnonymous(true);lo.setSelectable(false);var so=this._shortcutObject=new qx.ui.basic.Label;so.setAnonymous(true);so.setSelectable(false);var ao=this._arrowObject=new qx.ui.basic.Image("widget/arrows/next.gif");ao.setAnonymous(true);if(qx.util.Validation.isValidString(vLabel)){this.setLabel(vLabel)};if(qx.util.Validation.isValidString(vIcon)){this.setIcon(vIcon)};if(qx.util.Validation.isValid(vCommand)){this.setCommand(vCommand)};if(qx.util.Validation.isValid(vMenu)){this.setMenu(vMenu)};this.addEventListener(qx.constant.Event.MOUSEUP,this._onmouseup)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"menu-button"});qx.OO.addProperty({name:"icon",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"label",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"menu",type:qx.constant.Type.OBJECT});qx.Proto._hasIcon=false;qx.Proto._hasLabel=false;qx.Proto._hasShortcut=false;qx.Proto._hasMenu=false;qx.Proto.hasIcon=function(){return this._hasIcon};qx.Proto.hasLabel=function(){return this._hasLabel};qx.Proto.hasShortcut=function(){return this._hasShortcut};qx.Proto.hasMenu=function(){return this._hasMenu};qx.Proto.getIconObject=function(){return this._iconObject};qx.Proto.getLabelObject=function(){return this._labelObject};qx.Proto.getShortcutObject=function(){return this._shortcutObject};qx.Proto.getArrowObject=function(){return this._arrowObject};qx.Proto.getParentMenu=function(){var vParent=this.getParent();if(vParent){vParent=vParent.getParent();if(vParent&&vParent instanceof qx.ui.menu.Menu){return vParent}};return null};qx.Proto._createLayoutImpl=function(){return new qx.renderer.layout.MenuButtonLayoutImpl(this)};qx.Proto._modifyEnabled=function(propValue,propOldValue,propData){if(this._iconObject){this._iconObject.setEnabled(propValue)};if(this._labelObject){this._labelObject.setEnabled(propValue)};if(this._shortcutObject){this._shortcutObject.setEnabled(propValue)};return qx.ui.layout.HorizontalBoxLayout.prototype._modifyEnabled.call(this,propValue,propOldValue,propData)};qx.Proto._modifyIcon=function(propValue,propOldValue,propData){this._iconObject.setSource(propValue);if(qx.util.Validation.isValidString(propValue)){this._hasIcon=true;if(qx.util.Validation.isInvalidString(propOldValue)){this.addAtBegin(this._iconObject)}}else{this._hasIcon=false;this.remove(this._iconObject)};return true};qx.Proto._modifyLabel=function(propValue,propOldValue,propData){this._labelObject.setHtml(propValue);if(qx.util.Validation.isValidString(propValue)){this._hasLabel=true;if(qx.util.Validation.isInvalidString(propOldValue)){this.addAt(this._labelObject,this.getFirstChild()==this._iconObject?1:0)}}else{this._hasLabel=false;this.remove(this._labelObject)};return true};qx.Proto._modifyCommand=function(propValue,propOldValue,propData){var vHtml=propValue?propValue.getShortcut():qx.constant.Core.EMPTY;this._shortcutObject.setHtml(vHtml);if(qx.util.Validation.isValidString(vHtml)){this._hasShortcut=true;var vOldHtml=propOldValue?propOldValue.getShortcut():qx.constant.Core.EMPTY;if(qx.util.Validation.isInvalidString(vOldHtml)){if(this.getLastChild()==this._arrowObject){this.addBefore(this._shortcutObject,this._arrowObject)}else{this.addAtEnd(this._shortcutObject)}}}else{this._hasShortcut=false;this.remove(this._shortcutObject)};return true};qx.Proto._modifyMenu=function(propValue,propOldValue,propData){if(qx.util.Validation.isValidObject(propValue)){this._hasMenu=true;if(qx.util.Validation.isInvalidObject(propOldValue)){this.addAtEnd(this._arrowObject)}}else{this._hasMenu=false;this.remove(this._arrowObject)};return true};qx.Proto._onmouseup=function(e){this.execute()};qx.Proto.dispose=function(){if(this.getDisposed()){return};if(this._iconObject){this._iconObject.dispose();this._iconObject=null};if(this._labelObject){this._labelObject.dispose();this._labelObject=null};if(this._shortcutObject){this._shortcutObject.dispose();this._shortcutObject=null};if(this._arrowObject){this._arrowObject.dispose();this._arrowObject=null};this.removeEventListener(qx.constant.Event.MOUSEUP,this._onmouseup);return qx.ui.layout.HorizontalBoxLayout.prototype.dispose.call(this)};qx.OO.defineClass("qx.renderer.layout.MenuButtonLayoutImpl",qx.renderer.layout.HorizontalBoxLayoutImpl,function(vWidget){qx.renderer.layout.HorizontalBoxLayoutImpl.call(this,vWidget);this.setEnableFlexSupport(false)});qx.Proto.computeChildrenNeededWidth=function(){var vWidget=this.getWidget();var vMenu=vWidget.getParent().getParent();return vMenu.getMenuButtonNeededWidth()};qx.Proto.updateSelfOnChildOuterWidthChange=function(vChild){var vWidget=this.getWidget();var vMenu=vWidget.getParent().getParent();switch(vChild){case vWidget._iconObject:vMenu._invalidateMaxIconWidth();break;case vWidget._labelObject:vMenu._invalidateMaxLabelWidth();break;case vWidget._shortcutObject:vMenu._invalidateMaxShortcutWidth();break;case vWidget._arrowObject:vMenu._invalidateMaxArrowWidth();break};return qx.renderer.layout.HorizontalBoxLayoutImpl.prototype.updateSelfOnChildOuterWidthChange.call(this,vChild)};qx.Proto.layoutChild_locationX=function(vChild,vJobs){var vWidget=this.getWidget();var vMenu=vWidget.getParent().getParent();var vPos=null;switch(vChild){case vWidget._iconObject:vPos=vMenu.getIconPosition();break;case vWidget._labelObject:vPos=vMenu.getLabelPosition();break;case vWidget._shortcutObject:vPos=vMenu.getShortcutPosition();break;case vWidget._arrowObject:vPos=vMenu.getArrowPosition();break};if(vPos!=null){vPos+=vWidget.getPaddingLeft();vChild._applyRuntimeLeft(vPos)}};qx.OO.defineClass("qx.ui.toolbar.ToolBarPart",qx.ui.layout.HorizontalBoxLayout,function(){qx.ui.layout.HorizontalBoxLayout.call(this);this._handle=new qx.ui.toolbar.ToolBarPartHandle;this.add(this._handle)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"toolbar-part"});qx.Proto._cloneRecursive=function(cloneInstance){var vChildren=this.getChildren();var vLength=vChildren.length;for(var i=0;i<vLength;i++){if(!(vChildren[i] instanceof qx.ui.toolbar.ToolBarPartHandle)){cloneInstance.add(vChildren[i].clone(true))}}};qx.Proto.dispose=function(){if(this.getDisposed()){return};if(this._handle){this._handle.dispose();this._handle=null};return qx.ui.layout.HorizontalBoxLayout.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.toolbar.ToolBarPartHandle",qx.ui.layout.CanvasLayout,function(){qx.ui.layout.CanvasLayout.call(this);var l=new qx.ui.basic.Terminator;l.setAppearance("toolbar-part-handle-line");this.add(l)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"toolbar-part-handle"});qx.OO.defineClass("qx.ui.toolbar.ToolBar",qx.ui.layout.HorizontalBoxLayout,function(){qx.ui.layout.HorizontalBoxLayout.call(this);this.addEventListener(qx.constant.Event.KEYDOWN,this._onkeydown)});qx.OO.addProperty({name:"openMenu",type:qx.constant.Type.OBJECT,instance:"qx.ui.menu.Menu"});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"toolbar"});qx.Proto.getAllButtons=function(){var vChildren=this.getChildren();var vLength=vChildren.length;var vDeepChildren=[];var vCurrent;for(var i=0;i<vLength;i++){vCurrent=vChildren[i];if(vCurrent instanceof qx.ui.toolbar.ToolBarMenuButton){vDeepChildren.push(vCurrent)}else if(vCurrent instanceof qx.ui.toolbar.ToolBarPart){vDeepChildren=vDeepChildren.concat(vCurrent.getChildren())}};return vDeepChildren};qx.Proto._onkeydown=function(e){switch(e.getKeyCode()){case qx.event.type.KeyEvent.keys.left:return this._onkeydown_left(e);case qx.event.type.KeyEvent.keys.right:return this._onkeydown_right(e)}};qx.Proto._onkeydown_left=function(e){var vMenu=this.getOpenMenu();if(!vMenu){return};var vOpener=vMenu.getOpener();if(!vOpener){return};var vChildren=this.getAllButtons();var vChildrenLength=vChildren.length;var vIndex=vChildren.indexOf(vOpener);var vCurrent;var vPrevButton=null;for(var i=vIndex-1;i>=0;i--){vCurrent=vChildren[i];if(vCurrent instanceof qx.ui.toolbar.ToolBarMenuButton&&vCurrent.getEnabled()){vPrevButton=vCurrent;break}};if(!vPrevButton){for(var i=vChildrenLength-1;i>vIndex;i--){vCurrent=vChildren[i];if(vCurrent instanceof qx.ui.toolbar.ToolBarMenuButton&&vCurrent.getEnabled()){vPrevButton=vCurrent;break}}};if(vPrevButton){qx.manager.object.MenuManager.getInstance().update();vPrevButton._showMenu(true)}};qx.Proto._onkeydown_right=function(e){var vMenu=this.getOpenMenu();if(!vMenu){return};var vOpener=vMenu.getOpener();if(!vOpener){return};var vChildren=this.getAllButtons();var vChildrenLength=vChildren.length;var vIndex=vChildren.indexOf(vOpener);var vCurrent;var vNextButton=null;for(var i=vIndex+1;i<vChildrenLength;i++){vCurrent=vChildren[i];if(vCurrent instanceof qx.ui.toolbar.ToolBarMenuButton&&vCurrent.getEnabled()){vNextButton=vCurrent;break}};if(!vNextButton){for(var i=0;i<vIndex;i++){vCurrent=vChildren[i];if(vCurrent instanceof qx.ui.toolbar.ToolBarMenuButton&&vCurrent.getEnabled()){vNextButton=vCurrent;break}}};if(vNextButton){qx.manager.object.MenuManager.getInstance().update();vNextButton._showMenu(true)}};qx.Proto.dispose=function(){if(this.getDisposed()){return};this.removeEventListener(qx.constant.Event.KEYDOWN,this._onkeydown);return qx.ui.layout.HorizontalBoxLayout.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.embed.NodeEmbed",qx.ui.basic.Terminator,function(vId){qx.ui.basic.Terminator.call(this);if(qx.util.Validation.isValidString(vId)){this.setSourceNodeId(vId)}});qx.OO.addProperty({name:"sourceNodeId",type:qx.constant.Type.STRING});qx.Proto._createElementImpl=function(){var vNode=document.getElementById(this.getSourceNodeId());if(!vNode){throw new Error("Could not find source node with ID: "+this.getSourceNodeId())};vNode.style.display=qx.constant.Core.EMPTY;return this.setElement(vNode)};qx.OO.defineClass("qx.client.History",qx.core.Target,function(){qx.core.Target.call(this);this._pageFlag=true});qx.Proto.init=function(){if(this._iframe==null){this._iframe=document.createElement("iframe");this._iframe.style.visibility="hidden";document.body.appendChild(this._iframe)}};qx.Proto.addToHistory=function(command,newTitle){if(command==this._currentCommand){document.title=newTitle}else{if(this._iframe==null){throw new Error("You have to call init first!")};this._pageFlag=!this._pageFlag;this._currentCommand=command;this._newTitle=newTitle;this._iframe.src=this.getSetting("helperFile")+"?c="+command}};qx.Proto._onHistoryLoad=function(location){try{var equalsPos=location.search.indexOf("=");var command=location.search.substring(equalsPos+1);if(this._newTitle){document.title=this._newTitle;this._newTitle=null};if(command!=this._currentCommand){this._currentCommand=command;this.createDispatchDataEvent("request",command)}}catch(exc){this.error("Handling history load failed",exc)};qx.ui.core.Widget.flushGlobalQueues()};qx.Settings.setDefault("helperFile",qx.Settings.getValueOfClass("qx.manager.object.AliasManager","staticUri")+"/history/historyHelper.html");qx.Class.getInstance=qx.util.Return.returnInstance;qx.OO.defineClass("qx.ui.splitpane.SplitPane",qx.ui.layout.CanvasLayout,function(orientation,firstSize,secondSize){qx.ui.layout.CanvasLayout.call(this);var box=this._box=new qx.ui.layout.BoxLayout;box.setEdge(0);this.add(box);var glass=this._glass=new qx.ui.layout.CanvasLayout;glass.setEdge(0);glass.setAppearance("splitpane-glasspane");glass.hide();this.add(glass);this._slider=new qx.ui.layout.CanvasLayout;this._slider.setAppearance("splitpane-slider");this._slider.setStyleProperty("fontSize","0px");this._slider.setStyleProperty("lineHeight","0px");this._slider.hide();this.add(this._slider);this._splitter=new qx.ui.layout.CanvasLayout;this._splitter.setStyleProperty("fontSize","0px");this._splitter.setStyleProperty("lineHeight","0px");this._splitter.setAppearance("splitpane-splitter");this._firstArea=new qx.ui.layout.CanvasLayout;this._secondArea=new qx.ui.layout.CanvasLayout;box.add(this._firstArea,this._splitter,this._secondArea);this.setFirstSize(firstSize||qx.constant.Core.FLEX);this.setSecondSize(secondSize||qx.constant.Core.FLEX);this.setOrientation(orientation||qx.constant.Layout.ORIENTATION_HORIZONTAL)});qx.OO.changeProperty({name:"appearance",defaultValue:"splitpane"});qx.OO.addProperty({name:"liveResize",type:qx.constant.Type.BOOLEAN,allowNull:false,defaultValue:false,getAlias:"isLiveResize"});qx.OO.addProperty({name:"visibleGlassPane",type:qx.constant.Type.BOOLEAN,allowNull:false,defaultValue:false,getAlias:"isVisibleGlassPane"});qx.OO.addProperty({name:"orientation",type:qx.constant.Type.STRING,possibleValues:[qx.constant.Layout.ORIENTATION_HORIZONTAL,qx.constant.Layout.ORIENTATION_VERTICAL]});qx.OO.addProperty({name:"firstSize"});qx.OO.addProperty({name:"secondSize"});qx.OO.addProperty({name:"splitterSize",defaultValue:5});qx.Proto.addLeft=function(){var c=this.getFirstArea();return c.add.apply(c,arguments)};qx.Proto.addTop=function(){var c=this.getFirstArea();return c.add.apply(c,arguments)};qx.Proto.addRight=function(){var c=this.getSecondArea();return c.add.apply(c,arguments)};qx.Proto.addBottom=function(){var c=this.getSecondArea();return c.add.apply(c,arguments)};qx.Proto.getLeftArea=function(){return this.getFirstArea()};qx.Proto.getTopArea=function(){return this.getFirstArea()};qx.Proto.getRightArea=function(){return this.getSecondArea()};qx.Proto.getBottomArea=function(){return this.getSecondArea()};qx.Proto.getFirstArea=function(){return this._firstArea};qx.Proto.getSecondArea=function(){return this._secondArea};qx.Proto._modifyOrientation=function(propValue,propOldValue,propData){this._box.setOrientation(propValue);switch(propOldValue){case qx.constant.Layout.ORIENTATION_HORIZONTAL:this._splitter.removeEventListener(qx.constant.Event.MOUSEDOWN,this._onSplitterMouseDownX,this);this._splitter.removeEventListener(qx.constant.Event.MOUSEMOVE,this._onSplitterMouseMoveX,this);this._splitter.removeEventListener(qx.constant.Event.MOUSEUP,this._onSplitterMouseUpX,this);this._firstArea.setWidth(null);this._secondArea.setWidth(null);this._splitter.setWidth(null);break;case qx.constant.Layout.ORIENTATION_VERTICAL:this._splitter.removeEventListener(qx.constant.Event.MOUSEDOWN,this._onSplitterMouseDownY,this);this._splitter.removeEventListener(qx.constant.Event.MOUSEMOVE,this._onSplitterMouseMoveY,this);this._splitter.removeEventListener(qx.constant.Event.MOUSEUP,this._onSplitterMouseUpY,this);this._firstArea.setHeight(null);this._secondArea.setHeight(null);this._splitter.setHeight(null);break};switch(propValue){case qx.constant.Layout.ORIENTATION_HORIZONTAL:this._splitter.addEventListener(qx.constant.Event.MOUSEMOVE,this._onSplitterMouseMoveX,this);this._splitter.addEventListener(qx.constant.Event.MOUSEDOWN,this._onSplitterMouseDownX,this);this._splitter.addEventListener(qx.constant.Event.MOUSEUP,this._onSplitterMouseUpX,this);this._splitter.setCursor("col-resize");break;case qx.constant.Layout.ORIENTATION_VERTICAL:this._splitter.addEventListener(qx.constant.Event.MOUSEDOWN,this._onSplitterMouseDownY,this);this._splitter.addEventListener(qx.constant.Event.MOUSEMOVE,this._onSplitterMouseMoveY,this);this._splitter.addEventListener(qx.constant.Event.MOUSEUP,this._onSplitterMouseUpY,this);this._splitter.setCursor("row-resize");break};this._syncFirstSize();this._syncSecondSize();this._syncSplitterSize();return true};qx.Proto._modifyVisibleGlassPane=function(propValue,propOldValue,propData){this._glass.setState("visible",propValue);return true};qx.Proto._modifyFirstSize=function(propValue,propOldValue,propData){this._syncFirstSize();return true};qx.Proto._modifySecondSize=function(propValue,propOldValue,propData){this._syncSecondSize();return true};qx.Proto._modifySplitterSize=function(propValue,propOldValue,propData){this._syncSplitterSize();return true};qx.Proto._syncFirstSize=function(){switch(this.getOrientation()){case qx.constant.Layout.ORIENTATION_HORIZONTAL:this._firstArea.setWidth(this.getFirstSize());break;case qx.constant.Layout.ORIENTATION_VERTICAL:this._firstArea.setHeight(this.getFirstSize());break}};qx.Proto._syncSecondSize=function(){switch(this.getOrientation()){case qx.constant.Layout.ORIENTATION_HORIZONTAL:this._secondArea.setWidth(this.getSecondSize());break;case qx.constant.Layout.ORIENTATION_VERTICAL:this._secondArea.setHeight(this.getSecondSize());break}};qx.Proto._syncSplitterSize=function(){switch(this.getOrientation()){case qx.constant.Layout.ORIENTATION_HORIZONTAL:this._splitter.setWidth(this.getSplitterSize());break;case qx.constant.Layout.ORIENTATION_VERTICAL:this._splitter.setHeight(this.getSplitterSize());break}};qx.Proto._onSplitterMouseDownX=function(e){if(!e.isLeftButtonPressed()){return};this._commonMouseDown();this.getTopLevelWidget().setGlobalCursor("col-resize");this._slider.addState("dragging");this._dragMin=qx.dom.DomLocation.getPageInnerLeft(this._box.getElement());this._dragMax=this._dragMin+this._box.getInnerWidth()-this._splitter.getBoxWidth();this._dragOffset=e.getPageX()-qx.dom.DomLocation.getPageBoxLeft(this._splitter.getElement())};qx.Proto._onSplitterMouseDownY=function(e){if(!e.isLeftButtonPressed()){return};this._commonMouseDown();this.getTopLevelWidget().setGlobalCursor("row-resize");this._slider.addState("dragging");this._dragMin=qx.dom.DomLocation.getPageInnerTop(this._box.getElement());this._dragMax=this._dragMin+this._box.getInnerHeight()-this._splitter.getBoxHeight();this._dragOffset=e.getPageY()-qx.dom.DomLocation.getPageBoxTop(this._splitter.getElement())};qx.Proto._commonMouseDown=function(){this._splitter.setCapture(true);this._glass.show();if(!this.isLiveResize()){this._slider.setLeft(this._splitter.getOffsetLeft());this._slider.setTop(this._splitter.getOffsetTop());this._slider.setWidth(this._splitter.getBoxWidth());this._slider.setHeight(this._splitter.getBoxHeight());this._slider.show()}};qx.Proto._onSplitterMouseMoveX=function(e){if(!this._splitter.getCapture()){return};this.isLiveResize()?this._syncX(e):this._slider._applyRuntimeLeft(this._normalizeX(e));e.preventDefault()};qx.Proto._onSplitterMouseMoveY=function(e){if(!this._splitter.getCapture()){return};this.isLiveResize()?this._syncY(e):this._slider._applyRuntimeTop(this._normalizeY(e));e.preventDefault()};qx.Proto._onSplitterMouseUpX=function(e){if(!this._splitter.getCapture()){return};if(!this.isLiveResize()){this._syncX(e)};this._commonMouseUp()};qx.Proto._onSplitterMouseUpY=function(e){if(!this._splitter.getCapture()){return};if(!this.isLiveResize()){this._syncY(e)};this._commonMouseUp()};qx.Proto._commonMouseUp=function(){this._glass.hide();this._slider.hide();this._splitter.setCapture(false);this.getTopLevelWidget().setGlobalCursor(null);this._slider.removeState("dragging")};qx.Proto._syncX=function(e){var first=this._normalizeX(e);var second=this._box.getInnerWidth()-this._splitter.getBoxWidth()-first;this._syncCommon(first,second)};qx.Proto._syncY=function(e){var first=this._normalizeY(e);var second=this._box.getInnerHeight()-this._splitter.getBoxHeight()-first;this._syncCommon(first,second)};qx.Proto._syncCommon=function(first,second){this.setFirstSize(first+qx.constant.Core.STAR);this.setSecondSize(second+qx.constant.Core.STAR)};qx.Proto._normalizeX=function(e){return qx.lang.Number.limit(e.getPageX()-this._dragOffset,this._dragMin,this._dragMax)-this._dragMin};qx.Proto._normalizeY=function(e){return qx.lang.Number.limit(e.getPageY()-this._dragOffset,this._dragMin,this._dragMax)-this._dragMin};qx.Proto.dispose=function(){if(this.getDisposed()){return true};if(this._firstArea){this._firstArea.dispose();this._firstArea=null};if(this._secondArea){this._secondArea.dispose();this._secondArea=null};if(this._splitter){this._splitter.removeEventListener(qx.constant.Event.MOUSEDOWN,this._onSplitterMouseDownX,this);this._splitter.removeEventListener(qx.constant.Event.MOUSEUP,this._onSplitterMouseMoveX,this);this._splitter.removeEventListener(qx.constant.Event.MOUSEMOVE,this._onSplitterMouseUpX,this);this._splitter.removeEventListener(qx.constant.Event.MOUSEDOWN,this._onSplitterMouseDownY,this);this._splitter.removeEventListener(qx.constant.Event.MOUSEUP,this._onSplitterMouseMoveY,this);this._splitter.removeEventListener(qx.constant.Event.MOUSEMOVE,this._onSplitterMouseUpY,this);this._splitter.dispose();this._splitter=null};if(this._slider){this._slider.dispose();this._slider=null};if(this._glass){this._glass.dispose();this._glass=null};return qx.ui.layout.BoxLayout.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.table.DataCellRenderer",qx.core.Object,function(){qx.core.Object.call(this)});qx.Proto.createDataCellHtml=function(cellInfo){throw new Error("createDataCellHtml is abstract")};qx.Proto.updateDataCellElement=function(cellInfo,cellElement){throw new Error("updateDataCellElement is abstract")};qx.Proto.createDataCellHtml_array_join=function(cellInfo,htmlArr){throw new Error("createDataCellHtml_array_join is abstract")};qx.OO.defineClass("qx.ui.table.AbstractDataCellRenderer",qx.ui.table.DataCellRenderer,function(){qx.ui.table.DataCellRenderer.call(this)});qx.Proto.createDataCellHtml=function(cellInfo){var AbstractDataCellRenderer=qx.ui.table.AbstractDataCellRenderer;return AbstractDataCellRenderer.MAIN_DIV_START+this._getCellStyle(cellInfo)+AbstractDataCellRenderer.MAIN_DIV_START_END+this._getContentHtml(cellInfo)+AbstractDataCellRenderer.MAIN_DIV_END};qx.Proto.updateDataCellElement=function(cellInfo,cellElement){cellElement.innerHTML=this._getContentHtml(cellInfo)};qx.Proto._getCellStyle=function(cellInfo){return cellInfo.style+qx.ui.table.AbstractDataCellRenderer.MAIN_DIV_STYLE};qx.Proto._getContentHtml=function(cellInfo){return cellInfo.value};qx.Proto.createDataCellHtml_array_join=function(cellInfo,htmlArr){var AbstractDataCellRenderer=qx.ui.table.AbstractDataCellRenderer;if(qx.ui.table.TablePane.USE_TABLE){htmlArr.push(AbstractDataCellRenderer.TABLE_TD);htmlArr.push(cellInfo.styleHeight);htmlArr.push(qx.constant.Core.PIXEL)}else{htmlArr.push(AbstractDataCellRenderer.ARRAY_JOIN_MAIN_DIV_LEFT);htmlArr.push(cellInfo.styleLeft);htmlArr.push(AbstractDataCellRenderer.ARRAY_JOIN_MAIN_DIV_WIDTH);htmlArr.push(cellInfo.styleWidth);htmlArr.push(AbstractDataCellRenderer.ARRAY_JOIN_MAIN_DIV_HEIGHT);htmlArr.push(cellInfo.styleHeight);htmlArr.push(qx.constant.Core.PIXEL)};this._createCellStyle_array_join(cellInfo,htmlArr);htmlArr.push(AbstractDataCellRenderer.ARRAY_JOIN_MAIN_DIV_START_END);this._createContentHtml_array_join(cellInfo,htmlArr);if(qx.ui.table.TablePane.USE_TABLE){htmlArr.push(AbstractDataCellRenderer.TABLE_TD_END)}else{htmlArr.push(AbstractDataCellRenderer.ARRAY_JOIN_MAIN_DIV_END)}};qx.Proto._createCellStyle_array_join=function(cellInfo,htmlArr){htmlArr.push(qx.ui.table.AbstractDataCellRenderer.MAIN_DIV_STYLE)};qx.Proto._createContentHtml_array_join=function(cellInfo,htmlArr){htmlArr.push(cellInfo.value)};qx.Class.MAIN_DIV_START='<div style="';qx.Class.MAIN_DIV_START_END='">';qx.Class.MAIN_DIV_END='</div>';qx.Class.MAIN_DIV_STYLE=';overflow:hidden;white-space:nowrap;border-right:1px solid #eeeeee;border-bottom:1px solid #eeeeee;padding-left:2px;padding-right:2px;cursor:default'+(qx.sys.Client.getInstance().isMshtml()?'':';-moz-user-select:none;');qx.Class.ARRAY_JOIN_MAIN_DIV_LEFT='<div style="position:absolute;left:';qx.Class.ARRAY_JOIN_MAIN_DIV_WIDTH='px;top:0px;width:';qx.Class.ARRAY_JOIN_MAIN_DIV_HEIGHT='px;height:';qx.Class.ARRAY_JOIN_MAIN_DIV_START_END='">';qx.Class.ARRAY_JOIN_MAIN_DIV_END='</div>';qx.Class.TABLE_TD='<td style="height:';qx.Class.TABLE_TD_END='</td>';qx.OO.defineClass("qx.ui.table.TablePane",qx.ui.basic.Terminator,function(paneScroller){qx.ui.basic.Terminator.call(this);this._paneScroller=paneScroller;this.debug("USE_ARRAY_JOIN:"+qx.ui.table.TablePane.USE_ARRAY_JOIN+", USE_TABLE:"+qx.ui.table.TablePane.USE_TABLE);this._lastColCount=0;this._lastRowCount=0});qx.OO.addProperty({name:"firstVisibleRow",type:qx.constant.Type.NUMBER,defaultValue:0});qx.OO.addProperty({name:"visibleRowCount",type:qx.constant.Type.NUMBER,defaultValue:0});qx.OO.addProperty({name:"highlightFocusRow",type:qx.constant.Type.BOOLEAN,allowNull:false,defaultValue:true});qx.Proto._modifyFirstVisibleRow=function(propValue,propOldValue,propData){this._updateContent();return true};qx.Proto._modifyVisibleRowCount=function(propValue,propOldValue,propData){this._updateContent();return true};qx.Proto._afterAppear=function(){qx.ui.basic.Terminator.prototype._afterAppear.call(this);if(this._updateWantedWhileInvisible){this._updateContent();this._updateWantedWhileInvisible=false}};qx.Proto.getPaneScroller=function(){return this._paneScroller};qx.Proto.getTable=function(){return this._paneScroller.getTable()};qx.Proto.setFocusedCell=function(col,row,massUpdate){if(col!=this._focusedCol||row!=this._focusedRow){var oldCol=this._focusedCol;var oldRow=this._focusedRow;this._focusedCol=col;this._focusedRow=row;if(row!=oldRow&&!massUpdate){this._updateContent(false,oldRow,true);this._updateContent(false,row,true)}}};qx.Proto._onSelectionChanged=function(evt){this._updateContent(false,null,true)};qx.Proto._onColWidthChanged=function(evt){this._updateContent(true)};qx.Proto._onColOrderChanged=function(evt){this._updateContent(true)};qx.Proto._onPaneModelChanged=function(evt){this._updateContent(true)};qx.Proto._onTableModelDataChanged=function(evt){var data=evt.getData?evt.getData():null;var firstRow=this.getFirstVisibleRow();var rowCount=this.getVisibleRowCount();if(data==null||data.lastRow==-1||data.lastRow>=firstRow&&data.firstRow<firstRow+rowCount){this._updateContent()}};qx.Proto._onTableModelMetaDataChanged=function(evt){this._updateContent()};qx.Proto._updateContent=function(completeUpdate,onlyRow,onlySelectionOrFocusChanged){if(!this.isSeeable()){this._updateWantedWhileInvisible=true;return};if(qx.ui.table.TablePane.USE_ARRAY_JOIN){this._updateContent_array_join(completeUpdate,onlyRow,onlySelectionOrFocusChanged)}else{this._updateContent_orig(completeUpdate,onlyRow,onlySelectionOrFocusChanged)}};qx.Proto._updateContent_array_join=function(completeUpdate,onlyRow,onlySelectionOrFocusChanged){var TablePane=qx.ui.table.TablePane;var selectionModel=this.getTable().getSelectionModel();var tableModel=this.getTable().getTableModel();var columnModel=this.getTable().getTableColumnModel();var paneModel=this.getPaneScroller().getTablePaneModel();var colCount=paneModel.getColumnCount();var rowHeight=this.getTable().getRowHeight();var firstRow=this.getFirstVisibleRow();var rowCount=this.getVisibleRowCount();var modelRowCount=tableModel.getRowCount();if(firstRow+rowCount>modelRowCount){rowCount=Math.max(0,modelRowCount-firstRow)};var cellInfo={};cellInfo.styleHeight=rowHeight;var htmlArr=[];var rowWidth=paneModel.getTotalWidth();if(TablePane.USE_TABLE){htmlArr.push(TablePane.TABLE_START);htmlArr.push(rowWidth);htmlArr.push(TablePane.TABLE_COLGROUP);for(var x=0;x<colCount;x++){var col=paneModel.getColumnAtX(x);htmlArr.push(TablePane.TABLE_COL);htmlArr.push(columnModel.getColumnWidth(col));htmlArr.push(TablePane.TABLE_COLEND)};htmlArr.push(TablePane.TABLE_TBODY)};tableModel.prefetchRows(firstRow,firstRow+rowCount-1);for(var y=0;y<rowCount;y++){var row=firstRow+y;cellInfo.row=row;cellInfo.selected=selectionModel.isSelectedIndex(row);cellInfo.focusedRow=(this._focusedRow==row);cellInfo.rowData=tableModel.getRowData(row);if(TablePane.USE_TABLE){htmlArr.push(TablePane.TABLE_TR);htmlArr.push(rowHeight);htmlArr.push(TablePane.TABLE_BGCOLOR)}else{htmlArr.push(TablePane.ARRAY_JOIN_ROW_DIV_START);htmlArr.push(y*rowHeight);htmlArr.push(TablePane.ARRAY_JOIN_ROW_DIV_WIDTH);htmlArr.push(rowWidth);htmlArr.push(TablePane.ARRAY_JOIN_ROW_DIV_HEIGHT);htmlArr.push(rowHeight);htmlArr.push(TablePane.ARRAY_JOIN_ROW_DIV_BG_COLOR)};if(cellInfo.focusedRow&&this.getHighlightFocusRow()){htmlArr.push(cellInfo.selected?TablePane.CONTENT_BGCOL_FOCUSED_SELECTED:TablePane.CONTENT_BGCOL_FOCUSED)}else{htmlArr.push(cellInfo.selected?TablePane.CONTENT_BGCOL_SELECTED:((cellInfo.row%2==0)?TablePane.CONTENT_BGCOL_EVEN:TablePane.CONTENT_BGCOL_ODD))};htmlArr.push(TablePane.ARRAY_JOIN_ROW_DIV_COLOR);htmlArr.push(cellInfo.selected?TablePane.CONTENT_COL_SELECTED:TablePane.CONTENT_COL);htmlArr.push(TablePane.ARRAY_JOIN_ROW_DIV_START_END);var left=0;for(var x=0;x<colCount;x++){var col=paneModel.getColumnAtX(x);cellInfo.xPos=x;cellInfo.col=col;cellInfo.editable=tableModel.isColumnEditable(col);cellInfo.focusedCol=(this._focusedCol==col);cellInfo.value=tableModel.getValue(col,row);var cellWidth=columnModel.getColumnWidth(col);cellInfo.styleLeft=left;cellInfo.styleWidth=cellWidth;var cellRenderer=columnModel.getDataCellRenderer(col);cellRenderer.createDataCellHtml_array_join(cellInfo,htmlArr);left+=cellWidth};if(TablePane.USE_TABLE){htmlArr.push(TablePane.TABLE_TR_END)}else{htmlArr.push(TablePane.ARRAY_JOIN_ROW_DIV_END)}};if(TablePane.USE_TABLE){htmlArr.push(TablePane.TABLE_TBODY_END)};var elem=this.getElement();elem.innerHTML=htmlArr.join(qx.constant.Core.EMPTY);this.setHeight(rowCount*rowHeight);this._lastColCount=colCount;this._lastRowCount=rowCount};qx.Proto._updateContent_orig=function(completeUpdate,onlyRow,onlySelectionOrFocusChanged){var TablePane=qx.ui.table.TablePane;var selectionModel=this.getTable().getSelectionModel();var tableModel=this.getTable().getTableModel();var columnModel=this.getTable().getTableColumnModel();var paneModel=this.getPaneScroller().getTablePaneModel();var colCount=paneModel.getColumnCount();var rowHeight=this.getTable().getRowHeight();var firstRow=this.getFirstVisibleRow();var rowCount=this.getVisibleRowCount();var modelRowCount=tableModel.getRowCount();if(firstRow+rowCount>modelRowCount){rowCount=Math.max(0,modelRowCount-firstRow)};if(completeUpdate||this._lastRowCount>rowCount){var firstRowToRemove=completeUpdate?0:rowCount;this._cleanUpRows(firstRowToRemove)};if(TablePane.USE_TABLE){throw new Error("Combination of USE_TABLE==true and USE_ARRAY_JOIN==false is not yet implemented")};var elem=this.getElement();var childNodes=elem.childNodes;var cellInfo={};tableModel.prefetchRows(firstRow,firstRow+rowCount-1);for(var y=0;y<rowCount;y++){var row=firstRow+y;if((onlyRow!=null)&&(row!=onlyRow)){continue};cellInfo.row=row;cellInfo.selected=selectionModel.isSelectedIndex(row);cellInfo.focusedRow=(this._focusedRow==row);cellInfo.rowData=tableModel.getRowData(row);var rowElem;var recyleRowElem;if(y<childNodes.length){rowElem=childNodes[y];recyleRowElem=true}else{var rowElem=document.createElement(qx.constant.Tags.DIV);rowElem.style.position=qx.constant.Style.POSITION_ABSOLUTE;rowElem.style.left=qx.constant.Core.ZEROPIXEL;rowElem.style.top=(y*rowHeight)+qx.constant.Core.PIXEL;rowElem.style.height=rowHeight+qx.constant.Core.PIXEL;rowElem.style.fontFamily=TablePane.CONTENT_ROW_FONT_FAMILY;rowElem.style.fontSize=TablePane.CONTENT_ROW_FONT_SIZE;elem.appendChild(rowElem);recyleRowElem=false};if(cellInfo.focusedRow&&this.getHighlightFocusRow()){rowElem.style.backgroundColor=cellInfo.selected?TablePane.CONTENT_BGCOL_FOCUSED_SELECTED:TablePane.CONTENT_BGCOL_FOCUSED}else{rowElem.style.backgroundColor=(cellInfo.selected?TablePane.CONTENT_BGCOL_SELECTED:((cellInfo.row%2==0)?TablePane.CONTENT_BGCOL_EVEN:TablePane.CONTENT_BGCOL_ODD))};rowElem.style.color=cellInfo.selected?TablePane.CONTENT_COL_SELECTED:TablePane.CONTENT_COL;if(!recyleRowElem||!onlySelectionOrFocusChanged){var html="";var left=0;for(var x=0;x<colCount;x++){var col=paneModel.getColumnAtX(x);cellInfo.xPos=x;cellInfo.col=col;cellInfo.editable=tableModel.isColumnEditable(col);cellInfo.focusedCol=(this._focusedCol==col);cellInfo.value=tableModel.getValue(col,row);var width=columnModel.getColumnWidth(col);cellInfo.style=TablePane.CONTENT_CELL_STYLE_LEFT+left+TablePane.CONTENT_CELL_STYLE_WIDTH+width+TablePane.CONTENT_CELL_STYLE_HEIGHT+rowHeight+qx.constant.Core.PIXEL;var cellRenderer=columnModel.getDataCellRenderer(col);if(recyleRowElem){var cellElem=rowElem.childNodes[x];cellRenderer.updateDataCellElement(cellInfo,cellElem)}else{html+=cellRenderer.createDataCellHtml(cellInfo)};left+=width};if(!recyleRowElem){rowElem.style.width=left+qx.constant.Core.PIXEL;rowElem.innerHTML=html}}};this.setHeight(rowCount*rowHeight);this._lastColCount=colCount;this._lastRowCount=rowCount};qx.Proto._cleanUpRows=function(firstRowToRemove){var elem=this.getElement();if(elem){var childNodes=this.getElement().childNodes;var paneModel=this.getPaneScroller().getTablePaneModel();var colCount=paneModel.getColumnCount();for(var y=childNodes.length-1;y>=firstRowToRemove;y--){elem.removeChild(childNodes[y])}}};qx.Proto.dispose=function(){if(this.getDisposed()){return true};if(this._selectionModel!=null){this._selectionModel.removeEventListener("selectionChanged",this._onSelectionChanged,this)};if(this._tableModel!=null){this._tableModel.removeEventListener(qx.ui.table.TableModel.EVENT_TYPE_DATA_CHANGED,this._onTableModelDataChanged,this);this._tableModel.removeEventListener(qx.ui.table.TableModel.EVENT_TYPE_META_DATA_CHANGED,this._onTableModelMetaDataChanged,this)};if(this._tableColumnModel!=null){this._tableColumnModel.removeEventListener("widthChanged",this._onWidthChanged,this);this._tableColumnModel.removeEventListener("orderChanged",this._onColOrderChanged,this)};if(this._tablePaneModel!=null){this._tablePaneModel.removeEventListener(qx.ui.table.TablePaneModel.EVENT_TYPE_MODEL_CHANGED,this._onPaneModelChanged,this)};this._cleanUpRows(0);return qx.ui.basic.Terminator.prototype.dispose.call(this)};qx.Class.USE_ARRAY_JOIN=false;qx.Class.USE_TABLE=false;qx.Class.ARRAY_JOIN_ROW_DIV_START='<div style="position:absolute;font-family:\'Segoe UI\', Corbel, Calibri, Tahoma, \'Lucida Sans Unicode\', sans-serif;font-size:11px;left:0px;top:';qx.Class.ARRAY_JOIN_ROW_DIV_WIDTH='px;width:';qx.Class.ARRAY_JOIN_ROW_DIV_HEIGHT='px;height:';qx.Class.ARRAY_JOIN_ROW_DIV_BG_COLOR='px;background-color:';qx.Class.ARRAY_JOIN_ROW_DIV_COLOR=';color:';qx.Class.ARRAY_JOIN_ROW_DIV_START_END='">';qx.Class.ARRAY_JOIN_ROW_DIV_END='</div>';qx.Class.CONTENT_ROW_FONT_FAMILY='"Segoe UI", Corbel, Calibri, Tahoma, "Lucida Sans Unicode", sans-serif';qx.Class.CONTENT_ROW_FONT_SIZE="11px";qx.Class.CONTENT_BGCOL_FOCUSED_SELECTED="#5a8ad3";qx.Class.CONTENT_BGCOL_FOCUSED="#ddeeff";qx.Class.CONTENT_BGCOL_SELECTED="#335ea8";qx.Class.CONTENT_BGCOL_EVEN="#faf8f3";qx.Class.CONTENT_BGCOL_ODD="white";qx.Class.CONTENT_COL_SELECTED="white";qx.Class.CONTENT_COL="black";qx.Class.CONTENT_CELL_STYLE_LEFT='position:absolute;left:';qx.Class.CONTENT_CELL_STYLE_WIDTH='px;top:0px;width:';qx.Class.CONTENT_CELL_STYLE_HEIGHT='px; height:';qx.Class.TABLE_START='<table cellspacing="0" cellpadding="0" style="table-layout:fixed;font-family:\'Segoe UI\', Corbel, Calibri, Tahoma, \'Lucida Sans Unicode\', sans-serif;font-size:11px;width:';qx.Class.TABLE_COLGROUP='px"><colgroup>';qx.Class.TABLE_COL='<col width="';qx.Class.TABLE_COLEND='"/>';qx.Class.TABLE_TBODY='</colgroup><tbody>';qx.Class.TABLE_TR='<tr style="height:';qx.Class.TABLE_BGCOLOR='px;background-color:';qx.Class.TABLE_TR_END="</tr>";qx.Class.TABLE_TBODY_END='</tbody></table>';qx.OO.defineClass("qx.ui.table.TablePaneModel",qx.core.Target,function(tableColumnModel){qx.core.Target.call(this);tableColumnModel.addEventListener("visibilityChangedPre",this._onColVisibilityChanged,this);this._tableColumnModel=tableColumnModel});qx.OO.addProperty({name:"firstColumnX",type:qx.constant.Type.NUMBER,defaultValue:0});qx.OO.addProperty({name:"maxColumnCount",type:qx.constant.Type.NUMBER,defaultValue:-1});qx.Proto._modifyFirstColumnX=function(propValue,propOldValue,propData){this._columnCount=null;this.createDispatchEvent(qx.ui.table.TablePaneModel.EVENT_TYPE_MODEL_CHANGED);return true};qx.Proto._modifyMaxColumnCount=function(propValue,propOldValue,propData){this._columnCount=null;this.createDispatchEvent(qx.ui.table.TablePaneModel.EVENT_TYPE_MODEL_CHANGED);return true};qx.Proto._onColVisibilityChanged=function(evt){this._columnCount=null;this.createDispatchEvent(qx.ui.table.TablePaneModel.EVENT_TYPE_MODEL_CHANGED)};qx.Proto.getColumnCount=function(){if(this._columnCount==null){var firstX=this.getFirstColumnX();var maxColCount=this.getMaxColumnCount();var totalColCount=this._tableColumnModel.getVisibleColumnCount();if(maxColCount==-1||(firstX+maxColCount)>totalColCount){this._columnCount=totalColCount-firstX}else{this._columnCount=maxColCount}};return this._columnCount};qx.Proto.getColumnAtX=function(xPos){var firstX=this.getFirstColumnX();return this._tableColumnModel.getVisibleColumnAtX(firstX+xPos)};qx.Proto.getX=function(col){var firstX=this.getFirstColumnX();var maxColCount=this.getMaxColumnCount();var x=this._tableColumnModel.getVisibleX(col)-firstX;if(x>=0&&(maxColCount==-1||x<maxColCount)){return x}else{return -1}};qx.Proto.getColumnLeft=function(col){var left=0;var colCount=this.getColumnCount();for(var x=0;x<colCount;x++){var currCol=this.getColumnAtX(x);if(currCol==col){return left};left+=this._tableColumnModel.getColumnWidth(currCol)};return -1};qx.Proto.getTotalWidth=function(){var totalWidth=0;var colCount=this.getColumnCount();for(var x=0;x<colCount;x++){var col=this.getColumnAtX(x);totalWidth+=this._tableColumnModel.getColumnWidth(col)};return totalWidth};qx.Class.EVENT_TYPE_MODEL_CHANGED="modelChanged";qx.OO.defineClass("qx.util.format.Format",qx.core.Object,function(){qx.core.Object.call(this)});qx.Proto.format=function(obj){throw new Error("format is abstract")};qx.Proto.parse=function(str){throw new Error("parse is abstract")};qx.OO.defineClass("qx.util.format.NumberFormat",qx.util.format.Format,function(){qx.util.format.Format.call(this)});qx.OO.addProperty({name:"minimumIntegerDigits",type:qx.constant.Type.NUMBER,defaultValue:0,allowNull:false});qx.OO.addProperty({name:"maximumIntegerDigits",type:qx.constant.Type.NUMBER,defaultValue:null});qx.OO.addProperty({name:"minimumFractionDigits",type:qx.constant.Type.NUMBER,defaultValue:0,allowNull:false});qx.OO.addProperty({name:"maximumFractionDigits",type:qx.constant.Type.NUMBER,defaultValue:null});qx.OO.addProperty({name:"groupingUsed",type:qx.constant.Type.BOOLEAN,defaultValue:true,allowNull:false});qx.OO.addProperty({name:"prefix",type:qx.constant.Type.STRING,defaultValue:"",allowNull:false});qx.OO.addProperty({name:"postfix",type:qx.constant.Type.STRING,defaultValue:"",allowNull:false});qx.Proto.format=function(num){var NumberFormat=qx.util.format.NumberFormat;var negative=(num<0);if(negative){num=-num};if(this.getMaximumFractionDigits()!=null){var mover=Math.pow(10,this.getMaximumFractionDigits());num=Math.round(num*mover)/mover};var integerDigits=Math.max(parseInt(Math.log(num+1)/Math.LN10)+1,1);var numStr=""+num;var integerStr=numStr.substring(0,integerDigits);while(integerStr.length<this.getMinimumIntegerDigits()){integerStr="0"+integerStr};if(this.getMaximumIntegerDigits()!=null&&integerStr.length>this.getMaximumIntegerDigits()){integerStr=integerStr.substring(integerStr.length-this.getMaximumIntegerDigits())};var fractionStr=numStr.substring(integerDigits+1);while(fractionStr.length<this.getMinimumFractionDigits()){fractionStr+="0"};if(this.getMaximumFractionDigits()!=-1&&fractionStr.length>this.getMaximumFractionDigits()){fractionStr=fractionStr.substring(0,this.getMaximumFractionDigits())};if(this.getGroupingUsed()){var origIntegerStr=integerStr;integerStr="";var groupPos;for(groupPos=origIntegerStr.length;groupPos>3;groupPos-=3){integerStr=NumberFormat.GROUPING_SEPARATOR+origIntegerStr.substring(groupPos-3,groupPos)+integerStr};integerStr=origIntegerStr.substring(0,groupPos)+integerStr};var prefix=this.getPrefix()?this.getPrefix():"";var postfix=this.getPostfix()?this.getPostfix():"";var str=prefix+(negative?"-":"")+integerStr;if(fractionStr.length>0){str+=NumberFormat.DECIMAL_SEPARATOR+fractionStr};str+=postfix;return str};qx.Proto.parse=function(str){var NumberFormat=qx.util.format.NumberFormat;var LangUtils=com.ptvag.webcomponent.common.LangUtils;var regex=new RegExp(qx.lang.String.escapeRegexpChars(this.getPrefix())+'(-)?([0-9'+NumberFormat.GROUPING_SEPARATOR+']+)'+'('+NumberFormat.DECIMAL_SEPARATOR+'\\d+)?'+qx.lang.String.escapeRegexpChars(this.getPostfix()));var hit=regex.exec(str);if(hit==null){throw "Number string '"+str+"' does not match the number format"};var negative=(hit[1]=="-");var integerStr=hit[2];var fractionStr=hit[3];integerStr=integerStr.replace(new RegExp(NumberFormat.GROUPING_SEPARATOR),"");var asStr=(negative?"-":"")+integerStr;if(fractionStr!=null&&fractionStr.length!=0){asStr+="."+fractionStr};return parseFloat(asStr)};qx.Class.getInstance=function(){var NumberFormat=qx.util.format.NumberFormat;if(NumberFormat._instance==null){NumberFormat._instance=new NumberFormat()};return NumberFormat._instance};qx.Class.getIntegerInstance=function(){var NumberFormat=qx.util.format.NumberFormat;if(NumberFormat._integerInstance==null){NumberFormat._integerInstance=new NumberFormat();NumberFormat._integerInstance.setMaximumFractionDigits(0)};return NumberFormat._integerInstance};qx.Class.DECIMAL_SEPARATOR=".";qx.Class.GROUPING_SEPARATOR=",";qx.OO.defineClass("qx.ui.table.DefaultDataCellRenderer",qx.ui.table.AbstractDataCellRenderer,function(){qx.ui.table.AbstractDataCellRenderer.call(this)});qx.OO.addProperty({name:"useAutoAlign",type:qx.constant.Type.BOOLEAN,defaultValue:true,allowNull:false});qx.Proto._getCellStyle=function(cellInfo){var style=qx.ui.table.AbstractDataCellRenderer.prototype._getCellStyle(cellInfo);var stylesToApply=this._getStyleFlags(cellInfo);if(stylesToApply&qx.ui.table.DefaultDataCellRenderer.STYLEFLAG_ALIGN_RIGHT){style+=qx.ui.table.DefaultDataCellRenderer.INTERNAL_STYLE_ALIGN_RIGHT};if(stylesToApply&qx.ui.table.DefaultDataCellRenderer.STYLEFLAG_BOLD){style+=qx.ui.table.DefaultDataCellRenderer.INTERNAL_STYLE_BOLD};if(stylesToApply&qx.ui.table.DefaultDataCellRenderer.STYLEFLAG_ITALIC){style+=qx.ui.table.DefaultDataCellRenderer.INTERNAL_STYLE_ITALIC};return style};qx.Proto._getStyleFlags=function(cellInfo){if(this.getUseAutoAlign()){if(typeof cellInfo.value==qx.constant.Type.NUMBER){return qx.ui.table.DefaultDataCellRenderer.STYLEFLAG_ALIGN_RIGHT}}};qx.Proto._getContentHtml=function(cellInfo){return qx.ui.table.DefaultDataCellRenderer.escapeHtml(this._formatValue(cellInfo))};qx.Proto.updateDataCellElement=function(cellInfo,cellElement){var style=qx.ui.table.AbstractDataCellRenderer.prototype._getCellStyle(cellInfo);var stylesToApply=this._getStyleFlags(cellInfo);if(stylesToApply&qx.ui.table.DefaultDataCellRenderer.STYLEFLAG_ALIGN_RIGHT){cellElement.style.textAlign="right"}else{cellElement.style.textAlign=""};if(stylesToApply&qx.ui.table.DefaultDataCellRenderer.STYLEFLAG_BOLD){cellElement.style.fontWeight="bold"}else{cellElement.style.fontWeight=""};if(stylesToApply&qx.ui.table.DefaultDataCellRenderer.STYLEFLAG_ITALIC){cellElement.style.fontStyle="ital"}else{cellElement.style.fontStyle=""};var textNode=cellElement.firstChild;if(textNode!=null){textNode.nodeValue=this._formatValue(cellInfo)}else{cellElement.innerHTML=qx.ui.table.DefaultDataCellRenderer.escapeHtml(this._formatValue(cellInfo))}};qx.Proto._formatValue=function(cellInfo){var value=cellInfo.value;if(value==null){return ""}else if(typeof value==qx.constant.Type.NUMBER){return qx.ui.table.DefaultDataCellRenderer._numberFormat.format(value)}else if(value instanceof Date){return qx.util.format.DateFormat.getDateInstance().format(value)}else{return value}};qx.Proto._createCellStyle_array_join=function(cellInfo,htmlArr){qx.ui.table.AbstractDataCellRenderer.prototype._createCellStyle_array_join(cellInfo,htmlArr);var stylesToApply=this._getStyleFlags(cellInfo);if(stylesToApply&qx.ui.table.DefaultDataCellRenderer.STYLEFLAG_ALIGN_RIGHT){htmlArr.push(qx.ui.table.DefaultDataCellRenderer.INTERNAL_STYLE_ALIGN_RIGHT)};if(stylesToApply&qx.ui.table.DefaultDataCellRenderer.STYLEFLAG_BOLD){htmlArr.push(qx.ui.table.DefaultDataCellRenderer.INTERNAL_STYLE_BOLD)};if(stylesToApply&qx.ui.table.DefaultDataCellRenderer.STYLEFLAG_ITALIC){htmlArr.push(qx.ui.table.DefaultDataCellRenderer.INTERNAL_STYLE_ITALIC)}};qx.Proto._createContentHtml_array_join=function(cellInfo,htmlArr){htmlArr.push(qx.ui.table.DefaultDataCellRenderer.escapeHtml(this._formatValue(cellInfo)))};qx.Class.escapeHtml=function(html){return html.replace(/[<>&]/gi,qx.ui.table.DefaultDataCellRenderer._escapeHtmlReplacer)};qx.Class._escapeHtmlReplacer=function(str){switch(str){case "<":return "&lt;";case ">":return "&gt;";case "&":return "&amp;"}};qx.Class._numberFormat=new qx.util.format.NumberFormat();qx.Class._numberFormat.setMaximumFractionDigits(2);qx.Class.INTERNAL_STYLE_ALIGN_RIGHT=';text-align:right';qx.Class.INTERNAL_STYLE_BOLD=';font-weight:bold';qx.Class.INTERNAL_STYLE_ITALIC=';font-style:italic';qx.Class.STYLEFLAG_ALIGN_RIGHT=1;qx.Class.STYLEFLAG_BOLD=2;qx.Class.STYLEFLAG_ITALIC=4;qx.OO.defineClass("qx.util.format.DateFormat",qx.util.format.Format,function(format){qx.util.format.Format.call(this);this._format=(format!=null)?format:qx.util.format.DateFormat.DEFAULT_DATE_TIME_FORMAT});qx.Proto._fillNumber=function(number,minSize){var str=""+number;while(str.length<minSize){str="0"+str};return str};qx.Proto._getDayInYear=function(date){var helpDate=new Date(date.getTime());var day=helpDate.getDate();while(helpDate.getMonth()!=0){helpDate.setDate(-1);day+=helpDate.getDate()+1};return day};qx.Proto._thursdayOfSameWeek=function(date){return new Date(date.getTime()+(3-((date.getDay()+6)%7))*86400000)};qx.Proto._getWeekInYear=function(date){var thursdayDate=this._thursdayOfSameWeek(date);var weekYear=thursdayDate.getFullYear();var thursdayWeek1=this._thursdayOfSameWeek(new Date(weekYear,0,4));return Math.floor(1.5+(thursdayDate.getTime()-thursdayWeek1.getTime())/86400000/7)};qx.Proto.format=function(date){var DateFormat=qx.util.format.DateFormat;var fullYear=date.getFullYear();var month=date.getMonth();var dayOfMonth=date.getDate();var dayOfWeek=date.getDay();var hours=date.getHours();var minutes=date.getMinutes();var seconds=date.getSeconds();var ms=date.getMilliseconds();var timezone=date.getTimezoneOffset()/60;this._initFormatTree();var output="";for(var i=0;i<this._formatTree.length;i++){var currAtom=this._formatTree[i];if(currAtom.type=="literal"){output+=currAtom.text}else{var wildcardChar=currAtom.character;var wildcardSize=currAtom.size;var replacement="?";switch(wildcardChar){case 'y':if(wildcardSize==2){replacement=this._fillNumber(fullYear%100,2)}else if(wildcardSize==4){replacement=fullYear};break;case 'D':replacement=this._fillNumber(this._getDayInYear(date),wildcardSize);break;case 'd':replacement=this._fillNumber(dayOfMonth,wildcardSize);break;case 'w':replacement=this._fillNumber(this._getWeekInYear(date),wildcardSize);break;case 'E':if(wildcardSize==2){replacement=DateFormat.SHORT_DAY_OF_WEEK_NAMES[dayOfWeek]}else if(wildcardSize==3){replacement=DateFormat.MEDIUM_DAY_OF_WEEK_NAMES[dayOfWeek]}else if(wildcardSize==4){replacement=DateFormat.FULL_DAY_OF_WEEK_NAMES[dayOfWeek]};break;case 'M':if(wildcardSize==1||wildcardSize==2){replacement=this._fillNumber(month+1,wildcardSize)}else if(wildcardSize==3){replacement=DateFormat.SHORT_MONTH_NAMES[month]}else if(wildcardSize==4){replacement=DateFormat.FULL_MONTH_NAMES[month]};break;case 'a':replacement=(hours<12)?DateFormat.AM_MARKER:DateFormat.PM_MARKER;break;case 'H':replacement=this._fillNumber(hours,wildcardSize);break;case 'k':replacement=this._fillNumber((hours==0)?24:hours,wildcardSize);break;case 'K':replacement=this._fillNumber(hours%12,wildcardSize);break;case 'h':replacement=this._fillNumber(((hours%12)==0)?12:(hours%12),wildcardSize);break;case 'm':replacement=this._fillNumber(minutes,wildcardSize);break;case 's':replacement=this._fillNumber(seconds,wildcardSize);break;case 'S':replacement=this._fillNumber(ms,wildcardSize);break;case 'z':if(wildcardSize==1){replacement="GMT"+((timezone<0)?"-":"+")+this._fillNumber(timezone)+":00"}else if(wildcardSize==2){replacement=DateFormat.MEDIUM_TIMEZONE_NAMES[timezone]}else if(wildcardSize==3){replacement=DateFormat.FULL_TIMEZONE_NAMES[timezone]};break;case 'Z':replacement=((timezone<0)?"-":"+")+this._fillNumber(timezone,2)+"00"};output+=replacement}};return output};qx.Proto.parse=function(dateStr){this._initParseFeed();var hit=this._parseFeed.regex.exec(dateStr);if(hit==null){throw "Date string '"+dateStr+"' does not match the date format: "+this._format};var dateValues={year:1970,month:0,day:1,hour:0,ispm:false,min:0,sec:0,ms:0};var currGroup=1;for(var i=0;i<this._parseFeed.usedRules.length;i++){var rule=this._parseFeed.usedRules[i];var value=hit[currGroup];if(rule.field!=null){dateValues[rule.field]=parseInt(value,10)}else{rule.manipulator(dateValues,value)};currGroup+=(rule.groups==null)?1:rule.groups};var date=new Date(dateValues.year,dateValues.month,dateValues.day,(dateValues.ispm)?(dateValues.hour+12):dateValues.hour,dateValues.min,dateValues.sec,dateValues.ms);if(dateValues.month!=date.getMonth()||dateValues.year!=date.getFullYear()){throw "Error parsing date '"+dateStr+"': the value for day or month is too large"};return date};qx.Proto._initFormatTree=function(){if(this._formatTree!=null){return};this._formatTree=[];var currWildcardChar;var currWildcardSize;var currLiteral="";var format=this._format;for(var i=0;i<format.length;i++){var currChar=format.charAt(i);if(currWildcardChar!=null){if(currChar==currWildcardChar){currWildcardSize++}else{this._formatTree.push({type:"wildcard",character:currWildcardChar,size:currWildcardSize});currWildcardChar=null}};if(currWildcardChar==null){if((currChar>='a'&&currChar<='z')||(currChar>='A'&&currChar<='Z')){if(currLiteral.length>0){this._formatTree.push({type:"literal",text:currLiteral});currLiteral=""};currWildcardChar=currChar;currWildcardSize=1}else{currLiteral+=currChar}}};if(currWildcardChar!=null){this._formatTree.push({type:"wildcard",character:currWildcardChar,size:currWildcardSize})}else if(currLiteral.length>0){this._formatTree.push({type:"literal",text:currLiteral})}};qx.Proto._initParseFeed=function(){if(this._parseFeed!=null){return };var DateFormat=qx.util.format.DateFormat;this._initParseRules();this._initFormatTree();var usedRules=[];var pattern="^";for(var atomIdx=0;atomIdx<this._formatTree.length;atomIdx++){var currAtom=this._formatTree[atomIdx];if(currAtom.type=="literal"){pattern+=qx.lang.String.escapeRegexpChars(currAtom.text)}else{var wildcardChar=currAtom.character;var wildcardSize=currAtom.size;var wildcardRule;for(var ruleIdx=0;ruleIdx<DateFormat._parseRules.length;ruleIdx++){var rule=DateFormat._parseRules[ruleIdx];if(wildcardChar==rule.pattern.charAt(0)&&wildcardSize==rule.pattern.length){wildcardRule=rule;break}};if(wildcardRule==null){var wildcardStr="";for(var i=0;i<wildcardSize;i++){wildcardStr+=wildcardChar};throw "Malformed date format: "+format+". Wildcard "+wildcardStr+" is not supported"}else{usedRules.push(wildcardRule);pattern+=wildcardRule.regex}}};pattern+="$";var regex;try{regex=new RegExp(pattern)}catch(exc){throw "Malformed date format: "+format};this._parseFeed={regex:regex,"usedRules":usedRules,pattern:pattern}};qx.Proto._initParseRules=function(){var DateFormat=qx.util.format.DateFormat;if(DateFormat._parseRules!=null){return };DateFormat._parseRules=[];var yearManipulator=function(dateValues,value){value=parseInt(value,10);if(value<DateFormat.ASSUME_YEAR_2000_THRESHOLD){value+=2000}else if(value<100){value+=1900};dateValues.year=value};var monthManipulator=function(dateValues,value){dateValues.month=parseInt(value,10)-1};var ampmManipulator=function(dateValues,value){dateValues.ispm=(value==DateFormat.PM_MARKER)};var noZeroHourManipulator=function(dateValues,value){dateValues.hour=parseInt(value,10)%24};var noZeroAmPmHourManipulator=function(dateValues,value){dateValues.hour=parseInt(value,10)%12};DateFormat._parseRules.push({pattern:"yyyy",regex:"(\\d\\d(\\d\\d)?)",groups:2,manipulator:yearManipulator});DateFormat._parseRules.push({pattern:"yy",regex:"(\\d\\d)",manipulator:yearManipulator});DateFormat._parseRules.push({pattern:"MM",regex:"(\\d\\d?)",manipulator:monthManipulator});DateFormat._parseRules.push({pattern:"dd",regex:"(\\d\\d?)",field:"day"});DateFormat._parseRules.push({pattern:"d",regex:"(\\d\\d?)",field:"day"});DateFormat._parseRules.push({pattern:"a",regex:"("+DateFormat.AM_MARKER+"|"+DateFormat.PM_MARKER+")",manipulator:ampmManipulator});DateFormat._parseRules.push({pattern:"HH",regex:"(\\d\\d?)",field:"hour"});DateFormat._parseRules.push({pattern:"H",regex:"(\\d\\d?)",field:"hour"});DateFormat._parseRules.push({pattern:"kk",regex:"(\\d\\d?)",manipulator:noZeroHourManipulator});DateFormat._parseRules.push({pattern:"k",regex:"(\\d\\d?)",manipulator:noZeroHourManipulator});DateFormat._parseRules.push({pattern:"KK",regex:"(\\d\\d?)",field:"hour"});DateFormat._parseRules.push({pattern:"K",regex:"(\\d\\d?)",field:"hour"});DateFormat._parseRules.push({pattern:"hh",regex:"(\\d\\d?)",manipulator:noZeroAmPmHourManipulator});DateFormat._parseRules.push({pattern:"h",regex:"(\\d\\d?)",manipulator:noZeroAmPmHourManipulator});DateFormat._parseRules.push({pattern:"mm",regex:"(\\d\\d?)",field:"min"});DateFormat._parseRules.push({pattern:"m",regex:"(\\d\\d?)",field:"min"});DateFormat._parseRules.push({pattern:"ss",regex:"(\\d\\d?)",field:"sec"});DateFormat._parseRules.push({pattern:"s",regex:"(\\d\\d?)",field:"sec"});DateFormat._parseRules.push({pattern:"SSS",regex:"(\\d\\d?\\d?)",field:"ms"});DateFormat._parseRules.push({pattern:"SS",regex:"(\\d\\d?\\d?)",field:"ms"});DateFormat._parseRules.push({pattern:"S",regex:"(\\d\\d?\\d?)",field:"ms"})};qx.Class.getDateTimeInstance=function(){var DateFormat=qx.util.format.DateFormat;if(DateFormat._dateTimeInstance==null){DateFormat._dateTimeInstance=new DateFormat()};return DateFormat._dateTimeInstance};qx.Class.getDateInstance=function(){var DateFormat=qx.util.format.DateFormat;if(DateFormat._dateInstance==null){DateFormat._dateInstance=new DateFormat(DateFormat.DEFAULT_DATE_FORMAT)};return DateFormat._dateInstance};qx.Class.ASSUME_YEAR_2000_THRESHOLD=30;qx.Class.SHORT_DATE_FORMAT="MM/dd/yyyy";qx.Class.MEDIUM_DATE_FORMAT="MMM dd, yyyy";qx.Class.LONG_DATE_FORMAT="MMMM dd, yyyy";qx.Class.FULL_DATE_FORMAT="EEEE, MMMM dd, yyyy";qx.Class.SHORT_TIME_FORMAT="HH:mm";qx.Class.MEDIUM_TIME_FORMAT=qx.util.format.DateFormat.SHORT_TIME_FORMAT;qx.Class.LONG_TIME_FORMAT="HH:mm:ss";qx.Class.FULL_TIME_FORMAT="HH:mm:ss zz";qx.Class.SHORT_DATE_TIME_FORMAT=qx.util.format.DateFormat.SHORT_DATE_FORMAT+" "+qx.util.format.DateFormat.SHORT_TIME_FORMAT;qx.Class.MEDIUM_DATE_TIME_FORMAT=qx.util.format.DateFormat.MEDIUM_DATE_FORMAT+" "+qx.util.format.DateFormat.MEDIUM_TIME_FORMAT;qx.Class.LONG_DATE_TIME_FORMAT=qx.util.format.DateFormat.LONG_DATE_FORMAT+" "+qx.util.format.DateFormat.LONG_TIME_FORMAT;qx.Class.FULL_DATE_TIME_FORMAT=qx.util.format.DateFormat.FULL_DATE_FORMAT+" "+qx.util.format.DateFormat.FULL_TIME_FORMAT;qx.Class.LOGGING_DATE_TIME_FORMAT="yyyy-MM-dd HH:mm:ss";qx.Class.DEFAULT_DATE_TIME_FORMAT=qx.util.format.DateFormat.LOGGING_DATE_TIME_FORMAT;qx.Class.DEFAULT_DATE_FORMAT=qx.util.format.DateFormat.SHORT_DATE_FORMAT;qx.Class.AM_MARKER="am";qx.Class.PM_MARKER="pm";qx.Class.FULL_MONTH_NAMES=["January","February","March","April","May","June","July","August","September","October","November","December"];qx.Class.SHORT_MONTH_NAMES=["Jan","Feb","Mar","Apr","Mai","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];qx.Class.SHORT_DAY_OF_WEEK_NAMES=["Su","Mo","Tu","We","Th","Fr","Sa"];qx.Class.MEDIUM_DAY_OF_WEEK_NAMES=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"];qx.Class.FULL_DAY_OF_WEEK_NAMES=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];qx.Class.MEDIUM_TIMEZONE_NAMES=["GMT"];qx.Class.FULL_TIMEZONE_NAMES=["Greenwich Mean Time"];qx.OO.defineClass("qx.ui.table.HeaderCellRenderer",qx.core.Object,function(){qx.core.Object.call(this)});qx.Proto.createHeaderCell=function(cellInfo){throw new Error("createHeaderCell is abstract")};qx.Proto.updateHeaderCell=function(cellInfo,cellWidget){throw new Error("updateHeaderCell is abstract")};qx.OO.defineClass("qx.ui.table.DefaultHeaderCellRenderer",qx.ui.table.HeaderCellRenderer,function(){qx.ui.table.HeaderCellRenderer.call(this)});qx.Proto.createHeaderCell=function(cellInfo){var widget=new qx.ui.basic.Atom();widget.setAppearance("table-header-cell");this.updateHeaderCell(cellInfo,widget);return widget};qx.Proto.updateHeaderCell=function(cellInfo,cellWidget){var DefaultHeaderCellRenderer=qx.ui.table.DefaultHeaderCellRenderer;cellWidget.setLabel(cellInfo.name);cellWidget.setIcon(cellInfo.sorted?(cellInfo.sortedAscending?"widget/table/ascending.png":"widget/table/descending.png"):null);cellWidget.setState(DefaultHeaderCellRenderer.STATE_SORTED,cellInfo.sorted);cellWidget.setState(DefaultHeaderCellRenderer.STATE_SORTED_ASCENDING,cellInfo.sortedAscending)};qx.Class.STATE_SORTED="sorted";qx.Class.STATE_SORTED_ASCENDING="sortedAscending";qx.OO.defineClass("qx.ui.table.CellEditorFactory",qx.core.Object,function(){qx.core.Object.call(this)});qx.Proto.createCellEditor=function(cellInfo){throw new Error("createCellEditor is abstract")};qx.Proto.getCellEditorValue=function(cellEditor){throw new Error("getCellEditorValue is abstract")};qx.OO.defineClass("qx.ui.table.TextFieldCellEditorFactory",qx.ui.table.CellEditorFactory,function(){qx.ui.table.CellEditorFactory.call(this)});qx.Proto.createCellEditor=function(cellInfo){var cellEditor=new qx.ui.form.TextField;cellEditor.setAppearance("table-editor-textfield");cellEditor.originalValue=cellInfo.value;cellEditor.setValue(""+cellInfo.value);cellEditor.addEventListener(qx.constant.Event.APPEAR,function(){this.selectAll()});return cellEditor};qx.Proto.getCellEditorValue=function(cellEditor){var value=cellEditor.getElement().value;if(typeof cellEditor.originalValue=="number"){value=parseFloat(value)};return value};qx.OO.defineClass("qx.ui.form.TextField",qx.ui.basic.Terminator,function(vValue){qx.ui.basic.Terminator.call(this);if(typeof vValue===qx.constant.Type.STRING){this.setValue(vValue)};this.setTagName("INPUT");this.setHtmlProperty("type","text");this.setHtmlAttribute("autocomplete","OFF");this.setTabIndex(1);this.setSelectable(true);this.enableInlineEvent(qx.constant.Event.INPUT);this.addEventListener(qx.constant.Event.BLUR,this._onblur);this.addEventListener(qx.constant.Event.FOCUS,this._onfocus)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"text-field"});qx.OO.addProperty({name:"value",type:qx.constant.Type.STRING,defaultValue:qx.constant.Core.EMPTY});qx.OO.addProperty({name:"maxLength",type:qx.constant.Type.NUMBER});qx.OO.addProperty({name:"readOnly",type:qx.constant.Type.BOOLEAN});qx.OO.addProperty({name:"selectionStart",type:qx.constant.Type.NUMBER});qx.OO.addProperty({name:"selectionLength",type:qx.constant.Type.NUMBER});qx.OO.addProperty({name:"selectionText",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"validator",type:qx.constant.Type.FUNCTION});qx.OO.addProperty({name:"font",type:qx.constant.Type.OBJECT,instance:"qx.renderer.font.Font",convert:qx.renderer.font.FontCache,allowMultipleArguments:true});qx.Proto._clonePropertyIgnoreList+=",selectionStart,selectionLength,selectionText";qx.Proto._modifyEnabled=function(propValue,propOldValue,propData){propValue?this.removeHtmlAttribute(qx.constant.Core.DISABLED):this.setHtmlAttribute(qx.constant.Core.DISABLED,qx.constant.Core.DISABLED);return qx.ui.basic.Terminator.prototype._modifyEnabled.call(this,propValue,propOldValue,propData)};qx.Proto._modifyValue=function(propValue,propOldValue,propData){this._inValueProperty=true;this.setHtmlProperty(propData.name,propValue==null?qx.constant.Core.EMPTY:propValue);delete this._inValueProperty;return true};qx.Proto._modifyMaxLength=function(propValue,propOldValue,propData){return propValue?this.setHtmlProperty(propData.name,propValue):this.removeHtmlProperty(propData.name)};qx.Proto._modifyReadOnly=function(propValue,propOldValue,propData){return propValue?this.setHtmlProperty(propData.name,propData.name):this.removeHtmlProperty(propData.name)};qx.Proto._modifyFont=function(propValue,propOldValue,propData){this._invalidatePreferredInnerDimensions();if(propValue){propValue._applyWidget(this)}else if(propOldValue){propOldValue._resetWidget(this)};return true};qx.Proto.getComputedValue=function(e){this._visualPropertyCheck();return this.getElement().value};qx.ui.form.TextField.createRegExpValidator=function(vRegExp){return function(s){return vRegExp.test(s)}};qx.Proto.isValid=function(){var vValidator=this.getValidator();return !vValidator||vValidator(this.getValue())};qx.Proto.isComputedValid=function(){var vValidator=this.getValidator();return !vValidator||vValidator(this.getComputedValue())};qx.Proto._computePreferredInnerWidth=function(){return 120};qx.Proto._computePreferredInnerHeight=function(){return 15};if(qx.sys.Client.getInstance().isMshtml()){qx.Proto._firstInputFixApplied=false;qx.Proto._afterAppear=function(){qx.ui.basic.Terminator.prototype._afterAppear.call(this);if(!this._firstInputFixApplied){qx.client.Timer.once(this._ieFirstInputFix,this,1)}};qx.Proto._ieFirstInputFix=function(){this._inValueProperty=true;this.getElement().value=this.getValue()===null?qx.constant.Core.EMPTY:this.getValue();this._firstInputFixApplied=true;delete this._inValueProperty}};qx.Proto._textOnFocus=null;qx.Proto._ontabfocus=function(e){this.selectAll()};qx.Proto._onfocus=function(e){this._textOnFocus=this.getComputedValue()};qx.Proto._onblur=function(e){var vValue=this.getComputedValue().toString();if(this._textOnFocus!=vValue){this.setValue(vValue)};this.setSelectionLength(0)};if(qx.sys.Client.getInstance().isMshtml()){qx.Proto._getRange=function(){this._visualPropertyCheck();return this.getElement().createTextRange()};qx.Proto._getSelectionRange=function(){this._visualPropertyCheck();return this.getTopLevelWidget().getDocumentElement().selection.createRange()};qx.Proto.setSelectionStart=function(vStart){this._visualPropertyCheck();var vText=this.getElement().value;var i=0;while(i<vStart){i=vText.indexOf("\r\n",i);if(i==-1){break};vStart--;i++};var vRange=this._getRange();vRange.collapse();vRange.move("character",vStart);vRange.select()};qx.Proto.getSelectionStart=function(){this._visualPropertyCheck();var vSelectionRange=this._getSelectionRange();if(!this.getElement().contains(vSelectionRange.parentElement())){return -1};var vRange=this._getRange();vRange.setEndPoint("EndToStart",vSelectionRange);return vRange.text.length};qx.Proto.setSelectionLength=function(vLength){this._visualPropertyCheck();var vSelectionRange=this._getSelectionRange();if(!this.getElement().contains(vSelectionRange.parentElement())){return};vSelectionRange.collapse();vSelectionRange.moveEnd("character",vLength);vSelectionRange.select()};qx.Proto.getSelectionLength=function(){this._visualPropertyCheck();var vSelectionRange=this._getSelectionRange();if(!this.getElement().contains(vSelectionRange.parentElement())){return 0};return vSelectionRange.text.length};qx.Proto.setSelectionText=function(vText){this._visualPropertyCheck();var vStart=this.getSelectionStart();var vSelectionRange=this._getSelectionRange();if(!this.getElement().contains(vSelectionRange.parentElement())){return};vSelectionRange.text=vText;this.setValue(this.getElement().value);this.setSelectionStart(vStart);this.setSelectionLength(vText.length);return true};qx.Proto.getSelectionText=function(){this._visualPropertyCheck();var vSelectionRange=this._getSelectionRange();if(!this.getElement().contains(vSelectionRange.parentElement())){return qx.constant.Core.EMPTY};return vSelectionRange.text};qx.Proto.selectAll=function(){this._visualPropertyCheck();if(this.getValue()!=null){this.setSelectionStart(0);this.setSelectionLength(this.getValue().length)};this.getElement().select()};qx.Proto.selectFromTo=function(vStart,vEnd){this._visualPropertyCheck();this.setSelectionStart(vStart);this.setSelectionLength(vEnd-vStart)}}else{qx.Proto.setSelectionStart=function(vStart){this._visualPropertyCheck();this.getElement().selectionStart=vStart};qx.Proto.getSelectionStart=function(){this._visualPropertyCheck();return this.getElement().selectionStart};qx.Proto.setSelectionLength=function(vLength){this._visualPropertyCheck();var el=this.getElement();if(qx.util.Validation.isValidString(el.value)){el.selectionEnd=el.selectionStart+vLength}};qx.Proto.getSelectionLength=function(){this._visualPropertyCheck();var el=this.getElement();return el.selectionEnd-el.selectionStart};qx.Proto.setSelectionText=function(vText){this._visualPropertyCheck();var el=this.getElement();var vOldText=el.value;var vStart=el.selectionStart;var vOldTextBefore=vOldText.substr(0,vStart);var vOldTextAfter=vOldText.substr(el.selectionEnd);var vValue=el.value=vOldTextBefore+vText+vOldTextAfter;el.selectionStart=vStart;el.selectionEnd=vStart+vText.length;this.setValue(vValue);return true};qx.Proto.getSelectionText=function(){this._visualPropertyCheck();return this.getElement().value.substr(this.getSelectionStart(),this.getSelectionLength())};qx.Proto.selectAll=function(){this._visualPropertyCheck();this.getElement().select()};qx.Proto.selectFromTo=function(vStart,vEnd){this._visualPropertyCheck();var el=this.getElement();el.selectionStart=vStart;el.selectionEnd=vEnd}};qx.Proto.dispose=function(){if(this.getDisposed()){return};this.removeEventListener(qx.constant.Event.BLUR,this._onblur);this.removeEventListener(qx.constant.Event.FOCUS,this._onfocus);qx.ui.basic.Terminator.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.table.TableColumnModel",qx.core.Target,function(){qx.core.Target.call(this)});qx.Proto.init=function(colCount){this._columnDataArr=[];var width=qx.ui.table.TableColumnModel.DEFAULT_WIDTH;var headerRenderer=qx.ui.table.TableColumnModel.DEFAULT_HEADER_RENDERER;var dataRenderer=qx.ui.table.TableColumnModel.DEFAULT_DATA_RENDERER;var editorFactory=qx.ui.table.TableColumnModel.DEFAULT_EDITOR_FACTORY;this._overallColumnArr=[];this._visibleColumnArr=[];for(var col=0;col<colCount;col++){this._columnDataArr[col]={width:width,headerRenderer:headerRenderer,dataRenderer:dataRenderer,editorFactory:editorFactory};this._overallColumnArr[col]=col;this._visibleColumnArr[col]=col};this._colToXPosMap=null};qx.Proto.setColumnWidth=function(col,width){var oldWidth=this._columnDataArr[col].width;if(oldWidth!=width){this._columnDataArr[col].width=width;if(this.hasEventListeners("widthChanged")){var data={col:col,newWidth:width,oldWidth:oldWidth};this.dispatchEvent(new qx.event.type.DataEvent("widthChanged",data),true)}}};qx.Proto.getColumnWidth=function(col){return this._columnDataArr[col].width};qx.Proto.setHeaderCellRenderer=function(col,renderer){this._columnDataArr[col].headerRenderer=renderer};qx.Proto.getHeaderCellRenderer=function(col){return this._columnDataArr[col].headerRenderer};qx.Proto.setDataCellRenderer=function(col,renderer){this._columnDataArr[col].dataRenderer=renderer};qx.Proto.getDataCellRenderer=function(col){return this._columnDataArr[col].dataRenderer};qx.Proto.setCellEditorFactory=function(col,factory){this._columnDataArr[col].editorFactory=factory};qx.Proto.getCellEditorFactory=function(col){return this._columnDataArr[col].editorFactory};qx.Proto._getColToXPosMap=function(){if(this._colToXPosMap==null){this._colToXPosMap={};for(var overX=0;overX<this._overallColumnArr.length;overX++){var col=this._overallColumnArr[overX];this._colToXPosMap[col]={overX:overX}};for(var visX=0;visX<this._visibleColumnArr.length;visX++){var col=this._visibleColumnArr[visX];this._colToXPosMap[col].visX=visX}};return this._colToXPosMap};qx.Proto.getVisibleColumnCount=function(){return this._visibleColumnArr.length};qx.Proto.getVisibleColumnAtX=function(visXPos){return this._visibleColumnArr[visXPos]};qx.Proto.getVisibleX=function(col){return this._getColToXPosMap()[col].visX};qx.Proto.getOverallColumnCount=function(){return this._overallColumnArr.length};qx.Proto.getOverallColumnAtX=function(overXPos){return this._overallColumnArr[overXPos]};qx.Proto.getOverallX=function(col){return this._getColToXPosMap()[col].overX};qx.Proto.isColumnVisible=function(col){return (this._getColToXPosMap()[col].visX!=null)};qx.Proto.setColumnVisible=function(col,visible){if(visible!=this.isColumnVisible(col)){if(visible){var colToXPosMap=this._getColToXPosMap();var overX=colToXPosMap[col].overX;if(overX==null){throw new Error("Showing column failed: "+col+". The column is not added to this TablePaneModel.")};var nextVisX;for(var x=overX+1;x<this._overallColumnArr.length;x++){var currCol=this._overallColumnArr[x];var currVisX=colToXPosMap[currCol].visX;if(currVisX!=null){nextVisX=currVisX;break}};if(nextVisX==null){nextVisX=this._visibleColumnArr.length};this._visibleColumnArr.splice(nextVisX,0,col)}else{var visX=this.getVisibleX(col);this._visibleColumnArr.splice(visX,1)};this._colToXPosMap=null;if(!this._internalChange){if(this.hasEventListeners("visibilityChangedPre")){var data={col:col,visible:visible};this.dispatchEvent(new qx.event.type.DataEvent("visibilityChangedPre",data),true)};if(this.hasEventListeners("visibilityChanged")){var data={col:col,visible:visible};this.dispatchEvent(new qx.event.type.DataEvent("visibilityChanged",data),true)}}}};qx.Proto.moveColumn=function(fromOverXPos,toOverXPos){this._internalChange=true;var col=this._overallColumnArr[fromOverXPos];var visible=this.isColumnVisible(col);if(visible){this.setColumnVisible(col,false)};this._overallColumnArr.splice(fromOverXPos,1);this._overallColumnArr.splice(toOverXPos,0,col);this._colToXPosMap=null;if(visible){this.setColumnVisible(col,true)};this._internalChange=false;if(this.hasEventListeners("orderChanged")){var data={col:col,fromOverXPos:fromOverXPos,toOverXPos:toOverXPos};this.dispatchEvent(new qx.event.type.DataEvent("orderChanged",data),true)}};qx.Class.DEFAULT_WIDTH=100;qx.Class.DEFAULT_HEADER_RENDERER=new qx.ui.table.DefaultHeaderCellRenderer;qx.Class.DEFAULT_DATA_RENDERER=new qx.ui.table.DefaultDataCellRenderer;qx.Class.DEFAULT_EDITOR_FACTORY=new qx.ui.table.TextFieldCellEditorFactory;qx.OO.defineClass("qx.ui.pageview.AbstractPageView",qx.ui.layout.BoxLayout,function(vBarClass,vPaneClass){qx.ui.layout.BoxLayout.call(this);this._bar=new vBarClass;this._pane=new vPaneClass;this.add(this._bar,this._pane);this.setOrientation(qx.constant.Layout.ORIENTATION_VERTICAL)});qx.Proto.getPane=function(){return this._pane};qx.Proto.getBar=function(){return this._bar};qx.Proto.dispose=function(){if(this.getDisposed()){return true};if(this._bar){this._bar.dispose();this._bar=null};if(this._pane){this._pane.dispose();this._pane=null};return qx.ui.layout.BoxLayout.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.listview.ListViewHeader",qx.ui.layout.HorizontalBoxLayout,function(vColumns){qx.ui.layout.HorizontalBoxLayout.call(this);this.setPaddingRight(qx.ui.core.Widget.SCROLLBAR_SIZE);this._columns=vColumns;var vHeadCell,vHeadSeparator;for(var vCol in vColumns){vHeadCell=new qx.ui.listview.ListViewHeaderCell(vColumns[vCol],vCol);vHeadSeparator=new qx.ui.listview.ListViewHeaderSeparator;this.add(vHeadCell,vHeadSeparator);if(vColumns[vCol].align){vHeadCell.setHorizontalChildrenAlign(vColumns[vCol].align);if(vColumns[vCol].align==qx.constant.Layout.ALIGN_RIGHT){vHeadCell.setReverseChildrenOrder(true)}};vColumns[vCol].contentClass=qx.OO.classes["qx.ui.listview.ListViewContentCell"+qx.lang.String.toFirstUp(vColumns[vCol].type||"text")];vColumns[vCol].headerCell=vHeadCell};this.addEventListener(qx.constant.Event.MOUSEMOVE,this._onmousemove);this.addEventListener(qx.constant.Event.MOUSEDOWN,this._onmousedown);this.addEventListener(qx.constant.Event.MOUSEUP,this._onmouseup);this.addEventListener(qx.constant.Event.MOUSEOUT,this._onmouseout)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"list-view-header"});qx.Proto._syncColumnWidth=function(vWidth){var vChildren=this.getChildren();var vColumn=Math.ceil(vChildren.indexOf(this._resizeCell)/2);this.getParent().getPane().setColumnWidth(vColumn,vWidth)};qx.Proto._syncResizeLine=function(){qx.ui.core.Widget.flushGlobalQueues();var vParent=this.getParent();var vLine=vParent.getResizeLine();var vLeft=qx.dom.DomLocation.getPageBoxLeft(this._resizeSeparator.getElement())-qx.dom.DomLocation.getPageInnerLeft(this.getElement());var vTop=qx.dom.DomDimension.getBoxHeight(vParent.getHeader().getElement());var vHeight=qx.dom.DomDimension.getBoxHeight(vParent.getElement())-vTop;vLine._applyRuntimeTop(vTop);vLine._applyRuntimeHeight(vHeight);vLine._applyRuntimeLeft(vLeft);vLine.removeStyleProperty(qx.constant.Style.PROPERTY_VISIBILITY)};qx.Proto._mshtml=qx.sys.Client.getInstance().isMshtml();qx.Proto._onmousemove=function(e){if(!this.getParent().getResizable()){return};if(this._resizingActive){if(this._mshtml){if((new Date).valueOf()-this._last<50){return};this._last=(new Date).valueOf()};var vNewLeft=e.getPageX();var vSizeDiff=vNewLeft-this._resizeStart;var vCell=this._resizeCell;vCell.setWidth(Math.max(4,vCell.getWidth()+vSizeDiff));this._resizeStart=vNewLeft;if(this.getParent().getLiveResize()){this._syncColumnWidth(vCell._computeBoxWidth())}else{this._syncResizeLine()}}else{var vTarget=e.getTarget();var vEventPos=e.getPageX();var vTargetPosLeft=qx.dom.DomLocation.getPageBoxLeft(vTarget.getElement());var vTargetPosRight=vTargetPosLeft+qx.dom.DomDimension.getBoxWidth(vTarget.getElement());var vResizeCursor=false;var vResizeSeparator=null;if(vTarget instanceof qx.ui.listview.ListViewHeaderSeparator){vResizeCursor=true;vResizeSeparator=vTarget}else if((vEventPos-vTargetPosLeft)<=10){if(!vTarget.isFirstChild()){vResizeCursor=true;vResizeSeparator=vTarget.getPreviousSibling()}}else if((vTargetPosRight-vEventPos)<=10){vResizeCursor=true;vResizeSeparator=vTarget.getNextSibling()};if(!(vResizeSeparator instanceof qx.ui.listview.ListViewHeaderSeparator)){vResizeSeparator=vTarget=vResizeCursor=null}else if(vResizeSeparator){var vResizeCell=vResizeSeparator.getPreviousSibling();if(vResizeCell&&(vResizeCell._computedWidthTypePercent||vResizeCell._config.resizable==false)){vResizeSeparator=vTarget=vResizeCursor=null}};this.getTopLevelWidget().setGlobalCursor(vResizeCursor?"e-resize":null);this._resizeSeparator=vResizeSeparator;this._resizeTarget=vTarget}};qx.Proto._onmousedown=function(e){if(!this._resizeSeparator){return};this._resizingActive=true;this._resizeStart=e.getPageX();this._resizeCell=this._resizeSeparator.getPreviousSibling();if(!this.getParent().getLiveResize()){this._syncResizeLine()};this.setCapture(true)};qx.Proto._onmouseup=function(e){if(!this._resizingActive){return};this._syncColumnWidth(this._resizeCell.getBoxWidth());this.setCapture(false);this.getTopLevelWidget().setGlobalCursor(null);this._resizeTarget.removeState(qx.ui.core.Widget.STATE_OVER);this.getParent().getResizeLine().setStyleProperty(qx.constant.Style.PROPERTY_VISIBILITY,qx.constant.Core.HIDDEN);this._cleanupResizing()};qx.Proto._onmouseout=function(e){if(!this.getCapture()){this.getTopLevelWidget().setGlobalCursor(null)}};qx.Proto._cleanupResizing=function(){delete this._resizingActive;delete this._resizeSeparator;delete this._resizeTarget;delete this._resizeStart;delete this._resizeCell};qx.Proto.dispose=function(){if(this.getDisposed()){return};this._cleanupResizing();this.removeEventListener(qx.constant.Event.MOUSEMOVE,this._onmousemove);this.removeEventListener(qx.constant.Event.MOUSEDOWN,this._onmousedown);this.removeEventListener(qx.constant.Event.MOUSEUP,this._onmouseup);this.removeEventListener(qx.constant.Event.MOUSEOUT,this._onmouseout);this._columns=null;return qx.ui.layout.HorizontalBoxLayout.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.listview.ListViewHeaderCell",qx.ui.basic.Atom,function(vConfig,vId){qx.ui.basic.Atom.call(this,vConfig.label,vConfig.icon,vConfig.iconWidth,vConfig.iconHeight,vConfig.flash);this.setStyleProperty(qx.constant.Style.PROPERTY_OVERFLOW_TEXT,qx.constant.Style.OVERFLOW_ELLIPSIS);this._config=vConfig;this._id=vId;this.setWidth(typeof vConfig.width===qx.constant.Type.UNDEFINED?qx.constant.Core.AUTO:vConfig.width);if(qx.util.Validation.isValid(vConfig.minWidth)){this.setMinWidth(vConfig.minWidth)};if(qx.util.Validation.isValid(vConfig.maxWidth)){this.setMaxWidth(vConfig.maxWidth)};this.getLayoutImpl().setEnableFlexSupport(true);this._spacer=new qx.ui.basic.HorizontalSpacer;this._arrowup=new qx.ui.basic.Image("widget/arrows/up.gif");this._arrowup.setVerticalAlign("middle");this._arrowup.setDisplay(false);this._arrowdown=new qx.ui.basic.Image("widget/arrows/down.gif");this._arrowdown.setVerticalAlign("middle");this._arrowdown.setDisplay(false);this.add(this._spacer,this._arrowup,this._arrowdown);this.addEventListener(qx.constant.Event.MOUSEUP,this._onmouseup);this.addEventListener(qx.constant.Event.MOUSEOVER,this._onmouseover);this.addEventListener(qx.constant.Event.MOUSEOUT,this._onmouseout)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"list-view-header-cell"});qx.OO.addProperty({name:"sortOrder",type:qx.constant.Type.STRING,allowNull:true,possibleValues:["ascending","descending"]});qx.Class.C_SORT_ASCENDING="ascending";qx.Class.C_SORT_DESCENDING="descending";qx.Proto.getView=function(){return this.getParent().getParent()};qx.Proto.getNextSortOrder=function(){var vCurrentSortOrder=this.getSortOrder();switch(vCurrentSortOrder){case qx.ui.listview.ListViewHeaderCell.C_SORT_ASCENDING:return qx.ui.listview.ListViewHeaderCell.C_SORT_DESCENDING;default:return qx.ui.listview.ListViewHeaderCell.C_SORT_ASCENDING}};qx.Proto.updateSort=function(){var vListView=this.getView();var vData=vListView.getData();var vFieldId=this._id;var vSortProp=this._config.sortProp||"text";var vSortMethod=this._config.sortMethod||qx.util.Compare.byString;vData.sort(function(a,b){return vSortMethod(a[vFieldId][vSortProp],b[vFieldId][vSortProp])});if(this.getSortOrder()==qx.ui.listview.ListViewHeaderCell.C_SORT_DESCENDING){vData.reverse()}};qx.Proto._modifySortOrder=function(propValue,propOldValue,propData){var vListView=this.getView();switch(propValue){case qx.ui.listview.ListViewHeaderCell.C_SORT_ASCENDING:this._arrowup.setDisplay(true);this._arrowdown.setDisplay(false);vListView.setSortBy(this._id);break;case qx.ui.listview.ListViewHeaderCell.C_SORT_DESCENDING:this._arrowup.setDisplay(false);this._arrowdown.setDisplay(true);vListView.setSortBy(this._id);break;default:this._arrowup.setDisplay(false);this._arrowdown.setDisplay(false);if(vListView.getSortBy()==this._id){vListView.setSortBy(null)}};if(propValue){this.updateSort();vListView.update()};return true};qx.Proto._onmouseover=function(e){this.addState(qx.ui.core.Widget.STATE_OVER)};qx.Proto._onmouseout=function(e){this.removeState(qx.ui.core.Widget.STATE_OVER)};qx.Proto._onmouseup=function(e){if(!this._config.sortable||this.getParent()._resizeSeparator){return};this.setSortOrder(this.getNextSortOrder());e.stopPropagation()};qx.Proto.dispose=function(){if(this.getDisposed()){return};delete this._config;if(this._spacer){this._spacer.dispose();this._spacer=null};if(this._arrowup){this._arrowup.dispose();this._arrowup=null};if(this._arrowdown){this._arrowdown.dispose();this._arrowdown=null};this.removeEventListener(qx.constant.Event.MOUSEUP,this._onmouseup);this.removeEventListener(qx.constant.Event.MOUSEOVER,this._onmouseover);this.removeEventListener(qx.constant.Event.MOUSEOUT,this._onmouseout);return qx.ui.basic.Atom.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.basic.HorizontalSpacer",qx.ui.basic.Terminator,function(){qx.ui.basic.Terminator.call(this);this.setWidth(qx.constant.Core.FLEX)});qx.OO.defineClass("qx.manager.object.WindowManager",qx.manager.object.ObjectManager,function(){qx.manager.object.ObjectManager.call(this)});qx.OO.addProperty({name:"activeWindow",type:qx.constant.Type.OBJECT});qx.Proto._modifyActiveWindow=function(propValue,propOldValue,propData){qx.manager.object.PopupManager.getInstance().update();if(propOldValue){propOldValue.setActive(false)};if(propValue){propValue.setActive(true)};if(propOldValue&&propOldValue.getModal()){propOldValue.getTopLevelWidget().release(propOldValue)};if(propValue&&propValue.getModal()){propValue.getTopLevelWidget().block(propValue)};return true};qx.Proto.update=function(oTarget){var vWindow,vHashCode;var vAll=this.getAll();for(var vHashCode in vAll){vWindow=vAll[vHashCode];if(!vWindow.getAutoHide()){continue};vWindow.hide()}};qx.Proto.compareWindows=function(w1,w2){switch(w1.getWindowManager().getActiveWindow()){case w1:return 1;case w2:return -1};return w1.getZIndex()-w2.getZIndex()};qx.Proto.add=function(vWindow){qx.manager.object.ObjectManager.prototype.add.call(this,vWindow);this.setActiveWindow(vWindow)};qx.Proto.remove=function(vWindow){qx.manager.object.ObjectManager.prototype.remove.call(this,vWindow);if(this.getActiveWindow()==vWindow){var a=[];for(var i in this._objects){a.push(this._objects[i])};var l=a.length;if(l==0){this.setActiveWindow(null)}else if(l==1){this.setActiveWindow(a[0])}else if(l>1){a.sort(this.compareWindows);this.setActiveWindow(a[l-1])}}};qx.OO.defineClass("qx.ui.toolbar.ToolBarRadioButton",qx.ui.toolbar.ToolBarCheckBox,function(vText,vIcon,vChecked){qx.ui.toolbar.ToolBarCheckBox.call(this,vText,vIcon,vChecked)});qx.OO.addProperty({name:"manager",type:qx.constant.Type.OBJECT,instance:"qx.manager.selection.RadioManager",allowNull:true});qx.OO.addProperty({name:"name",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"disableUncheck",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.Proto._modifyChecked=function(propValue,propOldValue,propData){qx.ui.toolbar.ToolBarCheckBox.prototype._modifyChecked.call(this,propValue,propOldValue,propData);var vManager=this.getManager();if(vManager){vManager.handleItemChecked(this,propValue)};return true};qx.Proto._modifyManager=function(propValue,propOldValue,propData){if(propOldValue){propOldValue.remove(this)};if(propValue){propValue.add(this)};return true};qx.Proto._onmouseup=function(e){this.setCapture(false);if(!this.hasState(qx.ui.form.Button.STATE_ABANDONED)){this.addState(qx.ui.core.Widget.STATE_OVER);this.setChecked(this.getDisableUncheck()||!this.getChecked());this.execute()};this.removeState(qx.ui.form.Button.STATE_ABANDONED);this.removeState(qx.ui.form.Button.STATE_PRESSED);e.stopPropagation()};qx.OO.defineClass("qx.ui.layout.GridLayout",qx.ui.core.Parent,function(){qx.ui.core.Parent.call(this);this._columnData=[];this._rowData=[];this._spans=[]});qx.OO.addProperty({name:"horizontalSpacing",type:qx.constant.Type.NUMBER,defaultValue:0,addToQueueRuntime:true,impl:"layout"});qx.OO.addProperty({name:"verticalSpacing",type:qx.constant.Type.NUMBER,defaultValue:0,addToQueueRuntime:true,impl:"layout"});qx.OO.addProperty({name:"horizontalChildrenAlign",type:qx.constant.Type.STRING,defaultValue:"left",possibleValues:["left","center","right"],addToQueueRuntime:true});qx.OO.addProperty({name:"verticalChildrenAlign",type:qx.constant.Type.STRING,defaultValue:"top",possibleValues:["top","middle","bottom"],addToQueueRuntime:true});qx.OO.addProperty({name:"cellPaddingTop",type:qx.constant.Type.NUMBER});qx.OO.addProperty({name:"cellPaddingRight",type:qx.constant.Type.NUMBER});qx.OO.addProperty({name:"cellPaddingBottom",type:qx.constant.Type.NUMBER});qx.OO.addProperty({name:"cellPaddingLeft",type:qx.constant.Type.NUMBER});qx.Proto._createLayoutImpl=function(){return new qx.renderer.layout.GridLayoutImpl(this)};qx.Proto.add=function(vChild,vCol,vRow){vChild._col=vCol;vChild._row=vRow;if(this.isFillCell(vCol,vRow)){throw new Error("Could not insert child "+vChild+" into a fill cell: "+vCol+"x"+vRow)};qx.ui.core.Parent.prototype.add.call(this,vChild)};qx.Proto._modifyLayout=function(propValue,propOldValue,propData){this._invalidatePreferredInnerDimensions();return true};qx.Proto._syncDataFields=function(vData,vOldLength,vNewLength){if(vNewLength>vOldLength){for(var i=vOldLength;i<vNewLength;i++){vData[i]={}}}else if(vOldLength>vNewLength){vData.splice(vNewLength,vOldLength-vNewLength)}};qx.Proto._columnCount=0;qx.Proto.setColumnCount=function(vCount){this._columnCount=vCount;this._syncColumnDataFields()};qx.Proto.getColumnCount=function(){return this._columnCount};qx.Proto.addColumn=function(){this._columnCount++;this._syncColumnDataFields()};qx.Proto.removeColumn=function(){if(this._columnCount>0){this._columnCount--;this._syncColumnDataFields()}};qx.Proto._syncColumnDataFields=function(){var vData=this._columnData;var vOldLength=vData.length;var vNewLength=this._columnCount;this._syncDataFields(vData,vOldLength,vNewLength)};qx.Proto._rowCount=0;qx.Proto.setRowCount=function(vCount){this._rowCount=vCount;this._syncRowDataFields()};qx.Proto.getRowCount=function(){return this._rowCount};qx.Proto.addRow=function(){this._rowCount++;this._syncRowDataFields()};qx.Proto.removeRow=function(){if(this._rowCount>0){this._rowCount--;this._syncRowDataFields()}};qx.Proto._syncRowDataFields=function(){var vData=this._rowData;var vOldLength=vData.length;var vNewLength=this._rowCount;this._syncDataFields(vData,vOldLength,vNewLength)};qx.Proto._getColumnProperty=function(vColumnIndex,vProperty){try{return this._columnData[vColumnIndex][vProperty]||null}catch(ex){this.error("Error while getting column property ("+vColumnIndex+"|"+vProperty+")",ex);return null}};qx.Proto._setupColumnProperty=function(vColumnIndex,vProperty,vValue){this._columnData[vColumnIndex][vProperty]=vValue;this._invalidateColumnLayout()};qx.Proto._removeColumnProperty=function(vColumnIndex,vProperty,vValue){delete this._columnData[vColumnIndex][vProperty];this._invalidateColumnLayout()};qx.Proto._invalidateColumnLayout=function(){if(!this._initialLayoutDone||!this._isDisplayable){return};this.forEachVisibleChild(function(){this.addToQueue(qx.OO.PROPERTY_WIDTH)})};qx.Proto._getRowProperty=function(vRowIndex,vProperty){try{return this._rowData[vRowIndex][vProperty]||null}catch(ex){this.error("Error while getting row property ("+vRowIndex+"|"+vProperty+")",ex);return null}};qx.Proto._setupRowProperty=function(vRowIndex,vProperty,vValue){this._rowData[vRowIndex][vProperty]=vValue;this._invalidateRowLayout()};qx.Proto._removeRowProperty=function(vRowIndex,vProperty,vValue){delete this._rowData[vRowIndex][vProperty];this._invalidateRowLayout()};qx.Proto._invalidateRowLayout=function(){if(!this._initialLayoutDone||!this._isDisplayable){return};this.forEachVisibleChild(function(){this.addToQueue(qx.OO.PROPERTY_HEIGHT)})};qx.Proto.setColumnWidth=function(vIndex,vValue){this._setupColumnProperty(vIndex,"widthValue",vValue);var vType=qx.ui.core.Parent.prototype._evalUnitsPixelPercentAutoFlex(vValue);this._setupColumnProperty(vIndex,"widthType",vType);var vParsed,vComputed;switch(vType){case qx.ui.core.Widget.TYPE_PIXEL:vParsed=vComputed=Math.round(vValue);break;case qx.ui.core.Widget.TYPE_PERCENT:case qx.ui.core.Widget.TYPE_FLEX:vParsed=parseFloat(vValue);vComputed=null;break;case qx.ui.core.Widget.TYPE_AUTO:vParsed=vComputed=null;break;default:vParsed=vComputed=null};this._setupColumnProperty(vIndex,"widthParsed",vParsed);this._setupColumnProperty(vIndex,"widthComputed",vComputed)};qx.Proto.setRowHeight=function(vIndex,vValue){this._setupRowProperty(vIndex,"heightValue",vValue);var vType=qx.ui.core.Widget.prototype._evalUnitsPixelPercentAutoFlex(vValue);this._setupRowProperty(vIndex,"heightType",vType);var vParsed,vComputed;switch(vType){case qx.ui.core.Widget.TYPE_PIXEL:vParsed=vComputed=Math.round(vValue);break;case qx.ui.core.Widget.TYPE_PERCENT:case qx.ui.core.Widget.TYPE_FLEX:vParsed=parseFloat(vValue);vComputed=null;break;case qx.ui.core.Widget.TYPE_AUTO:vParsed=vComputed=null;break;default:vParsed=vComputed=null};this._setupRowProperty(vIndex,"heightParsed",vParsed);this._setupRowProperty(vIndex,"heightComputed",vComputed)};qx.Proto.getColumnBoxWidth=function(vIndex){var vComputed=this._getColumnProperty(vIndex,"widthComputed");if(vComputed!=null){return vComputed};var vType=this._getColumnProperty(vIndex,"widthType");var vParsed=this._getColumnProperty(vIndex,"widthParsed");var vComputed=null;switch(vType){case qx.ui.core.Widget.TYPE_PIXEL:vComputed=Math.max(0,vParsed);break;case qx.ui.core.Widget.TYPE_PERCENT:vComputed=this.getInnerWidth()*Math.max(0,vParsed)*0.01;break;case qx.ui.core.Widget.TYPE_AUTO:vComputed=null;break;case qx.ui.core.Widget.TYPE_FLEX:vComputed=null;break};this._setupColumnProperty(vIndex,"widthComputed",vComputed);return vComputed};qx.Proto.getRowBoxHeight=function(vIndex){var vComputed=this._getRowProperty(vIndex,"heightComputed");if(vComputed!=null){return vComputed};var vType=this._getRowProperty(vIndex,"heightType");var vParsed=this._getRowProperty(vIndex,"heightParsed");var vComputed=null;switch(vType){case qx.ui.core.Widget.TYPE_PIXEL:vComputed=Math.max(0,vParsed);break;case qx.ui.core.Widget.TYPE_PERCENT:vComputed=this.getInnerHeight()*Math.max(0,vParsed)*0.01;break;case qx.ui.core.Widget.TYPE_AUTO:vComputed=null;break;case qx.ui.core.Widget.TYPE_FLEX:vComputed=null;break};this._setupRowProperty(vIndex,"heightComputed",vComputed);return vComputed};qx.Proto.getComputedCellPaddingLeft=function(vCol,vRow){return this.getColumnPaddingLeft(vCol)||this.getRowPaddingLeft(vRow)||this.getCellPaddingLeft()||0};qx.Proto.getComputedCellPaddingRight=function(vCol,vRow){return this.getColumnPaddingRight(vCol)||this.getRowPaddingRight(vRow)||this.getCellPaddingRight()||0};qx.Proto.getComputedCellPaddingTop=function(vCol,vRow){return this.getRowPaddingTop(vRow)||this.getColumnPaddingTop(vCol)||this.getCellPaddingTop()||0};qx.Proto.getComputedCellPaddingBottom=function(vCol,vRow){return this.getRowPaddingBottom(vRow)||this.getColumnPaddingBottom(vCol)||this.getCellPaddingBottom()||0};qx.Proto.getColumnInnerWidth=function(vCol,vRow){return this.getColumnBoxWidth(vCol)-this.getComputedCellPaddingLeft(vCol,vRow)-this.getComputedCellPaddingRight(vCol,vRow)};qx.Proto.getRowInnerHeight=function(vCol,vRow){return this.getRowBoxHeight(vRow)-this.getComputedCellPaddingTop(vCol,vRow)-this.getComputedCellPaddingBottom(vCol,vRow)};qx.Proto.setColumnHorizontalAlignment=function(vIndex,vValue){this._setupColumnProperty(vIndex,"horizontalAlignment",vValue)};qx.Proto.setColumnVerticalAlignment=function(vIndex,vValue){this._setupColumnProperty(vIndex,"verticalAlignment",vValue)};qx.Proto.setRowHorizontalAlignment=function(vIndex,vValue){this._setupRowProperty(vIndex,"horizontalAlignment",vValue)};qx.Proto.setRowVerticalAlignment=function(vIndex,vValue){this._setupRowProperty(vIndex,"verticalAlignment",vValue)};qx.Proto.getColumnHorizontalAlignment=function(vIndex){return this._getColumnProperty(vIndex,"horizontalAlignment")};qx.Proto.getColumnVerticalAlignment=function(vIndex){return this._getColumnProperty(vIndex,"verticalAlignment")};qx.Proto.getRowHorizontalAlignment=function(vIndex){return this._getRowProperty(vIndex,"horizontalAlignment")};qx.Proto.getRowVerticalAlignment=function(vIndex){return this._getRowProperty(vIndex,"verticalAlignment")};qx.Proto.setColumnPaddingTop=function(vIndex,vValue){this._setupColumnProperty(vIndex,"paddingTop",vValue)};qx.Proto.setColumnPaddingRight=function(vIndex,vValue){this._setupColumnProperty(vIndex,"paddingRight",vValue)};qx.Proto.setColumnPaddingBottom=function(vIndex,vValue){this._setupColumnProperty(vIndex,"paddingBottom",vValue)};qx.Proto.setColumnPaddingLeft=function(vIndex,vValue){this._setupColumnProperty(vIndex,"paddingLeft",vValue)};qx.Proto.setRowPaddingTop=function(vIndex,vValue){this._setupRowProperty(vIndex,"paddingTop",vValue)};qx.Proto.setRowPaddingRight=function(vIndex,vValue){this._setupRowProperty(vIndex,"paddingRight",vValue)};qx.Proto.setRowPaddingBottom=function(vIndex,vValue){this._setupRowProperty(vIndex,"paddingBottom",vValue)};qx.Proto.setRowPaddingLeft=function(vIndex,vValue){this._setupRowProperty(vIndex,"paddingLeft",vValue)};qx.Proto.getColumnPaddingTop=function(vIndex){return this._getColumnProperty(vIndex,"paddingTop")};qx.Proto.getColumnPaddingRight=function(vIndex){return this._getColumnProperty(vIndex,"paddingRight")};qx.Proto.getColumnPaddingBottom=function(vIndex){return this._getColumnProperty(vIndex,"paddingBottom")};qx.Proto.getColumnPaddingLeft=function(vIndex){return this._getColumnProperty(vIndex,"paddingLeft")};qx.Proto.getRowPaddingTop=function(vIndex){return this._getRowProperty(vIndex,"paddingTop")};qx.Proto.getRowPaddingRight=function(vIndex){return this._getRowProperty(vIndex,"paddingRight")};qx.Proto.getRowPaddingBottom=function(vIndex){return this._getRowProperty(vIndex,"paddingBottom")};qx.Proto.getRowPaddingLeft=function(vIndex){return this._getRowProperty(vIndex,"paddingLeft")};qx.Proto._changeInnerWidth=function(vNew,vOld){for(var i=0,l=this.getColumnCount();i<l;i++){if(this._getColumnProperty(i,"widthType")==qx.ui.core.Widget.TYPE_PERCENT){this._setupColumnProperty(i,"widthComputed",null)}};qx.ui.core.Parent.prototype._changeInnerWidth.call(this,vNew,vOld)};qx.Proto._changeInnerHeight=function(vNew,vOld){for(var i=0,l=this.getRowCount();i<l;i++){if(this._getRowProperty(i,"heightType")==qx.ui.core.Widget.TYPE_PERCENT){this._setupRowProperty(i,"heightComputed",null)}};qx.ui.core.Parent.prototype._changeInnerHeight.call(this,vNew,vOld)};qx.Proto.getInnerWidthForChild=function(vChild){return this._getColumnProperty(vChild._col,"widthComputed")};qx.Proto.getInnerHeightForChild=function(vChild){return this._getRowProperty(vChild._row,"heightComputed")};qx.Proto.mergeCells=function(vStartCol,vStartRow,vColLength,vRowLength){var vSpans=this._spans;var vLength=vSpans.length;var vEndCol=vStartCol+vColLength-1;var vEndRow=vStartRow+vRowLength-1;if(this._collidesWithSpans(vStartCol,vStartRow,vEndCol,vEndRow)){this.debug("Span collision detected!");return false};vSpans.push({startCol:vStartCol,startRow:vStartRow,endCol:vEndCol,endRow:vEndRow,colLength:vColLength,rowLength:vRowLength});return true};qx.Proto.hasSpans=function(){return this._spans.length>0};qx.Proto.getSpanEntry=function(vCol,vRow){for(var i=0,s=this._spans,l=s.length,c;i<l;i++){c=s[i];if(vCol>=c.startCol&&vCol<=c.endCol&&vRow>=c.startRow&&vRow<=c.endRow){return c}};return null};qx.Proto.isSpanStart=function(vCol,vRow){for(var i=0,s=this._spans,l=s.length,c;i<l;i++){c=s[i];if(c.startCol==vCol&&c.startRow==vRow){return true}};return false};qx.Proto.isSpanCell=function(vCol,vRow){for(var i=0,s=this._spans,l=s.length,c;i<l;i++){c=s[i];if(vCol>=c.startCol&&vCol<=c.endCol&&vRow>=c.startRow&&vRow<=c.endRow){return true}};return false};qx.Proto.isFillCell=function(vCol,vRow){for(var i=0,s=this._spans,l=s.length,c;i<l;i++){c=s[i];if(vCol>=c.startCol&&vCol<=c.endCol&&vRow>=c.startRow&&vRow<=c.endRow&&(vCol>c.startCol||vRow>c.startRow)){return true}};return false};qx.Proto._collidesWithSpans=function(vStartCol,vStartRow,vEndCol,vEndRow){for(var i=0,s=this._spans,l=s.length,c;i<l;i++){c=s[i];if(vEndCol>=c.startCol&&vStartCol<=c.endCol&&vEndRow>=c.startRow&&vStartRow<=c.endRow){return true}};return false};qx.Proto.dispose=function(){if(this.getDisposed()){return};delete this._columnData;delete this._rowData;delete this._spans;return qx.ui.core.Parent.prototype.dispose.call(this)};qx.OO.defineClass("qx.renderer.layout.GridLayoutImpl",qx.renderer.layout.LayoutImpl,function(vWidget){qx.renderer.layout.LayoutImpl.call(this,vWidget)});qx.Proto.computeChildBoxWidth=function(vChild){var vWidget=this.getWidget();var vColWidth=vWidget.getColumnInnerWidth(vChild._col,vChild._row);if(vWidget.isSpanStart(vChild._col,vChild._row)){var vEntry=vWidget.getSpanEntry(vChild._col,vChild._row);for(var i=1;i<vEntry.colLength;i++){vColWidth+=vWidget.getComputedCellPaddingRight(vChild._col+i-1,vChild._row);vColWidth+=vWidget.getComputedCellPaddingLeft(vChild._col+i,vChild._row);vColWidth+=vWidget.getHorizontalSpacing();vColWidth+=vWidget.getColumnInnerWidth(vChild._col+i,vChild._row)}};return vChild.getAllowStretchX()?vColWidth:Math.min(vChild.getWidthValue(),vColWidth)};qx.Proto.computeChildBoxHeight=function(vChild){var vWidget=this.getWidget();var vRowHeight=vWidget.getRowInnerHeight(vChild._col,vChild._row);if(vWidget.isSpanStart(vChild._col,vChild._row)){var vEntry=vWidget.getSpanEntry(vChild._col,vChild._row);for(var i=1;i<vEntry.rowLength;i++){vRowHeight+=vWidget.getComputedCellPaddingBottom(vChild._col,vChild._row+i-1);vRowHeight+=vWidget.getComputedCellPaddingTop(vChild._col,vChild._row+i);vRowHeight+=vWidget.getVerticalSpacing();vRowHeight+=vWidget.getRowInnerHeight(vChild._col,vChild._row+i)}};return vChild.getAllowStretchY()?vRowHeight:Math.min(vChild.getHeightValue(),vRowHeight)};qx.Proto.computeChildrenNeededWidth=function(){var vWidget=this.getWidget();var vSpacingX=vWidget.getHorizontalSpacing();var vSum=-vSpacingX;for(var i=0,l=vWidget.getColumnCount();i<l;i++){vSum+=vWidget.getColumnBoxWidth(i)+vSpacingX};return vSum};qx.Proto.computeChildrenNeededHeight=function(){var vWidget=this.getWidget();var vSpacingY=vWidget.getVerticalSpacing();var vSum=-vSpacingY;for(var i=0,l=vWidget.getRowCount();i<l;i++){vSum+=vWidget.getRowBoxHeight(i)+vSpacingY};return vSum};qx.Proto.updateChildOnInnerWidthChange=function(vChild){vChild._recomputePercentX();vChild.addToLayoutChanges(qx.ui.core.Widget.JOB_LOCATIONX);return true};qx.Proto.updateChildOnInnerHeightChange=function(vChild){vChild._recomputePercentY();vChild.addToLayoutChanges(qx.ui.core.Widget.JOB_LOCATIONY);return true};qx.Proto.layoutChild=function(vChild,vJobs){var vWidget=this.getWidget();this.layoutChild_sizeX(vChild,vJobs);this.layoutChild_sizeY(vChild,vJobs);this.layoutChild_sizeLimitX(vChild,vJobs);this.layoutChild_sizeLimitY(vChild,vJobs);this.layoutChild_marginX(vChild,vJobs);this.layoutChild_marginY(vChild,vJobs);this.layoutChild_locationX(vChild,vJobs);this.layoutChild_locationY(vChild,vJobs)};qx.Proto.layoutChild_sizeX=function(vChild,vJobs){vChild._applyRuntimeWidth(vChild.getBoxWidth())};qx.Proto.layoutChild_sizeY=function(vChild,vJobs){vChild._applyRuntimeHeight(vChild.getBoxHeight())};qx.Proto.layoutChild_locationX=function(vChild,vJobs){var vWidget=this.getWidget();var vSpacingX=vWidget.getHorizontalSpacing();var vLocSumX=vWidget.getPaddingLeft()+vWidget.getComputedCellPaddingLeft(vChild._col,vChild._row);for(var i=0;i<vChild._col;i++){vLocSumX+=vWidget.getColumnBoxWidth(i)+vSpacingX};switch(vChild.getHorizontalAlign()||vWidget.getColumnHorizontalAlignment(vChild._col)||vWidget.getRowHorizontalAlignment(vChild._row)||vWidget.getHorizontalChildrenAlign()){case qx.constant.Layout.ALIGN_CENTER:vLocSumX+=Math.round((vWidget.getColumnInnerWidth(vChild._col,vChild._row)-vChild.getBoxWidth())/2);break;case qx.constant.Layout.ALIGN_RIGHT:vLocSumX+=vWidget.getColumnInnerWidth(vChild._col,vChild._row)-vChild.getBoxWidth();break};vChild._applyRuntimeLeft(vLocSumX)};qx.Proto.layoutChild_locationY=function(vChild,vJobs){var vWidget=this.getWidget();var vSpacingY=vWidget.getVerticalSpacing();var vLocSumY=vWidget.getPaddingTop()+vWidget.getComputedCellPaddingTop(vChild._col,vChild._row);for(var i=0;i<vChild._row;i++){vLocSumY+=vWidget.getRowBoxHeight(i)+vSpacingY};switch(vChild.getVerticalAlign()||vWidget.getRowVerticalAlignment(vChild._row)||vWidget.getColumnVerticalAlignment(vChild._col)||vWidget.getVerticalChildrenAlign()){case qx.constant.Layout.ALIGN_MIDDLE:vLocSumY+=Math.round((vWidget.getRowInnerHeight(vChild._col,vChild._row)-vChild.getBoxHeight())/2);break;case qx.constant.Layout.ALIGN_BOTTOM:vLocSumY+=vWidget.getRowInnerHeight(vChild._col,vChild._row)-vChild.getBoxHeight();break};vChild._applyRuntimeTop(vLocSumY)};qx.OO.defineClass("qx.ui.pageview.buttonview.ButtonViewButton",qx.ui.pageview.AbstractPageViewButton,function(vText,vIcon,vIconWidth,vIconHeight,vFlash){qx.ui.pageview.AbstractPageViewButton.call(this,vText,vIcon,vIconWidth,vIconHeight,vFlash)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"bar-view-button"});qx.Proto._onkeydown=function(e){switch(this.getView().getBarPosition()){case qx.constant.Layout.ALIGN_TOP:case qx.constant.Layout.ALIGN_BOTTOM:switch(e.getKeyCode()){case qx.event.type.KeyEvent.keys.left:var vPrevious=true;break;case qx.event.type.KeyEvent.keys.right:var vPrevious=false;break;default:return};break;case qx.constant.Layout.ALIGN_LEFT:case qx.constant.Layout.ALIGN_RIGHT:switch(e.getKeyCode()){case qx.event.type.KeyEvent.keys.up:var vPrevious=true;break;case qx.event.type.KeyEvent.keys.down:var vPrevious=false;break;default:return};break;default:return};var vChild=vPrevious?this.isFirstChild()?this.getParent().getLastChild():this.getPreviousSibling():this.isLastChild()?this.getParent().getFirstChild():this.getNextSibling();vChild.setFocused(true);vChild.setChecked(true)};qx.Proto._applyStateAppearance=function(){var vPos=this.getView().getBarPosition();this._states.barLeft=vPos===qx.constant.Layout.ALIGN_LEFT;this._states.barRight=vPos===qx.constant.Layout.ALIGN_RIGHT;this._states.barTop=vPos===qx.constant.Layout.ALIGN_TOP;this._states.barBottom=vPos===qx.constant.Layout.ALIGN_BOTTOM;qx.ui.pageview.AbstractPageViewButton.prototype._applyStateAppearance.call(this)};qx.OO.defineClass("qx.io.local.CookieApi",{STR_EXPIRES:"expires",STR_PATH:"path",STR_DOMAIN:"domain",STR_SECURE:"secure",STR_DELDATA:"Thu, 01-Jan-1970 00:00:01 GMT"});qx.Class.get=function(vName){var start=document.cookie.indexOf(vName+qx.constant.Core.EQUAL);var len=start+vName.length+1;if((!start)&&(vName!=document.cookie.substring(0,vName.length))){return null};if(start==-1){return null};var end=document.cookie.indexOf(qx.constant.Core.SEMICOLON,len);if(end==-1){end=document.cookie.length};return unescape(document.cookie.substring(len,end))};qx.Class.set=function(vName,vValue,vExpires,vPath,vDomain,vSecure){var today=new Date();today.setTime(today.getTime());var vCookie=[vName,qx.constant.Core.EQUAL,escape(vValue)];if(vExpires){vCookie.push(qx.constant.Core.SEMICOLON);vCookie.push(qx.io.local.CookieApi.STR_EXPIRES);vCookie.push(qx.constant.Core.EQUAL);vCookie.push(new Date(today.getTime()+(vExpires*1000*60*60*24)).toGMTString())};if(vPath){vCookie.push(qx.constant.Core.SEMICOLON);vCookie.push(qx.io.local.CookieApi.STR_PATH);vCookie.push(qx.constant.Core.EQUAL);vCookie.push(vPath)};if(vDomain){vCookie.push(qx.constant.Core.SEMICOLON);vCookie.push(qx.io.local.CookieApi.STR_DOMAIN);vCookie.push(qx.constant.Core.EQUAL);vCookie.push(vDomain)};if(vSecure){vCookie.push(qx.constant.Core.SEMICOLON);vCookie.push(qx.io.local.CookieApi.STR_SECURE)};document.cookie=vCookie.join(qx.constant.Core.EMPTY)};qx.Class.del=function(vName,vPath,vDomain){if(!qx.io.local.CookieApi.get(vName)){return};var vCookie=[vName,qx.constant.Core.EQUAL];if(vPath){vCookie.push(qx.constant.Core.SEMICOLON);vCookie.push(qx.io.local.CookieApi.STR_PATH);vCookie.push(qx.constant.Core.EQUAL);vCookie.push(vPath)};if(vDomain){vCookie.push(qx.constant.Core.SEMICOLON);vCookie.push(qx.io.local.CookieApi.STR_DOMAIN);vCookie.push(qx.constant.Core.EQUAL);vCookie.push(vDomain)};vCookie.push(qx.constant.Core.SEMICOLON);vCookie.push(qx.io.local.CookieApi.STR_EXPIRES);vCookie.push(qx.constant.Core.EQUAL);vCookie.push(qx.io.local.CookieApi.STR_DELDATA);document.cookie=vCookie.join(qx.constant.Core.EMPTY)};qx.OO.defineClass("qx.ui.listview.ListViewContentCellLink",qx.ui.embed.LinkEmbed,function(vHtml){qx.ui.embed.LinkEmbed.call(this,vHtml);this.setSelectable(true)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"list-view-content-cell-link"});qx.ui.listview.ListViewContentCellLink.empty={html:qx.constant.Core.EMPTY,uri:qx.constant.Core.HASH};qx.OO.defineClass("qx.ui.basic.Inline",qx.ui.layout.CanvasLayout,function(vId){qx.ui.layout.CanvasLayout.call(this);this.setStyleProperty(qx.constant.Style.PROPERTY_POSITION,qx.constant.Style.POSITION_RELATIVE);if(qx.util.Validation.isValidString(vId)){this.setInlineNodeId(vId)}});qx.OO.addProperty({name:"inlineNodeId",type:qx.constant.Type.STRING});qx.OO.defineClass("qx.ui.component.DateChooser",qx.ui.layout.BoxLayout,function(date){qx.ui.layout.BoxLayout.call(this);this.setOrientation(qx.constant.Layout.ORIENTATION_VERTICAL);var navBar=new qx.ui.layout.BoxLayout;navBar.set({width:null,height:"auto",spacing:1});var lastYearBt=new qx.ui.toolbar.ToolBarButton(null,"widget/datechooser/lastYear.png");var lastMonthBt=new qx.ui.toolbar.ToolBarButton(null,"widget/datechooser/lastMonth.png");var monthYearLabel=new qx.ui.basic.Label;var nextMonthBt=new qx.ui.toolbar.ToolBarButton(null,"widget/datechooser/nextMonth.png");var nextYearBt=new qx.ui.toolbar.ToolBarButton(null,"widget/datechooser/nextYear.png");lastYearBt.set({show:'icon',toolTip:new qx.ui.popup.ToolTip("Last year"),spacing:0});lastMonthBt.set({show:'icon',toolTip:new qx.ui.popup.ToolTip("Last month")});nextMonthBt.set({show:'icon',toolTip:new qx.ui.popup.ToolTip("Next month")});nextYearBt.set({show:'icon',toolTip:new qx.ui.popup.ToolTip("Next year")});lastYearBt.setAppearance("datechooser-toolbar-button");lastMonthBt.setAppearance("datechooser-toolbar-button");nextMonthBt.setAppearance("datechooser-toolbar-button");nextYearBt.setAppearance("datechooser-toolbar-button");lastYearBt.addEventListener("click",this._onNavButtonClicked,this);lastMonthBt.addEventListener("click",this._onNavButtonClicked,this);nextMonthBt.addEventListener("click",this._onNavButtonClicked,this);nextYearBt.addEventListener("click",this._onNavButtonClicked,this);this._lastYearBt=lastYearBt;this._lastMonthBt=lastMonthBt;this._nextMonthBt=nextMonthBt;this._nextYearBt=nextYearBt;monthYearLabel.setAppearance("datechooser-monthyear");monthYearLabel.set({width:qx.constant.Core.FLEX});navBar.add(lastYearBt,lastMonthBt,monthYearLabel,nextMonthBt,nextYearBt);this._monthYearLabel=monthYearLabel;navBar.setHtmlAttribute("id","navBar");var testLabel=new qx.ui.basic.Label;var testParent=new qx.ui.layout.CanvasLayout;testParent.add(testLabel);testLabel.setHtml("Xx");testLabel.set({paddingLeft:5,paddingRight:5});testLabel.setAppearance("datechooser-weekday");var cellWidth=testLabel.getBoxWidth();var cellHeight=testLabel.getBoxHeight();testLabel.dispose();testParent.dispose();var datePane=new qx.ui.layout.GridLayout;datePane.setAppearance("datechooser-datepane");datePane.set({width:"100%",height:"auto"});datePane.setColumnCount(8);datePane.setRowCount(7);for(var i=0;i<datePane.getColumnCount();i++){datePane.setColumnWidth(i,cellWidth)};for(var i=0;i<datePane.getRowCount();i++){datePane.setRowHeight(i,cellHeight)};var label=new qx.ui.basic.Label;label.setAppearance("datechooser-week");label.set({width:"100%",height:"100%"});label.addState(qx.ui.component.DateChooser.STATE_HEADER);datePane.add(label,0,0);this._weekdayLabelArr=[];for(var i=0;i<7;i++){var label=new qx.ui.basic.Label;label.setAppearance("datechooser-weekday");label.set({width:"100%",height:"100%"});datePane.add(label,i+1,0);this._weekdayLabelArr.push(label)};this._dayLabelArr=[];this._weekLabelArr=[];for(var y=0;y<6;y++){var label=new qx.ui.basic.Label;label.setAppearance("datechooser-week");label.set({width:"100%",height:"100%"});datePane.add(label,0,y+1);this._weekLabelArr.push(label);for(var x=0;x<7;x++){var label=new qx.ui.basic.Label;label.setAppearance("datechooser-day");label.set({width:"100%",height:"100%"});label.addEventListener(qx.constant.Event.MOUSEDOWN,this._onDayClicked,this);label.addEventListener(qx.constant.Event.DBLCLICK,this._onDayDblClicked,this);datePane.add(label,x+1,y+1);this._dayLabelArr.push(label)}};this.setTabIndex(1);this.addEventListener(qx.constant.Event.KEYDOWN,this._onkeydown);var shownDate=(date!=null)?date:new Date();this.showMonth(shownDate.getMonth(),shownDate.getFullYear());this.add(navBar);this.add(datePane)});qx.OO.addProperty({name:"startOfWeek",type:qx.constant.Type.NUMBER,defaultValue:1});qx.OO.addProperty({name:"shownMonth",type:qx.constant.Type.NUMBER,defaultValue:null});qx.OO.addProperty({name:"shownYear",type:qx.constant.Type.NUMBER,defaultValue:null});qx.OO.addProperty({name:"date",type:qx.constant.Type.OBJECT,defaultValue:null});qx.Proto._checkDate=function(propValue,propData){return (propValue==null)?null:new Date(propValue.getTime())};qx.Proto._modifyDate=function(propValue,propOldValue,propData){var DateChooser=qx.ui.component.DateChooser;if((propValue!=null)&&(this.getShownMonth()!=propValue.getMonth()||this.getShownYear()!=propValue.getFullYear())){this.showMonth(propValue.getMonth(),propValue.getFullYear())}else{var newDay=(propValue==null)?-1:propValue.getDate();for(var i=0;i<6*7;i++){var dayLabel=this._dayLabelArr[i];if(dayLabel.hasState(DateChooser.STATE_OTHER_MONTH)){if(dayLabel.hasState(DateChooser.STATE_SELECTED)){dayLabel.removeState(DateChooser.STATE_SELECTED)}}else{var day=parseInt(dayLabel.getHtml());if(day==newDay){dayLabel.addState(DateChooser.STATE_SELECTED)}else if(dayLabel.hasState(DateChooser.STATE_SELECTED)){dayLabel.removeState(DateChooser.STATE_SELECTED)}}}};return true};qx.Proto._onNavButtonClicked=function(evt){var year=this.getShownYear();var month=this.getShownMonth();switch(evt.getCurrentTarget()){case this._lastYearBt:year--;break;case this._lastMonthBt:month--;if(month<0){month=11;year--};break;case this._nextMonthBt:month++;if(month>=12){month=0;year++};break;case this._nextYearBt:year++;break};this.showMonth(month,year)};qx.Proto._onDayClicked=function(evt){var time=evt.getCurrentTarget().dateTime;this.setDate(new Date(time))};qx.Proto._onDayDblClicked=function(){this.createDispatchDataEvent(qx.constant.Event.SELECT,this.getDate())};qx.Proto._onkeydown=function(evt){var dayIncrement=null;var monthIncrement=null;var yearIncrement=null;var vKey=qx.event.type.KeyEvent.keys;if(evt.getModifiers()==0){switch(evt.getKeyCode()){case vKey.left:dayIncrement=-1;break;case vKey.right:dayIncrement=1;break;case vKey.up:dayIncrement=-7;break;case vKey.down:dayIncrement=7;break;case vKey.pageup:monthIncrement=-1;break;case vKey.pagedown:monthIncrement=1;break;case vKey.esc:if(this.getDate()!=null){this.setDate(null);return true};break;case vKey.enter:case vKey.space:if(this.getDate()!=null){this.createDispatchDataEvent(qx.constant.Event.SELECT,this.getDate())};return}}else if(evt.getModifiers()==qx.event.type.DomEvent.SHIFT_MASK){switch(evt.getKeyCode()){case vKey.pageup:yearIncrement=-1;break;case vKey.pagedown:yearIncrement=1;break}};if(dayIncrement!=null||monthIncrement!=null||yearIncrement!=null){var date=this.getDate();if(date!=null){date=new Date(date.getTime())};if(date==null){date=new Date()}else{if(dayIncrement!=null)date.setDate(date.getDate()+dayIncrement);if(monthIncrement!=null)date.setMonth(date.getMonth()+monthIncrement);if(yearIncrement!=null)date.setFullYear(date.getFullYear()+yearIncrement)};this.setDate(date)}};qx.Proto._isWeekend=function(dayOfWeek){return (dayOfWeek==0)||(dayOfWeek==6)};qx.Proto.showMonth=function(month,year){if((month!=null&&month!=this.getShownMonth())||(year!=null&&year!=this.getShownYear())){if(month!=null){this.setShownMonth(month)};if(year!=null){this.setShownYear(year)};this._updateDatePane()}};qx.Proto._updateDatePane=function(){var DateChooser=qx.ui.component.DateChooser;var today=new Date();var todayYear=today.getFullYear();var todayMonth=today.getMonth();var todayDayOfMonth=today.getDate();var selDate=this.getDate();var selYear=(selDate==null)?-1:selDate.getFullYear();var selMonth=(selDate==null)?-1:selDate.getMonth();var selDayOfMonth=(selDate==null)?-1:selDate.getDate();var shownMonth=this.getShownMonth();var shownYear=this.getShownYear();var startOfWeek=this.getStartOfWeek();var helpDate=new Date(this.getShownYear(),this.getShownMonth(),1);this._monthYearLabel.setHtml(DateChooser.MONTH_YEAR_FORMAT.format(helpDate));var firstDayOfWeek=helpDate.getDay();var firstSundayInMonth=(1+7-firstDayOfWeek)%7;for(var i=0;i<7;i++){var day=(i+startOfWeek)%7;var dayLabel=this._weekdayLabelArr[i];helpDate.setDate(firstSundayInMonth+day);dayLabel.setHtml(DateChooser.WEEKDAY_FORMAT.format(helpDate));if(this._isWeekend(day)){dayLabel.addState(DateChooser.STATE_WEEKEND)}else{dayLabel.removeState(DateChooser.STATE_WEEKEND)}};helpDate=new Date(shownYear,shownMonth,1);var nrDaysOfLastMonth=(7+firstDayOfWeek-startOfWeek)%7;helpDate.setDate(helpDate.getDate()-nrDaysOfLastMonth);for(var week=0;week<6;week++){this._weekLabelArr[week].setHtml(DateChooser.WEEK_FORMAT.format(helpDate));for(var i=0;i<7;i++){var dayLabel=this._dayLabelArr[week*7+i];var year=helpDate.getFullYear();var month=helpDate.getMonth();var dayOfMonth=helpDate.getDate();var isSelectedDate=(selYear==year&&selMonth==month&&selDayOfMonth==dayOfMonth);if(isSelectedDate){dayLabel.addState(DateChooser.STATE_SELECTED)}else{dayLabel.removeState(DateChooser.STATE_SELECTED)};if(month!=shownMonth){dayLabel.addState(DateChooser.STATE_OTHER_MONTH)}else{dayLabel.removeState(DateChooser.STATE_OTHER_MONTH)};var isToday=(year==todayYear&&month==todayMonth&&dayOfMonth==todayDayOfMonth);if(isToday){dayLabel.addState(DateChooser.STATE_TODAY)}else{dayLabel.removeState(DateChooser.STATE_TODAY)};dayLabel.setHtml(""+dayOfMonth);dayLabel.dateTime=helpDate.getTime();helpDate.setDate(helpDate.getDate()+1)}}};qx.Class.STATE_HEADER="header";qx.Class.STATE_WEEKEND="weekend";qx.Class.STATE_OTHER_MONTH="otherMonth";qx.Class.STATE_SELECTED="selected";qx.Class.STATE_TODAY="today";qx.Class.MONTH_YEAR_FORMAT=new qx.util.format.DateFormat("MMMM yyyy");qx.Class.WEEKDAY_FORMAT=new qx.util.format.DateFormat("EE");qx.Class.WEEK_FORMAT=new qx.util.format.DateFormat("ww");qx.Proto.dispose=function(){if(this.getDisposed()){return true};this._lastYearBt.removeEventListener("click",this._onNavButtonClicked,this);this._lastMonthBt.removeEventListener("click",this._onNavButtonClicked,this);this._nextMonthBt.removeEventListener("click",this._onNavButtonClicked,this);this._nextYearBt.removeEventListener("click",this._onNavButtonClicked,this);this._lastYearBt.dispose();this._lastMonthBt.dispose();this._nextMonthBt.dispose();this._nextYearBt.dispose();this._lastYearBt=null;this._lastMonthBt=null;this._nextMonthBt=null;this._nextYearBt=null;this._monthYearLabel.dispose();this._monthYearLabel=null;for(var i=0;i<this._weekdayLabelArr.length;i++){this._weekdayLabelArr[i].dispose()};this._weekdayLabelArr=null;for(var i=0;i<this._dayLabelArr.length;i++){this._dayLabelArr[i].dispose();this._dayLabelArr[i].removeEventListener(qx.constant.Event.MOUSEDOWN,this._onDayClicked,this);this._dayLabelArr[i].removeEventListener(qx.constant.Event.DBLCLICK,this._onDayDblClicked,this)};this._dayLabelArr=null;for(var i=0;i<this._weekLabelArr.length;i++){this._weekLabelArr[i].dispose()};this._weekLabelArr=null;this.removeEventListener(qx.constant.Event.KEYDOWN,this._onkeydown);return qx.ui.layout.BoxLayout.prototype.dispose.call(this)};qx.OO.defineClass("qx.io.local.CookieTransport",{BASENAME:"qx",ITEMSEPARATOR:"&",KEYVALUESEPARATOR:"=",MAXCOOKIES:20,MAXSIZE:4096});qx.Class.set=function(vName,vValue){if(!qx.util.Validation.isValid(vValue)){return qx.io.local.CookieTransport.del(vName)};var vAll=qx.io.local.CookieTransport._getAll();vAll[vName]=vValue;this._setAll(vAll)};qx.Class.get=function(vName){var vAll=qx.io.local.CookieTransport._getAll();var vValue=qx.io.local.CookieTransport._getAll()[vName];if(qx.util.Validation.isValidString(vValue)){return vValue};return qx.constant.Core.EMPTY};qx.Class.del=function(vName){var vAll=qx.io.local.CookieTransport._getAll();delete vAll[vName];this._setAll(vAll)};qx.Class.setAll=function(vHash){var vAll=qx.io.local.CookieTransport._getAll();vAll=qx.lang.Object.mergeWith(vAll,vHash);qx.io.local.CookieTransport._setAll(vAll)};qx.Class.getAll=function(){return qx.io.local.CookieTransport._getAll()};qx.Class.replaceAll=function(vHash){qx.io.local.CookieTransport._setAll(vHash)};qx.Class.delAll=function(){qx.io.local.CookieTransport.replaceAll({})};qx.Class._getAll=function(){var vHash={};var vCookie,vItems,vItem;for(var i=0;i<qx.io.local.CookieTransport.MAXCOOKIES;i++){vCookie=qx.io.local.CookieApi.get(qx.io.local.CookieTransport.BASENAME+i);if(vCookie){vItems=vCookie.split(qx.io.local.CookieTransport.ITEMSEPARATOR);for(var j=0,l=vItems.length;j<l;j++){vItem=vItems[j].split(qx.io.local.CookieTransport.KEYVALUESEPARATOR);vHash[vItem[0]]=vItem[1]}}};return vHash};qx.Class._setAll=function(vHash){var vString=qx.constant.Core.EMPTY;var vTemp;var vIndex=0;for(var vName in vHash){vTemp=vName+qx.io.local.CookieTransport.KEYVALUESEPARATOR+vHash[vName];if(vTemp.length>qx.io.local.CookieTransport.MAXSIZE){qx.dev.log.Logger.getClassLogger(qx.io.local.CookieTransport).debug("Could not store value of name '"+vName+"': Maximum size of "+qx.io.local.CookieTransport.MAXSIZE+"reached!");continue};if((qx.io.local.CookieTransport.ITEMSEPARATOR.length+vString.length+vTemp.length)>qx.io.local.CookieTransport.MAXSIZE){qx.io.local.CookieTransport._setCookie(vIndex++,vString);if(vIndex==qx.io.local.CookieTransport.MAXCOOKIES){qx.dev.log.Logger.getClassLogger(qx.io.local.CookieTransport).debug("Failed to store cookie. Max cookie amount reached!","error");return false};vString=vTemp}else{if(vString!=qx.constant.Core.EMPTY){vString+=qx.io.local.CookieTransport.ITEMSEPARATOR};vString+=vTemp}};if(vString!=qx.constant.Core.EMPTY){qx.io.local.CookieTransport._setCookie(vIndex++,vString)};while(vIndex<qx.io.local.CookieTransport.MAXCOOKIES){qx.io.local.CookieTransport._delCookie(vIndex++)}};qx.Class._setCookie=function(vIndex,vString){qx.io.local.CookieApi.set(qx.io.local.CookieTransport.BASENAME+vIndex,vString)};qx.Class._delCookie=function(vIndex){qx.io.local.CookieApi.del(qx.io.local.CookieTransport.BASENAME+vIndex)};qx.OO.defineClass("qx.ui.window.Window",qx.ui.popup.Popup,function(vCaption,vIcon,vWindowManager){qx.ui.popup.Popup.call(this);this.setMinWidth(qx.constant.Core.AUTO);this.setMinHeight(qx.constant.Core.AUTO);this.setAutoHide(false);this.activateFocusRoot();this.setWindowManager(vWindowManager||qx.ui.window.Window.getDefaultWindowManager());var f=this._frame=new qx.ui.basic.Terminator;f.setAppearance("window-resize-frame");var l=this._layout=new qx.ui.layout.VerticalBoxLayout;l.setEdge(0);this.add(l);var cb=this._captionBar=new qx.ui.layout.HorizontalBoxLayout;cb.setAppearance("window-captionbar");l.add(cb);if(qx.util.Validation.isValidString(vIcon)){var ci=this._captionIcon=new qx.ui.basic.Image(vIcon);ci.setAppearance("window-captionbar-icon");cb.add(ci)};var ct=this._captionTitle=new qx.ui.basic.Label(vCaption);ct.setAppearance("window-captionbar-title");ct.setSelectable(false);cb.add(ct);var cf=this._captionFlex=new qx.ui.basic.HorizontalSpacer;cb.add(cf);var bm=this._minimizeButton=new qx.ui.form.Button(null,"widget/window/minimize.gif");bm.setAppearance("window-captionbar-minimize-button");bm.setTabIndex(-1);bm.addEventListener(qx.constant.Event.EXECUTE,this._onminimizebuttonclick,this);bm.addEventListener(qx.constant.Event.MOUSEDOWN,this._onbuttonmousedown,this);cb.add(bm);var br=this._restoreButton=new qx.ui.form.Button(null,"widget/window/restore.gif");br.setAppearance("window-captionbar-restore-button");br.setTabIndex(-1);br.addEventListener(qx.constant.Event.EXECUTE,this._onrestorebuttonclick,this);br.addEventListener(qx.constant.Event.MOUSEDOWN,this._onbuttonmousedown,this);var bx=this._maximizeButton=new qx.ui.form.Button(null,"widget/window/maximize.gif");bx.setAppearance("window-captionbar-maximize-button");bx.setTabIndex(-1);bx.addEventListener(qx.constant.Event.EXECUTE,this._onmaximizebuttonclick,this);bx.addEventListener(qx.constant.Event.MOUSEDOWN,this._onbuttonmousedown,this);cb.add(bx);var bc=this._closeButton=new qx.ui.form.Button(null,"widget/window/close.gif");bc.setAppearance("window-captionbar-close-button");bc.setTabIndex(-1);bc.addEventListener(qx.constant.Event.EXECUTE,this._onclosebuttonclick,this);bc.addEventListener(qx.constant.Event.MOUSEDOWN,this._onbuttonmousedown,this);cb.add(bc);var p=this._pane=new qx.ui.layout.CanvasLayout;p.setHeight(qx.constant.Core.FLEX);p.setOverflow(qx.constant.Style.OVERFLOW_HIDDEN);l.add(p);var sb=this._statusBar=new qx.ui.layout.HorizontalBoxLayout;sb.setAppearance("window-statusbar");var st=this._statusText=new qx.ui.basic.Label("Ready");st.setAppearance("window-statusbar-text");st.setSelectable(false);sb.add(st);this.setCaption(vCaption);this.setIcon(vIcon);this.addEventListener(qx.constant.Event.MOUSEDOWN,this._onwindowmousedown,this);this.addEventListener(qx.constant.Event.MOUSEUP,this._onwindowmouseup,this);this.addEventListener(qx.constant.Event.MOUSEMOVE,this._onwindowmousemove,this);this.addEventListener(qx.constant.Event.CLICK,this._onwindowclick,this);cb.addEventListener(qx.constant.Event.MOUSEDOWN,this._oncaptionmousedown,this);cb.addEventListener(qx.constant.Event.MOUSEUP,this._oncaptionmouseup,this);cb.addEventListener(qx.constant.Event.MOUSEMOVE,this._oncaptionmousemove,this);cb.addEventListener(qx.constant.Event.DBLCLICK,this._oncaptiondblblick,this);this.remapChildrenHandlingTo(this._pane)});qx.Class.STATE_ACTIVE="active";qx.Class.STATE_MAXIMIZED="maximized";qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"window"});qx.OO.addProperty({name:"windowManager",type:qx.constant.Type.OBJECT});qx.OO.addProperty({name:"active",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.OO.addProperty({name:"modal",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.OO.addProperty({name:"mode",type:qx.constant.Type.STRING,defaultValue:null,possibleValues:["minimized","maximized"],allowNull:true});qx.OO.addProperty({name:"opener",type:qx.constant.Type.OBJECT});qx.OO.addProperty({name:"caption",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"icon",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"status",type:qx.constant.Type.STRING,defaultValue:"Ready"});qx.OO.addProperty({name:"showClose",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.OO.addProperty({name:"showMaximize",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.OO.addProperty({name:"showMinimize",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.OO.addProperty({name:"showStatusbar",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.OO.addProperty({name:"allowClose",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.OO.addProperty({name:"allowMaximize",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.OO.addProperty({name:"allowMinimize",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.OO.addProperty({name:"showCaption",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.OO.addProperty({name:"showIcon",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.OO.addProperty({name:"resizeable",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.OO.addProperty({name:"moveable",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.OO.addProperty({name:"resizeMethod",type:qx.constant.Type.STRING,defaultValue:"frame",possibleValues:["opaque","lazyopaque","frame","translucent"]});qx.OO.addProperty({name:"moveMethod",type:qx.constant.Type.STRING,defaultValue:"opaque",possibleValues:["opaque","frame","translucent"]});qx.ui.window.Window.getDefaultWindowManager=function(){if(!qx.ui.window.Window._defaultWindowManager){qx.ui.window.Window._defaultWindowManager=new qx.manager.object.WindowManager};return qx.ui.window.Window._defaultWindowManager};qx.ui.window.Window.MODE_OPAQUE="opaque";qx.ui.window.Window.MODE_LAZYOPAQUE="lazyopaque";qx.ui.window.Window.MODE_FRAME="frame";qx.ui.window.Window.MODE_TRANSLUCENT="translucent";qx.ui.window.Window.MODE_MINIMIZED="minimized";qx.ui.window.Window.MODE_MAXIMIZED="maximized";qx.Proto.getPane=function(){return this._pane};qx.Proto.getCaptionBar=function(){return this._captionBar};qx.Proto.getStatusBar=function(){return this._statusBar};qx.Proto.close=function(){this.hide()};qx.Proto.open=function(vOpener){if(qx.util.Validation.isValid(vOpener)){this.setOpener(vOpener)};if(this.getCentered()){this.centerToBrowser()};this.show()};qx.Proto.focus=function(){this.setActive(true)};qx.Proto.blur=function(){this.setActive(false)};qx.Proto.maximize=function(){this.setMode(qx.ui.window.Window.MODE_MAXIMIZED)};qx.Proto.minimize=function(){this.setMode(qx.ui.window.Window.MODE_MINIMIZED)};qx.Proto.restore=function(){this.setMode(null)};qx.Proto._beforeAppear=function(){qx.ui.layout.CanvasLayout.prototype._beforeAppear.call(this);qx.manager.object.PopupManager.getInstance().update();qx.event.handler.EventHandler.getInstance().setFocusRoot(this);this.getWindowManager().add(this);this._makeActive()};qx.Proto._beforeDisappear=function(){qx.ui.layout.CanvasLayout.prototype._beforeDisappear.call(this);var vFocusRoot=qx.event.handler.EventHandler.getInstance().getFocusRoot();if(vFocusRoot==this||this.contains(vFocusRoot)){qx.event.handler.EventHandler.getInstance().setFocusRoot(null)};var vWidget=qx.event.handler.EventHandler.getInstance().getCaptureWidget();if(vWidget&&this.contains(vWidget)){vWidget.setCapture(false)};this.getWindowManager().remove(this);this._makeInactive()};qx.Proto._minZIndex=1e5;qx.Proto._sendTo=function(){var vAll=qx.lang.Object.getValues(this.getWindowManager().getAll()).sort(qx.util.Compare.byZIndex);var vLength=vAll.length;var vIndex=this._minZIndex;for(var i=0;i<vLength;i++){vAll[i].setZIndex(vIndex++)}};qx.Proto._modifyActive=function(propValue,propOldValue,propData){if(propOldValue){if(this.getFocused()){this.setFocused(false)};if(this.getWindowManager().getActiveWindow()==this){this.getWindowManager().setActiveWindow(null)};this.removeState(qx.ui.window.Window.STATE_ACTIVE);this._captionBar.removeState(qx.ui.window.Window.STATE_ACTIVE)}else{if(!this.getFocusedChild()){this.setFocused(true)};this.getWindowManager().setActiveWindow(this);this.bringToFront();this.addState(qx.ui.window.Window.STATE_ACTIVE);this._captionBar.addState(qx.ui.window.Window.STATE_ACTIVE)};return true};qx.Proto._modifyModal=function(propValue,propOldValue,propData){if(this._initialLayoutDone&&this.getVisibility()&&this.getDisplay()){var vTop=this.getTopLevelWidget();propValue?vTop.block(this):vTop.release(this)};return true};qx.Proto._modifyAllowClose=function(propValue,propOldValue,propData){return this._closeButtonManager()};qx.Proto._modifyAllowMaximize=function(propValue,propOldValue,propData){return this._maximizeButtonManager()};qx.Proto._modifyAllowMinimize=function(propValue,propOldValue,propData){return this._minimizeButtonManager()};qx.Proto._modifyMode=function(propValue,propOldValue,propData){switch(propValue){case qx.ui.window.Window.MODE_MINIMIZED:this._minimize();break;case qx.ui.window.Window.MODE_MAXIMIZED:this._maximize();break;default:switch(propOldValue){case qx.ui.window.Window.MODE_MAXIMIZED:this._restoreFromMaximized();break;case qx.ui.window.Window.MODE_MINIMIZED:this._restoreFromMinimized();break}};return true};qx.Proto._modifyShowCaption=function(propValue,propOldValue,propData){if(propValue){this._captionBar.addAt(this._captionTitle,this.getShowIcon()?1:0)}else{this._captionBar.remove(this._captionTitle)};return true};qx.Proto._modifyShowIcon=function(propValue,propOldValue,propData){if(propValue){this._captionBar.addAtBegin(this._captionIcon)}else{this._captionBar.remove(this._captionIcon)};return true};qx.Proto._modifyShowStatusbar=function(propValue,propOldValue,propData){if(propValue){this._layout.addAtEnd(this._statusBar)}else{this._layout.remove(this._statusBar)};return true};qx.Proto._modifyShowClose=function(propValue,propOldValue,propData){if(propValue){this._captionBar.addAtEnd(this._closeButton)}else{this._captionBar.remove(this._closeButton)};return true};qx.Proto._modifyShowMaximize=function(propValue,propOldValue,propData){if(propValue){var t=this.getMode()==qx.ui.window.Window.MODE_MAXIMIZED?this._restoreButton:this._maximizeButton;if(this.getShowMinimize()){this._captionBar.addAfter(t,this._minimizeButton)}else{this._captionBar.addAfter(t,this._captionFlex)}}else{this._captionBar.remove(this._maximizeButton);this._captionBar.remove(this._restoreButton)};return true};qx.Proto._modifyShowMinimize=function(propValue,propOldValue,propData){if(propValue){this._captionBar.addAfter(this._minimizeButton,this._captionFlex)}else{this._captionBar.remove(this._minimizeButton)};return true};qx.Proto._minimizeButtonManager=function(){this._minimizeButton.setEnabled(this.getAllowMinimize());return true};qx.Proto._closeButtonManager=function(){this._closeButton.setEnabled(this.getAllowClose());return true};qx.Proto._maximizeButtonManager=function(){var b=this.getAllowMaximize()&&this.getResizeable()&&this._computedMaxWidthTypeNull&&this._computedMaxHeightTypeNull;this._maximizeButton.setEnabled(b);this._restoreButton.setEnabled(b);return true};qx.Proto._modifyStatus=function(propValue,propOldValue,propData){this._statusText.setHtml(propValue);return true};qx.Proto._modifyMaxWidth=function(propValue,propOldValue,propData){return this._maximizeButtonManager()};qx.Proto._modifyMaxHeight=function(propValue,propOldValue,propData){return this._maximizeButtonManager()};qx.Proto._modifyResizeable=function(propValue,propOldValue,propData){return this._maximizeButtonManager()};qx.Proto._modifyCaption=function(propValue,propOldValue,propData){this._captionTitle.setHtml(propValue);return true};qx.Proto._minimize=function(){this.blur();this.hide()};qx.Proto._restoreFromMaximized=function(){this.setLeft(this._previousLeft?this._previousLeft:null);this.setWidth(this._previousWidth?this._previousWidth:null);this.setRight(this._previousRight?this._previousRight:null);this.setTop(this._previousTop?this._previousTop:null);this.setHeight(this._previousHeight?this._previousHeight:null);this.setBottom(this._previousBottom?this._previousBottom:null);this.removeState(qx.ui.window.Window.STATE_MAXIMIZED);if(this.getShowMaximize()){var cb=this._captionBar;var v=cb.indexOf(this._restoreButton);cb.remove(this._restoreButton);cb.addAt(this._maximizeButton,v)};this.focus()};qx.Proto._restoreFromMinimized=function(){if(this.hasState(qx.ui.window.Window.STATE_MAXIMIZED)){this.setMode(qx.ui.window.Window.MODE_MAXIMIZED)};this.show();this.focus()};qx.Proto._maximize=function(){if(this.hasState(qx.ui.window.Window.STATE_MAXIMIZED)){return};this._previousLeft=this.getLeft();this._previousWidth=this.getWidth();this._previousRight=this.getRight();this._previousTop=this.getTop();this._previousHeight=this.getHeight();this._previousBottom=this.getBottom();this.setWidth(null);this.setLeft(0);this.setRight(0);this.setHeight(null);this.setTop(0);this.setBottom(0);this.addState(qx.ui.window.Window.STATE_MAXIMIZED);if(this.getShowMaximize()){var cb=this._captionBar;var v=cb.indexOf(this._maximizeButton);cb.remove(this._maximizeButton);cb.addAt(this._restoreButton,v)};this.focus()};qx.Proto._onwindowmousedown=function(e){this.focus();if(this._resizeNorth||this._resizeSouth||this._resizeWest||this._resizeEast){this.setCapture(true);this.getTopLevelWidget().setGlobalCursor(this.getCursor());var el=this.getElement();var pa=this.getParent();var pl=pa.getElement();var l=qx.dom.DomLocation.getPageAreaLeft(pl);var t=qx.dom.DomLocation.getPageAreaTop(pl);var r=qx.dom.DomLocation.getPageAreaRight(pl);var b=qx.dom.DomLocation.getPageAreaBottom(pl);switch(this.getResizeMethod()){case qx.ui.window.Window.MODE_TRANSLUCENT:this.setOpacity(0.5);break;case qx.ui.window.Window.MODE_FRAME:var f=this._frame;if(f.getParent()!=this.getParent()){f.setParent(this.getParent());qx.ui.core.Widget.flushGlobalQueues()};f._applyRuntimeLeft(qx.dom.DomLocation.getPageBoxLeft(el)-l);f._applyRuntimeTop(qx.dom.DomLocation.getPageBoxTop(el)-t);f._applyRuntimeWidth(qx.dom.DomDimension.getBoxWidth(el));f._applyRuntimeHeight(qx.dom.DomDimension.getBoxHeight(el));f.setZIndex(this.getZIndex()+1);break};var s=this._resizeSession={};if(this._resizeWest){s.boxWidth=qx.dom.DomDimension.getBoxWidth(el);s.boxRight=qx.dom.DomLocation.getPageBoxRight(el)};if(this._resizeWest||this._resizeEast){s.boxLeft=qx.dom.DomLocation.getPageBoxLeft(el);s.parentAreaOffsetLeft=l;s.parentAreaOffsetRight=r;s.minWidth=this.getMinWidthValue();s.maxWidth=this.getMaxWidthValue()};if(this._resizeNorth){s.boxHeight=qx.dom.DomDimension.getBoxHeight(el);s.boxBottom=qx.dom.DomLocation.getPageBoxBottom(el)};if(this._resizeNorth||this._resizeSouth){s.boxTop=qx.dom.DomLocation.getPageBoxTop(el);s.parentAreaOffsetTop=t;s.parentAreaOffsetBottom=b;s.minHeight=this.getMinHeightValue();s.maxHeight=this.getMaxHeightValue()}}else{delete this._resizeSession};e.stopPropagation()};qx.Proto._onwindowmouseup=function(e){var s=this._resizeSession;if(s){this.setCapture(false);this.getTopLevelWidget().setGlobalCursor(null);switch(this.getResizeMethod()){case qx.ui.window.Window.MODE_FRAME:var o=this._frame;if(!(o&&o.getParent())){break};case qx.ui.window.Window.MODE_LAZYOPAQUE:if(qx.util.Validation.isValidNumber(s.lastLeft)){this.setLeft(s.lastLeft)};if(qx.util.Validation.isValidNumber(s.lastTop)){this.setTop(s.lastTop)};if(qx.util.Validation.isValidNumber(s.lastWidth)){this.setWidth(s.lastWidth)};if(qx.util.Validation.isValidNumber(s.lastHeight)){this.setHeight(s.lastHeight)};if(this.getResizeMethod()==qx.ui.window.Window.MODE_FRAME){this._frame.setParent(null)};break;case qx.ui.window.Window.MODE_TRANSLUCENT:this.setOpacity(null);break};delete this._resizeNorth;delete this._resizeEast;delete this._resizeSouth;delete this._resizeWest;delete this._resizeSession};e.stopPropagation()};qx.Proto._near=function(p,e){return e>(p-5)&&e<(p+5)};qx.Proto._onwindowmousemove=function(e){if(!this.getResizeable()||this.getMode()!=null){return};var s=this._resizeSession;if(s){if(this._resizeWest){s.lastWidth=qx.lang.Number.limit(s.boxWidth+s.boxLeft-Math.max(e.getPageX(),s.parentAreaOffsetLeft),s.minWidth,s.maxWidth);s.lastLeft=s.boxRight-s.lastWidth-s.parentAreaOffsetLeft}else if(this._resizeEast){s.lastWidth=qx.lang.Number.limit(Math.min(e.getPageX(),s.parentAreaOffsetRight)-s.boxLeft,s.minWidth,s.maxWidth)};if(this._resizeNorth){s.lastHeight=qx.lang.Number.limit(s.boxHeight+s.boxTop-Math.max(e.getPageY(),s.parentAreaOffsetTop),s.minHeight,s.maxHeight);s.lastTop=s.boxBottom-s.lastHeight-s.parentAreaOffsetTop}else if(this._resizeSouth){s.lastHeight=qx.lang.Number.limit(Math.min(e.getPageY(),s.parentAreaOffsetBottom)-s.boxTop,s.minHeight,s.maxHeight)};switch(this.getResizeMethod()){case qx.ui.window.Window.MODE_OPAQUE:case qx.ui.window.Window.MODE_TRANSLUCENT:if(this._resizeWest||this._resizeEast){this.setWidth(s.lastWidth);if(this._resizeWest){this.setLeft(s.lastLeft)}};if(this._resizeNorth||this._resizeSouth){this.setHeight(s.lastHeight);if(this._resizeNorth){this.setTop(s.lastTop)}};break;default:var o=this.getResizeMethod()==qx.ui.window.Window.MODE_FRAME?this._frame:this;if(this._resizeWest||this._resizeEast){o._applyRuntimeWidth(s.lastWidth);if(this._resizeWest){o._applyRuntimeLeft(s.lastLeft)}};if(this._resizeNorth||this._resizeSouth){o._applyRuntimeHeight(s.lastHeight);if(this._resizeNorth){o._applyRuntimeTop(s.lastTop)}}}}else{var resizeMode=qx.constant.Core.EMPTY;var el=this.getElement();this._resizeNorth=this._resizeSouth=this._resizeWest=this._resizeEast=false;if(this._near(qx.dom.DomLocation.getPageBoxTop(el),e.getPageY())){resizeMode="n";this._resizeNorth=true}else if(this._near(qx.dom.DomLocation.getPageBoxBottom(el),e.getPageY())){resizeMode="s";this._resizeSouth=true};if(this._near(qx.dom.DomLocation.getPageBoxLeft(el),e.getPageX())){resizeMode+="w";this._resizeWest=true}else if(this._near(qx.dom.DomLocation.getPageBoxRight(el),e.getPageX())){resizeMode+="e";this._resizeEast=true};if(this._resizeNorth||this._resizeSouth||this._resizeWest||this._resizeEast){this.setCursor(resizeMode+"-resize")}else{this.setCursor(null)}};e.stopPropagation()};qx.Proto._onwindowclick=function(e){e.stopPropagation()};qx.Proto._onbuttonmousedown=function(e){e.stopPropagation()};qx.Proto._onminimizebuttonclick=function(e){this.minimize();this._minimizeButton.removeState(qx.ui.form.Button.STATE_PRESSED);this._minimizeButton.removeState(qx.ui.form.Button.STATE_ABANDONED);this._minimizeButton.removeState(qx.ui.core.Widget.STATE_OVER);e.stopPropagation()};qx.Proto._onrestorebuttonclick=function(e){this.restore();this._restoreButton.removeState(qx.ui.form.Button.STATE_PRESSED);this._restoreButton.removeState(qx.ui.form.Button.STATE_ABANDONED);this._restoreButton.removeState(qx.ui.core.Widget.STATE_OVER);e.stopPropagation()};qx.Proto._onmaximizebuttonclick=function(e){this.maximize();this._maximizeButton.removeState(qx.ui.form.Button.STATE_PRESSED);this._maximizeButton.removeState(qx.ui.form.Button.STATE_ABANDONED);this._maximizeButton.removeState(qx.ui.core.Widget.STATE_OVER);e.stopPropagation()};qx.Proto._onclosebuttonclick=function(e){this.close();this._closeButton.removeState(qx.ui.form.Button.STATE_PRESSED);this._closeButton.removeState(qx.ui.form.Button.STATE_ABANDONED);this._closeButton.removeState(qx.ui.core.Widget.STATE_OVER);e.stopPropagation()};qx.Proto._oncaptionmousedown=function(e){if(!e.isLeftButtonPressed()||!this.getMoveable()||this.getMode()!=null){return};this._captionBar.setCapture(true);var el=this.getElement();var pa=this.getParent();var pl=pa.getElement();var l=qx.dom.DomLocation.getPageAreaLeft(pl);var t=qx.dom.DomLocation.getPageAreaTop(pl);var r=qx.dom.DomLocation.getPageAreaRight(pl);var b=qx.dom.DomLocation.getPageAreaBottom(pl);this._dragSession={offsetX:e.getPageX()-qx.dom.DomLocation.getPageBoxLeft(el)+l,offsetY:e.getPageY()-qx.dom.DomLocation.getPageBoxTop(el)+t,parentAvailableAreaLeft:l+5,parentAvailableAreaTop:t+5,parentAvailableAreaRight:r-5,parentAvailableAreaBottom:b-5};switch(this.getMoveMethod()){case qx.ui.window.Window.MODE_TRANSLUCENT:this.setOpacity(0.5);break;case qx.ui.window.Window.MODE_FRAME:var f=this._frame;if(f.getParent()!=this.getParent()){f.setParent(this.getParent());qx.ui.core.Widget.flushGlobalQueues()};f._applyRuntimeLeft(qx.dom.DomLocation.getPageBoxLeft(el)-l);f._applyRuntimeTop(qx.dom.DomLocation.getPageBoxTop(el)-t);f._applyRuntimeWidth(qx.dom.DomDimension.getBoxWidth(el));f._applyRuntimeHeight(qx.dom.DomDimension.getBoxHeight(el));f.setZIndex(this.getZIndex()+1);break}};qx.Proto._oncaptionmouseup=function(e){var s=this._dragSession;if(!s){return};this._captionBar.setCapture(false);if(qx.util.Validation.isValidNumber(s.lastX)){this.setLeft(s.lastX)};if(qx.util.Validation.isValidNumber(s.lastY)){this.setTop(s.lastY)};switch(this.getMoveMethod()){case qx.ui.window.Window.MODE_TRANSLUCENT:this.setOpacity(null);break;case qx.ui.window.Window.MODE_FRAME:this._frame.setParent(null);break};delete this._dragSession};qx.Proto._oncaptionmousemove=function(e){var s=this._dragSession;if(!s||!this._captionBar.getCapture()){return};if(!qx.lang.Number.isBetweenRange(e.getPageX(),s.parentAvailableAreaLeft,s.parentAvailableAreaRight)||!qx.lang.Number.isBetweenRange(e.getPageY(),s.parentAvailableAreaTop,s.parentAvailableAreaBottom)){return};var o=this.getMoveMethod()==qx.ui.window.Window.MODE_FRAME?this._frame:this;o._applyRuntimeLeft(s.lastX=e.getPageX()-s.offsetX);o._applyRuntimeTop(s.lastY=e.getPageY()-s.offsetY)};qx.Proto._oncaptiondblblick=function(){if(!this._maximizeButton.getEnabled()){return};return this.getMode()==qx.ui.window.Window.MODE_MAXIMIZED?this.restore():this.maximize()};qx.Proto.dispose=function(){if(this.getDisposed()){return true};if(this._layout){this._layout.dispose();this._layout=null};if(this._frame){this._frame.dispose();this._frame=null};if(this._captionBar){this._captionBar.dispose();this._captionBar=null};if(this._captionIcon){this._captionIcon.dispose();this._captionIcon=null};if(this._captionTitle){this._captionTitle.dispose();this._captionTitle=null};if(this._captionFlex){this._captionFlex.dispose();this._captionFlex=null};if(this._closeButton){this._closeButton.dispose();this._closeButton=null};if(this._minimizeButton){this._minimizeButton.dispose();this._minimizeButton=null};if(this._maximizeButton){this._maximizeButton.dispose();this._maximizeButton=null};if(this._restoreButton){this._restoreButton.dispose();this._restoreButton=null};if(this._pane){this._pane.dispose();this._pane=null};if(this._statusBar){this._statusBar.dispose();this._statusBar=null};if(this._statusText){this._statusText.dispose();this._statusText=null};return qx.ui.popup.Popup.prototype.dispose.call(this)};qx.OO.defineClass("qx.io.remote.Rpc",qx.core.Target,function(url,serviceName){qx.core.Target.call(this);this.setUrl(url);if(serviceName!=null){this.setServiceName(serviceName)};this._previousServerSuffix=null;this._currentServerSuffix=null;if(qx.core.ServerSettings){this._currentServerSuffix=qx.core.ServerSettings.serverPathSuffix}});qx.OO.addProperty({name:"timeout",type:qx.constant.Type.NUMBER});qx.OO.addProperty({name:"crossDomain",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.OO.addProperty({name:"url",type:qx.constant.Type.STRING,defaultValue:null});qx.OO.addProperty({name:"serviceName",type:qx.constant.Type.STRING,defaultValue:null});qx.OO.addProperty({name:"serverData",type:qx.constant.Type.OBJECT,defaultValue:undefined});qx.OO.addProperty({name:"username",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"password",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"useBasicHttpAuth",type:qx.constant.Type.BOOLEAN});qx.io.remote.Rpc.origin={server:1,application:2,transport:3,local:4};qx.io.remote.Rpc.localError={timeout:1,abort:2};qx.Proto._callInternal=function(args,async,refreshSession){var self=this;var offset=0;var handler=args[0];if(async){offset=1};var whichMethod=(refreshSession?"refreshSession":args[offset]);var argsArray=[];for(var i=offset+1;i<args.length;++i){argsArray.push(args[i])};var req=new qx.io.remote.RemoteRequest(this.getUrl(),qx.constant.Net.METHOD_POST,qx.constant.Mime.JSON);var requestObject={"service":(refreshSession?null:this.getServiceName()),"method":whichMethod,"id":req.getSequenceNumber(),"params":argsArray};var serverData=this.getServerData();if(serverData!==undefined){requestObject.server_data=serverData};req.setCrossDomain(this.getCrossDomain());if(this.getUsername()){req.setUseBasicHttpAuth(this.getUseBasicHttpAuth());req.setUsername(this.getUsername());req.setPassword(this.getPassword())};req.setTimeout(this.getTimeout());var ex=null;var id=null;var result=null;var handleRequestFinished=function(){if(async){handler(result,ex,id)}};var addToStringToObject=function(obj){obj.toString=function(){switch(origin){case qx.io.remote.Rpc.origin.server:return "Server error "+this.code+": "+this.message;case qx.io.remote.Rpc.origin.application:return "Application error "+this.code+": "+this.message;case qx.io.remote.Rpc.origin.transport:return "Transport error "+this.code+": "+this.message;case qx.io.remote.Rpc.origin.local:return "Local error "+this.code+": "+this.message;default:return "UNEXPECTED origin "+this.origin+" error "+this.code+": "+this.message}}};var makeException=function(origin,code,message){var ex=new Object();ex.origin=origin;ex.code=code;ex.message=message;addToStringToObject(ex);return ex};req.addEventListener("failed",function(evt){var code=evt.getData().getStatusCode();ex=makeException(qx.io.remote.Rpc.origin.transport,code,qx.io.remote.RemoteExchange.statusCodeToString(code));id=this.getSequenceNumber();handleRequestFinished()});req.addEventListener("timeout",function(evt){ex=makeException(qx.io.remote.Rpc.origin.local,qx.io.remote.Rpc.localError.timeout,"Local time-out expired");id=this.getSequenceNumber();handleRequestFinished()});req.addEventListener("aborted",function(evt){ex=makeException(qx.io.remote.Rpc.origin.local,qx.io.remote.Rpc.localError.abort,"Aborted");id=this.getSequenceNumber();handleRequestFinished()});req.addEventListener("completed",function(evt){result=evt.getData().getContent();id=result["id"];if(id!=this.getSequenceNumber()){this.warn("Received id ("+id+") does not match requested id ("+this.getSequenceNumber+")!")};var exTest=result["error"];if(exTest!=null){result=null;addToStringToObject(exTest);ex=exTest}else{result=result["result"];if(refreshSession){result=eval("("+result+")");var newSuffix=qx.core.ServerSettings.serverPathSuffix;if(self._currentServerSuffix!=newSuffix){self._previousServerSuffix=self._currentServerSuffix;self._currentServerSuffix=newSuffix};self.setUrl(self.fixUrl(self.getUrl()))}};handleRequestFinished()});req.setData(qx.io.Json.stringify(requestObject));req.setAsynchronous(async);if(req.getCrossDomain()){req.setRequestHeader("Content-Type","application/x-www-form-urlencoded")}else{req.setRequestHeader("Content-Type","text/json")};req.send();if(!async){if(ex!=null){throw ex};return result}else{return req}};qx.Proto.fixUrl=function(url){if(this._previousServerSuffix==null||this._currentServerSuffix==null||this._previousServerSuffix==""||this._previousServerSuffix==this._currentServerSuffix){return url};var index=url.indexOf(this._previousServerSuffix);if(index==-1){return url};return url.substring(0,index)+this._currentServerSuffix+url.substring(index+this._previousServerSuffix.length)};qx.Proto.callSync=function(methodName){return this._callInternal(arguments,false)};qx.Proto.callAsync=function(handler,methodName){return this._callInternal(arguments,true)};qx.Proto.refreshSession=function(handler){if(this.getCrossDomain()){if(qx.core.ServerSettings&&qx.core.ServerSettings.serverPathSuffix){var timeDiff=(new Date()).getTime()-qx.core.ServerSettings.lastSessionRefresh;if(timeDiff/1000>(qx.core.ServerSettings.sessionTimeoutInSeconds-30)){this._callInternal([handler],true,true)}else{handler(true)}}else{handler(false)}}else{handler(true)}};qx.Proto.abort=function(opaqueCallRef){opaqueCallRef.abort()};qx.Class.makeServerURL=function(instanceId){var retVal=null;if(qx.core.ServerSettings){retVal=qx.core.ServerSettings.serverPathPrefix+"/.qxrpc"+qx.core.ServerSettings.serverPathSuffix;if(instanceId!=null){retVal+="?instanceId="+instanceId}};return retVal};qx.OO.defineClass("qx.ui.pageview.AbstractPageViewPage",qx.ui.layout.CanvasLayout,function(vButton){qx.ui.layout.CanvasLayout.call(this);if(qx.util.Validation.isValid(vButton)){this.setButton(vButton)}});qx.OO.addProperty({name:"button",type:qx.constant.Type.OBJECT});qx.OO.changeProperty({name:"display",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.Proto._modifyButton=function(propValue,propOldValue,propData){if(propOldValue){propOldValue.setPage(null)};if(propValue){propValue.setPage(this)};return true};qx.OO.defineClass("qx.ui.pageview.tabview.TabViewPage",qx.ui.pageview.AbstractPageViewPage,function(vButton){qx.ui.pageview.AbstractPageViewPage.call(this,vButton)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"tab-view-page"});qx.OO.defineClass("qx.ui.form.RepeatButton",qx.ui.form.Button,function(vText,vIcon,vIconWidth,vIconHeight,vFlash){qx.ui.form.Button.call(this,vText,vIcon,vIconWidth,vIconHeight,vFlash);this._timer=new qx.client.Timer;this._timer.setInterval(this.getInterval());this._timer.addEventListener("interval",this._oninterval,this)});qx.OO.addProperty({name:"interval",type:qx.constant.Type.NUMBER,defaultValue:100});qx.OO.addProperty({name:"firstInterval",type:qx.constant.Type.NUMBER,defaultValue:500});qx.Proto._onmousedown=function(e){if(e.getTarget()!=this||!e.isLeftButtonPressed()){return};this._executed=false;this._timer.setInterval(this.getFirstInterval());this._timer.start();this.removeState(qx.ui.form.Button.STATE_ABANDONED);this.addState(qx.ui.form.Button.STATE_PRESSED)};qx.Proto._onmouseup=function(e){this.setCapture(false);if(!this.hasState(qx.ui.form.Button.STATE_ABANDONED)){this.addState(qx.ui.core.Widget.STATE_OVER);if(this.hasState(qx.ui.form.Button.STATE_PRESSED)&&!this._executed){this.execute()}};this._timer.stop();this.removeState(qx.ui.form.Button.STATE_ABANDONED);this.removeState(qx.ui.form.Button.STATE_PRESSED)};qx.Proto._oninterval=function(e){this._timer.stop();this._timer.setInterval(this.getInterval());this._timer.start();this._executed=true;this.createDispatchEvent(qx.constant.Event.EXECUTE)};qx.Proto.dispose=function(){if(this.getDisposed()){return true};if(this._timer){this._timer.stop();this._timer.dispose();this._timer=null};return qx.ui.form.Button.prototype.dispose.call(this)};qx.OO.defineClass("qx.util.FormUtil");qx.Class.ignoreInputTypes=["file","submit","image","reset","button"];qx.Class.ignoreElementTypes=["fieldset"];qx.Class.checkElementTypes=["radio","checkbox"];qx.Class.multiSelectType="select-multiple";qx.Class.inputFilter=function(vNode){if(vNode.disabled){return false};var vTag=(vNode.tagName||qx.constant.Core.EMPTY).toLowerCase();if(qx.lang.Array.contains(qx.util.FormUtil.ignoreElementTypes,vTag)){return false};var vType=vNode.type.toLowerCase();if(qx.lang.Array.contains(qx.util.FormUtil.ignoreInputTypes,vType)){return false};if(!vNode.checked&&qx.lang.Array.contains(qx.util.FormUtil.checkElementTypes,vType)){return false};return true};qx.Class.getFields=function(vForm){return Array.filter(vForm.elements,qx.util.FormUtil.inputFilter)};qx.Class.encodeField=function(vNode){var vName=vNode.name||qx.constant.Core.EMPTY;var vType=(vNode.type||qx.constant.Core.EMPTY).toLowerCase();if(vType===qx.util.FormUtil.multiSelectType){var vValues=[];for(var i=0;i<vNode.options.length;i++){if(vNode.options[i].selected){vValues.push(vName+qx.constant.Core.EQUAL+vNode.options[i].value)}};return vValues.join(qx.constant.Core.AMPERSAND)}else{return vName+qx.constant.Core.EQUAL+vNode.value}};qx.Class.encodeForm=function(vForm){var vFields=qx.util.FormUtil.getFields(vForm);var vAll=[];for(var i=0,l=vFields.length;i<l;i++){vAll.push(qx.util.FormUtil.encodeField(vFields[i]))};return vAll.join(qx.constant.Core.AMPERSAND)};qx.Class.bind=function(vForm,vMethod){qx.dom.DomEventRegistration.addEventListener(vForm,qx.constant.Event.SUBMIT,function(e){e.returnValue=false;if(typeof e.preventDefault===qx.constant.Type.FUNCTION){e.preventDefault()};return vMethod(e)})};qx.OO.defineClass("qx.ui.menu.MenuCheckBox",qx.ui.menu.MenuButton,function(vLabel,vCommand,vChecked){qx.ui.menu.MenuButton.call(this,vLabel,"static/image/blank.gif",vCommand);if(qx.util.Validation.isValidBoolean(vChecked)){this.setChecked(vChecked)};qx.manager.object.ImageManager.getInstance().preload("widget/menu/checkbox.gif")});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"menu-check-box"});qx.OO.addProperty({name:"name",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"value",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"checked",type:qx.constant.Type.BOOLEAN,defaultValue:false,getAlias:"isChecked"});qx.Proto._modifyChecked=function(propValue,propOldValue,propData){propValue?this.addState(qx.ui.form.Button.STATE_CHECKED):this.removeState(qx.ui.form.Button.STATE_CHECKED);this.getIconObject().setSource(propValue?"widget/menu/checkbox.gif":"static/image/blank.gif");return true};qx.Proto.execute=function(){this.setChecked(!this.getChecked());qx.ui.menu.MenuButton.prototype.execute.call(this)};qx.OO.defineClass("qx.ui.menu.MenuRadioButton",qx.ui.menu.MenuCheckBox,function(vLabel,vCommand,vChecked){qx.ui.menu.MenuCheckBox.call(this,vLabel,vCommand,vChecked);qx.manager.object.ImageManager.getInstance().preload("widget/menu/radiobutton.gif")});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"menu-radio-button"});qx.OO.addProperty({name:"manager",type:qx.constant.Type.OBJECT,instance:"qx.manager.selection.RadioManager",allowNull:true});qx.Proto._modifyChecked=function(propValue,propOldValue,propData){var vManager=this.getManager();if(vManager){if(propValue){vManager.setSelected(this)}else if(vManager.getSelected()==this){vManager.setSelected(null)}};propValue?this.addState(qx.ui.form.Button.STATE_CHECKED):this.removeState(qx.ui.form.Button.STATE_CHECKED);this.getIconObject().setSource(propValue?"widget/menu/radiobutton.gif":"static/image/blank.gif");return true};qx.Proto._modifyManager=function(propValue,propOldValue,propData){if(propOldValue){propOldValue.remove(this)};if(propValue){propValue.add(this)};return true};qx.Proto._modifyName=function(propValue,propOldValue,propData){if(this.getManager()){this.getManager().setName(propValue)};return true};qx.Proto.execute=function(){this.setChecked(true);qx.ui.menu.MenuButton.prototype.execute.call(this)};qx.OO.defineClass("qx.ui.table.AbstractTableModel",qx.ui.table.TableModel,function(){qx.ui.table.TableModel.call(this);this._columnIdArr=[];this._columnNameArr=[];this._columnIndexMap={}});qx.Proto.getColumnCount=function(){return this._columnIdArr.length};qx.Proto.getColumnIndexById=function(columnId){return this._columnIndexMap[columnId]};qx.Proto.getColumnId=function(columnIndex){return this._columnIdArr[columnIndex]};qx.Proto.getColumnName=function(columnIndex){return this._columnNameArr[columnIndex]};qx.Proto.setColumnIds=function(columnIdArr){this._columnIdArr=columnIdArr;this._columnIndexMap={};for(var i=0;i<columnIdArr.length;i++){this._columnIndexMap[columnIdArr[i]]=i};this._columnNameArr=new Array(columnIdArr.length);if(!this._internalChange){this.createDispatchEvent(qx.ui.table.TableModel.EVENT_TYPE_META_DATA_CHANGED)}};qx.Proto.setColumnNamesByIndex=function(columnNameArr){if(this._columnIdArr.length!=columnNameArr.length){throw "this._columnIdArr and columnNameArr have different length: "+this._columnIdArr.length+" != "+columnNameArr.length};this._columnNameArr=columnNameArr;this.createDispatchEvent(qx.ui.table.TableModel.EVENT_TYPE_META_DATA_CHANGED)};qx.Proto.setColumnNamesById=function(columnNameMap){this._columnNameArr=new Array(this._columnIdArr.length);for(var i=0;i<this._columnIdArr.length;++i){this._columnNameArr[i]=columnNameMap[this._columnIdArr[i]]}};qx.Proto.setColumns=function(columnNameArr,columnIdArr){if(columnIdArr==null){columnIdArr=columnNameArr};if(columnIdArr.length!=columnNameArr.length){throw "columnIdArr and columnNameArr have different length: "+columnIdArr.length+" != "+columnNameArr.length};this._internalChange=true;this.setColumnIds(columnIdArr);this._internalChange=false;this.setColumnNamesByIndex(columnNameArr)};var idx=0;qx.Class.type={};qx.Class.type.FILE=idx++;qx.Class.type.FOLDER=idx++;idx=0;qx.Class.model={};qx.Class.model.LEVEL=idx++;qx.Class.model.TYPE=idx++;qx.Class.model.PARENT_ID=idx++;qx.Class.model.LABEL=idx++;qx.Class.model.EXPANDED=idx++;qx.Class.model.ICON=idx++;qx.Class.model.ICON_SELECTED=idx++;qx.Class.model.CHILDREN=idx++;qx.Class.model.USER_OPTIONS=idx++;qx.Class.model.RENDERER=idx++;qx.OO.defineClass("qx.ui.treevirtual.SimpleTreeModel",qx.ui.table.AbstractTableModel,function(){qx.ui.table.AbstractTableModel.call(this);this._rowArr=[];this._nodeArr=[];this._nodeArr[0]=[null,null,null,null,true,null,null,{},[],[]];this._nextNodeId=1});qx.Proto.setEditable=function(editable){throw new Error("Tree columns can not be made editable")};qx.Proto.setColumnEditable=function(columnIndex,editable){throw new Error("Tree columns can not be made editable")};qx.Proto.isColumnEditable=function(columnIndex){return false};qx.Proto.isColumnSortable=function(columnIndex){return false};qx.Proto.sortByColumn=function(columnIndex,ascending){};qx.Proto.getSortColumnIndex=function(){return -1};qx.Proto.isSortAscending=function(){return true};qx.Proto.getRowCount=function(){return this._nodeArr.length};qx.Proto.getValue=function(columnIndex,rowIndex){if(rowIndex<0||rowIndex>=this._nodeArr.length){throw new Error("this._nodeArr out of bounds: "+this._nodeArr+" (0.."+this._nodeArr.length+")")};return this._nodeArr[rowIndex][columnIndex]};qx.Proto.setValue=function(columnIndex,rowIndex,value){};qx.Proto._addNode=function(type,parentNodeId,label,icon,iconSelected){var level;var expanded;var model=qx.ui.treevirtual.SimpleTableModel.model;var parentNode;if(parentNodeId!==null){parentNode=this._nodeArr[parentNodeId];if(!parentNode){throw new Error("Request to add tree folder to non-existent parent")};if(parentNode[model.type]==qx.ui.treevirtual.SimpleTableModel.type.FILE){throw new Error("Sorry, a FILE may not have children.")};level=parentNode[model.LEVEL]+1}else{level=0;parentNode=this._root};if(type==qx.ui.treevirtual.SimpleTableModel.type.FILE){expanded=null}else{expanded=false};var node=[level,type,parentNodeId,label,expanded,icon,iconSelected,{},[],[]];var nodeId=this._nextNodeId++;this._nodeArr[nodeId]=node;parentNode[model.CHILDREN][nodeId]=true;return nodeId};qx.Proto.addTreeFolder=function(parentNodeId,label,icon,iconSelected){return this._addNode(qx.ui.treevirtual.SimpleTableModel.type.FOLDER,parentNodeId,label,icon,iconSelected)};qx.Proto.addTreeFile=function(parentNodeId,label,icon,iconSelected){return this._addNode(qx.ui.treevirtual.SimpleTableModel.type.FILE,parentNodeId,label,icon,iconSelected)};qx.Proto.setData=function(nodeArr){throw new Error("Method 'setData()' not available.  "+"Use addTreeFolder() or addTreeFile()")};qx.Proto.render=function(){inorder=function(nodeId){for(var childNodeId in this._nodeArr[nodeId][qx.Class.model.CHILDREN]){this._rowArr.push(childNodeId);if(this._nodArr[nodeId][qx.Class.model.EXPANDED]){inorder(childNodeId)}}};this._rowArr=[];inorder(0);if(this.hasEventListeners(qx.ui.table.TableModel.EVENT_TYPE_DATA_CHANGED)){var data={firstRow:0,lastRow:this._rowArr.length-1,firstColumn:0,lastColumn:this.getColumnCount()-1};this.dispatchEvent(new qx.event.type.DataEvent(qx.ui.table.TableModel.EVENT_TYPE_DATA_CHANGED,data),true)}};qx.OO.defineClass("qx.ui.listview.ListViewContentCellImage",qx.ui.basic.Image,function(vSource,vWidth,vHeight){qx.ui.basic.Image.call(this,vSource,vWidth,vHeight)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"list-view-content-cell-image"});qx.ui.listview.ListViewContentCellImage.empty={source:"static/image/blank.gif"};qx.Proto.setSource=function(vSource){if(this._initialLayoutDone){return this._updateContent(qx.manager.object.AliasManager.getInstance().resolvePath(vSource==qx.constant.Core.EMPTY?"static/image/blank.gif":vSource))}else{return qx.ui.basic.Image.prototype.setSource.call(this,vSource)}};qx.Proto._postApplyDimensions=qx.util.Return.returnTrue;qx.OO.defineClass("qx.ui.component.ColorSelector",qx.ui.layout.VerticalBoxLayout,function(vPreviousRed,vPreviousGreen,vPreviousBlue){qx.ui.layout.VerticalBoxLayout.call(this);this._createControlBar();this._createButtonBar();this._createControlPane();this._createHueSaturationPane();this._createBrightnessPane();this._createPresetFieldSet();this._createInputFieldSet();this._createPreviewFieldSet();this._createHexField();this._createRgbSpinner();this._createHsbSpinner();this._createPreviewContent();if(arguments.length==3){this.setPreviousColor(vPreviousRed,vPreviousGreen,vPreviousBlue)}});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"colorselector"});qx.OO.addProperty({name:"red",type:qx.constant.Type.NUMBER,defaultValue:255});qx.OO.addProperty({name:"green",type:qx.constant.Type.NUMBER,defaultValue:255});qx.OO.addProperty({name:"blue",type:qx.constant.Type.NUMBER,defaultValue:255});qx.OO.addProperty({name:"hue",type:qx.constant.Type.NUMBER,defaultValue:0});qx.OO.addProperty({name:"saturation",type:qx.constant.Type.NUMBER,defaultValue:0});qx.OO.addProperty({name:"brightness",type:qx.constant.Type.NUMBER,defaultValue:100});qx.Settings.setDefault("labelOK","OK");qx.Settings.setDefault("labelCancel","Cancel");qx.Settings.setDefault("labelPresets","Presets");qx.Settings.setDefault("labelDetails","Details");qx.Settings.setDefault("labelPreview","Preview (Old/New)");qx.Settings.setDefault("labelRGB","RGB");qx.Settings.setDefault("labelHSB","HSB");qx.Settings.setDefault("labelHex","Hex");qx.Proto._updateContext=null;qx.ui.component.ColorSelector.CONTEXT_RED_MODIFIER="redModifier";qx.ui.component.ColorSelector.CONTEXT_GREEN_MODIFIER="greenModifier";qx.ui.component.ColorSelector.CONTEXT_BLUE_MODIFIER="blueModifier";qx.ui.component.ColorSelector.CONTEXT_HUE_MODIFIER="hueModifier";qx.ui.component.ColorSelector.CONTEXT_SATURATION_MODIFIER="saturationModifier";qx.ui.component.ColorSelector.CONTEXT_BRIGHTNESS_MODIFIER="brightnessModifier";qx.ui.component.ColorSelector.CONTEXT_HSB_SPINNER="hsbSpinner";qx.ui.component.ColorSelector.CONTEXT_RGB_SPINNER="rgbSpinner";qx.ui.component.ColorSelector.CONTEXT_HEX_FIELD="hexField";qx.ui.component.ColorSelector.CONTEXT_HUE_SATURATION_FIELD="hueSaturationField";qx.ui.component.ColorSelector.CONTEXT_BRIGHTNESS_FIELD="brightnessField";qx.Proto._createControlBar=function(){this._controlBar=new qx.ui.layout.HorizontalBoxLayout;this._controlBar.setHeight(qx.constant.Core.AUTO);this._controlBar.setParent(this)};qx.Proto._createButtonBar=function(){this._btnbar=new qx.ui.layout.HorizontalBoxLayout;this._btnbar.setHeight(qx.constant.Core.AUTO);this._btnbar.setSpacing(4);this._btnbar.setHorizontalChildrenAlign(qx.constant.Layout.ALIGN_RIGHT);this._btnbar.setPadding(2,4);this.add(this._btnbar);this._btncancel=new qx.ui.form.Button(this.getSetting("labelCancel"),"icon/16/button-cancel.png");this._btnok=new qx.ui.form.Button(this.getSetting("labelOK"),"icon/16/button-ok.png");this._btncancel.addEventListener(qx.constant.Event.EXECUTE,this._onButtonCancelExecute,this);this._btnok.addEventListener(qx.constant.Event.EXECUTE,this._onButtonOkExecute,this);this._btnbar.add(this._btncancel,this._btnok)};qx.Proto._createControlPane=function(){this._controlPane=new qx.ui.layout.VerticalBoxLayout;this._controlPane.setWidth("auto");this._controlPane.setPadding(4);this._controlPane.setPaddingBottom(7);this._controlPane.setParent(this._controlBar)};qx.Proto._createHueSaturationPane=function(){this._hueSaturationPane=new qx.ui.layout.CanvasLayout;this._hueSaturationPane.setWidth(qx.constant.Core.AUTO);this._hueSaturationPane.setPadding(6,4);this._hueSaturationPane.setParent(this._controlBar);this._hueSaturationPane.addEventListener(qx.constant.Event.MOUSEWHEEL,this._onHueSaturationPaneMouseWheel,this);this._hueSaturationField=new qx.ui.basic.Image("widget/colorselector/huesaturation-field.jpg");this._hueSaturationField.setBorder(qx.renderer.border.BorderPresets.getInstance().thinInset);this._hueSaturationField.setMargin(5);this._hueSaturationField.setParent(this._hueSaturationPane);this._hueSaturationField.addEventListener(qx.constant.Event.MOUSEDOWN,this._onHueSaturationFieldMouseDown,this);this._hueSaturationHandle=new qx.ui.basic.Image("widget/colorselector/huesaturation-handle.gif");this._hueSaturationHandle.setLocation(0,256);this._hueSaturationHandle.setParent(this._hueSaturationPane);this._hueSaturationHandle.addEventListener(qx.constant.Event.MOUSEDOWN,this._onHueSaturationHandleMouseDown,this);this._hueSaturationHandle.addEventListener(qx.constant.Event.MOUSEUP,this._onHueSaturationHandleMouseUp,this);this._hueSaturationHandle.addEventListener(qx.constant.Event.MOUSEMOVE,this._onHueSaturationHandleMouseMove,this)};qx.Proto._createBrightnessPane=function(){this._brightnessPane=new qx.ui.layout.CanvasLayout;this._brightnessPane.setWidth(qx.constant.Core.AUTO);this._brightnessPane.setPadding(6,4);this._brightnessPane.setParent(this._controlBar);this._brightnessPane.addEventListener(qx.constant.Event.MOUSEWHEEL,this._onBrightnessPaneMouseWheel,this);this._brightnessField=new qx.ui.basic.Image("widget/colorselector/brightness-field.jpg");this._brightnessField.setBorder(qx.renderer.border.BorderPresets.getInstance().thinInset);this._brightnessField.setMargin(5,7);this._brightnessField.setParent(this._brightnessPane);this._brightnessField.addEventListener(qx.constant.Event.MOUSEDOWN,this._onBrightnessFieldMouseDown,this);this._brightnessHandle=new qx.ui.basic.Image("widget/colorselector/brightness-handle.gif");this._brightnessHandle.setLocation(0,0);this._brightnessHandle.setParent(this._brightnessPane);this._brightnessHandle.addEventListener(qx.constant.Event.MOUSEDOWN,this._onBrightnessHandleMouseDown,this);this._brightnessHandle.addEventListener(qx.constant.Event.MOUSEUP,this._onBrightnessHandleMouseUp,this);this._brightnessHandle.addEventListener(qx.constant.Event.MOUSEMOVE,this._onBrightnessHandleMouseMove,this)};qx.Proto._createPresetFieldSet=function(){this._presetFieldSet=new qx.ui.groupbox.GroupBox("Presets");this._presetFieldSet.setHeight(qx.constant.Core.AUTO);this._presetFieldSet.setParent(this._controlPane);this._presetGrid=new qx.ui.layout.GridLayout;this._presetGrid.setHorizontalSpacing(2);this._presetGrid.setVerticalSpacing(2);this._presetGrid.setColumnCount(11);this._presetGrid.setRowCount(4);this._presetGrid.setColumnWidth(0,18);this._presetGrid.setColumnWidth(1,18);this._presetGrid.setColumnWidth(2,18);this._presetGrid.setColumnWidth(3,18);this._presetGrid.setColumnWidth(4,18);this._presetGrid.setColumnWidth(5,18);this._presetGrid.setColumnWidth(6,18);this._presetGrid.setColumnWidth(7,18);this._presetGrid.setColumnWidth(8,18);this._presetGrid.setColumnWidth(9,18);this._presetGrid.setRowHeight(0,16);this._presetGrid.setRowHeight(1,16);this._presetFieldSet.add(this._presetGrid);this._presetTable=["maroon","red","orange","yellow","olive","purple","fuchsia","lime","green","navy","blue","aqua","teal","black","#333","#666","#999","#BBB","#EEE","white"];var colorField;for(var i=0;i<2;i++){for(var j=0;j<10;j++){colorField=new qx.ui.basic.Terminator;colorField.setBorder(qx.renderer.border.BorderPresets.getInstance().thinInset);colorField.setBackgroundColor(this._presetTable[i*10+j]);colorField.addEventListener(qx.constant.Event.MOUSEDOWN,this._onColorFieldClick,this);this._presetGrid.add(colorField,j,i)}}};qx.Proto._createInputFieldSet=function(){this._inputFieldSet=new qx.ui.groupbox.GroupBox(this.getSetting("labelDetails"));this._inputFieldSet.setHeight(qx.constant.Core.AUTO);this._inputFieldSet.setParent(this._controlPane);this._inputLayout=new qx.ui.layout.VerticalBoxLayout;this._inputLayout.setHeight(qx.constant.Core.AUTO);this._inputLayout.setSpacing(10);this._inputLayout.setParent(this._inputFieldSet.getFrameObject())};qx.Proto._createPreviewFieldSet=function(){this._previewFieldSet=new qx.ui.groupbox.GroupBox(this.getSetting("labelPreview"));this._previewFieldSet.setHeight(qx.constant.Core.FLEX);this._previewFieldSet.setParent(this._controlPane);this._previewLayout=new qx.ui.layout.HorizontalBoxLayout;this._previewLayout.setHeight(qx.constant.Core.HUNDREDPERCENT);this._previewLayout.setLocation(0,0);this._previewLayout.setRight(0);this._previewLayout.setSpacing(10);this._previewLayout.setParent(this._previewFieldSet.getFrameObject())};qx.Proto._createHexField=function(){this._hexLayout=new qx.ui.layout.HorizontalBoxLayout;this._hexLayout.setHeight(qx.constant.Core.AUTO);this._hexLayout.setSpacing(4);this._hexLayout.setVerticalChildrenAlign(qx.constant.Layout.ALIGN_MIDDLE);this._hexLayout.setParent(this._inputLayout);this._hexLabel=new qx.ui.basic.Label(this.getSetting("labelHex"));this._hexLabel.setWidth(25);this._hexLabel.setParent(this._hexLayout);this._hexHelper=new qx.ui.basic.Label("#");this._hexHelper.setParent(this._hexLayout);this._hexField=new qx.ui.form.TextField("FFFFFF");this._hexField.setWidth(50);this._hexField.setFont('11px "Bitstream Vera Sans Mono", monospace');this._hexField.setParent(this._hexLayout);this._hexField.addEventListener("changeValue",this._onHexFieldChange,this)};qx.Proto._createRgbSpinner=function(){this._rgbSpinLayout=new qx.ui.layout.HorizontalBoxLayout;this._rgbSpinLayout.setHeight(qx.constant.Core.AUTO);this._rgbSpinLayout.setSpacing(4);this._rgbSpinLayout.setVerticalChildrenAlign(qx.constant.Layout.ALIGN_MIDDLE);this._rgbSpinLayout.setParent(this._inputLayout);this._rgbSpinLabel=new qx.ui.basic.Label(this.getSetting("labelRGB"));this._rgbSpinLabel.setWidth(25);this._rgbSpinLabel.setParent(this._rgbSpinLayout);this._rgbSpinRed=new qx.ui.form.Spinner(0,255,255);this._rgbSpinRed.setWidth(50);this._rgbSpinGreen=new qx.ui.form.Spinner(0,255,255);this._rgbSpinGreen.setWidth(50);this._rgbSpinBlue=new qx.ui.form.Spinner(0,255,255);this._rgbSpinBlue.setWidth(50);this._rgbSpinLayout.add(this._rgbSpinRed,this._rgbSpinGreen,this._rgbSpinBlue);this._rgbSpinRed.addEventListener("change",this._setRedFromSpinner,this);this._rgbSpinGreen.addEventListener("change",this._setGreenFromSpinner,this);this._rgbSpinBlue.addEventListener("change",this._setBlueFromSpinner,this)};qx.Proto._createHsbSpinner=function(){this._hsbSpinLayout=new qx.ui.layout.HorizontalBoxLayout;this._hsbSpinLayout.setHeight(qx.constant.Core.AUTO);this._hsbSpinLayout.setSpacing(4);this._hsbSpinLayout.setVerticalChildrenAlign(qx.constant.Layout.ALIGN_MIDDLE);this._hsbSpinLayout.setParent(this._inputLayout);this._hsbSpinLabel=new qx.ui.basic.Label(this.getSetting("labelHSB"));this._hsbSpinLabel.setWidth(25);this._hsbSpinLayout.add(this._hsbSpinLabel);this._hsbSpinHue=new qx.ui.form.Spinner(0,0,360);this._hsbSpinHue.setWidth(50);this._hsbSpinSaturation=new qx.ui.form.Spinner(0,0,100);this._hsbSpinSaturation.setWidth(50);this._hsbSpinBrightness=new qx.ui.form.Spinner(0,100,100);this._hsbSpinBrightness.setWidth(50);this._hsbSpinLayout.add(this._hsbSpinHue,this._hsbSpinSaturation,this._hsbSpinBrightness);this._hsbSpinHue.addEventListener("change",this._setHueFromSpinner,this);this._hsbSpinSaturation.addEventListener("change",this._setSaturationFromSpinner,this);this._hsbSpinBrightness.addEventListener("change",this._setBrightnessFromSpinner,this)};qx.Proto._createPreviewContent=function(){this._oldColorPreview=new qx.ui.basic.Terminator;this._oldColorPreview.setBorder(qx.renderer.border.BorderPresets.getInstance().thinInset);this._oldColorPreview.setWidth(qx.constant.Core.FLEX);this._oldColorPreview.setBackgroundImage("static/image/dotted_white.gif");this._oldColorPreview.setParent(this._previewLayout);this._newColorPreview=new qx.ui.basic.Terminator;this._newColorPreview.setBorder(qx.renderer.border.BorderPresets.getInstance().thinInset);this._newColorPreview.setWidth(qx.constant.Core.FLEX);this._newColorPreview.setBackgroundColor("white");this._newColorPreview.setParent(this._previewLayout)};qx.Proto._modifyRed=function(propValue,propOldValue,propData){if(this._updateContext===null){this._updateContext=qx.ui.component.ColorSelector.CONTEXT_RED_MODIFIER};if(this._updateContext!==qx.ui.component.ColorSelector.CONTEXT_RGB_SPINNER){this._rgbSpinRed.setValue(propValue)};if(this._updateContext!==qx.ui.component.ColorSelector.CONTEXT_HEX_FIELD){this._setHexFromRgb()};switch(this._updateContext){case qx.ui.component.ColorSelector.CONTEXT_RGB_SPINNER:case qx.ui.component.ColorSelector.CONTEXT_HEX_FIELD:case qx.ui.component.ColorSelector.CONTEXT_RED_MODIFIER:this._setHueFromRgb()};this._setPreviewFromRgb();if(this._updateContext===qx.ui.component.ColorSelector.CONTEXT_RED_MODIFIER){this._updateContext=null};return true};qx.Proto._modifyGreen=function(propValue,propOldValue,propData){if(this._updateContext===null){this._updateContext=qx.ui.component.ColorSelector.CONTEXT_GREEN_MODIFIER};if(this._updateContext!==qx.ui.component.ColorSelector.CONTEXT_RGB_SPINNER){this._rgbSpinGreen.setValue(propValue)};if(this._updateContext!==qx.ui.component.ColorSelector.CONTEXT_HEX_FIELD){this._setHexFromRgb()};switch(this._updateContext){case qx.ui.component.ColorSelector.CONTEXT_RGB_SPINNER:case qx.ui.component.ColorSelector.CONTEXT_HEX_FIELD:case qx.ui.component.ColorSelector.CONTEXT_GREEN_MODIFIER:this._setHueFromRgb()};this._setPreviewFromRgb();if(this._updateContext===qx.ui.component.ColorSelector.CONTEXT_GREEN_MODIFIER){this._updateContext=null};return true};qx.Proto._modifyBlue=function(propValue,propOldValue,propData){if(this._updateContext===null){this._updateContext=qx.ui.component.ColorSelector.CONTEXT_BLUE_MODIFIER};if(this._updateContext!==qx.ui.component.ColorSelector.CONTEXT_RGB_SPINNER){this._rgbSpinBlue.setValue(propValue)};if(this._updateContext!==qx.ui.component.ColorSelector.CONTEXT_HEX_FIELD){this._setHexFromRgb()};switch(this._updateContext){case qx.ui.component.ColorSelector.CONTEXT_RGB_SPINNER:case qx.ui.component.ColorSelector.CONTEXT_HEX_FIELD:case qx.ui.component.ColorSelector.CONTEXT_BLUE_MODIFIER:this._setHueFromRgb()};this._setPreviewFromRgb();if(this._updateContext===qx.ui.component.ColorSelector.CONTEXT_BLUE_MODIFIER){this._updateContext=null};return true};qx.Proto._modifyHue=function(propValue,propOldValue,propData){if(this._updateContext===null){this._updateContext=qx.ui.component.ColorSelector.CONTEXT_HUE_MODIFIER};if(this._updateContext!==qx.ui.component.ColorSelector.CONTEXT_HSB_SPINNER){this._hsbSpinHue.setValue(propValue)};if(this._updateContext!==qx.ui.component.ColorSelector.CONTEXT_HUE_SATURATION_FIELD){if(this._hueSaturationHandle.isCreated()){this._hueSaturationHandle._applyRuntimeLeft(Math.round(propValue/1.40625)+this._hueSaturationPane.getPaddingLeft())}else{this._hueSaturationHandle.setLeft(Math.round(propValue/1.40625))}};switch(this._updateContext){case qx.ui.component.ColorSelector.CONTEXT_HSB_SPINNER:case qx.ui.component.ColorSelector.CONTEXT_HUE_SATURATION_FIELD:case qx.ui.component.ColorSelector.CONTEXT_HUE_MODIFIER:this._setRgbFromHue()};if(this._updateContext===qx.ui.component.ColorSelector.CONTEXT_HUE_MODIFIER){this._updateContext=null};return true};qx.Proto._modifySaturation=function(propValue,propOldValue,propData){if(this._updateContext===null){this._updateContext=qx.ui.component.ColorSelector.CONTEXT_SATURATION_MODIFIER};if(this._updateContext!==qx.ui.component.ColorSelector.CONTEXT_HSB_SPINNER){this._hsbSpinSaturation.setValue(propValue)};if(this._updateContext!==qx.ui.component.ColorSelector.CONTEXT_HUE_SATURATION_FIELD){if(this._hueSaturationHandle.isCreated()){this._hueSaturationHandle._applyRuntimeTop(256-Math.round(propValue*2.56)+this._hueSaturationPane.getPaddingTop())}else{this._hueSaturationHandle.setTop(256-Math.round(propValue*2.56))}};switch(this._updateContext){case qx.ui.component.ColorSelector.CONTEXT_HSB_SPINNER:case qx.ui.component.ColorSelector.CONTEXT_HUE_SATURATION_FIELD:case qx.ui.component.ColorSelector.CONTEXT_SATURATION_MODIFIER:this._setRgbFromHue()};if(this._updateContext===qx.ui.component.ColorSelector.CONTEXT_SATURATION_MODIFIER){this._updateContext=null};return true};qx.Proto._modifyBrightness=function(propValue,propOldValue,propData){if(this._updateContext===null){this._updateContext=qx.ui.component.ColorSelector.CONTEXT_BRIGHTNESS_MODIFIER};if(this._updateContext!==qx.ui.component.ColorSelector.CONTEXT_HSB_SPINNER){this._hsbSpinBrightness.setValue(propValue)};if(this._updateContext!==qx.ui.component.ColorSelector.CONTEXT_BRIGHTNESS_FIELD){var topValue=256-Math.round(propValue*2.56);if(this._brightnessHandle.isCreated()){this._brightnessHandle._applyRuntimeTop(topValue+this._brightnessPane.getPaddingTop())}else{this._brightnessHandle.setTop(topValue)}};switch(this._updateContext){case qx.ui.component.ColorSelector.CONTEXT_HSB_SPINNER:case qx.ui.component.ColorSelector.CONTEXT_BRIGHTNESS_FIELD:case qx.ui.component.ColorSelector.CONTEXT_BRIGHTNESS_MODIFIER:this._setRgbFromHue()};if(this._updateContext===qx.ui.component.ColorSelector.CONTEXT_BRIGHTNESS_MODIFIER){this._updateContext=null};return true};qx.Proto._onBrightnessHandleMouseDown=function(e){this._brightnessHandle.setCapture(true);this._brightnessSubtract=qx.dom.DomLocation.getPageOuterTop(this._brightnessField.getElement())+(e.getPageY()-qx.dom.DomLocation.getPageBoxTop(this._brightnessHandle.getElement()));e.setPropagationStopped(true)};qx.Proto._onBrightnessHandleMouseUp=function(e){this._brightnessHandle.setCapture(false)};qx.Proto._onBrightnessHandleMouseMove=function(e){if(this._brightnessHandle.getCapture()){this._setBrightnessOnFieldEvent(e)}};qx.Proto._onBrightnessFieldMouseDown=function(e){this._brightnessSubtract=qx.dom.DomLocation.getPageOuterTop(this._brightnessField.getElement())+Math.round(qx.dom.DomDimension.getBoxHeight(this._brightnessHandle.getElement())/2);this._setBrightnessOnFieldEvent(e);this._brightnessHandle.setCapture(true)};qx.Proto._onBrightnessPaneMouseWheel=function(e){this.setBrightness(qx.lang.Number.limit(this.getBrightness()+e.getWheelDelta(),0,100))};qx.Proto._setBrightnessOnFieldEvent=function(e){var vValue=qx.lang.Number.limit(e.getPageY()-this._brightnessSubtract,0,256);this._updateContext=qx.ui.component.ColorSelector.CONTEXT_BRIGHTNESS_FIELD;if(this._brightnessHandle.isCreated()){this._brightnessHandle._applyRuntimeTop(vValue+this._brightnessPane.getPaddingTop())}else{this._brightnessHandle.setTop(vValue)};this.setBrightness(100-Math.round(vValue/2.56));this._updateContext=null};qx.Proto._onButtonOkExecute=function(e){this.createDispatchEvent(qx.constant.Event.DIALOGOK)};qx.Proto._onButtonCancelExecute=function(e){this.createDispatchEvent(qx.constant.Event.DIALOGCANCEL)};qx.Proto._onHueSaturationHandleMouseDown=function(e){this._hueSaturationHandle.setCapture(true);this._hueSaturationSubtractTop=qx.dom.DomLocation.getPageOuterTop(this._hueSaturationField.getElement())+(e.getPageY()-qx.dom.DomLocation.getPageBoxTop(this._hueSaturationHandle.getElement()));this._hueSaturationSubtractLeft=qx.dom.DomLocation.getPageOuterLeft(this._hueSaturationField.getElement())+(e.getPageX()-qx.dom.DomLocation.getPageBoxLeft(this._hueSaturationHandle.getElement()));e.setPropagationStopped(true)};qx.Proto._onHueSaturationHandleMouseUp=function(e){this._hueSaturationHandle.setCapture(false)};qx.Proto._onHueSaturationHandleMouseMove=function(e){if(this._hueSaturationHandle.getCapture()){this._setHueSaturationOnFieldEvent(e)}};qx.Proto._onHueSaturationFieldMouseDown=function(e){this._hueSaturationSubtractTop=qx.dom.DomLocation.getPageOuterTop(this._hueSaturationField.getElement())+Math.round(qx.dom.DomDimension.getBoxHeight(this._hueSaturationHandle.getElement())/2);this._hueSaturationSubtractLeft=qx.dom.DomLocation.getPageOuterLeft(this._hueSaturationField.getElement())+Math.round(qx.dom.DomDimension.getBoxWidth(this._hueSaturationHandle.getElement())/2);this._setHueSaturationOnFieldEvent(e);this._hueSaturationHandle.setCapture(true)};qx.Proto._onHueSaturationPaneMouseWheel=function(e){this.setSaturation(qx.lang.Number.limit(this.getSaturation()+e.getWheelDelta(),0,100))};qx.Proto._setHueSaturationOnFieldEvent=function(e){var vTop=qx.lang.Number.limit(e.getPageY()-this._hueSaturationSubtractTop,0,256);var vLeft=qx.lang.Number.limit(e.getPageX()-this._hueSaturationSubtractLeft,0,256);if(this._hueSaturationHandle.isCreated()){this._hueSaturationHandle._applyRuntimeTop(vTop+this._hueSaturationPane.getPaddingTop());this._hueSaturationHandle._applyRuntimeLeft(vLeft+this._hueSaturationPane.getPaddingLeft())}else{this._hueSaturationHandle.setTop(vTop);this._hueSaturationHandle.setLeft(vLeft)};this._updateContext=qx.ui.component.ColorSelector.CONTEXT_HUE_SATURATION_FIELD;this.setSaturation(100-Math.round(vTop/2.56));this.setHue(Math.round(vLeft*1.40625));this._updateContext=null};qx.Proto._setRedFromSpinner=function(){if(this._updateContext!==null){return};this._updateContext=qx.ui.component.ColorSelector.CONTEXT_RGB_SPINNER;this.setRed(this._rgbSpinRed.getValue());this._updateContext=null};qx.Proto._setGreenFromSpinner=function(){if(this._updateContext!==null){return};this._updateContext=qx.ui.component.ColorSelector.CONTEXT_RGB_SPINNER;this.setGreen(this._rgbSpinGreen.getValue());this._updateContext=null};qx.Proto._setBlueFromSpinner=function(){if(this._updateContext!==null){return};this._updateContext=qx.ui.component.ColorSelector.CONTEXT_RGB_SPINNER;this.setBlue(this._rgbSpinBlue.getValue());this._updateContext=null};qx.Proto._setHueFromSpinner=function(){if(this._updateContext!==null){return};this._updateContext=qx.ui.component.ColorSelector.CONTEXT_HSB_SPINNER;this.setHue(this._hsbSpinHue.getValue());this._updateContext=null};qx.Proto._setSaturationFromSpinner=function(){if(this._updateContext!==null){return};this._updateContext=qx.ui.component.ColorSelector.CONTEXT_HSB_SPINNER;this.setSaturation(this._hsbSpinSaturation.getValue());this._updateContext=null};qx.Proto._setBrightnessFromSpinner=function(){if(this._updateContext!==null){return};this._updateContext=qx.ui.component.ColorSelector.CONTEXT_HSB_SPINNER;this.setBrightness(this._hsbSpinBrightness.getValue());this._updateContext=null};qx.Proto._onHexFieldChange=function(e){if(this._updateContext!==null){return};var vValue=this._hexField.getValue().toLowerCase();var vRed=0;var vGreen=0;var vBlue=0;switch(vValue.length){case 3:vRed=qx.renderer.color.Color.m_rgb[vValue.charAt(0)];vGreen=qx.renderer.color.Color.m_rgb[vValue.charAt(1)];vBlue=qx.renderer.color.Color.m_rgb[vValue.charAt(2)];vRed=(vRed*16)+vRed;vGreen=(vGreen*16)+vGreen;vBlue=(vBlue*16)+vBlue;break;case 6:vRed=(qx.renderer.color.Color.m_rgb[vValue.charAt(0)]*16)+qx.renderer.color.Color.m_rgb[vValue.charAt(1)];vGreen=(qx.renderer.color.Color.m_rgb[vValue.charAt(2)]*16)+qx.renderer.color.Color.m_rgb[vValue.charAt(3)];vBlue=(qx.renderer.color.Color.m_rgb[vValue.charAt(4)]*16)+qx.renderer.color.Color.m_rgb[vValue.charAt(5)];break;default:return false};this._updateContext=qx.ui.component.ColorSelector.CONTEXT_HEX_FIELD;this.setRed(vRed);this.setGreen(vGreen);this.setBlue(vBlue);this._updateContext=null};qx.Proto._setHexFromRgb=function(){this._hexField.setValue(qx.lang.String.pad(this.getRed().toString(16).toUpperCase(),2)+qx.lang.String.pad(this.getGreen().toString(16).toUpperCase(),2)+qx.lang.String.pad(this.getBlue().toString(16).toUpperCase(),2))};qx.Proto._onColorFieldClick=function(e){var vColor=e.getTarget().getBackgroundColor();if(!vColor){return this.error("Missing backgroundColor value for field: "+e.getTarget())};this.setRed(vColor.getRed());this.setGreen(vColor.getGreen());this.setBlue(vColor.getBlue())};qx.Proto._setHueFromRgb=function(){switch(this._updateContext){case qx.ui.component.ColorSelector.CONTEXT_HSB_SPINNER:case qx.ui.component.ColorSelector.CONTEXT_HUE_SATURATION_FIELD:case qx.ui.component.ColorSelector.CONTEXT_BRIGHTNESS_FIELD:break;default:var vHsb=qx.util.ColorUtil.rgb2hsb(this.getRed(),this.getGreen(),this.getBlue());this.setHue(vHsb.hue);this.setSaturation(vHsb.saturation);this.setBrightness(vHsb.brightness)}};qx.Proto._setRgbFromHue=function(){switch(this._updateContext){case qx.ui.component.ColorSelector.CONTEXT_RGB_SPINNER:case qx.ui.component.ColorSelector.CONTEXT_HEX_FIELD:break;default:var vRgb=qx.util.ColorUtil.hsb2rgb(this.getHue(),this.getSaturation(),this.getBrightness());this.setRed(vRgb.red);this.setGreen(vRgb.green);this.setBlue(vRgb.blue)}};qx.Proto._setPreviewFromRgb=function(){if(this._newColorPreview.isCreated()){this._newColorPreview._style.backgroundColor=qx.renderer.color.Color.rgb2style(this.getRed(),this.getGreen(),this.getBlue())}else{this._newColorPreview.setBackgroundColor([this.getRed(),this.getGreen(),this.getBlue()])}};qx.Proto.setPreviousColor=function(vRed,vGreen,vBlue){this._oldColorPreview.setBackgroundImage(null);this._oldColorPreview.setBackgroundColor([vRed,vGreen,vBlue]);this.setRed(vRed);this.setGreen(vGreen);this.setBlue(vBlue)};qx.Proto.dispose=function(){if(this.getDisposed()){return};if(this._controlBar){this._controlBar.dispose();this._controlBar=null};if(this._btnbar){this._btnbar.dispose();this._btnbar=null};if(this._btncancel){this._btncancel.dispose();this._btncancel=null};if(this._btnok){this._btnok.dispose();this._btnok=null};if(this._controlPane){this._controlPane.dispose();this._controlPane=null};if(this._hueSaturationPane){this._hueSaturationPane.removeEventListener(qx.constant.Event.MOUSEWHEEL,this._onHueSaturationPaneMouseWheel,this);this._hueSaturationPane.dispose();this._hueSaturationPane=null};if(this._hueSaturationField){this._hueSaturationField.removeEventListener(qx.constant.Event.MOUSEDOWN,this._onHueSaturationFieldMouseDown,this);this._hueSaturationField.dispose();this._hueSaturationField=null};if(this._hueSaturationHandle){this._hueSaturationHandle.removeEventListener(qx.constant.Event.MOUSEDOWN,this._onHueSaturationHandleMouseDown,this);this._hueSaturationHandle.removeEventListener(qx.constant.Event.MOUSEUP,this._onHueSaturationHandleMouseUp,this);this._hueSaturationHandle.removeEventListener(qx.constant.Event.MOUSEMOVE,this._onHueSaturationHandleMouseMove,this);this._hueSaturationHandle.dispose();this._hueSaturationHandle=null};if(this._brightnessPane){this._brightnessPane.removeEventListener(qx.constant.Event.MOUSEWHEEL,this._onBrightnessPaneMouseWheel,this);this._brightnessPane.dispose();this._brightnessPane=null};if(this._brightnessField){this._brightnessField.removeEventListener(qx.constant.Event.MOUSEDOWN,this._onBrightnessFieldMouseDown,this);this._brightnessField.dispose();this._brightnessField=null};if(this._brightnessHandle){this._brightnessHandle.removeEventListener(qx.constant.Event.MOUSEDOWN,this._onBrightnessHandleMouseDown,this);this._brightnessHandle.removeEventListener(qx.constant.Event.MOUSEUP,this._onBrightnessHandleMouseUp,this);this._brightnessHandle.removeEventListener(qx.constant.Event.MOUSEMOVE,this._onBrightnessHandleMouseMove,this);this._brightnessHandle.dispose();this._brightnessHandle=null};if(this._presetFieldSet){this._presetFieldSet.dispose();this._presetFieldSet=null};if(this._presetGrid){this._presetGrid.dispose();this._presetGrid=null};this._presetTable=null;if(this._inputFieldSet){this._inputFieldSet.dispose();this._inputFieldSet=null};if(this._inputLayout){this._inputLayout.dispose();this._inputLayout=null};if(this._previewFieldSet){this._previewFieldSet.dispose();this._previewFieldSet=null};if(this._previewLayout){this._previewLayout.dispose();this._previewLayout=null};if(this._hexLayout){this._hexLayout.dispose();this._hexLayout=null};if(this._hexLabel){this._hexLabel.dispose();this._hexLabel=null};if(this._hexHelper){this._hexHelper.dispose();this._hexHelper=null};if(this._hexField){this._hexField.addEventListener("changeValue",this._onHexFieldChange,this);this._hexField.dispose();this._hexField=null};if(this._rgbSpinLayout){this._rgbSpinLayout.dispose();this._rgbSpinLayout=null};if(this._rgbSpinLabel){this._rgbSpinLabel.dispose();this._rgbSpinLabel=null};if(this._rgbSpinRed){this._rgbSpinRed.removeEventListener("change",this._setRedFromSpinner,this);this._rgbSpinRed.dispose();this._rgbSpinRed=null};if(this._rgbSpinGreen){this._rgbSpinGreen.removeEventListener("change",this._setGreenFromSpinner,this);this._rgbSpinGreen.dispose();this._rgbSpinGreen=null};if(this._rgbSpinBlue){this._rgbSpinBlue.removeEventListener("change",this._setBlueFromSpinner,this);this._rgbSpinBlue.dispose();this._rgbSpinBlue=null};if(this._hsbSpinLayout){this._hsbSpinLayout.dispose();this._hsbSpinLayout=null};if(this._hsbSpinLabel){this._hsbSpinLabel.dispose();this._hsbSpinLabel=null};if(this._hsbSpinHue){this._hsbSpinHue.removeEventListener("change",this._setHueFromSpinner,this);this._hsbSpinHue.dispose();this._hsbSpinHue=null};if(this._hsbSpinSaturation){this._hsbSpinSaturation.removeEventListener("change",this._setSaturationFromSpinner,this);this._hsbSpinSaturation.dispose();this._hsbSpinSaturation=null};if(this._hsbSpinBrightness){this._hsbSpinBrightness.removeEventListener("change",this._setBrightnessFromSpinner,this);this._hsbSpinBrightness.dispose();this._hsbSpinBrightness=null};if(this._oldColorPreview){this._oldColorPreview.dispose();this._oldColorPreview=null};if(this._newColorPreview){this._newColorPreview.dispose();this._newColorPreview=null};return qx.ui.layout.VerticalBoxLayout.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.groupbox.GroupBox",qx.ui.layout.CanvasLayout,function(vLegend,vIcon){qx.ui.layout.CanvasLayout.call(this);this._createFrameObject();this._createLegendObject();this.setLegend(vLegend);if(qx.util.Validation.isValidString(vIcon)){this.setIcon(vIcon)};this.remapChildrenHandlingTo(this._frameObject)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"field-set"});qx.Proto._createLegendObject=function(){this._legendObject=new qx.ui.basic.Atom;this._legendObject.setAppearance("field-set-legend");this.add(this._legendObject)};qx.Proto._createFrameObject=function(){this._frameObject=new qx.ui.layout.CanvasLayout;this._frameObject.setAppearance("field-set-frame");this.add(this._frameObject)};qx.Proto.getFrameObject=function(){return this._frameObject};qx.Proto.getLegendObject=function(){return this._legendObject};qx.Proto.setLegend=function(vLegend){this._legendObject.setLabel(vLegend)};qx.Proto.getLegend=function(){return this._legendObject.getLabel()};qx.Proto.setIcon=function(vIcon){this._legendObject.setIcon(vIcon)};qx.Proto.getIcon=function(){this._legendObject.getIcon()};qx.Proto.dispose=function(){if(this.getDisposed()){return true};if(this._legendObject){this._legendObject.dispose();this._legendObject=null};if(this._frameObject){this._frameObject.dispose();this._frameObject=null};return qx.ui.layout.CanvasLayout.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.form.Spinner",qx.ui.layout.HorizontalBoxLayout,function(vMin,vValue,vMax){qx.ui.layout.HorizontalBoxLayout.call(this);this.setTabIndex(-1);if(qx.sys.Client.getInstance().isMshtml()){this.setStyleProperty("fontSize",qx.constant.Core.ZEROPIXEL)};this._manager=new qx.type.Range();this._textfield=new qx.ui.form.TextField;this._textfield.setAppearance("spinner-field");this._textfield.setValue(String(this._manager.getValue()));this.add(this._textfield);this._buttonlayout=new qx.ui.layout.VerticalBoxLayout;this._buttonlayout.setWidth(qx.constant.Core.AUTO);this.add(this._buttonlayout);this._upbutton=new qx.ui.basic.Image("widget/arrows/up_small.gif");this._upbutton.setAppearance("spinner-button-up");this._buttonlayout.add(this._upbutton);this._downbutton=new qx.ui.basic.Image("widget/arrows/down_small.gif");this._downbutton.setAppearance("spinner-button-down");this._buttonlayout.add(this._downbutton);this._timer=new qx.client.Timer(this.getInterval());this.addEventListener(qx.constant.Event.KEYPRESS,this._onkeypress,this);this.addEventListener(qx.constant.Event.KEYDOWN,this._onkeydown,this);this.addEventListener(qx.constant.Event.KEYUP,this._onkeyup,this);this.addEventListener(qx.constant.Event.MOUSEWHEEL,this._onmousewheel,this);this._textfield.addEventListener(qx.constant.Event.INPUT,this._oninput,this);this._textfield.addEventListener(qx.constant.Event.BLUR,this._onblur,this);this._upbutton.addEventListener(qx.constant.Event.MOUSEDOWN,this._onmousedown,this);this._downbutton.addEventListener(qx.constant.Event.MOUSEDOWN,this._onmousedown,this);this._manager.addEventListener(qx.constant.Event.CHANGE,this._onchange,this);this._timer.addEventListener(qx.constant.Event.INTERVAL,this._oninterval,this);if(qx.util.Validation.isValidNumber(vMin)){this.setMin(vMin)};if(qx.util.Validation.isValidNumber(vMax)){this.setMax(vMax)};if(qx.util.Validation.isValidNumber(vValue)){this.setValue(vValue)}});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"spinner"});qx.OO.addProperty({name:"incrementAmount",type:qx.constant.Type.NUMBER,defaultValue:1});qx.OO.addProperty({name:"wheelIncrementAmount",type:qx.constant.Type.NUMBER,defaultValue:1});qx.OO.addProperty({name:"pageIncrementAmount",type:qx.constant.Type.NUMBER,defaultValue:10});qx.OO.addProperty({name:"interval",type:qx.constant.Type.NUMBER,defaultValue:100});qx.OO.addProperty({name:"firstInterval",type:qx.constant.Type.NUMBER,defaultValue:500});qx.OO.addProperty({name:"minTimer",type:qx.constant.Type.NUMBER,defaultValue:20});qx.OO.addProperty({name:"timerDecrease",type:qx.constant.Type.NUMBER,defaultValue:2});qx.OO.addProperty({name:"amountGrowth",type:qx.constant.Type.NUMBER,defaultValue:1.01});qx.Proto._computePreferredInnerWidth=function(){return 50};qx.Proto._computePreferredInnerHeight=function(){return 14};qx.Proto._onkeypress=function(e){var vCode=e.getKeyCode();if(vCode==qx.event.type.KeyEvent.keys.enter&&!e.getAltKey()){this._checkValue(true,false,false);this._textfield.selectAll()}else{switch(vCode){case qx.event.type.KeyEvent.keys.up:case qx.event.type.KeyEvent.keys.down:case qx.event.type.KeyEvent.keys.left:case qx.event.type.KeyEvent.keys.right:case qx.event.type.KeyEvent.keys.shift:case qx.event.type.KeyEvent.keys.ctrl:case qx.event.type.KeyEvent.keys.alt:case qx.event.type.KeyEvent.keys.esc:case qx.event.type.KeyEvent.keys.del:case qx.event.type.KeyEvent.keys.backspace:case qx.event.type.KeyEvent.keys.insert:case qx.event.type.KeyEvent.keys.home:case qx.event.type.KeyEvent.keys.end:case qx.event.type.KeyEvent.keys.pageup:case qx.event.type.KeyEvent.keys.pagedown:case qx.event.type.KeyEvent.keys.numlock:case qx.event.type.KeyEvent.keys.tab:break;default:if(vCode>=48&&vCode<=57){return};e.preventDefault()}}};qx.Proto._onkeydown=function(e){var vCode=e.getKeyCode();if(this._intervalIncrease==null){switch(vCode){case qx.event.type.KeyEvent.keys.up:case qx.event.type.KeyEvent.keys.down:this._intervalIncrease=vCode==qx.event.type.KeyEvent.keys.up;this._intervalMode="single";this._resetIncrements();this._checkValue(true,false,false);this._increment();this._timer.startWith(this.getFirstInterval());break;case qx.event.type.KeyEvent.keys.pageup:case qx.event.type.KeyEvent.keys.pagedown:this._intervalIncrease=vCode==qx.event.type.KeyEvent.keys.pageup;this._intervalMode="page";this._resetIncrements();this._checkValue(true,false,false);this._pageIncrement();this._timer.startWith(this.getFirstInterval());break}}};qx.Proto._onkeyup=function(e){if(this._intervalIncrease!=null){switch(e.getKeyCode()){case qx.event.type.KeyEvent.keys.up:case qx.event.type.KeyEvent.keys.down:case qx.event.type.KeyEvent.keys.pageup:case qx.event.type.KeyEvent.keys.pagedown:this._timer.stop();this._intervalIncrease=null;this._intervalMode=null}}};qx.Proto._onmousedown=function(e){if(!e.isLeftButtonPressed()){return};this._checkValue(true);var vButton=e.getCurrentTarget();vButton.addState(qx.ui.form.Button.STATE_PRESSED);vButton.addEventListener(qx.constant.Event.MOUSEUP,this._onmouseup,this);vButton.addEventListener(qx.constant.Event.MOUSEOUT,this._onmouseup,this);this._intervalIncrease=vButton==this._upbutton;this._resetIncrements();this._increment();this._textfield.selectAll();this._timer.setInterval(this.getFirstInterval());this._timer.start()};qx.Proto._onmouseup=function(e){var vButton=e.getCurrentTarget();vButton.removeState(qx.ui.form.Button.STATE_PRESSED);vButton.removeEventListener(qx.constant.Event.MOUSEUP,this._onmouseup,this);vButton.removeEventListener(qx.constant.Event.MOUSEOUT,this._onmouseup,this);this._textfield.selectAll();this._textfield.setFocused(true);this._timer.stop();this._intervalIncrease=null};qx.Proto._onmousewheel=function(e){this._manager.setValue(this._manager.getValue()+this.getWheelIncrementAmount()*e.getWheelDelta());this._textfield.selectAll()};qx.Proto._oninput=function(e){this._checkValue(true,true)};qx.Proto._onchange=function(e){var vValue=this._manager.getValue();this._textfield.setValue(String(vValue));if(vValue==this.getMin()){this._downbutton.removeState(qx.ui.form.Button.STATE_PRESSED);this._downbutton.setEnabled(false);this._timer.stop()}else{this._downbutton.setEnabled(true)};if(vValue==this.getMax()){this._upbutton.removeState(qx.ui.form.Button.STATE_PRESSED);this._upbutton.setEnabled(false);this._timer.stop()}else{this._upbutton.setEnabled(true)};if(this.hasEventListeners(qx.constant.Event.CHANGE)){this.dispatchEvent(new qx.event.type.Event(qx.constant.Event.CHANGE),true)}};qx.Proto._onblur=function(e){this._checkValue(false)};qx.Proto.setValue=function(nValue){this._manager.setValue(nValue)};qx.Proto.getValue=function(){this._checkValue(true);return this._manager.getValue()};qx.Proto.resetValue=function(){return this._manager.resetValue()};qx.Proto.setMax=function(vMax){return this._manager.setMax(vMax)};qx.Proto.getMax=function(){return this._manager.getMax()};qx.Proto.setMin=function(vMin){return this._manager.setMin(vMin)};qx.Proto.getMin=function(){return this._manager.getMin()};qx.Proto._intervalIncrease=null;qx.Proto._oninterval=function(e){this._timer.stop();this.setInterval(Math.max(this.getMinTimer(),this.getInterval()-this.getTimerDecrease()));if(this._intervalMode=="page"){this._pageIncrement()}else{if(this.getInterval()==this.getMinTimer()){this.setIncrementAmount(this.getAmountGrowth()*this.getIncrementAmount())};this._increment()};switch(this._intervalIncrease){case true:if(this.getValue()==this.getMax()){return};case false:if(this.getValue()==this.getMin()){return}};this._timer.restartWith(this.getInterval())};qx.Proto._checkValue=function(acceptEmpty,acceptEdit){var el=this._textfield.getElement();if(!el){return};if(el.value==qx.constant.Core.EMPTY){if(!acceptEmpty){el.value=this.resetValue();this._textfield.selectAll();return}}else{var val=el.value;if(val.length>1){while(val.charAt(0)==qx.constant.Core.ZERO){val=val.substr(1,val.length)};var f1=parseInt(val)||0;if(f1!=el.value){el.value=f1;return}};if(val==qx.constant.Core.MINUS&&acceptEmpty&&this.getMin()<0){if(el.value!=val){el.value=val};return};val=parseInt(val);var doFix=true;var fixedVal=this._manager._checkValue(val);if(isNaN(fixedVal)){fixedVal=this._manager.getValue()};if(acceptEmpty&&val==qx.constant.Core.EMPTY){doFix=false}else if(!isNaN(val)){if(acceptEdit){if(val>fixedVal&&!(val>0&&fixedVal<=0)&&String(val).length<String(fixedVal).length){doFix=false}else if(val<fixedVal&&!(val<0&&fixedVal>=0)&&String(val).length<String(fixedVal).length){doFix=false}}};if(doFix&&el.value!=fixedVal){el.value=fixedVal};if(!acceptEdit){this._manager.setValue(fixedVal)}}};qx.Proto._increment=function(){this._manager.setValue(this._manager.getValue()+((this._intervalIncrease?1:-1)*this.getIncrementAmount()))};qx.Proto._pageIncrement=function(){this._manager.setValue(this._manager.getValue()+((this._intervalIncrease?1:-1)*this.getPageIncrementAmount()))};qx.Proto._resetIncrements=function(){this.resetIncrementAmount();this.resetInterval()};qx.Proto.dispose=function(){if(this.getDisposed()){return};this.removeEventListener(qx.constant.Event.KEYPRESS,this._onkeypress,this);this.removeEventListener(qx.constant.Event.KEYDOWN,this._onkeydown,this);this.removeEventListener(qx.constant.Event.KEYUP,this._onkeyup,this);this.removeEventListener(qx.constant.Event.MOUSEWHEEL,this._onmousewheel,this);if(this._textfield){this._textfield.removeEventListener(qx.constant.Event.BLUR,this._onblur,this);this._textfield.removeEventListener(qx.constant.Event.INPUT,this._oninput,this);this._textfield.dispose();this._textfield=null};if(this._buttonlayout){this._buttonlayout.dispose();this._buttonlayout=null};if(this._upbutton){this._upbutton.removeEventListener(qx.constant.Event.MOUSEDOWN,this._onmousedown,this);this._upbutton.dispose();this._upbutton=null};if(this._downbutton){this._downbutton.removeEventListener(qx.constant.Event.MOUSEDOWN,this._onmousedown,this);this._downbutton.dispose();this._downbutton=null};if(this._timer){this._timer.removeEventListener(qx.constant.Event.INTERVAL,this._oninterval,this);this._timer.stop();this._timer.dispose();this._timer=null};if(this._manager){this._manager.removeEventListener(qx.constant.Event.CHANGE,this._onchange,this);this._manager.dispose();this._manager=null};return qx.ui.layout.HorizontalBoxLayout.prototype.dispose.call(this)};qx.OO.defineClass("qx.type.Range",qx.core.Target,function(){qx.core.Target.call(this)});qx.OO.addProperty({name:"value",type:qx.constant.Type.NUMBER,defaultValue:0});qx.OO.addProperty({name:"min",type:qx.constant.Type.NUMBER,defaultValue:0});qx.OO.addProperty({name:"max",type:qx.constant.Type.NUMBER,defaultValue:100});qx.OO.addProperty({name:"step",type:qx.constant.Type.NUMBER,defaultValue:1});qx.Proto._checkValue=function(propValue){return Math.max(this.getMin(),Math.min(this.getMax(),Math.floor(propValue)))};qx.Proto._modifyValue=function(propValue,propOldValue,propData){if(this.hasEventListeners(qx.constant.Event.CHANGE)){this.dispatchEvent(new qx.event.type.Event(qx.constant.Event.CHANGE),true)};return true};qx.Proto._checkMax=function(propValue){return Math.floor(propValue)};qx.Proto._modifyMax=function(propValue,propOldValue,propData){this.setValue(Math.min(this.getValue(),propValue));if(this.hasEventListeners(qx.constant.Event.CHANGE)){this.dispatchEvent(new qx.event.type.Event(qx.constant.Event.CHANGE),true)};return true};qx.Proto._checkMin=function(propValue){return Math.floor(propValue)};qx.Proto._modifyMin=function(propValue,propOldValue,propData){this.setValue(Math.max(this.getValue(),propValue));if(this.hasEventListeners(qx.constant.Event.CHANGE)){this.dispatchEvent(new qx.event.type.Event(qx.constant.Event.CHANGE),true)};return true};qx.OO.defineClass("qx.util.ColorUtil");qx.Class.rgb2hsb=function(vRed,vGreen,vBlue){var vHue,vSaturation,vBrightness;vRed=parseFloat(vRed);vGreen=parseFloat(vGreen);vBlue=parseFloat(vBlue);var cmax=(vRed>vGreen)?vRed:vGreen;if(vBlue>cmax){cmax=vBlue};var cmin=(vRed<vGreen)?vRed:vGreen;if(vBlue<cmin){cmin=vBlue};vBrightness=cmax/255.0;if(cmax!=0){vSaturation=(cmax-cmin)/cmax}else{vSaturation=0};if(vSaturation==0){vHue=0}else{var redc=(cmax-vRed)/(cmax-cmin);var greenc=(cmax-vGreen)/(cmax-cmin);var bluec=(cmax-vBlue)/(cmax-cmin);if(vRed==cmax){vHue=bluec-greenc}else if(vGreen==cmax){vHue=2.0+redc-bluec}else{vHue=4.0+greenc-redc};vHue=vHue/6.0;if(vHue<0)vHue=vHue+1.0};return {hue:Math.round(vHue*360),saturation:Math.round(vSaturation*100),brightness:Math.round(vBrightness*100)}};qx.Class.hsb2rgb=function(vHue,vSaturation,vBrightness){var i,f,p,q,t,vReturn;vHue=parseFloat(vHue/360);vSaturation=parseFloat(vSaturation/100);vBrightness=parseFloat(vBrightness/100);if(vHue>=1.0)vHue%=1.0;if(vSaturation>1.0)vSaturation=1.0;if(vBrightness>1.0)vBrightness=1.0;var tov=Math.floor(255*vBrightness);var vReturn={};if(vSaturation==0.0){vReturn.red=vReturn.green=vReturn.blue=tov}else{vHue*=6.0;i=Math.floor(vHue);f=vHue-i;p=Math.floor(tov*(1.0-vSaturation));q=Math.floor(tov*(1.0-(vSaturation*f)));t=Math.floor(tov*(1.0-(vSaturation*(1.0-f))));switch(i){case 0:vReturn.red=tov;vReturn.green=t;vReturn.blue=p;break;case 1:vReturn.red=q;vReturn.green=tov;vReturn.blue=p;break;case 2:vReturn.red=p;vReturn.green=tov;vReturn.blue=t;break;case 3:vReturn.red=p;vReturn.green=q;vReturn.blue=tov;break;case 4:vReturn.red=t;vReturn.green=p;vReturn.blue=tov;break;case 5:vReturn.red=tov;vReturn.green=p;vReturn.blue=q;break}};return vReturn};qx.OO.defineClass("qx.manager.selection.TreeSelectionManager",qx.manager.selection.SelectionManager,function(vBoundedWidget){qx.manager.selection.SelectionManager.call(this,vBoundedWidget)});qx.OO.changeProperty({name:"multiSelection",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.OO.changeProperty({name:"dragSelection",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.Proto._getFirst=function(){return qx.lang.Array.getFirst(this.getItems())};qx.Proto._getLast=function(){return qx.lang.Array.getLast(this.getItems())};qx.Proto.getItems=function(){return this.getBoundedWidget().getItems()};qx.Proto.getNext=function(vItem){if(vItem){if(qx.ui.tree.Tree.isOpenTreeFolder(vItem)){return vItem.getFirstVisibleChildOfFolder()}else if(vItem.isLastVisibleChild()){var vCurrent=vItem;while(vCurrent&&vCurrent.isLastVisibleChild()){vCurrent=vCurrent.getParentFolder()};if(vCurrent&&vCurrent instanceof qx.ui.tree.AbstractTreeElement&&vCurrent.getNextVisibleSibling()&&vCurrent.getNextVisibleSibling() instanceof qx.ui.tree.AbstractTreeElement){return vCurrent.getNextVisibleSibling()}}else{return vItem.getNextVisibleSibling()}}else{return this.getBoundedWidget().getFirstTreeChild()}};qx.Proto.getPrevious=function(vItem){if(vItem){if(vItem==this.getBoundedWidget()){return}else if(vItem.isFirstVisibleChild()){if(vItem.getParentFolder() instanceof qx.ui.tree.TreeFolder){return vItem.getParentFolder()}}else{var vPrev=vItem.getPreviousVisibleSibling();while(vPrev instanceof qx.ui.tree.AbstractTreeElement){if(qx.ui.tree.Tree.isOpenTreeFolder(vPrev)){vPrev=vPrev.getLastVisibleChildOfFolder()}else{break}};return vPrev}}else{return this.getBoundedWidget().getLastTreeChild()}};qx.Proto.getItemTop=function(vItem){var vBoundedWidget=this.getBoundedWidget();var vElement=vItem.getElement();var vOffset=0;while(vElement&&vElement.qx_Widget!=vBoundedWidget){vOffset+=vElement.offsetTop;vElement=vElement.parentNode};return vOffset};qx.Proto.getItemHeight=function(vItem){if(vItem instanceof qx.ui.tree.TreeFolder&&vItem._horizontalLayout){return vItem._horizontalLayout.getOffsetHeight()}else{return vItem.getOffsetHeight()}};qx.Proto.scrollItemIntoView=function(vItem){if(vItem instanceof qx.ui.tree.TreeFolder&&vItem._horizontalLayout){return vItem._horizontalLayout.scrollIntoView()}else{return vItem.scrollIntoView()}};qx.Proto.renderItemSelectionState=function(vItem,vIsSelected){vItem.setSelected(vIsSelected)};qx.OO.defineClass("qx.ui.tree.AbstractTreeElement",qx.ui.layout.BoxLayout,function(vLabel,vIcon,vIconSelected){if(this.classname==qx.ui.tree.AbstractTreeElement.ABSTRACT_CLASS){throw new Error("Please omit the usage of qx.ui.tree.AbstractTreeElement directly. Choose between qx.ui.tree.TreeFolder and qx.ui.tree.TreeFile instead!")};this._indentObject=new qx.ui.embed.HtmlEmbed;this._iconObject=new qx.ui.basic.Image;this._labelObject=new qx.ui.basic.Label;this._indentObject.setAnonymous(true);this._iconObject.setAnonymous(true);this._labelObject.setAnonymous(true);this._labelObject.setSelectable(false);this._labelObject.setStyleProperty(qx.constant.Style.PROPERTY_LINEHEIGHT,qx.constant.Core.HUNDREDPERCENT);qx.ui.layout.BoxLayout.call(this,qx.constant.Layout.ORIENTATION_HORIZONTAL);if(qx.util.Validation.isValid(vLabel)){this.setLabel(vLabel)};this.setSelectable(false);this.BASE_URI=qx.manager.object.AliasManager.getInstance().resolvePath("widget/tree/");this.add(this._indentObject,this._iconObject,this._labelObject);if((vIcon!=null)&&(qx.util.Validation.isValidString(vIcon))){this.setIcon(vIcon);this.setIconSelected(vIcon)};if((vIconSelected!=null)&&(qx.util.Validation.isValidString(vIconSelected))){this.setIconSelected(vIconSelected)};this._iconObject.setSource(this._evalCurrentIcon());this._iconObject.setAppearance("tree-element-icon");this._labelObject.setAppearance("tree-element-label");this.addEventListener(qx.constant.Event.MOUSEDOWN,this._onmousedown);this.addEventListener(qx.constant.Event.MOUSEUP,this._onmouseup)});qx.ui.tree.AbstractTreeElement.ABSTRACT_CLASS="qx.ui.tree.AbstractTreeElement";qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"tree-element"});qx.OO.addProperty({name:"icon",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"iconSelected",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"label",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"selected",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.Proto._modifyLabel=function(propValue,propOldValue,propData){if(this._labelObject){this._labelObject.setHtml(propValue)};return true};qx.Proto._modifySelected=function(propValue,propOldValue,propData){propValue?this.addState(qx.manager.selection.SelectionManager.STATE_SELECTED):this.removeState(qx.manager.selection.SelectionManager.STATE_SELECTED);propValue?this._labelObject.addState(qx.manager.selection.SelectionManager.STATE_SELECTED):this._labelObject.removeState(qx.manager.selection.SelectionManager.STATE_SELECTED);var vTree=this.getTree();if(!vTree._fastUpdate||(propOldValue&&vTree._oldItem==this)){this._iconObject.setSource(this._evalCurrentIcon());if(propValue){this._iconObject.addState(qx.manager.selection.SelectionManager.STATE_SELECTED)}else{this._iconObject.removeState(qx.manager.selection.SelectionManager.STATE_SELECTED)}};var vManager=this.getTree().getManager();if(propOldValue&&vManager.getSelectedItem()==this){vManager.deselectAll()}else if(propValue&&vManager.getSelectedItem()!=this){vManager.setSelectedItem(this)};return true};qx.Proto._evalCurrentIcon=function(){if(this.getSelected()&&this.getIconSelected()){return this.getIconSelected()}else{return this.getIcon()||"icon/16/file-new.png"}};qx.Proto.getParentFolder=function(){try{return this.getParent().getParent()}catch(ex){};return null};qx.Proto.getLevel=function(){var vParentFolder=this.getParentFolder();return vParentFolder?vParentFolder.getLevel()+1:null};qx.Proto.getTree=function(){var vParentFolder=this.getParentFolder();return vParentFolder?vParentFolder.getTree():null};qx.Proto.getIndentObject=function(){return this._indentObject};qx.Proto.getIconObject=function(){return this._iconObject};qx.Proto.getLabelObject=function(){return this._labelObject};qx.Proto.destroy=function(){var manager=this.getTree()?this.getTree().getManager():null;if(manager){if(manager.getItemSelected(this)){if(manager.getMultiSelection()){manager.setItemSelected(this,false)}else{manager.deselectAll()}};if(manager.getLeadItem()==this){manager.setLeadItem(null)};if(manager.getAnchorItem()==this){manager.setAnchorItem(null)}};if(this.destroyContent){this.destroyContent()};this.disconnect();var parentFolder=this.getParentFolder();if(parentFolder){parentFolder.remove(this)};this.dispose()};qx.Proto.addToTreeQueue=function(){var vTree=this.getTree();if(vTree){vTree.addChildToTreeQueue(this)}};qx.Proto.removeFromTreeQueue=function(){var vTree=this.getTree();if(vTree){vTree.removeChildFromTreeQueue(this)}};qx.Proto.addToCustomQueues=function(vHint){this.addToTreeQueue();qx.ui.layout.BoxLayout.prototype.addToCustomQueues.call(this,vHint)};qx.Proto.removeFromCustomQueues=function(vHint){this.removeFromTreeQueue();qx.ui.layout.BoxLayout.prototype.removeFromCustomQueues.call(this,vHint)};qx.Proto._modifyParent=function(propValue,propOldValue,propData){qx.ui.layout.BoxLayout.prototype._modifyParent.call(this,propValue,propOldValue,propData);if(propOldValue&&!propOldValue.isDisplayable()&&propOldValue.getParent()&&propOldValue.getParent().isDisplayable()){propOldValue.getParent().addToTreeQueue()};if(propValue&&!propValue.isDisplayable()&&propValue.getParent()&&propValue.getParent().isDisplayable()){propValue.getParent().addToTreeQueue()};return true};qx.Proto._handleDisplayableCustom=function(vDisplayable,vParent,vHint){qx.ui.layout.BoxLayout.prototype._handleDisplayableCustom.call(this,vDisplayable,vParent,vHint);if(vHint){var vParentFolder=this.getParentFolder();var vPreviousParentFolder=this._previousParentFolder;if(vPreviousParentFolder){if(this._wasLastVisibleChild){vPreviousParentFolder._updateIndent()}else if(!vPreviousParentFolder.hasContent()){vPreviousParentFolder.addToTreeQueue()}};if(vParentFolder&&vParentFolder.isDisplayable()&&vParentFolder._initialLayoutDone){vParentFolder.addToTreeQueue()};if(this.isLastVisibleChild()){var vPrev=this.getPreviousVisibleSibling();if(vPrev&&vPrev instanceof qx.ui.tree.AbstractTreeElement){vPrev._updateIndent()}};if(vDisplayable){this._updateIndent()}}};qx.Proto._onmousedown=function(e){this.getTree().getManager().handleMouseDown(this,e);e.stopPropagation()};qx.Proto._onmouseup=qx.util.Return.returnTrue;qx.ui.tree.AbstractTreeElement.INDENT_CODE_1="<img style=\"position:absolute;top:0px;left:";qx.ui.tree.AbstractTreeElement.INDENT_CODE_2="px\" src=\"";qx.ui.tree.AbstractTreeElement.INDENT_CODE_3="\" />";qx.ui.tree.AbstractTreeElement.IMG_EXTENSION="gif";qx.Proto.flushTree=function(){this._previousParentFolder=this.getParentFolder();this._wasLastVisibleChild=this.isLastVisibleChild();var vLevel=this.getLevel();var vTree=this.getTree();var vImage;var vHtml=[];var vCurrentObject=this;for(var i=0;i<vLevel;i++){vImage=vCurrentObject.getIndentSymbol(vTree.getUseTreeLines(),i==0);if(vImage){vHtml.push(qx.ui.tree.AbstractTreeElement.INDENT_CODE_1);vHtml.push((vLevel-i-1)*19);vHtml.push(qx.ui.tree.AbstractTreeElement.INDENT_CODE_2);vHtml.push(this.BASE_URI);vHtml.push(vImage);vHtml.push(qx.constant.Core.DOT);vHtml.push(qx.ui.tree.AbstractTreeElement.IMG_EXTENSION);vHtml.push(qx.ui.tree.AbstractTreeElement.INDENT_CODE_3)};vCurrentObject=vCurrentObject.getParentFolder()};this._indentObject.setHtml(vHtml.join(qx.constant.Core.EMPTY));this._indentObject.setWidth(vLevel*19)};qx.Proto.dispose=function(){if(this.getDisposed()){return true};if(this._indentObject){this._indentObject.dispose();this._indentObject=null};if(this._iconObject){this._iconObject.dispose();this._iconObject=null};if(this._labelObject){this._labelObject.dispose();this._labelObject=null};this._previousParentFolder=null;this.removeEventListener(qx.constant.Event.MOUSEDOWN,this._onmousedown);this.removeEventListener(qx.constant.Event.MOUSEUP,this._onmouseup);return qx.ui.layout.BoxLayout.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.tree.TreeFolder",qx.ui.tree.AbstractTreeElement,function(vLabel,vIcon,vIconSelected){qx.ui.tree.AbstractTreeElement.call(this,vLabel,vIcon,vIconSelected);this._iconObject.setAppearance("tree-folder-icon");this._labelObject.setAppearance("tree-folder-label");this.addEventListener(qx.constant.Event.DBLCLICK,this._ondblclick);this.add=this.addToFolder;this.addBefore=this.addBeforeToFolder;this.addAfter=this.addAfterToFolder;this.addAt=this.addAtToFolder;this.addAtBegin=this.addAtBeginToFolder;this.addAtEnd=this.addAtEndToFolder;this.remove=this.removeFromFolder});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"tree-folder"});qx.OO.changeProperty({name:"icon",type:qx.constant.Type.STRING});qx.OO.changeProperty({name:"iconSelected",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"open",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.OO.addProperty({name:"alwaysShowPlusMinusSymbol",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.Proto.hasContent=function(){return this._containerObject&&this._containerObject.getChildrenLength()>0};qx.Proto.open=function(){if(this.getOpen()){return};if(this.hasContent()&&this.isSeeable()){this.getTopLevelWidget().setGlobalCursor(qx.constant.Style.CURSOR_PROGRESS);qx.client.Timer.once(this._openCallback,this,0)}else{this.setOpen(true)}};qx.Proto.close=function(){this.setOpen(false)};qx.Proto.toggle=function(){this.getOpen()?this.close():this.open()};qx.Proto._openCallback=function(){this.setOpen(true);qx.ui.core.Widget.flushGlobalQueues();this.getTopLevelWidget().setGlobalCursor(null)};qx.Proto._createChildrenStructure=function(){this.setAppearance(this instanceof qx.ui.tree.Tree?"tree-container":"tree-folder-container");if(!this._horizontalLayout){this.setOrientation(qx.constant.Layout.ORIENTATION_VERTICAL);this._horizontalLayout=new qx.ui.layout.HorizontalBoxLayout;this._horizontalLayout.setWidth(null);this._horizontalLayout.setParent(this);this._horizontalLayout.setAnonymous(true);this._horizontalLayout.setAppearance(this instanceof qx.ui.tree.Tree?"tree":"tree-folder");this._indentObject.setParent(this._horizontalLayout);this._iconObject.setParent(this._horizontalLayout);this._labelObject.setParent(this._horizontalLayout)};if(!this._containerObject){this._containerObject=new qx.ui.layout.VerticalBoxLayout;this._containerObject.setWidth(null);this._containerObject.setAnonymous(true);this._containerObject.setDisplay(this.getOpen());this._containerObject.setParent(this);this.remapChildrenHandlingTo(this._containerObject)}};qx.Proto._handleChildMove=function(vChild,vRelationIndex,vRelationChild){if(vChild.isDisplayable()){var vChildren=this._containerObject.getChildren();var vOldChildIndex=vChildren.indexOf(vChild);if(vOldChildIndex!=-1){if(vRelationChild){vRelationIndex=vChildren.indexOf(vRelationChild)};if(vRelationIndex==vChildren.length-1){vChild._updateIndent();this._containerObject.getLastVisibleChild()._updateIndent()}else if(vChild._wasLastVisibleChild){vChild._updateIndent();var vPreviousSibling=vChild.getPreviousVisibleSibling();if(vPreviousSibling){vPreviousSibling._updateIndent()}}}}};qx.Proto.addToFolder=function(){this._createChildrenStructure();if(this._containerObject){return this._containerObject.add.apply(this._containerObject,arguments)}};qx.Proto.addBeforeToFolder=function(vChild,vBefore){this._createChildrenStructure();if(this._containerObject){this._handleChildMove(vChild,null,vBefore);return this._containerObject.addBefore.apply(this._containerObject,arguments)}};qx.Proto.addAfterToFolder=function(vChild,vAfter){this._createChildrenStructure();if(this._containerObject){this._handleChildMove(vChild,null,vAfter);return this._containerObject.addAfter.apply(this._containerObject,arguments)}};qx.Proto.addAtToFolder=function(vChild,vIndex){this._createChildrenStructure();if(this._containerObject){this._handleChildMove(vChild,vIndex);return this._containerObject.addAt.apply(this._containerObject,arguments)}};qx.Proto.addAtBeginToFolder=function(vChild){return this.addAtToFolder(vChild,0)};qx.Proto.addAtEndToFolder=function(vChild){this._createChildrenStructure();if(this._containerObject){var vLast=this._containerObject.getLastChild();if(vLast){this._handleChildMove(vChild,null,vLast);return this._containerObject.addAfter.call(this._containerObject,vChild,vLast)}else{return this.addAtBeginToFolder(vChild)}}};qx.Proto._remappingChildTable=["remove","removeAt","removeAll"];qx.Proto.getContainerObject=function(){return this._containerObject};qx.Proto.getHorizontalLayout=function(){return this._horizontalLayout};qx.Proto.getFirstVisibleChildOfFolder=function(){if(this._containerObject){return this._containerObject.getFirstChild()}};qx.Proto.getLastVisibleChildOfFolder=function(){if(this._containerObject){return this._containerObject.getLastChild()}};qx.Proto.getItems=function(){var a=[this];if(this._containerObject){var ch=this._containerObject.getVisibleChildren();for(var i=0,chl=ch.length;i<chl;i++){a=a.concat(ch[i].getItems())}};return a};qx.Proto.destroyContent=function(){if(this.hasContent()){var manager=this.getTree()?this.getTree().getManager():null;var leadItem;var anchorItem;if(manager){leadItem=manager.getLeadItem();anchorItem=manager.getAnchorItem()};var items=this.getItems();var item;for(var i=items.length-1;i>=0;--i){item=items[i];if(item!=this){if(manager){if(leadItem==item){manager.setLeadItem(null)};if(anchorItem==item){manager.setAnchorItem(null)};if(manager.getItemSelected(item)){if(manager.getMultiSelection()){manager.setItemSelected(item,false)}else{manager.deselectAll()}};if(item.destroyContent){item.destroyContent()}};item.disconnect();this.remove(item);item.dispose()}}}};qx.Proto._evalCurrentIcon=function(){if(this.getSelected()){return this.getIconSelected()||"icon/16/folder-open.png"}else{return this.getIcon()||"icon/16/folder.png"}};qx.Proto._modifyOpen=function(propValue,propOldValue,propData){this._updateLastColumn();if(this._containerObject){this._containerObject.setDisplay(propValue)};return true};qx.Proto._modifyAlwaysShowPlusMinusSymbol=function(propValue,propOldValue,propData){this._updateLastColumn();return true};qx.Proto._updateLastColumn=function(){if(this._indentObject){var vElement=this._indentObject.getElement();if(vElement&&vElement.firstChild){vElement.firstChild.src=this.BASE_URI+this.getIndentSymbol(this.getTree().getUseTreeLines(),true)+".gif"}}};qx.Proto._onmousedown=function(e){var vOriginalTarget=e.getOriginalTarget();switch(vOriginalTarget){case this._indentObject:if(this._indentObject.getElement().firstChild==e.getDomTarget()){this.getTree().getManager().handleMouseDown(this,e);this.toggle()};break;case this._containerObject:break;case this:if(this._containerObject){break};default:this.getTree().getManager().handleMouseDown(this,e)};e.stopPropagation()};qx.Proto._onmouseup=function(e){var vOriginalTarget=e.getOriginalTarget();switch(vOriginalTarget){case this._indentObject:case this._containerObject:case this:break;default:if(!this.getTree().getUseDoubleClick()){this.open()}}};qx.Proto._ondblclick=function(e){if(!this.getTree().getUseDoubleClick()){return};this.toggle();e.stopPropagation()};qx.Proto.getIndentSymbol=function(vUseTreeLines,vIsLastColumn){if(vIsLastColumn){if(this.hasContent()||this.getAlwaysShowPlusMinusSymbol()){if(!vUseTreeLines){return this.getOpen()?"minus":"plus"}else if(this.isLastChild()){return this.getOpen()?"end_minus":"end_plus"}else{return this.getOpen()?"cross_minus":"cross_plus"}}else if(vUseTreeLines){return this.isLastChild()?"end":"cross"}}else{return vUseTreeLines&&!this.isLastChild()?"line":null}};qx.Proto._updateIndent=function(){qx.ui.tree.TreeFile.prototype._updateIndent.call(this);if(!this._containerObject){return};var ch=this._containerObject.getVisibleChildren();for(var i=0,l=ch.length;i<l;i++){ch[i]._updateIndent()}};qx.Proto.dispose=function(){if(this.getDisposed()){return};this.removeEventListener(qx.constant.Event.DBLCLICK,this._ondblclick);if(this._horizontalLayout){this._horizontalLayout.dispose();this._horizontalLayout=null};if(this._containerObject){this._containerObject.dispose();this._containerObject=null};return qx.ui.tree.AbstractTreeElement.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.tree.Tree",qx.ui.tree.TreeFolder,function(vLabel,vIcon,vIconSelected){qx.ui.tree.TreeFolder.call(this,vLabel,vIcon,vIconSelected);this._manager=new qx.manager.selection.TreeSelectionManager(this);this._iconObject.setAppearance("tree-icon");this._labelObject.setAppearance("tree-label");this.setOpen(true);this.addToFolder();this.addEventListener(qx.constant.Event.KEYDOWN,this._onkeydown);this.addEventListener(qx.constant.Event.KEYUP,this._onkeyup)});qx.OO.addProperty({name:"useDoubleClick",type:qx.constant.Type.BOOLEAN,defaultValue:false,getAlias:"useDoubleClick"});qx.OO.addProperty({name:"useTreeLines",type:qx.constant.Type.BOOLEAN,defaultValue:true,getAlias:"useTreeLines"});qx.Proto.getManager=function(){return this._manager};qx.Proto.getSelectedElement=function(){return this.getManager().getSelectedItem()};qx.Proto.addChildToTreeQueue=function(vChild){if(!vChild._isInTreeQueue&&!vChild._isDisplayable){this.debug("Ignoring invisible child: "+vChild)};if(!vChild._isInTreeQueue&&vChild._isDisplayable){qx.ui.core.Widget.addToGlobalWidgetQueue(this);if(!this._treeQueue){this._treeQueue={}};this._treeQueue[vChild.toHashCode()]=vChild;vChild._isInTreeQueue=true}};qx.Proto.removeChildFromTreeQueue=function(vChild){if(vChild._isInTreeQueue){if(this._treeQueue){delete this._treeQueue[vChild.toHashCode()]};delete vChild._isInTreeQueue}};qx.Proto.flushWidgetQueue=function(){this.flushTreeQueue()};qx.Proto.flushTreeQueue=function(){if(!qx.lang.Object.isEmpty(this._treeQueue)){for(var vHashCode in this._treeQueue){this._treeQueue[vHashCode].flushTree();delete this._treeQueue[vHashCode]._isInTreeQueue};delete this._treeQueue}};qx.Proto._modifyUseTreeLines=function(propValue,propOldValue,propData){if(this._initialLayoutDone){this._updateIndent()};return true};qx.Proto.getTree=function(){return this};qx.Proto.getParentFolder=function(){return null};qx.Proto.getLevel=function(){return 0};qx.ui.tree.Tree.isTreeFolder=function(vObject){return vObject&&vObject instanceof qx.ui.tree.TreeFolder&&!(vObject instanceof qx.ui.tree.Tree)};qx.ui.tree.Tree.isOpenTreeFolder=function(vObject){return vObject instanceof qx.ui.tree.TreeFolder&&vObject.getOpen()&&vObject.hasContent()};qx.Proto._onkeydown=function(e){var vManager=this.getManager();var vSelectedItem=vManager.getSelectedItem();switch(e.getKeyCode()){case qx.event.type.KeyEvent.keys.left:e.preventDefault();if(qx.ui.tree.Tree.isTreeFolder(vSelectedItem)){if(!vSelectedItem.getOpen()){var vParent=vSelectedItem.getParentFolder();if(vParent instanceof qx.ui.tree.TreeFolder){if(!(vParent instanceof qx.ui.tree.Tree)){vParent.close()};this.setSelectedElement(vParent)}}else{return vSelectedItem.close()}}else if(vSelectedItem instanceof qx.ui.tree.TreeFile){var vParent=vSelectedItem.getParentFolder();if(vParent instanceof qx.ui.tree.TreeFolder){if(!(vParent instanceof qx.ui.tree.Tree)){vParent.close()};this.setSelectedElement(vParent)}};break;case qx.event.type.KeyEvent.keys.right:e.preventDefault();if(qx.ui.tree.Tree.isTreeFolder(vSelectedItem)){if(!vSelectedItem.getOpen()){return vSelectedItem.open()}else if(vSelectedItem.hasContent()){var vFirst=vSelectedItem.getFirstVisibleChildOfFolder();this.setSelectedElement(vFirst);if(vFirst instanceof qx.ui.tree.TreeFolder){vFirst.open()};return}};break;case qx.event.type.KeyEvent.keys.enter:e.preventDefault();if(qx.ui.tree.Tree.isTreeFolder(vSelectedItem)){return vSelectedItem.toggle()};break;default:if(!this._fastUpdate){this._fastUpdate=true;this._oldItem=vSelectedItem};vManager.handleKeyDown(e)}};qx.Proto._onkeyup=function(e){if(this._fastUpdate){var vOldItem=this._oldItem;var vNewItem=this.getManager().getSelectedItem();vNewItem.getIconObject().addState(qx.manager.selection.SelectionManager.STATE_SELECTED);delete this._fastUpdate;delete this._oldItem}};qx.Proto.getLastTreeChild=function(){var vLast=this;while(vLast instanceof qx.ui.tree.AbstractTreeElement){if(!(vLast instanceof qx.ui.tree.TreeFolder)||!vLast.getOpen()){return vLast};vLast=vLast.getLastVisibleChildOfFolder()};return null};qx.Proto.getFirstTreeChild=function(){return this};qx.Proto.setSelectedElement=function(vElement){var vManager=this.getManager();vManager.setSelectedItem(vElement);vManager.setLeadItem(vElement)};qx.Proto.dispose=function(){if(this.getDisposed()){return};if(this._manager){this._manager.dispose();this._manager=null};delete this._oldItem;return qx.ui.tree.TreeFolder.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.tree.TreeFile",qx.ui.tree.AbstractTreeElement,function(vLabel,vIcon,vIconSelected){qx.ui.tree.AbstractTreeElement.call(this,vLabel,vIcon,vIconSelected)});qx.Proto.getIndentSymbol=function(vUseTreeLines,vIsLastColumn){if(vUseTreeLines){if(vIsLastColumn){return this.isLastChild()?"end":"cross"}else{return "line"}};return null};qx.Proto._updateIndent=function(){this.addToTreeQueue()};qx.Proto.getItems=function(){return [this]};qx.OO.defineClass("qx.dev.log.ForwardAppender",qx.dev.log.Appender,function(targetProcessor){qx.dev.log.Appender.call(this);this._targetProcessor=targetProcessor});qx.Proto.appendLogEvent=function(evt){this._targetProcessor.handleLogEvent(evt)};qx.OO.defineClass("qx.ui.pageview.AbstractPageViewBar",qx.ui.layout.BoxLayout,function(){qx.ui.layout.BoxLayout.call(this);this._manager=new qx.manager.selection.RadioManager;this.addEventListener(qx.constant.Event.MOUSEWHEEL,this._onmousewheel)});qx.Proto.getManager=function(){return this._manager};qx.Proto._lastDate=(new Date(0)).valueOf();qx.Proto._onmousewheel=function(e){var vDate=(new Date).valueOf();if((vDate-50)<this._lastDate){return};this._lastDate=vDate;var vManager=this.getManager();var vItems=vManager.getItems();var vPos=vItems.indexOf(vManager.getSelected());if(this.getWheelDelta(e)>0){var vNext=vItems[vPos+1];if(!vNext){vNext=vItems[0]}}else if(vPos>0){var vNext=vItems[vPos-1];if(!vNext){vNext=vItems[0]}}else{vNext=vItems[vItems.length-1]};vManager.setSelected(vNext)};qx.Proto.getWheelDelta=function(e){return e.getWheelDelta()};qx.Proto.dispose=function(){if(this.getDisposed()){return};if(this._manager){this._manager.dispose();this._manager=null};this.removeEventListener(qx.constant.Event.MOUSEWHEEL,this._onmousewheel);return qx.ui.layout.BoxLayout.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.pageview.tabview.TabViewBar",qx.ui.pageview.AbstractPageViewBar,function(){qx.ui.pageview.AbstractPageViewBar.call(this);this.setZIndex(2)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"tab-view-bar"});qx.OO.defineClass("qx.type.Version",qx.core.Object,function(arrVersion){qx.core.Object.call(this);if(typeof arrVersion===qx.constant.Type.STRING){arrVersion=arrVersion.split(qx.constant.Core.DOT)};this._major=parseInt(arrVersion[0])||0;this._minor=parseInt(arrVersion[1])||0;this._rev=parseInt(arrVersion[2])||0});qx.Proto._major=0;qx.Proto._minor=0;qx.Proto._rev=0;qx.Proto.versionIsValid=function(fv){if(this.getMajor()<fv.getMajor())return false;if(this.getMajor()>fv.getMajor())return true;if(this.getMinor()<fv.getMinor())return false;if(this.getMinor()>fv.getMinor())return true;if(this.getRev()<fv.getRev())return false;return true};qx.Proto.getMajor=function(){return this._major};qx.Proto.getMinor=function(){return this._minor};qx.Proto.getRev=function(){return this._rev};qx.Proto.dispose=function(){if(this.getDisposed()){return};this._major=this._minor=this._rev=null;qx.core.Object.prototype.dispose.call(this)};qx.OO.defineClass("qx.lang.Generics");qx.Settings.setDefault("enable",false);qx.lang.Generics.init=function(){var makeGeneric=[{object:Array,methods:["join","reverse","sort","push","pop","shift","unshift","splice","concat","slice","indexOf","lastIndexOf","forEach","map","filter","some","every"]},{object:String,methods:["quote","substring","toLowerCase","toUpperCase","charAt","charCodeAt","indexOf","lastIndexOf","toLocaleLowerCase","toLocaleUpperCase","localeCompare","match","search","replace","split","substr","concat","slice"]}];for(var i=0,l=makeGeneric.length;i<l;i++){var constr=makeGeneric[i].object;var methods=makeGeneric[i].methods;for(var j=0;j<methods.length;j++){var name=methods[j];if(!constr[name]){constr[methods[j]]=(function(constr,name){return function(s){var args=Array.prototype.slice.call(arguments,1);return constr.prototype[name].apply(s,args)}})(constr,name)}}}};if(qx.Settings.getValueOfClass("qx.lang.Generics","enable")){qx.lang.Generics.init()};qx.OO.defineClass("qx.ui.treefullcontrol.TreeRowStructure",qx.core.Object,function(){qx.core.Object.call(this)});qx.Proto.newRow=function(){this._indentObject=new qx.ui.embed.HtmlEmbed;this._iconObject=new qx.ui.basic.Image;this._labelObject=new qx.ui.basic.Label;this._fields=new Array;this._icons=new Object;this._fields.push(this._indentObject);this._indentAdded=false;this._iconAdded=false;this._labelAdded=false;return this};qx.Proto.standard=function(vLabel,vIcon,vIconSelected){this.newRow();this.addIcon(vIcon,vIconSelected);this.addLabel(vLabel);return this};qx.Proto.addIndent=function(){if(!this._indentAdded){this._fields.shift();this._indentAdded=true}else{throw new Error("Indent object added more than once.")};this._fields.push(this._indentObject)};qx.Proto.addIcon=function(vIcon,vIconSelected){if(!this._iconAdded){this._iconAdded=true}else{throw new Error("Icon object added more than once.")};this._icons.unselected=vIcon;this._icons.selected=vIconSelected;this._fields.push(this._iconObject)};qx.Proto.addLabel=function(vLabel){if(!this._labelAdded){this._labelAdded=true}else{throw new Error("Label added more than once.")};this._label=vLabel;this._fields.push(this._labelObject)};qx.Proto.addObject=function(vObj,vAnonymous){if(typeof vAnonymous=="boolean"){vObj.setAnonymous(vAnonymous)};this._fields.push(vObj)};qx.Class.getInstance=qx.util.Return.returnInstance;qx.OO.defineClass("qx.ui.treevirtual.SimpleTreeDataCellRenderer",qx.ui.table.AbstractDataCellRenderer,function(){qx.ui.table.AbstractDataCellRenderer.call(this)});qx.Proto._getCellStyle=function(cellInfo){var style=qx.ui.table.AbstractDataCellRenderer.prototype._getCellStyle(cellInfo);style+=qx.ui.table.BooleanDataCellRenderer.MAIN_DIV_STYLE;return style};qx.Proto._getContentHtml=function(cellInfo){var thisClass=qx.ui.treevirtual.SimpleTreeDataCellRenderer;return (thisClass.IMG_START+this._getImgUrl(cellInfo)+thisClass.IMG_END)};qx.Proto.updateDataCellElement=function(cellInfo,cellElement){this.fatal("Only USE_ARRAY_JOIN is supported")};qx.Proto._getImgUrl=function(cellInfo){var BooleanDataCellRenderer=qx.ui.table.BooleanDataCellRenderer;switch(cellInfo.value){case true:return qx.manager.object.ImageManager.buildUri("widget/table/boolean-true.png");break;case false:return qx.manager.object.ImageManager.buildUri("widget/table/boolean-false.png");break;default:return qx.manager.object.ImageManager.buildUri("static/image/blank.gif");break}};qx.Proto._createCellStyle_array_join=function(cellInfo,htmlArr){qx.ui.table.AbstractDataCellRenderer.prototype._createCellStyle_array_join(cellInfo,htmlArr);htmlArr.push(qx.ui.table.SimpleTreeDataCellRenderer.MAIN_DIV_STYLE)};qx.Proto._createContentHtml_array_join=function(cellInfo,htmlArr){var renderer=qx.ui.table.SimpleTreeDataCellRenderer;htmlArr.push(renderer.IMG_START);htmlArr.push(this._getImgUrl(cellInfo));htmlArr.push(renderer.IMG_END)};qx.Proto._createContentHtml_array_join=function(cellInfo,htmlArr){var renderer=qx.ui.table.SimpleTreeDataCellRenderer;var model=qx.ui.table.SimpleTreeModel;var level=cellInfo[model.LEVEL];this._indentObject.setHtml(htmlArr.join(qx.constant.Core.EMPTY));this._indentObject.setWidth(level*19)};qx.Class.MAIN_DIV_STYLE=';text-align:left;padding-top:1px';qx.Class.IMG_START='<img src="';qx.Class.IMG_END='"/>';qx.OO.defineClass("qx.ui.table.IconDataCellRenderer",qx.ui.table.AbstractDataCellRenderer,function(){qx.ui.table.AbstractDataCellRenderer.call(this);this.IMG_BLANK_URL=qx.manager.object.AliasManager.getInstance().resolvePath("static/image/blank.gif")});qx.Proto._identifyImage=function(cellInfo){throw new Error("_identifyImage is abstract")};qx.Proto._getImageInfos=function(cellInfo){var urlAndTooltipMap=this._identifyImage(cellInfo);if(urlAndTooltipMap==null||typeof urlAndTooltipMap=="string"){urlAndTooltipMap={url:urlAndTooltipMap,tooltip:null}};if(urlAndTooltipMap.url==null){urlAndTooltipMap.url=this.IMG_BLANK_URL};return urlAndTooltipMap};qx.Proto._getCellStyle=function(cellInfo){var style=qx.ui.table.AbstractDataCellRenderer.prototype._getCellStyle(cellInfo);style+=qx.ui.table.IconDataCellRenderer.MAIN_DIV_STYLE;return style};qx.Proto._getContentHtml=function(cellInfo){var IconDataCellRenderer=qx.ui.table.IconDataCellRenderer;var urlAndToolTip=this._getImageInfos(cellInfo);var html=IconDataCellRenderer.IMG_START;if(qx.sys.Client.getInstance().isMshtml()&&/\.png$/i.test(urlAndToolTip.url)){html+=qx.manager.object.AliasManager.getInstance().resolvePath("static/image/blank.gif")+'" style="filter:'+qx.ui.basic.Image.IMGLOADER_START+urlAndToolTip.url+qx.ui.basic.Image.IMGLOADER_STOP}else{html+=urlAndToolTip.url+'" style="'};if(urlAndToolTip.imageWidth&&urlAndToolTip.imageHeight){html+=';width:'+urlAndToolTip.imageWidth+'px'+';height:'+urlAndToolTip.imageHeight+'px'};var tooltip=urlAndToolTip.tooltip;if(tooltip!=null){html+=IconDataCellRenderer.IMG_TITLE_START+tooltip};html+=IconDataCellRenderer.IMG_END;return html};qx.Proto.updateDataCellElement=function(cellInfo,cellElement){var urlAndToolTip=this._getImageInfos(cellInfo);var img=cellElement.firstChild;if(qx.sys.Client.getInstance().isMshtml()){if(/\.png$/i.test(urlAndToolTip.url)){img.src=qx.manager.object.AliasManager.getInstance().resolvePath("static/image/blank.gif");img.style.filter=qx.ui.basic.Image.IMGLOADER_START+urlAndToolTip.url+qx.ui.basic.Image.IMGLOADER_STOP}else{img.src=urlAndToolTip.url;img.style.filter=""}}else{img.src=urlAndToolTip.url};if(urlAndToolTip.imageWidth&&urlAndToolTip.imageHeight){img.style.width=urlAndToolTip.imageWidth+"px";img.style.height=urlAndToolTip.imageHeight+"px"};if(urlAndToolTip.tooltip!=null){img.text=urlAndToolTip.tooltip}};qx.Proto._createCellStyle_array_join=function(cellInfo,htmlArr){qx.ui.table.AbstractDataCellRenderer.prototype._createCellStyle_array_join(cellInfo,htmlArr);htmlArr.push(qx.ui.table.IconDataCellRenderer.MAIN_DIV_STYLE)};qx.Proto._createContentHtml_array_join=function(cellInfo,htmlArr){var IconDataCellRenderer=qx.ui.table.IconDataCellRenderer;if(qx.ui.table.TablePane.USE_TABLE){htmlArr.push(IconDataCellRenderer.TABLE_DIV);htmlArr.push(cellInfo.styleHeight-2);htmlArr.push(IconDataCellRenderer.TABLE_DIV_CLOSE)};htmlArr.push(IconDataCellRenderer.IMG_START);var urlAndToolTip=this._getImageInfos(cellInfo);htmlArr.push(urlAndToolTip.url);var tooltip=urlAndToolTip.tooltip;if(tooltip!=null){IconDataCellRenderer.IMG_TITLE_START;htmlArr.push(tooltip)};htmlArr.push(IconDataCellRenderer.IMG_END);if(qx.ui.table.TablePane.USE_TABLE){htmlArr.push(IconDataCellRenderer.TABLE_DIV_END)}};qx.Class.MAIN_DIV_STYLE=';text-align:center;padding-top:1px;';qx.Class.IMG_START='<img src="';qx.Class.IMG_END='"/>';qx.Class.IMG_TITLE_START='" title="';qx.Class.TABLE_DIV='<div style="overflow:hidden;height:';qx.Class.TABLE_DIV_CLOSE='px">';qx.Class.TABLE_DIV_END='</div>';qx.OO.defineClass("qx.ui.table.BooleanDataCellRenderer",qx.ui.table.IconDataCellRenderer,function(){qx.ui.table.IconDataCellRenderer.call(this);this._iconUrlTrue=qx.manager.object.AliasManager.getInstance().resolvePath("widget/table/boolean-true.png");this._iconUrlFalse=qx.manager.object.AliasManager.getInstance().resolvePath("widget/table/boolean-false.png");this._iconUrlNull=qx.manager.object.AliasManager.getInstance().resolvePath("static/image/blank.gif")});qx.Proto._identifyImage=function(cellInfo){var IconDataCellRenderer=qx.ui.table.IconDataCellRenderer;var imageHints={imageWidth:11,imageHeight:11};switch(cellInfo.value){case true:imageHints.url=this._iconUrlTrue;break;case false:imageHints.url=this._iconUrlFalse;break;default:imageHints.url=this._iconUrlNull;break};return imageHints};qx.OO.defineClass("qx.ui.table.TablePaneScroller",qx.ui.layout.VerticalBoxLayout,function(table){qx.ui.layout.VerticalBoxLayout.call(this);this._table=table;this._verScrollBar=new qx.ui.core.ScrollBar(false);this._horScrollBar=new qx.ui.core.ScrollBar(true);var scrollBarWidth=this._verScrollBar.getPreferredBoxWidth();this._verScrollBar.setWidth(qx.constant.Core.AUTO);this._horScrollBar.setHeight(qx.constant.Core.AUTO);this._horScrollBar.setPaddingRight(scrollBarWidth);this._horScrollBar.addEventListener("changeValue",this._onScrollX,this);this._verScrollBar.addEventListener("changeValue",this._onScrollY,this);this._header=new qx.ui.table.TablePaneHeader(this);this._header.set({width:qx.constant.Core.AUTO,height:qx.constant.Core.AUTO});this._headerClipper=new qx.ui.layout.CanvasLayout;with(this._headerClipper){setDimension(qx.constant.Core.FLEX,qx.constant.Core.AUTO);setOverflow(qx.constant.Style.OVERFLOW_HIDDEN);add(this._header)};this._spacer=new qx.ui.basic.Terminator;this._spacer.setWidth(scrollBarWidth);this._top=new qx.ui.layout.HorizontalBoxLayout;with(this._top){setHeight(qx.constant.Core.AUTO);add(this._headerClipper,this._spacer)};this._tablePane=new qx.ui.table.TablePane(this);this._tablePane.set({width:qx.constant.Core.AUTO,height:qx.constant.Core.AUTO});this._focusIndicator=new qx.ui.layout.HorizontalBoxLayout;this._focusIndicator.setAppearance("table-focus-indicator");this._focusIndicator.hide();var dummyContent=new qx.ui.basic.Terminator;dummyContent.setWidth(0);this._focusIndicator.add(dummyContent);this._paneClipper=new qx.ui.layout.CanvasLayout;with(this._paneClipper){setWidth(qx.constant.Core.FLEX);setOverflow(qx.constant.Style.OVERFLOW_HIDDEN);add(this._tablePane,this._focusIndicator);addEventListener(qx.constant.Event.MOUSEWHEEL,this._onmousewheel,this)};var scrollerBody=new qx.ui.layout.HorizontalBoxLayout;scrollerBody.setHeight(qx.constant.Core.FLEX);scrollerBody.add(this._paneClipper,this._verScrollBar);this.add(this._top,scrollerBody,this._horScrollBar);this.addEventListener(qx.constant.Event.MOUSEMOVE,this._onmousemove,this);this.addEventListener(qx.constant.Event.MOUSEDOWN,this._onmousedown,this);this.addEventListener(qx.constant.Event.MOUSEUP,this._onmouseup,this);this.addEventListener(qx.constant.Event.CLICK,this._onclick,this);this.addEventListener(qx.constant.Event.DBLCLICK,this._ondblclick,this);this.addEventListener(qx.constant.Event.MOUSEOUT,this._onmouseout,this)});qx.OO.addProperty({name:"horizontalScrollBarVisible",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.OO.addProperty({name:"verticalScrollBarVisible",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.OO.addProperty({name:"tablePaneModel",type:qx.constant.Type.OBJECT,instance:"qx.ui.table.TablePaneModel"});qx.OO.addProperty({name:"scrollX",type:qx.constant.Type.NUMBER,allowNull:false,defaultValue:0});qx.OO.addProperty({name:"scrollY",type:qx.constant.Type.NUMBER,allowNull:false,defaultValue:0});qx.OO.addProperty({name:"liveResize",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.OO.addProperty({name:"focusCellOnMouseMove",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.Proto._modifyHorizontalScrollBarVisible=function(propValue,propOldValue,propData){if(propValue){this._horScrollBar.setHeight(qx.constant.Core.AUTO)}else{this._horScrollBar.setHeight(0)};this._horScrollBar.setVisibility(propValue);qx.ui.core.Widget.flushGlobalQueues();this._updateContent();return true};qx.Proto._modifyVerticalScrollBarVisible=function(propValue,propOldValue,propData){if(propValue){this._verScrollBar.setWidth(qx.constant.Core.AUTO)}else{this._verScrollBar.setWidth(0)};this._verScrollBar.setVisibility(propValue);var scrollBarWidth=propValue?this._verScrollBar.getPreferredBoxWidth():0;this._horScrollBar.setPaddingRight(scrollBarWidth);this._spacer.setWidth(scrollBarWidth);return true};qx.Proto._modifyTablePaneModel=function(propValue,propOldValue,propData){if(propOldValue!=null){propOldValue.removeEventListener("modelChanged",this._onPaneModelChanged,this)};propValue.addEventListener("modelChanged",this._onPaneModelChanged,this);return true};qx.Proto._modifyScrollX=function(propValue,propOldValue,propData){this._horScrollBar.setValue(propValue);return true};qx.Proto._modifyScrollY=function(propValue,propOldValue,propData){this._verScrollBar.setValue(propValue);return true};qx.Proto.getTable=function(){return this._table};qx.Proto._onColVisibilityChanged=function(evt){this._updateHorScrollBarMaximum();this._updateFocusIndicator()};qx.Proto._onColWidthChanged=function(evt){this._header._onColWidthChanged(evt);this._tablePane._onColWidthChanged(evt);var data=evt.getData();var paneModel=this.getTablePaneModel();var x=paneModel.getX(data.col);if(x!=-1){this._updateHorScrollBarMaximum();this._updateFocusIndicator()}};qx.Proto._onColOrderChanged=function(evt){this._header._onColOrderChanged(evt);this._tablePane._onColOrderChanged(evt);this._updateHorScrollBarMaximum()};qx.Proto._onTableModelDataChanged=function(evt){this._tablePane._onTableModelDataChanged(evt);var rowCount=this.getTable().getTableModel().getRowCount();if(rowCount!=this._lastRowCount){this._lastRowCount=rowCount;this._updateVerScrollBarMaximum();if(this.getFocusedRow()>=rowCount){if(rowCount==0){this.setFocusedCell(null,null)}else{this.setFocusedCell(this.getFocusedColumn(),rowCount-1)}}}};qx.Proto._onSelectionChanged=function(evt){this._tablePane._onSelectionChanged(evt)};qx.Proto._onTableModelMetaDataChanged=function(evt){this._header._onTableModelMetaDataChanged(evt);this._tablePane._onTableModelMetaDataChanged(evt)};qx.Proto._onPaneModelChanged=function(evt){this._header._onPaneModelChanged(evt);this._tablePane._onPaneModelChanged(evt)};qx.Proto._updateHorScrollBarMaximum=function(){this._horScrollBar.setMaximum(this.getTablePaneModel().getTotalWidth())};qx.Proto._updateVerScrollBarMaximum=function(){var rowCount=this.getTable().getTableModel().getRowCount();var rowHeight=this.getTable().getRowHeight();if(this.getTable().getKeepFirstVisibleRowComplete()){this._verScrollBar.setMaximum((rowCount+1)*rowHeight)}else{this._verScrollBar.setMaximum(rowCount*rowHeight)}};qx.Proto._onKeepFirstVisibleRowCompleteChanged=function(){this._updateVerScrollBarMaximum();this._updateContent()};qx.Proto._changeInnerHeight=function(newValue,oldValue){this._postponedUpdateContent();return qx.ui.layout.VerticalBoxLayout.prototype._changeInnerHeight.call(this,newValue,oldValue)};qx.Proto._afterAppear=function(){qx.ui.layout.VerticalBoxLayout.prototype._afterAppear.call(this);var self=this;this.getElement().onselectstart=qx.util.Return.returnFalse;this._updateContent();this._header._updateContent();this._updateHorScrollBarMaximum();this._updateVerScrollBarMaximum()};qx.Proto._onScrollX=function(evt){this._header.setLeft(-evt.getData());this._paneClipper.setScrollLeft(evt.getData());this.setScrollX(evt.getData())};qx.Proto._onScrollY=function(evt){this._postponedUpdateContent();this.setScrollY(evt.getData())};qx.Proto._onmousewheel=function(evt){this._verScrollBar.setValue(this._verScrollBar.getValue()-evt.getWheelDelta()*this.getTable().getRowHeight());if(this._lastMousePageX&&this.getFocusCellOnMouseMove()){this._focusCellAtPagePos(this._lastMousePageX,this._lastMousePageY)}};qx.Proto._onmousemove=function(evt){var tableModel=this.getTable().getTableModel();var columnModel=this.getTable().getTableColumnModel();var useResizeCursor=false;var mouseOverColumn=null;var pageX=evt.getPageX();var pageY=evt.getPageY();this._lastMousePageX=pageX;this._lastMousePageY=pageY;if(this._resizeColumn!=null){var minColumnWidth=qx.ui.table.TablePaneScroller.MIN_COLUMN_WIDTH;var newWidth=Math.max(minColumnWidth,this._lastResizeWidth+pageX-this._lastResizeMousePageX);if(this.getLiveResize()){columnModel.setColumnWidth(this._resizeColumn,newWidth)}else{this._header.setColumnWidth(this._resizeColumn,newWidth);var paneModel=this.getTablePaneModel();this._showResizeLine(paneModel.getColumnLeft(this._resizeColumn)+newWidth)};useResizeCursor=true;this._lastResizeMousePageX+=newWidth-this._lastResizeWidth;this._lastResizeWidth=newWidth}else if(this._moveColumn!=null){var clickTolerance=qx.ui.table.TablePaneScroller.CLICK_TOLERANCE;if(this._header.isShowingColumnMoveFeedback()||pageX>this._lastMoveMousePageX+clickTolerance||pageX<this._lastMoveMousePageX-clickTolerance){this._lastMoveColPos+=pageX-this._lastMoveMousePageX;this._header.showColumnMoveFeedback(this._moveColumn,this._lastMoveColPos);var targetScroller=this._table.getTablePaneScrollerAtPageX(pageX);if(this._lastMoveTargetScroller&&this._lastMoveTargetScroller!=targetScroller){this._lastMoveTargetScroller.hideColumnMoveFeedback()};if(targetScroller!=null){this._lastMoveTargetX=targetScroller.showColumnMoveFeedback(pageX)}else{this._lastMoveTargetX=null};this._lastMoveTargetScroller=targetScroller;this._lastMoveMousePageX=pageX}}else{var row=this._getRowForPagePos(pageX,pageY);if(row==-1){var resizeCol=this._getResizeColumnForPageX(pageX);if(resizeCol!=-1){useResizeCursor=true}else{var col=this._getColumnForPageX(pageX);if(col!=null&&tableModel.isColumnSortable(col)){mouseOverColumn=col}}}else if(row!=null){if(this.getFocusCellOnMouseMove()){this._focusCellAtPagePos(pageX,pageY)}}};this.getTopLevelWidget().setGlobalCursor(useResizeCursor?qx.ui.table.TablePaneScroller.CURSOR_RESIZE_HORIZONTAL:null);this._header.setMouseOverColumn(mouseOverColumn)};qx.Proto._onmousedown=function(evt){var tableModel=this.getTable().getTableModel();var columnModel=this.getTable().getTableColumnModel();var pageX=evt.getPageX();var pageY=evt.getPageY();var row=this._getRowForPagePos(pageX,pageY);if(row==-1){var resizeCol=this._getResizeColumnForPageX(pageX);if(resizeCol!=-1){this._resizeColumn=resizeCol;this._lastResizeMousePageX=pageX;this._lastResizeWidth=columnModel.getColumnWidth(this._resizeColumn);this.setCapture(true)}else{var col=this._getColumnForPageX(pageX);if(col!=null){this._moveColumn=col;this._lastMoveMousePageX=pageX;this._lastMoveColPos=this.getTablePaneModel().getColumnLeft(col);this.setCapture(true)}}}else if(row!=null){if(!this.getFocusCellOnMouseMove()){this._focusCellAtPagePos(pageX,pageY)};this.getTable()._getSelectionManager().handleMouseDown(row,evt)}};qx.Proto._onmouseup=function(evt){var columnModel=this.getTable().getTableColumnModel();var paneModel=this.getTablePaneModel();if(this._resizeColumn!=null){if(!this.getLiveResize()){this._hideResizeLine();columnModel.setColumnWidth(this._resizeColumn,this._lastResizeWidth)};this._resizeColumn=null;this.setCapture(false);this.getTopLevelWidget().setGlobalCursor(null)}else if(this._moveColumn!=null){this._header.hideColumnMoveFeedback();if(this._lastMoveTargetScroller){this._lastMoveTargetScroller.hideColumnMoveFeedback()};if(this._lastMoveTargetX!=null){var fromVisXPos=paneModel.getFirstColumnX()+paneModel.getX(this._moveColumn);var toVisXPos=this._lastMoveTargetX;if(toVisXPos!=fromVisXPos&&toVisXPos!=fromVisXPos+1){var fromCol=columnModel.getVisibleColumnAtX(fromVisXPos);var toCol=columnModel.getVisibleColumnAtX(toVisXPos);var fromOverXPos=columnModel.getOverallX(fromCol);var toOverXPos=(toCol!=null)?columnModel.getOverallX(toCol):columnModel.getOverallColumnCount();if(toOverXPos>fromOverXPos){toOverXPos--};columnModel.moveColumn(fromOverXPos,toOverXPos)}};this._moveColumn=null;this._lastMoveTargetX=null;this.setCapture(false)}else{var row=this._getRowForPagePos(evt.getPageX(),evt.getPageY());if(row!=-1&&row!=null){this.getTable()._getSelectionManager().handleMouseUp(row,evt)}}};qx.Proto._onclick=function(evt){var tableModel=this.getTable().getTableModel();var pageX=evt.getPageX();var pageY=evt.getPageY();var row=this._getRowForPagePos(pageX,pageY);if(row==-1){var resizeCol=this._getResizeColumnForPageX(pageX);if(resizeCol==-1){var col=this._getColumnForPageX(pageX);if(col!=null&&tableModel.isColumnSortable(col)){var sortCol=tableModel.getSortColumnIndex();var ascending=(col!=sortCol)?true:!tableModel.isSortAscending();tableModel.sortByColumn(col,ascending);this.getTable().getSelectionModel().clearSelection()}}}else if(row!=null){this.getTable()._getSelectionManager().handleClick(row,evt)}};qx.Proto._ondblclick=function(evt){if(!this.isEditing()){this._focusCellAtPagePos(evt.getPageX(),evt.getPageY());this.startEditing()}};qx.Proto._onmouseout=function(evt){if(this._resizeColumn==null){this.getTopLevelWidget().setGlobalCursor(null)};this._header.setMouseOverColumn(null)};qx.Proto._showResizeLine=function(x){var resizeLine=this._resizeLine;if(resizeLine==null){resizeLine=new qx.ui.basic.Terminator;resizeLine.setBackgroundColor("#D6D5D9");resizeLine.setWidth(3);this._paneClipper.add(resizeLine);qx.ui.core.Widget.flushGlobalQueues();this._resizeLine=resizeLine};resizeLine._applyRuntimeLeft(x-2);resizeLine._applyRuntimeHeight(this._paneClipper.getBoxHeight()+this._paneClipper.getScrollTop());this._resizeLine.removeStyleProperty(qx.constant.Style.PROPERTY_VISIBILITY)};qx.Proto._hideResizeLine=function(){this._resizeLine.setStyleProperty(qx.constant.Style.PROPERTY_VISIBILITY,qx.constant.Core.HIDDEN)};qx.Proto.showColumnMoveFeedback=function(pageX){var paneModel=this.getTablePaneModel();var columnModel=this.getTable().getTableColumnModel();var paneLeftX=qx.dom.DomLocation.getClientBoxLeft(this._tablePane.getElement());var colCount=paneModel.getColumnCount();var targetXPos=0;var targetX=0;var currX=paneLeftX;for(var xPos=0;xPos<colCount;xPos++){var col=paneModel.getColumnAtX(xPos);var colWidth=columnModel.getColumnWidth(col);if(pageX<currX+colWidth/2){break};currX+=colWidth;targetXPos=xPos+1;targetX=currX-paneLeftX};var clipperLeftX=qx.dom.DomLocation.getClientBoxLeft(this._paneClipper.getElement());var clipperWidth=this._paneClipper.getBoxWidth();var scrollX=clipperLeftX-paneLeftX;targetX=qx.lang.Number.limit(targetX,scrollX+2,scrollX+clipperWidth-1);this._showResizeLine(targetX);return paneModel.getFirstColumnX()+targetXPos};qx.Proto.hideColumnMoveFeedback=function(){this._hideResizeLine()};qx.Proto._focusCellAtPagePos=function(pageX,pageY){var row=this._getRowForPagePos(pageX,pageY);if(row!=-1&&row!=null){var col=this._getColumnForPageX(pageX);if(col!=null){this._table.setFocusedCell(col,row)}}};qx.Proto.setFocusedCell=function(col,row){if(!this.isEditing()){this._tablePane.setFocusedCell(col,row,this._updateContentPlanned);this._focusedCol=col;this._focusedRow=row;if(!this._updateContentPlanned){this._updateFocusIndicator()}}};qx.Proto.getFocusedColumn=function(){return this._focusedCol};qx.Proto.getFocusedRow=function(){return this._focusedRow};qx.Proto.scrollCellVisible=function(col,row){var paneModel=this.getTablePaneModel();var xPos=paneModel.getX(col);if(xPos!=-1){var columnModel=this.getTable().getTableColumnModel();var colLeft=paneModel.getColumnLeft(col);var colWidth=columnModel.getColumnWidth(col);var rowHeight=this.getTable().getRowHeight();var rowTop=row*rowHeight;var scrollX=this.getScrollX();var scrollY=this.getScrollY();var viewWidth=this._paneClipper.getBoxWidth();var viewHeight=this._paneClipper.getBoxHeight();var minScrollX=Math.min(colLeft,colLeft+colWidth-viewWidth);var maxScrollX=colLeft;this.setScrollX(Math.max(minScrollX,Math.min(maxScrollX,scrollX)));var minScrollY=rowTop+rowHeight-viewHeight;if(this.getTable().getKeepFirstVisibleRowComplete()){minScrollY+=rowHeight-1};var maxScrollY=rowTop;this.setScrollY(Math.max(minScrollY,Math.min(maxScrollY,scrollY)))}};qx.Proto.isEditing=function(){return this._cellEditor!=null};qx.Proto.startEditing=function(){var tableModel=this.getTable().getTableModel();var col=this._focusedCol;if(!this.isEditing()&&(col!=null)&&tableModel.isColumnEditable(col)){var row=this._focusedRow;var xPos=this.getTablePaneModel().getX(col);var value=tableModel.getValue(col,row);this._cellEditorFactory=this.getTable().getTableColumnModel().getCellEditorFactory(col);var cellInfo={col:col,row:row,xPos:xPos,value:value};this._cellEditor=this._cellEditorFactory.createCellEditor(cellInfo);this._cellEditor.set({width:qx.constant.Core.HUNDREDPERCENT,height:qx.constant.Core.HUNDREDPERCENT});this._focusIndicator.add(this._cellEditor);this._focusIndicator.addState("editing");this._cellEditor.addEventListener("changeFocused",this._onCellEditorFocusChanged,this);var editor=this._cellEditor;window.setTimeout(function(){editor.focus()},0);return true};return false};qx.Proto.stopEditing=function(){this.flushEditor();this.cancelEditing()};qx.Proto.flushEditor=function(){if(this.isEditing()){var value=this._cellEditorFactory.getCellEditorValue(this._cellEditor);this.getTable().getTableModel().setValue(this._focusedCol,this._focusedRow,value);this._table.focus()}};qx.Proto.cancelEditing=function(){if(this.isEditing()){this._focusIndicator.remove(this._cellEditor);this._focusIndicator.removeState("editing");this._cellEditor.dispose();this._cellEditor.removeEventListener("changeFocused",this._onCellEditorFocusChanged,this);this._cellEditor=null;this._cellEditorFactory=null}};qx.Proto._onCellEditorFocusChanged=function(evt){if(!this._cellEditor.getFocused()){this.stopEditing()}};qx.Proto._getColumnForPageX=function(pageX){var headerLeftX=qx.dom.DomLocation.getClientBoxLeft(this._header.getElement());var columnModel=this.getTable().getTableColumnModel();var paneModel=this.getTablePaneModel();var colCount=paneModel.getColumnCount();var currX=headerLeftX;for(var x=0;x<colCount;x++){var col=paneModel.getColumnAtX(x);var colWidth=columnModel.getColumnWidth(col);currX+=colWidth;if(pageX<currX){return col}};return null};qx.Proto._getResizeColumnForPageX=function(pageX){var headerLeftX=qx.dom.DomLocation.getClientBoxLeft(this._header.getElement());var columnModel=this.getTable().getTableColumnModel();var paneModel=this.getTablePaneModel();var colCount=paneModel.getColumnCount();var currX=headerLeftX;var regionRadius=qx.ui.table.TablePaneScroller.RESIZE_REGION_RADIUS;for(var x=0;x<colCount;x++){var col=paneModel.getColumnAtX(x);var colWidth=columnModel.getColumnWidth(col);currX+=colWidth;if(pageX>=(currX-regionRadius)&&pageX<=(currX+regionRadius)){return col}};return -1};qx.Proto._getRowForPagePos=function(pageX,pageY){var paneClipperElem=this._paneClipper.getElement();var paneClipperLeftX=qx.dom.DomLocation.getClientBoxLeft(paneClipperElem);var paneClipperRightX=qx.dom.DomLocation.getClientBoxRight(paneClipperElem);if(pageX<paneClipperLeftX||pageX>paneClipperRightX){return null};var paneClipperTopY=qx.dom.DomLocation.getClientBoxTop(paneClipperElem);var paneClipperBottomY=qx.dom.DomLocation.getClientBoxBottom(paneClipperElem);if(pageY>=paneClipperTopY&&pageY<=paneClipperBottomY){var rowHeight=this.getTable().getRowHeight();var scrollY=this._verScrollBar.getValue();if(this.getTable().getKeepFirstVisibleRowComplete()){scrollY=Math.floor(scrollY/rowHeight)*rowHeight};var tableY=scrollY+pageY-paneClipperTopY;var row=Math.floor(tableY/rowHeight);var rowCount=this.getTable().getTableModel().getRowCount();return (row<rowCount)?row:null};var headerElem=this._headerClipper.getElement();if(pageY>=qx.dom.DomLocation.getClientBoxTop(headerElem)&&pageY<=qx.dom.DomLocation.getClientBoxBottom(headerElem)&&pageX<=qx.dom.DomLocation.getClientBoxRight(headerElem)){return -1};return null};qx.Proto.setTopRightWidget=function(widget){var oldWidget=this._topRightWidget;if(oldWidget!=null){this._top.remove(oldWidget)};if(widget!=null){this._top.remove(this._spacer);this._top.add(widget)}else if(oldWidget!=null){this._top.add(this._spacer)};this._topRightWidget=widget};qx.Proto.getHeader=function(){return this._header};qx.Proto.getTablePane=function(){return this._tablePane};qx.Proto.getNeededScrollBars=function(forceHorizontal,preventVertical){var barWidth=this._verScrollBar.getPreferredBoxWidth();var viewWidth=this._paneClipper.getInnerWidth();if(this.getVerticalScrollBarVisible()){viewWidth+=barWidth};var viewHeight=this._paneClipper.getInnerHeight();if(this.getHorizontalScrollBarVisible()){viewHeight+=barWidth};var paneWidth=this.getTablePaneModel().getTotalWidth();var paneHeight=this.getTable().getRowHeight()*this.getTable().getTableModel().getRowCount();var horNeeded=false;var verNeeded=false;if(paneWidth>viewWidth){horNeeded=true;if(paneHeight>viewHeight-barWidth){verNeeded=true}}else if(paneHeight>viewHeight){verNeeded=true;if(!preventVertical&&(paneWidth>viewWidth-barWidth)){horNeeded=true}};var horBar=qx.ui.table.TablePaneScroller.HORIZONTAL_SCROLLBAR;var verBar=qx.ui.table.TablePaneScroller.VERTICAL_SCROLLBAR;return ((forceHorizontal||horNeeded)?horBar:0)|((preventVertical||!verNeeded)?0:verBar)};qx.Proto._postponedUpdateContent=function(){if(!this._updateContentPlanned){var self=this;window.setTimeout(function(){self._updateContent();self._updateContentPlanned=false;qx.ui.core.Widget.flushGlobalQueues()},0);this._updateContentPlanned=true}};qx.Proto._updateContent=function(){var paneHeight=this._paneClipper.getInnerHeight();var scrollX=this._horScrollBar.getValue();var scrollY=this._verScrollBar.getValue();var rowHeight=this.getTable().getRowHeight();var firstRow=Math.floor(scrollY/rowHeight);var oldFirstRow=this._tablePane.getFirstVisibleRow();this._tablePane.setFirstVisibleRow(firstRow);var rowCount=Math.ceil(paneHeight/rowHeight);var paneOffset=0;if(!this.getTable().getKeepFirstVisibleRowComplete()){rowCount++;paneOffset=scrollY%rowHeight};this._tablePane.setVisibleRowCount(rowCount);if(firstRow!=oldFirstRow){this._updateFocusIndicator()};this._header.setLeft(-scrollX);this._paneClipper.setScrollLeft(scrollX);this._paneClipper.setScrollTop(paneOffset)};qx.Proto._updateFocusIndicator=function(){if(this._focusedCol==null){this._focusIndicator.hide()}else{var xPos=this.getTablePaneModel().getX(this._focusedCol);if(xPos==-1){this._focusIndicator.hide()}else{var columnModel=this.getTable().getTableColumnModel();var paneModel=this.getTablePaneModel();var firstRow=this._tablePane.getFirstVisibleRow();var rowHeight=this.getTable().getRowHeight();this._focusIndicator.setHeight(rowHeight+3);this._focusIndicator.setWidth(columnModel.getColumnWidth(this._focusedCol)+3);this._focusIndicator.setTop((this._focusedRow-firstRow)*rowHeight-2);this._focusIndicator.setLeft(paneModel.getColumnLeft(this._focusedCol)-2);this._focusIndicator.show()}}};qx.Proto.dispose=function(){if(this.getDisposed()){return true};if(this.getElement()!=null){this.getElement().onselectstart=null};this.cancelEditing();this._verScrollBar.dispose();this._horScrollBar.dispose();this._header.dispose();this._headerClipper.dispose();this._spacer.dispose();this._top.dispose();this._tablePane.dispose();this._paneClipper.dispose();if(this._resizeLine!=null){this._resizeLine.dispose()};this.removeEventListener(qx.constant.Event.MOUSEMOVE,this._onmousemove,this);this.removeEventListener(qx.constant.Event.MOUSEDOWN,this._onmousedown,this);this.removeEventListener(qx.constant.Event.MOUSEUP,this._onmouseup,this);this.removeEventListener(qx.constant.Event.CLICK,this._onclick,this);this.removeEventListener(qx.constant.Event.DBLCLICK,this._ondblclick,this);this.removeEventListener(qx.constant.Event.MOUSEOUT,this._onmouseout,this);if(this._tableColumnModel!=null){this._tableColumnModel.removeEventListener("visibilityChanged",this._onColVisibilityChanged,this);this._tableColumnModel.removeEventListener("widthChanged",this._onColWidthChanged,this);this._tableColumnModel.removeEventListener("orderChanged",this._onColOrderChanged,this)};return qx.ui.layout.VerticalBoxLayout.prototype.dispose.call(this)};qx.Class.MIN_COLUMN_WIDTH=10;qx.Class.RESIZE_REGION_RADIUS=5;qx.Class.CLICK_TOLERANCE=5;qx.Class.HORIZONTAL_SCROLLBAR=1;qx.Class.VERTICAL_SCROLLBAR=2;qx.Class.CURSOR_RESIZE_HORIZONTAL=(qx.sys.Client.getInstance().isGecko()&&(qx.sys.Client.getInstance().getMajor()>1||qx.sys.Client.getInstance().getMinor()>=8))?"ew-resize":"e-resize";qx.OO.defineClass("qx.ui.component.ColorPopup",qx.ui.popup.Popup,function(tables){qx.ui.popup.Popup.call(this);this.setPadding(4);this.auto();this.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);this.setBackgroundColor("threedface");this._tables=tables;this._createLayout();this._createAutoBtn();this._createBoxes();this._createPreview();this._createSelectorBtn();this.addEventListener(qx.constant.Event.BEFOREAPPEAR,this._onBeforeAppear)});qx.OO.addProperty({name:"value",type:qx.constant.Type.OBJECT,instance:"qx.renderer.color.Color"});qx.OO.addProperty({name:"red",type:qx.constant.Type.NUMBER,defaultValue:0});qx.OO.addProperty({name:"green",type:qx.constant.Type.NUMBER,defaultValue:0});qx.OO.addProperty({name:"blue",type:qx.constant.Type.NUMBER,defaultValue:0});qx.Proto._minZIndex=1e5;qx.Proto._createLayout=function(){this._layout=new qx.ui.layout.VerticalBoxLayout;this._layout.setLocation(0,0);this._layout.auto();this._layout.setSpacing(2);this.add(this._layout)};qx.Proto._createAutoBtn=function(){this._automaticBtn=new qx.ui.form.Button("Automatic");this._automaticBtn.setWidth(null);this._automaticBtn.setAllowStretchX(true);this._automaticBtn.addEventListener(qx.constant.Event.EXECUTE,this._onAutomaticBtnExecute,this);this._layout.add(this._automaticBtn)};qx.Proto._recentTableId="recent";qx.Proto._fieldWidth=14;qx.Proto._fieldHeight=14;qx.Proto._fieldNumber=12;qx.Proto._createBoxes=function(){this._boxes={};var tables=this._tables;var table,box,boxLayout,field;for(var tableId in tables){table=tables[tableId];box=new qx.ui.groupbox.GroupBox(table.label);box.setHeight(qx.constant.Core.AUTO);this._boxes[tableId]=box;this._layout.add(box);boxLayout=new qx.ui.layout.HorizontalBoxLayout;boxLayout.setLocation(0,0);boxLayout.setSpacing(1);boxLayout.auto();box.add(boxLayout);for(var i=0;i<this._fieldNumber;i++){field=new qx.ui.basic.Terminator;field.setBorder(qx.renderer.border.BorderPresets.getInstance().thinInset);field.setBackgroundColor(table.values[i]||null);field.setDimension(this._fieldWidth,this._fieldHeight);field.addEventListener(qx.constant.Event.MOUSEDOWN,this._onFieldMouseDown,this);field.addEventListener(qx.constant.Event.MOUSEOVER,this._onFieldMouseOver,this);boxLayout.add(field)}}};qx.Proto._createPreview=function(){this._previewBox=new qx.ui.groupbox.GroupBox("Preview (Old/New)");this._previewLayout=new qx.ui.layout.HorizontalBoxLayout;this._selectedPreview=new qx.ui.basic.Terminator;this._currentPreview=new qx.ui.basic.Terminator;this._previewLayout.setHeight(qx.constant.Core.AUTO);this._previewLayout.setWidth(qx.constant.Core.HUNDREDPERCENT);this._previewLayout.setSpacing(4);this._previewLayout.add(this._selectedPreview,this._currentPreview);this._previewBox.setHeight(qx.constant.Core.AUTO);this._previewBox.add(this._previewLayout);this._layout.add(this._previewBox);this._selectedPreview.setBorder(qx.renderer.border.BorderPresets.getInstance().inset);this._selectedPreview.setWidth(qx.constant.Core.FLEX);this._selectedPreview.setHeight(24);this._currentPreview.setBorder(qx.renderer.border.BorderPresets.getInstance().inset);this._currentPreview.setWidth(qx.constant.Core.FLEX);this._currentPreview.setHeight(24)};qx.Proto._createSelectorBtn=function(){this._selectorButton=new qx.ui.form.Button("Open ColorSelector");this._selectorButton.setWidth(null);this._selectorButton.setAllowStretchX(true);this._selectorButton.addEventListener(qx.constant.Event.EXECUTE,this._onSelectorButtonExecute,this);this._layout.add(this._selectorButton)};qx.Proto._createColorSelector=function(){if(this._colorSelector){return};this._colorSelectorWindow=new qx.ui.window.Window("Color Selector");this._colorSelectorWindow.setMinWidth(null);this._colorSelectorWindow.setMinHeight(null);this._colorSelectorWindow.setResizeable(false);this._colorSelectorWindow.auto();this._colorSelector=new qx.ui.component.ColorSelector;this._colorSelector.setBorder(null);this._colorSelector.setLocation(0,0);this._colorSelector.addEventListener(qx.constant.Event.DIALOGOK,this._onColorSelectorOk,this);this._colorSelector.addEventListener(qx.constant.Event.DIALOGCANCEL,this._onColorSelectorCancel,this);this._colorSelectorWindow.add(this._colorSelector);this._colorSelectorWindow.addToDocument()};qx.Proto._modifyValue=function(propValue,propOldValue,propData){if(propValue===null){this.setRed(null);this.setGreen(null);this.setBlue(null)}else{this.setRed(propValue.getRed());this.setGreen(propValue.getGreen());this.setBlue(propValue.getBlue())};this._selectedPreview.setBackgroundColor(propValue);this._rotatePreviousColors();return true};qx.Proto._rotatePreviousColors=function(){var vRecentTable=this._tables[this._recentTableId].values;var vRecentBox=this._boxes[this._recentTableId];if(!vRecentTable){return};var newValue=this.getValue();if(!newValue){return};newValue=newValue.getStyle();var vIndex=vRecentTable.indexOf(newValue);if(vIndex!=-1){qx.lang.Array.removeAt(vRecentTable,vIndex)}else if(vRecentTable.length==this._fieldNumber){vRecentTable.shift()};vRecentTable.push(newValue);var vFields=vRecentBox.getFrameObject().getFirstChild().getChildren();for(var i=0;i<vFields.length;i++){vFields[i].setBackgroundColor(vRecentTable[i]||null)}};qx.Proto._onFieldMouseDown=function(e){this.setValue(this._currentPreview.getBackgroundColor())};qx.Proto._onFieldMouseOver=function(e){this._currentPreview.setBackgroundColor(e.getTarget().getBackgroundColor())};qx.Proto._onAutomaticBtnExecute=function(e){this.setValue(null);this.hide()};qx.Proto._onSelectorButtonExecute=function(e){this._createColorSelector();this._colorSelectorWindow.setTop(qx.dom.DomLocation.getPageBoxTop(this._selectorButton.getElement())+10);this._colorSelectorWindow.setLeft(qx.dom.DomLocation.getPageBoxLeft(this._selectorButton.getElement())+100);this.hide();this._colorSelectorWindow.open()};qx.Proto._onColorSelectorOk=function(e){var sel=this._colorSelector;this.setValue(qx.renderer.color.ColorCache([sel.getRed(),sel.getGreen(),sel.getBlue()]));this._colorSelectorWindow.close()};qx.Proto._onColorSelectorCancel=function(e){this._colorSelectorWindow.close()};qx.Proto._onBeforeAppear=function(e){this._currentPreview.setBackgroundColor(null)};qx.Proto.dispose=function(){if(this.getDisposed()){return};this._tables=null;this._boxes=null;if(this._layout){this._layout.dispose();this._layout=null};if(this._automaticBtn){this._automaticBtn.dispose();this._automaticBtn=null};if(this._previewBox){this._previewBox.dispose();this._previewBox=null};if(this._previewLayout){this._previewLayout.dispose();this._previewLayout=null};if(this._selectedPreview){this._selectedPreview.dispose();this._selectedPreview=null};if(this._currentPreview){this._currentPreview.dispose();this._currentPreview=null};if(this._selectorButton){this._selectorButton.dispose();this._selectorButton=null};if(this._colorSelectorWindow){this._colorSelectorWindow.dispose();this._colorSelectorWindow=null};if(this._colorSelector){this._colorSelector.dispose();this._colorSelector=null};return qx.ui.popup.Popup.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.splitpane.VerticalSplitPane",qx.ui.splitpane.SplitPane,function(firstSize,secondSize){qx.ui.splitpane.SplitPane.call(this,qx.constant.Layout.ORIENTATION_VERTICAL,firstSize,secondSize)});qx.Proto.dispose=function(){if(this.getDisposed()){return true};return qx.ui.splitpane.SplitPane.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.groupbox.RadioGroupBox",qx.ui.groupbox.GroupBox,function(vLegend){qx.ui.groupbox.GroupBox.call(this,vLegend)});qx.Proto._createLegendObject=function(){this._legendObject=new qx.ui.form.RadioButton;this._legendObject.setAppearance("radio-button-field-set-legend");this._legendObject.setChecked(true);this.add(this._legendObject)};qx.Proto.setIcon=qx.Proto.getIcon=null;qx.OO.defineClass("qx.ui.form.CheckBox",qx.ui.basic.Atom,function(vText,vValue,vName,vChecked){qx.ui.basic.Atom.call(this,vText);this.setTabIndex(1);this.setPadding(2,3);this._createIcon();if(qx.util.Validation.isValidString(vValue)){this.setValue(vValue)};if(qx.util.Validation.isValidString(vName)){this.setName(vName)};if(qx.util.Validation.isValidBoolean(vChecked)){this.setChecked(vChecked)};this.addEventListener(qx.constant.Event.CLICK,this._onclick);this.addEventListener(qx.constant.Event.KEYDOWN,this._onkeydown);this.addEventListener(qx.constant.Event.KEYUP,this._onkeyup)});qx.OO.removeProperty({name:"icon"});qx.OO.removeProperty({name:"disabledIcon"});qx.OO.addProperty({name:"name",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"value",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"checked",type:qx.constant.Type.BOOLEAN,defaultValue:false,getAlias:"isChecked"});qx.Proto.INPUT_TYPE="checkbox";qx.Proto._createIcon=function(){var i=this._iconObject=new qx.ui.form.InputCheckSymbol;i.setType(this.INPUT_TYPE);i.setChecked(this.isChecked());i.setEnabled(this.isEnabled());i.setAnonymous(true);this.addAtBegin(i)};qx.Proto._modifyChecked=function(propValue,propOldValue,propData){if(this._iconObject){this._iconObject.setChecked(propValue)};return true};qx.Proto._modifyEnabled=function(propValue,propOldValue,propData){if(this._iconObject){this._iconObject.setEnabled(propValue)};return qx.ui.basic.Atom.prototype._modifyEnabled.call(this,propValue,propOldValue,propData)};qx.Proto._handleIcon=function(){switch(this.getShow()){case qx.ui.basic.Atom.SHOW_ICON:case qx.ui.basic.Atom.SHOW_BOTH:this._iconIsVisible=true;break;default:this._iconIsVisible=false};if(this._iconIsVisible){this._iconObject?this._iconObject.setDisplay(true):this._createIcon()}else if(this._iconObject){this._iconObject.setDisplay(false)}};qx.Proto._onclick=function(e){this.toggleChecked()};qx.Proto._onkeydown=function(e){if(e.getKeyCode()==qx.event.type.KeyEvent.keys.enter&&!e.getAltKey()){this.toggleChecked()}};qx.Proto._onkeyup=function(e){if(e.getKeyCode()==qx.event.type.KeyEvent.keys.space){this.toggleChecked()}};qx.Proto.dispose=function(){if(this.getDisposed()){return};this.removeEventListener(qx.constant.Event.CLICK,this._onclick);this.removeEventListener(qx.constant.Event.KEYDOWN,this._onkeydown);this.removeEventListener(qx.constant.Event.KEYUP,this._onkeyup);return qx.ui.basic.Atom.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.form.InputCheckSymbol",qx.ui.basic.Terminator,function(){qx.ui.basic.Terminator.call(this);this.setTagName("INPUT");this.setSelectable(false);if(qx.sys.Client.getInstance().isMshtml()){this.setWidth(13);this.setHeight(13)}else if(qx.sys.Client.getInstance().isGecko()){this.setMargin(0)};this.forceTabIndex(1);this.setTabIndex(-1)});qx.OO.addProperty({name:"name",type:qx.constant.Type.STRING,impl:"apply"});qx.OO.addProperty({name:"value",impl:"apply"});qx.OO.addProperty({name:"type",impl:"apply"});qx.OO.addProperty({name:"checked",type:qx.constant.Type.BOOLEAN,defaultValue:false,impl:"apply",getAlias:"isChecked"});qx.Proto._modifyApply=function(propValue,propOldValue,propData){return this.setHtmlProperty(propData.name,propValue)};qx.Proto.getPreferredBoxWidth=function(){return 13};qx.Proto.getPreferredBoxHeight=function(){return 13};qx.Proto.getBoxWidth=qx.Proto.getPreferredBoxWidth;qx.Proto.getBoxHeight=qx.Proto.getPreferredBoxHeight;qx.Proto.getInnerWidth=qx.Proto.getPreferredBoxWidth;qx.Proto.getInnerHeight=qx.Proto.getPreferredBoxHeight;if(qx.sys.Client.getInstance().isMshtml()){qx.Proto._afterAppear=function(){qx.ui.basic.Terminator.prototype._afterAppear.call(this);var vElement=this.getElement();vElement.checked=this.getChecked();if(!this.getEnabled()){vElement.disabled=true}}};qx.Proto._modifyEnabled=function(propValue,propOldValue,propData){propValue?this.removeHtmlAttribute(qx.constant.Core.DISABLED):this.setHtmlAttribute(qx.constant.Core.DISABLED,qx.constant.Core.DISABLED);return qx.ui.basic.Terminator.prototype._modifyEnabled.call(this,propValue,propOldValue,propData)};qx.OO.defineClass("qx.ui.form.RadioButton",qx.ui.form.CheckBox,function(vText,vValue,vName,vChecked){qx.ui.form.CheckBox.call(this,vText,vValue,vName,vChecked)});qx.OO.addProperty({name:"manager",type:qx.constant.Type.OBJECT,instance:"qx.manager.selection.RadioManager",allowNull:true});qx.Proto.INPUT_TYPE="radio";qx.Proto._modifyChecked=function(propValue,propOldValue,propData){if(this._iconObject){this._iconObject.setChecked(propValue)};var vManager=this.getManager();if(vManager){vManager.handleItemChecked(this,propValue)};return true};qx.Proto._modifyManager=function(propValue,propOldValue,propData){if(propOldValue){propOldValue.remove(this)};if(propValue){propValue.add(this)};return true};qx.Proto._modifyName=function(propValue,propOldValue,propData){if(this._iconObject){this._iconObject.setName(propValue)};if(this.getManager()){this.getManager().setName(propValue)};return true};qx.Proto._modifyValue=function(propValue,propOldValue,propData){if(this.isCreated()&&this._iconObject){this._iconObject.setValue(propValue)};return true};qx.Proto._onkeydown=function(e){switch(e.getKeyCode()){case qx.event.type.KeyEvent.keys.enter:if(!e.getAltKey()){this.setChecked(true)};break;case qx.event.type.KeyEvent.keys.left:case qx.event.type.KeyEvent.keys.up:qx.event.handler.FocusHandler.mouseFocus=false;qx.event.handler.FocusHandler.mouseFocus=false;return this.getManager()?this.getManager().selectPrevious(this):true;case qx.event.type.KeyEvent.keys.right:case qx.event.type.KeyEvent.keys.down:qx.event.handler.FocusHandler.mouseFocus=false;return this.getManager()?this.getManager().selectNext(this):true}};qx.Proto._onclick=function(e){this.setChecked(true)};qx.Proto._onkeyup=function(e){if(e.getKeyCode()==qx.event.type.KeyEvent.keys.space){this.setChecked(true)}};qx.Proto.dispose=function(){if(this.getDisposed()){return};return qx.ui.form.CheckBox.prototype.dispose.call(this)};qx.OO.defineClass("qx.dom.DomElementFromPoint");qx.dom.DomElementFromPoint.getElementFromPoint=function(x,y){return qx.dom.DomElementFromPoint.getElementFromPointHandler(document.body,x,y)};qx.dom.DomElementFromPoint.getElementFromPointHandler=function(node,x,y,recursive){var ch=node.childNodes;var chl=ch.length-1;if(chl<0){return null};var chc,subres,ret;do{chc=ch[chl];ret=qx.dom.DomElementFromPoint.getElementFromPointChecker(chc,x,y);if(ret){if(typeof recursive===qx.constant.Type.BOOLEAN&&recursive==false){return chc}else{subres=qx.dom.DomElementFromPoint.getElementFromPointHandler(chc,x-ret[0]-qx.dom.DomStyle.getBorderLeft(chc),y-ret[2]-qx.dom.DomStyle.getBorderTop(chc));return subres?subres:chc}}}while(chl--);return null};qx.dom.DomElementFromPoint.getElementFromPointChecker=function(chc,x,y){var xstart,ystart,xstop,ystop;if(chc.nodeType!=1){return false};xstart=qx.dom.DomOffset.getLeft(chc);if(x>xstart){ystart=qx.dom.DomOffset.getTop(chc);if(y>ystart){xstop=xstart+chc.offsetWidth;if(x<xstop){ystop=ystart+chc.offsetHeight;if(y<ystop){return [xstart,xstop,ystart,ystop]}}}};return false};qx.dom.DomElementFromPoint.getElementAbsolutePointChecker=function(chc,x,y){var xstart,ystart,xstop,ystop;if(!chc||chc.nodeType!=1){return false};xstart=qx.dom.DomLocation.getPageBoxLeft(chc);if(x>xstart){ystart=qx.dom.DomLocation.getPageBoxTop(chc);if(y>ystart){xstop=xstart+chc.offsetWidth;if(x<xstop){ystop=ystart+chc.offsetHeight;if(y<ystop){return [xstart,xstop,ystart,ystop]}}}};return false};qx.OO.defineClass("qx.client.Command",qx.core.Target,function(vShortcut,vKeyCode){qx.core.Target.call(this);this._shortcutParts={};if(qx.util.Validation.isValid(vShortcut)){this.setShortcut(vShortcut)};if(qx.util.Validation.isValid(vKeyCode)){this.setKeyCode(vKeyCode)};qx.event.handler.EventHandler.getInstance().addCommand(this)});qx.OO.addProperty({name:"checked",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.OO.addProperty({name:"shortcut",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"keyCode",type:qx.constant.Type.NUMBER});qx.Class.C_KEY_CTRL="ctrl";qx.Class.C_KEY_SHIFT="shift";qx.Class.C_KEY_ALT="alt";qx.Class.C_KEY_CONTROL="control";qx.Proto.execute=function(vTarget){if(this.hasEventListeners(qx.constant.Event.EXECUTE)){this.dispatchEvent(new qx.event.type.DataEvent(qx.constant.Event.EXECUTE,vTarget),true)};return false};qx.Proto._modifyShortcut=function(propValue,propOldValue,propData){if(propValue){this._shortcutParts={};var a=propValue.toLowerCase().split(/[-+\s]+/);var al=a.length;for(var i=0;i<al;i++){this._shortcutParts[a[i]]=true}}else{this._shortcutParts={}};return true};qx.Proto._matchesKeyEvent=function(e){if(typeof this._shortcutParts!==qx.constant.Type.OBJECT&&this._shortcutParts!==null){return false};if(!(qx.util.Validation.isValid(this.getShortcut())||qx.util.Validation.isValid(this.getKeyCode()))){return false};if((this._shortcutParts.shift&&!e.getShiftKey())||(this._shortcutParts.ctrl&&!e.getCtrlKey())||(this._shortcutParts.alt&&!e.getAltKey())){return false};var vEventCode=e.getKeyCode();var vSelfCode=this.getKeyCode();switch(vSelfCode){case null:break;case vEventCode:return true};var c=String.fromCharCode(vEventCode).toLowerCase();if(this._shortcutParts[c]){return true};if(vSelfCode==null){for(var vPart in this._shortcutParts){switch(vPart){case qx.client.Command.C_KEY_CTRL:case qx.client.Command.C_KEY_SHIFT:case qx.client.Command.C_KEY_ALT:case qx.client.Command.C_KEY_CONTROL:break;default:if(vEventCode==qx.event.type.KeyEvent.keys[vPart]){return true}}}};return false};qx.Proto.toString=function(){var vShortcut=this.getShortcut();var vKeyCode=this.getKeyCode();var vString=qx.constant.Core.EMPTY;if(qx.util.Validation.isValidString(vShortcut)){vString=vShortcut;if(qx.util.Validation.isValidNumber(vKeyCode)){var vTemp=qx.event.type.KeyEvent.codes[vKeyCode];vString+=qx.constant.Core.PLUS+(vTemp?qx.lang.String.toFirstUp(vTemp):String(vKeyCode))}}else if(qx.util.Validation.isValidNumber(vKeyCode)){var vTemp=qx.event.type.KeyEvent.codes[vKeyCode];vString=vTemp?qx.lang.String.toFirstUp(vTemp):String(vKeyCode)};return vString};qx.Proto.dispose=function(){if(this.getDisposed()){return};this._shortcutParts=null;var vMgr=qx.event.handler.EventHandler.getInstance();if(vMgr){vMgr.removeCommand(this)};return qx.core.Target.prototype.dispose.call(this)};qx.OO.defineClass("qx.manager.selection.TreeFullControlSelectionManager",qx.manager.selection.SelectionManager,function(vBoundedWidget){qx.manager.selection.SelectionManager.call(this,vBoundedWidget)});qx.OO.changeProperty({name:"multiSelection",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.OO.changeProperty({name:"dragSelection",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.Proto._getFirst=function(){return qx.lang.Array.getFirst(this.getItems())};qx.Proto._getLast=function(){return qx.lang.Array.getLast(this.getItems())};qx.Proto.getItems=function(){return this.getBoundedWidget().getItems()};qx.Proto.getNext=function(vItem){if(vItem){if(qx.ui.treefullcontrol.Tree.isOpenTreeFolder(vItem)){return vItem.getFirstVisibleChildOfFolder()}else if(vItem.isLastVisibleChild()){var vCurrent=vItem;while(vCurrent&&vCurrent.isLastVisibleChild()){vCurrent=vCurrent.getParentFolder()};if(vCurrent&&vCurrent instanceof qx.ui.treefullcontrol.AbstractTreeElement&&vCurrent.getNextVisibleSibling()&&vCurrent.getNextVisibleSibling() instanceof qx.ui.treefullcontrol.AbstractTreeElement){return vCurrent.getNextVisibleSibling()}}else{return vItem.getNextVisibleSibling()}}else{return this.getBoundedWidget().getFirstTreeChild()}};qx.Proto.getPrevious=function(vItem){if(vItem){if(vItem==this.getBoundedWidget()){return}else if(vItem.isFirstVisibleChild()){if(vItem.getParentFolder() instanceof qx.ui.treefullcontrol.TreeFolder){return vItem.getParentFolder()}}else{var vPrev=vItem.getPreviousVisibleSibling();if(vPrev instanceof qx.ui.treefullcontrol.AbstractTreeElement){while(vPrev instanceof qx.ui.treefullcontrol.AbstractTreeElement){if(qx.ui.treefullcontrol.Tree.isOpenTreeFolder(vPrev)){vPrev=vPrev.getLastVisibleChildOfFolder()}else{break}}};return vPrev}}else{return this.getBoundedWidget().getLastTreeChild()}};qx.Proto.getItemTop=function(vItem){var vBoundedWidget=this.getBoundedWidget();var vElement=vItem.getElement();var vOffset=0;while(vElement&&vElement.qx_Widget!=vBoundedWidget){vOffset+=vElement.offsetTop;vElement=vElement.parentNode};return vOffset};qx.Proto.getItemHeight=function(vItem){if(vItem instanceof qx.ui.treefullcontrol.TreeFolder&&vItem._horizontalLayout){return vItem._horizontalLayout.getOffsetHeight()}else{return vItem.getOffsetHeight()}};qx.Proto.scrollItemIntoView=function(vItem){if(vItem instanceof qx.ui.treefullcontrol.TreeFolder&&vItem._horizontalLayout){return vItem._horizontalLayout.scrollIntoView()}else{return vItem.scrollIntoView()}};qx.Proto.renderItemSelectionState=function(vItem,vIsSelected){vItem.setSelected(vIsSelected)};qx.OO.defineClass("qx.ui.treefullcontrol.AbstractTreeElement",qx.ui.layout.BoxLayout,function(treeRowStructure){if(this.classname==qx.ui.treefullcontrol.AbstractTreeElement.ABSTRACT_CLASS){throw new Error("Please omit the usage of qx.ui.treefullcontrol.AbstractTreeElement directly. Choose between qx.ui.treefullcontrol.TreeFolder, qx.ui.treefullcontrol.TreeFolderSimple, qx.ui.treefullcontrol.TreeFile and qx.ui.treefullcontrol.TreeFileSimple instead!")};if(treeRowStructure!==qx.ui.treefullcontrol.TreeRowStructure.getInstance()){throw new Error("A qx.ui.treefullcontrol.TreeRowStructure parameter is required.")};this._indentObject=treeRowStructure._indentObject;this._iconObject=treeRowStructure._iconObject;this._labelObject=treeRowStructure._labelObject;this._indentObject.setAnonymous(true);this._iconObject.setAnonymous(true);this._labelObject.setAnonymous(true);this._labelObject.setSelectable(false);this._labelObject.setStyleProperty(qx.constant.Style.PROPERTY_LINEHEIGHT,qx.constant.Core.HUNDREDPERCENT);qx.ui.layout.BoxLayout.call(this,qx.constant.Layout.ORIENTATION_HORIZONTAL);if(qx.util.Validation.isValid(treeRowStructure._label)){this.setLabel(treeRowStructure._label)};this.setSelectable(false);this.BASE_URI=qx.manager.object.AliasManager.getInstance().resolvePath("widget/tree/");for(var i=0;i<treeRowStructure._fields.length;i++){this.add(treeRowStructure._fields[i])};if((treeRowStructure._icons.unselected!=null)&&(qx.util.Validation.isValidString(treeRowStructure._icons.unselected))){this.setIcon(treeRowStructure._icons.unselected);this.setIconSelected(treeRowStructure._icons.unselected)};if((treeRowStructure._icons.selected!=null)&&(qx.util.Validation.isValidString(treeRowStructure._icons.selected))){this.setIconSelected(treeRowStructure._icons.selected)};this._iconObject.setSource(this._evalCurrentIcon());this._iconObject.setAppearance("tree-element-icon");this._labelObject.setAppearance("tree-element-label");this.addEventListener(qx.constant.Event.MOUSEDOWN,this._onmousedown);this.addEventListener(qx.constant.Event.MOUSEUP,this._onmouseup)});qx.ui.treefullcontrol.AbstractTreeElement.ABSTRACT_CLASS="qx.ui.treefullcontrol.AbstractTreeElement";qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"tree-element"});qx.OO.addProperty({name:"icon",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"iconSelected",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"label",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"selected",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.Proto._modifyLabel=function(propValue,propOldValue,propData){if(this._labelObject){this._labelObject.setHtml(propValue)};return true};qx.Proto._modifySelected=function(propValue,propOldValue,propData){if(propValue){this.addState(qx.manager.selection.SelectionManager.STATE_SELECTED);this._labelObject.addState(qx.manager.selection.SelectionManager.STATE_SELECTED)}else{this.removeState(qx.manager.selection.SelectionManager.STATE_SELECTED);this._labelObject.removeState(qx.manager.selection.SelectionManager.STATE_SELECTED)};var vTree=this.getTree();if(!vTree._fastUpdate||(propOldValue&&vTree._oldItem==this)){this._iconObject.setSource(this._evalCurrentIcon());if(propValue){this._iconObject.addState(qx.manager.selection.SelectionManager.STATE_SELECTED)}else{this._iconObject.removeState(qx.manager.selection.SelectionManager.STATE_SELECTED)}};var vManager=this.getTree().getManager();if(propOldValue&&vManager.getSelectedItem()==this){vManager.deselectAll()}else if(propValue&&vManager.getSelectedItem()!=this){vManager.setSelectedItem(this)};return true};qx.Proto._evalCurrentIcon=function(){if(this.getSelected()&&this.getIconSelected()){return this.getIconSelected()}else{return this.getIcon()||"icon/16/file-new.png"}};qx.Proto.getParentFolder=function(){try{return this.getParent().getParent()}catch(ex){};return null};qx.Proto.getLevel=function(){var vParentFolder=this.getParentFolder();return vParentFolder?vParentFolder.getLevel()+1:null};qx.Proto.getTree=function(){var vParentFolder=this.getParentFolder();return vParentFolder?vParentFolder.getTree():null};qx.Proto.getIndentObject=function(){return this._indentObject};qx.Proto.getIconObject=function(){return this._iconObject};qx.Proto.getLabelObject=function(){return this._labelObject};qx.Proto.getHierarchy=function(vArr){if(this._labelObject){vArr.unshift(this._labelObject.getHtml())};var parent=this.getParentFolder();if(parent){parent.getHierarchy(vArr)};return vArr};qx.Proto.addToTreeQueue=function(){var vTree=this.getTree();if(vTree){vTree.addChildToTreeQueue(this)}};qx.Proto.removeFromTreeQueue=function(){var vTree=this.getTree();if(vTree){vTree.removeChildFromTreeQueue(this)}};qx.Proto.addToCustomQueues=function(vHint){this.addToTreeQueue();qx.ui.layout.BoxLayout.prototype.addToCustomQueues.call(this,vHint)};qx.Proto.removeFromCustomQueues=function(vHint){this.removeFromTreeQueue();qx.ui.layout.BoxLayout.prototype.removeFromCustomQueues.call(this,vHint)};qx.Proto._modifyParent=function(propValue,propOldValue,propData){qx.ui.layout.BoxLayout.prototype._modifyParent.call(this,propValue,propOldValue,propData);if(propOldValue&&!propOldValue.isDisplayable()&&propOldValue.getParent()&&propOldValue.getParent().isDisplayable()){propOldValue.getParent().addToTreeQueue()};if(propValue&&!propValue.isDisplayable()&&propValue.getParent()&&propValue.getParent().isDisplayable()){propValue.getParent().addToTreeQueue()};return true};qx.Proto._handleDisplayableCustom=function(vDisplayable,vParent,vHint){qx.ui.layout.BoxLayout.prototype._handleDisplayableCustom.call(this,vDisplayable,vParent,vHint);if(vHint){var vParentFolder=this.getParentFolder();var vPreviousParentFolder=this._previousParentFolder;if(vPreviousParentFolder){if(this._wasLastVisibleChild){vPreviousParentFolder._updateIndent()}else if(!vPreviousParentFolder.hasContent()){vPreviousParentFolder.addToTreeQueue()}};if(vParentFolder&&vParentFolder.isDisplayable()&&vParentFolder._initialLayoutDone){vParentFolder.addToTreeQueue()};if(this.isLastVisibleChild()){var vPrev=this.getPreviousVisibleSibling();if(vPrev&&vPrev instanceof qx.ui.treefullcontrol.AbstractTreeElement){vPrev._updateIndent()}};if(vDisplayable){this._updateIndent()}}};qx.Proto._onmousedown=function(e){this.getTree().getManager().handleMouseDown(this,e);e.stopPropagation()};qx.Proto._onmouseup=qx.util.Return.returnTrue;qx.ui.treefullcontrol.AbstractTreeElement.INDENT_CODE_1="<img style=\"position:absolute;top:0px;left:";qx.ui.treefullcontrol.AbstractTreeElement.INDENT_CODE_2="px\" src=\"";qx.ui.treefullcontrol.AbstractTreeElement.INDENT_CODE_3="\" />";qx.ui.treefullcontrol.AbstractTreeElement.IMG_EXTENSION="gif";qx.Proto.flushTree=function(){this._previousParentFolder=this.getParentFolder();this._wasLastVisibleChild=this.isLastVisibleChild();var vLevel=this.getLevel();var vTree=this.getTree();var vImage;var vHtml=[];var vCurrentObject=this;var vMinLevel=0;var vMaxLevel=vLevel;if(vTree.getRootOpenClose()){vMaxLevel=vLevel+1};if(vTree.hideNode()){vMinLevel=1};for(var i=vMinLevel;i<vMaxLevel;i++){vImage=vCurrentObject.getIndentSymbol(vTree.getUseTreeLines(),i,vMinLevel,vMaxLevel);if(vImage){vHtml.push(qx.ui.treefullcontrol.AbstractTreeElement.INDENT_CODE_1);vHtml.push((vMaxLevel-i-1)*19);vHtml.push(qx.ui.treefullcontrol.AbstractTreeElement.INDENT_CODE_2);vHtml.push(this.BASE_URI);vHtml.push(vImage);vHtml.push(qx.constant.Core.DOT);vHtml.push(qx.ui.treefullcontrol.AbstractTreeElement.IMG_EXTENSION);vHtml.push(qx.ui.treefullcontrol.AbstractTreeElement.INDENT_CODE_3)};vCurrentObject=vCurrentObject.getParentFolder()};this._indentObject.setHtml(vHtml.join(qx.constant.Core.EMPTY));this._indentObject.setWidth((vMaxLevel-vMinLevel)*19)};qx.Proto.dispose=function(){if(this.getDisposed()){return true};if(this._indentObject){this._indentObject.dispose();this._indentObject=null};if(this._iconObject){this._iconObject.dispose();this._iconObject=null};if(this._labelObject){this._labelObject.dispose();this._labelObject=null};this._previousParentFolder=null;this.removeEventListener(qx.constant.Event.MOUSEDOWN,this._onmousedown);this.removeEventListener(qx.constant.Event.MOUSEUP,this._onmouseup);return qx.ui.layout.BoxLayout.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.treefullcontrol.TreeFolder",qx.ui.treefullcontrol.AbstractTreeElement,function(treeRowStructure){qx.ui.treefullcontrol.AbstractTreeElement.call(this,treeRowStructure);this._treeRowStructureFields=treeRowStructure._fields;this._iconObject.setAppearance("tree-folder-icon");this._labelObject.setAppearance("tree-folder-label");this.addEventListener(qx.constant.Event.DBLCLICK,this._ondblclick);this.add=this.addToFolder;this.addBefore=this.addBeforeToFolder;this.addAfter=this.addAfterToFolder;this.addAt=this.addAtToFolder;this.addAtBegin=this.addAtBeginToFolder;this.addAtEnd=this.addAtEndToFolder});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"tree-folder"});qx.OO.changeProperty({name:"icon",type:qx.constant.Type.STRING});qx.OO.changeProperty({name:"iconSelected",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"open",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.OO.addProperty({name:"alwaysShowPlusMinusSymbol",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.Proto.hasContent=function(){return (this._containerObject&&this._containerObject.getChildrenLength()>0)};qx.Proto.open=function(){if(this.getOpen()){return};if(this.hasContent()){if(this.getTree().hasEventListeners(qx.constant.Event.TREEOPENWITHCONTENT)){this.getTree().dispatchEvent(new qx.event.type.DataEvent(qx.constant.Event.TREEOPENWITHCONTENT,this),true)};this.getTopLevelWidget().setGlobalCursor(qx.constant.Style.CURSOR_PROGRESS);qx.client.Timer.once(this._openCallback,this,0)}else{if(this.getTree().hasEventListeners(qx.constant.Event.TREEOPENWHILEEMPTY)){this.getTree().dispatchEvent(new qx.event.type.DataEvent(qx.constant.Event.TREEOPENWHILEEMPTY,this),true)};this.setOpen(true)}};qx.Proto.close=function(){if(this.getTree().hasEventListeners(qx.constant.Event.TREECLOSE)){this.getTree().dispatchEvent(new qx.event.type.DataEvent(qx.constant.Event.TREECLOSE,this),true)};this.setOpen(false)};qx.Proto.toggle=function(){this.getOpen()?this.close():this.open()};qx.Proto._openCallback=function(){this.setOpen(true);qx.ui.core.Widget.flushGlobalQueues();this.getTopLevelWidget().setGlobalCursor(null)};qx.Proto._createChildrenStructure=function(){this.setAppearance(this instanceof qx.ui.treefullcontrol.Tree?"tree-container":"tree-folder-container");if(!this._horizontalLayout){this.setOrientation(qx.constant.Layout.ORIENTATION_VERTICAL);this._horizontalLayout=new qx.ui.layout.HorizontalBoxLayout;this._horizontalLayout.setWidth(null);this._horizontalLayout.setParent(this);this._horizontalLayout.setAnonymous(true);this._horizontalLayout.setAppearance(this instanceof qx.ui.treefullcontrol.Tree?"tree":"tree-folder");for(var i=0;i<this._treeRowStructureFields.length;i++){this._treeRowStructureFields[i].setParent(this._horizontalLayout)};this._treeRowStructureFields=null};if(!this._containerObject){this._containerObject=new qx.ui.layout.VerticalBoxLayout;this._containerObject.setWidth(null);this._containerObject.setAnonymous(true);this._containerObject.setDisplay(this.getOpen());this._containerObject.setParent(this);this.remapChildrenHandlingTo(this._containerObject)}};qx.Proto._handleChildMove=function(vChild,vRelationIndex,vRelationChild){if(vChild.isDisplayable()){var vChildren=this._containerObject.getChildren();var vOldChildIndex=vChildren.indexOf(vChild);if(vOldChildIndex!=-1){if(vRelationChild){vRelationIndex=vChildren.indexOf(vRelationChild)};if(vRelationIndex==vChildren.length-1){vChild._updateIndent();this._containerObject.getLastVisibleChild()._updateIndent()}else if(vChild._wasLastVisibleChild){vChild._updateIndent();var vPreviousSibling=vChild.getPreviousVisibleSibling();if(vPreviousSibling){vPreviousSibling._updateIndent()}}}}};qx.Proto.addToFolder=function(){this._createChildrenStructure();if(this._containerObject){return this._containerObject.add.apply(this._containerObject,arguments)}};qx.Proto.addBeforeToFolder=function(vChild,vBefore){this._createChildrenStructure();if(this._containerObject){this._handleChildMove(vChild,null,vBefore);return this._containerObject.addBefore.apply(this._containerObject,arguments)}};qx.Proto.addAfterToFolder=function(vChild,vAfter){this._createChildrenStructure();if(this._containerObject){this._handleChildMove(vChild,null,vAfter);return this._containerObject.addAfter.apply(this._containerObject,arguments)}};qx.Proto.addAtToFolder=function(vChild,vIndex){this._createChildrenStructure();if(this._containerObject){this._handleChildMove(vChild,vIndex);return this._containerObject.addAt.apply(this._containerObject,arguments)}};qx.Proto.addAtBeginToFolder=function(vChild){return this.addAtToFolder(vChild,0)};qx.Proto.addAtEndToFolder=function(vChild){this._createChildrenStructure();if(this._containerObject){var vLast=this._containerObject.getLastChild();if(vLast){this._handleChildMove(vChild,null,vLast);return this._containerObject.addAfter.call(this._containerObject,vChild,vLast)}else{return this.addAtBeginToFolder(vChild)}}};qx.Proto._remappingChildTable=["remove","removeAt","removeAll"];qx.Proto.getContainerObject=function(){return this._containerObject};qx.Proto.getHorizontalLayout=function(){return this._horizontalLayout};qx.Proto.getFirstVisibleChildOfFolder=function(){if(this._containerObject){return this._containerObject.getFirstChild()}};qx.Proto.getLastVisibleChildOfFolder=function(){if(this._containerObject){return this._containerObject.getLastChild()}};qx.Proto.getItems=function(){var a=[this];if(this._containerObject){var ch=this._containerObject.getVisibleChildren();for(var i=0,chl=ch.length;i<chl;i++){a=a.concat(ch[i].getItems())}};return a};qx.Proto._evalCurrentIcon=function(){if(this.getSelected()){return this.getIconSelected()||"icon/16/folder-open.png"}else{return this.getIcon()||"icon/16/folder.png"}};qx.Proto._modifyOpen=function(propValue,propOldValue,propData){if(this.getTree().getExcludeSpecificTreeLines().length>0){this._updateIndent()}else{this._updateLastColumn()};if(this._containerObject){this._containerObject.setDisplay(propValue)};return true};qx.Proto._modifyAlwaysShowPlusMinusSymbol=function(propValue,propOldValue,propData){if(this.getTree().getExcludeSpecificTreeLines().length>0){this._updateIndent()}else{this._updateLastColumn()};return true};qx.Proto._updateLastColumn=function(){if(this._indentObject){var vElement=this._indentObject.getElement();if(vElement&&vElement.firstChild){vElement.firstChild.src=(this.BASE_URI+this.getIndentSymbol(this.getTree().getUseTreeLines(),0,0,0)+".gif")}}};qx.Proto._onmousedown=function(e){var vOriginalTarget=e.getOriginalTarget();switch(vOriginalTarget){case this._indentObject:if(this._indentObject.getElement().firstChild==e.getDomTarget()){this.getTree().getManager().handleMouseDown(this,e);this.toggle()};break;case this._containerObject:break;case this:if(this._containerObject){break};default:this.getTree().getManager().handleMouseDown(this,e)};e.stopPropagation()};qx.Proto._onmouseup=function(e){var vOriginalTarget=e.getOriginalTarget();switch(vOriginalTarget){case this._indentObject:case this._containerObject:case this:break;default:if(!this.getTree().getUseDoubleClick()){this.open()}}};qx.Proto._ondblclick=function(e){if(!this.getTree().getUseDoubleClick()){return};this.toggle();e.stopPropagation()};qx.Proto.getIndentSymbol=function(vUseTreeLines,vColumn,vFirstColumn,vLastColumn){var vLevel=this.getLevel();var vExcludeList=this.getTree().getExcludeSpecificTreeLines();var vExclude=vExcludeList[vLastColumn-vColumn-1];if(vColumn==vFirstColumn){if(this.hasContent()||this.getAlwaysShowPlusMinusSymbol()){if(!vUseTreeLines){return this.getOpen()?"minus":"plus"};if(vLevel==1){var vParentFolder=this.getParentFolder();if(vParentFolder&&!vParentFolder._horizontalLayout.getVisibility()&&this.isFirstChild()){if(this.isLastChild()||vExclude===true){return this.getOpen()?"only_minus":"only_plus"}else{return this.getOpen()?"start_minus":"start_plus"}}};if(vExclude===true){return this.getOpen()?"only_minus":"only_plus"}else if(this.isLastChild()){return this.getOpen()?"end_minus":"end_plus"}else{return this.getOpen()?"cross_minus":"cross_plus"}}else if(vUseTreeLines&&!(vExclude===true)){return this.isLastChild()?"end":"cross"}}else{if(vUseTreeLines&&!this.isLastChild()){if(vExclude===true){return null};return "line"};return null}};qx.Proto._updateIndent=function(){qx.ui.treefullcontrol.TreeFile.prototype._updateIndent.call(this);if(!this._containerObject){return};var ch=this._containerObject.getVisibleChildren();for(var i=0,l=ch.length;i<l;i++){ch[i]._updateIndent()}};qx.Proto.dispose=function(){if(this.getDisposed()){return};this.removeEventListener(qx.constant.Event.DBLCLICK,this._ondblclick);if(this._horizontalLayout){this._horizontalLayout.dispose();this._horizontalLayout=null};if(this._containerObject){this._containerObject.dispose();this._containerObject=null};return qx.ui.treefullcontrol.AbstractTreeElement.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.treefullcontrol.Tree",qx.ui.treefullcontrol.TreeFolder,function(treeRowStructure){qx.ui.treefullcontrol.TreeFolder.call(this,treeRowStructure);this._manager=new qx.manager.selection.TreeFullControlSelectionManager(this);this._iconObject.setAppearance("tree-icon");this._labelObject.setAppearance("tree-label");this.setOpen(true);this.addToFolder();this.addEventListener(qx.constant.Event.KEYDOWN,this._onkeydown);this.addEventListener(qx.constant.Event.KEYUP,this._onkeyup)});qx.OO.addProperty({name:"useDoubleClick",type:qx.constant.Type.BOOLEAN,defaultValue:false,getAlias:"useDoubleClick"});qx.OO.addProperty({name:"useTreeLines",type:qx.constant.Type.BOOLEAN,defaultValue:true,getAlias:"useTreeLines"});qx.OO.addProperty({name:"excludeSpecificTreeLines",type:qx.constant.Type.OBJECT,defaultValue:[]});qx.OO.addProperty({name:"hideNode",type:qx.constant.Type.BOOLEAN,defaultValue:false,getAlias:"hideNode"});qx.OO.addProperty({name:"rootOpenClose",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.Proto.getManager=function(){return this._manager};qx.Proto.getSelectedElement=function(){return this.getManager().getSelectedItems()[0]};qx.Proto.addChildToTreeQueue=function(vChild){if(!vChild._isInTreeQueue&&!vChild._isDisplayable){this.debug("Ignoring invisible child: "+vChild)};if(!vChild._isInTreeQueue&&vChild._isDisplayable){qx.ui.core.Widget.addToGlobalWidgetQueue(this);if(!this._treeQueue){this._treeQueue={}};this._treeQueue[vChild.toHashCode()]=vChild;vChild._isInTreeQueue=true}};qx.Proto.removeChildFromTreeQueue=function(vChild){if(vChild._isInTreeQueue){if(this._treeQueue){delete this._treeQueue[vChild.toHashCode()]};delete vChild._isInTreeQueue}};qx.Proto.flushWidgetQueue=function(){this.flushTreeQueue()};qx.Proto.flushTreeQueue=function(){if(!qx.lang.Object.isEmpty(this._treeQueue)){for(var vHashCode in this._treeQueue){this._treeQueue[vHashCode].flushTree();delete this._treeQueue[vHashCode]._isInTreeQueue};delete this._treeQueue}};qx.Proto._modifyUseTreeLines=function(propValue,propOldValue,propData){if(this._initialLayoutDone){this._updateIndent()};return true};qx.Proto._modifyHideNode=function(propValue,propOldValue,propData){if(!propValue){this._horizontalLayout.setHeight(this._horizontalLayout.originalHeight);this._horizontalLayout.show()}else{this._horizontalLayout.originalHeight=this._horizontalLayout.getHeight();this._horizontalLayout.setHeight(0);this._horizontalLayout.hide()};if(this._initialLayoutDone){this._updateIndent()};return true};qx.Proto._modifyRootOpenClose=function(propValue,propOldValue,propData){if(this._initialLayoutDone){this._updateIndent()};return true};qx.Proto.getExcludeSpecificTreeLines=function(){var vName="excludeSpecificTreeLines";var vUpName=qx.lang.String.toFirstUp(vName);var vStorageField=qx.OO.C_VALUE+vUpName;return this[vStorageField].slice(0)};qx.Proto._modifyExcludeSpecificTreeLines=function(propValue,propOldValue,propData){if(this._initialLayoutDone){this._updateIndent()};return true};qx.Proto.getTree=function(){return this};qx.Proto.getParentFolder=function(){return null};qx.Proto.getLevel=function(){return 0};qx.ui.treefullcontrol.Tree.isTreeFolder=function(vObject){return (vObject&&vObject instanceof qx.ui.treefullcontrol.TreeFolder&&!(vObject instanceof qx.ui.treefullcontrol.Tree))};qx.ui.treefullcontrol.Tree.isOpenTreeFolder=function(vObject){return (vObject instanceof qx.ui.treefullcontrol.TreeFolder&&vObject.getOpen()&&vObject.hasContent())};qx.Proto._onkeydown=function(e){var vManager=this.getManager();var vSelectedItem=vManager.getSelectedItem();switch(e.getKeyCode()){case qx.event.type.KeyEvent.keys.left:e.preventDefault();if(qx.ui.treefullcontrol.Tree.isTreeFolder(vSelectedItem)){if(!vSelectedItem.getOpen()){var vParent=vSelectedItem.getParentFolder();if(vParent instanceof qx.ui.treefullcontrol.TreeFolder){if(!(vParent instanceof qx.ui.treefullcontrol.Tree)){vParent.close()};this.setSelectedElement(vParent)}}else{return vSelectedItem.close()}}else if(vSelectedItem instanceof qx.ui.treefullcontrol.TreeFile){var vParent=vSelectedItem.getParentFolder();if(vParent instanceof qx.ui.treefullcontrol.TreeFolder){if(!(vParent instanceof qx.ui.treefullcontrol.Tree)){vParent.close()};this.setSelectedElement(vParent)}};break;case qx.event.type.KeyEvent.keys.right:e.preventDefault();if(qx.ui.treefullcontrol.Tree.isTreeFolder(vSelectedItem)){if(!vSelectedItem.getOpen()){return vSelectedItem.open()}else if(vSelectedItem.hasContent()){var vFirst=vSelectedItem.getFirstVisibleChildOfFolder();this.setSelectedElement(vFirst);if(vFirst instanceof qx.ui.tree.TreeFolder){vFirst.open()};return}};break;case qx.event.type.KeyEvent.keys.enter:e.preventDefault();if(qx.ui.treefullcontrol.Tree.isTreeFolder(vSelectedItem)){return vSelectedItem.toggle()};break;default:if(!this._fastUpdate){this._fastUpdate=true;this._oldItem=vSelectedItem};vManager.handleKeyDown(e)}};qx.Proto._onkeyup=function(e){if(this._fastUpdate){var vNewItem=this.getManager().getSelectedItem();if(!vNewItem){return};vNewItem.getIconObject().addState(qx.manager.selection.SelectionManager.STATE_SELECTED);delete this._fastUpdate;delete this._oldItem}};qx.Proto.getLastTreeChild=function(){var vLast=this;while(vLast instanceof qx.ui.treefullcontrol.AbstractTreeElement){if(!(vLast instanceof qx.ui.treefullcontrol.TreeFolder)||!vLast.getOpen()){return vLast};vLast=vLast.getLastVisibleChildOfFolder()};return null};qx.Proto.getFirstTreeChild=function(){return this};qx.Proto.setSelectedElement=function(vElement){var vManager=this.getManager();vManager.setSelectedItem(vElement);vManager.setLeadItem(vElement)};qx.Proto.getHierarchy=function(vArr){if(!this.hideNode()&&this._labelObject){vArr.unshift(this._labelObject.getHtml())};return vArr};qx.Proto.getIndentSymbol=function(vUseTreeLines,vColumn,vLastColumn){if(vColumn==vLastColumn&&(this.hasContent()||this.getAlwaysShowPlusMinusSymbol())){if(!vUseTreeLines){return this.getOpen()?"minus":"plus"}else{return this.getOpen()?"only_minus":"only_plus"}}else{return null}};qx.Proto.dispose=function(){if(this.getDisposed()){return};if(this._manager){this._manager.dispose();this._manager=null};delete this._oldItem;return qx.ui.treefullcontrol.TreeFolder.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.treefullcontrol.TreeFile",qx.ui.treefullcontrol.AbstractTreeElement,function(treeRowStructure){qx.ui.treefullcontrol.AbstractTreeElement.call(this,treeRowStructure)});qx.Proto.getIndentSymbol=function(vUseTreeLines,vColumn,vFirstColumn,vLastColumn){var vLevel=this.getLevel();var vExcludeList=this.getTree().getExcludeSpecificTreeLines();var vExclude=vExcludeList[vLastColumn-vColumn-1];if(vUseTreeLines&&!(vExclude===true)){if(vColumn==vFirstColumn){return this.isLastChild()?"end":"cross"}else{return "line"}};return null};qx.Proto._updateIndent=function(){this.addToTreeQueue()};qx.Proto.getItems=function(){return [this]};qx.OO.defineClass("qx.manager.selection.DomSelectionManager",qx.manager.selection.SelectionManager,function(vBoundedWidget){qx.manager.selection.SelectionManager.call(this,vBoundedWidget);this.setDragSelection(false);this._selectedItems.getItemHashCode=this.getItemHashCode});qx.Proto.getItemEnabled=function(oItem){return true};qx.Proto.getItemClassName=function(vItem){return vItem.className||qx.constant.Core.EMPTY};qx.Proto.setItemClassName=function(vItem,vClassName){return vItem.className=vClassName};qx.Proto.getItemBaseClassName=function(vItem){var p=vItem.className.split(qx.constant.Core.SPACE)[0];return p?p:"Status"};qx.Proto.getNextSibling=function(vItem){return vItem.nextSibling};qx.Proto.getPreviousSibling=function(vItem){return vItem.previousSibling};qx.Proto.getFirst=function(){return this.getItems()[0]};qx.Proto.getLast=function(){var vItems=this.getItems();return vItems[vItems.length-1]};qx.Proto.getItemLeft=function(vItem){return vItem.offsetLeft};qx.Proto.getItemTop=function(vItem){return vItem.offsetTop};qx.Proto.getItemWidth=function(vItem){return vItem.offsetWidth};qx.Proto.getItemHeight=function(vItem){return vItem.offsetHeight};qx.Proto.getItemHashCode=function(oItem){if(oItem._hash){return oItem._hash};return oItem._hash=qx.core.Object.toHashCode(oItem)};qx.Proto.isBefore=function(vItem1,vItem2){var pa=vItem1.parentNode;for(var i=0,l=pa.childNodes.length;i<l;i++){switch(pa.childNodes[i]){case vItem2:return false;case vItem1:return true}}};qx.Proto.scrollItemIntoView=function(vItem){this.getBoundedWidget().scrollItemIntoView(vItem)};qx.Proto.getItems=function(){return this.getBoundedWidget().getItems()};qx.Proto.getAbove=function(vItem){var vParent=vItem.parentNode;var vFound=false;var vLeft=vItem.offsetLeft;var vChild;for(var i=vParent.childNodes.length-1;i>0;i--){vChild=vParent.childNodes[i];if(vFound==false){if(vChild==vItem){vFound=true}}else{if(vChild.offsetLeft==vLeft){return vChild}}}};qx.Proto.getUnder=function(vItem){var vParent=vItem.parentNode;var vFound=false;var vLeft=vItem.offsetLeft;var vChild;for(var i=0,l=vParent.childNodes.length;i<l;i++){vChild=vParent.childNodes[i];if(vFound==false){if(vChild==vItem){vFound=true}}else{if(vChild.offsetLeft==vLeft){return vChild}}}};qx.Proto._updateState=function(vItem,vState,vIsState){var c=this.getItemClassName(vItem);var n=this.getItemBaseClassName(vItem)+"-"+vState;this.setItemClassName(vItem,vIsState?qx.lang.String.add(c,n," "):qx.lang.String.remove(c,n," "))};qx.Proto.renderItemSelectionState=function(vItem,vIsSelected){this._updateState(vItem,"Selected",vIsSelected)};qx.Proto.renderItemAnchorState=function(vItem,vIsAnchor){this._updateState(vItem,"Anchor",vIsAnchor)};qx.Proto.renderItemLeadState=function(vItem,vIsLead){this._updateState(vItem,"Lead",vIsLead)};qx.OO.defineClass("qx.ui.listview.ListView",qx.ui.layout.VerticalBoxLayout,function(vData,vColumns){this._data=vData;this._columns=vColumns;this._header=new qx.ui.listview.ListViewHeader(vColumns);this._frame=new qx.ui.layout.HorizontalBoxLayout;this._pane=new qx.ui.listview.ListViewPane(vData,vColumns);this._scroll=new qx.ui.layout.CanvasLayout;this._scrollContent=new qx.ui.basic.Terminator;this._resizeLine=new qx.ui.basic.Terminator;qx.ui.layout.VerticalBoxLayout.call(this);this._header.setParent(this);this._frame.setParent(this);this._frame.setHeight(qx.constant.Core.FLEX);this._frame.setWidth(null);this._pane.setParent(this._frame);this._scroll.setWidth(qx.constant.Core.AUTO);this._scroll.setOverflow(qx.constant.Style.OVERFLOW_VERTICAL);this._scroll.setParent(this._frame);this._scroll.enableInlineEvent(qx.constant.Event.SCROLL);this._scroll.addEventListener(qx.constant.Event.SCROLL,this._onscroll,this);this._scrollContent.setWidth(1);this._scrollContent.setParent(this._scroll);this._resizeLine.setBackgroundColor("#D6D5D9");this._resizeLine.setWidth(1);this._resizeLine.setParent(this);this.addEventListener(qx.constant.Event.MOUSEDOWN,this._onmousedown)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"list-view"});qx.OO.addProperty({name:"resizable",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.OO.addProperty({name:"liveResize",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.OO.addProperty({name:"sortBy",type:qx.constant.Type.STRING});qx.Proto.getData=function(){return this._data};qx.Proto.getColumns=function(){return this._columns};qx.Proto.getHeader=function(){return this._header};qx.Proto.getFrame=function(){return this._frame};qx.Proto.getPane=function(){return this._pane};qx.Proto.getScroll=function(){return this._scroll};qx.Proto.getScrollContent=function(){return this._scrollContent};qx.Proto.getResizeLine=function(){return this._resizeLine};qx.Proto.update=function(){this.updateScrollBar();this.updateContent()};qx.Proto.updateScrollBar=function(){this._scrollContent.setHeight((this._data.length*this._pane._rowHeight)+this._pane._rowHeight)};if(qx.sys.Client.getInstance().isGecko()&&qx.sys.Client.getInstance().getVersion()>=1.8){qx.Proto._updateScrollBar=qx.Proto.updateScrollBar;qx.Proto.updateScrollBar=function(){this._updateScrollBar();this._scroll.setStyleProperty(qx.constant.Style.PROPERTY_HEIGHT,qx.constant.Core.ZEROPIXEL);this._scroll.forceHeight(0);this._scroll.setHeight(null)}};qx.Proto.updateContent=function(){this.getPane()._updateRendering(true)};qx.Proto.updateLayout=function(){this.getPane()._updateLayout()};qx.Proto.updateSort=function(){var vSortBy=this.getSortBy();if(!vSortBy){return};var vCell=this._getHeaderCell(vSortBy);if(vCell){vCell.updateSort()}};qx.Proto._getHeaderCell=function(vCellId){var vNewEntry=this._columns[vCellId];return vNewEntry?vNewEntry.headerCell:null};qx.Proto._modifySortBy=function(propValue,propOldValue,propData){if(propOldValue){var vOldCell=this._getHeaderCell(propOldValue);if(vOldCell){vOldCell.setSortOrder(null)}};if(propValue){var vNewCell=this._getHeaderCell(propValue);if(vNewCell&&vNewCell.getSortOrder()==null){vNewCell.setSortOrder(qx.ui.listview.ListViewHeaderCell.C_SORT_ASCENDING)}};return true};qx.Proto._onscroll=function(e){this._pane._onscroll(e)};qx.Proto._onmousedown=function(e){this.getFocusRoot().setActiveChild(this.getPane())};qx.Proto._handleDisplayableCustom=function(vDisplayable,vParent,vHint){qx.ui.layout.VerticalBoxLayout.prototype._handleDisplayableCustom.call(this,vDisplayable,vParent,vHint);if(vDisplayable){this.updateLayout();this.updateScrollBar();this.updateContent()}};qx.Proto.dispose=function(){if(this.getDisposed()){return};if(this._header){this._header.dispose();this._header=null};if(this._frame){this._frame.dispose();this._frame=null};if(this._pane){this._pane.dispose();this._pane=null};if(this._scroll){this._scroll.dispose();this._scroll=null};if(this._scrollContent){this._scrollContent.dispose();this._scrollContent=null};if(this._resizeLine){this._resizeLine.dispose();this._resizeLine=null};delete this._columns;delete this._data;this.removeEventListener(qx.constant.Event.MOUSEDOWN,this._onmousedown);return qx.ui.layout.VerticalBoxLayout.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.listview.ListViewPane",qx.ui.layout.GridLayout,function(vData,vColumns){qx.ui.layout.GridLayout.call(this);this._data=vData;this._columns=vColumns;this._manager=new qx.manager.selection.VirtualSelectionManager(this);this.addEventListener(qx.constant.Event.MOUSEWHEEL,this._onmousewheel);this.addEventListener(qx.constant.Event.MOUSEOVER,this._onmouseover);this.addEventListener(qx.constant.Event.MOUSEDOWN,this._onmousedown);this.addEventListener(qx.constant.Event.MOUSEUP,this._onmouseup);this.addEventListener(qx.constant.Event.CLICK,this._onclick);this.addEventListener(qx.constant.Event.DBLCLICK,this._ondblclick);this.addEventListener(qx.constant.Event.KEYDOWN,this._onkeydown)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"list-view-pane"});qx.Proto._rowHeight=16;qx.Proto.getView=function(){return this.getParent().getParent()};qx.Proto._lastRowCount=0;qx.Proto._updateLayout=function(vUpdate){var vColumns=this._columns;var vRowCount=Math.ceil(this.getInnerHeight()/this._rowHeight);var vData=this._data;var vCell;if(vRowCount>this._lastRowCount){for(var i=this._lastRowCount,j=0;i<vRowCount;i++,j=0){for(var vCol in vColumns){vCell=new vColumns[vCol].contentClass;this.add(vCell,j++,i);if(vColumns[vCol].align){vCell.setStyleProperty(qx.constant.Style.PROPERTY_TEXTALIGN,vColumns[vCol].align)}}}}else if(this._lastRowCount>vRowCount){var vChildren=this.getChildren();var vChildrenLength=vChildren.length-1;for(var i=this._lastRowCount;i>vRowCount;i--){for(var vCol in vColumns){vCell=vChildren[vChildrenLength--];this.remove(vCell);vCell.dispose()}}};this.setRowCount(vRowCount);if(!vUpdate){this.setColumnCount(qx.lang.Object.getLength(vColumns))};for(var i=0;i<vRowCount;i++){this.setRowHeight(i,this._rowHeight)};if(!vUpdate){var vCount=0;for(var vCol in vColumns){this.setColumnHorizontalAlignment(vCount,vColumns[vCol].align);this.setColumnWidth(vCount,vColumns[vCol].width);vCount++}};this._lastRowCount=vRowCount};qx.Proto._currentScrollTop=-1;qx.Proto._updateRendering=function(vForce){if(this._updatingRendering){return};var vScrollTop=(this._initialLayoutDone?this.getView().getScroll().getScrollTop():0);this._updatingRendering=true;this._currentScrollTop=vScrollTop;for(var i=0;i<this._rowCount;i++){this._updateRow(i)};delete this._updatingRendering};qx.Proto._updateRow=function(vRelativeRow){var vData=this._data;var vRowOffset=Math.floor(this._currentScrollTop/this._rowHeight);var vColumnCount=this.getColumnCount();var vColumns=this._columns;var vChildren=this.getVisibleChildren();var vChild,vEntry,vCol;var j=0;for(vCol in vColumns){vEntry=vData[vRowOffset+vRelativeRow];vChild=vChildren[vColumnCount*vRelativeRow+(j++)];if(vChild){if(vEntry&&vEntry._selected){vChild.addState(qx.manager.selection.SelectionManager.STATE_SELECTED)}else{vChild.removeState(qx.manager.selection.SelectionManager.STATE_SELECTED)};vChild.set(vEntry?vEntry[vCol]:vColumns[vCol].empty||vColumns[vCol].contentClass.empty)}}};qx.Proto._onscroll=function(e){this._updateRendering()};qx.Proto._changeInnerHeight=function(vNew,vOld){this._updateLayout(true);this._updateRendering(true);return qx.ui.layout.GridLayout.prototype._changeInnerHeight.call(this,vNew,vOld)};qx.Proto.getManager=function(){return this._manager};qx.Proto.getListViewTarget=function(e){var vEventTop=e.getPageY();var vPaneTop=qx.dom.DomLocation.getPageInnerTop(this.getElement());var vItemNo=Math.floor(this._currentScrollTop/this._rowHeight)+Math.floor((vEventTop-vPaneTop)/this._rowHeight);return this._data[vItemNo]};qx.Proto.getSelectedItem=function(){return this.getSelectedItems()[0]};qx.Proto.getSelectedItems=function(){return this._manager.getSelectedItems()};qx.Proto.getData=function(){return this._data};qx.Proto.getItemHeight=function(vItem){return this._rowHeight};qx.Proto.getItemWidth=function(vItem){return qx.dom.DomDimension.getInnerWidth(this.getElement())};qx.Proto.getItemLeft=function(vItem){return 0};qx.Proto.getItemTop=function(vItem){return this._data.indexOf(vItem)*this._rowHeight};qx.Proto._onmousewheel=function(e){var vScroll=this.getView().getScroll();vScroll.setScrollTop(vScroll.getScrollTop()-(e.getWheelDelta()*20))};qx.Proto._onmouseover=function(e){var vTarget=this.getListViewTarget(e);if(vTarget){this._manager.handleMouseOver(vTarget,e)}};qx.Proto._onmousedown=function(e){var vTarget=this.getListViewTarget(e);if(vTarget){this._manager.handleMouseDown(vTarget,e)}};qx.Proto._onmouseup=function(e){var vTarget=this.getListViewTarget(e);if(vTarget){this._manager.handleMouseUp(vTarget,e)}};qx.Proto._onclick=function(e){var vTarget=this.getListViewTarget(e);if(vTarget){this._manager.handleClick(vTarget,e)}};qx.Proto._ondblclick=function(e){var vTarget=this.getListViewTarget(e);if(vTarget){this._manager.handleDblClick(vTarget,e)}};qx.Proto._onkeydown=function(e){this._manager.handleKeyDown(e);e.preventDefault()};qx.Proto._updateSelectionState=function(vItem,vIsSelected){vItem._selected=vIsSelected;this._updateItem(vItem)};qx.Proto._updateAnchorState=function(vItem,vIsAnchor){vItem._anchor=vIsAnchor;this._updateItem(vItem)};qx.Proto._updateLeadState=function(vItem,vIsLead){vItem._lead=vIsLead;this._updateItem(vItem)};qx.Proto.scrollItemIntoView=function(vItem,vAlignLeftTop){this.scrollItemIntoViewX(vItem,vAlignLeftTop);this.scrollItemIntoViewY(vItem,vAlignLeftTop)};qx.Proto.scrollItemIntoViewX=function(vItem,vAlignLeft){};qx.Proto.scrollItemIntoViewY=function(vItem,vAlignTop){var vItems=this._data;var vOffset=vItems.indexOf(vItem)*this._rowHeight;var vHeight=this._rowHeight;var vParentHeight=(Math.floor(this.getClientHeight()/this._rowHeight)*this._rowHeight);var vParentScrollTop=this._currentScrollTop;var vNewScrollTop=null;if(vAlignTop){vNewScrollTop=vOffset}else if(vAlignTop==false){vNewScrollTop=vOffset+vHeight-vParentHeight}else if(vHeight>vParentHeight||vOffset<vParentScrollTop){vNewScrollTop=vOffset}else if((vOffset+vHeight)>(vParentScrollTop+vParentHeight)){vNewScrollTop=vOffset+vHeight-vParentHeight};if(vNewScrollTop!=null){this.getView().getScroll().setScrollTop(vNewScrollTop)}};qx.Proto.setScrollTop=function(vScrollTop){this.getView().getScroll().setScrollTop(vScrollTop);this._updateRendering()};qx.Proto.getScrollTop=function(){return this._currentScrollTop};qx.Proto.setScrollLeft=function(){this.error("Not implemented in qx.ui.listview.ListViewPane!")};qx.Proto.getScrollLeft=function(){return 0};qx.Proto.isItemVisible=function(vItem){var vIndex=this._data.indexOf(vItem);var vRowStart=Math.floor(this._currentScrollTop/this._rowHeight);var vRowLength=Math.ceil(this.getClientHeight()/this._rowHeight);return vIndex>=vRowStart&&vIndex<=(vRowStart+vRowLength)};qx.Proto.getRelativeItemPosition=function(vItem){var vIndex=this._data.indexOf(vItem);var vRowStart=Math.floor(this._currentScrollTop/this._rowHeight);return vIndex-vRowStart};qx.Proto._updateItem=function(vItem){var vIndex=this._data.indexOf(vItem);var vRowStart=Math.floor(this._currentScrollTop/this._rowHeight);var vRowLength=Math.ceil(this.getClientHeight()/this._rowHeight);if(vIndex<vRowStart||vIndex>(vRowStart+vRowLength)){return};this._updateRow(vIndex-vRowStart)};qx.Proto.dispose=function(){if(this.getDisposed()){return};this.removeEventListener(qx.constant.Event.MOUSEWHEEL,this._onmousewheel);this.removeEventListener(qx.constant.Event.MOUSEOVER,this._onmouseover);this.removeEventListener(qx.constant.Event.MOUSEDOWN,this._onmousedown);this.removeEventListener(qx.constant.Event.MOUSEUP,this._onmouseup);this.removeEventListener(qx.constant.Event.CLICK,this._onclick);this.removeEventListener(qx.constant.Event.DBLCLICK,this._ondblclick);this.removeEventListener(qx.constant.Event.KEYDOWN,this._onkeydown);delete this._data;delete this._columns;if(this._manager){this._manager.dispose();this._manager=null};return qx.ui.layout.GridLayout.prototype.dispose.call(this)};qx.OO.defineClass("qx.manager.selection.VirtualSelectionManager",qx.manager.selection.SelectionManager,function(vBoundedWidget){qx.manager.selection.SelectionManager.call(this,vBoundedWidget)});qx.Proto.getFirst=function(){return qx.lang.Array.getFirst(this.getItems())};qx.Proto.getLast=function(){return qx.lang.Array.getLast(this.getItems())};qx.Proto.getItems=function(){return this.getBoundedWidget().getData()};qx.Proto.getNextSibling=function(vItem){var vData=this.getItems();return vData[vData.indexOf(vItem)+1]};qx.Proto.getPreviousSibling=function(vItem){var vData=this.getItems();return vData[vData.indexOf(vItem)-1]};qx.Proto.getItemHashCode=function(oItem){if(oItem._hash){return oItem._hash};return oItem._hash=qx.core.Object.toHashCode(oItem)};qx.Proto.scrollItemIntoView=function(vItem,vTopLeft){this.getBoundedWidget().scrollItemIntoView(vItem,vTopLeft)};qx.Proto.getItemLeft=function(vItem){return this.getBoundedWidget().getItemLeft(vItem)};qx.Proto.getItemTop=function(vItem){return this.getBoundedWidget().getItemTop(vItem)};qx.Proto.getItemWidth=function(vItem){return this.getBoundedWidget().getItemWidth(vItem)};qx.Proto.getItemHeight=function(vItem){return this.getBoundedWidget().getItemHeight(vItem)};qx.Proto.getItemEnabled=function(vItem){return true};qx.Proto.renderItemSelectionState=function(vItem,vIsSelected){this.getBoundedWidget()._updateSelectionState(vItem,vIsSelected)};qx.Proto.renderItemAnchorState=function(vItem,vIsAnchor){this.getBoundedWidget()._updateAnchorState(vItem,vIsAnchor)};qx.Proto.renderItemLeadState=function(vItem,vIsLead){this.getBoundedWidget()._updateLeadState(vItem,vIsLead)};qx.OO.defineClass("qx.ui.embed.Iframe",qx.ui.basic.Terminator,function(vSource){qx.ui.basic.Terminator.call(this);this.setSelectable(false);this.setTabIndex(0);var o=this;this.__onreadystatechange=function(e){return o._onreadystatechange(e)};this.__onload=function(e){return o._onload(e)};if(qx.util.Validation.isValid(vSource)){this.setSource(vSource)}});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"iframe"});qx.OO.addProperty({name:"source",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"frameName",type:qx.constant.Type.STRING});qx.Proto._iframeNode=null;qx.Proto.getIframeNode=function(){return this._iframeNode};qx.Proto.setIframeNode=function(vIframeNode){return this._iframeNode=vIframeNode};qx.Proto._blockerNode=null;qx.Proto.getBlockerNode=function(){return this._blockerNode};qx.Proto.setBlockerNode=function(vBlockerNode){return this._blockerNode=vBlockerNode};qx.Proto.reload=function(){this._applySource()};qx.Proto.block=function(){if(this._blockerNode){this._blockerNode.style.display=qx.constant.Core.EMPTY}};qx.Proto.release=function(){if(this._blockerNode){this._blockerNode.style.display=qx.constant.Core.NONE}};qx.Proto._modifyElement=function(propValue,propOldValue,propData){var iframeNode=this.getIframeNode();if(!iframeNode){qx.ui.embed.Iframe.initIframe(this.getFrameName());iframeNode=this.setIframeNode(qx.ui.embed.Iframe._element.cloneNode(true));qx.ui.embed.Iframe.initBlocker();blockerNode=this.setBlockerNode(qx.ui.embed.Iframe._blocker.cloneNode(true));if(qx.sys.Client.getInstance().isMshtml()){iframeNode.onreadystatechange=this.__onreadystatechange}else{iframeNode.onload=this.__onload}};this._applySource();propValue.appendChild(iframeNode);propValue.appendChild(blockerNode);qx.ui.basic.Terminator.prototype._modifyElement.call(this,propValue,propOldValue,propData);return true};qx.Proto._beforeAppear=function(){qx.ui.basic.Terminator.prototype._beforeAppear.call(this);qx.manager.object.IframeManager.getInstance().add(this)};qx.Proto._beforeDisappear=function(){qx.ui.basic.Terminator.prototype._beforeDisappear.call(this);qx.manager.object.IframeManager.getInstance().remove(this)};qx.Proto._modifySource=function(propValue,propOldValue,propData){if(this.isCreated()){this._applySource()};return true};qx.Proto._applySource=function(){var currentSource=this.getSource();if(qx.util.Validation.isInvalidString(currentSource)){currentSource=qx.manager.object.AliasManager.getInstance().resolvePath("static/image/blank.gif")};this._isLoaded=false;this.getIframeNode().src=currentSource};qx.Proto._modifyFrameName=function(propValue,propOldValue,propName,uniqModIds){if(this.isCreated()){throw new Error("Not allowed to set frame name after it has been created")};return true};qx.Proto._onreadystatechange=function(){if(this.getIframeNode().readyState=="complete"){this.dispatchEvent(new qx.event.type.Event(qx.constant.Event.LOAD),true)}};qx.Proto._onload=function(){this._isLoaded=true;this.dispatchEvent(new qx.event.type.Event(qx.constant.Event.LOAD),true)};if(qx.sys.Client.getInstance().isMshtml()){qx.Proto.getContentWindow=function(){if(this.isCreated()){try{return this.getIframeNode().contentWindow}catch(ex){}};return null};qx.Proto.getContentDocument=function(){var win=this.getContentWindow();if(win){try{return win.document}catch(ex){}};return null}}else{qx.Proto.getContentWindow=function(){var doc=this.getContentDocument();return doc?doc.defaultView:null};qx.Proto.getContentDocument=function(){if(this.isCreated()){try{return this.getIframeNode().contentDocument}catch(ex){}};return null}};qx.Proto._isLoaded=false;if(qx.sys.Client.getInstance().isMshtml()){qx.Proto.isLoaded=function(){var doc=this.getContentDocument();return doc?doc.readyState=="complete":false}}else{qx.Proto.isLoaded=function(){return this._isLoaded}};qx.Proto.dispose=function(){if(this.getDisposed()){return};if(this._iframeNode){this._iframeNode.onreadystatechange=null;this._iframeNode.onload=null;this._iframeNode=null};qx.ui.basic.Terminator.prototype.dispose.call(this)};qx.ui.embed.Iframe.initIframe=function(vFrameName){if(qx.ui.embed.Iframe._element&&!vFrameName){return};if(vFrameName&&qx.sys.Client.getInstance().isMshtml()){var f=qx.ui.embed.Iframe._element=document.createElement('<iframe name="'+vFrameName+'"></iframe>')}else{var f=qx.ui.embed.Iframe._element=document.createElement("iframe");if(vFrameName){f.name=vFrameName}};f.frameBorder=qx.constant.Core.ZERO;f.frameSpacing=qx.constant.Core.ZERO;f.marginWidth=qx.constant.Core.ZERO;f.marginHeight=qx.constant.Core.ZERO;f.width=qx.constant.Core.HUNDREDPERCENT;f.height=qx.constant.Core.HUNDREDPERCENT;f.hspace=qx.constant.Core.ZERO;f.vspace=qx.constant.Core.ZERO;f.border=qx.constant.Core.ZERO;f.scrolling=qx.constant.Core.AUTO;f.unselectable="on";f.allowTransparency="true";f.style.position=qx.constant.Style.POSITION_ABSOLUTE;f.style.top=0;f.style.left=0};qx.ui.embed.Iframe.initBlocker=function(){if(qx.ui.embed.Iframe._blocker){return};var b=qx.ui.embed.Iframe._blocker=document.createElement("div");if(qx.sys.Client.getInstance().isMshtml()){b.style.backgroundImage="url("+qx.manager.object.AliasManager.getInstance().resolvePath("static/image/blank.gif")+")"};b.style.position=qx.constant.Style.POSITION_ABSOLUTE;b.style.top=0;b.style.left=0;b.style.width=qx.constant.Core.HUNDREDPERCENT;b.style.height=qx.constant.Core.HUNDREDPERCENT;b.style.zIndex=1;b.style.display=qx.constant.Core.NONE};qx.OO.defineClass("qx.lang.Prototypes");qx.Settings.setDefault("enable",false);qx.lang.Prototypes.init=function(){var key,obj;var objs=["String","Number","Array"];for(var i=0,len=objs.length;i<len;i++){obj=objs[i];for(key in qx.lang[obj]){window[obj].prototype[key]=(function(key,obj){return function(){return qx.lang[obj][key].apply(null,Array.prototype.concat.call([this],Array.prototype.slice.call(arguments,0)))}})(key,obj)}}};if(qx.Settings.getValueOfClass("qx.lang.Generics","enable")){qx.lang.Prototypes.init()};qx.OO.defineClass("qx.lang.Xml");qx.lang.Xml.createXmlDom=function(){if(document.implementation&&document.implementation.createDocument){return document.implementation.createDocument("","",null)};if(window.ActiveXObject){var vServers=["MSXML2.DOMDocument.6.0","MSXML2.DOMDocument.5.0","MSXML2.DOMDocument.4.0","MSXML2.DOMDocument.3.0","MSXML2.DOMDocument.2.0","MSXML2.DOMDocument","Microsoft.DOMDocument"];var vObject;var vServer;for(var i=0,l=vServers.length;i<l;i++){vServer=vServers[i];try{vObject=new ActiveXObject(vServer);break}catch(ex){vObject=null}};return vObject};throw new Error("This browser does not support xml dom creation.")};qx.OO.defineClass("qx.theme.color.WindowsLunaSilverColorTheme",qx.renderer.theme.ColorTheme,function(){qx.renderer.theme.ColorTheme.call(this,"Windows Luna Silver")});qx.Proto._colors=qx.lang.Object.carefullyMergeWith({activeborder:[212,208,200],activecaption:[192,192,192],appworkspace:[128,128,128],background:[88,87,104],buttonface:[224,223,227],buttonhighlight:[255,255,255],buttonshadow:[157,157,161],buttontext:[0,0,0],captiontext:[14,16,16],graytext:[172,168,153],highlight:[178,180,191],highlighttext:[0,0,0],inactiveborder:[212,208,200],inactivecaption:[255,255,255],inactivecaptiontext:[162,161,161],infobackground:[255,255,225],infotext:[0,0,0],menu:[255,255,255],menutext:[0,0,0],scrollbar:[212,208,200],threeddarkshadow:[113,111,100],threedface:[224,223,227],threedhighlight:[255,255,255],threedlightshadow:[241,239,226],threedshadow:[157,157,161],window:[255,255,255],windowframe:[0,0,0],windowtext:[0,0,0]},qx.Super.prototype._colors);qx.Class.getInstance=qx.util.Return.returnInstance;qx.manager.object.ColorManager.getInstance().registerColorTheme(qx.Class);qx.OO.defineClass("qx.ui.pageview.buttonview.ButtonViewBar",qx.ui.pageview.AbstractPageViewBar,function(){qx.ui.pageview.AbstractPageViewBar.call(this)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"bar-view-bar"});qx.Proto.getWheelDelta=function(e){var vWheelDelta=e.getWheelDelta();switch(this.getParent().getBarPosition()){case qx.constant.Layout.ALIGN_LEFT:case qx.constant.Layout.ALIGN_RIGHT:vWheelDelta*=-1};return vWheelDelta};qx.Proto._applyStateAppearance=function(){var vPos=this.getParent().getBarPosition();this._states.barLeft=vPos===qx.constant.Layout.ALIGN_LEFT;this._states.barRight=vPos===qx.constant.Layout.ALIGN_RIGHT;this._states.barTop=vPos===qx.constant.Layout.ALIGN_TOP;this._states.barBottom=vPos===qx.constant.Layout.ALIGN_BOTTOM;qx.ui.pageview.AbstractPageViewButton.prototype._applyStateAppearance.call(this)};qx.OO.defineClass("qx.ui.pageview.buttonview.ButtonView",qx.ui.pageview.AbstractPageView,function(){qx.ui.pageview.AbstractPageView.call(this,qx.ui.pageview.buttonview.ButtonViewBar,qx.ui.pageview.buttonview.ButtonViewPane);this.setOrientation(qx.constant.Layout.ORIENTATION_VERTICAL)});qx.OO.addProperty({name:"barPosition",type:qx.constant.Type.STRING,defaultValue:qx.constant.Layout.ALIGN_TOP,possibleValues:[qx.constant.Layout.ALIGN_TOP,qx.constant.Layout.ALIGN_RIGHT,qx.constant.Layout.ALIGN_BOTTOM,qx.constant.Layout.ALIGN_LEFT]});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"bar-view"});qx.Proto._modifyBarPosition=function(propValue,propOldValue,propData){var vBar=this._bar;switch(propValue){case qx.constant.Layout.ALIGN_TOP:vBar.moveSelfToBegin();this.setOrientation(qx.constant.Layout.ORIENTATION_VERTICAL);break;case qx.constant.Layout.ALIGN_BOTTOM:vBar.moveSelfToEnd();this.setOrientation(qx.constant.Layout.ORIENTATION_VERTICAL);break;case qx.constant.Layout.ALIGN_LEFT:vBar.moveSelfToBegin();this.setOrientation(qx.constant.Layout.ORIENTATION_HORIZONTAL);break;case qx.constant.Layout.ALIGN_RIGHT:vBar.moveSelfToEnd();this.setOrientation(qx.constant.Layout.ORIENTATION_HORIZONTAL);break};this._addChildrenToStateQueue();vBar._addChildrenToStateQueue();return true};qx.OO.defineClass("qx.ui.pageview.AbstractPageViewPane",qx.ui.layout.CanvasLayout,function(){qx.ui.layout.CanvasLayout.call(this)});qx.OO.defineClass("qx.ui.pageview.buttonview.ButtonViewPane",qx.ui.pageview.AbstractPageViewPane,function(){qx.ui.pageview.AbstractPageViewPane.call(this)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"bar-view-pane"});qx.Proto._applyStateAppearance=function(){var vPos=this.getParent().getBarPosition();this._states.barHorizontal=vPos===qx.constant.Layout.ALIGN_TOP||vPos===qx.constant.Layout.ALIGN_BOTTOM;qx.ui.pageview.AbstractPageViewButton.prototype._applyStateAppearance.call(this)};qx.OO.defineClass("qx.event.handler.DragAndDropHandler",qx.manager.object.ObjectManager,function(){qx.core.Target.call(this);this._data={};this._actions={};this._cursors={};var vCursor;for(var vAction in this._actionNames){vCursor=this._cursors[vAction]=new qx.ui.basic.Image(this._cursorPath+vAction+qx.constant.Core.DOT+this._cursorFormat);vCursor.setZIndex(1e8)}});qx.OO.addProperty({name:"sourceWidget",type:qx.constant.Type.OBJECT});qx.OO.addProperty({name:"destinationWidget",type:qx.constant.Type.OBJECT});qx.OO.addProperty({name:"cursor",type:qx.constant.Type.OBJECT});qx.OO.addProperty({name:"currentAction",type:qx.constant.Type.STRING});qx.Proto._actionNames={move:"move",copy:"copy",alias:"alias",nodrop:"nodrop"};qx.Proto._cursorPath="widget/cursors/";qx.Proto._cursorFormat="gif";qx.Proto._lastDestinationEvent=null;qx.Proto._modifyDestinationWidget=function(propValue,propOldValue,propData){if(propValue){propValue.dispatchEvent(new qx.event.type.DragEvent(qx.constant.Event.DRAGDROP,this._lastDestinationEvent,propValue,this.getSourceWidget()));this._lastDestinationEvent=null};return true};qx.Proto.addData=function(vMimeType,vData){this._data[vMimeType]=vData};qx.Proto.getData=function(vMimeType){return this._data[vMimeType]};qx.Proto.clearData=function(){this._data={}};qx.Proto.getDropDataTypes=function(){var vDestination=this.getDestinationWidget();var vDropTypes=[];if(!vDestination){return vDropTypes};var vDropDataTypes=vDestination.getDropDataTypes();for(var i=0,l=vDropDataTypes.length;i<l;i++){if(vDropDataTypes[i] in this._data){vDropTypes.push(vDropDataTypes[i])}};return vDropTypes};qx.Proto.startDrag=function(){if(!this._dragCache){throw new Error("Invalid usage of startDrag. Missing dragInfo!")};this._dragCache.dragHandlerActive=true;this.setSourceWidget(this._dragCache.sourceWidget)};qx.Proto._fireUserEvents=function(fromWidget,toWidget,e){if(fromWidget&&fromWidget!=toWidget&&fromWidget.hasEventListeners(qx.constant.Event.DRAGOUT)){fromWidget.dispatchEvent(new qx.event.type.DragEvent(qx.constant.Event.DRAGOUT,e,fromWidget,toWidget),true)};if(toWidget){if(fromWidget!=toWidget&&toWidget.hasEventListeners(qx.constant.Event.DRAGOVER)){toWidget.dispatchEvent(new qx.event.type.DragEvent(qx.constant.Event.DRAGOVER,e,toWidget,fromWidget),true)};if(toWidget.hasEventListeners(qx.constant.Event.DRAGMOVE)){toWidget.dispatchEvent(new qx.event.type.DragEvent(qx.constant.Event.DRAGMOVE,e,toWidget,null),true)}}};qx.Proto.handleMouseEvent=function(e){switch(e.getType()){case qx.constant.Event.MOUSEDOWN:return this._handleMouseDown(e);case qx.constant.Event.MOUSEUP:return this._handleMouseUp(e);case qx.constant.Event.MOUSEMOVE:return this._handleMouseMove(e)}};qx.Proto._handleMouseDown=function(e){if(e.getDefaultPrevented()){return};this._dragCache={startScreenX:e.getScreenX(),startScreenY:e.getScreenY(),pageX:e.getPageX(),pageY:e.getPageY(),sourceWidget:e.getTarget(),sourceTopLevel:e.getTarget().getTopLevelWidget(),dragHandlerActive:false,hasFiredDragStart:false}};qx.Proto._handleMouseMove=function(e){if(!this._dragCache){return};if(this._dragCache.dragHandlerActive){this._dragCache.pageX=e.getPageX();this._dragCache.pageY=e.getPageY();var currentDropTarget=this.getDropTarget(e);this.setCurrentAction(currentDropTarget?this._evalNewAction(e.getShiftKey(),e.getCtrlKey(),e.getAltKey()):null);this._fireUserEvents(this._dragCache.currentDropWidget,currentDropTarget,e);this._dragCache.currentDropWidget=currentDropTarget;this._renderCursor()}else if(!this._dragCache.hasFiredDragStart){if(Math.abs(e.getScreenX()-this._dragCache.startScreenX)>5||Math.abs(e.getScreenY()-this._dragCache.startScreenY)>5){this._dragCache.sourceWidget.dispatchEvent(new qx.event.type.DragEvent(qx.constant.Event.DRAGSTART,e,this._dragCache.sourceWidget),true);this._dragCache.hasFiredDragStart=true;if(this._dragCache.dragHandlerActive){this._fireUserEvents(this._dragCache.currentDropWidget,this._dragCache.sourceWidget,e);this._dragCache.currentDropWidget=this._dragCache.sourceWidget;qx.ui.core.ClientDocument.getInstance().setCapture(true)}}}};qx.Proto._handleMouseUp=function(e){if(!this._dragCache){return};if(this._dragCache.dragHandlerActive){this._endDrag(this.getDropTarget(e),e)}else{this._dragCache=null}};qx.Proto.handleKeyEvent=function(e){if(!this._dragCache){return};switch(e.getType()){case qx.constant.Event.KEYDOWN:this._handleKeyDown(e);return;case qx.constant.Event.KEYUP:this._handleKeyUp(e);return}};qx.Proto._handleKeyDown=function(e){if(e.getKeyCode()==qx.event.type.KeyEvent.keys.esc){this.cancelDrag(e)}else if(this.getCurrentAction()!=null){switch(e.getKeyCode()){case qx.event.type.KeyEvent.keys.shift:case qx.event.type.KeyEvent.keys.ctrl:case qx.event.type.KeyEvent.keys.alt:this.setAction(this._evalNewAction(e.getShiftKey(),e.getCtrlKey(),e.getAltKey()));this._renderCursor();e.preventDefault()}}};qx.Proto._handleKeyUp=function(e){var bShiftPressed=e.getKeyCode()==qx.event.type.KeyEvent.keys.shift;var bCtrlPressed=e.getKeyCode()==qx.event.type.KeyEvent.keys.strl;var bAltPressed=e.getKeyCode()==qx.event.type.KeyEvent.keys.alt;if(bShiftPressed||bCtrlPressed||bAltPressed){if(this.getCurrentAction()!=null){this.setAction(this._evalNewAction(!bShiftPressed&&e.getShiftKey(),!bCtrlPressed&&e.getCtrlKey(),!bAltPressed&&e.getAltKey()));this._renderCursor();e.preventDefault()}}};qx.Proto.cancelDrag=function(e){this._endDrag(null,e)};qx.Proto.globalCancelDrag=function(){if(this._dragCache&&this._dragCache.dragHandlerActive){this._endDragCore()}};qx.Proto._endDrag=function(currentDestinationWidget,e){if(currentDestinationWidget){this._lastDestinationEvent=e;this.setDestinationWidget(currentDestinationWidget)};this.getSourceWidget().dispatchEvent(new qx.event.type.DragEvent(qx.constant.Event.DRAGEND,e,this.getSourceWidget(),currentDestinationWidget),true);this._fireUserEvents(this._dragCache&&this._dragCache.currentDropWidget,null,e);this._endDragCore()};qx.Proto._endDragCore=function(){var oldCursor=this.getCursor();if(oldCursor){oldCursor._style.display="none";this.forceCursor(null)};if(this._dragCache){this._dragCache.currentDropWidget=null;this._dragCache=null};qx.ui.core.ClientDocument.getInstance().setCapture(false);this.clearData();this.clearActions();this.setSourceWidget(null);this.setDestinationWidget(null)};qx.Proto._renderCursor=function(){var vNewCursor;var vOldCursor=this.getCursor();switch(this.getCurrentAction()){case this._actionNames.move:vNewCursor=this._cursors.move;break;case this._actionNames.copy:vNewCursor=this._cursors.copy;break;case this._actionNames.alias:vNewCursor=this._cursors.alias;break;default:vNewCursor=this._cursors.nodrop};if(vNewCursor!=vOldCursor&&vOldCursor!=null){vOldCursor._style.display="none"};if(!vNewCursor._initialLayoutDone){qx.ui.core.ClientDocument.getInstance().add(vNewCursor);qx.ui.core.Widget.flushGlobalQueues()};vNewCursor._applyRuntimeLeft(this._dragCache.pageX+5);vNewCursor._applyRuntimeTop(this._dragCache.pageY+15);if(vNewCursor!=vOldCursor){vNewCursor._style.display=qx.constant.Core.EMPTY};this.forceCursor(vNewCursor)};qx.Proto.supportsDrop=function(vWidget){var vTypes=vWidget.getDropDataTypes();if(!vTypes){return false};for(var i=0;i<vTypes.length;i++){if(vTypes[i] in this._data){return true}};return false};if(qx.sys.Client.getInstance().isGecko()){qx.Proto.getDropTarget=function(e){var vCurrent=e.getTarget();if(vCurrent==this._dragCache.sourceWidget){vCurrent=this._dragCache.sourceTopLevel.getWidgetFromPoint(e.getPageX(),e.getPageY())}else{vCurrent=qx.event.handler.EventHandler.getTargetObject(null,vCurrent)};while(vCurrent!=null&&vCurrent!=this._dragCache.sourceWidget){if(!vCurrent.supportsDrop(this._dragCache)){return null};if(this.supportsDrop(vCurrent)){return vCurrent};vCurrent=vCurrent.getParent()};return null}}else{qx.Proto.getDropTarget=function(e){var vCurrent=e.getTarget();while(vCurrent!=null){if(!vCurrent.supportsDrop(this._dragCache)){return null};if(this.supportsDrop(vCurrent)){return vCurrent};vCurrent=vCurrent.getParent()};return null}};qx.Proto.addAction=function(vAction,vForce){this._actions[vAction]=true;if(vForce||this.getCurrentAction()==null){this.setCurrentAction(vAction)}};qx.Proto.clearActions=function(){this._actions={};this.setCurrentAction(null)};qx.Proto.removeAction=function(vAction){delete this._actions[vAction];if(this.getCurrentAction()==vAction){this.setCurrentAction(null)}};qx.Proto.setAction=function(vAction){if(vAction!=null&&!(vAction in this._actions)){this.addAction(vAction,true)}else{this.setCurrentAction(vAction)}};qx.Proto._evalNewAction=function(vKeyShift,vKeyCtrl,vKeyAlt){if(vKeyShift&&vKeyCtrl&&this._actionNames.alias in this._actions){return this._actionNames.alias}else if(vKeyShift&&vKeyAlt&&this._actionNames.copy in this._actions){return this._actionNames.copy}else if(vKeyShift&&this._actionNames.move in this._actions){return this._actionNames.move}else if(vKeyAlt&&this._actionNames.alias in this._actions){return this._actionNames.alias}else if(vKeyCtrl&&this._actionNames.copy in this._actions){return this._actionNames.copy}else{for(var vAction in this._actions){return vAction}};return null};qx.Proto.dispose=function(){if(this.getDisposed()){return};if(this._dragCache){this._dragCache.currentDropWidget=null;this._dragCache=null};this._data=null;this._actions=null;this._actionNames=null;this._lastDestinationEvent=null;if(this._cursors){if(this._cursors.move){this._cursors.move.dispose();delete this._cursors.move};if(this._cursors.copy){this._cursors.copy.dispose();delete this._cursors.copy};if(this._cursors.alias){this._cursors.alias.dispose();delete this._cursors.alias};if(this._cursors.nodrop){this._cursors.nodrop.dispose();delete this._cursors.nodrop};this._cursors=null};return qx.manager.object.ObjectManager.prototype.dispose.call(this)};qx.Class.getInstance=qx.util.Return.returnInstance;qx.OO.defineClass("qx.event.type.DragEvent",qx.event.type.MouseEvent,function(vType,vMouseEvent,vTarget,vRelatedTarget){this._mouseEvent=vMouseEvent;var vOriginalTarget=null;switch(vType){case qx.constant.Event.DRAGSTART:case qx.constant.Event.DRAGOVER:vOriginalTarget=vMouseEvent.getOriginalTarget()};qx.event.type.MouseEvent.call(this,vType,vMouseEvent.getDomEvent(),vTarget.getElement(),vTarget,vOriginalTarget,vRelatedTarget)});qx.Proto.getMouseEvent=function(){return this._mouseEvent};qx.Proto.startDrag=function(){if(this.getType()!=qx.constant.Event.DRAGSTART){throw new Error("qx.event.type.DragEvent startDrag can only be called during the dragstart event: "+this.getType())};this.stopPropagation();qx.event.handler.DragAndDropHandler.getInstance().startDrag()};qx.Proto.addData=function(sType,oData){qx.event.handler.DragAndDropHandler.getInstance().addData(sType,oData)};qx.Proto.getData=function(sType){return qx.event.handler.DragAndDropHandler.getInstance().getData(sType)};qx.Proto.clearData=function(){qx.event.handler.DragAndDropHandler.getInstance().clearData()};qx.Proto.getDropDataTypes=function(){return qx.event.handler.DragAndDropHandler.getInstance().getDropDataTypes()};qx.Proto.addAction=function(sAction){qx.event.handler.DragAndDropHandler.getInstance().addAction(sAction)};qx.Proto.removeAction=function(sAction){qx.event.handler.DragAndDropHandler.getInstance().removeAction(sAction)};qx.Proto.getAction=function(){return qx.event.handler.DragAndDropHandler.getInstance().getCurrentAction()};qx.Proto.clearActions=function(){qx.event.handler.DragAndDropHandler.getInstance().clearActions()};qx.Proto.dispose=function(){if(this.getDisposed()){return};this._mouseEvent=null;return qx.event.type.MouseEvent.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.table.CheckBoxCellEditorFactory",qx.ui.table.CellEditorFactory,function(){qx.ui.table.CellEditorFactory.call(this)});qx.Proto.createCellEditor=function(cellInfo){var editor=new qx.ui.form.CheckBox;with(editor){setChecked(cellInfo.value)};return editor};qx.Proto.getCellEditorValue=function(cellEditor){return cellEditor.getChecked()};qx.OO.defineClass("qx.ui.embed.Flash",qx.ui.basic.Terminator,function(vSource,vVersion){qx.ui.basic.Terminator.call(this);this._params={};this._variables={};if(qx.util.Validation.isValidString(vSource)){this.setSource(vSource)};this.setVersion(qx.util.Validation.isValidString(vVersion)?vVersion:qx.ui.embed.Flash.MINREQUIRED)});qx.OO.addProperty({name:"source",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"version"});qx.OO.addProperty({name:"enableExpressInstall",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.OO.addProperty({name:"enableDetection",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.OO.addProperty({name:"redirectUrl",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"quality",type:qx.constant.Type.STRING,impl:"param",defaultValue:"high",possibleValues:["low","autolow","autohigh","medium","high","best"]});qx.OO.addProperty({name:"scale",type:qx.constant.Type.STRING,impl:"param",defaultValue:"showall",possibleValues:["showall","noborder","excactfit","noscale"]});qx.OO.addProperty({name:"wmode",type:qx.constant.Type.STRING,impl:"param",defaultValue:"",possibleValues:["window","opaque","transparent"]});qx.OO.addProperty({name:"play",type:qx.constant.Type.BOOLEAN,impl:"param",defaultValue:true});qx.OO.addProperty({name:"loop",type:qx.constant.Type.BOOLEAN,impl:"param",defaultValue:true});qx.OO.addProperty({name:"menu",type:qx.constant.Type.BOOLEAN,impl:"param",defaultValue:true});qx.ui.embed.Flash.EXPRESSINSTALL=[6,0,65];qx.ui.embed.Flash.MINREQUIRED="1";qx.ui.embed.Flash.PLAYERVERSION=null;qx.ui.embed.Flash.PLUGINKEY="Shockwave Flash";qx.ui.embed.Flash.ACTIVEXKEY="ShockwaveFlash.ShockwaveFlash";qx.ui.embed.Flash.getPlayerVersion=function(){if(qx.ui.embed.Flash.PLAYERVERSION!=null){return qx.ui.embed.Flash.PLAYERVERSION};var vPlayerVersion=new qx.type.Version(0,0,0);if(navigator.plugins&&navigator.mimeTypes.length){var x=navigator.plugins[qx.ui.embed.Flash.PLUGINKEY];if(x&&x.description){vPlayerVersion=new qx.type.Version(x.description.replace(/([a-z]|[A-Z]|\s)+/,'').replace(/(\s+r|\s+b[0-9]+)/,'.'))}}else if(window.ActiveXObject){try{var axo=new ActiveXObject(qx.ui.embed.Flash.ACTIVEXKEY);vPlayerVersion=new qx.type.Version(axo.GetVariable("$version").split(qx.constant.Core.SPACE)[1].split(qx.constant.Core.COMMA))}catch(e){}};return qx.ui.embed.Flash.PLAYERVERSION=vPlayerVersion};qx.Proto._version=null;qx.Proto._source="";qx.Proto._applyElementData=function(el){qx.ui.basic.Terminator.prototype._applyElementData.call(this,el);this._expressInstall=false;if(this.getEnableExpressInstall()){var expressInstallReqVer=new qx.type.Version(qx.ui.embed.Flash.EXPRESSINSTALL);var installedVer=qx.ui.embed.Flash.getPlayerVersion();if(installedVer.versionIsValid(expressInstallReqVer)&&!installedVer.versionIsValid(this._version)){this._expressInstall=true}};if(!this.getEnableDetection()||this._expressInstall||qx.ui.embed.Flash.getPlayerVersion().versionIsValid(this._version)){el.innerHTML=this.generateHTML()}else{var redir=this.getRedirectUrl();if(redir!=qx.constant.Core.EMPTY){document.location.replace(redir)}}};qx.Proto._modifySource=function(propValue,propOldValue,propName){this._source=qx.util.Validation.isValidString(propValue)?qx.manager.object.AliasManager.getInstance().resolvePath(propValue):qx.constant.Core.EMPTY;return true};qx.Proto._modifyVersion=function(propValue,propOldValue,propData){if(this._version){this._version.dispose();this._version=null};if(qx.util.Validation.isValidString(propValue)){this._version=new qx.type.Version(propValue)};return true};qx.Proto._modifyParam=function(propValue,propOldValue,propData){this.setParam(propData.name,propValue.toString());return true};qx.Proto._modifyBackgroundColor=function(propValue,propOldValue,propData){if(propOldValue){propOldValue.remove(this)};if(propValue){this._applyBackgroundColor(propValue.getHex());propValue.add(this)}else{this._resetBackgroundColor()};return true};qx.Proto._applyBackgroundColor=function(vNewValue){this.setParam("bgcolor",vNewValue)};qx.Proto.setParam=function(name,value){this._params[name]=value};qx.Proto.getParam=function(name){return this._params[name]};qx.Proto.getParams=function(){return this._params};qx.Proto.setVariable=function(name,value){this._variables[name]=value};qx.Proto.getVariable=function(name){return this._variables[name]};qx.Proto.getVariables=function(){return this._variables};qx.Proto.generateParamTags=function(){var vParams=this.getParams();var vParamTags=[];for(var vKey in vParams){vParamTags.push("<param name='");vParamTags.push(vKey);vParamTags.push("' value='");vParamTags.push(vParams[vKey]);vParamTags.push("'/>")};return vParamTags.join(qx.constant.Core.EMPTY)};qx.Proto.getVariablePairs=function(){var variables=this.getVariables();var variablePairs=[];for(var key in variables){variablePairs.push(key+qx.constant.Core.EQUAL+variables[key])};return variablePairs.join(qx.constant.Core.AMPERSAND)};if(navigator.plugins&&navigator.mimeTypes&&navigator.mimeTypes.length){qx.Proto.generateHTML=function(){var html=[];if(this._expressInstall){document.title=document.title.slice(0,47)+' - Flash Player Installation';this.addVariable('MMredirectURL',escape(window.location));this.addVariable('MMdoctitle',document.title);this.addVariable('MMplayerType','PlugIn')};html.push("<embed type='application/x-shockwave-flash' width='100%' height='100%' src='");html.push(this._source);html.push(qx.constant.Core.SINGLEQUOTE);var params=this.getParams();for(var key in params){html.push(qx.constant.Core.SPACE);html.push(key);html.push(qx.constant.Core.EQUAL);html.push(qx.constant.Core.SINGLEQUOTE);html.push(params[key]);html.push(qx.constant.Core.SINGLEQUOTE)};var pairs=this.getVariablePairs();if(pairs.length>0){html.push(qx.constant.Core.SPACE);html.push("flashvars");html.push(qx.constant.Core.EQUAL);html.push(qx.constant.Core.SINGLEQUOTE);html.push(pairs);html.push(qx.constant.Core.SINGLEQUOTE)};html.push("></embed>");return html.join(qx.constant.Core.EMPTY)}}else{qx.Proto.generateHTML=function(){var html=[];if(this._expressInstall){document.title=document.title.slice(0,47)+' - Flash Player Installation';this.addVariable("MMredirectURL",escape(window.location));this.addVariable("MMdoctitle",document.title);this.addVariable("MMplayerType","ActiveX")};html.push("<object classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' width='100%' height='100%'>");html.push("<param name='movie' value='");html.push(this._source);html.push("'/>");var tags=this.generateParamTags();if(tags.length>0){html.push(tags)};var pairs=this.getVariablePairs();if(pairs.length>0){html.push("<param name='flashvars' value='");html.push(pairs);html.push("'/>")};html.push("</object>");return html.join(qx.constant.Core.EMPTY)}};qx.Proto._isWidthEssential=qx.util.Return.returnTrue;qx.Proto._isHeightEssential=qx.util.Return.returnTrue;qx.Proto._computePreferredInnerWidth=qx.util.Return.returnZero;qx.Proto._computePreferredInnerHeight=qx.util.Return.returnZero;qx.Proto.dispose=function(){if(this.getDisposed()){return};delete this._source;delete this._params;delete this._variables;if(this._version){this._version.dispose();this._version=null};qx.ui.basic.Terminator.prototype.dispose.call(this)};qx.OO.defineClass("qx.theme.color.WindowsClassicColorTheme",qx.renderer.theme.ColorTheme,function(){qx.renderer.theme.ColorTheme.call(this,"Windows Classic")});qx.Proto._colors=qx.lang.Object.carefullyMergeWith({activeborder:[212,208,200],activecaption:[10,36,106],appworkspace:[128,128,128],background:[58,110,165],buttonface:[212,208,200],buttonhighlight:[255,255,255],buttonshadow:[128,128,128],buttontext:[0,0,0],captiontext:[255,255,255],graytext:[128,128,128],highlight:[10,36,106],highlighttext:[255,255,255],inactiveborder:[212,208,200],inactivecaption:[128,128,128],inactivecaptiontext:[212,208,200],infobackground:[255,255,225],infotext:[0,0,0],menu:[212,208,200],menutext:[0,0,0],scrollbar:[212,208,200],threeddarkshadow:[64,64,64],threedface:[212,208,200],threedhighlight:[255,255,255],threedlightshadow:[212,208,200],threedshadow:[128,128,128],window:[255,255,255],windowframe:[0,0,0],windowtext:[0,0,0]},qx.Super.prototype._colors);qx.Class.getInstance=qx.util.Return.returnInstance;qx.manager.object.ColorManager.getInstance().registerColorTheme(qx.Class);qx.OO.defineClass("qx.ui.form.ComboBox",qx.ui.layout.HorizontalBoxLayout,function(){qx.ui.layout.HorizontalBoxLayout.call(this);var l=this._list=new qx.ui.form.List;l.setAppearance("combo-box-list");var m=this._manager=this._list.getManager();m.setMultiSelection(false);m.setDragSelection(false);var p=this._popup=new qx.ui.popup.Popup;p.setAppearance("combo-box-popup");p.setAutoHide(false);p.add(l);var f=this._field=new qx.ui.form.TextField;f.setAppearance("combo-box-text-field");f.setTabIndex(-1);this.add(f);var b=this._button=new qx.ui.basic.Atom(null,"widget/arrows/down.gif");b.setAppearance("combo-box-button");b.setTabIndex(-1);this.add(b);this.setTabIndex(1);this.setEditable(false);this.addEventListener(qx.constant.Event.MOUSEDOWN,this._onmousedown);this.addEventListener(qx.constant.Event.MOUSEUP,this._onmouseup);this.addEventListener(qx.constant.Event.MOUSEOVER,this._onmouseover);this.addEventListener(qx.constant.Event.MOUSEWHEEL,this._onmousewheel);this.addEventListener(qx.constant.Event.KEYDOWN,this._onkeydown);this.addEventListener(qx.constant.Event.KEYPRESS,this._onkeypress);this.addEventListener(qx.constant.Event.BEFOREDISAPPEAR,this._onbeforedisappear);this._popup.addEventListener(qx.constant.Event.APPEAR,this._onpopupappear,this);this._field.addEventListener(qx.constant.Event.INPUT,this._oninput,this);var vDoc=qx.ui.core.ClientDocument.getInstance();vDoc.addEventListener("windowblur",this._onwindowblur,this);vDoc.addEventListener("windowfocus",this._onwindowfocus,this);this.remapChildrenHandlingTo(l)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"combo-box"});qx.OO.addProperty({name:"editable",type:qx.constant.Type.BOOLEAN,getAlias:"isEditable"});qx.OO.addProperty({name:"selected",type:qx.constant.Type.OBJECT,instance:"qx.ui.form.ListItem"});qx.OO.addProperty({name:"value",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"pagingInterval",type:qx.constant.Type.NUMBER,defaultValue:10});qx.Proto.getManager=function(){return this._manager};qx.Proto.getPopup=function(){return this._popup};qx.Proto.getList=function(){return this._list};qx.Proto.getField=function(){return this._field};qx.Proto.getButton=function(){return this._button};qx.Proto._modifySelected=function(propValue,propOldValue,propData){this._fromSelected=true;if(!this._fromValue){this.setValue(propValue?propValue.getLabel():qx.constant.Core.EMPTY)};this._manager.setLeadItem(propValue);this._manager.setAnchorItem(propValue);if(propValue){this._manager.setSelectedItem(propValue)}else{this._manager.deselectAll()};delete this._fromSelected;return true};qx.Proto._modifyValue=function(propValue,propOldValue,propData){this._fromValue=true;if(!this._fromInput){if(this._field.getValue()==propValue){this._field.forceValue(null)};this._field.setValue(propValue)};if(!this._fromSelected){var vSelItem=this._list.findStringExact(propValue);if(vSelItem!=null&&!vSelItem.getEnabled()){vSelItem=null};this.setSelected(vSelItem)};delete this._fromValue;return true};qx.Proto._modifyEditable=function(propValue,propOldValue,propData){var f=this._field;f.setReadOnly(!propValue);f.setCursor(propValue?null:qx.constant.Core.DEFAULT);f.setSelectable(propValue);return true};qx.Proto._modifyEnabled=function(propValue,propOldValue,propData){if(this._button){this._button.setEnabled(propValue)};if(this._field){this._field.setEnabled(propValue)};return qx.ui.layout.HorizontalBoxLayout.prototype._modifyEnabled.call(this,propValue,propOldValue,propData)};qx.Proto._oldSelected=null;qx.Proto._openPopup=function(){var p=this._popup;var el=this.getElement();if(!p.isCreated()){this.createDispatchEvent("beforeInitialOpen")};if(this._list.getChildrenLength()==0){return};p.positionRelativeTo(el,1,qx.dom.DomDimension.getBoxHeight(el));p.setWidth(this.getBoxWidth()-2);p.setParent(this.getTopLevelWidget());p.show();this._oldSelected=this.getSelected();this.setCapture(true)};qx.Proto._closePopup=function(){this._popup.hide();this.setCapture(false)};qx.Proto._testClosePopup=function(){if(this._popup.isSeeable()){this._closePopup()}};qx.Proto._togglePopup=function(){this._popup.isSeeable()?this._closePopup():this._openPopup()};qx.Proto._onpopupappear=function(e){var vSelItem=this.getSelected();if(vSelItem){vSelItem.scrollIntoView()}};qx.Proto._oninput=function(e){this._fromInput=true;this.setValue(this._field.getComputedValue());if(this.getPopup().isSeeable()&&this.getSelected()){this.getSelected().scrollIntoView()};delete this._fromInput};qx.Proto._onbeforedisappear=function(e){this._testClosePopup()};qx.Proto._onmousedown=function(e){var vTarget=e.getTarget();switch(vTarget){case this._field:if(this.getEditable()){break};case this._button:this._button.addState(qx.ui.form.Button.STATE_PRESSED);this._togglePopup();break;case this:case this._list:break;default:if(vTarget instanceof qx.ui.form.ListItem&&vTarget.getParent()==this._list){this._list._onmousedown(e);this.setSelected(this._list.getSelectedItem());this._closePopup();this.setFocused(true)}else if(this._popup.isSeeable()){this._popup.hide();this.setCapture(false)}}};qx.Proto._onmouseup=function(e){switch(e.getTarget()){case this._field:if(this.getEditable()){break};default:this._button.removeState(qx.ui.form.Button.STATE_PRESSED);break}};qx.Proto._onmouseover=function(e){var vTarget=e.getTarget();if(vTarget instanceof qx.ui.form.ListItem){var vManager=this._manager;vManager.deselectAll();vManager.setLeadItem(vTarget);vManager.setAnchorItem(vTarget);vManager.setSelectedItem(vTarget)}};qx.Proto._onmousewheel=function(e){if(!this._popup.isSeeable()){var toSelect;var isSelected=this.getSelected();if(e.getWheelDelta()<0){toSelect=isSelected?this._manager.getNext(isSelected):this._manager.getFirst()}else{toSelect=isSelected?this._manager.getPrevious(isSelected):this._manager.getLast()};if(toSelect){this.setSelected(toSelect)}}};qx.Proto._onkeydown=function(e){var vManager=this._manager;var vKeyCode=e.getKeyCode();var vKeys=qx.event.type.KeyEvent.keys;var vVisible=this._popup.isSeeable();switch(vKeyCode){case vKeys.enter:if(vVisible){this.setSelected(this._manager.getSelectedItem());this._closePopup();this.setFocused(true)}else{this._openPopup()};return;case vKeys.esc:if(vVisible){vManager.setLeadItem(this._oldSelected);vManager.setAnchorItem(this._oldSelected);vManager.setSelectedItem(this._oldSelected);this._field.setValue(this._oldSelected?this._oldSelected.getLabel():qx.constant.Core.EMPTY);this._closePopup();this.setFocused(true)};return;case vKeys.pageup:if(!vVisible){var vPrevious;var vTemp=this.getSelected();if(vTemp){var vInterval=this.getPagingInterval();do{vPrevious=vTemp}while(--vInterval&&(vTemp=vManager.getPrevious(vPrevious)))}else{vPrevious=vManager.getLast()};this.setSelected(vPrevious);return};break;case vKeys.pagedown:if(!vVisible){var vNext;var vTemp=this.getSelected();if(vTemp){var vInterval=this.getPagingInterval();do{vNext=vTemp}while(--vInterval&&(vTemp=vManager.getNext(vNext)))}else{vNext=vManager.getFirst()};this.setSelected(vNext);return};break;case vKeys.down:if(e.getAltKey()){this._togglePopup();return};break};if(!this.isEditable()||vVisible){this._list._onkeydown(e);var vSelected=this._manager.getSelectedItem();if(!vVisible){this.setSelected(vSelected)}else if(vSelected){this._field.setValue(vSelected.getLabel())};return};switch(vKeyCode){case vKeys.pageup:case vKeys.pagedown:if(!this._popup.isCreated()){return};case vKeys.up:case vKeys.down:this._list._onkeydown(e);this.setSelected(this._manager.getSelectedItem());break}};qx.Proto._onkeypress=function(e){if(!this.isEditable()){this._list._onkeypress(e)}};qx.Proto._onwindowblur=qx.Proto._testClosePopup;qx.Proto._onwindowfocus=qx.Proto._testClosePopup;qx.Proto._visualizeBlur=function(){if(qx.sys.Client.getInstance().isMshtml()){if(this.getEnableElementFocus()&&!this.getFocusRoot().getFocusedChild()){try{if(this.getEditable()){this.getField().getElement().blur()}else{this.getElement().blur()}}catch(ex){}}}else{if(this.getEnableElementFocus()){try{if(this.getEditable()){this.getField().getElement().blur()}else if(!this.getFocusRoot().getFocusedChild()){this.getElement().blur()}}catch(ex){}}};this.removeState(qx.ui.core.Widget.STATE_FOCUSED);return true};qx.Proto._visualizeFocus=function(){if(!qx.event.handler.FocusHandler.mouseFocus&&this.getEnableElementFocus()){try{if(this.getEditable()){this.getField().getElement().focus();this.getField()._ontabfocus()}else{this.getElement().focus()}}catch(ex){}};this.addState(qx.ui.core.Widget.STATE_FOCUSED);return true};qx.Proto.dispose=function(){if(this.getDisposed()){return};this.removeEventListener(qx.constant.Event.MOUSEDOWN,this._onmousedown);this.removeEventListener(qx.constant.Event.MOUSEUP,this._onmouseup);this.removeEventListener(qx.constant.Event.MOUSEOVER,this._onmouseover);this.removeEventListener(qx.constant.Event.MOUSEWHEEL,this._onmousewheel);this.removeEventListener(qx.constant.Event.KEYDOWN,this._onkeydown);this.removeEventListener(qx.constant.Event.KEYPRESS,this._onkeypress);var vDoc=qx.ui.core.ClientDocument.getInstance();vDoc.removeEventListener("windowblur",this._onwindowblur,this);vDoc.removeEventListener("windowfocus",this._onwindowfocus,this);if(this._list){this._list.dispose();this._list=null};if(this._manager){this._manager.dispose();this._manager=null};if(this._popup){this._popup.removeEventListener(qx.constant.Event.APPEAR,this._onpopupappear,this);this._popup.dispose();this._popup=null};if(this._field){this._field.removeEventListener(qx.constant.Event.INPUT,this._oninput,this);this._field.dispose();this._field=null};if(this._button){this._button.dispose();this._button=null};return qx.ui.layout.HorizontalBoxLayout.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.form.List",qx.ui.layout.VerticalBoxLayout,function(){qx.ui.layout.VerticalBoxLayout.call(this);this._manager=new qx.manager.selection.SelectionManager(this);this.setSelectable(false);this.setTabIndex(1);this.addEventListener(qx.constant.Event.MOUSEOVER,this._onmouseover);this.addEventListener(qx.constant.Event.MOUSEDOWN,this._onmousedown);this.addEventListener(qx.constant.Event.MOUSEUP,this._onmouseup);this.addEventListener(qx.constant.Event.CLICK,this._onclick);this.addEventListener(qx.constant.Event.DBLCLICK,this._ondblclick);this.addEventListener(qx.constant.Event.KEYDOWN,this._onkeydown);this.addEventListener(qx.constant.Event.KEYPRESS,this._onkeypress)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"list"});qx.OO.addProperty({name:"enableInlineFind",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.OO.addProperty({name:"markLeadingItem",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.Proto._pressedString=qx.constant.Core.EMPTY;qx.Proto.getManager=function(){return this._manager};qx.Proto.getListItemTarget=function(vItem){while(vItem!=null&&vItem.getParent()!=this){vItem=vItem.getParent()};return vItem};qx.Proto.getSelectedItem=function(){return this.getSelectedItems()[0]};qx.Proto.getSelectedItems=function(){return this._manager.getSelectedItems()};qx.Proto._onmouseover=function(e){var vItem=this.getListItemTarget(e.getTarget());if(vItem){this._manager.handleMouseOver(vItem,e)}};qx.Proto._onmousedown=function(e){var vItem=this.getListItemTarget(e.getTarget());if(vItem){this._manager.handleMouseDown(vItem,e)}};qx.Proto._onmouseup=function(e){var vItem=this.getListItemTarget(e.getTarget());if(vItem){this._manager.handleMouseUp(vItem,e)}};qx.Proto._onclick=function(e){var vItem=this.getListItemTarget(e.getTarget());if(vItem){this._manager.handleClick(vItem,e)}};qx.Proto._ondblclick=function(e){var vItem=this.getListItemTarget(e.getTarget());if(vItem){this._manager.handleDblClick(vItem,e)}};qx.Proto._onkeydown=function(e){var kc=e.getKeyCode();if(kc==qx.event.type.KeyEvent.keys.enter&&!e.getAltKey()){var items=this.getSelectedItems();var currentItem;for(var i=0;i<items.length;i++){items[i].createDispatchEvent("action")}}else{this._manager.handleKeyDown(e)}};qx.Proto._lastKeyPress=0;qx.Proto._onkeypress=function(e){if(!this.getEnableInlineFind()){return};if(((new Date).valueOf()-this._lastKeyPress)>1000){this._pressedString=qx.constant.Core.EMPTY};this._pressedString+=String.fromCharCode(e.getKeyCode());var matchedItem=this.findString(this._pressedString,null);if(matchedItem){var oldVal=this._manager._getChangeValue();var oldFireChange=this._manager.getFireChange();this._manager.setFireChange(false);this._manager._deselectAll();this._manager.setItemSelected(matchedItem,true);this._manager.setAnchorItem(matchedItem);this._manager.setLeadItem(matchedItem);matchedItem.scrollIntoView();this._manager.setFireChange(oldFireChange);if(oldFireChange&&this._manager._hasChanged(oldVal)){this._manager._dispatchChange()}};this._lastKeyPress=(new Date).valueOf();e.preventDefault()};qx.Proto._findItem=function(vUserValue,vStartIndex,vType){var vAllItems=this.getChildren();if(vStartIndex==null){vStartIndex=vAllItems.indexOf(this.getSelectedItem());if(vStartIndex==-1){vStartIndex=0}};var methodName="matches"+vType;for(var i=vStartIndex;i<vAllItems.length;i++){if(vAllItems[i][methodName](vUserValue)){return vAllItems[i]}};for(var i=0;i<vStartIndex;i++){if(vAllItems[i][methodName](vUserValue)){return vAllItems[i]}};return null};qx.Proto.findString=function(vText,vStartIndex){return this._findItem(vText,vStartIndex||0,"String")};qx.Proto.findStringExact=function(vText,vStartIndex){return this._findItem(vText,vStartIndex||0,"StringExact")};qx.Proto.findValue=function(vText,vStartIndex){return this._findItem(vText,vStartIndex||0,"Value")};qx.Proto.findValueExact=function(vText,vStartIndex){return this._findItem(vText,vStartIndex||0,"ValueExact")};qx.Proto._sortItemsCompare=function(a,b){return a.key<b.key?-1:a.key==b.key?0:1};qx.Proto.sortItemsByString=function(vReverse){var sortitems=[];var items=this.getChildren();for(var i=0,l=items.length;i<l;i++){sortitems[i]={key:items[i].getLabel(),item:items[i]}};sortitems.sort(this._sortItemsCompare);if(vReverse){sortitems.reverse()};for(var i=0;i<l;i++){this.addAt(sortitems[i].item,i)}};qx.Proto.sortItemsByValue=function(vReverse){var sortitems=[];var items=this.getChildren();for(var i=0,l=items.length;i<l;i++){sortitems[i]={key:items[i].getValue(),item:items[i]}};sortitems.sort(this._sortItemsCompare);if(vReverse){sortitems.reverse()};for(var i=0;i<l;i++){this.addAt(sortitems[i].item,i)}};qx.Proto.dispose=function(){if(this.getDisposed()){return};if(this._manager){this._manager.dispose();this._manager=null};this.removeEventListener(qx.constant.Event.MOUSEOVER,this._onmouseover);this.removeEventListener(qx.constant.Event.MOUSEDOWN,this._onmousedown);this.removeEventListener(qx.constant.Event.MOUSEUP,this._onmouseup);this.removeEventListener(qx.constant.Event.CLICK,this._onclick);this.removeEventListener(qx.constant.Event.DBLCLICK,this._ondblclick);this.removeEventListener(qx.constant.Event.KEYDOWN,this._onkeydown);this.removeEventListener(qx.constant.Event.KEYPRESS,this._onkeypress);return qx.ui.layout.VerticalBoxLayout.prototype.dispose.call(this)};qx.OO.defineClass("qx.dev.TimeTracker",qx.core.Object,function(){qx.core.Object.call(this);this._functions=qx.lang.Array.fromArguments(arguments);this.buttonSets()});qx.dev.TimeTracker.compare=function(a,b){return a-b};qx.Proto.buttonSets=function(){var btnLayout=new qx.ui.layout.HorizontalBoxLayout;btnLayout.setLocation(20,48);btnLayout.setSpacing(5);var loopLabel=new qx.ui.basic.Atom("Method Loops: ");loopLabel.setAllowStretchY(false);loopLabel.setVerticalAlign("middle");var loopInput=new qx.ui.form.TextField("100");loopInput.setAllowStretchY(false);loopInput.setWidth(50);loopInput.setVerticalAlign("middle");var repeatLabel=new qx.ui.basic.Atom("Repeat Number: ");repeatLabel.setAllowStretchY(false);repeatLabel.setVerticalAlign("middle");repeatLabel.setMarginLeft(30);var btnStart1=new qx.ui.form.Button("Start 3x","icon/16/button-ok.png");var btnStart2=new qx.ui.form.Button("Start 7x","icon/16/button-ok.png");var btnStart3=new qx.ui.form.Button("Start 15x","icon/16/button-ok.png");var btnStart4=new qx.ui.form.Button("Start 25x","icon/16/button-ok.png");btnStart1.addEventListener("execute",function(){this.start(3,parseInt(loopInput.getValue()))},this);btnStart2.addEventListener("execute",function(){this.start(7,parseInt(loopInput.getValue()))},this);btnStart3.addEventListener("execute",function(){this.start(15,parseInt(loopInput.getValue()))},this);btnStart4.addEventListener("execute",function(){this.start(25,parseInt(loopInput.getValue()))},this);var htmlOutput=this._output=new qx.ui.embed.HtmlEmbed();htmlOutput.setHtml("");htmlOutput.setLocation(20,78);htmlOutput.setRight(335);htmlOutput.setBottom(48);htmlOutput.setBorder("1px solid black");htmlOutput.setBackgroundColor("white");htmlOutput.setPadding(10);htmlOutput.setOverflow("auto");htmlOutput.addToDocument();btnLayout.add(loopLabel,loopInput,repeatLabel,btnStart1,btnStart2,btnStart3,btnStart4);btnLayout.addToDocument()};qx.Proto.start=function(vRounds,vLoops){var vFuncs=this._functions;var vLength=vFuncs.length;var vStart;var vLocalTimes;var vAllTimes=[];var vHtmlMeasured=[];var vHtmlResults=[];var vCellWidth=Math.round(100/(vLength+1))+"%";vHtmlMeasured.push("<h3>Measured Values</h3>");vHtmlMeasured.push("<style type='text/css'>.output{border: 1px solid black; width:100%; margin-bottom: 20px } .output thead{ font-weight: bold; } .output td, .output th{ text-align:left; width: "+vCellWidth+"; } .output td{padding:4px}</style>");vHtmlMeasured.push("<table class='output'>");vHtmlMeasured.push("<thead>");vHtmlMeasured.push("<tr><td>&#160;</td>");for(var j=0;j<vLength;j++){vHtmlMeasured.push("<td>Method "+(j+1)+"</td>")};vHtmlMeasured.push("</thead><tbody>");for(var i=0;i<vRounds;i++){vLocalTimes=[];for(var j=0;j<vLength;j++){vStart=(new Date).valueOf();vFuncs[j](vLoops);vLocalTimes.push((new Date).valueOf()-vStart)};vHtmlMeasured.push("<tr><th>Round "+i+"</th>");for(var j=0;j<vLocalTimes.length;j++){vHtmlMeasured.push("<td>"+vLocalTimes[j]+"</td>")};vHtmlMeasured.push("</tr>");vAllTimes.push(vLocalTimes)};vHtmlMeasured.push("</tbody></table>");var vSum,vMeanValue,vMeanAll=[],vMeanMin=1e7,vMeanMax=0;for(var j=0;j<vLength;j++){vSum=0;for(var i=0;i<vRounds;i++){vSum+=vAllTimes[i][j]};vMeanValue=Math.round(vSum/vRounds);vMeanAll.push(vMeanValue);vMeanMin=Math.min(vMeanMin,vMeanValue);vMeanMax=Math.max(vMeanMax,vMeanValue)};var vMedian,vMedianValue,vMedianAll=[],vMedianMin=1e7,vMedianMax=0;for(var j=0;j<vLength;j++){vMedian=[];for(var i=0;i<vRounds;i++){vMedian.push(vAllTimes[i][j])};vMedian.sort(qx.dev.TimeTracker.compare);vMedianValue=vMedian[Math.floor(vRounds/2)].toString();vMedianAll.push(vMedianValue);vMedianMin=Math.min(vMedianValue,vMedianMin);vMedianMax=Math.max(vMedianValue,vMedianMax)};vHtmlResults.push("<h3>Results Summary</h3>");vHtmlResults.push("<table class='output'>");vHtmlResults.push("<thead>");vHtmlResults.push("<tr><td>&#160;</td>");for(var j=0;j<vLength;j++){vHtmlResults.push("<td>Method "+(j+1)+"</td>")};vHtmlResults.push("</thead><tbody>");vHtmlResults.push("<tr>");vHtmlResults.push("<th>Median</th>");for(var j=0;j<vLength;j++){vHtmlResults.push("<td>"+vMedianAll[j]+"</td>")};vHtmlResults.push("</tr>");vHtmlResults.push("<tr>");vHtmlResults.push("<th>Median Factor</th>");for(var j=0;j<vLength;j++){vHtmlResults.push("<td>");vHtmlResults.push(vMedianMin>0?Math.round(vMedianAll[j]/vMedianMin):"1");vHtmlResults.push("x</td>")};vHtmlResults.push("</tr>");vHtmlResults.push("<tr>");vHtmlResults.push("<th>Mean</th>");for(var j=0;j<vLength;j++){vHtmlResults.push("<td>"+vMeanAll[j]+"</td>")};vHtmlResults.push("</tr>");vHtmlResults.push("<tr>");vHtmlResults.push("<th>Mean Factor</th>");for(var j=0;j<vLength;j++){vHtmlResults.push("<td>");vHtmlResults.push(vMeanMin>0?Math.round(vMeanAll[j]/vMeanMin):1);vHtmlResults.push("x</td>")};vHtmlResults.push("</tr>");vHtmlResults.push("<tr>");vHtmlResults.push("<th>Winner</th>");for(var j=0;j<vLength;j++){vHtmlResults.push("<td>");if(vMedianMin==vMedianAll[j]&&vMeanMin==vMeanAll[j]){vHtmlResults.push("BOTH")}else if(vMedianMin==vMedianAll[j]){vHtmlResults.push("MEDIAN")}else if(vMeanMin==vMeanAll[j]){vHtmlResults.push("MEAN")};vHtmlResults.push("</td>")};vHtmlResults.push("</tr>");vHtmlResults.push("</tbody></table>");this._output.setHtml(vHtmlResults.join("")+vHtmlMeasured.join(""))};qx.Proto.dispose=function(){if(this.getDisposed()){return};this._functions=null;return qx.core.Object.prototype.dispose.call(this)};qx.OO.defineClass("qx.type.StringBuilder",qx.core.Object,function(vStr){qx.core.Object.call(this);this.init(vStr)});if(qx.sys.Client.getInstance().isMshtml()){qx.Proto.clear=function(){this._array=[]};qx.Proto.get=function(){return this._array.join(qx.constant.Core.EMPTY)};qx.Proto.add=function(vStr){this._array.push(vStr)};qx.Proto.init=function(vStr){vStr!==qx.constant.Core.EMPTY?this._array=[vStr]:this._array=[]};qx.Proto.dispose=function(){if(this.getDisposed()){return};this._array=null;qx.core.Object.prototype.dispose.call(this)}}else{qx.Proto.clear=function(){this._string=qx.constant.Core.EMPTY};qx.Proto.get=function(){return this._string};qx.Proto.add=function(vStr){this._string+=vStr};qx.Proto.init=function(vStr){this._string=vStr||qx.constant.Core.EMPTY};qx.Proto.dispose=function(){if(this.getDisposed()){return};this._string=null;qx.core.Object.prototype.dispose.call(this)}};qx.Proto.toString=qx.Proto.get;qx.OO.defineClass("qx.ui.table.RemoteTableModel",qx.ui.table.AbstractTableModel,function(){qx.ui.table.AbstractTableModel.call(this);this._sortColumnIndex=-1;this._sortAscending=true;this._rowCount=-1;this._lruCounter=0;this._firstLoadingBlock=-1;this._firstRowToLoad=-1;this._lastRowToLoad=-1;this._ignoreCurrentRequest=false;this._rowBlockCache={};this._rowBlockCount=0});qx.OO.addProperty({name:"blockSize",type:qx.constant.Type.NUMBER,defaultValue:50,allowNull:false});qx.OO.addProperty({name:"maxCachedBlockCount",type:qx.constant.Type.NUMBER,defaultValue:15,allowNull:false});qx.Proto.getRowCount=function(){if(this._rowCount==-1){this._loadRowCount();return (this._rowCount==-1)?0:this._rowCount}else{return this._rowCount}};qx.Proto._loadRowCount=function(){throw new Error("_loadRowCount is abstract")};qx.Proto._onRowCountLoaded=function(rowCount){this.debug("row count loaded: "+rowCount);if(rowCount==null){rowCount=0};this._rowCount=rowCount;var data={firstRow:0,lastRow:rowCount-1,firstColumn:0,lastColumn:this.getColumnCount()-1};this.dispatchEvent(new qx.event.type.DataEvent(qx.ui.table.TableModel.EVENT_TYPE_DATA_CHANGED,data),true)};qx.Proto.reloadData=function(){this.clearCache();if(this._firstLoadingBlock!=-1){this._ignoreCurrentRequest=true};this._loadRowCount()};qx.Proto.clearCache=function(){this._rowBlockCache={};this._rowBlockCount=0};qx.Proto.prefetchRows=function(firstRowIndex,lastRowIndex){if(this._firstLoadingBlock==-1){var blockSize=this.getBlockSize();var totalBlockCount=Math.ceil(this._rowCount/blockSize);var firstBlock=parseInt(firstRowIndex/blockSize)-1;if(firstBlock<0){firstBlock=0};var lastBlock=parseInt(lastRowIndex/blockSize)+1;if(lastBlock>=totalBlockCount){lastBlock=totalBlockCount-1};var firstBlockToLoad=-1;var lastBlockToLoad=-1;for(var block=firstBlock;block<=lastBlock;block++){if(this._rowBlockCache[block]==null){if(firstBlockToLoad==-1){firstBlockToLoad=block};lastBlockToLoad=block}};if(firstBlockToLoad!=-1){this._firstRowToLoad=-1;this._lastRowToLoad=-1;this._firstLoadingBlock=firstBlockToLoad;this.debug("Starting server request. rows: "+firstRowIndex+".."+lastRowIndex+", blocks: "+firstBlockToLoad+".."+lastBlockToLoad);this._loadRowData(firstBlockToLoad*blockSize,(lastBlockToLoad+1)*blockSize-1)}}else{this._firstRowToLoad=firstRowIndex;this._lastRowToLoad=lastRowIndex}};qx.Proto._loadRowData=function(firstRow,lastRow){throw new Error("_loadRowCount is abstract")};qx.Proto._onRowDataLoaded=function(rowDataArr){if(rowDataArr!=null&&!this._ignoreCurrentRequest){var blockSize=this.getBlockSize();var blockCount=Math.ceil(rowDataArr.length/blockSize);if(blockCount==1){this._setRowBlockData(this._firstLoadingBlock,rowDataArr)}else{for(var i=0;i<blockCount;i++){var rowOffset=i*blockSize;var blockRowData=[];var mailCount=Math.min(blockSize,rowDataArr.length-rowOffset);for(var row=0;row<mailCount;row++){blockRowData.push(rowDataArr[rowOffset+row])};this._setRowBlockData(this._firstLoadingBlock+i,blockRowData)}};this.debug("Got server answer. blocks: "+this._firstLoadingBlock+".."+(this._firstLoadingBlock+blockCount-1)+". mail count: "+rowDataArr.length+" block count:"+blockCount);var data={firstRow:this._firstLoadingBlock*blockSize,lastRow:(this._firstLoadingBlock+blockCount+1)*blockSize-1,firstColumn:0,lastColumn:this.getColumnCount()-1};this.dispatchEvent(new qx.event.type.DataEvent(qx.ui.table.TableModel.EVENT_TYPE_DATA_CHANGED,data),true)};this._firstLoadingBlock=-1;this._ignoreCurrentRequest=false;if(this._firstRowToLoad!=-1){this.prefetchRows(this._firstRowToLoad,this._lastRowToLoad)}};qx.Proto._setRowBlockData=function(block,rowDataArr){if(this._rowBlockCache[block]==null){this._rowBlockCount++;while(this._rowBlockCount>this.getMaxCachedBlockCount()){var lruBlock;var minLru=this._lruCounter;for(var currBlock in this._rowBlockCache){var currLru=this._rowBlockCache[currBlock].lru;if(currLru<minLru&&currBlock>1){minLru=currLru;lruBlock=currBlock}};this.debug("Removing block: "+lruBlock+". current LRU: "+this._lruCounter);delete this._rowBlockCache[lruBlock];this._rowBlockCount--}};this._rowBlockCache[block]={lru:++this._lruCounter,rowDataArr:rowDataArr}};qx.Proto.getRowData=function(rowIndex){var blockSize=this.getBlockSize();var block=parseInt(rowIndex/blockSize);var blockData=this._rowBlockCache[block];if(blockData==null){return null}else{var rowData=blockData.rowDataArr[rowIndex-(block*blockSize)];if(blockData.lru!=this._lruCounter){blockData.lru=++this._lruCounter};return rowData}};qx.Proto.getValue=function(columnIndex,rowIndex){var rowData=this.getRowData(rowIndex);if(rowData==null){return null}else{var columnId=this.getColumnId(columnIndex);return rowData[columnId]}};qx.Proto.setColumnSortable=function(columnIndex,sortable){if(sortable!=this.isColumnSortable(columnIndex)){if(this._sortableColArr==null){this._sortableColArr=[]};this._sortableColArr[columnIndex]=sortable;this.createDispatchEvent(qx.ui.table.TableModel.EVENT_TYPE_META_DATA_CHANGED)}};qx.Proto.isColumnSortable=function(columnIndex){return this._sortableColArr?(this._sortableColArr[columnIndex]==true):false};qx.Proto.sortByColumn=function(columnIndex,ascending){if(this._sortColumnIndex!=columnIndex||this._sortAscending!=ascending){this._sortColumnIndex=columnIndex;this._sortAscending=ascending;this.clearCache();this.createDispatchEvent(qx.ui.table.TableModel.EVENT_TYPE_META_DATA_CHANGED)}};qx.Proto.getSortColumnIndex=function(){return this._sortColumnIndex};qx.Proto.isSortAscending=function(){return this._sortAscending};qx.OO.defineClass("qx.ui.pageview.tabview.TabView",qx.ui.pageview.AbstractPageView,function(){qx.ui.pageview.AbstractPageView.call(this,qx.ui.pageview.tabview.TabViewBar,qx.ui.pageview.tabview.TabViewPane)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"tab-view"});qx.OO.addProperty({name:"alignTabsToLeft",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.OO.addProperty({name:"placeBarOnTop",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.Proto._modifyAlignTabsToLeft=function(propValue,propOldValue,propData){var vBar=this._bar;vBar.setHorizontalChildrenAlign(propValue?qx.constant.Layout.ALIGN_LEFT:qx.constant.Layout.ALIGN_RIGHT);vBar._addChildrenToStateQueue();return true};qx.Proto._modifyPlaceBarOnTop=function(propValue,propOldValue,propData){var vBar=this._bar;if(propValue){vBar.moveSelfToBegin()}else{vBar.moveSelfToEnd()};vBar._addChildrenToStateQueue();return true};qx.OO.defineClass("qx.ui.pageview.tabview.TabViewPane",qx.ui.pageview.AbstractPageViewPane,function(){qx.ui.pageview.AbstractPageViewPane.call(this);this.setZIndex(1)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"tab-view-pane"});qx.OO.defineClass("qx.ui.menu.MenuBarButton",qx.ui.toolbar.ToolBarMenuButton,function(vText,vMenu,vIcon,vIconWidth,vIconHeight,vFlash){qx.ui.toolbar.ToolBarMenuButton.call(this,vText,vMenu,vIcon,vIconWidth,vIconHeight,vFlash)});qx.OO.defineClass("qx.dev.log.DivAppender",qx.dev.log.Appender,function(divId){qx.dev.log.Appender.call(this);this._divId=divId?divId:"log"});qx.OO.addProperty({name:"maxMessages",type:qx.constant.Type.NUMBER,defaultValue:500});qx.OO.changeProperty({name:"useLongFormat",type:qx.constant.Type.BOOLEAN,defaultValue:false,allowNull:false});qx.OO.addProperty({name:"headClassName",type:qx.constant.Type.STRING,defaultValue:"log-head"});qx.OO.addProperty({name:"bodyClassName",type:qx.constant.Type.STRING,defaultValue:"log-body"});qx.OO.addProperty({name:"groupClassName",type:qx.constant.Type.STRING,defaultValue:"log-group"});qx.OO.addProperty({name:"debugClassName",type:qx.constant.Type.STRING,defaultValue:"log-debug"});qx.OO.addProperty({name:"infoClassName",type:qx.constant.Type.STRING,defaultValue:"log-info"});qx.OO.addProperty({name:"warnClassName",type:qx.constant.Type.STRING,defaultValue:"log-warn"});qx.OO.addProperty({name:"errorClassName",type:qx.constant.Type.STRING,defaultValue:"log-error"});qx.Proto._createClearButtonHandler=function(logElem){return function(evt){logElem.innerHTML=""}};qx.Proto.appendLogEvent=function(evt){var Logger=qx.dev.log.Logger;if(this._logElem==null){var divElem=document.getElementById(this._divId);if(divElem==null){throw new Error("Logging div with ID "+this._divId+" not found")};divElem.innerHTML='<div class="'+this.getHeadClassName()+'"><button>Clear</button></div>'+'<div class="'+this.getBodyClassName()+'"></div>';this._clearBt=divElem.firstChild.firstChild;this._logElem=divElem.lastChild;this._clearBt.onclick=this._createClearButtonHandler(this._logElem)};var group=evt.logger.getName();if(evt.instanceId!=null){group+="["+evt.instanceId+"]"};if(group!=this._lastGroup){var elem=document.createElement(qx.constant.Tags.DIV);elem.className=this.getGroupClassName();elem.innerHTML=group;this._logElem.appendChild(elem);this._lastGroup=group};var elem=document.createElement("div");switch(evt.level){case Logger.LEVEL_DEBUG:elem.className=this.getDebugClassName();break;case Logger.LEVEL_INFO:elem.className=this.getInfoClassName();break;case Logger.LEVEL_WARN:elem.className=this.getWarnClassName();break;case Logger.LEVEL_ERROR:elem.className=this.getErrorClassName();break};elem.innerHTML=this.formatLogEvent(evt).replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/  /g," &#160;").replace(/[\n]/g,"<br>");this._logElem.appendChild(elem);while(this._logElem.childNodes.length>this.getMaxMessages()){this._logElem.removeChild(this._logElem.firstChild);if(this._removedMessageCount==null){this._removedMessageCount=1}else{this._removedMessageCount++}};if(this._removedMessageCount!=null){this._logElem.firstChild.className="";this._logElem.firstChild.innerHTML="("+this._removedMessageCount+" messages removed)"}};qx.Proto.dispose=function(){if(this.getDisposed()){return true};if(this._clearBt){this._clearBt.onclick=null;this._clearBt=null};this._logElem=null;return qx.dev.log.Appender.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.embed.TextEmbed",qx.ui.basic.Terminator,function(vText){qx.ui.basic.Terminator.call(this);if(qx.util.Validation.isValidString(vText)){this.setText(vText)}});qx.OO.addProperty({name:"text",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"font",type:qx.constant.Type.OBJECT,instance:"qx.renderer.font.Font",convert:qx.renderer.font.FontCache,allowMultipleArguments:true});qx.OO.addProperty({name:"wrap",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.OO.addProperty({name:"textAlign",type:qx.constant.Type.STRING,defaultValue:"left",possibleValues:["left","center","right","justify"],allowNull:false});qx.Proto._modifyText=function(){if(this._isCreated){this._syncText()};return true};qx.Proto._modifyFont=function(propValue,propOldValue,propData){if(propValue){propValue._applyWidget(this)}else if(propOldValue){propOldValue._resetWidget(this)};return true};qx.Proto._modifyWrap=function(propValue,propOldValue,propData){this.setStyleProperty(qx.constant.Style.PROPERTY_WHITESPACE,propValue?"normal":"nowrap");return true};qx.Proto._modifyTextAlign=function(propValue,propOldValue,propData){this.setStyleProperty("textAlign",propValue);return true};qx.Proto._applyElementData=function(){this.getElement().appendChild(document.createTextNode(this.getText()))};qx.Proto._syncText=function(){this.getElement().firstChild.nodeValue=this.getText()};qx.OO.defineClass("qx.util.Textile");qx.util.Textile.textilize=function(s){var r=s;var qtags=[["\\*","strong"],["\\?\\?","cite"],["\\+","ins"],["~","sub"],["\\^","sup"],["@","code"]];var ttag,htag,re,line,lines,nr,changed,inlist,listtype;for(var i=0;i<qtags.length;i++){ttag=qtags[i][0];htag=qtags[i][1];re=new RegExp(ttag+"\\b(.+?)\\b"+ttag,"g");r=r.replace(re,"<"+htag+">"+"$1"+"</"+htag+">")};re=new RegExp("\\b_(.+?)_\\b","g");r=r.replace(re,"<em>$1</em>");re=new RegExp("[\s\n]-(.+?)-[\s\n]","g");r=r.replace(re,"<del>$1</del>");re=new RegExp('"\\b(.+?)\\(\\b(.+?)\\b\\)":([^\\s]+)','g');r=r.replace(re,'<a href="$3" title="$2">$1</a>');re=new RegExp('"\\b(.+?)\\b":([^\\s]+)','g');r=r.replace(re,'<a href="$2">$1</a>');re=new RegExp("!\\b(.+?)\\(\\b(.+?)\\b\\)!","g");r=r.replace(re,'<img src="$1" alt="$2">');re=new RegExp("!\\b(.+?)\\b!","g");r=r.replace(re,'<img src="$1">');re=new RegExp("(.*)\n([^#\*\n].*)","g");r=r.replace(re,"$1<br />$2");re=new RegExp("\n<br />","g");r=r.replace(re,"\n");lines=r.split("\n");nr=qx.constant.Core.EMPTY;for(var i=0;i<lines.length;i++){line=lines[i].replace(/\s*$/,qx.constant.Core.EMPTY);changed=0;if(line.search(/^\s*bq\.\s+/)!=-1){line=line.replace(/^\s*bq\.\s+/,"\t<blockquote>")+"</blockquote>";changed=1};if(line.search(/^\s*h[1-6]\.\s+/)!=-1){re=new RegExp("h([1-6])\.(.+)","g");line=line.replace(re,"<h$1>$2</h$1>");changed=1};if(line.search(/^\s*\*\s+/)!=-1){line=line.replace(/^\s*\*\s+/,"\t<liu>")+"</liu>";changed=1};if(line.search(/^\s*#\s+/)!=-1){line=line.replace(/^\s*#\s+/,"\t<lio>")+"</lio>";changed=1};if(!changed&&(line.replace(/\s/g,qx.constant.Core.EMPTY).length>0)){line="<p>"+line+"</p>"};lines[i]=line+"\n"};inlist=0;listtype=qx.constant.Core.EMPTY;for(var i=0;i<lines.length;i++){line=lines[i];if(inlist&&listtype=="ul"&&!line.match(/^\t<liu/)){line="</ul>\n"+line;inlist=0};if(inlist&&listtype=="ol"&&!line.match(/^\t<lio/)){line="</ol>\n"+line;inlist=0};if(!inlist&&line.match(/^\t<liu/)){line="<ul>"+line;inlist=1;listtype="ul"};if(!inlist&&line.match(/^\t<lio/)){line="<ol>"+line;inlist=1;listtype="ol"};lines[i]=line};r=lines.join("\n");r=r.replace(/li[o|u]>/g,"li>");return r};qx.OO.defineClass("qx.ui.table.SimpleTableModel",qx.ui.table.AbstractTableModel,function(){qx.ui.table.AbstractTableModel.call(this);this._rowArr=[];this._sortColumnIndex=-1;this._sortAscending;this._editableColArr=null});qx.Proto.getRowData=function(rowIndex){return this._rowArr[rowIndex]};qx.Proto.getRowDataAsMap=function(rowIndex){var columnArr=this._rowArr[rowIndex];var map={};for(var col=0;col<this.getColumnCount();col++){map[this.getColumnId(col)]=columnArr[col]};return map};qx.Proto.setEditable=function(editable){this._editableColArr=[];for(var col=0;col<this.getColumnCount();col++){this._editableColArr[col]=editable};this.createDispatchEvent(qx.ui.table.TableModel.EVENT_TYPE_META_DATA_CHANGED)};qx.Proto.setColumnEditable=function(columnIndex,editable){if(editable!=this.isColumnEditable(columnIndex)){if(this._editableColArr==null){this._editableColArr=[]};this._editableColArr[columnIndex]=editable;this.createDispatchEvent(qx.ui.table.TableModel.EVENT_TYPE_META_DATA_CHANGED)}};qx.Proto.isColumnEditable=function(columnIndex){return this._editableColArr?(this._editableColArr[columnIndex]==true):false};qx.Proto.isColumnSortable=function(columnIndex){return true};qx.Proto.sortByColumn=function(columnIndex,ascending){var comperator;if(ascending){comperator=function(row1,row2){var obj1=row1[columnIndex];var obj2=row2[columnIndex];return (obj1>obj2)?1:((obj1==obj2)?0:-1)}}else{comperator=function(row1,row2){var obj1=row1[columnIndex];var obj2=row2[columnIndex];return (obj1<obj2)?1:((obj1==obj2)?0:-1)}};this._rowArr.sort(comperator);this._sortColumnIndex=columnIndex;this._sortAscending=ascending;this.createDispatchEvent(qx.ui.table.TableModel.EVENT_TYPE_META_DATA_CHANGED)};qx.Proto._clearSorting=function(){if(this._sortColumnIndex!=-1){this._sortColumnIndex=-1;this._sortAscending=true;this.createDispatchEvent(qx.ui.table.TableModel.EVENT_TYPE_META_DATA_CHANGED)}};qx.Proto.getSortColumnIndex=function(){return this._sortColumnIndex};qx.Proto.isSortAscending=function(){return this._sortAscending};qx.Proto.getRowCount=function(){return this._rowArr.length};qx.Proto.getValue=function(columnIndex,rowIndex){if(rowIndex<0||rowIndex>=this._rowArr.length){throw "this._rowArr out of bounds: "+this._rowArr+" (0.."+this._rowArr.length+")"};return this._rowArr[rowIndex][columnIndex]};qx.Proto.setValue=function(columnIndex,rowIndex,value){if(this._rowArr[rowIndex][columnIndex]!=value){this._rowArr[rowIndex][columnIndex]=value;if(this.hasEventListeners(qx.ui.table.TableModel.EVENT_TYPE_DATA_CHANGED)){var data={firstRow:rowIndex,lastRow:rowIndex,firstColumn:columnIndex,lastColumn:columnIndex};this.dispatchEvent(new qx.event.type.DataEvent(qx.ui.table.TableModel.EVENT_TYPE_DATA_CHANGED,data),true)};if(columnIndex==this._sortColumnIndex){this._clearSorting()}}};qx.Proto.setData=function(rowArr){this._rowArr=rowArr;if(this.hasEventListeners(qx.ui.table.TableModel.EVENT_TYPE_DATA_CHANGED)){this.createDispatchEvent(qx.ui.table.TableModel.EVENT_TYPE_DATA_CHANGED)};this._clearSorting()};qx.Proto.getData=function(){return this._rowArr};qx.Proto.setDataAsMapArray=function(mapArr){this.setData(this._mapArray2RowArr(mapArr))};qx.Proto.addRows=function(rowArr,startIndex){if(startIndex==null){startIndex=this._rowArr.length};rowArr.splice(0,0,startIndex,0);Array.prototype.splice.apply(this._rowArr,rowArr);if(this.hasEventListeners(qx.ui.table.TableModel.EVENT_TYPE_DATA_CHANGED)){var data={firstRow:startIndex,lastRow:this._rowArr.length-1,firstColumn:0,lastColumn:this.getColumnCount()-1};this.dispatchEvent(new qx.event.type.DataEvent(qx.ui.table.TableModel.EVENT_TYPE_DATA_CHANGED,data),true)};this._clearSorting()};qx.Proto.addRowsAsMapArray=function(mapArr,startIndex){this.addRows(this._mapArray2RowArr(mapArr),startIndex)};qx.Proto.removeRows=function(startIndex,howMany){this._rowArr.splice(startIndex,howMany);if(this.hasEventListeners(qx.ui.table.TableModel.EVENT_TYPE_DATA_CHANGED)){var data={firstRow:startIndex,lastRow:this._rowArr.length-1,firstColumn:0,lastColumn:this.getColumnCount()-1};this.dispatchEvent(new qx.event.type.DataEvent(qx.ui.table.TableModel.EVENT_TYPE_DATA_CHANGED,data),true)};this._clearSorting()};qx.Proto._mapArray2RowArr=function(mapArr){var rowCount=mapArr.length;var columnCount=this.getColumnCount();var dataArr=new Array(rowCount);var columnArr;var j;for(var i=0;i<rowCount;++i){columnArr=new Array(columnCount);for(var j=0;j<columnCount;++j){columnArr[j]=mapArr[i][this.getColumnId(j)]};dataArr[i]=columnArr};return dataArr};qx.OO.defineClass("qx.ui.groupbox.CheckGroupBox",qx.ui.groupbox.GroupBox,function(vLegend){qx.ui.groupbox.GroupBox.call(this,vLegend)});qx.Proto._createLegendObject=function(){this._legendObject=new qx.ui.form.CheckBox;this._legendObject.setAppearance("check-box-field-set-legend");this._legendObject.setChecked(true);this.add(this._legendObject)};qx.Proto.setIcon=qx.Proto.getIcon=null;qx.OO.defineClass("qx.dom.DomWindow");if(qx.sys.Client.getInstance().isMshtml()){qx.dom.DomWindow.getInnerWidth=function(w){if(w.document.documentElement&&w.document.documentElement.clientWidth){return w.document.documentElement.clientWidth}else if(w.document.body){return w.document.body.clientWidth};return 0};qx.dom.DomWindow.getInnerHeight=function(w){if(w.document.documentElement&&w.document.documentElement.clientHeight){return w.document.documentElement.clientHeight}else if(w.document.body){return w.document.body.clientHeight};return 0};qx.dom.DomWindow.getScrollLeft=function(w){if(w.document.documentElement&&w.document.documentElement.scrollLeft){return w.document.documentElement.scrollLeft}else if(w.document.body){return w.document.body.scrollTop};return 0};qx.dom.DomWindow.getScrollTop=function(w){if(w.document.documentElement&&w.document.documentElement.scrollTop){return w.document.documentElement.scrollTop}else if(w.document.body){return w.document.body.scrollTop};return 0}}else{qx.dom.DomWindow.getInnerWidth=function(w){return w.innerWidth};qx.dom.DomWindow.getInnerHeight=function(w){return w.innerHeight};qx.dom.DomWindow.getScrollLeft=function(w){return w.document.body.scrollLeft};qx.dom.DomWindow.getScrollTop=function(w){return w.document.body.scrollTop}};qx.OO.defineClass("qx.client.NativeWindow",qx.core.Target,function(vUrl,vName){qx.core.Target.call(this);this._timer=new qx.client.Timer(100);this._timer.addEventListener(qx.constant.Event.INTERVAL,this._oninterval,this);if(qx.util.Validation.isValidString(vUrl)){this.setUrl(vUrl)};if(qx.util.Validation.isValidString(vName)){this.setName(vName)}});qx.client.NativeWindow.PROPERTY_DEPENDENT="dependent";qx.client.NativeWindow.PROPERTY_WIDTH="width";qx.client.NativeWindow.PROPERTY_HEIGHT="height";qx.client.NativeWindow.PROPERTY_LEFT="left";qx.client.NativeWindow.PROPERTY_TOP="top";qx.client.NativeWindow.PROPERTY_RESIZABLE="resizable";qx.client.NativeWindow.PROPERTY_STATUS="status";qx.client.NativeWindow.PROPERTY_LOCATION="location";qx.client.NativeWindow.PROPERTY_MENUBAR="menubar";qx.client.NativeWindow.PROPERTY_TOOLBAR="toolbar";qx.client.NativeWindow.PROPERTY_SCROLLBARS="scrollbars";qx.client.NativeWindow.PROPERTY_MODAL="modal";qx.OO.addProperty({name:"open",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.OO.addProperty({name:"width",type:qx.constant.Type.NUMBER,defaultValue:400,impl:"dimension"});qx.OO.addProperty({name:"height",type:qx.constant.Type.NUMBER,defaultValue:250,impl:"dimension"});qx.OO.addProperty({name:"left",type:qx.constant.Type.NUMBER,defaultValue:100,impl:"position"});qx.OO.addProperty({name:"top",type:qx.constant.Type.NUMBER,defaultValue:200,impl:"position"});qx.OO.addProperty({name:"modal",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.OO.addProperty({name:"dependent",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.OO.addProperty({name:"url",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"name",type:qx.constant.Type.STRING});qx.OO.addProperty({name:"status",type:qx.constant.Type.STRING,defaultValue:"Ready"});qx.OO.addProperty({name:"showStatusbar",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.OO.addProperty({name:"showMenubar",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.OO.addProperty({name:"showLocation",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.OO.addProperty({name:"showToolbar",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.OO.addProperty({name:"resizeable",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.OO.addProperty({name:"allowScrollbars",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.Proto._loaded=false;qx.OO.addPropertyGroup({name:"location",members:["left","top"]});qx.OO.addPropertyGroup({name:"dimension",members:["width","height"]});qx.Proto._modifyPosition=function(propValue,propOldValue,propName){if(!this.isClosed()){try{this._window.moveTo(this.getLeft(),this.getTop())}catch(ex){this.error("Cross-Domain Scripting problem: Could not move window!",ex)}};return true};qx.Proto._modifyDimension=function(propValue,propOldValue,propName){if(!this.isClosed()){try{this._window.resizeTo(this.getWidth(),this.getHeight())}catch(ex){this.error("Cross-Domain Scripting problem: Could not resize window!",ex)}};return true};qx.Proto._modifyName=function(propValue,propOldValue,propName){if(!this.isClosed()){this._window.name=propValue};return true};qx.Proto._modifyUrl=function(propValue,propOldValue,propName){if(!this.isClosed()){this._window.location.replace(qx.util.Validation.isValidString(propValue)?propValue:("javascript:/"+"/"))};return true};qx.Proto._modifyOpen=function(propValue,propOldValue,propData){propValue?this._open():this._close();return true};qx.Proto.getName=function(){if(!this.isClosed()){try{var vName=this._window.name}catch(ex){return this._valueName};if(vName==this._valueName){return vName}else{throw new Error("window name and name property are not identical")}}else{return this._valueName}};qx.Proto.isClosed=function(){var vClosed=true;if(this._window){try{vClosed=this._window.closed}catch(ex){}};return vClosed};qx.Proto.open=function(){this.setOpen(true)};qx.Proto.close=function(){this.setOpen(false)};qx.Proto.isLoaded=function(){return this._loaded};qx.Proto._open=function(){var vConf=[];if(qx.util.Validation.isValidNumber(this.getWidth())){vConf.push(qx.client.NativeWindow.PROPERTY_WIDTH);vConf.push(qx.constant.Core.EQUAL);vConf.push(this.getWidth());vConf.push(qx.constant.Core.COMMA)};if(qx.util.Validation.isValidNumber(this.getHeight())){vConf.push(qx.client.NativeWindow.PROPERTY_HEIGHT);vConf.push(qx.constant.Core.EQUAL);vConf.push(this.getHeight());vConf.push(qx.constant.Core.COMMA)};if(qx.util.Validation.isValidNumber(this.getLeft())){vConf.push(qx.client.NativeWindow.PROPERTY_LEFT);vConf.push(qx.constant.Core.EQUAL);vConf.push(this.getLeft());vConf.push(qx.constant.Core.COMMA)};if(qx.util.Validation.isValidNumber(this.getTop())){vConf.push(qx.client.NativeWindow.PROPERTY_TOP);vConf.push(qx.constant.Core.EQUAL);vConf.push(this.getTop());vConf.push(qx.constant.Core.COMMA)};vConf.push(qx.client.NativeWindow.PROPERTY_DEPENDENT);vConf.push(qx.constant.Core.EQUAL);vConf.push(this.getDependent()?qx.constant.Core.YES:qx.constant.Core.NO);vConf.push(qx.constant.Core.COMMA);vConf.push(qx.client.NativeWindow.PROPERTY_RESIZABLE);vConf.push(qx.constant.Core.EQUAL);vConf.push(this.getResizeable()?qx.constant.Core.YES:qx.constant.Core.NO);vConf.push(qx.constant.Core.COMMA);vConf.push(qx.client.NativeWindow.PROPERTY_STATUS);vConf.push(qx.constant.Core.EQUAL);vConf.push(this.getShowStatusbar()?qx.constant.Core.YES:qx.constant.Core.NO);vConf.push(qx.constant.Core.COMMA);vConf.push(qx.client.NativeWindow.PROPERTY_LOCATION);vConf.push(qx.constant.Core.EQUAL);vConf.push(this.getShowLocation()?qx.constant.Core.YES:qx.constant.Core.NO);vConf.push(qx.constant.Core.COMMA);vConf.push(qx.client.NativeWindow.PROPERTY_MENUBAR);vConf.push(qx.constant.Core.EQUAL);vConf.push(this.getShowMenubar()?qx.constant.Core.YES:qx.constant.Core.NO);vConf.push(qx.constant.Core.COMMA);vConf.push(qx.client.NativeWindow.PROPERTY_TOOLBAR);vConf.push(qx.constant.Core.EQUAL);vConf.push(this.getShowToolbar()?qx.constant.Core.YES:qx.constant.Core.NO);vConf.push(qx.constant.Core.COMMA);vConf.push(qx.client.NativeWindow.PROPERTY_SCROLLBARS);vConf.push(qx.constant.Core.EQUAL);vConf.push(this.getAllowScrollbars()?qx.constant.Core.YES:qx.constant.Core.NO);vConf.push(qx.constant.Core.COMMA);vConf.push(qx.client.NativeWindow.PROPERTY_MODAL);vConf.push(qx.constant.Core.EQUAL);vConf.push(this.getModal()?qx.constant.Core.YES:qx.constant.Core.NO);vConf.push(qx.constant.Core.COMMA);if(qx.util.Validation.isInvalidString(this.getName())){this.setName("NativeWindow"+this.toHashCode())};this._window=window.open(this.getUrl(),this.getName(),vConf.join(qx.constant.Core.EMPTY));if(this.isClosed()){this.error("Window could not be opened. It seems, there is a popup blocker active!")}else{try{this._window._native=this;this._window.onload=this._onload}catch(ex){};this._timer.start();if(this.getModal()){qx.ui.core.ClientDocument.getInstance().block(this)}}};qx.Proto._close=function(){if(!this._window){return};this._timer.stop();if(this.getModal()){qx.ui.core.ClientDocument.getInstance().release(this)};if(!this.isClosed()){this._window.close()};try{this._window._native=null;this._window.onload=null}catch(ex){};this._window=null;this._loaded=false;this.createDispatchEvent("close")};qx.Proto.centerToScreen=function(){return this._centerHelper((screen.width-this.getWidth())/2,(screen.height-this.getHeight())/2)};qx.Proto.centerToScreenArea=function(){return this._centerHelper((screen.availWidth-this.getWidth())/2,(screen.availHeight-this.getHeight())/2)};qx.Proto.centerToOpener=function(){return this._centerHelper(((qx.dom.DomWindow.getInnerWidth(window)-this.getWidth())/2)+qx.dom.DomLocation.getScreenBoxLeft(window.document.body),((qx.dom.DomWindow.getInnerHeight(window)-this.getHeight())/2)+qx.dom.DomLocation.getScreenBoxTop(window.document.body))};qx.Proto._centerHelper=function(l,t){this.setLeft(l);this.setTop(t);if(!this.isClosed()){this.focus()}};qx.Proto.focus=function(){if(!this.isClosed()){this._window.focus()}};qx.Proto.blur=function(){if(!this.isClosed()){this._window.blur()}};qx.Proto._oninterval=function(e){if(this.isClosed()){this.setOpen(false)}else if(!this._loaded){try{if(this._window.document&&this._window.document.readyState=="complete"){this._loaded=true;this.createDispatchEvent(qx.constant.Event.LOAD)}}catch(ex){}}};qx.Proto._onload=function(e){var obj=this._native;if(!obj._loaded){obj._loaded=true;obj.createDispatchEvent(qx.constant.Event.LOAD)}};qx.Proto.dispose=function(){if(this.getDisposed()){return};if(this.getDependent()){this.close()};if(this._timer){this._timer.stop();this._timer=null};if(this._window){try{this._window._native=null;this._window.onload=null}catch(ex){};this._window=null};return qx.core.Target.prototype.dispose.call(this)};qx.OO.defineClass("qx.theme.icon.NuvolaIconTheme",qx.renderer.theme.IconTheme,function(){qx.renderer.theme.IconTheme.call(this,"Nuvola")});qx.Settings.setDefault("imageUri",qx.Settings.getValueOfClass("qx.manager.object.AliasManager","resourceUri")+"/icon/nuvola");qx.Class.getInstance=qx.util.Return.returnInstance;qx.manager.object.ImageManager.getInstance().registerIconTheme(qx.Class);qx.OO.defineClass("qx.ui.table.SelectionModel",qx.core.Target,function(){qx.core.Target.call(this);this._selectedRangeArr=[];this._anchorSelectionIndex=-1;this._leadSelectionIndex=-1;this.hasBatchModeRefCount=0;this._hadChangeEventInBatchMode=false});qx.Class.NO_SELECTION=1;qx.Class.SINGLE_SELECTION=2;qx.Class.SINGLE_INTERVAL_SELECTION=3;qx.Class.MULTIPLE_INTERVAL_SELECTION=4;qx.OO.addProperty({name:"selectionMode",type:qx.constant.Type.NUMBER,defaultValue:qx.Class.SINGLE_SELECTION,allowNull:false,possibleValues:[qx.Class.NO_SELECTION,qx.Class.SINGLE_SELECTION,qx.Class.SINGLE_INTERVAL_SELECTION,qx.Class.MULTIPLE_INTERVAL_SELECTION]});qx.Proto._modifySelectionMode=function(selectionMode){if(selectionMode==qx.ui.table.SelectionModel.NO_SELECTION){this.clearSelection()};return true};qx.Proto.setBatchMode=function(batchMode){if(batchMode){this.hasBatchModeRefCount+=1}else{if(this.hasBatchModeRefCount==0){throw new Error("Try to turn off batch mode althoug it was not turned on.")};this.hasBatchModeRefCount-=1;if(this._hadChangeEventInBatchMode){this._hadChangeEventInBatchMode=false;this._fireSelectionChanged()}};return this.hasBatchMode()};qx.Proto.hasBatchMode=function(){return this.hasBatchModeRefCount>0};qx.Proto.getAnchorSelectionIndex=function(){return this._anchorSelectionIndex};qx.Proto.getLeadSelectionIndex=function(){return this._leadSelectionIndex};qx.Proto.clearSelection=function(){if(!this.isSelectionEmpty()){this._clearSelection();this._fireSelectionChanged()}};qx.Proto.isSelectionEmpty=function(){return this._selectedRangeArr.length==0};qx.Proto.getSelectedCount=function(){var selectedCount=0;for(var i=0;i<this._selectedRangeArr.length;i++){var range=this._selectedRangeArr[i];selectedCount+=range.maxIndex-range.minIndex+1};return selectedCount};qx.Proto.isSelectedIndex=function(index){for(var i=0;i<this._selectedRangeArr.length;i++){var range=this._selectedRangeArr[i];if(index>=range.minIndex&&index<=range.maxIndex){return true}};return false};qx.Proto.getSelectedRanges=function(){var retVal=[];for(var i=0;i<this._selectedRangeArr.length;i++){retVal.push({minIndex:this._selectedRangeArr[i].minIndex,maxIndex:this._selectedRangeArr[i].maxIndex})};return retVal};qx.Proto.iterateSelection=function(iterator,object){for(var i=0;i<this._selectedRangeArr.length;i++){for(var j=this._selectedRangeArr[i].minIndex;j<=this._selectedRangeArr[i].maxIndex;j++){iterator.call(object,j)}}};qx.Proto.setSelectionInterval=function(fromIndex,toIndex){var SelectionModel=qx.ui.table.SelectionModel;switch(this.getSelectionMode()){case SelectionModel.NO_SELECTION:return;case SelectionModel.SINGLE_SELECTION:fromIndex=toIndex;break};this._clearSelection();this._addSelectionInterval(fromIndex,toIndex);this._fireSelectionChanged()};qx.Proto.addSelectionInterval=function(fromIndex,toIndex){var SelectionModel=qx.ui.table.SelectionModel;switch(this.getSelectionMode()){case SelectionModel.NO_SELECTION:return;case SelectionModel.MULTIPLE_INTERVAL_SELECTION:this._addSelectionInterval(fromIndex,toIndex);this._fireSelectionChanged();break;default:this.setSelectionInterval(fromIndex,toIndex);break}};qx.Proto.removeSelectionInterval=function(fromIndex,toIndex){this._anchorSelectionIndex=fromIndex;this._leadSelectionIndex=toIndex;var minIndex=Math.min(fromIndex,toIndex);var maxIndex=Math.max(fromIndex,toIndex);for(var i=0;i<this._selectedRangeArr.length;i++){var range=this._selectedRangeArr[i];if(range.minIndex>maxIndex){break}else if(range.maxIndex>=minIndex){var minIsIn=(range.minIndex>=minIndex)&&(range.minIndex<=maxIndex);var maxIsIn=(range.maxIndex>=minIndex)&&(range.maxIndex<=maxIndex);if(minIsIn&&maxIsIn){this._selectedRangeArr.splice(i,1);i--}else if(minIsIn){range.minIndex=maxIndex+1}else if(maxIsIn){range.maxIndex=minIndex-1}else{var newRange={minIndex:maxIndex+1,maxIndex:range.maxIndex};this._selectedRangeArr.splice(i+1,0,newRange);range.maxIndex=minIndex-1;break}}};this._fireSelectionChanged()};qx.Proto._clearSelection=function(){this._selectedRangeArr=[]};qx.Proto._addSelectionInterval=function(fromIndex,toIndex){this._anchorSelectionIndex=fromIndex;this._leadSelectionIndex=toIndex;var minIndex=Math.min(fromIndex,toIndex);var maxIndex=Math.max(fromIndex,toIndex);var newRangeIndex=0;for(;newRangeIndex<this._selectedRangeArr.length;newRangeIndex++){var range=this._selectedRangeArr[newRangeIndex];if(range.minIndex>minIndex){break}};this._selectedRangeArr.splice(newRangeIndex,0,{minIndex:minIndex,maxIndex:maxIndex});var lastRange=this._selectedRangeArr[0];for(var i=1;i<this._selectedRangeArr.length;i++){var range=this._selectedRangeArr[i];if(lastRange.maxIndex+1>=range.minIndex){lastRange.maxIndex=Math.max(lastRange.maxIndex,range.maxIndex);this._selectedRangeArr.splice(i,1);i--}else{lastRange=range}}};qx.Proto._dumpRanges=function(){var text="Ranges:";for(var i=0;i<this._selectedRangeArr.length;i++){var range=this._selectedRangeArr[i];text+=" ["+range.minIndex+".."+range.maxIndex+"]"};this.debug(text)};qx.Proto._fireSelectionChanged=function(){if(this.hasBatchMode()){this._hadChangeEventInBatchMode=true}else if(this.hasEventListeners("selectionChanged")){this.dispatchEvent(new qx.event.type.Event("selectionChanged"),true)}};qx.OO.defineClass("qx.theme.color.SystemColorTheme",qx.renderer.theme.ColorTheme,function(){qx.renderer.theme.ColorTheme.call(this,"Operating System Default")});qx.Class.getInstance=qx.util.Return.returnInstance;qx.manager.object.ColorManager.getInstance().registerColorTheme(qx.Class);qx.OO.defineClass("qx.ui.form.TextArea",qx.ui.form.TextField,function(vValue){qx.ui.form.TextField.call(this,vValue);this.setTagName("textarea");this.removeHtmlProperty("type")});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"text-area"});qx.OO.addProperty({name:"wrap",type:qx.constant.Type.BOOLEAN});if(qx.sys.Client.getInstance().isMshtml()){qx.Proto._modifyWrap=function(propValue,propOldValue,propData){return this.setStyleProperty("whiteSpace",propValue?"normal":"nowrap")}}else{qx.Proto._modifyWrap=function(propValue,propOldValue,propData){return this.setHtmlProperty("wrap",propValue?"soft":"off")}};qx.Proto._computePreferredInnerHeight=function(){return 60};qx.OO.defineClass("qx.ui.embed.IconHtmlEmbed",qx.ui.embed.HtmlEmbed,function(vHtml,vIcon,vIconWidth,vIconHeight){qx.ui.embed.HtmlEmbed.call(this,vHtml);if(typeof vIcon!=qx.constant.Type.UNDEFINED){this.setIcon(vIcon);if(typeof vIconWidth!=qx.constant.Type.UNDEFINED){this.setIconWidth(vIconWidth)};if(typeof vIconHeight!=qx.constant.Type.UNDEFINED){this.setIconHeight(vIconWidth)}}});qx.OO.addProperty({name:"icon",type:qx.constant.Type.STRING,impl:"html"});qx.OO.addProperty({name:"iconWidth",type:qx.constant.Type.NUMBER,impl:"html"});qx.OO.addProperty({name:"iconHeight",type:qx.constant.Type.NUMBER,impl:"html"});qx.OO.addProperty({name:"spacing",type:qx.constant.Type.NUMBER,defaultValue:4,impl:"html"});qx.ui.embed.IconHtmlEmbed.START_IMAGE="<img src=\"";qx.ui.embed.IconHtmlEmbed.START_STYLE="\" style=\"vertical-align:middle;";qx.ui.embed.IconHtmlEmbed.STYLE_MARGIN="margin-right:";qx.ui.embed.IconHtmlEmbed.STYLE_WIDTH="width:";qx.ui.embed.IconHtmlEmbed.STYLE_HEIGHT="height:";qx.ui.embed.IconHtmlEmbed.PIXEL_UNIT="px;";qx.ui.embed.IconHtmlEmbed.FILTER_START="filter:";qx.ui.embed.IconHtmlEmbed.STOP_IMAGE="\"/>";qx.Proto._mshtml=qx.sys.Client.getInstance().isMshtml();qx.Proto._syncHtml=function(){var vHtml=[];if(qx.util.Validation.isValidString(this.getIcon())){vHtml.push(qx.ui.embed.IconHtmlEmbed.START_IMAGE);vHtml.push(qx.manager.object.AliasManager.getInstance().resolvePath(this._mshtml?"static/image/blank.gif":this.getIcon()));vHtml.push(qx.ui.embed.IconHtmlEmbed.START_STYLE);if(qx.util.Validation.isValidNumber(this.getSpacing())){vHtml.push(qx.ui.embed.IconHtmlEmbed.STYLE_MARGIN);vHtml.push(this.getSpacing());vHtml.push(qx.ui.embed.IconHtmlEmbed.PIXEL_UNIT)};if(qx.util.Validation.isValidNumber(this.getIconWidth())){vHtml.push(qx.ui.embed.IconHtmlEmbed.STYLE_WIDTH);vHtml.push(this.getIconWidth());vHtml.push(qx.ui.embed.IconHtmlEmbed.PIXEL_UNIT)};if(qx.util.Validation.isValidNumber(this.getIconHeight())){vHtml.push(qx.ui.embed.IconHtmlEmbed.STYLE_HEIGHT);vHtml.push(this.getIconHeight());vHtml.push(qx.ui.embed.IconHtmlEmbed.PIXEL_UNIT)};if(this._mshtml){vHtml.push(qx.ui.embed.IconHtmlEmbed.FILTER_START);vHtml.push(qx.ui.basic.Image.IMGLOADER_START);vHtml.push(qx.manager.object.AliasManager.getInstance().resolvePath(this.getIcon()));vHtml.push(qx.ui.basic.Image.IMGLOADER_STOP);vHtml.push(qx.constant.Core.SEMICOLON)};vHtml.push(qx.ui.embed.IconHtmlEmbed.STOP_IMAGE)};if(qx.util.Validation.isValidString(this.getHtml())){vHtml.push(this.getHtml())};this.getElement().innerHTML=vHtml.join(qx.constant.Core.EMPTY)};qx.OO.defineClass("qx.ui.listview.ListViewContentCellIconHtml",qx.ui.embed.IconHtmlEmbed,function(vHtml,vIcon,vIconWidth,vIconHeight){qx.ui.embed.IconHtmlEmbed.call(this,vHtml,vIcon,vIconWidth,vIconHeight);this.setSelectable(false)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"list-view-content-cell-icon-html"});qx.ui.listview.ListViewContentCellIconHtml.empty={icon:qx.constant.Core.EMPTY,html:qx.constant.Core.EMPTY};qx.OO.defineClass("qx.ui.embed.Gallery",qx.ui.basic.Terminator,function(vGalleryList){qx.ui.basic.Terminator.call(this);this._blank=qx.manager.object.AliasManager.getInstance().resolvePath("static/image/blank.gif");this._list=vGalleryList;this._listSize=vGalleryList.length;this._processedImages=0;this.setOverflow("auto");this.setHtmlProperty("className","qx_ui_embed_Gallery");this._manager=new qx.manager.selection.DomSelectionManager(this);this._manager.setMultiColumnSupport(true);this.addEventListener("mousedown",this._onmousedown);this.addEventListener("mouseup",this._onmouseup);this.addEventListener("mousemove",this._onmousemove);this.addEventListener("click",this._onclick);this.addEventListener("dblclick",this._ondblclick);this.addEventListener("keydown",this._onkeydown)});qx.OO.addProperty({name:"thumbMaxWidth",type:qx.constant.Type.NUMBER,defaultValue:100});qx.OO.addProperty({name:"thumbMaxHeight",type:qx.constant.Type.NUMBER,defaultValue:100});qx.OO.addProperty({name:"decorHeight",type:qx.constant.Type.NUMBER,defaultValue:40});qx.OO.addProperty({name:"showTitle",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.OO.addProperty({name:"showComment",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.Proto._applyElementData=function(){this.getElement().appendChild(this.createView())};qx.Proto.getManager=function(){return this._manager};qx.Proto.getList=function(){return this._list};qx.Proto.update=function(vGalleryList){this._manager.deselectAll();this._list=vGalleryList;var el=this.getElement();el.replaceChild(this.createView(),el.firstChild)};qx.Proto.removeAll=function(){this._manager.deselectAll();this.getElement().innerHTML=qx.constant.Core.EMPTY};qx.Proto.updateImageById=function(vId,vSrc,vWidth,vHeight){this.updateImageSrcById(vId,vSrc);this.updateImageDimensionsById(vId,vWidth,vHeight)};qx.Proto.updateImageDimensionsById=function(vId,vWidth,vHeight){this.updateImageDimensionsByPosition(this.getPositionById(vId),vWidth,vHeight)};qx.Proto.updateImageDimensionsByPosition=function(vPos,vWidth,vHeight){if(vPos==-1){throw new Error("No valid Position: "+vPos)};var cnode=this.getNodeByPosition(vPos).getElementsByTagName("IMG")[0];cnode.width=vWidth;cnode.height=vHeight;cnode.style.marginLeft=cnode.style.marginRight=Math.floor((this.getThumbMaxWidth()-vWidth)/2)+"px";cnode.style.marginTop=cnode.style.marginBottom=Math.floor((this.getThumbMaxHeight()-vHeight)/2)+"px";this._list[vPos].thumbWidth=vWidth;this._list[vPos].thumbHeight=vHeight};qx.Proto.updateImageSrcById=function(vId,vSrc){this.updateImageSrcByPosition(this.getPositionById(vId),vSrc)};qx.Proto.updateImageSrcByPosition=function(vPos,vSrc){if(vPos==-1){throw new Error("No valid Position: "+vPos)};var vNode=this.getNodeByPosition(vPos);vNode.getElementsByTagName("IMG")[0].src=vSrc;this._list[vPos].src=vSrc};qx.Proto.deleteById=function(vId){this.deleteByPosition(this.getPositionById(vId))};qx.Proto.deleteByPosition=function(vPos){this._manager.deselectAll();if(vPos==-1){throw new Error("No valid Position: "+vPos)};var vNode=this.getNodeByPosition(vPos);if(vNode){vNode.parentNode.removeChild(vNode)};this._list.splice(vPos,1)};qx.Proto.getPositionById=function(vId){for(var i=0,a=this._list,l=a.length;i<l;i++){if(a[i].id==vId){return i}};return -1};qx.Proto.getEntryById=function(vId){return this.getEntryByPosition(this.getPositionById(vId))};qx.Proto.getNodeById=function(vId){return this.getNodeByPosition(this.getPositionById(vId))};qx.Proto.getEntryByPosition=function(vPosition){return vPosition==-1?null:this._list[vPosition]};qx.Proto.getNodeByPosition=function(vPosition){return vPosition==-1?null:this._frame.childNodes[vPosition]};qx.Proto.getEntryByNode=function(vNode){return this.getEntryById(vNode.id)};qx.Proto.addFromPartialList=function(vPartialList){this.concat(vPartialList);for(var i=0,a=vPartialList,l=a.length;i<l;i++){this._frame.appendChild(this.createCell(a[i],i))}};qx.Proto.addFromUpdatedList=function(vNewList){for(var a=vNewList,l=a.length,i=this._list.length;i<l;i++){this._frame.appendChild(this.createCell(a[i],i))};this._list=vNewList};qx.Proto._onmousedown=function(e){var vItem=this.getListItemTarget(e.getDomTarget());if(vItem){this._manager.handleMouseDown(vItem,e)}};qx.Proto._onmouseup=function(e){var vItem=this.getListItemTarget(e.getDomTarget());if(vItem){this._manager.handleMouseUp(vItem,e)}};qx.Proto._onmousemove=function(e){if(qx.OO.isAvailable("qx.manager.object.ToolTipManager")){return};var vItem=this.getListItemTarget(e.getDomTarget());if(vItem==this._lastItem){return};if(this._lastItem){var vEventObject=new qx.event.type.MouseEvent("mouseout",e,false,this._lastItem);qx.manager.object.ToolTipManager.getInstance().handleMouseOut(vEventObject);vEventObject.dispose()};if(vItem){if(this.hasEventListeners("beforeToolTipAppear")){this.dispatchEvent(new qx.event.type.DataEvent("beforeToolTipAppear",vItem),true)};if(!this.getToolTip()){return};var vEventObject=new qx.event.type.MouseEvent("mouseout",e,false,vItem);qx.manager.object.ToolTipManager.getInstance().handleMouseOver(vEventObject);vEventObject.dispose();this.setToolTip(null)};this._lastItem=vItem};qx.Proto._onclick=function(e){var vItem=this.getListItemTarget(e.getDomTarget());if(vItem){this._manager.handleClick(vItem,e)}};qx.Proto._ondblclick=function(e){var vItem=this.getListItemTarget(e.getDomTarget());if(vItem){this._manager.handleDblClick(vItem,e)}};qx.Proto._onkeydown=function(e){this._manager.handleKeyDown(e)};qx.Proto.getListItemTarget=function(dt){while(dt.className.indexOf("galleryCell")==-1&&dt.tagName!="BODY"){dt=dt.parentNode};if(dt.tagName=="BODY"){return null};return dt};qx.Proto.scrollItemIntoView=function(vItem){this.scrollItemIntoViewX(vItem);this.scrollItemIntoViewY(vItem)};qx.Proto.scrollItemIntoViewX=function(vItem){qx.dom.DomScrollIntoView.scrollX(vItem)};qx.Proto.scrollItemIntoViewY=function(vItem){qx.dom.DomScrollIntoView.scrollY(vItem)};qx.Proto.getItems=function(){return this._frame.childNodes};qx.Proto.getFirstChild=function(){return this._frame.childNodes[0]};qx.Proto.getLastChild=function(){return this._frame.childNodes[this._frame.childNodes.length-1]};qx.Proto.createView=function(){var s=(new Date).valueOf();if(!this._protoCell){this.createProtoCell()};this._frame=document.createElement("div");this._frame.className="galleryFrame clearfix";for(var i=0,a=this._list,l=a.length;i<l;i++){this._frame.appendChild(this.createCell(a[i],i))};return this._frame};qx.Proto.createCell=function(d,i){var cframe=this._protoCell.cloneNode(true);cframe.id=d.id;cframe.pos=i;if(this.getShowTitle()){cnode=cframe.childNodes[0];cnode.firstChild.nodeValue=d.title};var cnode=cframe.childNodes[this.getShowTitle()?1:0];this.createImageCell(cnode,d);if(this.getShowComment()){cnode=cframe.childNodes[this.getShowTitle()?2:1];cnode.firstChild.nodeValue=d.comment};return cframe};qx.Proto._mshtml=qx.sys.Client.getInstance().isMshtml();qx.Proto.createImageCell=function(inode,d){if(this.hasEventListeners("loadComplete")){inode.onload=qx.ui.embed.Gallery.imageOnLoad;inode.onerror=qx.ui.embed.Gallery.imageOnError;inode.gallery=this};if(this._mshtml){inode.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+d.src+"',sizingMethod='scale')"}else{inode.src=d.src};inode.width=d.thumbWidth+2;inode.height=d.thumbHeight+2;inode.style.marginLeft=inode.style.marginRight=Math.floor((this.getThumbMaxWidth()-d.thumbWidth)/2)+"px";inode.style.marginTop=inode.style.marginBottom=Math.floor((this.getThumbMaxHeight()-d.thumbHeight)/2)+"px"};qx.Proto.imageOnComplete=function(){this._processedImages++;if(this._processedImages==this._listSize){this.dispatchEvent(new qx.event.type.Event("loadComplete"),true)}};qx.ui.embed.Gallery.imageOnLoad=function(){this.gallery.imageOnComplete();this.gallery=null;this.onload=null;this.onerror=null};qx.ui.embed.Gallery.imageOnError=function(){this.gallery.imageOnComplete();this.gallery=null;this.onload=null;this.onerror=null};qx.Proto.createProtoCell=function(){var frame=this._protoCell=document.createElement("div");frame.className="galleryCell";frame.unselectable="on";frame.style.width=(this.getThumbMaxWidth()+2)+"px";frame.style.height=(this.getThumbMaxHeight()+this.getDecorHeight()+2)+"px";if(this.getShowTitle()){var title=document.createElement("div");title.className="galleryTitle";title.unselectable="on";var ttext=document.createTextNode("-");title.appendChild(ttext);frame.appendChild(title)};var image=new Image();image.src=this._blank;frame.appendChild(image);if(this.getShowComment()){var comment=document.createElement("div");comment.className="galleryComment";comment.unselectable="on";var ctext=document.createTextNode("-");comment.appendChild(ctext);frame.appendChild(comment)}};qx.Proto.dispose=function(){if(this.getDisposed()){return true};this._list=null;this._protoCell=null;this._frame=null;if(this._manager){this._manager.dispose();this._manager=null};this.removeEventListener("mousedown",this._onmousedown);this.removeEventListener("mouseup",this._onmouseup);this.removeEventListener("mousemove",this._onmousemove);this.removeEventListener("click",this._onclick);this.removeEventListener("dblclick",this._ondblclick);this.removeEventListener("keydown",this._onkeydown);return qx.ui.basic.Terminator.prototype.dispose.call(this)};qx.OO.defineClass("qx.dev.Pollution");qx.Class.names={"window":window,"document":document,"body":document.body};qx.Class.ignore={"window":["__firebug__","Components","controllers","console","event","offscreenBuffering","clipboardData","clientInformation","Option","Image","external","screenTop","screenLeft","length","window","document","location","navigator","netscape","parent","frames","top","scrollbars","name","scrollX","scrollY","self","screen","history","content","menubar","toolbar","locationbar","personalbar","statusbar","directories","closed","crypto","pkcs11","opener","status","defaultStatus","innerWidth","innerHeight","outerWidth","outerHeight","screenX","screenY","pageXOffset","pageYOffset","scrollMaxX","scrollMaxY","fullScreen","frameElement"],"document":["domConfig","location","compatMode","implementation","defaultView","title","body","styleSheets","documentElement","nodeName","nodeType","firstChild","lastChild","doctype","images","applets","links","forms","anchors","cookie","embeds","plugins","designMode","childNodes"],"body":["textContent","innerHTML","outerHTML","innerText","outerText","scopeName","parentElement","tagName","filters","contentEditable","document","currentStyle","isMultiLine","clientHeight","clientWidth","lastChild","firstChild","offsetTop","offsetLeft","offsetWidth","offsetHeight","tabIndex","className","attributes","previousSibling","nextSibling","ownerDocument","localName","childNodes","parentNode","nodeType","nodeName","style","scrollTop","scrollLeft","scrollWidth","scrollHeight"]};qx.Class.consoleInfo=function(object){alert("Global namespace is polluted by:\n\n"+qx.dev.Pollution.getTextList(object))};qx.Class.extract=function(object){var ext=[];var ign=qx.dev.Pollution.ignore[object];var obj=qx.dev.Pollution.names[object];for(var key in obj){try{if(typeof obj[key]=="undefined"||obj[key]===null){continue};if(typeof obj[key]=="function"&&obj[key].toString().indexOf("[native code]")!=-1){continue};if(qx.lang.Array.contains(ign,key)){continue}}catch(ex){continue};ext.push({"key":key,"value":obj[key]})};return ext};qx.Class.getHtmlTable=function(object){var all=[];var rowStart="<tr style='vertical-align:top'><td>";var cellSplit="</td><td>";var rowEnd="</td></tr>";all.push("<table>");var ext=this.extract(object);for(var i=0;i<ext.length;i++){all.push(rowStart+ext[i].key+cellSplit+ext[i].value+rowEnd)};all.push("</table>");return all.join(qx.constant.Core.EMPTY)};qx.Class.getTextList=function(object){var all=[];var cellSplit=": ";var rowEnd="\n";var ext=this.extract(object);for(var i=0;i<ext.length;i++){all.push(ext[i].key+cellSplit+ext[i].value+rowEnd)};return all.join(qx.constant.Core.EMPTY)};qx.OO.defineClass("qx.ui.pageview.tabview.TabViewButton",qx.ui.pageview.AbstractPageViewButton,function(vText,vIcon,vIconWidth,vIconHeight,vFlash){qx.ui.pageview.AbstractPageViewButton.call(this,vText,vIcon,vIconWidth,vIconHeight,vFlash)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"tab-view-button"});qx.OO.addProperty({name:"showCloseButton",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.OO.addProperty({name:"closeButtonImage",type:qx.constant.Type.STRING,defaultValue:"icon/16/cancel.png"});qx.Proto._onkeydown=function(e){switch(e.getKeyCode()){case qx.event.type.KeyEvent.keys.enter:case qx.event.type.KeyEvent.keys.space:this.setChecked(true);break;case qx.event.type.KeyEvent.keys.left:var vPrev=this.getPreviousSibling()||this.getParent().getLastChild();if(vPrev&&vPrev!=this){delete qx.event.handler.FocusHandler.mouseFocus;vPrev.setFocused(true);vPrev.setChecked(true)};break;case qx.event.type.KeyEvent.keys.right:var vNext=this.getNextSibling()||this.getParent().getFirstVisibleChild();if(vNext&&vNext!=this){delete qx.event.handler.FocusHandler.mouseFocus;vNext.setFocused(true);vNext.setChecked(true)};break}};qx.Proto._ontabclose=function(e){this.createDispatchDataEvent("closetab",this)};qx.Proto._modifyShowCloseButton=function(propValue,propOldValue,propData){if(!this._closeButtonImage){this._closeButtonImage=new qx.ui.basic.Image(this.getCloseButtonImage())};if(propValue){this._closeButtonImage.addEventListener(qx.constant.Event.CLICK,this._ontabclose,this);this.add(this._closeButtonImage)}else{this.remove(this._closeButtonImage);this._closeButtonImage.removeEventListener(qx.constant.Event.CLICK,this._ontabclose)};return true};qx.Proto._modifyCloseButtonImage=function(propValue,propOldValue,propData){if(qx.util.Validation.isValidString(propValue)){if(this._closeButtonImage){var oldCloseButtonImage=this._closeButtonImage;oldCloseButtonImage.removeEventListener(qx.constant.Event.CLICK,this._ontabclose);this.remove(oldCloseButtonImage);oldCloseButtonImage.dispose()};var newCloseButtonImage=this._closeButtonImage=new qx.ui.basic.Image(propValue);newCloseButtonImage.addEventListener(qx.constant.Event.CLICK,this._ontabclose,this);if(this.getShowCloseButton()){this.add(newCloseButtonImage)}};return true};qx.Proto._applyStateAppearance=function(){this._states.firstChild=this.isFirstVisibleChild();this._states.lastChild=this.isLastVisibleChild();this._states.alignLeft=this.getView().getAlignTabsToLeft();this._states.barTop=this.getView().getPlaceBarOnTop();qx.ui.pageview.AbstractPageViewButton.prototype._applyStateAppearance.call(this)};qx.Proto.dispose=function(){if(this.getDisposed()){return};if(this._closeButtonImage){this._closeButtonImage.dispose();this._closeButtonImage=null};return qx.ui.pageview.AbstractPageViewButton.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.splitpane.HorizontalSplitPane",qx.ui.splitpane.SplitPane,function(firstSize,secondSize){qx.ui.splitpane.SplitPane.call(this,qx.constant.Layout.ORIENTATION_HORIZONTAL,firstSize,secondSize)});qx.Proto.dispose=function(){if(this.getDisposed()){return true};return qx.ui.splitpane.SplitPane.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.table.IconHeaderCellRenderer",qx.ui.table.DefaultHeaderCellRenderer,function(iconUrl,tooltip){qx.ui.table.DefaultHeaderCellRenderer.call(this);if(iconUrl==null){iconUrl=""};this.setIconUrl(iconUrl);this.setToolTip(tooltip)});qx.OO.addProperty({name:"iconUrl",type:qx.constant.Type.STRING,defaultValue:"",allowNull:false});qx.OO.addProperty({name:"toolTip",type:qx.constant.Type.STRING,defaultValue:null,allowNull:true});qx.Proto.updateHeaderCell=function(cellInfo,cellWidget){qx.ui.table.DefaultHeaderCellRenderer.prototype.updateHeaderCell.call(this,cellInfo,cellWidget);var img=cellWidget.getUserData("qx_ui_table_IconHeaderCellRenderer_icon");if(img==null){img=new qx.ui.basic.Image();cellWidget.setUserData("qx_ui_table_IconHeaderCellRenderer_icon",img);cellWidget.addAtBegin(img)};img.setSource(this.getIconUrl());var widgetToolTip=cellWidget.getToolTip();if(this.getToolTip()!=null){if(true||widgetToolTip==null){widgetToolTip=new qx.ui.popup.ToolTip(this.getToolTip());cellWidget.setToolTip(widgetToolTip)};widgetToolTip.getAtom().setLabel(this.getToolTip())}};qx.OO.defineClass("qx.ui.menu.MenuBar",qx.ui.toolbar.ToolBar,function(){qx.ui.toolbar.ToolBar.call(this)});qx.OO.defineClass("qx.lang.XmlEmu");if(qx.sys.Client.getInstance().isMshtml()){var DOMParser=function(){};DOMParser.prototype={toString:function(){return "[object DOMParser]"},parseFromString:function(str,contentType){var xmlDocument=new ActiveXObject("Microsoft.XMLDOM");xmlDocument.loadXML(str);return xmlDocument},parseFromStream:new Function,baseURI:""};var XMLSerializer=function(){};XMLSerializer.prototype={toString:function(){return "[object XMLSerializer]"},serializeToString:function(root){return root.xml||root.outerHTML},serializeToStream:new Function}};if(window.XPathEvaluator){qx.lang.XmlEmu._xpe=new XPathEvaluator();if(!Element.prototype.selectSingleNode){Element.prototype.selectSingleNode=function(xpath){return qx.lang.XmlEmu._xpe.evaluate(xpath,this,qx.lang.XmlEmu._xpe.createNSResolver(this),XPathResult.FIRST_ORDERED_NODE_TYPE,null).singleNodeValue}};if(!Element.prototype.selectNodes){Element.prototype.selectNodes=function(xpath){var result=qx.lang.XmlEmu._xpe.evaluate(xpath,this,qx.lang.XmlEmu._xpe.createNSResolver(this),XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null);var nodes=[];for(var i=0;i<result.snapshotLength;i++){nodes[i]=result.snapshotItem(i)};return nodes}};if(!Document.prototype.selectSingleNode){Document.prototype.selectSingleNode=function(xpath){return qx.lang.XmlEmu._xpe.evaluate(xpath,this,qx.lang.XmlEmu._xpe.createNSResolver(this),XPathResult.FIRST_ORDERED_NODE_TYPE,null).singleNodeValue}};if(!Document.prototype.selectNodes){Document.prototype.selectNodes=function(xpath){var result=qx.lang.XmlEmu._xpe.evaluate(xpath,this,qx.lang.XmlEmu._xpe.createNSResolver(this),XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null);var nodes=[];for(var i=0;i<result.snapshotLength;i++){nodes[i]=result.snapshotItem(i)};return nodes}};Element.prototype.__defineGetter__('text',function(){var text="";for(var i=0;i<this.childNodes.length;i++){text+=this.childNodes[i].text!=null?this.childNodes[i].text:""};return text});Element.prototype.__lookupGetter__('text');Attr.prototype.__defineGetter__('text',function(){return this.nodeValue});Attr.prototype.__lookupGetter__('text');Text.prototype.__defineGetter__('text',function(){return this.nodeValue});Text.prototype.__lookupGetter__('text')};qx.OO.defineClass('qx.dev.log.FireBugAppender',qx.dev.log.Appender,function(){qx.dev.log.Appender.call(this)});qx.Proto.appendLogEvent=function(evt){if(typeof console!='undefined'){var log=qx.dev.log.Logger;var msg=this.formatLogEvent(evt);switch(evt.level){case log.LEVEL_DEBUG:if(console.debug){console.debug(msg)};break;case log.LEVEL_INFO:if(console.info){console.info(msg)};break;case log.LEVEL_WARN:if(console.warn){console.warn(msg)};break;default:if(console.error){console.error(msg)};break};if(evt.level>log.LEVEL_WARN&&(!evt.throwable||!evt.throwable.stack)&&console.trace){console.trace()}}};qx.OO.defineClass("qx.renderer.layout.DockLayoutImpl",qx.renderer.layout.LayoutImpl,function(vWidget){qx.renderer.layout.LayoutImpl.call(this,vWidget)});qx.renderer.layout.DockLayoutImpl.METHOD_LOCATION="layoutChild_location_";qx.renderer.layout.DockLayoutImpl._childRanking={vertical:function(c){return c.getVerticalAlign()?1e6:c.getHorizontalAlign()?2e6:3e6},horizontal:function(c){return c.getHorizontalAlign()?1e6:c.getVerticalAlign()?2e6:3e6},ordered:function(c){return c.getHorizontalAlign()||c.getVerticalAlign()?1e6:2e6}};qx.renderer.layout.DockLayoutImpl._childCheck={common:function(vChild){if(!(vChild._computedLeftTypeNull&&vChild._computedRightTypeNull&&vChild._computedTopTypeNull&&vChild._computedBottomTypeNull)){throw new Error("qx.renderer.layout.DockLayoutImpl: It is not allowed to define any location values for children: "+vChild+"!")}},horizontal:function(vChild){if(!(vChild._computedMinHeightTypeNull&&vChild._computedHeightTypeNull&&vChild._computedMaxHeightTypeNull)){throw new Error("qx.renderer.layout.DockLayoutImpl: It is not allowed to define any vertical dimension for 'horizontal' placed children: "+vChild+"!")}},vertical:function(vChild){if(!(vChild._computedMinWidthTypeNull&&vChild._computedWidthTypeNull&&vChild._computedMaxWidthTypeNull)){throw new Error("qx.renderer.layout.DockLayoutImpl: It is not allowed to define any horizontal dimension for 'vertical' placed children: "+vChild+"!")}},"default":function(vChild){qx.renderer.layout.DockLayoutImpl._childCheck.horizontal(vChild);qx.renderer.layout.DockLayoutImpl._childCheck.vertical(vChild)}};qx.Proto.computeChildBoxWidth=function(vChild){if(this.getChildAlignMode(vChild)==qx.constant.Layout.ORIENTATION_HORIZONTAL){return vChild.getWidthValue()||vChild._computeBoxWidthFallback()};return this.getWidget().getInnerWidth()-this._lastLeft-this._lastRight};qx.Proto.computeChildBoxHeight=function(vChild){if(this.getChildAlignMode(vChild)==qx.constant.Layout.ORIENTATION_VERTICAL){return vChild.getHeightValue()||vChild._computeBoxHeightFallback()};return this.getWidget().getInnerHeight()-this._lastTop-this._lastBottom};qx.Proto.updateChildOnInnerWidthChange=function(vChild){vChild._recomputePercentX();vChild.addToLayoutChanges(qx.ui.core.Widget.JOB_LOCATION);return true};qx.Proto.updateChildOnInnerHeightChange=function(vChild){vChild._recomputePercentY();vChild.addToLayoutChanges(qx.ui.core.Widget.JOB_LOCATION);return true};qx.Proto.updateSelfOnJobQueueFlush=qx.util.Return.returnFalse;qx.Proto.updateChildrenOnJobQueueFlush=function(vQueue){if(vQueue.mode||vQueue.addChild||vQueue.removeChild){this.getWidget()._addChildrenToLayoutQueue(qx.ui.core.Widget.JOB_LOCATION)}};qx.Proto.flushChildrenQueue=function(vChildrenQueue){var vWidget=this.getWidget(),vChildren=vWidget.getVisibleChildren(),vChildrenLength=vChildren.length,vMode=vWidget.getMode();this._lastLeft=this._lastRight=this._lastTop=this._lastBottom=0;var vRankImpl=qx.renderer.layout.DockLayoutImpl._childRanking[vMode];var vOrderedChildren=qx.lang.Array.copy(vChildren).sort(function(c1,c2){return (vRankImpl(c1)+vChildren.indexOf(c1))-(vRankImpl(c2)+vChildren.indexOf(c2))});for(var i=0;i<vChildrenLength;i++){vWidget._layoutChild(vOrderedChildren[i])}};qx.Proto.getChildAlign=function(vChild){return vChild.getVerticalAlign()||vChild.getHorizontalAlign()||qx.constant.Core.DEFAULT};qx.Proto.getChildAlignMode=function(vChild){return vChild.getVerticalAlign()?qx.constant.Layout.ORIENTATION_VERTICAL:vChild.getHorizontalAlign()?qx.constant.Layout.ORIENTATION_HORIZONTAL:qx.constant.Core.DEFAULT};qx.Proto.layoutChild=function(vChild,vJobs){qx.renderer.layout.DockLayoutImpl._childCheck.common(vChild);qx.renderer.layout.DockLayoutImpl._childCheck[this.getChildAlignMode(vChild)](vChild);this.layoutChild_sizeX_essentialWrapper(vChild,vJobs);this.layoutChild_sizeY_essentialWrapper(vChild,vJobs);this.layoutChild_sizeLimitX(vChild,vJobs);this.layoutChild_sizeLimitY(vChild,vJobs);this[qx.renderer.layout.DockLayoutImpl.METHOD_LOCATION+this.getChildAlign(vChild)](vChild,vJobs)};qx.Proto.layoutChild_location_top=function(vChild,vJobs){vChild._applyRuntimeTop(this._lastTop);vChild._applyRuntimeLeft(this._lastLeft);this.layoutChild_location_horizontal(vChild);this._lastTop+=vChild.getBoxHeight()};qx.Proto.layoutChild_location_left=function(vChild,vJobs){vChild._applyRuntimeLeft(this._lastLeft);vChild._applyRuntimeTop(this._lastTop);this.layoutChild_location_vertical(vChild);this._lastLeft+=vChild.getBoxWidth()};if(qx.sys.Client.getInstance().isMshtml()||qx.sys.Client.getInstance().isOpera()){qx.Proto._applyComputedWidth=function(vChild){vChild._recomputeBoxWidth();vChild._recomputeOuterWidth();vChild._recomputeInnerWidth();vChild._applyRuntimeWidth(vChild.getBoxWidth())};qx.Proto._applyComputedHeight=function(vChild){vChild._recomputeBoxHeight();vChild._recomputeOuterHeight();vChild._recomputeInnerHeight();vChild._applyRuntimeHeight(vChild.getBoxHeight())};qx.Proto.layoutChild_sizeX=function(vChild,vJobs){if(vJobs.initial||vJobs.width||vJobs.minWidth||vJobs.maxWidth){vChild._computedWidthTypeNull&&vChild._computedMinWidthTypeNull&&vChild._computedMaxWidthTypeNull?vChild._resetRuntimeWidth():vChild._applyRuntimeWidth(vChild.getBoxWidth())}};qx.Proto.layoutChild_sizeY=function(vChild,vJobs){if(vJobs.initial||vJobs.height||vJobs.minHeight||vJobs.maxHeight){vChild._computedHeightTypeNull&&vChild._computedMinHeightTypeNull&&vChild._computedMaxHeightTypeNull?vChild._resetRuntimeHeight():vChild._applyRuntimeHeight(vChild.getBoxHeight())}};qx.Proto.layoutChild_location_horizontal=function(vChild){this._applyComputedWidth(vChild)};qx.Proto.layoutChild_location_vertical=function(vChild){this._applyComputedHeight(vChild)};qx.Proto.layoutChild_location_right=function(vChild,vJobs){vChild._applyRuntimeLeft(this.getWidget().getInnerWidth()-this._lastRight-vChild.getBoxWidth());vChild._applyRuntimeTop(this._lastTop);this.layoutChild_location_vertical(vChild);this._lastRight+=vChild.getBoxWidth()};qx.Proto.layoutChild_location_bottom=function(vChild,vJobs){vChild._applyRuntimeTop(this.getWidget().getInnerHeight()-this._lastBottom-vChild.getBoxHeight());vChild._applyRuntimeLeft(this._lastLeft);this.layoutChild_location_horizontal(vChild);this._lastBottom+=vChild.getBoxHeight()};qx.Proto.layoutChild_location_default=function(vChild,vJobs){var vWidget=this.getWidget();vChild._resetRuntimeRight();vChild._resetRuntimeBottom();vChild._applyRuntimeTop(this._lastTop);vChild._applyRuntimeLeft(this._lastLeft);this._applyComputedWidth(vChild);this._applyComputedHeight(vChild)}}else{qx.Proto._applyComputedWidth=function(vChild){vChild._recomputeBoxWidth();vChild._recomputeOuterWidth();vChild._recomputeInnerWidth()};qx.Proto._applyComputedHeight=function(vChild){vChild._recomputeBoxHeight();vChild._recomputeOuterHeight();vChild._recomputeInnerHeight()};qx.Proto.layoutChild_sizeX=function(vChild,vJobs){if(vJobs.initial||vJobs.width){vChild._computedWidthTypeNull?vChild._resetRuntimeWidth():vChild._applyRuntimeWidth(vChild.getWidthValue())}};qx.Proto.layoutChild_sizeY=function(vChild,vJobs){if(vJobs.initial||vJobs.height){vChild._computedHeightTypeNull?vChild._resetRuntimeHeight():vChild._applyRuntimeHeight(vChild.getHeightValue())}};qx.Proto.layoutChild_location_horizontal=function(vChild){this._applyComputedWidth(vChild);vChild._applyRuntimeRight(this._lastRight)};qx.Proto.layoutChild_location_vertical=function(vChild){this._applyComputedHeight(vChild);vChild._applyRuntimeBottom(this._lastBottom)};qx.Proto.layoutChild_location_right=function(vChild,vJobs){vChild._applyRuntimeRight(this._lastRight);vChild._applyRuntimeTop(this._lastTop);this.layoutChild_location_vertical(vChild);this._lastRight+=vChild.getBoxWidth()};qx.Proto.layoutChild_location_bottom=function(vChild,vJobs){vChild._applyRuntimeBottom(this._lastBottom);vChild._applyRuntimeLeft(this._lastLeft);this.layoutChild_location_horizontal(vChild);this._lastBottom+=vChild.getBoxHeight()};qx.Proto.layoutChild_location_default=function(vChild,vJobs){vChild._resetRuntimeWidth();vChild._resetRuntimeHeight();vChild._applyRuntimeTop(this._lastTop);vChild._applyRuntimeRight(this._lastRight);vChild._applyRuntimeBottom(this._lastBottom);vChild._applyRuntimeLeft(this._lastLeft);this._applyComputedWidth(vChild);this._applyComputedHeight(vChild)}};qx.OO.defineClass("qx.ui.pageview.buttonview.ButtonViewPage",qx.ui.pageview.AbstractPageViewPage,function(vButton){qx.ui.pageview.AbstractPageViewPage.call(this,vButton)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"bar-view-page"});qx.OO.defineClass("qx.theme.color.WindowsLunaGreenColorTheme",qx.renderer.theme.ColorTheme,function(){qx.renderer.theme.ColorTheme.call(this,"Windows Luna Green")});qx.Proto._colors=qx.lang.Object.carefullyMergeWith({activeborder:[212,208,200],activecaption:[139,161,105],appworkspace:[128,128,128],background:[157,172,189],buttonface:[236,233,216],buttonhighlight:[255,255,255],buttonshadow:[172,168,153],buttontext:[0,0,0],captiontext:[255,255,255],graytext:[172,168,153],highlight:[147,160,112],highlighttext:[255,255,255],inactiveborder:[212,208,200],inactivecaption:[212,214,186],inactivecaptiontext:[255,255,255],infobackground:[255,255,225],infotext:[0,0,0],menu:[255,255,255],menutext:[0,0,0],scrollbar:[212,208,200],threeddarkshadow:[113,111,100],threedface:[236,233,216],threedhighlight:[255,255,255],threedlightshadow:[241,239,226],threedshadow:[172,168,153],window:[255,255,255],windowframe:[0,0,0],windowtext:[0,0,0]},qx.Super.prototype._colors);qx.Class.getInstance=qx.util.Return.returnInstance;qx.manager.object.ColorManager.getInstance().registerColorTheme(qx.Class);qx.OO.defineClass("qx.dom.DomElement");qx.dom.DomElement.cleanWhitespace=function(vElement){for(var i=0;i<vElement.childNodes.length;i++){var node=vElement.childNodes[i];if(node.nodeType==3&&!/\S/.test(node.nodeValue)){vElement.removeChild(node)}}};qx.dom.DomElement.isEmpty=function(vElement){return vElement.innerHTML.match(/^\s*$/)};qx.OO.defineClass("qx.theme.color.WindowsLunaBlueColorTheme",qx.renderer.theme.ColorTheme,function(){qx.renderer.theme.ColorTheme.call(this,"Windows Luna Blue")});qx.Proto._colors=qx.lang.Object.carefullyMergeWith({activeborder:[212,208,200],activecaption:[0,84,227],appworkspace:[128,128,128],background:[0,78,152],buttonface:[236,233,216],buttonhighlight:[255,255,255],buttonshadow:[172,168,153],buttontext:[0,0,0],captiontext:[255,255,255],graytext:[172,168,153],highlight:[49,106,197],highlighttext:[255,255,255],inactiveborder:[212,208,200],inactivecaption:[122,150,223],inactivecaptiontext:[216,228,248],infobackground:[255,255,225],infotext:[0,0,0],menu:[255,255,255],menutext:[0,0,0],scrollbar:[212,208,200],threeddarkshadow:[113,111,100],threedface:[236,233,216],threedhighlight:[255,255,255],threedlightshadow:[241,239,226],threedshadow:[172,168,153],window:[255,255,255],windowframe:[0,0,0],windowtext:[0,0,0]},qx.Super.prototype._colors);qx.Class.getInstance=qx.util.Return.returnInstance;qx.manager.object.ColorManager.getInstance().registerColorTheme(qx.Class);qx.OO.defineClass("qx.constant.Node",{ELEMENT:1,ATTRIBUTE:2,TEXT:3,CDATA_SECTION:4,ENTITY_REFERENCE:5,ENTITY:6,PROCESSING_INSTRUCTION:7,COMMENT:8,DOCUMENT:9,DOCUMENT_TYPE:10,DOCUMENT_FRAGMENT:11,NOTATION:12});qx.OO.defineClass("qx.ui.toolbar.ToolBarSeparator",qx.ui.layout.CanvasLayout,function(){qx.ui.layout.CanvasLayout.call(this);var l=new qx.ui.basic.Terminator;l.setAppearance("toolbar-separator-line");this.add(l)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"toolbar-separator"});qx.OO.defineClass("qx.ui.form.PasswordField",qx.ui.form.TextField,function(vText){qx.ui.form.TextField.call(this,vText);this.setHtmlProperty("type","password")});qx.OO.defineClass("qx.ui.embed.GalleryList",qx.ui.basic.Terminator,function(galleryList){qx.ui.basic.Terminator.call(this);this._blank=qx.manager.object.AliasManager.getInstance().resolvePath("static/image/blank.gif");this._list=galleryList;this._listSize=galleryList.length;this._processedImages=0;this.setOverflow("auto");this.setHtmlProperty("className","qx.ui.embed.GalleryList");this._manager=new qx.manager.selection.DomSelectionManager(this);this.addEventListener("mousedown",this._onmousedown);this.addEventListener("mouseup",this._onmouseup);this.addEventListener("click",this._onclick);this.addEventListener("dblclick",this._ondblclick);this.addEventListener("keydown",this._onkeydown)});qx.OO.addProperty({name:"thumbMaxWidth",type:qx.constant.Type.NUMBER,defaultValue:60});qx.OO.addProperty({name:"thumbMaxHeight",type:qx.constant.Type.NUMBER,defaultValue:60});qx.OO.addProperty({name:"decorHeight",type:qx.constant.Type.NUMBER,defaultValue:40});qx.Proto._applyElementData=function(){this.getElement().appendChild(this.createView())};qx.Proto.getManager=function(){return this._manager};qx.Proto.update=function(vGalleryList){this._manager.deselectAll();this._list=vGalleryList;var el=this.getElement();el.replaceChild(this.createView(),el.firstChild)};qx.Proto.removeAll=function(){this._manager.deselectAll();this.getElement().innerHTML=qx.constant.Core.EMPTY};qx.Proto._onmousedown=function(e){var vItem=this.getListItemTarget(e.getDomTarget());if(vItem){this._manager.handleMouseDown(vItem,e)}};qx.Proto._onmouseup=function(e){var vItem=this.getListItemTarget(e.getDomTarget());if(vItem){this._manager.handleMouseUp(vItem,e)}};qx.Proto._onclick=function(e){var vItem=this.getListItemTarget(e.getDomTarget());if(vItem){this._manager.handleClick(vItem,e)}};qx.Proto._ondblclick=function(e){var vItem=this.getListItemTarget(e.getDomTarget());if(vItem){this._manager.handleDblClick(vItem,e)}};qx.Proto._onkeydown=function(e){this._manager.handleKeyDown(e)};qx.Proto.getListItemTarget=function(dt){while(dt.className.indexOf("galleryCell")==-1&&dt.tagName!="BODY"){dt=dt.parentNode};if(dt.tagName=="BODY"){return null};return dt};qx.Proto.scrollItemIntoView=function(vItem){this.scrollItemIntoViewX(vItem);this.scrollItemIntoViewY(vItem)};qx.Proto.scrollItemIntoViewX=function(vItem){qx.dom.DomScrollIntoView.scrollX(vItem)};qx.Proto.scrollItemIntoViewY=function(vItem){qx.dom.DomScrollIntoView.scrollY(vItem)};qx.Proto.getItems=function(){return this._frame.childNodes};qx.Proto.getFirstChild=function(){return this._frame.childNodes[0]};qx.Proto.getLastChild=function(){return this._frame.childNodes[this._frame.childNodes.length-1]};qx.Proto.createView=function(){var s=(new Date).valueOf();var protoCell=this.createProtoCell(this.getThumbMaxHeight());var frame=this._frame=document.createElement("div");this._frame.className="galleryFrame clearfix";var cframe,cnode;for(var i=0,a=this._list,l=a.length,d;i<l;i++){d=a[i];cframe=protoCell.cloneNode(true);cframe.id=d.id;cframe.pos=i;cnode=cframe.childNodes[0];cnode.firstChild.nodeValue=d.number;cnode=cframe.childNodes[1].firstChild;this.createImageCell(cnode,d);cnode=cframe.childNodes[2].firstChild;cnode.firstChild.nodeValue=d.title;cnode=cframe.childNodes[2].lastChild;cnode.firstChild.nodeValue=d.comment;frame.appendChild(cframe)};return frame};qx.Proto._mshtml=qx.sys.Client.getInstance().isMshtml();qx.Proto.createImageCell=function(inode,d){if(this.hasEventListeners("loadComplete")){inode.onload=qx.ui.embed.GalleryList.imageOnLoad;inode.onerror=qx.ui.embed.GalleryList.imageOnError;inode.gallery=this};inode.width=d.thumbWidth;inode.height=d.thumbHeight;if(this._mshtml){inode.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+d.src+"',sizingMethod='scale')"}else{inode.src=d.src};inode.style.marginLeft=inode.style.marginRight=Math.floor((this.getThumbMaxWidth()-d.thumbWidth)/2)+"px";inode.style.marginTop=inode.style.marginBottom=Math.floor((this.getThumbMaxHeight()-d.thumbHeight)/2)+"px"};qx.Proto.createProtoCell=function(tHeight){var frame=document.createElement("div");frame.className="galleryCell";frame.unselectable="on";frame.style.height=(tHeight+2)+"px";var number=document.createElement("div");number.className="galleryNumber";number.unselectable="on";var ntext=document.createTextNode("-");number.appendChild(ntext);var imageContainer=document.createElement("div");imageContainer.className="galleryImageContainer";imageContainer.unselectable="on";var image=new Image();image.src=this._blank;imageContainer.appendChild(image);var text=document.createElement("div");text.className="galleryText";text.unselectable="on";text.style.width=(this.getWidth()-100-this.getThumbMaxWidth())+"px";var title=document.createElement("h3");var ttext=document.createTextNode("-");title.appendChild(ttext);title.unselectable="on";text.appendChild(title);var comment=document.createElement("p");var ctext=document.createTextNode("-");comment.appendChild(ctext);comment.unselectable="on";text.appendChild(comment);frame.appendChild(number);frame.appendChild(imageContainer);frame.appendChild(text);return frame};qx.Proto.imageOnComplete=function(){this._processedImages++;if(this._processedImages==this._listSize){this.dispatchEvent(new qx.event.type.Event("loadComplete"),true)}};qx.ui.embed.GalleryList.imageOnLoad=function(){this.gallery.imageOnComplete();this.gallery=null;this.onload=null;this.onerror=null};qx.ui.embed.GalleryList.imageOnError=function(){this.gallery.imageOnComplete();this.gallery=null;this.onload=null;this.onerror=null};qx.Proto.dispose=function(){if(this.getDisposed()){return true};this._list=null;this._frame=null;if(this._manager){this._manager.dispose();this._manager=null};this.removeEventListener("mousedown",this._onmousedown);this.removeEventListener("mouseup",this._onmouseup);this.removeEventListener("click",this._onclick);this.removeEventListener("dblclick",this._ondblclick);this.removeEventListener("keydown",this._onkeydown);return qx.ui.basic.Terminator.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.table.Table",qx.ui.layout.VerticalBoxLayout,function(tableModel){qx.ui.layout.VerticalBoxLayout.call(this);this._scrollerParent=new qx.ui.layout.HorizontalBoxLayout;this._scrollerParent.setDimension(qx.constant.Core.HUNDREDPERCENT,qx.constant.Core.FLEX);this._scrollerParent.setSpacing(1);this._statusBar=new qx.ui.basic.Label;this._statusBar.setAppearance("table-focus-statusbar");this._statusBar.setDimension(qx.constant.Core.HUNDREDPERCENT,qx.constant.Core.AUTO);this.add(this._scrollerParent,this._statusBar);this._columnVisibilityBt=new qx.ui.toolbar.ToolBarButton(null,"widget/table/selectColumnOrder.png");this._columnVisibilityBt.addEventListener("execute",this._onColumnVisibilityBtExecuted,this);this._selectionManager=new qx.ui.table.SelectionManager;this.setSelectionModel(new qx.ui.table.SelectionModel);this.setTableColumnModel(new qx.ui.table.TableColumnModel);this.setTableModel(tableModel);this._updateStatusBar();this.setMetaColumnCounts([-1]);this.setTabIndex(1);this.addEventListener(qx.constant.Event.KEYDOWN,this._onkeydown)});qx.OO.addProperty({name:"selectionModel",type:qx.constant.Type.OBJECT,instance:"qx.ui.table.SelectionModel"});qx.OO.addProperty({name:"tableModel",type:qx.constant.Type.OBJECT,instance:"qx.ui.table.TableModel"});qx.OO.addProperty({name:"tableColumnModel",type:qx.constant.Type.OBJECT,instance:"qx.ui.table.TableColumnModel"});qx.OO.addProperty({name:"rowHeight",type:qx.constant.Type.NUMBER,defaultValue:15});qx.OO.addProperty({name:"statusBarVisible",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.OO.addProperty({name:"columnVisibilityButtonVisible",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.OO.addProperty({name:"metaColumnCounts",type:qx.constant.Type.OBJECT});qx.OO.addProperty({name:"focusCellOnMouseMove",type:qx.constant.Type.BOOLEAN,defaultValue:false});qx.OO.addProperty({name:"keepFirstVisibleRowComplete",type:qx.constant.Type.BOOLEAN,defaultValue:true});qx.Proto._modifySelectionModel=function(propValue,propOldValue,propData){this._selectionManager.setSelectionModel(propValue);if(propOldValue!=null){propOldValue.removeEventListener("selectionChanged",this._onSelectionChanged,this)};propValue.addEventListener("selectionChanged",this._onSelectionChanged,this);return true};qx.Proto._modifyTableModel=function(propValue,propOldValue,propData){this.getTableColumnModel().init(propValue.getColumnCount());if(propOldValue!=null){propOldValue.removeEventListener(qx.ui.table.TableModel.EVENT_TYPE_META_DATA_CHANGED,this._onTableModelMetaDataChanged,this);propOldValue.removeEventListener(qx.ui.table.TableModel.EVENT_TYPE_DATA_CHANGED,this._onTableModelDataChanged,this)};propValue.addEventListener(qx.ui.table.TableModel.EVENT_TYPE_META_DATA_CHANGED,this._onTableModelMetaDataChanged,this);propValue.addEventListener(qx.ui.table.TableModel.EVENT_TYPE_DATA_CHANGED,this._onTableModelDataChanged,this);return true};qx.Proto._modifyTableColumnModel=function(propValue,propOldValue,propData){if(propOldValue!=null){propOldValue.removeEventListener("visibilityChanged",this._onColVisibilityChanged,this);propOldValue.removeEventListener("widthChanged",this._onColWidthChanged,this);propOldValue.removeEventListener("orderChanged",this._onColOrderChanged,this)};propValue.addEventListener("visibilityChanged",this._onColVisibilityChanged,this);propValue.addEventListener("widthChanged",this._onColWidthChanged,this);propValue.addEventListener("orderChanged",this._onColOrderChanged,this);return true};qx.Proto._modifyStatusBarVisible=function(propValue,propOldValue,propData){this._statusBar.setDisplay(propValue);if(propValue){this._updateStatusBar()};return true};qx.Proto._modifyColumnVisibilityButtonVisible=function(propValue,propOldValue,propData){this._columnVisibilityBt.setDisplay(propValue);return true};qx.Proto._modifyMetaColumnCounts=function(propValue,propOldValue,propData){var metaColumnCounts=propValue;var scrollerArr=this._getPaneScrollerArr();this._cleanUpMetaColumns(metaColumnCounts.length);var leftX=0;for(var i=0;i<scrollerArr.length;i++){var paneScroller=scrollerArr[i];var paneModel=paneScroller.getTablePaneModel();paneModel.setFirstColumnX(leftX);paneModel.setMaxColumnCount(metaColumnCounts[i]);leftX+=metaColumnCounts[i]};if(metaColumnCounts.length>scrollerArr.length){var selectionModel=this.getSelectionModel();var tableModel=this.getTableModel();var columnModel=this.getTableColumnModel();for(var i=scrollerArr.length;i<metaColumnCounts.length;i++){var paneModel=new qx.ui.table.TablePaneModel(columnModel);paneModel.setFirstColumnX(leftX);paneModel.setMaxColumnCount(metaColumnCounts[i]);leftX+=metaColumnCounts[i];var paneScroller=new qx.ui.table.TablePaneScroller(this);paneScroller.setTablePaneModel(paneModel);paneScroller.addEventListener("changeScrollY",this._onScrollY,this);this._scrollerParent.add(paneScroller)}};var maxHeaderHeight=0;for(var i=0;i<scrollerArr.length;i++){var headerHeight=scrollerArr[i].getHeader().calculateHeaderHeight();maxHeaderHeight=Math.max(headerHeight,maxHeaderHeight)};for(var i=0;i<scrollerArr.length;i++){var paneScroller=scrollerArr[i];var isLast=(i==(scrollerArr.length-1));paneScroller.getHeader().setHeight(maxHeaderHeight);paneScroller.setTopRightWidget(isLast?this._columnVisibilityBt:null)};this._updateScrollerWidths();this._updateScrollBarVisibility();return true};qx.Proto._modifyFocusCellOnMouseMove=function(propValue,propOldValue,propData){var scrollerArr=this._getPaneScrollerArr();for(var i=0;i<scrollerArr.length;i++){scrollerArr[i].setFocusCellOnMouseMove(propValue)};return true};qx.Proto._modifyKeepFirstVisibleRowComplete=function(propValue,propOldValue,propData){var scrollerArr=this._getPaneScrollerArr();for(var i=0;i<scrollerArr.length;i++){scrollerArr[i]._onKeepFirstVisibleRowCompleteChanged()};return true};qx.Proto._getSelectionManager=function(){return this._selectionManager};qx.Proto._getPaneScrollerArr=function(){return this._scrollerParent.getChildren()};qx.Proto.getPaneScroller=function(metaColumn){return this._getPaneScrollerArr()[metaColumn]};qx.Proto._cleanUpMetaColumns=function(fromMetaColumn){var scrollerArr=this._getPaneScrollerArr();if(scrollerArr!=null){for(var i=scrollerArr.length-1;i>=fromMetaColumn;i--){var paneScroller=scrollerArr[i];paneScroller.removeEventListener("changeScrollY",this._onScrollY,this);this._scrollerParent.remove(paneScroller);paneScroller.dispose()}}};qx.Proto._onSelectionChanged=function(evt){var scrollerArr=this._getPaneScrollerArr();for(var i=0;i<scrollerArr.length;i++){scrollerArr[i]._onSelectionChanged(evt)};this._updateStatusBar()};qx.Proto._onTableModelMetaDataChanged=function(evt){var scrollerArr=this._getPaneScrollerArr();for(var i=0;i<scrollerArr.length;i++){scrollerArr[i]._onTableModelMetaDataChanged(evt)};this._updateStatusBar()};qx.Proto._onTableModelDataChanged=function(evt){var scrollerArr=this._getPaneScrollerArr();for(var i=0;i<scrollerArr.length;i++){scrollerArr[i]._onTableModelDataChanged(evt)};var rowCount=this.getTableModel().getRowCount();if(rowCount!=this._lastRowCount){this._lastRowCount=rowCount;this._updateScrollBarVisibility();this._updateStatusBar()}};qx.Proto._onScrollY=function(evt){if(!this._internalChange){this._internalChange=true;var scrollerArr=this._getPaneScrollerArr();for(var i=0;i<scrollerArr.length;i++){scrollerArr[i].setScrollY(evt.getData())};this._internalChange=false}};qx.Proto._onkeydown=function(evt){var keys=qx.event.type.KeyEvent.keys;var keyCode=evt.getKeyCode();var consumed=false;var oldFocusedRow=this._focusedRow;if(this.isEditing()){if(evt.getModifiers()==0){consumed=true;switch(keyCode){case keys.enter:this.stopEditing();var oldFocusedRow=this._focusedRow;this.moveFocusedCell(0,1);if(this._focusedRow!=oldFocusedRow){this.startEditing()};break;case keys.esc:this.cancelEditing();this.focus();break;default:consumed=false;break}}}else{consumed=true;switch(keyCode){case keys.space:this._selectionManager.handleSelectKeyDown(this._focusedRow,evt);break;case keys.left:this.moveFocusedCell(-1,0);break;case keys.right:this.moveFocusedCell(1,0);break;case keys.up:this.moveFocusedCell(0,-1);break;case keys.down:this.moveFocusedCell(0,1);break;case keys.pageup:case keys.pagedown:var scroller=this.getPaneScroller(0);var pane=scroller.getTablePane();var rowCount=pane.getVisibleRowCount()-1;var rowHeight=this.getRowHeight();var direction=(keyCode==keys.pageup)?-1:1;scroller.setScrollY(scroller.getScrollY()+direction*rowCount*rowHeight);this.moveFocusedCell(0,direction*rowCount);break;case keys.home:this.setFocusedCell(this._focusedCol,0,true);break;case keys.end:var rowCount=this.getTableModel().getRowCount();this.setFocusedCell(this._focusedCol,rowCount-1,true);break;default:consumed=false;break};if(evt.getModifiers()==0){consumed=true;switch(keyCode){case keys.f2:case keys.enter:this.startEditing();break;default:consumed=false;break}}else if(evt.getModifiers()==qx.event.type.DomEvent.CTRL_MASK){consumed=true;switch(keyCode){case 65:var rowCount=this.getTableModel().getRowCount();if(rowCount>0){this.getSelectionModel().setSelectionInterval(0,rowCount-1)};break;default:consumed=false;break}}};if(oldFocusedRow!=this._focusedRow){this._selectionManager.handleMoveKeyDown(this._focusedRow,evt)};if(consumed){evt.preventDefault();evt.stopPropagation()}};qx.Proto._onColVisibilityChanged=function(evt){var scrollerArr=this._getPaneScrollerArr();for(var i=0;i<scrollerArr.length;i++){scrollerArr[i]._onColVisibilityChanged(evt)};this._updateScrollerWidths();this._updateScrollBarVisibility()};qx.Proto._onColWidthChanged=function(evt){var scrollerArr=this._getPaneScrollerArr();for(var i=0;i<scrollerArr.length;i++){scrollerArr[i]._onColWidthChanged(evt)};this._updateScrollerWidths();this._updateScrollBarVisibility()};qx.Proto._onColOrderChanged=function(evt){var scrollerArr=this._getPaneScrollerArr();for(var i=0;i<scrollerArr.length;i++){scrollerArr[i]._onColOrderChanged(evt)};this._updateScrollerWidths();this._updateScrollBarVisibility()};qx.Proto.getTablePaneScrollerAtPageX=function(pageX){var metaCol=this._getMetaColumnAtPageX(pageX);return (metaCol!=-1)?this.getPaneScroller(metaCol):null};qx.Proto.setFocusedCell=function(col,row,scrollVisible){if(!this.isEditing()&&(col!=this._focusedCol||row!=this._focusedRow)){this._focusedCol=col;this._focusedRow=row;var scrollerArr=this._getPaneScrollerArr();for(var i=0;i<scrollerArr.length;i++){scrollerArr[i].setFocusedCell(col,row)};if(scrollVisible){this.scrollCellVisible(col,row)}}};qx.Proto.getFocusedColumn=function(){return this._focusedCol};qx.Proto.getFocusedRow=function(){return this._focusedRow};qx.Proto.moveFocusedCell=function(deltaX,deltaY){var col=this._focusedCol;var row=this._focusedRow;if(deltaX!=0){var columnModel=this.getTableColumnModel();var x=columnModel.getVisibleX(col);var colCount=columnModel.getVisibleColumnCount();x=qx.lang.Number.limit(x+deltaX,0,colCount-1);col=columnModel.getVisibleColumnAtX(x)};if(deltaY!=0){var tableModel=this.getTableModel();row=qx.lang.Number.limit(row+deltaY,0,tableModel.getRowCount()-1)};this.setFocusedCell(col,row,true)};qx.Proto.scrollCellVisible=function(col,row){var columnModel=this.getTableColumnModel();var x=columnModel.getVisibleX(col);var metaColumn=this._getMetaColumnAtColumnX(x);if(metaColumn!=-1){this.getPaneScroller(metaColumn).scrollCellVisible(col,row)}};qx.Proto.isEditing=function(){if(this._focusedCol!=null){var x=this.getTableColumnModel().getVisibleX(this._focusedCol);var metaColumn=this._getMetaColumnAtColumnX(x);return this.getPaneScroller(metaColumn).isEditing()}};qx.Proto.startEditing=function(){if(this._focusedCol!=null){var x=this.getTableColumnModel().getVisibleX(this._focusedCol);var metaColumn=this._getMetaColumnAtColumnX(x);return this.getPaneScroller(metaColumn).startEditing()};return false};qx.Proto.stopEditing=function(){if(this._focusedCol!=null){var x=this.getTableColumnModel().getVisibleX(this._focusedCol);var metaColumn=this._getMetaColumnAtColumnX(x);this.getPaneScroller(metaColumn).stopEditing()}};qx.Proto.cancelEditing=function(){if(this._focusedCol!=null){var x=this.getTableColumnModel().getVisibleX(this._focusedCol);var metaColumn=this._getMetaColumnAtColumnX(x);this.getPaneScroller(metaColumn).cancelEditing()}};qx.Proto._getMetaColumnAtPageX=function(pageX){var scrollerArr=this._getPaneScrollerArr();for(var i=0;i<scrollerArr.length;i++){var elem=scrollerArr[i].getElement();if(pageX>=qx.dom.DomLocation.getPageBoxLeft(elem)&&pageX<=qx.dom.DomLocation.getPageBoxRight(elem)){return i}};return -1};qx.Proto._getMetaColumnAtColumnX=function(visXPos){var metaColumnCounts=this.getMetaColumnCounts();var rightXPos=0;for(var i=0;i<metaColumnCounts.length;i++){var counts=metaColumnCounts[i];rightXPos+=counts;if(counts==-1||visXPos<rightXPos){return i}};return -1};qx.Proto._updateStatusBar=function(){if(this.getStatusBarVisible()){var selectedRowCount=this.getSelectionModel().getSelectedCount();var rowCount=this.getTableModel().getRowCount();var text;if(selectedRowCount==0){text=rowCount+((rowCount==1)?" row":" rows")}else{text=selectedRowCount+" of "+rowCount+((rowCount==1)?" row":" rows")+" selected"};this._statusBar.setHtml(text)}};qx.Proto._updateScrollerWidths=function(){var scrollerArr=this._getPaneScrollerArr();for(var i=0;i<scrollerArr.length;i++){var isLast=(i==(scrollerArr.length-1));var width=isLast?qx.constant.Core.FLEX:scrollerArr[i].getTablePaneModel().getTotalWidth();scrollerArr[i].setWidth(width)}};qx.Proto._updateScrollBarVisibility=function(){if(this.isSeeable()){var horBar=qx.ui.table.TablePaneScroller.HORIZONTAL_SCROLLBAR;var verBar=qx.ui.table.TablePaneScroller.VERTICAL_SCROLLBAR;var scrollerArr=this._getPaneScrollerArr();var horNeeded=false;var verNeeded=false;for(var i=0;i<scrollerArr.length;i++){var isLast=(i==(scrollerArr.length-1));var bars=scrollerArr[i].getNeededScrollBars(horNeeded,!isLast);if(bars&horBar){horNeeded=true};if(isLast&&(bars&verBar)){verNeeded=true}};for(var i=0;i<scrollerArr.length;i++){var isLast=(i==(scrollerArr.length-1));scrollerArr[i].setHorizontalScrollBarVisible(horNeeded);scrollerArr[i].setVerticalScrollBarVisible(isLast&&verNeeded)}}};qx.Proto._onColumnVisibilityBtExecuted=function(){if((this._columnVisibilityMenuCloseTime==null)||(new Date().getTime()>this._columnVisibilityMenuCloseTime+200)){this._toggleColumnVisibilityMenu()}};qx.Proto._toggleColumnVisibilityMenu=function(){if(this._columnVisibilityMenu==null||!this._columnVisibilityMenu.isSeeable()){var menu=new qx.ui.menu.Menu;menu.addEventListener(qx.constant.Event.DISAPPEAR,function(evt){this._columnVisibilityMenuCloseTime=new Date().getTime()},this);var tableModel=this.getTableModel();var columnModel=this.getTableColumnModel();for(var x=0;x<columnModel.getOverallColumnCount();x++){var col=columnModel.getOverallColumnAtX(x);var visible=columnModel.isColumnVisible(col);var cmd={col:col};var bt=new qx.ui.menu.MenuCheckBox(tableModel.getColumnName(col),null,visible);var handler=this._createColumnVisibilityCheckBoxHandler(col);bt._handler=handler;bt.addEventListener("execute",handler,this);menu.add(bt)};menu.setParent(this.getTopLevelWidget());this._columnVisibilityMenu=menu;var btElem=this._columnVisibilityBt.getElement();menu.setRestrictToPageOnOpen(false);menu.setTop(qx.dom.DomLocation.getClientBoxBottom(btElem));menu.setLeft(-1000);window.setTimeout(function(){menu.show();qx.ui.core.Widget.flushGlobalQueues();menu.setLeft(qx.dom.DomLocation.getClientBoxRight(btElem)-menu.getOffsetWidth());qx.ui.core.Widget.flushGlobalQueues()},0)}else{menu.hide();this._cleanupColumnVisibilityMenu()}};qx.Proto._cleanupColumnVisibilityMenu=function(){if(this._columnVisibilityMenu!=null&&!this._columnVisibilityMenu.getDisposed()){var checkBoxArr=this._columnVisibilityMenu.getChildren();for(var i=checkBoxArr.length-1;i>=0;i++){var checkBox=checkBoxArr[i];this._columnVisibilityMenu.remove(checkBox);checkBox.dispose()};this._columnVisibilityMenu.dispose();this._columnVisibilityMenu=null}};qx.Proto._createColumnVisibilityCheckBoxHandler=function(col){return function(evt){var columnModel=this.getTableColumnModel();columnModel.setColumnVisible(col,!columnModel.isColumnVisible(col))}};qx.Proto.setColumnWidth=function(col,width){this.getTableColumnModel().setColumnWidth(col,width)};qx.Proto._changeInnerWidth=function(newValue,oldValue){var self=this;window.setTimeout(function(){self._updateScrollBarVisibility();qx.ui.core.Widget.flushGlobalQueues()},0);return qx.ui.layout.VerticalBoxLayout.prototype._changeInnerWidth.call(this,newValue,oldValue)};qx.Proto._changeInnerHeight=function(newValue,oldValue){var self=this;window.setTimeout(function(){self._updateScrollBarVisibility();qx.ui.core.Widget.flushGlobalQueues()},0);return qx.ui.layout.VerticalBoxLayout.prototype._changeInnerHeight.call(this,newValue,oldValue)};qx.Proto._afterAppear=function(){qx.ui.layout.VerticalBoxLayout.prototype._afterAppear.call(this);this._updateScrollBarVisibility()};qx.Proto.dispose=function(){if(this.getDisposed()){return true};if(this._tableModel){this._tableModel.removeEventListener(qx.ui.table.TableModel.EVENT_TYPE_META_DATA_CHANGED,this._onTableModelMetaDataChanged,this)};this._columnVisibilityBt.removeEventListener("execute",this._onColumnVisibilityBtExecuted,this);this._columnVisibilityBt.dispose();this._cleanupColumnVisibilityMenu();this._cleanUpMetaColumns(0);if(this._tableColumnModel){this._tableColumnModel.removeEventListener("visibilityChanged",this._onColVisibilityChanged,this);this._tableColumnModel.removeEventListener("widthChanged",this._onColWidthChanged,this);this._tableColumnModel.removeEventListener("orderChanged",this._onColOrderChanged,this)};return qx.ui.layout.VerticalBoxLayout.prototype.dispose.call(this)};qx.OO.defineClass("qx.ui.table.SelectionManager",qx.core.Object,function(){qx.core.Object.call(this)});qx.OO.addProperty({name:"selectionModel",type:qx.constant.Type.OBJECT,instance:"qx.ui.table.SelectionModel"});qx.Proto.handleMouseDown=function(index,evt){if(evt.isLeftButtonPressed()){var selectionModel=this.getSelectionModel();if(!selectionModel.isSelectedIndex(index)){this._handleSelectEvent(index,evt);this._lastMouseDownHandled=true}else{this._lastMouseDownHandled=false}}else if(evt.isRightButtonPressed()&&evt.getModifiers()==0){var selectionModel=this.getSelectionModel();if(!selectionModel.isSelectedIndex(index)){selectionModel.setSelectionInterval(index,index)}}};qx.Proto.handleMouseUp=function(index,evt){if(evt.isLeftButtonPressed()&&!this._lastMouseDownHandled){this._handleSelectEvent(index,evt)}};qx.Proto.handleClick=function(index,evt){};qx.Proto.handleSelectKeyDown=function(index,evt){this._handleSelectEvent(index,evt)};qx.Proto.handleMoveKeyDown=function(index,evt){var selectionModel=this.getSelectionModel();switch(evt.getModifiers()){case 0:selectionModel.setSelectionInterval(index,index);break;case qx.event.type.DomEvent.SHIFT_MASK:var anchor=selectionModel.getAnchorSelectionIndex();if(anchor==-1){selectionModel.setSelectionInterval(index,index)}else{selectionModel.setSelectionInterval(anchor,index)};break}};qx.Proto._handleSelectEvent=function(index,evt){var selectionModel=this.getSelectionModel();if(evt.getShiftKey()){var leadIndex=selectionModel.getLeadSelectionIndex();if(index!=leadIndex||selectionModel.isSelectionEmpty()){var anchorIndex=selectionModel.getAnchorSelectionIndex();if(evt.isCtrlOrCommandPressed()){selectionModel.addSelectionInterval(anchorIndex,index)}else{selectionModel.setSelectionInterval(anchorIndex,index)}}}else if(evt.isCtrlOrCommandPressed()){if(selectionModel.isSelectedIndex(index)){selectionModel.removeSelectionInterval(index,index)}else{selectionModel.addSelectionInterval(index,index)}}else{selectionModel.setSelectionInterval(index,index)}};qx.OO.defineClass("qx.ui.basic.VerticalSpacer",qx.ui.basic.Terminator,function(){qx.ui.basic.Terminator.call(this);this.setHeight(qx.constant.Core.FLEX)});qx.OO.defineClass("qx.ui.layout.DockLayout",qx.ui.core.Parent,function(){qx.ui.core.Parent.call(this)});qx.OO.addProperty({name:"mode",type:qx.constant.Type.STRING,defaultValue:qx.constant.Layout.ORIENTATION_VERTICAL,possibleValues:[qx.constant.Layout.ORIENTATION_VERTICAL,qx.constant.Layout.ORIENTATION_HORIZONTAL,"ordered"],addToQueueRuntime:true});qx.OO.changeProperty({name:"width",addToQueue:true,unitDetection:"pixelPercent"});qx.OO.changeProperty({name:"minWidth",defaultValue:-Infinity,addToQueue:true,unitDetection:"pixelPercent"});qx.OO.changeProperty({name:"minWidth",defaultValue:-Infinity,addToQueue:true,unitDetection:"pixelPercent"});qx.OO.changeProperty({name:"height",addToQueue:true,unitDetection:"pixelPercent"});qx.OO.changeProperty({name:"minHeight",defaultValue:-Infinity,addToQueue:true,unitDetection:"pixelPercent"});qx.OO.changeProperty({name:"minHeight",defaultValue:-Infinity,addToQueue:true,unitDetection:"pixelPercent"});qx.Proto._createLayoutImpl=function(){return new qx.renderer.layout.DockLayoutImpl(this)};qx.Proto.addLeft=function(){this._addAlignedHorizontal(qx.constant.Layout.ALIGN_LEFT,arguments)};qx.Proto.addRight=function(){this._addAlignedHorizontal(qx.constant.Layout.ALIGN_RIGHT,arguments)};qx.Proto.addTop=function(){this._addAlignedVertical(qx.constant.Layout.ALIGN_TOP,arguments)};qx.Proto.addBottom=function(){this._addAlignedVertical(qx.constant.Layout.ALIGN_BOTTOM,arguments)};qx.Proto._addAlignedVertical=function(vAlign,vArgs){for(var i=0,l=vArgs.length;i<l;i++){vArgs[i].setVerticalAlign(vAlign)};this.add.apply(this,vArgs)};qx.Proto._addAlignedHorizontal=function(vAlign,vArgs){for(var i=0,l=vArgs.length;i<l;i++){vArgs[i].setHorizontalAlign(vAlign)};this.add.apply(this,vArgs)};qx.OO.defineClass("qx.client.Builder",qx.core.Target,function(flags){qx.core.Target.call(this);this._propertyEditors={};this._registerDefaultPropertyEditors();this._flags=flags||{};if(this._flags.strict==null){this._flags.strict=true}});qx.Proto.buildFromUrl=function(parent,url){var req=new qx.io.remote.RemoteRequest(url,"GET","application/xml");var self=this;req.addEventListener("completed",function(e){self.build(parent,e.getData().getContent());qx.ui.core.Widget.flushGlobalQueues()});req.send()};qx.Proto.build=function(parent,node){if(typeof node=="object"&&node.nodeName=='TEXTAREA'){node=node.value};if(typeof node=="string"){var parser=new DOMParser();node=parser.parseFromString(node,"text/xml")};this._buildNodes(parent,node.childNodes)};qx.Proto._buildNodes=function(parent,nodes){var x=0;for(var i=0;i<nodes.length;i++){var n=nodes[i];if(n.nodeType==1){this._buildWidgetFromNode(parent,n)}}};qx.Proto._buildEventListener=function(widget,args,text){if(qx.util.Validation.isInvalidString(args.type)){throw this._newError('eventListener requires a string type attribute')};var self=this;if(qx.util.Validation.isValidString(args.delegate)){if(args.delegate.indexOf('.')>-1){var p=args.delegate.split('.');var o=p[0];var m=p[1];widget.addEventListener(args.type,function(e){if(!window[o]){throw self._newError('delegate not found',{delegate:args.delegate})};if(!window[o][m]){throw self._newError('delegate not found',{delegate:args.delegate})};window[o][m].apply(window[o],[e])})}else{widget.addEventListener(args.type,function(e){if(!window[args.delegate]){throw self._newError('delegate not found',{delegate:args.delegate})};window[args.delegate].apply(null,[e])})}}else{if(!args.args){args.args="event"};var f=new Function(args.args,text);widget.addEventListener(args.type,f)}};qx.Proto._buildWidgetFromNode=function(parent,node){var className=this._extractClassName(node);if(!className){throw this._newError("unrecognised node",{nodeName:node.nodeName})};if(className=="qx.client.builder.Container"){this._buildNodes(parent,node.childNodes);return};if(className=="qx.client.builder.Script"){var e=document.createElement("script");var attribs=this._mapXmlAttribToObject(node);if(attribs.type){e.type=attribs.type}else{e.type='text/javascript'};if(qx.sys.Client.getInstance().isMshtml()){e.innerHTML=eval(node.firstChild.nodeValue)}else{e.innerHTML=node.firstChild.nodeValue};document.body.appendChild(e);return};if(className=="qx.client.builder.EventListener"){var attribs=this._mapXmlAttribToObject(node);var text;if(node.firstChild){text=node.firstChild.nodeValue};this._buildEventListener(parent,attribs,text);return};var classConstructor=qx.OO.classes[className];if(!classConstructor){throw this._newError("constructor not found",{className:className})};var widget=new classConstructor();var attribs=this._mapXmlAttribToObject(node,widget);delete attribs['qxtype'];var dummyWidget=attribs.id&&attribs.id.indexOf(qx.constant.Core.UNDERLINE)==0;if(attribs.id){window[attribs.id]=widget;delete attribs.id};for(var a in attribs){if(a.toLowerCase().indexOf('on')==0&&a.length>2){var type=a.substring(2);type=type.charAt(0)+type.substring(1);this._buildEventListener(widget,{type:type,args:'event'},attribs[a]);delete attribs[a]}};for(var n in attribs){this._setWidgetProperty(widget,n,attribs[n])};if(!dummyWidget){parent.add(widget)};this._buildNodes(widget,node.childNodes)};qx.Proto._setWidgetProperty=function(widget,name,value){var editor=this._findPropertyEditor(widget.classname,name);if(!editor){editor=this._coercePropertyEditor};editor.set(widget,name,value)};qx.Proto._findPropertyEditor=function(className,propertyName){var m=this._propertyEditors[className];if(m&&m[propertyName]){return m[propertyName]};var w=qx.OO.classes[className];if(w&&w.superclass&&w.superclass.prototype.classname){return this._findPropertyEditor(w.superclass.prototype.classname,propertyName)};return null};qx.Proto.registerPropertyEditor=function(className,propertyName,editor){if(!this._propertyEditors[className])this._propertyEditors[className]={};this._propertyEditors[className][propertyName]=editor};qx.Proto._registerDefaultPropertyEditors=function(){var self=this;var commaDelimitedPropertyEditor={};commaDelimitedPropertyEditor.set=function(widget,name,value){if(value==null||value==""){self._setProperty(widget,name,null);return};var s=value.split(",");var v=[];for(var i=0;i<s.length;i++){v[i]=self._coerce(s[i])};self._setProperties(widget,name,v)};var evalPropertyEditor={};evalPropertyEditor.set=function(widget,name,value){if(value==null||value==""){self._setProperty(widget,name,null);return};self._setProperty(widget,name,eval(value))};var referencePropertyEditor={};referencePropertyEditor.set=function(widget,name,value){self._setProperty(widget,name,window[value])};this.registerPropertyEditor('qx.ui.core.Widget','location',commaDelimitedPropertyEditor);this.registerPropertyEditor('qx.ui.core.Widget','dimension',commaDelimitedPropertyEditor);this.registerPropertyEditor('qx.ui.core.Widget','space',commaDelimitedPropertyEditor);this.registerPropertyEditor('qx.ui.core.Widget','edge',commaDelimitedPropertyEditor);this.registerPropertyEditor('qx.ui.core.Widget','padding',commaDelimitedPropertyEditor);this.registerPropertyEditor('qx.ui.core.Widget','margin',commaDelimitedPropertyEditor);this.registerPropertyEditor('qx.ui.core.Widget','heights',commaDelimitedPropertyEditor);this.registerPropertyEditor('qx.ui.core.Widget','widths',commaDelimitedPropertyEditor);this.registerPropertyEditor('qx.ui.core.Widget','align',commaDelimitedPropertyEditor);this.registerPropertyEditor('qx.ui.core.Widget','stretch',commaDelimitedPropertyEditor);this.registerPropertyEditor('qx.ui.core.Widget','clipLocation',commaDelimitedPropertyEditor);this.registerPropertyEditor('qx.ui.core.Widget','clipDimension',commaDelimitedPropertyEditor);this.registerPropertyEditor('qx.ui.core.Widget','clip',commaDelimitedPropertyEditor);this.registerPropertyEditor('qx.ui.core.Widget','backgroundColor',evalPropertyEditor);this.registerPropertyEditor('qx.ui.core.Widget','color',evalPropertyEditor);this.registerPropertyEditor('qx.ui.core.Widget','border',evalPropertyEditor);this.registerPropertyEditor('qx.ui.menu.MenuButton','menu',referencePropertyEditor);this.registerPropertyEditor('qx.ui.form.RadioButton','manager',referencePropertyEditor);this.registerPropertyEditor('qx.ui.menu.MenuRadioButton','group',referencePropertyEditor);this._coercePropertyEditor={};this._coercePropertyEditor.set=function(widget,name,value){self._setProperty(widget,name,self._coerce(value))}};qx.Proto._coerce=function(value){if(value==null)return value;if(typeof value=='object')return value;if(typeof value=='function')return value;if(typeof value=='number')return value;if(typeof value=='boolean')return value;if(typeof value=='date')return value;if(typeof value=='array')return value;var n=new Number(value);if(!isNaN(n))return n.valueOf();if(value=="true")return true;if(value=="false")return false;var d=Date.parse(value);if(d!=null&&!isNaN(d))return d;if(typeof value=='string'){if(value=="")return null};return value};qx.Proto._setProperty=function(widget,name,value){this._setProperties(widget,name,[value])};qx.Proto._setProperties=function(widget,name,value){var n="set"+name;for(var a in widget){if(n==a.toLowerCase()){var setter=widget[a];break}};if(!setter&&this._flags.strict)throw this._newError('no setter defined on widget instance',{widget:widget,property:name});setter.apply(widget,value)};qx.Proto._extractClassName=function(node){if(node.nodeName.toUpperCase()=="DIV"){if(!node.attributes['qxtype'])return null;return node.attributes['qxtype'].value}else{return node.nodeName}};qx.Proto._mapXmlAttribToObject=function(node){var r={};var c=node.attributes;for(var i=0;i<c.length;i++){r[c[i].name.toLowerCase()]=c[i].value};return r};qx.Proto._newError=function(message,data,exception){var m=message;var joiner="";var d="";if(data){for(var p in data){d+=joiner+p+"="+data[p]+'';joiner=" "};m+=" "+d+" "};if(exception){m+=" error: "+exception+" "};return new Error(m)};qx.OO.defineClass("qx.ui.listview.ListViewContentCellText",qx.ui.embed.TextEmbed,function(vText){qx.ui.embed.TextEmbed.call(this,vText);this.setStyleProperty(qx.constant.Style.PROPERTY_WHITESPACE,"nowrap");this.setStyleProperty(qx.constant.Style.PROPERTY_OVERFLOW_TEXT,qx.constant.Style.OVERFLOW_ELLIPSIS);this.setSelectable(false)});qx.OO.changeProperty({name:"appearance",type:qx.constant.Type.STRING,defaultValue:"list-view-content-cell-text"});qx.ui.listview.ListViewContentCellText.empty={text:qx.constant.Core.EMPTY};