Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package
- {
- import flashx.textLayout.formats.TextLayoutFormat;
- import fl.text.TLFTextField;
- import flash.text.TextFieldAutoSize;
- import flash.text.TextFieldType;
- import flash.text.AntiAliasType;
- import flash.display.Sprite;
- import flash.text.TextFormat;
- import fl.transitions.Tween;
- import fl.transitions.easing.Elastic;
- import flash.text.Font;
- import flash.text.engine.*;
- import fl.data.DataProvider;
- import flash.events.MouseEvent;
- import flash.events.Event;
- import fl.events.ListEvent;
- import fl.events.ColorPickerEvent;
- import flash.geom.ColorTransform;
- public class Main extends Sprite
- {
- /* Variables */
- private var systemFonts:Array = new Array();
- private var fontNames:Array = new Array();
- private var tween:Tween;
- private var textLayoutFormat:TextLayoutFormat = new TextLayoutFormat();
- private var tlfTxt:TLFTextField = new TLFTextField();
- private var fmt:TextFormat = new TextFormat();
- public function Main()
- {
- showColorPicker(false);
- loadFonts();
- addListeners();
- testo();
- }
- /* Show or hide color picker (Text and Components) */
- private function testo():void
- {
- fmt.color = 0×000000;
- fmt.font = “Arial”;
- fmt.size = 50;
- tlfTxt.border = false;
- tlfTxt.multiline = false;
- tlfTxt.type = TextFieldType.INPUT;
- tlfTxt.antiAliasType = AntiAliasType.ADVANCED;
- tlfTxt.text = “FlashTuts+”;
- tlfTxt.setTextFormat(fmt);
- tlfTxt.wordWrap = false;
- tlfTxt.width = 300;
- tlfTxt.autoSize = TextFieldAutoSize.CENTER;
- tlfTxt.x = 150;
- tlfTxt.y = 130;
- addChild(tlfTxt);
- }
- private function showColorPicker(val:Boolean):void
- {
- bgColorText.visible = val;
- fontColorText.visible = val;
- bgColorPicker.visible = val;
- fontColorPicker.visible = val;
- }
- /* Load local fonts */
- private function loadFonts():void
- {
- systemFonts = Font.enumerateFonts(true);
- systemFonts.sortOn(“fontName”);
- /* Convert the Fonts Objects to Strings */
- for (var i:int = 0; i < systemFonts.length; i++)
- {
- fontNames.push(systemFonts[i].fontName);
- }
- /* Set List data */
- fontsMenu.fontsList.dataProvider = new DataProvider(fontNames);
- }
- /* Info button actions */
- private function showFonts(e:MouseEvent):void
- {
- tween = new Tween(fontsMenu,"x",Elastic.easeOut, – fontsMenu.width,stage.stageWidth / 2,1,true);
- //tween = new Tween(txt,"y",Elastic.easeOut,txt.y,txt.y + 85,1,true);
- e.target.visible = false;
- tween = new Tween(tlfTxt,"y",Elastic.easeOut,tlfTxt.y,tlfTxt.y + 85,1,true);
- showColorPicker(true);
- }
- /* Choose actions */
- private function onChange(e:Event):void
- {
- fmt.font = new String(e.target.selectedItem.data);
- fmt.color = "0x" + fontColorPicker.hexValue;
- tlfTxt.setTextFormat(fmt);
- //txt.setTextFormat(fmt);
- //trace(fmt.color);
- }
- private function choosed(e:ListEvent):void
- {
- infoButton.visible = true;
- tween = new Tween(fontsMenu,"x",Elastic.easeOut,stage.stageWidth / 2,stage.stageWidth + fontsMenu.width,2,true);
- //tween = new Tween(txt,"y",Elastic.easeOut,txt.y,txt.y – 85,1,true);
- tween = new Tween(tlfTxt,"y",Elastic.easeOut,tlfTxt.y,tlfTxt.y – 85,1,true);
- showColorPicker(false);
- }
- /* Cancel function */
- private function cancel(e:MouseEvent):void
- {
- infoButton.visible = true;
- tween = new Tween(fontsMenu,"x",Elastic.easeOut,stage.stageWidth / 2,stage.stageWidth + fontsMenu.width,2,true);
- //tween = new Tween(txt,"y",Elastic.easeOut,txt.y,txt.y – 85,1,true);
- tween = new Tween(tlfTxt,"y",Elastic.easeOut,tlfTxt.y,tlfTxt.y – 85,1,true);
- showColorPicker(false);
- }
- /* Handle color picker */
- private function changeFontColor(e:ColorPickerEvent):void
- {
- fmt.color = "0x" + fontColorPicker.hexValue;
- //txt.setTextFormat(fmt);
- tlfTxt.setTextFormat(fmt);
- }
- private function changeBgColor(e:ColorPickerEvent):void
- {
- var colorTransform:ColorTransform = new ColorTransform();
- colorTransform.color = int("0x" + bgColorPicker.hexValue);
- bg.transform.colorTransform = colorTransform;
- }
- private function addListeners():void
- {
- infoButton.addEventListener(MouseEvent.MOUSE_UP, showFonts);
- fontsMenu.fontsList.addEventListener(Event.CHANGE, onChange);
- fontsMenu.fontsList.addEventListener(ListEvent.ITEM_DOUBLE_CLICK, choosed);
- fontColorPicker.addEventListener(ColorPickerEvent.CHANGE, changeFontColor);
- bgColorPicker.addEventListener(ColorPickerEvent.CHANGE, changeBgColor);
- fontsMenu.closeBtn.addEventListener(MouseEvent.MOUSE_UP, cancel);
- }
- }
- }
Add Comment
Please, Sign In to add comment