mako 0.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (391) hide show
  1. data/bin/mako +133 -0
  2. data/lib/mako/build.rb +336 -0
  3. data/lib/mako/data/flash_widget_dev_core/Dependencies.txt +10 -0
  4. data/lib/mako/data/flash_widget_dev_core/libs/Degrafa_.2.11.swc +0 -0
  5. data/lib/mako/data/flash_widget_dev_core/libs/KogneatoGraphics.swc +0 -0
  6. data/lib/mako/data/flash_widget_dev_core/libs/KogneatoSymbols.swc +0 -0
  7. data/lib/mako/data/flash_widget_dev_core/libs/flash.swc +0 -0
  8. data/lib/mako/data/flash_widget_dev_core/src/assets/images/RichTextEditor.png +0 -0
  9. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/fonts/ARLRDBD.TTF +0 -0
  10. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/fonts/FTD_____.TTF +0 -0
  11. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/fonts/verdana.ttf +0 -0
  12. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/fonts/verdanab.ttf +0 -0
  13. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/fonts/verdanai.ttf +0 -0
  14. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/fonts/verdanaz.ttf +0 -0
  15. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/DefaultError.png +0 -0
  16. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/barbgfill.png +0 -0
  17. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/barshadow.png +0 -0
  18. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/bold.png +0 -0
  19. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/bullets.png +0 -0
  20. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/center.png +0 -0
  21. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/close-x.png +0 -0
  22. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/fullscreenPopup_close.png +0 -0
  23. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/gameTypeIcons/mc.png +0 -0
  24. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/gameTypeIcons/mc2.png +0 -0
  25. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/gameTypeIcons/mc3.png +0 -0
  26. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/gameTypeIcons/qa.png +0 -0
  27. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/gameTypeIcons/so.png +0 -0
  28. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/importIcon.png +0 -0
  29. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/italic.png +0 -0
  30. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/justify.png +0 -0
  31. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/kogLogo.png +0 -0
  32. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/left.png +0 -0
  33. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/oml-href-disabled.png +0 -0
  34. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/oml-href.png +0 -0
  35. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/oml-pagelink-disabled.png +0 -0
  36. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/oml-pagelink.png +0 -0
  37. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/oml-tooltip-delete.png +0 -0
  38. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/oml-tooltip-disabled.png +0 -0
  39. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/oml-tooltip-edit.png +0 -0
  40. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/oml-tooltip.png +0 -0
  41. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/pencil.png +0 -0
  42. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/right.png +0 -0
  43. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/underline.png +0 -0
  44. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/videoPlayButton.png +0 -0
  45. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/videoPlayerPauseButton.png +0 -0
  46. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/videoPlayerPauseButton_over.png +0 -0
  47. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/videoPlayerPlayButton.png +0 -0
  48. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/videoPlayerPlayButton_over.png +0 -0
  49. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/videoPlayerSoundButton.png +0 -0
  50. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/images/videoPlayerSoundButton_over.png +0 -0
  51. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/styles/creatorStyle.css +57 -0
  52. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/styles/style.css +929 -0
  53. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/swf/embeddedfonts.swf +0 -0
  54. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/swf/helpBubble.swf +0 -0
  55. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/swf/kogneatoSymbols.swf +0 -0
  56. data/lib/mako/data/flash_widget_dev_core/src/assets/materia/swf/videobg.swf +0 -0
  57. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/LICENSE.txt +27 -0
  58. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/ac/mxeffects/CubeRotate.as +48 -0
  59. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/ac/mxeffects/Distortion.as +168 -0
  60. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/ac/mxeffects/DistortionConstants.as +16 -0
  61. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/ac/mxeffects/Door.as +57 -0
  62. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/ac/mxeffects/Flip.as +62 -0
  63. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/ac/mxeffects/Gate.as +57 -0
  64. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/ac/mxeffects/Pop.as +53 -0
  65. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/ac/mxeffects/Push.as +48 -0
  66. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/ac/mxeffects/SimpleDistortion.as +619 -0
  67. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/ac/mxeffects/effectClasses/CubeRotateInstance.as +94 -0
  68. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/ac/mxeffects/effectClasses/DistortBaseInstance.as +258 -0
  69. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/ac/mxeffects/effectClasses/DoorInstance.as +116 -0
  70. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/ac/mxeffects/effectClasses/FlipInstance.as +79 -0
  71. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/ac/mxeffects/effectClasses/GateInstance.as +163 -0
  72. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/ac/mxeffects/effectClasses/PopInstance.as +91 -0
  73. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/ac/mxeffects/effectClasses/PushInstance.as +76 -0
  74. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/ac/util/DisplayObjectBounds.as +64 -0
  75. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/ac/util/DisplayObjectBoundsUtil.as +42 -0
  76. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/ac/util/SimpleDisplayObjectBoundsUtil.as +60 -0
  77. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/crypto/HMAC.as +108 -0
  78. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/crypto/MD5.as +250 -0
  79. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/crypto/MD5Stream.as +343 -0
  80. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/crypto/SHA1.as +250 -0
  81. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/crypto/SHA224.as +226 -0
  82. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/crypto/SHA256.as +229 -0
  83. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/crypto/WSSEUsernameToken.as +100 -0
  84. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/effects/SaturationFade.as +107 -0
  85. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/effects/SaturationFadeInstance.as +178 -0
  86. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/effects/SaturationFadePopUpBlocker.as +88 -0
  87. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/errors/IllegalStateError.as +57 -0
  88. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/fileformats/vcard/Address.as +41 -0
  89. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/fileformats/vcard/Email.as +34 -0
  90. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/fileformats/vcard/Phone.as +34 -0
  91. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/fileformats/vcard/VCard.as +47 -0
  92. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/fileformats/vcard/VCardParser.as +234 -0
  93. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/images/BitString.as +34 -0
  94. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/images/JPGEncoder.as +584 -0
  95. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/images/PNGEncoder.as +133 -0
  96. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/net/DynamicURLLoader.as +48 -0
  97. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/net/IURIResolver.as +70 -0
  98. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/net/MimeTypeMap.as +192 -0
  99. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/net/URI.as +2139 -0
  100. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/net/URIEncodingBitmap.as +122 -0
  101. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/net/proxies/RFC2817Socket.as +179 -0
  102. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/protocols/dict/Database.as +55 -0
  103. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/protocols/dict/Definition.as +59 -0
  104. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/protocols/dict/Dict.as +322 -0
  105. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/protocols/dict/DictionaryServer.as +50 -0
  106. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/protocols/dict/MatchStrategy.as +55 -0
  107. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/protocols/dict/Response.as +59 -0
  108. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/protocols/dict/events/ConnectedEvent.as +44 -0
  109. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/protocols/dict/events/DatabaseEvent.as +54 -0
  110. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/protocols/dict/events/DefinitionEvent.as +55 -0
  111. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/protocols/dict/events/DefinitionHeaderEvent.as +55 -0
  112. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/protocols/dict/events/DictionaryServerEvent.as +55 -0
  113. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/protocols/dict/events/DisconnectedEvent.as +44 -0
  114. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/protocols/dict/events/ErrorEvent.as +64 -0
  115. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/protocols/dict/events/MatchEvent.as +54 -0
  116. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/protocols/dict/events/MatchStrategiesEvent.as +56 -0
  117. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/protocols/dict/events/NoMatchEvent.as +44 -0
  118. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/protocols/dict/util/CompleteResponseEvent.as +55 -0
  119. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/protocols/dict/util/SocketHelper.as +70 -0
  120. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/serialization/json/JSON.as +76 -0
  121. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/serialization/json/JSONDecoder.as +303 -0
  122. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/serialization/json/JSONEncoder.as +277 -0
  123. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/serialization/json/JSONParseError.as +79 -0
  124. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/serialization/json/JSONToken.as +79 -0
  125. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/serialization/json/JSONTokenType.as +49 -0
  126. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/serialization/json/JSONTokenizer.as +605 -0
  127. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/utils/ArrayUtil.as +166 -0
  128. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/utils/DateUtil.as +657 -0
  129. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/utils/DictionaryUtil.as +73 -0
  130. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/utils/IntUtil.as +85 -0
  131. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/utils/NumberFormatter.as +63 -0
  132. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/utils/StringUtil.as +220 -0
  133. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/utils/XMLUtil.as +148 -0
  134. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/webapis/ServiceBase.as +39 -0
  135. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/webapis/URLLoaderBase.as +93 -0
  136. data/lib/mako/data/flash_widget_dev_core/src/com/adobe/webapis/events/ServiceEvent.as +67 -0
  137. data/lib/mako/data/flash_widget_dev_core/src/com/gskinner/geom/ColorMatrix.as +1 -0
  138. data/lib/mako/data/flash_widget_dev_core/src/com/gskinner/motion/GTween.as +1 -0
  139. data/lib/mako/data/flash_widget_dev_core/src/com/gskinner/motion/GTweenTimeline.as +1 -0
  140. data/lib/mako/data/flash_widget_dev_core/src/com/gskinner/motion/GTweener.as +1 -0
  141. data/lib/mako/data/flash_widget_dev_core/src/com/gskinner/motion/easing/Back.as +1 -0
  142. data/lib/mako/data/flash_widget_dev_core/src/com/gskinner/motion/easing/Bounce.as +1 -0
  143. data/lib/mako/data/flash_widget_dev_core/src/com/gskinner/motion/easing/Circular.as +1 -0
  144. data/lib/mako/data/flash_widget_dev_core/src/com/gskinner/motion/easing/Cubic.as +1 -0
  145. data/lib/mako/data/flash_widget_dev_core/src/com/gskinner/motion/easing/Elastic.as +1 -0
  146. data/lib/mako/data/flash_widget_dev_core/src/com/gskinner/motion/easing/Exponential.as +1 -0
  147. data/lib/mako/data/flash_widget_dev_core/src/com/gskinner/motion/easing/Linear.as +1 -0
  148. data/lib/mako/data/flash_widget_dev_core/src/com/gskinner/motion/easing/Quadratic.as +1 -0
  149. data/lib/mako/data/flash_widget_dev_core/src/com/gskinner/motion/easing/Quartic.as +1 -0
  150. data/lib/mako/data/flash_widget_dev_core/src/com/gskinner/motion/easing/Quintic.as +1 -0
  151. data/lib/mako/data/flash_widget_dev_core/src/com/gskinner/motion/easing/Sine.as +1 -0
  152. data/lib/mako/data/flash_widget_dev_core/src/com/gskinner/motion/plugins/AutoHidePlugin.as +1 -0
  153. data/lib/mako/data/flash_widget_dev_core/src/com/gskinner/motion/plugins/BlurPlugin.as +1 -0
  154. data/lib/mako/data/flash_widget_dev_core/src/com/gskinner/motion/plugins/ColorAdjustPlugin.as +1 -0
  155. data/lib/mako/data/flash_widget_dev_core/src/com/gskinner/motion/plugins/ColorTransformPlugin.as +1 -0
  156. data/lib/mako/data/flash_widget_dev_core/src/com/gskinner/motion/plugins/CurrentFramePlugin.as +1 -0
  157. data/lib/mako/data/flash_widget_dev_core/src/com/gskinner/motion/plugins/IGTweenPlugin.as +1 -0
  158. data/lib/mako/data/flash_widget_dev_core/src/com/gskinner/motion/plugins/MatrixPlugin.as +1 -0
  159. data/lib/mako/data/flash_widget_dev_core/src/com/gskinner/motion/plugins/MotionBlurPlugin.as +1 -0
  160. data/lib/mako/data/flash_widget_dev_core/src/com/gskinner/motion/plugins/SmartRotationPlugin.as +1 -0
  161. data/lib/mako/data/flash_widget_dev_core/src/com/gskinner/motion/plugins/SnappingPlugin.as +1 -0
  162. data/lib/mako/data/flash_widget_dev_core/src/com/gskinner/motion/plugins/SoundTransformPlugin.as +1 -0
  163. data/lib/mako/data/flash_widget_dev_core/src/com/gskinner/utils/SWFBridgeAS3.as +83 -0
  164. data/lib/mako/data/flash_widget_dev_core/src/etc/GUID.as +82 -0
  165. data/lib/mako/data/flash_widget_dev_core/src/etc/MathExt.as +114 -0
  166. data/lib/mako/data/flash_widget_dev_core/src/gs/OverwriteManager.as +143 -0
  167. data/lib/mako/data/flash_widget_dev_core/src/gs/TweenFilterLite.as +502 -0
  168. data/lib/mako/data/flash_widget_dev_core/src/gs/TweenLite.as +512 -0
  169. data/lib/mako/data/flash_widget_dev_core/src/gs/TweenMax.as +987 -0
  170. data/lib/mako/data/flash_widget_dev_core/src/gs/easing/Back.as +14 -0
  171. data/lib/mako/data/flash_widget_dev_core/src/gs/easing/Bounce.as +22 -0
  172. data/lib/mako/data/flash_widget_dev_core/src/gs/easing/Circ.as +14 -0
  173. data/lib/mako/data/flash_widget_dev_core/src/gs/easing/Cubic.as +14 -0
  174. data/lib/mako/data/flash_widget_dev_core/src/gs/easing/Elastic.as +27 -0
  175. data/lib/mako/data/flash_widget_dev_core/src/gs/easing/Expo.as +16 -0
  176. data/lib/mako/data/flash_widget_dev_core/src/gs/easing/Linear.as +16 -0
  177. data/lib/mako/data/flash_widget_dev_core/src/gs/easing/Quad.as +14 -0
  178. data/lib/mako/data/flash_widget_dev_core/src/gs/easing/Quart.as +14 -0
  179. data/lib/mako/data/flash_widget_dev_core/src/gs/easing/Quint.as +14 -0
  180. data/lib/mako/data/flash_widget_dev_core/src/gs/easing/Sine.as +14 -0
  181. data/lib/mako/data/flash_widget_dev_core/src/gs/easing/Strong.as +14 -0
  182. data/lib/mako/data/flash_widget_dev_core/src/gs/easing/easing_readme.txt +14 -0
  183. data/lib/mako/data/flash_widget_dev_core/src/gs/events/TweenEvent.as +26 -0
  184. data/lib/mako/data/flash_widget_dev_core/src/gs/utils/tween/BevelFilterVars.as +63 -0
  185. data/lib/mako/data/flash_widget_dev_core/src/gs/utils/tween/BlurFilterVars.as +42 -0
  186. data/lib/mako/data/flash_widget_dev_core/src/gs/utils/tween/ColorMatrixFilterVars.as +86 -0
  187. data/lib/mako/data/flash_widget_dev_core/src/gs/utils/tween/DropShadowFilterVars.as +66 -0
  188. data/lib/mako/data/flash_widget_dev_core/src/gs/utils/tween/GlowFilterVars.as +57 -0
  189. data/lib/mako/data/flash_widget_dev_core/src/gs/utils/tween/TweenFilterLiteVars.as +93 -0
  190. data/lib/mako/data/flash_widget_dev_core/src/gs/utils/tween/TweenLiteVars.as +269 -0
  191. data/lib/mako/data/flash_widget_dev_core/src/gs/utils/tween/TweenMaxVars.as +103 -0
  192. data/lib/mako/data/flash_widget_dev_core/src/it/animation/TweenEvent.as +17 -0
  193. data/lib/mako/data/flash_widget_dev_core/src/it/animation/TweenObject.as +27 -0
  194. data/lib/mako/data/flash_widget_dev_core/src/it/animation/TweenSingleton.as +86 -0
  195. data/lib/mako/data/flash_widget_dev_core/src/it/animation/methods/Constant.as +7 -0
  196. data/lib/mako/data/flash_widget_dev_core/src/it/animation/methods/FastSlow.as +7 -0
  197. data/lib/mako/data/flash_widget_dev_core/src/it/animation/methods/FastSlowFast.as +8 -0
  198. data/lib/mako/data/flash_widget_dev_core/src/it/animation/methods/Shake.as +12 -0
  199. data/lib/mako/data/flash_widget_dev_core/src/it/animation/methods/SlowFast.as +7 -0
  200. data/lib/mako/data/flash_widget_dev_core/src/it/animation/methods/SlowFastSlow.as +8 -0
  201. data/lib/mako/data/flash_widget_dev_core/src/jac/image/ImageUtils.as +173 -0
  202. data/lib/mako/data/flash_widget_dev_core/src/jac/image/ResizeStyle.as +52 -0
  203. data/lib/mako/data/flash_widget_dev_core/src/materia/CreatorBase.mxml +504 -0
  204. data/lib/mako/data/flash_widget_dev_core/src/materia/CreatorConfig.as +45 -0
  205. data/lib/mako/data/flash_widget_dev_core/src/materia/CreatorEvents.as +38 -0
  206. data/lib/mako/data/flash_widget_dev_core/src/materia/Dialog.as +35 -0
  207. data/lib/mako/data/flash_widget_dev_core/src/materia/MateriaButton.as +35 -0
  208. data/lib/mako/data/flash_widget_dev_core/src/materia/PopUpAlert.mxml +271 -0
  209. data/lib/mako/data/flash_widget_dev_core/src/materia/components/GradientBackground.as +41 -0
  210. data/lib/mako/data/flash_widget_dev_core/src/materia/components/PercentField.mxml +104 -0
  211. data/lib/mako/data/flash_widget_dev_core/src/materia/components/ScrollableSizableImage.mxml +654 -0
  212. data/lib/mako/data/flash_widget_dev_core/src/materia/components/TextAreaWithDefaultText.mxml +94 -0
  213. data/lib/mako/data/flash_widget_dev_core/src/materia/components/TextInputWithDefaultText.mxml +94 -0
  214. data/lib/mako/data/flash_widget_dev_core/src/materia/components/VertCenterTextRenderer.mxml +37 -0
  215. data/lib/mako/data/flash_widget_dev_core/src/materia/components/importer/ImportEvent.as +22 -0
  216. data/lib/mako/data/flash_widget_dev_core/src/materia/components/importer/itemRenderers/CheckBoxColumn.mxml +23 -0
  217. data/lib/mako/data/flash_widget_dev_core/src/materia/components/importer/questions/QuestionDetails.mxml +68 -0
  218. data/lib/mako/data/flash_widget_dev_core/src/materia/components/importer/questions/QuestionDisplay.mxml +38 -0
  219. data/lib/mako/data/flash_widget_dev_core/src/materia/components/importer/questions/QuestionsDataGrid.mxml +247 -0
  220. data/lib/mako/data/flash_widget_dev_core/src/materia/components/importer/questions/QuestionsDataGridEvent.as +20 -0
  221. data/lib/mako/data/flash_widget_dev_core/src/materia/components/questionAnswerDataGrid/QuestionAnswerColumn.as +13 -0
  222. data/lib/mako/data/flash_widget_dev_core/src/materia/components/questionAnswerDataGrid/QuestionAnswerDataGrid.mxml +692 -0
  223. data/lib/mako/data/flash_widget_dev_core/src/materia/components/questionAnswerDataGrid/TextInputItem.mxml +584 -0
  224. data/lib/mako/data/flash_widget_dev_core/src/materia/components/questionAnswerDataGrid/TextInputObject.as +28 -0
  225. data/lib/mako/data/flash_widget_dev_core/src/materia/components/toolTips/KogneatoToolTip.as +196 -0
  226. data/lib/mako/data/flash_widget_dev_core/src/materia/components/toolTips/TipManager.as +150 -0
  227. data/lib/mako/data/flash_widget_dev_core/src/materia/help/HelpBubble.mxml +245 -0
  228. data/lib/mako/data/flash_widget_dev_core/src/materia/help/HelpDot.mxml +21 -0
  229. data/lib/mako/data/flash_widget_dev_core/src/materia/help/HelpManager.as +92 -0
  230. data/lib/mako/data/flash_widget_dev_core/src/materia/help/HelpObject.as +33 -0
  231. data/lib/mako/data/flash_widget_dev_core/src/materia/help/IHelpGuided.as +7 -0
  232. data/lib/mako/data/flash_widget_dev_core/src/materia/media/ImageCacherImage.mxml +56 -0
  233. data/lib/mako/data/flash_widget_dev_core/src/materia/media/MateriaUploader.as +61 -0
  234. data/lib/mako/data/flash_widget_dev_core/src/materia/questionStorage/Question.as +386 -0
  235. data/lib/mako/data/flash_widget_dev_core/src/materia/questionStorage/QuestionGroup.as +313 -0
  236. data/lib/mako/data/flash_widget_dev_core/src/materia/questionStorage/QuestionSet.as +21 -0
  237. data/lib/mako/data/flash_widget_dev_core/src/materia/toolTips/KogneatoToolTip.as +196 -0
  238. data/lib/mako/data/flash_widget_dev_core/src/materia/toolTips/TipManager.as +150 -0
  239. data/lib/mako/data/flash_widget_dev_core/src/materia/utils/CommonUtils.as +186 -0
  240. data/lib/mako/data/flash_widget_dev_core/src/materia/utils/DateUtils.as +273 -0
  241. data/lib/mako/data/flash_widget_dev_core/src/materia/utils/ImageCacher.as +93 -0
  242. data/lib/mako/data/flash_widget_dev_core/src/nm/arrays/Randomize.as +19 -0
  243. data/lib/mako/data/flash_widget_dev_core/src/nm/arrays/SimpleClone.as +32 -0
  244. data/lib/mako/data/flash_widget_dev_core/src/nm/draw/Color.as +102 -0
  245. data/lib/mako/data/flash_widget_dev_core/src/nm/draw/Draw.as +65 -0
  246. data/lib/mako/data/flash_widget_dev_core/src/nm/draw/lines/Dashed.as +48 -0
  247. data/lib/mako/data/flash_widget_dev_core/src/nm/draw/lines/Dotted.as +83 -0
  248. data/lib/mako/data/flash_widget_dev_core/src/nm/draw/shapes/Check.as +27 -0
  249. data/lib/mako/data/flash_widget_dev_core/src/nm/draw/shapes/Rect.as +12 -0
  250. data/lib/mako/data/flash_widget_dev_core/src/nm/draw/shapes/RectBevel.as +35 -0
  251. data/lib/mako/data/flash_widget_dev_core/src/nm/draw/shapes/RectBorder.as +39 -0
  252. data/lib/mako/data/flash_widget_dev_core/src/nm/draw/shapes/RectRound.as +33 -0
  253. data/lib/mako/data/flash_widget_dev_core/src/nm/draw/shapes/RectRoundBorder.as +62 -0
  254. data/lib/mako/data/flash_widget_dev_core/src/nm/draw/shapes/TriangleEquilateral.as +25 -0
  255. data/lib/mako/data/flash_widget_dev_core/src/nm/draw/shapes/X.as +28 -0
  256. data/lib/mako/data/flash_widget_dev_core/src/nm/errors/ScoringError.as +10 -0
  257. data/lib/mako/data/flash_widget_dev_core/src/nm/errors/StorageError.as +10 -0
  258. data/lib/mako/data/flash_widget_dev_core/src/nm/events/ButtonEvent.as +25 -0
  259. data/lib/mako/data/flash_widget_dev_core/src/nm/events/PayloadEvent.as +14 -0
  260. data/lib/mako/data/flash_widget_dev_core/src/nm/events/StandardEvent.as +26 -0
  261. data/lib/mako/data/flash_widget_dev_core/src/nm/gameServ/common/Question.as +72 -0
  262. data/lib/mako/data/flash_widget_dev_core/src/nm/gameServ/common/QuestionGroup.as +87 -0
  263. data/lib/mako/data/flash_widget_dev_core/src/nm/gameServ/common/QuestionSet.as +35 -0
  264. data/lib/mako/data/flash_widget_dev_core/src/nm/gameServ/common/WidgetSettings.as +14 -0
  265. data/lib/mako/data/flash_widget_dev_core/src/nm/gameServ/common/coms/ServerEvents.as +17 -0
  266. data/lib/mako/data/flash_widget_dev_core/src/nm/gameServ/common/coms/ServerMessageEvent.as +31 -0
  267. data/lib/mako/data/flash_widget_dev_core/src/nm/gameServ/common/logging/Log.as +92 -0
  268. data/lib/mako/data/flash_widget_dev_core/src/nm/gameServ/common/scoring/Scoring.as +87 -0
  269. data/lib/mako/data/flash_widget_dev_core/src/nm/gameServ/common/storage/StorageManager.as +91 -0
  270. data/lib/mako/data/flash_widget_dev_core/src/nm/gameServ/common/storage/StorageTable.as +72 -0
  271. data/lib/mako/data/flash_widget_dev_core/src/nm/gameServ/engines/EngineCore.as +222 -0
  272. data/lib/mako/data/flash_widget_dev_core/src/nm/geom/Dimension.as +76 -0
  273. data/lib/mako/data/flash_widget_dev_core/src/nm/respondus/Respondus.as +612 -0
  274. data/lib/mako/data/flash_widget_dev_core/src/nm/respondus/RespondusAnswer.as +11 -0
  275. data/lib/mako/data/flash_widget_dev_core/src/nm/respondus/RespondusError.as +18 -0
  276. data/lib/mako/data/flash_widget_dev_core/src/nm/respondus/RespondusQuestion.as +43 -0
  277. data/lib/mako/data/flash_widget_dev_core/src/nm/respondus/RespondusQuiz.as +68 -0
  278. data/lib/mako/data/flash_widget_dev_core/src/nm/ui/AlertWindow.as +182 -0
  279. data/lib/mako/data/flash_widget_dev_core/src/nm/ui/BlueButton.as +102 -0
  280. data/lib/mako/data/flash_widget_dev_core/src/nm/ui/Button.as +88 -0
  281. data/lib/mako/data/flash_widget_dev_core/src/nm/ui/Button_base.as +168 -0
  282. data/lib/mako/data/flash_widget_dev_core/src/nm/ui/Component.as +98 -0
  283. data/lib/mako/data/flash_widget_dev_core/src/nm/ui/ContentBlocker.as +38 -0
  284. data/lib/mako/data/flash_widget_dev_core/src/nm/ui/FlexUIScaler.as +59 -0
  285. data/lib/mako/data/flash_widget_dev_core/src/nm/ui/FormInput.as +191 -0
  286. data/lib/mako/data/flash_widget_dev_core/src/nm/ui/GrabZoomClip.as +305 -0
  287. data/lib/mako/data/flash_widget_dev_core/src/nm/ui/HelpLayer.as +55 -0
  288. data/lib/mako/data/flash_widget_dev_core/src/nm/ui/Label.as +25 -0
  289. data/lib/mako/data/flash_widget_dev_core/src/nm/ui/List.as +62 -0
  290. data/lib/mako/data/flash_widget_dev_core/src/nm/ui/List_Base.as +644 -0
  291. data/lib/mako/data/flash_widget_dev_core/src/nm/ui/ProcessingBar.as +112 -0
  292. data/lib/mako/data/flash_widget_dev_core/src/nm/ui/ProgressBar.as +35 -0
  293. data/lib/mako/data/flash_widget_dev_core/src/nm/ui/ProgressBar_base.as +69 -0
  294. data/lib/mako/data/flash_widget_dev_core/src/nm/ui/ScrollBar.as +163 -0
  295. data/lib/mako/data/flash_widget_dev_core/src/nm/ui/ScrollBar_base.as +378 -0
  296. data/lib/mako/data/flash_widget_dev_core/src/nm/ui/ScrollClip.as +468 -0
  297. data/lib/mako/data/flash_widget_dev_core/src/nm/ui/ScrollText.as +29 -0
  298. data/lib/mako/data/flash_widget_dev_core/src/nm/ui/ScrollText_base.as +295 -0
  299. data/lib/mako/data/flash_widget_dev_core/src/nm/ui/SimpleScrollBar.as +247 -0
  300. data/lib/mako/data/flash_widget_dev_core/src/nm/ui/StageRef.as +34 -0
  301. data/lib/mako/data/flash_widget_dev_core/src/nm/ui/StorageTank.as +233 -0
  302. data/lib/mako/data/flash_widget_dev_core/src/nm/ui/StorageTankHorizontal.as +109 -0
  303. data/lib/mako/data/flash_widget_dev_core/src/nm/ui/ToolTip.as +930 -0
  304. data/lib/mako/data/flash_widget_dev_core/src/nm/ui/TweeningDragDropBankList.as +503 -0
  305. data/lib/mako/data/flash_widget_dev_core/src/nm/ui/Window.as +144 -0
  306. data/lib/mako/data/flash_widget_dev_core/src/nm/ui/Window_base.as +385 -0
  307. data/lib/mako/data/flash_widget_dev_core/src/nm/ui/layout/CenterScale.as +27 -0
  308. data/lib/mako/data/flash_widget_dev_core/src/nm/ui/layout/WindowManager.as +163 -0
  309. data/lib/mako/data/flash_widget_dev_core/src/nm/ui/layout/WindowStage.as +96 -0
  310. data/lib/mako/data/flash_widget_dev_core/src/nm/util/BitField.as +99 -0
  311. data/lib/mako/data/flash_widget_dev_core/src/nm/util/ObjPeek.as +148 -0
  312. data/lib/mako/data/flash_widget_dev_core/src/nm/util/Objects.as +49 -0
  313. data/lib/mako/data/flash_widget_dev_core/src/nm/util/Printer.as +548 -0
  314. data/lib/mako/data/flash_widget_dev_core/src/nm/util/StringUtil.as +12 -0
  315. data/lib/mako/data/flash_widget_dev_core/src/org/rubyamf/remoting/ssr/FaultEvent.as +37 -0
  316. data/lib/mako/data/flash_widget_dev_core/src/org/rubyamf/remoting/ssr/RemotingCall.as +211 -0
  317. data/lib/mako/data/flash_widget_dev_core/src/org/rubyamf/remoting/ssr/RemotingConnection.as +41 -0
  318. data/lib/mako/data/flash_widget_dev_core/src/org/rubyamf/remoting/ssr/RemotingService.as +214 -0
  319. data/lib/mako/data/flash_widget_dev_core/src/org/rubyamf/remoting/ssr/ResultEvent.as +36 -0
  320. data/lib/mako/data/flash_widget_dev_core/src/sandy/util/DistortImage.as +281 -0
  321. data/lib/mako/data/flash_widget_dev_core/src/sandy/util/SandyPoint.as +29 -0
  322. data/lib/mako/data/flash_widget_dev_core/src/sandy/util/Triangle.as +32 -0
  323. data/lib/mako/data/html/thistest.html +0 -0
  324. data/lib/mako/data/template_creator/src/Creator.mxml +138 -0
  325. data/lib/mako/data/template_creator/src/assets/images/RichTextEditor.png +0 -0
  326. data/lib/mako/data/template_creator/src/assets/materia/images/DefaultError.png +0 -0
  327. data/lib/mako/data/template_creator/src/assets/materia/images/barbgfill.png +0 -0
  328. data/lib/mako/data/template_creator/src/assets/materia/images/barshadow.png +0 -0
  329. data/lib/mako/data/template_creator/src/assets/materia/images/bold.png +0 -0
  330. data/lib/mako/data/template_creator/src/assets/materia/images/bullets.png +0 -0
  331. data/lib/mako/data/template_creator/src/assets/materia/images/center.png +0 -0
  332. data/lib/mako/data/template_creator/src/assets/materia/images/close-x.png +0 -0
  333. data/lib/mako/data/template_creator/src/assets/materia/images/fullscreenPopup_close.png +0 -0
  334. data/lib/mako/data/template_creator/src/assets/materia/images/importIcon.png +0 -0
  335. data/lib/mako/data/template_creator/src/assets/materia/images/italic.png +0 -0
  336. data/lib/mako/data/template_creator/src/assets/materia/images/justify.png +0 -0
  337. data/lib/mako/data/template_creator/src/assets/materia/images/left.png +0 -0
  338. data/lib/mako/data/template_creator/src/assets/materia/images/oml-href-disabled.png +0 -0
  339. data/lib/mako/data/template_creator/src/assets/materia/images/oml-href.png +0 -0
  340. data/lib/mako/data/template_creator/src/assets/materia/images/oml-pagelink-disabled.png +0 -0
  341. data/lib/mako/data/template_creator/src/assets/materia/images/oml-pagelink.png +0 -0
  342. data/lib/mako/data/template_creator/src/assets/materia/images/oml-tooltip-delete.png +0 -0
  343. data/lib/mako/data/template_creator/src/assets/materia/images/oml-tooltip-disabled.png +0 -0
  344. data/lib/mako/data/template_creator/src/assets/materia/images/oml-tooltip-edit.png +0 -0
  345. data/lib/mako/data/template_creator/src/assets/materia/images/oml-tooltip.png +0 -0
  346. data/lib/mako/data/template_creator/src/assets/materia/images/pencil.png +0 -0
  347. data/lib/mako/data/template_creator/src/assets/materia/images/right.png +0 -0
  348. data/lib/mako/data/template_creator/src/assets/materia/images/underline.png +0 -0
  349. data/lib/mako/data/template_creator/src/assets/materia/images/videoPlayButton.png +0 -0
  350. data/lib/mako/data/template_creator/src/assets/materia/images/videoPlayerPauseButton.png +0 -0
  351. data/lib/mako/data/template_creator/src/assets/materia/images/videoPlayerPauseButton_over.png +0 -0
  352. data/lib/mako/data/template_creator/src/assets/materia/images/videoPlayerPlayButton.png +0 -0
  353. data/lib/mako/data/template_creator/src/assets/materia/images/videoPlayerPlayButton_over.png +0 -0
  354. data/lib/mako/data/template_creator/src/assets/materia/images/videoPlayerSoundButton.png +0 -0
  355. data/lib/mako/data/template_creator/src/assets/materia/images/videoPlayerSoundButton_over.png +0 -0
  356. data/lib/mako/data/template_creator/src/assets/materia/styles/creatorStyle.css +63 -0
  357. data/lib/mako/data/template_creator/src/assets/materia/styles/style.css +1127 -0
  358. data/lib/mako/data/template_creator/src/assets/materia/swf/embeddedfonts.swf +0 -0
  359. data/lib/mako/data/template_creator/src/assets/materia/swf/helpBubble.swf +0 -0
  360. data/lib/mako/data/template_creator/src/assets/materia/swf/kogneatoSymbols.swf +0 -0
  361. data/lib/mako/data/template_creator/src/assets/materia/swf/videobg.swf +0 -0
  362. data/lib/mako/data/template_creator/src/components/SmallRichTextEditor.mxml +678 -0
  363. data/lib/mako/data/template_creator/src/components/SmallRichTextEditorToolbar.mxml +133 -0
  364. data/lib/mako/data/templates/html/README.md +11 -0
  365. data/lib/mako/data/templates/html/_creator/build.yaml +12 -0
  366. data/lib/mako/data/templates/html/_creator/creator.html +19 -0
  367. data/lib/mako/data/templates/html/_creator/css/creator.less +29 -0
  368. data/lib/mako/data/templates/html/_creator/js/creator.coffee +122 -0
  369. data/lib/mako/data/templates/html/_creator/test.html +0 -0
  370. data/lib/mako/data/templates/html/_engine/build.yaml +12 -0
  371. data/lib/mako/data/templates/html/_engine/css/widget.scss +18 -0
  372. data/lib/mako/data/templates/html/_engine/js/widget.coffee +143 -0
  373. data/lib/mako/data/templates/html/_engine/widget.html +21 -0
  374. data/lib/mako/data/templates/html/_icons/icon-275.png +0 -0
  375. data/lib/mako/data/templates/html/_icons/icon-394.png +0 -0
  376. data/lib/mako/data/templates/html/_icons/icon-60.png +0 -0
  377. data/lib/mako/data/templates/html/_icons/icon-92.png +0 -0
  378. data/lib/mako/data/templates/html/_score/score_module.php +48 -0
  379. data/lib/mako/data/templates/html/_score/test_score_module.php +157 -0
  380. data/lib/mako/data/templates/html/_screen-shots/1-thumb.png +0 -0
  381. data/lib/mako/data/templates/html/_screen-shots/1.png +0 -0
  382. data/lib/mako/data/templates/html/_screen-shots/2-thumb.png +0 -0
  383. data/lib/mako/data/templates/html/_screen-shots/2.png +0 -0
  384. data/lib/mako/data/templates/html/_screen-shots/3-thumb.png +0 -0
  385. data/lib/mako/data/templates/html/_screen-shots/3.png +0 -0
  386. data/lib/mako/data/templates/html/build.yaml +4 -0
  387. data/lib/mako/data/templates/html/demo.yaml +7 -0
  388. data/lib/mako/data/templates/html/install.yaml +94 -0
  389. data/lib/mako/path.rb +48 -0
  390. data/lib/mako/scaffold.rb +69 -0
  391. metadata +597 -0
@@ -0,0 +1,644 @@
1
+ /* See the file "LICENSE.txt" for the full license governing this code. */
2
+ package nm.ui
3
+ {
4
+ import flash.display.MovieClip;
5
+ import flash.display.Sprite;
6
+ import flash.events.Event;
7
+ import flash.events.MouseEvent;
8
+ import flash.text.TextField;
9
+ import flash.text.TextFormat;
10
+ import flash.utils.*;
11
+ import nm.util.BitField;
12
+ import org.rubyamf.remoting.ssr.ResultEvent;
13
+ public class List_Base extends Component
14
+ {
15
+ //--------------------------------------------------------------------------
16
+ //
17
+ // Variables
18
+ //
19
+ //--------------------------------------------------------------------------
20
+ /**
21
+ * Determines if more than one item can be selected
22
+ */
23
+ protected var _multiSelect:Boolean = false;
24
+ /**
25
+ * Determines if text field can be edited
26
+ */
27
+ protected var _editable:Boolean = false;
28
+ /**
29
+ * The scroll position of the list
30
+ */
31
+ protected var _scrollPos:int = 0;
32
+ /**
33
+ * Array of textfields that compose the list
34
+ */
35
+ protected var _textFields:Array;
36
+ /**
37
+ * Array of elements that compose the list
38
+ */
39
+ protected var _listItems:Array;
40
+ /**
41
+ * A graphic background
42
+ */
43
+ protected var _bg:Sprite;
44
+ /**
45
+ * Container for teh textfields
46
+ */
47
+ protected var _textFieldHolder:Sprite;
48
+ /**
49
+ * Index of the item that was last clicked
50
+ */
51
+ protected var _lastClicked:int;
52
+ /**
53
+ * bitField that handles the selected items
54
+ */
55
+ protected var _selected:BitField;
56
+ protected var _mouseAction:Boolean = false;
57
+ protected var _watchLabels:Boolean = false;
58
+ /**
59
+ * number of rows to show on the screen
60
+ */
61
+ protected var _numShown:int;
62
+ /**
63
+ * scrollbar needed for scrolling
64
+ */
65
+ protected var _sbar:ScrollBar;
66
+ /**
67
+ * item that is currently in hover state
68
+ */
69
+ protected var _hover:int;
70
+ /**
71
+ * interval for updating values linked to an external array
72
+ */
73
+ protected var _updateInterval:Number;
74
+ //--------------------------------------------------------------------------
75
+ //
76
+ // Constructor
77
+ //
78
+ //--------------------------------------------------------------------------
79
+ public function List_Base(width:Number, height:Number, multiSelect:Boolean = false)
80
+ {
81
+ super(false, width, height);
82
+ _multiSelect = multiSelect;
83
+ _textFields = new Array();
84
+ //_tfs.setArrangeStyle("relative", "items", 1);
85
+ _selected = new BitField();
86
+ _listItems = new Array();
87
+ _scrollPos = 0;
88
+ //tabChildren = false // dont allow flash tab control to select the textfields or scrollbar
89
+ _editable = false;
90
+ //Create main visual components
91
+ _bg = new MovieClip();
92
+ _textFieldHolder = new MovieClip();
93
+ }
94
+ //--------------------------------------------------------------------------
95
+ //
96
+ // Functions
97
+ //
98
+ //--------------------------------------------------------------------------
99
+ //----------------------------------
100
+ // Drawing
101
+ //----------------------------------
102
+ public override function draw():void
103
+ {
104
+ super.draw();
105
+ //Add Main Visual Components
106
+ addChild(_bg);
107
+ addChild(_textFieldHolder);
108
+ //_enabled = true;
109
+ _textFieldHolder.addEventListener(MouseEvent.MOUSE_MOVE, listMouseMove, false, 0, true);
110
+ _textFieldHolder.addEventListener(MouseEvent.ROLL_OVER, listOver, false, 0, true);
111
+ _textFieldHolder.addEventListener(MouseEvent.ROLL_OUT, listOut, false, 0, true);
112
+ _textFieldHolder.addEventListener(MouseEvent.MOUSE_UP, listRelease, false, 0, true);
113
+ _textFieldHolder.addEventListener(MouseEvent.MOUSE_WHEEL, onMouseWheel, false, 0, true);
114
+ //TODO: Need an event for doubleclick to link to 'listDoubleClick'
115
+ if(stage && _sbar) addChild(_sbar);
116
+ redraw();
117
+ }
118
+ /**
119
+ * Explict call to update the content of the list cells, use this if your setting values via dataProvider and watchLabels isnt updating the content.
120
+ * This call does not redraw the component, meerely update the contents
121
+ */
122
+ public override function redraw():void
123
+ {
124
+ super.redraw();
125
+ //////trace("__________STAGE: " + stage + " " + _sbar.stage);
126
+ _numShown = Math.floor((height - 2*getStyle("borderWidth"))/getStyle("itemHeight")) // update numshown when we redraw
127
+ //////trace("Num Shown: " + getStyle("borderWidth"));
128
+ //if(_sbar) _sbar.linesPerPage = _numShown;
129
+ onScrollBarMove()
130
+ //_tfs_mc._x = _tfs_mc._y = getStyle("borderWidth") // move the textfields inside the border
131
+ refresh()
132
+ drawBg();
133
+ }
134
+ /**
135
+ * Explict call to update the content of the list cells, use this if your setting values via dataProvider and watchLabels isnt updating the content.
136
+ * This call does not redraw the component, meerely update the contents
137
+ */
138
+ public function refresh():void
139
+ {
140
+ updateTextFieldCount()
141
+ updateTextFields()
142
+ checkForScroll()
143
+ }
144
+ /**
145
+ * Draws the background of the list, this method is ment to be extended
146
+ */
147
+ protected function drawBg():void {}
148
+ /**
149
+ * Colorize the cell in its selected state, this method is ment to be extended
150
+ * @param index Number index of the cell to colorize
151
+ */
152
+ protected function colorCellSelected(index:Number):void {}
153
+ /**
154
+ * Colorize the cell in its highlighted state, this method is ment to be extended
155
+ * @param index Number index of the cell to colorize
156
+ */
157
+ protected function colorCellHighlight(index:Number):void {}
158
+ /**
159
+ * Colorize the cell in its rest state, this method is meant to be extended
160
+ * @param index Number index of the cell to colorize
161
+ */
162
+ protected function colorCellRest(index:Number):void {}
163
+ //--------------------------------------------------------------------------
164
+ //
165
+ // MOUSE INTERACTION
166
+ //
167
+ //--------------------------------------------------------------------------
168
+ //listDoubleClick
169
+ //destroyEditBox
170
+ //checkForEditMouseOut
171
+ /**
172
+ * When mouse moves, this function is called
173
+ * @param e
174
+ */
175
+ private function onMouseMove(e:Event):void {}
176
+ private function onMouseWheel(e:MouseEvent):void
177
+ {
178
+ if(e.delta > 0)
179
+ {
180
+ scrollUp();
181
+ }
182
+ else if(e.delta < 0)
183
+ {
184
+ scrollDown();
185
+ }
186
+ }
187
+ /**
188
+ * When mouse enters the list, called from Delegate for tfs_mc.
189
+ * Turn on mouse move listener and scroll wheel
190
+ */
191
+ private function listOver(e:Event):void
192
+ {
193
+ //updateTextFields() // update the data displayed
194
+ _mouseAction = true
195
+ listMouseMove(e)
196
+ if(_sbar != null) _sbar.wheelEnabled = true;
197
+ }
198
+ /**
199
+ * When mouse leaves the list, called from Delegate for tfs_mc.
200
+ * Turn of mouse move listener, turn off wheel scrolling
201
+ */
202
+ private function listOut(e:Event):void
203
+ {
204
+ _mouseAction = false; // turn off mouse interaction
205
+ if(_sbar != null) _sbar.wheelEnabled = false;
206
+ var element:int = _hover + _scrollPos;
207
+ if(_selected.isSet(element)) colorCellSelected(_hover)
208
+ else colorCellRest(_hover)
209
+ _hover = undefined;
210
+ }
211
+ /**
212
+ * When mouse up on the list, called from Delegate for tfs_mc.
213
+ * determine select/unselect with attention to shift and control keys
214
+ */
215
+ private function listRelease(e:Event):void
216
+ {
217
+ //focused = true
218
+ var element:Number = _hover + _scrollPos
219
+ // if multi select allowed and user is holding control (Key.isDown does not work in AS3)
220
+ //if(Key.isDown(Key.CONTROL) && multiSelect) {
221
+ //if(selected.isSet(element)) deSelectItem(element);
222
+ //else selectItem(element);
223
+ //}
224
+ // if user is holding shift (Key.isDown does not work in AS3)
225
+ //else if(Key.isDown(Key.SHIFT) && _multiSelect) {
226
+ //if(elements[_lastClicked] != undefined) {
227
+ //var range = element - _lastClicked;
228
+ //if(element > _lastClicked) selectItem(_lastClicked + 1, Math.abs(element - _lastClicked));
229
+ //else selectItem(element, Math.abs(element - _lastClicked));
230
+ //}
231
+ //else selectItem(element);
232
+ //}
233
+ //else{
234
+ //deSelectAll()
235
+ selectItem(element);
236
+ //}
237
+ _lastClicked = element;
238
+ dispatchEvent(new ResultEvent("select", false, false, element));
239
+ }
240
+ /**
241
+ * When mouse moves while its over the list, assigned to this.onMouseMove by this.listOver.
242
+ * figure out which item the cursor is over and highlight it
243
+ */
244
+ private function listMouseMove(e:Event):void
245
+ {
246
+ var itemHeight:Number = getStyle("itemHeight");
247
+ var adjustedMouseY:Number = mouseY - getStyle('borderWidth');
248
+ // figure out which item mouse is currently over
249
+ var curHover:int = (adjustedMouseY - (adjustedMouseY % itemHeight)) / itemHeight;
250
+ //////trace("Hovering: " + curHover, _hover);
251
+ // if we arent over the same item as before update the last cell's colors
252
+ if(curHover != _hover || (curHover == 0 && !_textFields[_hover].background))
253
+ {
254
+ //////trace(" Adjusting Hover Selection (" + curHover + ")");
255
+ //if(adjustedMouseY == _textFieldHolder.height) curHover -- // fixes problem with last item not selecting
256
+ var element:Number = _hover + _scrollPos
257
+ if(_selected.isSet(element)) colorCellSelected(_hover);
258
+ else colorCellRest(_hover);
259
+ _hover = curHover;
260
+ colorCellHighlight(_hover); // highlight the current cell
261
+ dispatchEvent(new ResultEvent("rollOver", false, false, _hover));
262
+ }
263
+ }
264
+ //******************* SCROLLING ***********************//
265
+ /**
266
+ * check for the need of a scroll bar, update the scrollbar and add/remove the scroll bar if it is needed or not
267
+ */
268
+ private function checkForScroll():void
269
+ {
270
+ if(_listItems.length > _numShown)
271
+ {
272
+ if(_sbar == null)
273
+ {
274
+ _sbar = new ScrollBar();
275
+ addChild(_sbar);
276
+ //_sbar.draw();
277
+ //_sbar.focusable = false;
278
+ //////trace("NUM SHOWN: " + _numShown);
279
+ _sbar.linesPerPage = _numShown;
280
+ _sbar.addEventListener(ScrollBar_base.SCROLL, onScrollBarMove, false, 0, true);
281
+ _sbar.wheelEnabled = _mouseAction;
282
+ }
283
+ if(_sbar != null)
284
+ {
285
+ // if the scrollbar location isnt correct, update it and resize all the textfields
286
+ var bW:Number = getStyle("borderWidth");
287
+ var sB:Number = _sbar.getStyle("borderWidth");
288
+ if(_sbar.y != bW - sB) _sbar.y = bW - sB;
289
+ if(_sbar.x != width - _sbar.width - bW + sB) _sbar.x = width - _sbar.width - bW + sB;
290
+ _sbar.totalLines = _listItems.length; //update the length of the scrollbar
291
+ _sbar.scrollByLines = 1;
292
+ }
293
+ }
294
+ else if(_sbar != null)
295
+ {
296
+ removeChild(_sbar);
297
+ //_sbar.removeAllEventListeners();
298
+ _sbar = null;
299
+ }
300
+ resizeFields();
301
+ }
302
+ /**
303
+ * set the position of the current scroll, also fired by the scroll bar listener
304
+ */
305
+ private function onScrollBarMove(...args):void
306
+ {
307
+ if(_sbar)
308
+ {
309
+ var oldpos:Number = _scrollPos
310
+ ////trace(_scrollPos)
311
+ // if theres no scroll, set pos to 0
312
+ _scrollPos = (_sbar.scroll? Math.round((_listItems.length - _numShown) * _sbar.scroll / 100) : 0);
313
+ ////trace((_sbar.scroll), Math.round((_listItems.length - _numShown) * _sbar.scroll / 100), oldpos)
314
+ if(_scrollPos != oldpos)
315
+ {
316
+ //destroyEditBox();
317
+ updateTextFields();
318
+ }
319
+ //updateTfs();
320
+ }
321
+ }
322
+ /**
323
+ * scroll up one position
324
+ */
325
+ private function scrollUp():void
326
+ {
327
+ var pos:int = --_scrollPos >= 0 ? _scrollPos : 0
328
+ //_sbar.scroll = (_scrollPos * 100) / (_listItems.length - _numShown*2 + scroll + 1);
329
+ _sbar.scroll = (_scrollPos * 100) / (_listItems.length - _numShown);
330
+ updateTextFields();
331
+ }
332
+ /**
333
+ * scroll down one position
334
+ */
335
+ private function scrollDown():void
336
+ {
337
+ var pos:Number = _scrollPos < _listItems.length - _numShown ? (_scrollPos+1) : _listItems.length - _numShown
338
+ _sbar.scroll = (pos * 100) / (_listItems.length - _numShown);
339
+ updateTextFields();
340
+ }
341
+ /**
342
+ * scroll to a specified position
343
+ * @param index Number position to move the scroll bar to
344
+ */
345
+ public function scrollTo(index:Number):void
346
+ {
347
+ _sbar.scroll = Math.floor((index * 100) / (_listItems.length - _numShown));
348
+ }
349
+ //************************** PUBLIC METHODS ********************//
350
+ /**
351
+ * Set an item as selected (highlight and add to the selectedIndicies list). Optionaly set a length of items as selected using the second length argument.
352
+ * selectItem will operate according the myList.multiSelect, if multiSelect=true, selectItem will add to the list of items selected, if multiSelect = false,
353
+ * selectItem will unselect previous selections, selected only the new item. In the later case, if a run is given, only the last item in the run will be selected.
354
+ * @usage to select a single item: myList.selectItem(3); to select a run of items starting at index 3 to index 10: myList.selectItem(3, 8);
355
+ * @param index Number of the index to be selected
356
+ * @param length Number of the length of items to be selected, starting and index
357
+ */
358
+ public function selectItem(index:Number, length:Number = NaN):void
359
+ {
360
+ //////trace('selecting ' + index)
361
+ // make sure the index is in range
362
+ if(index >= 0 && index < _listItems.length)
363
+ {
364
+ // if multiselect is false, remove all previous selections and only select the last item given
365
+ if(_multiSelect == false)
366
+ {
367
+ deSelectAll();
368
+ if(!isNaN(length)) index = index+length-1;
369
+ length = undefined
370
+ }
371
+ _selected.set(index, true, length);
372
+ if(length > 1) updateTextFields(); // update the whole dispaly
373
+ else updateTF(index-_scrollPos); // only update this one
374
+ }
375
+ }
376
+ /**
377
+ * Relocate an item from one index to another. The item to be moved will be removed from the list, then placed at the to index. If from < to, the item at to index will appear above the moved item,
378
+ * if from > to, the moved item will appear above the item previously at the to location.
379
+ * @param from Number index of the item you wish to move
380
+ * @param to Number index of the location you wish the item to be moved to
381
+ */
382
+ public function moveItem(from:Number, to:Number):void
383
+ {
384
+ //Move selection:
385
+ var sel:Boolean = _selected.isSet(from);
386
+ //Move element:
387
+ var temp:ListItem = removeItem(from);
388
+ addItem(temp.label, temp.data, to);
389
+ }
390
+ /**
391
+ * Remove an item at a given index
392
+ * @param index Number index of the element to remove
393
+ * @param skipUpdate Boolean Optional (default false) to skip updating the screen
394
+ * @return
395
+ */
396
+ public function removeItem(index:Number, skipUpdate:Boolean = false):ListItem
397
+ {
398
+ if(isNaN(index)) index = _listItems.length - 1;
399
+ if(_selected.isSet(index)) deSelectItem(index);
400
+ _selected.cut(index); // remove it's entry from the bitfield
401
+ if(_lastClicked == index) _lastClicked = undefined;
402
+ else if(_lastClicked > index) _lastClicked--;
403
+ var temp:ListItem = _listItems.splice(index, 1)[0];
404
+ if(_listItems.length < _numShown)
405
+ {
406
+ var tf:TextField = _textFields.splice(_listItems.length, 1)[0];
407
+ if(tf.parent) tf.parent.removeChild(tf);
408
+ drawBg();
409
+ }
410
+ if(skipUpdate != true)
411
+ {
412
+ onScrollBarMove();
413
+ if(_scrollPos < 1) updateTextFields(index-_scrollPos-1); // only do this in the case that the
414
+ checkForScroll();
415
+ }
416
+ return temp;
417
+ }
418
+ /**
419
+ * Remove all items and empty the list
420
+ */
421
+ public function clear():void
422
+ {
423
+ if(_listItems.length > 0)
424
+ {
425
+ for(var i:String in _textFields) _textFields[i].removeTextField();
426
+ _textFields = new Array();
427
+ //_tfs = new ArrangeArray();
428
+ //_tfs.setArrangeStyle("relative", "items", 1);
429
+ //unWatchItems();
430
+ _listItems = new Array();
431
+ deSelectAll();
432
+ checkForScroll()
433
+ _scrollPos = 0;
434
+ dispatchEvent(new Event("change"));
435
+ }
436
+ }
437
+ /**
438
+ * unselect an item (un-highlight and remove from selectedIndicies list). Optionally deselect a length of items using the second length argument.
439
+ * @usage to unselect a single item: myList.unSelectItem(3); to unselect a run of items starting at index 3 to index 5: myList.unSelectItem(3, 3);
440
+ * @param indexSet Number of the index to be unselected
441
+ * @param length Number of the length of items to be selected, starting at index
442
+ */
443
+ public function deSelectItem(index:Number, length:Number = 0):void
444
+ {
445
+ if(index >= 0 && index < _listItems.length){
446
+ if(length > 0) _selected.set(index, false, length)
447
+ else _selected.set(index, false);
448
+ }
449
+ }
450
+ /**
451
+ * unselect all of the items
452
+ */
453
+ public function deSelectAll():void
454
+ {
455
+ _selected.clearAll();
456
+ for(var i:int = 0; i < _textFields.length; i++)
457
+ {
458
+ colorCellRest(i)
459
+ }
460
+ }
461
+ /**
462
+ * add an item to the list.
463
+ * @param label String to display in the list cell
464
+ * @param data Value of item.data for this cell
465
+ * @param index Number, Optional (default elements.length), indicating the location to insert the new item at
466
+ */
467
+ public function addItem(label:String, data:* = null, index:Number = -1):void
468
+ {
469
+ var newElement:ListItem = new ListItem(label, data);
470
+ if(index < 0 || index > _listItems.length) index = _listItems.length;
471
+ if(index == _listItems.length) _listItems.push(newElement) //this is much faster than splice
472
+ else _listItems.splice(index, 0, newElement); //insert the item into elements
473
+ //_selected.insert(index, false); //this makes sure any items after this one stay selected
474
+ if(_lastClicked > index) _lastClicked++ //if last clicked is below this item, increment it to it points at the same item
475
+ //if(_pos > index) scrollUp(); //scroll up if we are below the new item
476
+ if(index < _scrollPos + _numShown) updateTextFields(index); //if the item is on screen or above, do this before updateTFC count to skip redundant tf updates
477
+ //watchItems(index); //notify watch items
478
+ updateTextFieldCount(); //may need to update the tf count
479
+ if(_sbar != null) checkForScroll(); //may also need to show the scroll bar
480
+ }
481
+ /**
482
+ * Update an item's label, data, and selected status
483
+ * @param index Number index of the item to update
484
+ * @param label String value for the list cell display
485
+ * @param data Value of the data
486
+ */
487
+ public function updateItem(index:Number, label:String, data:*):void
488
+ {
489
+ _listItems[index] = new ListItem(label, data);
490
+ if(index >= _scrollPos && index < _scrollPos+_numShown) updateTF(index); // if the updated item is onscreen, update its textfield
491
+ }
492
+ /**
493
+ * return the element at a given index
494
+ * @param index Number of the index to get
495
+ * @return Object with object.label and object.data
496
+ */
497
+ public function getItem(index:Number):Object
498
+ {
499
+ return _listItems[index];
500
+ }
501
+ /**
502
+ * Set the elements of the list to a precompiled set of values. The passed array is duplicated in an attempt to seperate the data from the passed values.
503
+ * @param values Array of objects with label and data members (or an array of strings/numbers to be used as a label)
504
+ */
505
+ public function setValues(values:Array):void
506
+ {
507
+ clear(); // clear existing stuff
508
+ _listItems = new Array();
509
+ for(var i:* in values)
510
+ {
511
+ // duplicate the passed in array to seperate reference ties to the passed in array
512
+ _listItems[i] = (values[i] is Object ? new ListItem(values[i].label, values[i].data) : new ListItem(values[i].label))
513
+ }
514
+ _watchLabels = false // dont watch the labels because they are internally controlled by us
515
+ updateTextFieldCount(); // update the field count to the new data
516
+ checkForScroll(); // check for scroll bar necisity with new data
517
+ dispatchEvent(new Event("change"));
518
+ }
519
+ //**************************** DISPLAY **********************//
520
+ //watchItems
521
+ //unWatchItems
522
+ //valueUpdate
523
+ //onFocusOut
524
+ //onFocusKeyDown
525
+ //isVisible
526
+ private function resizeFields():void
527
+ {
528
+ var tfWidth:Number = width - 2 * getStyle("borderWidth");
529
+ // TODO: this works, but doesnt seem necissary as the bar is on top of them anyway
530
+ if(_sbar != null)
531
+ {
532
+ tfWidth -= _sbar.width // compensate for the scrollbar if it exists
533
+ }
534
+ // if the widths arent the correct size, resize them all
535
+ if(_textFields.length && _textFields[0].width != tfWidth)
536
+ {
537
+ for(var i:String in _textFields)
538
+ {
539
+ _textFields[i].width = tfWidth;
540
+ }
541
+ }
542
+ }
543
+ /**
544
+ * Update the data and selected status of the textfields on stage
545
+ * @param start Number optional (default 0) start index of the element to begin updating at and run untill the total
546
+ */
547
+ private function updateTextFields(start:Number = 0):void
548
+ {
549
+ if(!isNaN(_updateInterval)) {
550
+ clearInterval(_updateInterval);
551
+ _updateInterval = undefined;
552
+ }
553
+ for(;start <= _numShown; start++) updateTF(start)
554
+ }
555
+ /**
556
+ * Update a single TextField's value and color
557
+ * @param i Number index of the textfield to update
558
+ */
559
+ private function updateTF(i:Number):void
560
+ {
561
+ if(_textFields[i]) {
562
+ _textFields[i].text = _listItems[i + _scrollPos].label;
563
+ if(_selected.isSet(i + _scrollPos)) colorCellSelected(i);
564
+ else colorCellRest(i);
565
+ }
566
+ }
567
+ /**
568
+ * Create a new textfield(s)
569
+ * @param count Number of textfields to add
570
+ */
571
+ private function createTF(count:int = 1):void
572
+ {
573
+ var numItems:int = _listItems.length;
574
+ var embed:Boolean = getStyle("embedFonts");
575
+ var textFormat:TextFormat = getStyle("textFormat");
576
+ var itemWidth:Number = width - 2 * getStyle("borderWidth");
577
+ var itemHeight:Number = getStyle("itemHeight");
578
+ while(count--)
579
+ {
580
+ if(_textFields.length < numItems)
581
+ {
582
+ var depth:int = _textFields.length;
583
+ var newTextField:TextField = new TextField();
584
+ newTextField.border = false;
585
+ newTextField.embedFonts = embed;
586
+ if(textFormat != null) newTextField.defaultTextFormat = textFormat;
587
+ newTextField.selectable = false;
588
+ if(_textFields.length) newTextField.y = _textFields[_textFields.length - 1].y + itemHeight;
589
+ _textFields.push(newTextField);
590
+ updateTF(depth);
591
+ newTextField.height = itemHeight;
592
+ _textFieldHolder.addChild(newTextField);
593
+ }
594
+ }
595
+ }
596
+ /**
597
+ * Check the current number of textfields to see if we need to add or remove any
598
+ * @return Boolean flag indicating if any changes were made
599
+ */
600
+ private function updateTextFieldCount():Boolean
601
+ {
602
+ if(_textFields.length > _numShown)
603
+ {
604
+ var removedTFs:Array = _textFields.splice(_numShown, _textFields.length);
605
+ for(var i:* in removedTFs)
606
+ {
607
+ ////trace("removing: " + i + " " + removedTFs[i]);
608
+ _textFieldHolder.removeChild(removedTFs[i]);
609
+ }
610
+ return true;
611
+ }
612
+ else if(_textFields.length < _numShown && _listItems.length > _textFields.length) {
613
+ //////trace("\nadding: ",_elements.length,_tfs.length);
614
+ createTF((_listItems.length < _numShown ? _listItems.length : _numShown) - _textFields.length); // calc the number of items to make
615
+ //createTF(_elements.length - _tfs.length); // calc the number of items to make
616
+ //createTF(1); //calc the number of items to make
617
+ //_tfs.arrange()
618
+ return true;
619
+ }
620
+ return false;
621
+ }
622
+ /**
623
+ * Default style objects
624
+ */
625
+ protected override function styleDefaults():void
626
+ {
627
+ setStyle('scrollWidth', 12);
628
+ setStyle("borderWidth", 1)
629
+ setStyle("itemHeight", 20);
630
+ setStyle("textFormat", new TextFormat("Arial", 10, 0x000000));
631
+ setStyle("embedFonts", false);
632
+ }
633
+ }
634
+ }
635
+ class ListItem
636
+ {
637
+ public var label:String;
638
+ public var data:*;
639
+ public function ListItem(label:String = "", data:* = null)
640
+ {
641
+ this.label = label;
642
+ this.data = data;
643
+ }
644
+ }