Jelajahi Sumber

flash10 patch

Nicolas Cannasse 14 tahun lalu
induk
melakukan
e21383f96c
74 mengubah file dengan 323 tambahan dan 286 penghapusan
  1. 9 21
      std/flash9/desktop/Clipboard.hx
  2. 8 1
      std/flash9/desktop/ClipboardFormats.hx
  3. 1 1
      std/flash9/desktop/ClipboardTransferMode.hx
  4. 3 0
      std/flash9/display/BitmapData.hx
  5. 1 0
      std/flash9/display/BlendMode.hx
  6. 8 0
      std/flash9/display/DisplayObject.hx
  7. 7 0
      std/flash9/display/Graphics.hx
  8. 3 5
      std/flash9/display/GraphicsBitmapFill.hx
  9. 1 1
      std/flash9/display/GraphicsEndFill.hx
  10. 7 7
      std/flash9/display/GraphicsGradientFill.hx
  11. 8 10
      std/flash9/display/GraphicsPath.hx
  12. 0 1
      std/flash9/display/GraphicsPathWinding.hx
  13. 2 4
      std/flash9/display/GraphicsShaderFill.hx
  14. 2 2
      std/flash9/display/GraphicsSolidFill.hx
  15. 6 6
      std/flash9/display/GraphicsStroke.hx
  16. 2 2
      std/flash9/display/GraphicsTrianglePath.hx
  17. 1 0
      std/flash9/display/Loader.hx
  18. 1 0
      std/flash9/display/MovieClip.hx
  19. 1 0
      std/flash9/display/SWFVersion.hx
  20. 3 3
      std/flash9/display/Shader.hx
  21. 0 1
      std/flash9/display/ShaderData.hx
  22. 2 2
      std/flash9/display/ShaderInput.hx
  23. 3 5
      std/flash9/display/ShaderJob.hx
  24. 1 1
      std/flash9/display/ShaderParameter.hx
  25. 2 0
      std/flash9/display/Stage.hx
  26. 1 0
      std/flash9/events/ContextMenuEvent.hx
  27. 7 0
      std/flash9/events/Event.hx
  28. 1 0
      std/flash9/events/FocusEvent.hx
  29. 1 0
      std/flash9/events/MouseEvent.hx
  30. 3 3
      std/flash9/events/SampleDataEvent.hx
  31. 4 6
      std/flash9/events/ShaderEvent.hx
  32. 3 6
      std/flash9/filters/ShaderFilter.hx
  33. 23 26
      std/flash9/geom/Matrix3D.hx
  34. 1 1
      std/flash9/geom/Orientation3D.hx
  35. 3 5
      std/flash9/geom/PerspectiveProjection.hx
  36. 3 0
      std/flash9/geom/Transform.hx
  37. 5 5
      std/flash9/geom/Utils3D.hx
  38. 21 27
      std/flash9/geom/Vector3D.hx
  39. 4 1
      std/flash9/media/Microphone.hx
  40. 1 0
      std/flash9/media/Sound.hx
  41. 1 1
      std/flash9/media/SoundCodec.hx
  42. 3 0
      std/flash9/net/FileReference.hx
  43. 7 0
      std/flash9/net/NetConnection.hx
  44. 11 1
      std/flash9/net/NetStream.hx
  45. 17 13
      std/flash9/net/NetStreamInfo.hx
  46. 3 3
      std/flash9/net/NetStreamPlayOptions.hx
  47. 1 0
      std/flash9/net/Socket.hx
  48. 1 0
      std/flash9/net/XMLSocket.hx
  49. 2 0
      std/flash9/system/ApplicationDomain.hx
  50. 2 0
      std/flash9/system/Capabilities.hx
  51. 2 5
      std/flash9/system/JPEGLoaderContext.hx
  52. 1 0
      std/flash9/text/FontType.hx
  53. 1 0
      std/flash9/text/TextField.hx
  54. 4 4
      std/flash9/text/engine/ContentElement.hx
  55. 3 3
      std/flash9/text/engine/EastAsianJustifier.hx
  56. 14 14
      std/flash9/text/engine/ElementFormat.hx
  57. 9 9
      std/flash9/text/engine/FontDescription.hx
  58. 2 2
      std/flash9/text/engine/FontMetrics.hx
  59. 2 2
      std/flash9/text/engine/GraphicElement.hx
  60. 10 10
      std/flash9/text/engine/GroupElement.hx
  61. 2 2
      std/flash9/text/engine/SpaceJustifier.hx
  62. 3 3
      std/flash9/text/engine/TabStop.hx
  63. 0 2
      std/flash9/text/engine/TextBaseline.hx
  64. 16 18
      std/flash9/text/engine/TextBlock.hx
  65. 2 3
      std/flash9/text/engine/TextElement.hx
  66. 4 5
      std/flash9/text/engine/TextJustifier.hx
  67. 18 19
      std/flash9/text/engine/TextLine.hx
  68. 6 6
      std/flash9/text/engine/TextLineMirrorRegion.hx
  69. 3 0
      std/flash9/ui/ContextMenu.hx
  70. 3 6
      std/flash9/ui/ContextMenuClipboardItems.hx
  71. 1 0
      std/flash9/ui/Mouse.hx
  72. 2 2
      std/flash9/ui/MouseCursor.hx
  73. 3 0
      std/flash9/utils/ByteArray.hx
  74. 1 0
      std/flash9/utils/SetIntervalTimer.hx

+ 9 - 21
std/flash9/desktop/Clipboard.hx

@@ -1,24 +1,12 @@
 package flash.desktop;
 
-#if !flash10
-"This class is only available for flash10+"
-#end
-
-extern class Clipboard
-{
-	function clear():Void;
-
-	function clearData(format:ClipboardFormats):Void;
-
-	var formats(default,null):Array<ClipboardFormats>;
-
-	static var generalClipboard(default,null):Clipboard;
-
-	function getData(format:ClipboardFormats, transferMode:ClipboardTransferMode = ClipboardTransferMode.ORIGINAL_PREFERRED):Dynamic;
-
-	function hasFormat(format:ClipboardFormats):Bool;
-
-	function setData(format:ClipboardFormats, data:Dynamic, serializable:Bool = true):Bool;
-
-	function setDataHandler(format:ClipboardFormats, handler:Void->String, serializable:Bool = true):Bool;
+@:require(flash10) extern class Clipboard {
+	var formats(default,null) : Array<ClipboardFormats>;
+	function clear() : Void;
+	function clearData(format : ClipboardFormats) : Void;
+	function getData(format : ClipboardFormats, ?transferMode : ClipboardTransferMode) : Dynamic;
+	function hasFormat(format : ClipboardFormats) : Bool;
+	function setData(format : ClipboardFormats, data : Dynamic, serializable : Bool = true) : Bool;
+	function setDataHandler(format : ClipboardFormats, handler : Dynamic, serializable : Bool = true) : Bool;
+	static var generalClipboard(default,null) : Clipboard;
 }

+ 8 - 1
std/flash9/desktop/ClipboardFormats.hx

@@ -1,7 +1,14 @@
 package flash.desktop;
 
 extern enum ClipboardFormats {
+	AIR_PREFIX;
+	BITMAP_FORMAT;
+	FILE_LIST_FORMAT;
+	FLASH_PREFIX;
 	HTML_FORMAT;
+	REFERENCE_PREFIX;
 	RICH_TEXT_FORMAT;
+	SERIALIZATION_PREFIX;
 	TEXT_FORMAT;
-}
+	URL_FORMAT;
+}

+ 1 - 1
std/flash9/desktop/ClipboardTransferMode.hx

@@ -5,4 +5,4 @@ extern enum ClipboardTransferMode {
 	CLONE_PREFERRED;
 	ORIGINAL_ONLY;
 	ORIGINAL_PREFERRED;
-}
+}

+ 3 - 0
std/flash9/display/BitmapData.hx

@@ -21,6 +21,8 @@ extern class BitmapData implements IBitmapDrawable {
 	function getPixel(x : Int, y : Int) : UInt;
 	function getPixel32(x : Int, y : Int) : UInt;
 	function getPixels(rect : flash.geom.Rectangle) : flash.utils.ByteArray;
+	@:require(flash10) function getVector(rect : flash.geom.Rectangle) : flash.Vector<UInt>;
+	@:require(flash10) function histogram(?hRect : flash.geom.Rectangle) : flash.Vector<flash.Vector<Float>>;
 	function hitTest(firstPoint : flash.geom.Point, firstAlphaThreshold : UInt, secondObject : Dynamic, ?secondBitmapDataPoint : flash.geom.Point, secondAlphaThreshold : UInt = 1) : Bool;
 	function lock() : Void;
 	function merge(sourceBitmapData : BitmapData, sourceRect : flash.geom.Rectangle, destPoint : flash.geom.Point, redMultiplier : UInt, greenMultiplier : UInt, blueMultiplier : UInt, alphaMultiplier : UInt) : Void;
@@ -32,6 +34,7 @@ extern class BitmapData implements IBitmapDrawable {
 	function setPixel(x : Int, y : Int, color : UInt) : Void;
 	function setPixel32(x : Int, y : Int, color : UInt) : Void;
 	function setPixels(rect : flash.geom.Rectangle, inputByteArray : flash.utils.ByteArray) : Void;
+	@:require(flash10) function setVector(rect : flash.geom.Rectangle, inputVector : flash.Vector<UInt>) : Void;
 	function threshold(sourceBitmapData : BitmapData, sourceRect : flash.geom.Rectangle, destPoint : flash.geom.Point, operation : String, threshold : UInt, color : UInt = 0, mask : UInt = 0xFFFFFFFF, copySource : Bool = false) : UInt;
 	function unlock(?changeRect : flash.geom.Rectangle) : Void;
 }

+ 1 - 0
std/flash9/display/BlendMode.hx

@@ -14,5 +14,6 @@ extern enum BlendMode {
 	NORMAL;
 	OVERLAY;
 	SCREEN;
+	SHADER;
 	SUBTRACT;
 }

+ 8 - 0
std/flash9/display/DisplayObject.hx

@@ -4,6 +4,7 @@ extern class DisplayObject extends flash.events.EventDispatcher, implements IBit
 	var accessibilityProperties : flash.accessibility.AccessibilityProperties;
 	var alpha : Float;
 	var blendMode : BlendMode;
+	@:require(flash10) var blendShader(null,default) : Shader;
 	var cacheAsBitmap : Bool;
 	var filters : Array<Dynamic>;
 	var height : Float;
@@ -16,9 +17,13 @@ extern class DisplayObject extends flash.events.EventDispatcher, implements IBit
 	var parent(default,null) : DisplayObjectContainer;
 	var root(default,null) : DisplayObject;
 	var rotation : Float;
+	@:require(flash10) var rotationX : Float;
+	@:require(flash10) var rotationY : Float;
+	@:require(flash10) var rotationZ : Float;
 	var scale9Grid : flash.geom.Rectangle;
 	var scaleX : Float;
 	var scaleY : Float;
+	@:require(flash10) var scaleZ : Float;
 	var scrollRect : flash.geom.Rectangle;
 	var stage(default,null) : Stage;
 	var transform : flash.geom.Transform;
@@ -26,10 +31,13 @@ extern class DisplayObject extends flash.events.EventDispatcher, implements IBit
 	var width : Float;
 	var x : Float;
 	var y : Float;
+	@:require(flash10) var z : Float;
 	function getBounds(targetCoordinateSpace : DisplayObject) : flash.geom.Rectangle;
 	function getRect(targetCoordinateSpace : DisplayObject) : flash.geom.Rectangle;
 	function globalToLocal(point : flash.geom.Point) : flash.geom.Point;
+	@:require(flash10) function globalToLocal3D(point : flash.geom.Point) : flash.geom.Vector3D;
 	function hitTestObject(obj : DisplayObject) : Bool;
 	function hitTestPoint(x : Float, y : Float, shapeFlag : Bool = false) : Bool;
+	@:require(flash10) function local3DToGlobal(point3d : flash.geom.Vector3D) : flash.geom.Point;
 	function localToGlobal(point : flash.geom.Point) : flash.geom.Point;
 }

+ 7 - 0
std/flash9/display/Graphics.hx

@@ -5,15 +5,22 @@ package flash.display;
 	function beginBitmapFill(bitmap : BitmapData, ?matrix : flash.geom.Matrix, repeat : Bool = true, smooth : Bool = false) : Void;
 	function beginFill(color : UInt, alpha : Float = 1) : Void;
 	function beginGradientFill(type : GradientType, colors : Array<UInt>, alphas : Array<Dynamic>, ratios : Array<Dynamic>, ?matrix : flash.geom.Matrix, ?spreadMethod : SpreadMethod, ?interpolationMethod : InterpolationMethod, focalPointRatio : Float = 0) : Void;
+	@:require(flash10) function beginShaderFill(shader : Shader, ?matrix : flash.geom.Matrix) : Void;
 	function clear() : Void;
+	@:require(flash10) function copyFrom(sourceGraphics : Graphics) : Void;
 	function curveTo(controlX : Float, controlY : Float, anchorX : Float, anchorY : Float) : Void;
 	function drawCircle(x : Float, y : Float, radius : Float) : Void;
 	function drawEllipse(x : Float, y : Float, width : Float, height : Float) : Void;
+	@:require(flash10) function drawGraphicsData(graphicsData : flash.Vector<IGraphicsData>) : Void;
+	@:require(flash10) function drawPath(commands : flash.Vector<Int>, data : flash.Vector<Float>, ?winding : GraphicsPathWinding) : Void;
 	function drawRect(x : Float, y : Float, width : Float, height : Float) : Void;
 	function drawRoundRect(x : Float, y : Float, width : Float, height : Float, ellipseWidth : Float, ?ellipseHeight : Float) : Void;
 	function drawRoundRectComplex(x : Float, y : Float, width : Float, height : Float, topLeftRadius : Float, topRightRadius : Float, bottomLeftRadius : Float, bottomRightRadius : Float) : Void;
+	@:require(flash10) function drawTriangles(vertices : flash.Vector<Float>, ?indices : flash.Vector<Int>, ?uvtData : flash.Vector<Float>, ?culling : TriangleCulling) : Void;
 	function endFill() : Void;
+	@:require(flash10) function lineBitmapStyle(bitmap : BitmapData, ?matrix : flash.geom.Matrix, repeat : Bool = true, smooth : Bool = false) : Void;
 	function lineGradientStyle(type : GradientType, colors : Array<UInt>, alphas : Array<Dynamic>, ratios : Array<Dynamic>, ?matrix : flash.geom.Matrix, ?spreadMethod : SpreadMethod, ?interpolationMethod : InterpolationMethod, focalPointRatio : Float = 0) : Void;
+	@:require(flash10) function lineShaderStyle(shader : Shader, ?matrix : flash.geom.Matrix) : Void;
 	function lineStyle(?thickness : Float, color : UInt = 0, alpha : Float = 1, pixelHinting : Bool = false, ?scaleMode : LineScaleMode, ?caps : CapsStyle, ?joints : JointStyle, miterLimit : Float = 3) : Void;
 	function lineTo(x : Float, y : Float) : Void;
 	function moveTo(x : Float, y : Float) : Void;

+ 3 - 5
std/flash9/display/GraphicsBitmapFill.hx

@@ -1,11 +1,9 @@
 package flash.display;
 
-extern class GraphicsBitmapFill implements IGraphicsFill, implements IGraphicsData {
-
-	var matrix : flash.geom.Matrix;
+@:final extern class GraphicsBitmapFill implements IGraphicsData, implements IGraphicsFill {
 	var bitmapData : BitmapData;
+	var matrix : flash.geom.Matrix;
 	var repeat : Bool;
 	var smooth : Bool;
-
-	function new( ?bitmapData : BitmapData, ?matrix : flash.geom.Matrix, ?repeat : Bool, ?smooth : Bool ) : Void;
+	function new(?bitmapData : BitmapData, ?matrix : flash.geom.Matrix, repeat : Bool = true, smooth : Bool = false) : Void;
 }

+ 1 - 1
std/flash9/display/GraphicsEndFill.hx

@@ -1,5 +1,5 @@
 package flash.display;
 
-extern class GraphicsEndFill implements IGraphicsFill, implements IGraphicsData {
+extern class GraphicsEndFill implements IGraphicsData, implements IGraphicsFill {
 	function new() : Void;
 }

+ 7 - 7
std/flash9/display/GraphicsGradientFill.hx

@@ -1,13 +1,13 @@
 package flash.display;
 
-extern class GraphicsGradientFill implements IGraphicsFill, implements IGraphicsData {
-	var type : GradientType;
-	var colors : Array<UInt>;
+@:final extern class GraphicsGradientFill implements IGraphicsData, implements IGraphicsFill {
 	var alphas : Array<Float>;
-	var ratios : Array<Float>;
+	var colors : Array<UInt>;
+	var focalPointRatio : Float;
+	var interpolationMethod : InterpolationMethod;
 	var matrix : flash.geom.Matrix;
+	var ratios : Array<Float>;
 	var spreadMethod : SpreadMethod;
-	var interpolationMethod : InterpolationMethod;
-	var focalPointRatio : Float;
-	function new( ?type : GradientType, ?colors : Array<UInt>, ?alphas : Array<Float>, ?ratios : Array<Float>, ?matrix : flash.geom.Matrix, ?spreadMethod : SpreadMethod, ?interpolationMethod : InterpolationMethod, ?focalPointRatio : Float) : Void;
+	var type : GradientType;
+	function new(?type : GradientType, ?colors : Array<UInt>, ?alphas : Array<Float>, ?ratios : Array<Float>, ?matrix : flash.geom.Matrix, ?spreadMethod : SpreadMethod, ?interpolationMethod : InterpolationMethod, focalPointRatio : Float = 0) : Void;
 }

+ 8 - 10
std/flash9/display/GraphicsPath.hx

@@ -1,15 +1,13 @@
 package flash.display;
 
-extern class GraphicsPath implements IGraphicsPath, implements IGraphicsData {
-
-	var data : flash.Vector<Float>;
+@:final extern class GraphicsPath implements IGraphicsData, implements IGraphicsPath {
 	var commands : flash.Vector<Int>;
+	var data : flash.Vector<Float>;
 	var winding : GraphicsPathWinding;
-
-	function new( ?commands : flash.Vector<Int>, ?data : flash.Vector<Float>, ?winding : GraphicsPathWinding ) : Void;
-	function wideLineTo( x:Float, y:Float ) : Void;
-	function wideMoveTo( x:Float, y:Float ) : Void;
-	function curveTo( controlX:Float, controlY:Float, anchorX:Float, anchorY:Float ) : Void;
-	function moveTo( x:Float, y:Float ) : Void;
-	function lineTo( x:Float, y:Float ) : Void;
+	function new(?commands : flash.Vector<Int>, ?data : flash.Vector<Float>, ?winding : GraphicsPathWinding) : Void;
+	function curveTo(controlX : Float, controlY : Float, anchorX : Float, anchorY : Float) : Void;
+	function lineTo(x : Float, y : Float) : Void;
+	function moveTo(x : Float, y : Float) : Void;
+	function wideLineTo(x : Float, y : Float) : Void;
+	function wideMoveTo(x : Float, y : Float) : Void;
 }

+ 0 - 1
std/flash9/display/GraphicsPathWinding.hx

@@ -4,4 +4,3 @@ extern enum GraphicsPathWinding {
 	EVEN_ODD;
 	NON_ZERO;
 }
-

+ 2 - 4
std/flash9/display/GraphicsShaderFill.hx

@@ -1,9 +1,7 @@
 package flash.display;
 
-extern class GraphicsShaderFill implements IGraphicsFill, implements IGraphicsData {
-
+@:final extern class GraphicsShaderFill implements IGraphicsData, implements IGraphicsFill {
 	var matrix : flash.geom.Matrix;
 	var shader : Shader;
-
-	public function new( ?shader : Shader, ?matrix : flash.geom.Matrix ) : Void;
+	function new(?shader : Shader, ?matrix : flash.geom.Matrix) : Void;
 }

+ 2 - 2
std/flash9/display/GraphicsSolidFill.hx

@@ -1,7 +1,7 @@
 package flash.display;
 
-extern class GraphicsSolidFill implements IGraphicsFill, implements IGraphicsData {
-	function new(?color : UInt, ?alpha : Float) : Void;
+@:final extern class GraphicsSolidFill implements IGraphicsData, implements IGraphicsFill {
 	var alpha : Float;
 	var color : UInt;
+	function new(color : UInt = 0, alpha : Float = 1) : Void;
 }

+ 6 - 6
std/flash9/display/GraphicsStroke.hx

@@ -1,12 +1,12 @@
 package flash.display;
 
-extern class GraphicsStroke implements IGraphicsStroke, implements IGraphicsData {
-	function new(?_thickness : Float, ?_pixelHinting : Bool, ?_scaleMode : String, ?_caps : String, ?_joints : String, ?_miterLimit : Float, ?_fill : flash.display.IGraphicsFill) : Void;
-	var caps : String;
-	var fill : flash.display.IGraphicsFill;
-	var joints : String;
+@:final extern class GraphicsStroke implements IGraphicsData, implements IGraphicsStroke {
+	var caps : CapsStyle;
+	var fill : IGraphicsFill;
+	var joints : JointStyle;
 	var miterLimit : Float;
 	var pixelHinting : Bool;
-	var scaleMode : String;
+	var scaleMode : LineScaleMode;
 	var thickness : Float;
+	function new(thickness : Float = 0./*NaN*/, pixelHinting : Bool = false, ?scaleMode : String, ?caps : String, ?joints : String, miterLimit : Float = 3, ?fill : IGraphicsFill) : Void;
 }

+ 2 - 2
std/flash9/display/GraphicsTrianglePath.hx

@@ -1,9 +1,9 @@
 package flash.display;
 
-extern class GraphicsTrianglePath implements IGraphicsPath, implements IGraphicsData {
-	function new(?vertices : flash.Vector<Float>, ?indices : flash.Vector<Int>, ?uvtData : flash.Vector<Float>, ?culling : TriangleCulling) : Void;
+@:final extern class GraphicsTrianglePath implements IGraphicsData, implements IGraphicsPath {
 	var culling : TriangleCulling;
 	var indices : flash.Vector<Int>;
 	var uvtData : flash.Vector<Float>;
 	var vertices : flash.Vector<Float>;
+	function new(?vertices : flash.Vector<Float>, ?indices : flash.Vector<Int>, ?uvtData : flash.Vector<Float>, ?culling : TriangleCulling) : Void;
 }

+ 1 - 0
std/flash9/display/Loader.hx

@@ -8,4 +8,5 @@ extern class Loader extends DisplayObjectContainer {
 	function load(request : flash.net.URLRequest, ?context : flash.system.LoaderContext) : Void;
 	function loadBytes(bytes : flash.utils.ByteArray, ?context : flash.system.LoaderContext) : Void;
 	function unload() : Void;
+	@:require(flash10) function unloadAndStop(gc : Bool = true) : Void;
 }

+ 1 - 0
std/flash9/display/MovieClip.hx

@@ -2,6 +2,7 @@ package flash.display;
 
 extern class MovieClip extends Sprite, #if !flash_strict implements Dynamic #end {
 	var currentFrame(default,null) : Int;
+	@:require(flash10) var currentFrameLabel(default,null) : String;
 	var currentLabel(default,null) : String;
 	var currentLabels(default,null) : Array<FrameLabel>;
 	var currentScene(default,null) : Scene;

+ 1 - 0
std/flash9/display/SWFVersion.hx

@@ -2,6 +2,7 @@ package flash.display;
 
 extern enum SWFVersion {
 	FLASH1;
+	FLASH10;
 	FLASH2;
 	FLASH3;
 	FLASH4;

+ 3 - 3
std/flash9/display/Shader.hx

@@ -1,8 +1,8 @@
 package flash.display;
 
-extern class Shader {
-	function new(?code : flash.utils.ByteArray) : Void;
+@:require(flash10) extern class Shader {
 	var byteCode(null,default) : flash.utils.ByteArray;
-	var data : flash.display.ShaderData;
+	var data : ShaderData;
 	var precisionHint : ShaderPrecision;
+	function new(?code : flash.utils.ByteArray) : Void;
 }

+ 0 - 1
std/flash9/display/ShaderData.hx

@@ -2,5 +2,4 @@ package flash.display;
 
 extern class ShaderData implements Dynamic {
 	function new(byteCode : flash.utils.ByteArray) : Void;
-	//private function _setByteCode(code : flash.utils.ByteArray) : Void;
 }

+ 2 - 2
std/flash9/display/ShaderInput.hx

@@ -1,10 +1,10 @@
 package flash.display;
 
-extern class ShaderInput {
-	function new() : Void;
+@:final extern class ShaderInput implements Dynamic {
 	var channels(default,null) : Int;
 	var height : Int;
 	var index(default,null) : Int;
 	var input : Dynamic;
 	var width : Int;
+	function new() : Void;
 }

+ 3 - 5
std/flash9/display/ShaderJob.hx

@@ -1,14 +1,12 @@
 package flash.display;
 
 extern class ShaderJob extends flash.events.EventDispatcher {
-
 	var height : Int;
 	var progress(default,null) : Float;
-	var shader : flash.display.Shader;
+	var shader : Shader;
 	var target : Dynamic;
 	var width : Int;
-
-	function new(?shader : flash.display.Shader, ?target : Dynamic, ?width : Int, ?height : Int) : Void;
+	function new(?shader : Shader, ?target : Dynamic, width : Int = 0, height : Int = 0) : Void;
 	function cancel() : Void;
-	function start(?waitForCompletion : Bool) : Void;
+	function start(waitForCompletion : Bool = false) : Void;
 }

+ 1 - 1
std/flash9/display/ShaderParameter.hx

@@ -1,6 +1,6 @@
 package flash.display;
 
-extern class ShaderParameter {
+@:final extern class ShaderParameter implements Dynamic {
 	var index(default,null) : Int;
 	var type(default,null) : ShaderParameterType;
 	var value : Array<Dynamic>;

+ 2 - 0
std/flash9/display/Stage.hx

@@ -2,6 +2,8 @@ package flash.display;
 
 extern class Stage extends DisplayObjectContainer {
 	var align : StageAlign;
+	@:require(flash10) var colorCorrection : ColorCorrection;
+	@:require(flash10) var colorCorrectionSupport(default,null) : ColorCorrectionSupport;
 	var displayState : StageDisplayState;
 	var focus : InteractiveObject;
 	var frameRate : Float;

+ 1 - 0
std/flash9/events/ContextMenuEvent.hx

@@ -2,6 +2,7 @@ package flash.events;
 
 extern class ContextMenuEvent extends Event {
 	var contextMenuOwner : flash.display.InteractiveObject;
+	@:require(flash10) var isMouseTargetInaccessible : Bool;
 	var mouseTarget : flash.display.InteractiveObject;
 	function new(type : String, bubbles : Bool = false, cancelable : Bool = false, ?mouseTarget : flash.display.InteractiveObject, ?contextMenuOwner : flash.display.InteractiveObject) : Void;
 	static var MENU_ITEM_SELECT : String;

+ 7 - 0
std/flash9/events/Event.hx

@@ -20,22 +20,29 @@ extern class Event {
 	static var ADDED_TO_STAGE : String;
 	static var CANCEL : String;
 	static var CHANGE : String;
+	@:require(flash10) static var CLEAR : String;
 	static var CLOSE : String;
 	static var COMPLETE : String;
 	static var CONNECT : String;
+	@:require(flash10) static var COPY : String;
+	@:require(flash10) static var CUT : String;
 	static var DEACTIVATE : String;
 	static var ENTER_FRAME : String;
+	@:require(flash10) static var EXIT_FRAME : String;
+	@:require(flash10) static var FRAME_CONSTRUCTED : String;
 	static var FULLSCREEN : String;
 	static var ID3 : String;
 	static var INIT : String;
 	static var MOUSE_LEAVE : String;
 	static var OPEN : String;
+	@:require(flash10) static var PASTE : String;
 	static var REMOVED : String;
 	static var REMOVED_FROM_STAGE : String;
 	static var RENDER : String;
 	static var RESIZE : String;
 	static var SCROLL : String;
 	static var SELECT : String;
+	@:require(flash10) static var SELECT_ALL : String;
 	static var SOUND_COMPLETE : String;
 	static var TAB_CHILDREN_CHANGE : String;
 	static var TAB_ENABLED_CHANGE : String;

+ 1 - 0
std/flash9/events/FocusEvent.hx

@@ -1,6 +1,7 @@
 package flash.events;
 
 extern class FocusEvent extends Event {
+	@:require(flash10) var isRelatedObjectInaccessible : Bool;
 	var keyCode : UInt;
 	var relatedObject : flash.display.InteractiveObject;
 	var shiftKey : Bool;

+ 1 - 0
std/flash9/events/MouseEvent.hx

@@ -5,6 +5,7 @@ extern class MouseEvent extends Event {
 	var buttonDown : Bool;
 	var ctrlKey : Bool;
 	var delta : Int;
+	@:require(flash10) var isRelatedObjectInaccessible : Bool;
 	var localX : Float;
 	var localY : Float;
 	var relatedObject : flash.display.InteractiveObject;

+ 3 - 3
std/flash9/events/SampleDataEvent.hx

@@ -1,8 +1,8 @@
 package flash.events;
 
 extern class SampleDataEvent extends Event {
-	var position : Float;
 	var data : flash.utils.ByteArray;
-    function new( ?type : String, ?bubbles : Bool, ?cancelable : Bool, ?position : Float, ?data : flash.utils.ByteArray ) : Void;
-    static var SAMPLE_DATA : String;
+	var position : Float;
+	function new(type : String, bubbles : Bool = false, cancelable : Bool = false, theposition : Float = 0, ?thedata : flash.utils.ByteArray) : Void;
+	static var SAMPLE_DATA : String;
 }

+ 4 - 6
std/flash9/events/ShaderEvent.hx

@@ -1,11 +1,9 @@
 package flash.events;
 
-extern class ShaderEvent extends Event  {
+extern class ShaderEvent extends Event {
+	var bitmapData : flash.display.BitmapData;
 	var byteArray : flash.utils.ByteArray;
 	var vector : flash.Vector<Float>;
-	var bitmapData : flash.display.BitmapData;
-
-	function new( ?type : String, ?bubbles : Bool, ?cancelable : Bool, ?bitmap : flash.display.BitmapData, ?array : flash.utils.ByteArray, ?vector : flash.Vector<Float> ) : Void;
-
-	public static var COMPLETE(default,null) : String;
+	function new(type : String, bubbles : Bool = false, cancelable : Bool = false, ?bitmap : flash.display.BitmapData, ?array : flash.utils.ByteArray, ?vector : flash.Vector<Float>) : Void;
+	static var COMPLETE : String;
 }

+ 3 - 6
std/flash9/filters/ShaderFilter.hx

@@ -1,13 +1,10 @@
 package flash.filters;
 
 extern class ShaderFilter extends BitmapFilter {
-
+	var bottomExtension : Int;
 	var leftExtension : Int;
 	var rightExtension : Int;
-	var topExtension : Int;
-	var bottomExtension : Int;
 	var shader : flash.display.Shader;
-
-	function new( ?shader : flash.display.Shader ) : Void;
-
+	var topExtension : Int;
+	function new(?shader : flash.display.Shader) : Void;
 }

+ 23 - 26
std/flash9/geom/Matrix3D.hx

@@ -1,31 +1,28 @@
-package flash.geom;
+package flash.geom;
 
-extern class Matrix3D {
-
-	var rawData : flash.Vector<Float>;
-	var position : Vector3D;
+@:require(flash10) extern class Matrix3D {
 	var determinant(default,null) : Float;
-
-	function new( ?data : flash.Vector<Float> ) : Void;
-	function transpose() : Void;
-	function prependTranslation( x : Float, y : Float, z : Float ) : Void;
-	function deltaTransformVector( v : Vector3D ) : Vector3D;
-	function pointAt( ?pos : Vector3D, ?at : Vector3D, ?up : Vector3D ) : Void;
-	function transformVectors( vin : flash.Vector<Float>, vout : flash.Vector<Float> ) : Void;
-	function prependRotation( ?degrees : Float, ?axis : Vector3D, ?pivotPoint : Vector3D ) : Void;
-	function prepend( rhs : Matrix3D ) : Void;
-	function transformVector( v : Vector3D ) : Vector3D;
-	function appendScale( xScale : Float, yScale : Float, zScale : Float ) : Void;
-	function decompose( ?orientation : Orientation3D ) : flash.Vector<Vector3D>;
-	function interpolateTo( toMat : Matrix3D, percent : Float ) : Void;
-	function invert() : Bool;
-	function appendTranslation( x : Float, y : Float, z : Float ) : Void;
-	function appendRotation( ?degrees : Float, ?axis : Vector3D, ?pivotPoint : Vector3D ) : Void;
-	function append( lhs : Matrix3D ) : Void;
-	function prependScale( xScale : Float, yScale : Float, zScale : Float ) : Void;
+	var position : Vector3D;
+	var rawData : flash.Vector<Float>;
+	function new(?v : flash.Vector<Float>) : Void;
+	function append(lhs : Matrix3D) : Void;
+	function appendRotation(degrees : Float, axis : Vector3D, ?pivotPoint : Vector3D) : Void;
+	function appendScale(xScale : Float, yScale : Float, zScale : Float) : Void;
+	function appendTranslation(x : Float, y : Float, z : Float) : Void;
 	function clone() : Matrix3D;
+	function decompose(?orientationStyle : Orientation3D) : flash.Vector<Vector3D>;
+	function deltaTransformVector(v : Vector3D) : Vector3D;
 	function identity() : Void;
-	function recompose( ?components : flash.Vector<Vector3D>, ?orientation : Orientation3D ) : Bool;
-
-	static function interpolate( thisMat : Matrix3D, toMat : Matrix3D, percent : Float ) : Matrix3D;
+	function interpolateTo(toMat : Matrix3D, percent : Float) : Void;
+	function invert() : Bool;
+	function pointAt(pos : Vector3D, ?at : Vector3D, ?up : Vector3D) : Void;
+	function prepend(rhs : Matrix3D) : Void;
+	function prependRotation(degrees : Float, axis : Vector3D, ?pivotPoint : Vector3D) : Void;
+	function prependScale(xScale : Float, yScale : Float, zScale : Float) : Void;
+	function prependTranslation(x : Float, y : Float, z : Float) : Void;
+	function recompose(components : flash.Vector<Vector3D>, ?orientationStyle : Orientation3D) : Bool;
+	function transformVector(v : Vector3D) : Vector3D;
+	function transformVectors(vin : flash.Vector<Float>, vout : flash.Vector<Float>) : Void;
+	function transpose() : Void;
+	static function interpolate(thisMat : Matrix3D, toMat : Matrix3D, percent : Float) : Matrix3D;
 }

+ 1 - 1
std/flash9/geom/Orientation3D.hx

@@ -1,4 +1,4 @@
-package flash.geom;
+package flash.geom;
 
 extern enum Orientation3D {
 	AXIS_ANGLE;

+ 3 - 5
std/flash9/geom/PerspectiveProjection.hx

@@ -1,11 +1,9 @@
-package flash.geom;
+package flash.geom;
 
-extern class PerspectiveProjection	{
-
-	var projectionCenter : Point;
+@:require(flash10) extern class PerspectiveProjection {
 	var fieldOfView : Float;
 	var focalLength : Float;
-
+	var projectionCenter : Point;
 	function new() : Void;
 	function toMatrix3D() : Matrix3D;
 }

+ 3 - 0
std/flash9/geom/Transform.hx

@@ -5,6 +5,9 @@ extern class Transform {
 	var concatenatedColorTransform(default,null) : ColorTransform;
 	var concatenatedMatrix(default,null) : Matrix;
 	var matrix : Matrix;
+	@:require(flash10) var matrix3D : Matrix3D;
+	@:require(flash10) var perspectiveProjection : PerspectiveProjection;
 	var pixelBounds(default,null) : Rectangle;
 	function new(displayObject : flash.display.DisplayObject) : Void;
+	@:require(flash10) function getRelativeMatrix3D(relativeTo : flash.display.DisplayObject) : Matrix3D;
 }

+ 5 - 5
std/flash9/geom/Utils3D.hx

@@ -1,7 +1,7 @@
-package flash.geom;
+package flash.geom;
 
-extern class Utils3D {
-	static function pointTowards( ?percent : Float, ?mat : Matrix3D, ?pos: Vector3D, ?at : Vector3D, ?up : Vector3D ) : Matrix3D;
-	static function projectVector( m : Matrix3D, v : Vector3D ) : Vector3D;
-	static function projectVectors( m : Matrix3D, verts : flash.Vector<Float>, projectedVerts : flash.Vector<Float>, uvts : flash.Vector<Float>) : Dynamic;
+@:require(flash10) extern class Utils3D {
+	static function pointTowards(percent : Float, mat : Matrix3D, pos : Vector3D, ?at : Vector3D, ?up : Vector3D) : Matrix3D;
+	static function projectVector(m : Matrix3D, v : Vector3D) : Vector3D;
+	static function projectVectors(m : Matrix3D, verts : flash.Vector<Float>, projectedVerts : flash.Vector<Float>, uvts : flash.Vector<Float>) : Void;
 }

+ 21 - 27
std/flash9/geom/Vector3D.hx

@@ -1,36 +1,30 @@
-package flash.geom;
-
-extern class Vector3D {
-
-	static var X_AXIS(default,null) : Vector3D;
-	static var Y_AXIS(default,null) : Vector3D;
-	static var Z_AXIS(default,null) : Vector3D;
+package flash.geom;
 
+@:require(flash10) extern class Vector3D {
+	var length(default,null) : Float;
+	var lengthSquared(default,null) : Float;
+	var w : Float;
 	var x : Float;
 	var y : Float;
 	var z : Float;
-	var w : Float;
-
-	var lengthSquared(default,null) : Float;
-	var length(default,null) : Float;
-
-	function new( ?ax:Float, ?ay:Float, ?az:Float, ?aw:Float ) : Void;
-	function scaleBy( s : Float ) : Void;
+	function new(x : Float = 0, y : Float = 0, z : Float = 0, w : Float = 0) : Void;
+	function add(a : Vector3D) : Vector3D;
+	function clone() : Vector3D;
+	function crossProduct(a : Vector3D) : Vector3D;
+	function decrementBy(a : Vector3D) : Void;
+	function dotProduct(a : Vector3D) : Float;
+	function equals(toCompare : Vector3D, allFour : Bool = false) : Bool;
+	function incrementBy(a : Vector3D) : Void;
+	function nearEquals(toCompare : Vector3D, tolerance : Float, allFour : Bool = false) : Bool;
 	function negate() : Void;
-	function nearEquals( ?toCompare : Vector3D, ?tolerance : Float, ?allFour : Bool ) : Bool;
-	function decrementBy( a : Vector3D ) : Void;
 	function normalize() : Float;
-	function crossProduct( a : Vector3D) : Vector3D;
-	function subtract( a : Vector3D) : Vector3D;
 	function project() : Void;
-	function clone() : Vector3D;
-	function dotProduct( a : Vector3D ) : Float;
-	function add( a : Vector3D ) : Vector3D;
+	function scaleBy(s : Float) : Void;
+	function subtract(a : Vector3D) : Vector3D;
 	function toString() : String;
-	function incrementBy( a : Vector3D ) : Void;
-	function equals( ?toCompare:Vector3D, ?allFour:Bool ) : Bool;
-
-	static function angleBetween( a : Vector3D, b : Vector3D ) : Float;
-	static function distance( pt1 : Vector3D, pt2 : Vector3D ) : Float;
-
+	static var X_AXIS : Vector3D;
+	static var Y_AXIS : Vector3D;
+	static var Z_AXIS : Vector3D;
+	static function angleBetween(a : Vector3D, b : Vector3D) : Float;
+	static function distance(pt1 : Vector3D, pt2 : Vector3D) : Float;
 }

+ 4 - 1
std/flash9/media/Microphone.hx

@@ -2,6 +2,9 @@ package flash.media;
 
 @:final extern class Microphone extends flash.events.EventDispatcher {
 	var activityLevel(default,null) : Float;
+	@:require(flash10) var codec : SoundCodec;
+	@:require(flash10) var encodeQuality : Int;
+	@:require(flash10) var framesPerPacket : Int;
 	var gain : Float;
 	var index(default,null) : Int;
 	var muted(default,null) : Bool;
@@ -16,5 +19,5 @@ package flash.media;
 	function setSilenceLevel(silenceLevel : Float, timeout : Int = -1) : Void;
 	function setUseEchoSuppression(useEchoSuppression : Bool) : Void;
 	static var names(default,null) : Array<Dynamic>;
-	static function getMicrophone(index : Int = 0) : Microphone;
+	static function getMicrophone(index : Int = -1) : Microphone;
 }

+ 1 - 0
std/flash9/media/Sound.hx

@@ -9,6 +9,7 @@ extern class Sound extends flash.events.EventDispatcher {
 	var url(default,null) : String;
 	function new(?stream : flash.net.URLRequest, ?context : SoundLoaderContext) : Void;
 	function close() : Void;
+	@:require(flash10) function extract(target : flash.utils.ByteArray, length : Float, startPosition : Float = -1) : Float;
 	function load(stream : flash.net.URLRequest, ?context : SoundLoaderContext) : Void;
 	function play(startTime : Float = 0, loops : Int = 0, ?sndTransform : SoundTransform) : SoundChannel;
 }

+ 1 - 1
std/flash9/media/SoundCodec.hx

@@ -1,6 +1,6 @@
 package flash.media;
 
 extern enum SoundCodec {
-	SPEEX;
 	NELLYMOSER;
+	SPEEX;
 }

+ 3 - 0
std/flash9/net/FileReference.hx

@@ -3,6 +3,7 @@ package flash.net;
 extern class FileReference extends flash.events.EventDispatcher {
 	var creationDate(default,null) : Date;
 	var creator(default,null) : String;
+	@:require(flash10) var data(default,null) : flash.utils.ByteArray;
 	var modificationDate(default,null) : Date;
 	var name(default,null) : String;
 	var size(default,null) : UInt;
@@ -11,5 +12,7 @@ extern class FileReference extends flash.events.EventDispatcher {
 	function browse(?typeFilter : Array<FileFilter>) : Bool;
 	function cancel() : Void;
 	function download(request : URLRequest, ?defaultFileName : String) : Void;
+	@:require(flash10) function load() : Void;
+	@:require(flash10) function save(data : Dynamic, ?defaultFileName : String) : Void;
 	function upload(request : URLRequest, ?uploadDataFieldName : String, testUpload : Bool = false) : Void;
 }

+ 7 - 0
std/flash9/net/NetConnection.hx

@@ -4,8 +4,15 @@ extern class NetConnection extends flash.events.EventDispatcher {
 	var client : Dynamic;
 	var connected(default,null) : Bool;
 	var connectedProxyType(default,null) : String;
+	@:require(flash10) var farID(default,null) : String;
+	@:require(flash10) var farNonce(default,null) : String;
+	@:require(flash10) var maxPeerConnections : UInt;
+	@:require(flash10) var nearID(default,null) : String;
+	@:require(flash10) var nearNonce(default,null) : String;
 	var objectEncoding : UInt;
+	@:require(flash10) var protocol(default,null) : String;
 	var proxyType : String;
+	@:require(flash10) var unconnectedPeerStreams(default,null) : Array<Dynamic>;
 	var uri(default,null) : String;
 	var usingTLS(default,null) : Bool;
 	function new() : Void;

+ 11 - 1
std/flash9/net/NetStream.hx

@@ -10,17 +10,25 @@ extern class NetStream extends flash.events.EventDispatcher {
 	var client : Dynamic;
 	var currentFPS(default,null) : Float;
 	var decodedFrames(default,null) : UInt;
+	@:require(flash10) var farID(default,null) : String;
+	@:require(flash10) var farNonce(default,null) : String;
+	@:require(flash10) var info(default,null) : NetStreamInfo;
 	var liveDelay(default,null) : Float;
+	@:require(flash10) var maxPauseBufferTime : Float;
+	@:require(flash10) var nearNonce(default,null) : String;
 	var objectEncoding(default,null) : UInt;
+	@:require(flash10) var peerStreams(default,null) : Array<Dynamic>;
 	var soundTransform : flash.media.SoundTransform;
 	var time(default,null) : Float;
 	var videoCodec(default,null) : UInt;
-	function new(connection : NetConnection) : Void;
+	function new(connection : NetConnection, ?peerID : String) : Void;
 	function attachAudio(microphone : flash.media.Microphone) : Void;
 	function attachCamera(theCamera : flash.media.Camera, snapshotMilliseconds : Int = -1) : Void;
 	function close() : Void;
+	@:require(flash10) function onPeerConnect(subscriber : NetStream) : Bool;
 	function pause() : Void;
 	function play(?p1 : Dynamic, ?p2 : Dynamic, ?p3 : Dynamic, ?p4 : Dynamic, ?p5 : Dynamic) : Void;
+	@:require(flash10) function play2(param : NetStreamPlayOptions) : Void;
 	function publish(?name : String, ?type : String) : Void;
 	function receiveAudio(flag : Bool) : Void;
 	function receiveVideo(flag : Bool) : Void;
@@ -29,4 +37,6 @@ extern class NetStream extends flash.events.EventDispatcher {
 	function seek(offset : Float) : Void;
 	function send(handlerName : String, ?p1 : Dynamic, ?p2 : Dynamic, ?p3 : Dynamic, ?p4 : Dynamic, ?p5 : Dynamic) : Void;
 	function togglePause() : Void;
+	@:require(flash10) static var CONNECT_TO_FMS : String;
+	@:require(flash10) static var DIRECT_CONNECTIONS : String;
 }

+ 17 - 13
std/flash9/net/NetStreamInfo.hx

@@ -1,21 +1,25 @@
 package flash.net;
 
-extern class NetStreamInfo 	{
-	var videoBufferByteLength(default,null) : Float;
-	var droppedFrames(default,null) : Float;
-	var dataBytesPerSecond(default,null) : Float;
-	var dataBufferLength(default,null) : Float;
+@:final extern class NetStreamInfo {
 	var SRTT(default,null) : Float;
-	var videoBytesPerSecond(default,null) : Float;
-	var currentBytesPerSecond(default,null) : Float;
-	var videoByteCount(default,null) : Float;
-	var audioByteCount(default,null) : Float;
+	var audioBufferByteLength(default,null) : Float;
 	var audioBufferLength(default,null) : Float;
+	var audioByteCount(default,null) : Float;
+	var audioBytesPerSecond(default,null) : Float;
+	var audioLossRate(default,null) : Float;
+	var byteCount(default,null) : Float;
+	var currentBytesPerSecond(default,null) : Float;
 	var dataBufferByteLength(default,null) : Float;
-	var playbackBytesPerSecond(default,null) : Float;
+	var dataBufferLength(default,null) : Float;
 	var dataByteCount(default,null) : Float;
-	var audioBytesPerSecond(default,null) : Float;
+	var dataBytesPerSecond(default,null) : Float;
+	var droppedFrames(default,null) : Float;
+	var maxBytesPerSecond(default,null) : Float;
+	var playbackBytesPerSecond(default,null) : Float;
+	var videoBufferByteLength(default,null) : Float;
 	var videoBufferLength(default,null) : Float;
-	var audioBufferByteLength(default,null) : Float;
-	var byteCount(default,null) : Float;
+	var videoByteCount(default,null) : Float;
+	var videoBytesPerSecond(default,null) : Float;
+	function new(curBPS : Float, byteCount : Float, maxBPS : Float, audioBPS : Float, audioByteCount : Float, videoBPS : Float, videoByteCount : Float, dataBPS : Float, dataByteCount : Float, playbackBPS : Float, droppedFrames : Float, audioBufferByteLength : Float, videoBufferByteLength : Float, dataBufferByteLength : Float, audioBufferLength : Float, videoBufferLength : Float, dataBufferLength : Float, srtt : Float, audioLossRate : Float) : Void;
+	function toString() : String;
 }

+ 3 - 3
std/flash9/net/NetStreamPlayOptions.hx

@@ -1,10 +1,10 @@
 package flash.net;
 
-extern class NetStreamPlayOptions extends flash.events.EventDispatcher {
-	var oldStreamName : String;
+extern class NetStreamPlayOptions extends flash.events.EventDispatcher, implements Dynamic {
 	var len : Float;
+	var oldStreamName : String;
 	var start : Float;
 	var streamName : String;
 	var transition : NetStreamPlayTransitions;
-	public function new() : Void;
+	function new() : Void;
 }

+ 1 - 0
std/flash9/net/Socket.hx

@@ -5,6 +5,7 @@ extern class Socket extends flash.events.EventDispatcher, implements flash.utils
 	var connected(default,null) : Bool;
 	var endian : flash.utils.Endian;
 	var objectEncoding : UInt;
+	@:require(flash10) var timeout : UInt;
 	function new(?host : String, port : Int = 0) : Void;
 	function close() : Void;
 	function connect(host : String, port : Int) : Void;

+ 1 - 0
std/flash9/net/XMLSocket.hx

@@ -2,6 +2,7 @@ package flash.net;
 
 extern class XMLSocket extends flash.events.EventDispatcher {
 	var connected(default,null) : Bool;
+	@:require(flash10) var timeout : Int;
 	function new(?host : String, port : Int = 0) : Void;
 	function close() : Void;
 	function connect(host : String, port : Int) : Void;

+ 2 - 0
std/flash9/system/ApplicationDomain.hx

@@ -1,9 +1,11 @@
 package flash.system;
 
 @:final extern class ApplicationDomain {
+	@:require(flash10) var domainMemory : flash.utils.ByteArray;
 	var parentDomain(default,null) : ApplicationDomain;
 	function new(?parentDomain : ApplicationDomain) : Void;
 	function getDefinition(name : String) : Dynamic;
 	function hasDefinition(name : String) : Bool;
+	@:require(flash10) static var MIN_DOMAIN_MEMORY_LENGTH(default,null) : UInt;
 	static var currentDomain(default,null) : ApplicationDomain;
 }

+ 2 - 0
std/flash9/system/Capabilities.hx

@@ -17,9 +17,11 @@ extern class Capabilities {
 	static var hasTLS(default,null) : Bool;
 	static var hasVideoEncoder(default,null) : Bool;
 	static var isDebugger(default,null) : Bool;
+	@:require(flash10) static var isEmbeddedInAcrobat(default,null) : Bool;
 	static var language(default,null) : String;
 	static var localFileReadDisable(default,null) : Bool;
 	static var manufacturer(default,null) : String;
+	@:require(flash10) static var maxLevelIDC(default,null) : String;
 	static var os(default,null) : String;
 	static var pixelAspectRatio(default,null) : Float;
 	static var playerType(default,null) : String;

+ 2 - 5
std/flash9/system/JPEGLoaderContext.hx

@@ -1,9 +1,6 @@
 package flash.system;
 
-extern class JPEGLoaderContext extends LoaderContext {
-
+@:require(flash10) extern class JPEGLoaderContext extends LoaderContext {
 	var deblockingFilter : Float;
-
-	function new( ?deblockingFilter : Float, ?checkPolicyFile : Bool, ?applicationDomain:ApplicationDomain, ?securityDomain:SecurityDomain ) : Void;
-
+	function new(deblockingFilter : Float = 0, checkPolicyFile : Bool = false, ?applicationDomain : ApplicationDomain, ?securityDomain : SecurityDomain) : Void;
 }

+ 1 - 0
std/flash9/text/FontType.hx

@@ -3,4 +3,5 @@ package flash.text;
 extern enum FontType {
 	DEVICE;
 	EMBEDDED;
+	EMBEDDED_CFF;
 }

+ 1 - 0
std/flash9/text/TextField.hx

@@ -64,4 +64,5 @@ extern class TextField extends flash.display.InteractiveObject {
 	function replaceText(beginIndex : Int, endIndex : Int, newText : String) : Void;
 	function setSelection(beginIndex : Int, endIndex : Int) : Void;
 	function setTextFormat(format : TextFormat, beginIndex : Int = -1, endIndex : Int = -1) : Void;
+	@:require(flash10) static function isFontCompatible(fontName : String, fontStyle : String) : Bool;
 }

+ 4 - 4
std/flash9/text/engine/ContentElement.hx

@@ -1,15 +1,15 @@
 package flash.text.engine;
 
 extern class ContentElement {
-	function new(?elementFormat : flash.text.engine.ElementFormat, ?eventMirror : flash.events.EventDispatcher, ?textRotation : TextRotation) : Void;
-	var elementFormat : flash.text.engine.ElementFormat;
+	var elementFormat : ElementFormat;
 	var eventMirror : flash.events.EventDispatcher;
-	var groupElement(default,null) : flash.text.engine.GroupElement;
+	var groupElement(default,null) : GroupElement;
 	var rawText(default,null) : String;
 	var text(default,null) : String;
-	var textBlock(default,null) : flash.text.engine.TextBlock;
+	var textBlock(default,null) : TextBlock;
 	var textBlockBeginIndex(default,null) : Int;
 	var textRotation : TextRotation;
 	var userData : Dynamic;
+	function new(?elementFormat : ElementFormat, ?eventMirror : flash.events.EventDispatcher, ?textRotation : TextRotation) : Void;
 	static var GRAPHIC_ELEMENT : UInt;
 }

+ 3 - 3
std/flash9/text/engine/EastAsianJustifier.hx

@@ -1,6 +1,6 @@
 package flash.text.engine;
 
-extern class EastAsianJustifier extends flash.text.engine.TextJustifier {
-	function new(?locale : String, ?lineJustification : flash.text.engine.LineJustification, ?justificationStyle : flash.text.engine.JustificationStyle) : Void;
-	var justificationStyle : flash.text.engine.JustificationStyle;
+@:final extern class EastAsianJustifier extends TextJustifier {
+	var justificationStyle : JustificationStyle;
+	function new(?locale : String, ?lineJustification : LineJustification, ?justificationStyle : JustificationStyle) : Void;
 }

+ 14 - 14
std/flash9/text/engine/ElementFormat.hx

@@ -1,25 +1,25 @@
 package flash.text.engine;
 
-extern class ElementFormat {
-	function new(?fontDescription : flash.text.engine.FontDescription, ?fontSize : Float, ?color : UInt, ?alpha : Float, ?textRotation : flash.text.engine.TextRotation, ?dominantBaseline : flash.text.engine.TextBaseline, ?alignmentBaseline : flash.text.engine.TextBaseline, ?baselineShift : Float, ?kerning : flash.text.engine.Kerning, ?trackingRight : Float, ?trackingLeft : Float, ?locale : String, ?breakOpportunity : flash.text.engine.BreakOpportunity, ?digitCase : flash.text.engine.DigitCase, ?digitWidth : flash.text.engine.DigitWidth, ?ligatureLevel : flash.text.engine.LigatureLevel, ?typographicCase : flash.text.engine.TypographicCase) : Void;
-	var alignmentBaseline : flash.text.engine.TextBaseline;
+@:final extern class ElementFormat {
+	var alignmentBaseline : TextBaseline;
 	var alpha : Float;
 	var baselineShift : Float;
-	var breakOpportunity : flash.text.engine.BreakOpportunity;
-	function clone() : flash.text.engine.ElementFormat;
+	var breakOpportunity : BreakOpportunity;
 	var color : UInt;
-	var digitCase : flash.text.engine.DigitCase;
-	var digitWidth : flash.text.engine.DigitWidth;
-	var dominantBaseline : flash.text.engine.TextBaseline;
-	var fontDescription : flash.text.engine.FontDescription;
+	var digitCase : DigitCase;
+	var digitWidth : DigitWidth;
+	var dominantBaseline : TextBaseline;
+	var fontDescription : FontDescription;
 	var fontSize : Float;
-	function getFontMetrics() : flash.text.engine.FontMetrics;
-	var kerning : flash.text.engine.Kerning;
-	var ligatureLevel : flash.text.engine.LigatureLevel;
+	var kerning : Kerning;
+	var ligatureLevel : LigatureLevel;
 	var locale : String;
 	var locked : Bool;
-	var textRotation : flash.text.engine.TextRotation;
+	var textRotation : TextRotation;
 	var trackingLeft : Float;
 	var trackingRight : Float;
-	var typographicCase : flash.text.engine.TypographicCase;
+	var typographicCase : TypographicCase;
+	function new(?fontDescription : FontDescription, fontSize : Float = 12, color : UInt = 0, alpha : Float = 1, ?textRotation : TextRotation, ?dominantBaseline : TextBaseline, ?alignmentBaseline : TextBaseline, baselineShift : Float = 0, ?kerning : Kerning, trackingRight : Float = 0, trackingLeft : Float = 0, ?locale : String, ?breakOpportunity : BreakOpportunity, ?digitCase : DigitCase, ?digitWidth : DigitWidth, ?ligatureLevel : LigatureLevel, ?typographicCase : TypographicCase) : Void;
+	function clone() : ElementFormat;
+	function getFontMetrics() : FontMetrics;
 }

+ 9 - 9
std/flash9/text/engine/FontDescription.hx

@@ -1,14 +1,14 @@
 package flash.text.engine;
 
-extern class FontDescription {
-	function new(?fontName : String, ?fontWeight : flash.text.engine.FontWeight, ?fontPosture : flash.text.engine.FontPosture, ?fontLookup : flash.text.engine.FontLookup, ?renderingMode : flash.text.engine.RenderingMode, ?cffHinting : flash.text.engine.CFFHinting) : Void;
-	var cffHinting : flash.text.engine.CFFHinting;
-	function clone() : flash.text.engine.FontDescription;
-	var fontLookup : flash.text.engine.FontLookup;
+@:final extern class FontDescription {
+	var cffHinting : CFFHinting;
+	var fontLookup : FontLookup;
 	var fontName : String;
-	var fontPosture : flash.text.engine.FontPosture;
-	var fontWeight : flash.text.engine.FontWeight;
-	function isFontCompatible(fontName : String, fontWeight : flash.text.engine.FontWeight, fontPosture : flash.text.engine.FontPosture) : Bool;
+	var fontPosture : FontPosture;
+	var fontWeight : FontWeight;
 	var locked : Bool;
-	var renderingMode : flash.text.engine.RenderingMode;
+	var renderingMode : RenderingMode;
+	function new(?fontName : String, ?fontWeight : FontWeight, ?fontPosture : FontPosture, ?fontLookup : FontLookup, ?renderingMode : RenderingMode, ?cffHinting : CFFHinting) : Void;
+	function clone() : FontDescription;
+	static function isFontCompatible(fontName : String, fontWeight : FontWeight, fontPosture : FontPosture) : Bool;
 }

+ 2 - 2
std/flash9/text/engine/FontMetrics.hx

@@ -1,7 +1,6 @@
 package flash.text.engine;
 
-extern class FontMetrics {
-	function new(emBox : flash.geom.Rectangle, strikethroughOffset : Float, strikethroughThickness : Float, underlineOffset : Float, underlineThickness : Float, subscriptOffset : Float, subscriptScale : Float, superscriptOffset : Float, superscriptScale : Float) : Void;
+@:final extern class FontMetrics {
 	var emBox : flash.geom.Rectangle;
 	var strikethroughOffset : Float;
 	var strikethroughThickness : Float;
@@ -11,4 +10,5 @@ extern class FontMetrics {
 	var superscriptScale : Float;
 	var underlineOffset : Float;
 	var underlineThickness : Float;
+	function new(emBox : flash.geom.Rectangle, strikethroughOffset : Float, strikethroughThickness : Float, underlineOffset : Float, underlineThickness : Float, subscriptOffset : Float, subscriptScale : Float, superscriptOffset : Float, superscriptScale : Float) : Void;
 }

+ 2 - 2
std/flash9/text/engine/GraphicElement.hx

@@ -1,8 +1,8 @@
 package flash.text.engine;
 
-extern class GraphicElement extends flash.text.engine.ContentElement {
-	function new(?graphic : flash.display.DisplayObject, ?elementWidth : Float, ?elementHeight : Float, ?elementFormat : flash.text.engine.ElementFormat, ?eventMirror : flash.events.EventDispatcher, ?textRotation : flash.text.engine.TextRotation) : Void;
+@:final extern class GraphicElement extends ContentElement {
 	var elementHeight : Float;
 	var elementWidth : Float;
 	var graphic : flash.display.DisplayObject;
+	function new(?graphic : flash.display.DisplayObject, elementWidth : Float = 15, elementHeight : Float = 15, ?elementFormat : ElementFormat, ?eventMirror : flash.events.EventDispatcher, ?textRotation : TextRotation) : Void;
 }

+ 10 - 10
std/flash9/text/engine/GroupElement.hx

@@ -1,15 +1,15 @@
 package flash.text.engine;
 
-extern class GroupElement extends flash.text.engine.ContentElement {
-	function new(?elements : flash.Vector<flash.text.engine.ContentElement>, ?elementFormat : flash.text.engine.ElementFormat, ?eventMirror : flash.events.EventDispatcher, ?textRotation : flash.text.engine.TextRotation) : Void;
+@:final extern class GroupElement extends ContentElement {
 	var elementCount(default,null) : Int;
-	function getElementAt(index : Int) : flash.text.engine.ContentElement;
-	function getElementAtCharIndex(charIndex : Int) : flash.text.engine.ContentElement;
-	function getElementIndex(element : flash.text.engine.ContentElement) : Int;
-	function groupElements(beginIndex : Int, endIndex : Int) : flash.text.engine.GroupElement;
-	function mergeTextElements(beginIndex : Int, endIndex : Int) : flash.text.engine.TextElement;
-	function replaceElements(beginIndex : Int, endIndex : Int, newElements : flash.Vector<flash.text.engine.ContentElement>) : flash.Vector<flash.text.engine.ContentElement>;
-	function setElements(value : flash.Vector<flash.text.engine.ContentElement>) : Void;
-	function splitTextElement(elementIndex : Int, splitIndex : Int) : flash.text.engine.TextElement;
+	function new(?elements : flash.Vector<ContentElement>, ?elementFormat : ElementFormat, ?eventMirror : flash.events.EventDispatcher, ?textRotation : TextRotation) : Void;
+	function getElementAt(index : Int) : ContentElement;
+	function getElementAtCharIndex(charIndex : Int) : ContentElement;
+	function getElementIndex(element : ContentElement) : Int;
+	function groupElements(beginIndex : Int, endIndex : Int) : GroupElement;
+	function mergeTextElements(beginIndex : Int, endIndex : Int) : TextElement;
+	function replaceElements(beginIndex : Int, endIndex : Int, newElements : flash.Vector<ContentElement>) : flash.Vector<ContentElement>;
+	function setElements(value : flash.Vector<ContentElement>) : Void;
+	function splitTextElement(elementIndex : Int, splitIndex : Int) : TextElement;
 	function ungroupElements(groupIndex : Int) : Void;
 }

+ 2 - 2
std/flash9/text/engine/SpaceJustifier.hx

@@ -1,6 +1,6 @@
 package flash.text.engine;
 
-extern class SpaceJustifier extends flash.text.engine.TextJustifier {
-	function new(?locale : String, ?lineJustification : flash.text.engine.LineJustification, ?letterSpacing : Bool) : Void;
+@:final extern class SpaceJustifier extends TextJustifier {
 	var letterSpacing : Bool;
+	function new(?locale : String, ?lineJustification : LineJustification, letterSpacing : Bool = false) : Void;
 }

+ 3 - 3
std/flash9/text/engine/TabStop.hx

@@ -1,8 +1,8 @@
 package flash.text.engine;
 
-extern class TabStop {
-	function new(?alignment : flash.text.engine.TabAlignment, ?position : Float, ?decimalAlignmentToken : String) : Void;
-	var alignment : flash.text.engine.TabAlignment;
+@:final extern class TabStop {
+	var alignment : TabAlignment;
 	var decimalAlignmentToken : String;
 	var position : Float;
+	function new(?alignment : TabAlignment, position : Float = 0, ?decimalAlignmentToken : String) : Void;
 }

+ 0 - 2
std/flash9/text/engine/TextBaseline.hx

@@ -7,7 +7,5 @@ extern enum TextBaseline {
 	IDEOGRAPHIC_CENTER;
 	IDEOGRAPHIC_TOP;
 	ROMAN;
-	//SUBSCRIPT;
-	//SUPERSCRIPT;
 	USE_DOMINANT_BASELINE;
 }

+ 16 - 18
std/flash9/text/engine/TextBlock.hx

@@ -1,29 +1,27 @@
 package flash.text.engine;
 
-extern class TextBlock {
-	function new(?content : flash.text.engine.ContentElement, ?tabStops : flash.Vector<flash.text.engine.TabStop>, ?textJustifier : flash.text.engine.TextJustifier, ?lineRotation : flash.text.engine.TextRotation, ?baselineZero : flash.text.engine.TextBaseline, ?bidiLevel : Int, ?applyNonLinearFontScaling : Bool, ?baselineFontDescription : flash.text.engine.FontDescription, ?baselineFontSize : Float) : Void;
+@:final extern class TextBlock {
 	var applyNonLinearFontScaling : Bool;
-	var baselineFontDescription : flash.text.engine.FontDescription;
+	var baselineFontDescription : FontDescription;
 	var baselineFontSize : Float;
-	var baselineZero : flash.text.engine.TextBaseline;
+	var baselineZero : TextBaseline;
 	var bidiLevel : Int;
-	var content : flash.text.engine.ContentElement;
-	function createTextLine(?previousLine : flash.text.engine.TextLine, ?width : Float, ?lineOffset : Float, ?fitSomething : Bool) : flash.text.engine.TextLine;
+	var content : ContentElement;
+	var firstInvalidLine(default,null) : TextLine;
+	var firstLine(default,null) : TextLine;
+	var lastLine(default,null) : TextLine;
+	var lineRotation : TextRotation;
+	var tabStops : flash.Vector<TabStop>;
+	var textJustifier : TextJustifier;
+	var textLineCreationResult(default,null) : TextLineCreationResult;
+	var userData : Dynamic;
+	function new(?content : ContentElement, ?tabStops : flash.Vector<TabStop>, ?textJustifier : TextJustifier, ?lineRotation : TextRotation, ?baselineZero : TextBaseline, bidiLevel : Int = 0, applyNonLinearFontScaling : Bool = true, ?baselineFontDescription : FontDescription, baselineFontSize : Float = 12) : Void;
+	function createTextLine(?previousLine : TextLine, width : Float = 1000000, lineOffset : Float = 0, fitSomething : Bool = false) : TextLine;
 	function dump() : String;
 	function findNextAtomBoundary(afterCharIndex : Int) : Int;
 	function findNextWordBoundary(afterCharIndex : Int) : Int;
 	function findPreviousAtomBoundary(beforeCharIndex : Int) : Int;
 	function findPreviousWordBoundary(beforeCharIndex : Int) : Int;
-	var firstInvalidLine(default,null) : flash.text.engine.TextLine;
-	var firstLine(default,null) : flash.text.engine.TextLine;
-	function getTextLineAtCharIndex(charIndex : Int) : flash.text.engine.TextLine;
-	//var glyphRotation : GlyphRotation;
-	var lastLine(default,null) : flash.text.engine.TextLine;
-	var lineRotation : flash.text.engine.TextRotation;
-	function releaseLines(firstLine : flash.text.engine.TextLine, lastLine : flash.text.engine.TextLine) : Void;
-	var tabStops : flash.Vector<flash.text.engine.TabStop>;
-	var textJustifier : flash.text.engine.TextJustifier;
-	var textLineCreationResult(default,null) : flash.text.engine.TextLineCreationResult;
-	var userData : Dynamic;
-	//private function DoCreateTextLine(previousLine : flash.text.engine.TextLine, width : Float, ?lineOffset : Float, ?fitSomething : Bool) : flash.text.engine.TextLine;
+	function getTextLineAtCharIndex(charIndex : Int) : TextLine;
+	function releaseLines(firstLine : TextLine, lastLine : TextLine) : Void;
 }

+ 2 - 3
std/flash9/text/engine/TextElement.hx

@@ -1,7 +1,6 @@
 package flash.text.engine;
 
-extern class TextElement extends flash.text.engine.ContentElement {
-	function new(?text : String, ?elementFormat : flash.text.engine.ElementFormat, ?eventMirror : flash.events.EventDispatcher, ?textRotation : flash.text.engine.TextRotation) : Void;
+@:final extern class TextElement extends ContentElement {
+	function new(?text : String, ?elementFormat : ElementFormat, ?eventMirror : flash.events.EventDispatcher, ?textRotation : TextRotation) : Void;
 	function replaceText(beginIndex : Int, endIndex : Int, newText : String) : Void;
-	//var text(null,default) : Void;
 }

+ 4 - 5
std/flash9/text/engine/TextJustifier.hx

@@ -1,10 +1,9 @@
 package flash.text.engine;
 
 extern class TextJustifier {
-	function new(locale : String, lineJustification : flash.text.engine.LineJustification) : Void;
-	function clone() : flash.text.engine.TextJustifier;
-	var lineJustification : flash.text.engine.LineJustification;
+	var lineJustification : LineJustification;
 	var locale(default,null) : String;
-	//private function setLocale(value : String) : Void;
-	static function getJustifierForLocale(locale : String) : flash.text.engine.TextJustifier;
+	function new(locale : String, lineJustification : LineJustification) : Void;
+	function clone() : TextJustifier;
+	static function getJustifierForLocale(locale : String) : TextJustifier;
 }

+ 18 - 19
std/flash9/text/engine/TextLine.hx

@@ -1,10 +1,23 @@
 package flash.text.engine;
 
-extern class TextLine extends flash.display.DisplayObjectContainer {
-	function new() : Void;
+@:final extern class TextLine extends flash.display.DisplayObjectContainer {
 	var ascent(default,null) : Float;
 	var atomCount(default,null) : Int;
 	var descent(default,null) : Float;
+	var hasGraphicElement(default,null) : Bool;
+	var mirrorRegions(default,null) : flash.Vector<TextLineMirrorRegion>;
+	var nextLine(default,null) : TextLine;
+	var previousLine(default,null) : TextLine;
+	var rawTextLength(default,null) : Int;
+	var specifiedWidth(default,null) : Float;
+	var textBlock(default,null) : TextBlock;
+	var textBlockBeginIndex(default,null) : Int;
+	var textHeight(default,null) : Float;
+	var textWidth(default,null) : Float;
+	var unjustifiedTextWidth(default,null) : Float;
+	var userData : Dynamic;
+	var validity : String;
+	function new() : Void;
 	function dump() : String;
 	function flushAtomData() : Void;
 	function getAtomBidiLevel(atomIndex : Int) : Int;
@@ -15,23 +28,9 @@ extern class TextLine extends flash.display.DisplayObjectContainer {
 	function getAtomIndexAtPoint(stageX : Float, stageY : Float) : Int;
 	function getAtomTextBlockBeginIndex(atomIndex : Int) : Int;
 	function getAtomTextBlockEndIndex(atomIndex : Int) : Int;
-	function getAtomTextRotation(atomIndex : Int) : flash.text.engine.TextRotation;
+	function getAtomTextRotation(atomIndex : Int) : String;
 	function getAtomWordBoundaryOnLeft(atomIndex : Int) : Bool;
-	function getBaselinePosition(baseline : flash.text.engine.TextBaseline) : Float;
-	function getMirrorRegion(mirror : flash.events.EventDispatcher) : flash.text.engine.TextLineMirrorRegion;
-	var hasGraphicElement(default,null) : Bool;
-	var mirrorRegions(default,null) : flash.Vector<flash.text.engine.TextLineMirrorRegion>;
-	var nextLine(default,null) : flash.text.engine.TextLine;
-	var previousLine(default,null) : flash.text.engine.TextLine;
-	var rawTextLength(default,null) : Int;
-	var specifiedWidth(default,null) : Float;
-	var textBlock(default,null) : flash.text.engine.TextBlock;
-	var textBlockBeginIndex(default,null) : Int;
-	var textHeight(default,null) : Float;
-	var textWidth(default,null) : Float;
-	var unjustifiedTextWidth(default,null) : Float;
-	var userData : Dynamic;
-	var validity : flash.text.engine.TextLineValidity;
-	//private function doGetAtomIndexAtPoint(x : Float, y : Float) : Int;
+	function getBaselinePosition(baseline : String) : Float;
+	function getMirrorRegion(mirror : flash.events.EventDispatcher) : TextLineMirrorRegion;
 	static var MAX_LINE_WIDTH : Int;
 }

+ 6 - 6
std/flash9/text/engine/TextLineMirrorRegion.hx

@@ -1,11 +1,11 @@
 package flash.text.engine;
 
-extern class TextLineMirrorRegion {
-	function new() : Void;
+@:final extern class TextLineMirrorRegion {
 	var bounds(default,null) : flash.geom.Rectangle;
-	var element(default,null) : flash.text.engine.ContentElement;
+	var element(default,null) : ContentElement;
 	var mirror(default,null) : flash.events.EventDispatcher;
-	var nextRegion(default,null) : flash.text.engine.TextLineMirrorRegion;
-	var previousRegion(default,null) : flash.text.engine.TextLineMirrorRegion;
-	var textLine(default,null) : flash.text.engine.TextLine;
+	var nextRegion(default,null) : TextLineMirrorRegion;
+	var previousRegion(default,null) : TextLineMirrorRegion;
+	var textLine(default,null) : TextLine;
+	function new() : Void;
 }

+ 3 - 0
std/flash9/ui/ContextMenu.hx

@@ -2,7 +2,10 @@ package flash.ui;
 
 @:final extern class ContextMenu extends flash.events.EventDispatcher {
 	var builtInItems : ContextMenuBuiltInItems;
+	@:require(flash10) var clipboardItems : ContextMenuClipboardItems;
+	@:require(flash10) var clipboardMenu : Bool;
 	var customItems : Array<Dynamic>;
+	@:require(flash10) var link : flash.net.URLRequest;
 	function new() : Void;
 	function clone() : ContextMenu;
 	function hideBuiltInItems() : Void;

+ 3 - 6
std/flash9/ui/ContextMenuClipboardItems.hx

@@ -1,14 +1,11 @@
 package flash.ui;
 
-extern class ContextMenuClipboardItems {
-
+@:final extern class ContextMenuClipboardItems {
+	var clear : Bool;
+	var copy : Bool;
 	var cut : Bool;
 	var paste : Bool;
-	var copy : Bool;
 	var selectAll : Bool;
-	var clear : Bool;
-
 	function new() : Void;
 	function clone() : ContextMenuClipboardItems;
 }
-

+ 1 - 0
std/flash9/ui/Mouse.hx

@@ -1,6 +1,7 @@
 package flash.ui;
 
 extern class Mouse {
+	@:require(flash10) static var cursor : MouseCursor;
 	static function hide() : Void;
 	static function show() : Void;
 }

+ 2 - 2
std/flash9/ui/MouseCursor.hx

@@ -1,9 +1,9 @@
 package flash.ui;
 
 extern enum MouseCursor {
+	ARROW;
+	AUTO;
 	BUTTON;
 	HAND;
 	IBEAM;
-	ARROW;
-	AUTO;
 }

+ 3 - 0
std/flash9/utils/ByteArray.hx

@@ -7,7 +7,10 @@ extern class ByteArray implements IDataOutput, implements IDataInput, implements
 	var objectEncoding : UInt;
 	var position : UInt;
 	function new() : Void;
+	@:require(flash10) function clear() : Void;
 	function compress() : Void;
+	@:require(flash10) function deflate() : Void;
+	@:require(flash10) function inflate() : Void;
 	function readBoolean() : Bool;
 	function readByte() : Int;
 	function readBytes(bytes : ByteArray, offset : UInt = 0, length : UInt = 0) : Void;

+ 1 - 0
std/flash9/utils/SetIntervalTimer.hx

@@ -3,5 +3,6 @@ package flash.utils;
 @:final extern class SetIntervalTimer extends Timer {
 	var id : UInt;
 	function new(closure : Dynamic, delay : Float, repeats : Bool, rest : Array<Dynamic>) : Void;
+	@:require(flash10) function clearArrayEntry() : Void;
 	static function clearInterval(id : UInt) : Void;
 }