bounds:Rectangle [read-only]
| Language Version : | ActionScript 3.0 |
| Player Version : | Flash Player 10 |
The bounds of the mirror region, relative to the text line.
Implementation public function get bounds():Rectangleelement:ContentElement [read-only]
| Language Version : | ActionScript 3.0 |
| Player Version : | Flash Player 10 |
The ContentElement object from which the mirror region was derived.
Implementation public function get element():ContentElement Throws mirror:EventDispatcher [read-only]
| Language Version : | ActionScript 3.0 |
| Player Version : | Flash Player 10 |
The EventDispatcher object to which events affecting the mirror region are mirrored.
This includes mouse events that specifically occur in the mirror region, and all other events
that target the text line.
Implementation public function get mirror():EventDispatchernextRegion:TextLineMirrorRegion [read-only]
| Language Version : | ActionScript 3.0 |
| Player Version : | Flash Player 10 |
The next TextLineMirrorRegion in the set derived from the text element, or null if this is the last mirror region in the set.
May be on the same line or on another text line.
Implementation public function get nextRegion():TextLineMirrorRegionpreviousRegion:TextLineMirrorRegion [read-only]
| Language Version : | ActionScript 3.0 |
| Player Version : | Flash Player 10 |
The previous TextLineMirrorRegion in the set derived from the text element, or null if this is the first mirror region in the set.
May be on the same line or on another text line.
Implementation public function get previousRegion():TextLineMirrorRegiontextLine:TextLine [read-only]
| Language Version : | ActionScript 3.0 |
| Player Version : | Flash Player 10 |
The TextLine containing this mirror region.
Implementation public function get textLine():TextLinepackage {
import flash.display.Sprite;
import flash.text.engine.TextBlock;
import flash.text.engine.TextLine;
import flash.text.engine.TextElement;
import flash.text.engine.ElementFormat;
import flash.text.engine.FontDescription;
import flash.text.engine.ContentElement;
import flash.text.engine.GroupElement;
import flash.text.engine.TextLineMirrorRegion;
import flash.events.MouseEvent;
import flash.events.EventDispatcher;
import flash.ui.Mouse;
public class TextLineMirrorRegionExample extends Sprite {
var myEvent:EventDispatcher = new EventDispatcher();
var fontDescription:FontDescription = new FontDescription();
var textBlock:TextBlock = new TextBlock();
public function TextLineMirrorRegionExample():void {
fontDescription.fontWeight = "bold";
var blackFormat:ElementFormat = new ElementFormat();
blackFormat.fontSize = 18;
blackFormat.color = 0x000000;
blackFormat.fontDescription = fontDescription;
var textElement1 = new TextElement("Click on different parts of me to find the ", blackFormat);
var textElement2 = new TextElement("mirror regions",blackFormat);
var textElement3 = new TextElement(". If I am a mirror region, I'll ",blackFormat);
var textElement4 = new TextElement("turn red",blackFormat);
var textElement5 = new TextElement(".",blackFormat);
myEvent.addEventListener("click", clickHandler);
myEvent.addEventListener("mouseOut", mouseOutHandler);
myEvent.addEventListener("mouseOver", mouseOverHandler);
var groupVector:Vector.<ContentElement> = new Vector.<ContentElement>;
groupVector.push(textElement1, textElement2, textElement3, textElement4, textElement5);
var groupElement:GroupElement = new GroupElement(groupVector);
textElement2.eventMirror=myEvent;
textElement4.eventMirror=myEvent;
textBlock.content = groupElement;
createLines(textBlock);
}
private function clickHandler(event:MouseEvent):void
{
var redFormat:ElementFormat = new ElementFormat();
redFormat.color = 0xCC0000;
redFormat.fontSize = 18;
redFormat.fontDescription = fontDescription;
var line:TextLine = event.target as TextLine;
var region:TextLineMirrorRegion = line.getMirrorRegion(myEvent);
region.element.elementFormat = redFormat;
createLines(textBlock);
}
private function mouseOverHandler(event:MouseEvent):void
{
Mouse.cursor = "button";
}
private function mouseOutHandler(event:MouseEvent):void
{
Mouse.cursor = "arrow";
}
private function createLines(textBlock:TextBlock):void
{
var purgeLine:TextLine = textBlock.firstLine;
while (purgeLine)
{
removeChild (purgeLine);
purgeLine = purgeLine.nextLine;
}
var lineWidth:Number = 150;
var xPos:Number = 15.0;
var yPos:Number = 20.0;
var textLine:TextLine = textBlock.createTextLine (null, lineWidth);
while (textLine)
{
textLine.x = xPos;
textLine.y = yPos;
yPos += textLine.height + 2;
addChild (textLine);
textLine = textBlock.createTextLine (textLine, lineWidth);
}
}
}
}