Guest User

Untitled

a guest
Apr 17th, 2018
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. package
  2. {
  3. import flashx.textLayout.formats.TextLayoutFormat;
  4. import fl.text.TLFTextField;
  5. import flash.text.TextFieldAutoSize;
  6. import flash.text.TextFieldType;
  7. import flash.text.AntiAliasType;
  8. import flash.display.Sprite;
  9. import flash.text.TextFormat;
  10. import fl.transitions.Tween;
  11. import fl.transitions.easing.Elastic;
  12. import flash.text.Font;
  13. import flash.text.engine.*;
  14. import fl.data.DataProvider;
  15. import flash.events.MouseEvent;
  16. import flash.events.Event;
  17. import fl.events.ListEvent;
  18. import fl.events.ColorPickerEvent;
  19. import flash.geom.ColorTransform;
  20. public class Main extends Sprite
  21. {
  22. /* Variables */
  23. private var systemFonts:Array = new Array();
  24. private var fontNames:Array = new Array();
  25. private var tween:Tween;
  26. private var textLayoutFormat:TextLayoutFormat = new TextLayoutFormat();
  27. private var tlfTxt:TLFTextField = new TLFTextField();
  28. private var fmt:TextFormat = new TextFormat();
  29. public function Main()
  30. {
  31. showColorPicker(false);
  32. loadFonts();
  33. addListeners();
  34. testo();
  35. }
  36. /* Show or hide color picker (Text and Components) */
  37. private function testo():void
  38. {
  39. fmt.color = 0×000000;
  40. fmt.font = “Arial”;
  41. fmt.size = 50;
  42. tlfTxt.border = false;
  43. tlfTxt.multiline = false;
  44. tlfTxt.type = TextFieldType.INPUT;
  45. tlfTxt.antiAliasType = AntiAliasType.ADVANCED;
  46. tlfTxt.text = “FlashTuts+;
  47. tlfTxt.setTextFormat(fmt);
  48. tlfTxt.wordWrap = false;
  49. tlfTxt.width = 300;
  50. tlfTxt.autoSize = TextFieldAutoSize.CENTER;
  51. tlfTxt.x = 150;
  52. tlfTxt.y = 130;
  53. addChild(tlfTxt);
  54. }
  55. private function showColorPicker(val:Boolean):void
  56. {
  57. bgColorText.visible = val;
  58. fontColorText.visible = val;
  59. bgColorPicker.visible = val;
  60. fontColorPicker.visible = val;
  61. }
  62. /* Load local fonts */
  63. private function loadFonts():void
  64. {
  65. systemFonts = Font.enumerateFonts(true);
  66. systemFonts.sortOn(fontName);
  67. /* Convert the Fonts Objects to Strings */
  68. for (var i:int = 0; i < systemFonts.length; i++)
  69. {
  70. fontNames.push(systemFonts[i].fontName);
  71. }
  72. /* Set List data */
  73. fontsMenu.fontsList.dataProvider = new DataProvider(fontNames);
  74. }
  75. /* Info button actions */
  76. private function showFonts(e:MouseEvent):void
  77. {
  78. tween = new Tween(fontsMenu,"x",Elastic.easeOut, – fontsMenu.width,stage.stageWidth / 2,1,true);
  79. //tween = new Tween(txt,"y",Elastic.easeOut,txt.y,txt.y + 85,1,true);
  80. e.target.visible = false;
  81. tween = new Tween(tlfTxt,"y",Elastic.easeOut,tlfTxt.y,tlfTxt.y + 85,1,true);
  82. showColorPicker(true);
  83. }
  84. /* Choose actions */
  85. private function onChange(e:Event):void
  86. {
  87. fmt.font = new String(e.target.selectedItem.data);
  88. fmt.color = "0x" + fontColorPicker.hexValue;
  89. tlfTxt.setTextFormat(fmt);
  90. //txt.setTextFormat(fmt);
  91. //trace(fmt.color);
  92. }
  93. private function choosed(e:ListEvent):void
  94. {
  95. infoButton.visible = true;
  96. tween = new Tween(fontsMenu,"x",Elastic.easeOut,stage.stageWidth / 2,stage.stageWidth + fontsMenu.width,2,true);
  97. //tween = new Tween(txt,"y",Elastic.easeOut,txt.y,txt.y – 85,1,true);
  98. tween = new Tween(tlfTxt,"y",Elastic.easeOut,tlfTxt.y,tlfTxt.y85,1,true);
  99. showColorPicker(false);
  100. }
  101. /* Cancel function */
  102. private function cancel(e:MouseEvent):void
  103. {
  104. infoButton.visible = true;
  105. tween = new Tween(fontsMenu,"x",Elastic.easeOut,stage.stageWidth / 2,stage.stageWidth + fontsMenu.width,2,true);
  106. //tween = new Tween(txt,"y",Elastic.easeOut,txt.y,txt.y – 85,1,true);
  107. tween = new Tween(tlfTxt,"y",Elastic.easeOut,tlfTxt.y,tlfTxt.y85,1,true);
  108. showColorPicker(false);
  109. }
  110. /* Handle color picker */
  111. private function changeFontColor(e:ColorPickerEvent):void
  112. {
  113. fmt.color = "0x" + fontColorPicker.hexValue;
  114. //txt.setTextFormat(fmt);
  115. tlfTxt.setTextFormat(fmt);
  116. }
  117. private function changeBgColor(e:ColorPickerEvent):void
  118. {
  119. var colorTransform:ColorTransform = new ColorTransform();
  120. colorTransform.color = int("0x" + bgColorPicker.hexValue);
  121. bg.transform.colorTransform = colorTransform;
  122. }
  123. private function addListeners():void
  124. {
  125. infoButton.addEventListener(MouseEvent.MOUSE_UP, showFonts);
  126. fontsMenu.fontsList.addEventListener(Event.CHANGE, onChange);
  127. fontsMenu.fontsList.addEventListener(ListEvent.ITEM_DOUBLE_CLICK, choosed);
  128. fontColorPicker.addEventListener(ColorPickerEvent.CHANGE, changeFontColor);
  129. bgColorPicker.addEventListener(ColorPickerEvent.CHANGE, changeBgColor);
  130. fontsMenu.closeBtn.addEventListener(MouseEvent.MOUSE_UP, cancel);
  131. }
  132. }
  133. }
Add Comment
Please, Sign In to add comment