function Text(page, id,pos,size,free,layerZone){this.page= page;this.app= this.page.app;if(this.app.texts[id]){return this.app.texts[id]}
this.id= id;this.type= TEXT_TYPE;this.index= this.app.texts.length
this.appObjectModelPath= APP_NAME + ".texts[" + this.index + "]"
this.pos= (!pos?this.app.WORKSPACE_COORD1.getCopy():pos.getCopy());this.shadowPos= new Coord(this.pos.x+1,this.pos.y+1)
this.size= (!size?this.app.WORKSPACE_SIZE.getCopy():size.getCopy());this.html= "";this.locked= false;this.visible= false;this.clear= clearText
this.hide= hideText
this.show= showText
this.finishShowOrHide= finishShowOrHide
this.finishShowOrHideCode= ""
this.moveTo= moveToText
this.resize= resizeText
this.fade= fadeText;this.rewrite= rewriteText
this.shadow= this.app.createLayer(page, id + "Shadow", this.shadowPos, this.size,"",false,(free?layerZone:EMBEDDED_TEXTS_ZINDEX_ZONE));this.text= this.app.createLayer(page, id + "Text", this.pos, this.size,"",false,(free?layerZone:EMBEDDED_TEXTS_ZINDEX_ZONE));this.text.brother= this.shadow;this.shadow.brother= this.text;this.text.ownerObject= this.shadow.ownerObject= this;if(!free){this.shadow.setScrClip( WORKSPACE_TOP,WORKSPACE_BOTTOM,WORKSPACE_LEFT,WORKSPACE_RIGHT); this.text.setScrClip( WORKSPACE_TOP,WORKSPACE_BOTTOM,WORKSPACE_LEFT,WORKSPACE_RIGHT)}
this.setColor= setColorText;if(ns4){this.text.alwaysVisible= true;this.shadow.alwaysVisible= true}
this.app.texts[id]= this.app.texts[this.app.texts.length]= this
return this}
function setColorText(color){this.shadow.setColor(color)}
function clearText(){this.html="";this.text.clear();this.shadow.clear()}
function hideText(noFade){this.hiding= true;if(!noFade && ns4 && this.html){this.text.fadeText(FADE_MAINTEXT_COLOR2,FADE_TEXT_COLOR1,parseInt(FADE_STEPS/2,10));this.shadow.fadeText(FADE_SHADOWTEXT_COLOR2,FADE_TEXT_COLOR1,parseInt(FADE_STEPS/2,10))}else{this.finishShowOrHide(noFade)}}
function showText(noShadow,noFade){if(!this.visible){this.showing= true;var steps= (ns4?(noFade?0:FADE_STEPS):0);this.usingShadow= (!noShadow);this.text.show(noFade);if(!noShadow)this.shadow.show(noFade);this.text.fadeText(FADE_TEXT_COLOR1,FADE_MAINTEXT_COLOR2,steps,this.html)
if(!noShadow)this.shadow.fadeText(FADE_TEXT_COLOR1,FADE_SHADOWTEXT_COLOR2,steps,this.html)}}
function finishShowOrHide(noFade){if(this.hiding){this.clear();this.text.hide(noFade);if(this.shadow)this.shadow.hide(noFade);this.visible= false}else{this.visible= true}
this.showing=false;this.hiding=false}
function moveToText(){var x;var y;if(arguments.length==1){x= arguments[0].x
y= arguments[0].y}else{x= arguments[0]
y= arguments[1]}
this.text.moveTo(x,y);this.shadow.moveTo(x+1,y+1)}
function resizeText(){this.text.resize(arguments[0],arguments[1]);this.shadow.resize(arguments[0],arguments[1])}
function rewriteText(t){this.text.rewrite(t);this.shadow.rewrite(t)}
