Browse Source

added flash10 classes

Nicolas Cannasse 17 years ago
parent
commit
43e13ca99d
100 changed files with 1049 additions and 116 deletions
  1. 6 1
      genas3.ml
  2. 1 0
      std/all.hxml
  3. 4 0
      std/flash9/Vector.hx
  4. 13 4
      std/flash9/display/BitmapData.hx
  5. 3 0
      std/flash9/display/BlendMode.hx
  6. 19 7
      std/flash9/display/DisplayObject.hx
  7. 9 0
      std/flash9/display/Graphics.hx
  8. 11 0
      std/flash9/display/GraphicsBitmapFill.hx
  9. 5 0
      std/flash9/display/GraphicsEndFill.hx
  10. 13 0
      std/flash9/display/GraphicsGradientFill.hx
  11. 15 0
      std/flash9/display/GraphicsPath.hx
  12. 10 0
      std/flash9/display/GraphicsPathCommand.hx
  13. 7 0
      std/flash9/display/GraphicsPathWinding.hx
  14. 9 0
      std/flash9/display/GraphicsShaderFill.hx
  15. 7 0
      std/flash9/display/GraphicsSolidFill.hx
  16. 12 0
      std/flash9/display/GraphicsStroke.hx
  17. 9 0
      std/flash9/display/GraphicsTrianglePath.hx
  18. 4 0
      std/flash9/display/IGraphicsData.hx
  19. 4 0
      std/flash9/display/IGraphicsFill.hx
  20. 4 0
      std/flash9/display/IGraphicsPath.hx
  21. 4 0
      std/flash9/display/IGraphicsStroke.hx
  22. 8 0
      std/flash9/display/Shader.hx
  23. 6 0
      std/flash9/display/ShaderData.hx
  24. 10 0
      std/flash9/display/ShaderInput.hx
  25. 14 0
      std/flash9/display/ShaderJob.hx
  26. 7 0
      std/flash9/display/ShaderParameter.hx
  27. 19 0
      std/flash9/display/ShaderParameterType.hx
  28. 6 0
      std/flash9/display/ShaderPrecision.hx
  29. 8 3
      std/flash9/display/Stage.hx
  30. 7 0
      std/flash9/display/TriangleCulling.hx
  31. 11 0
      std/flash9/events/Event.hx
  32. 6 0
      std/flash9/events/SamplesCallbackEvent.hx
  33. 11 0
      std/flash9/events/ShaderEvent.hx
  34. 13 0
      std/flash9/filters/ShaderFilter.hx
  35. 31 0
      std/flash9/geom/Matrix3D.hx
  36. 7 0
      std/flash9/geom/Orientation3D.hx
  37. 11 0
      std/flash9/geom/PerspectiveProjection.hx
  38. 5 0
      std/flash9/geom/Transform.hx
  39. 7 0
      std/flash9/geom/Utils3D.hx
  40. 36 0
      std/flash9/geom/Vector3D.hx
  41. 13 4
      std/flash9/media/Microphone.hx
  42. 10 5
      std/flash9/media/Sound.hx
  43. 6 0
      std/flash9/media/SoundCodec.hx
  44. 13 4
      std/flash9/net/FileReference.hx
  45. 19 13
      std/flash9/net/NetConnection.hx
  46. 29 32
      std/flash9/net/NetStream.hx
  47. 21 0
      std/flash9/net/NetStreamInfo.hx
  48. 10 0
      std/flash9/net/NetStreamPlayOptions.hx
  49. 9 0
      std/flash9/net/NetStreamPlayTransitions.hx
  50. 4 4
      std/flash9/net/Socket.hx
  51. 4 4
      std/flash9/net/URLStream.hx
  52. 5 0
      std/flash9/system/ApplicationDomain.hx
  53. 3 1
      std/flash9/system/Capabilities.hx
  54. 9 0
      std/flash9/system/JPEGLoaderContext.hx
  55. 1 1
      std/flash9/text/Font.hx
  56. 8 8
      std/flash9/text/StyleSheet.hx
  57. 3 3
      std/flash9/text/TextField.hx
  58. 9 0
      std/flash9/text/engine/BreakOpportunity.hx
  59. 15 0
      std/flash9/text/engine/ContentElement.hx
  60. 8 0
      std/flash9/text/engine/DigitCase.hx
  61. 8 0
      std/flash9/text/engine/DigitWidth.hx
  62. 6 0
      std/flash9/text/engine/EastAsianJustifier.hx
  63. 22 0
      std/flash9/text/engine/ElementFormat.hx
  64. 13 0
      std/flash9/text/engine/FontDescription.hx
  65. 7 0
      std/flash9/text/engine/FontLookup.hx
  66. 12 0
      std/flash9/text/engine/FontMetrics.hx
  67. 7 0
      std/flash9/text/engine/FontPosture.hx
  68. 7 0
      std/flash9/text/engine/FontWeight.hx
  69. 7 0
      std/flash9/text/engine/GlyphRotation.hx
  70. 8 0
      std/flash9/text/engine/GraphicElement.hx
  71. 15 0
      std/flash9/text/engine/GroupElement.hx
  72. 8 0
      std/flash9/text/engine/JustificationStyle.hx
  73. 8 0
      std/flash9/text/engine/Kerning.hx
  74. 10 0
      std/flash9/text/engine/LigatureLevel.hx
  75. 8 0
      std/flash9/text/engine/LineJustification.hx
  76. 6 0
      std/flash9/text/engine/SpaceJustifier.hx
  77. 9 0
      std/flash9/text/engine/TabAlignment.hx
  78. 8 0
      std/flash9/text/engine/TabStop.hx
  79. 14 0
      std/flash9/text/engine/TextBaseline.hx
  80. 29 0
      std/flash9/text/engine/TextBlock.hx
  81. 7 0
      std/flash9/text/engine/TextElement.hx
  82. 9 0
      std/flash9/text/engine/TextJustifier.hx
  83. 37 0
      std/flash9/text/engine/TextLine.hx
  84. 9 0
      std/flash9/text/engine/TextLineCreationResult.hx
  85. 11 0
      std/flash9/text/engine/TextLineMirrorRegion.hx
  86. 9 0
      std/flash9/text/engine/TextLineValidity.hx
  87. 9 0
      std/flash9/text/engine/TextRotation.hx
  88. 12 0
      std/flash9/text/engine/TypographicCase.hx
  89. 10 2
      std/flash9/ui/ContextMenu.hx
  90. 14 0
      std/flash9/ui/ContextMenuClipboardItems.hx
  91. 3 1
      std/flash9/ui/Mouse.hx
  92. 9 0
      std/flash9/ui/MouseCursor.hx
  93. 13 3
      std/flash9/utils/ByteArray.hx
  94. 3 4
      std/flash9/utils/Endian.hx
  95. 1 1
      std/flash9/utils/IDataInput.hx
  96. 1 1
      std/flash9/utils/IDataOutput.hx
  97. 1 1
      std/flash9/utils/ObjectInput.hx
  98. 1 1
      std/flash9/utils/ObjectOutput.hx
  99. 4 8
      std/flash9/utils/Timer.hx
  100. 83 0
      std/haxe/ImportAll.hx

+ 6 - 1
genas3.ml

@@ -1019,10 +1019,14 @@ let rec real_type_path ctx p =
 		| A3MAttrib n ->
 		| A3MAttrib n ->
 			let path, name = loop n in
 			let path, name = loop n in
 			"$Attrib" :: path, name
 			"$Attrib" :: path, name
+		| A3MParams (n,pl) ->
+			let t = type_path ctx n in
+			let params = "<" ^ (String.concat "," (List.map (fun t -> s_type_path (type_path ctx t)) pl)) ^ ">" in
+			fst t, (snd t ^ params)
 	in
 	in
 	loop (As3code.iget ctx.as3_names p)
 	loop (As3code.iget ctx.as3_names p)
 
 
-let type_path ctx p =
+and type_path ctx p =
 	match real_type_path ctx p with
 	match real_type_path ctx p with
 	| [] , "Object" -> [] , "Dynamic"
 	| [] , "Object" -> [] , "Dynamic"
 	| [] , "Boolean" -> [] , "Bool"
 	| [] , "Boolean" -> [] , "Bool"
@@ -1033,6 +1037,7 @@ let type_path ctx p =
 	| [] , "void" -> [] , "Void"
 	| [] , "void" -> [] , "Void"
 	| [] , "Function" -> [] , "Dynamic"
 	| [] , "Function" -> [] , "Dynamic"
 	| [] , "Class" -> [] , "Class<Dynamic>"
 	| [] , "Class" -> [] , "Class<Dynamic>"
+	| ["__AS3__";"vec"] , "Vector" -> ["flash"], "Vector"
 	| path -> path
 	| path -> path
 
 
 let ident_rights ctx id =
 let ident_rights ctx id =

+ 1 - 0
std/all.hxml

@@ -35,6 +35,7 @@ haxe.ImportAll
 --no-output
 --no-output
 -xml flash9.xml
 -xml flash9.xml
 haxe.ImportAll
 haxe.ImportAll
+-D flash10
 
 
 --next
 --next
 
 

+ 4 - 0
std/flash9/Vector.hx

@@ -0,0 +1,4 @@
+package flash;
+
+class Vector<T> {
+}

+ 13 - 4
std/flash9/display/BitmapData.hx

@@ -1,6 +1,12 @@
 package flash.display;
 package flash.display;
 
 
 extern class BitmapData implements IBitmapDrawable {
 extern class BitmapData implements IBitmapDrawable {
+
+	var width(default,null) : Int;
+	var height(default,null) : Int;
+	var rect(default,null) : flash.geom.Rectangle;
+	var transparent(default,null) : Bool;
+
 	function new(width : Int, height : Int, ?transparent : Bool, ?fillColor : UInt) : Void;
 	function new(width : Int, height : Int, ?transparent : Bool, ?fillColor : UInt) : Void;
 	function applyFilter(sourceBitmapData : BitmapData, sourceRect : flash.geom.Rectangle, destPoint : flash.geom.Point, filter : flash.filters.BitmapFilter) : Void;
 	function applyFilter(sourceBitmapData : BitmapData, sourceRect : flash.geom.Rectangle, destPoint : flash.geom.Point, filter : flash.filters.BitmapFilter) : Void;
 	function clone() : BitmapData;
 	function clone() : BitmapData;
@@ -17,7 +23,6 @@ extern class BitmapData implements IBitmapDrawable {
 	function getPixel(x : Int, y : Int) : UInt;
 	function getPixel(x : Int, y : Int) : UInt;
 	function getPixel32(x : Int, y : Int) : UInt;
 	function getPixel32(x : Int, y : Int) : UInt;
 	function getPixels(rect : flash.geom.Rectangle) : flash.utils.ByteArray;
 	function getPixels(rect : flash.geom.Rectangle) : flash.utils.ByteArray;
-	var height(default,null) : Int;
 	function hitTest(firstPoint : flash.geom.Point, firstAlphaThreshold : UInt, secondObject : Dynamic, ?secondBitmapDataPoint : flash.geom.Point, ?secondAlphaThreshold : UInt) : Bool;
 	function hitTest(firstPoint : flash.geom.Point, firstAlphaThreshold : UInt, secondObject : Dynamic, ?secondBitmapDataPoint : flash.geom.Point, ?secondAlphaThreshold : UInt) : Bool;
 	function lock() : Void;
 	function lock() : Void;
 	function merge(sourceBitmapData : BitmapData, sourceRect : flash.geom.Rectangle, destPoint : flash.geom.Point, redMultiplier : UInt, greenMultiplier : UInt, blueMultiplier : UInt, alphaMultiplier : UInt) : Void;
 	function merge(sourceBitmapData : BitmapData, sourceRect : flash.geom.Rectangle, destPoint : flash.geom.Point, redMultiplier : UInt, greenMultiplier : UInt, blueMultiplier : UInt, alphaMultiplier : UInt) : Void;
@@ -25,13 +30,17 @@ extern class BitmapData implements IBitmapDrawable {
 	function paletteMap(sourceBitmapData : BitmapData, sourceRect : flash.geom.Rectangle, destPoint : flash.geom.Point, ?redArray : Array<Int>, ?greenArray : Array<Int>, ?blueArray : Array<Int>, ?alphaArray : Array<Int>) : Void;
 	function paletteMap(sourceBitmapData : BitmapData, sourceRect : flash.geom.Rectangle, destPoint : flash.geom.Point, ?redArray : Array<Int>, ?greenArray : Array<Int>, ?blueArray : Array<Int>, ?alphaArray : Array<Int>) : Void;
 	function perlinNoise(baseX : Float, baseY : Float, numOctaves : UInt, randomSeed : Int, stitch : Bool, fractalNoise : Bool, ?channelOptions : UInt, ?grayScale : Bool, ?offsets : Array<flash.geom.Point>) : Void;
 	function perlinNoise(baseX : Float, baseY : Float, numOctaves : UInt, randomSeed : Int, stitch : Bool, fractalNoise : Bool, ?channelOptions : UInt, ?grayScale : Bool, ?offsets : Array<flash.geom.Point>) : Void;
 	function pixelDissolve(sourceBitmapData : BitmapData, sourceRect : flash.geom.Rectangle, destPoint : flash.geom.Point, ?randomSeed : Int, ?numPixels : Int, ?fillColor : UInt) : Int;
 	function pixelDissolve(sourceBitmapData : BitmapData, sourceRect : flash.geom.Rectangle, destPoint : flash.geom.Point, ?randomSeed : Int, ?numPixels : Int, ?fillColor : UInt) : Int;
-	var rect(default,null) : flash.geom.Rectangle;
 	function scroll(x : Int, y : Int) : Void;
 	function scroll(x : Int, y : Int) : Void;
 	function setPixel(x : Int, y : Int, color : UInt) : Void;
 	function setPixel(x : Int, y : Int, color : UInt) : Void;
 	function setPixel32(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;
 	function setPixels(rect : flash.geom.Rectangle, inputByteArray : flash.utils.ByteArray) : Void;
 	function threshold(sourceBitmapData : BitmapData, sourceRect : flash.geom.Rectangle, destPoint : flash.geom.Point, operation : String, threshold : UInt, ?color : UInt, ?mask : UInt, ?copySource : Bool) : UInt;
 	function threshold(sourceBitmapData : BitmapData, sourceRect : flash.geom.Rectangle, destPoint : flash.geom.Point, operation : String, threshold : UInt, ?color : UInt, ?mask : UInt, ?copySource : Bool) : UInt;
-	var transparent(default,null) : Bool;
 	function unlock(?changeRect : flash.geom.Rectangle) : Void;
 	function unlock(?changeRect : flash.geom.Rectangle) : Void;
-	var width(default,null) : Int;
+
+	#if flash10
+	function setVector( rect : flash.geom.Rectangle, inputVector : flash.Vector<UInt> ) : Void;
+	function getVector( rect : flash.geom.Rectangle ) : flash.Vector<UInt>;
+	function histogram( ?hRect : flash.geom.Rectangle ) : flash.Vector<Float>;
+	#end
+
 }
 }

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

@@ -15,4 +15,7 @@ extern enum BlendMode {
 	OVERLAY;
 	OVERLAY;
 	SCREEN;
 	SCREEN;
 	SUBTRACT;
 	SUBTRACT;
+	#if flash10
+	SHADER;
+	#end
 }
 }

+ 19 - 7
std/flash9/display/DisplayObject.hx

@@ -6,14 +6,8 @@ extern class DisplayObject extends flash.events.EventDispatcher, implements IBit
 	var blendMode : BlendMode;
 	var blendMode : BlendMode;
 	var cacheAsBitmap : Bool;
 	var cacheAsBitmap : Bool;
 	var filters : Array<Dynamic>; // does not use variance here
 	var filters : Array<Dynamic>; // does not use variance here
-	function getBounds(targetCoordinateSpace : DisplayObject) : flash.geom.Rectangle;
-	function getRect(targetCoordinateSpace : DisplayObject) : flash.geom.Rectangle;
-	function globalToLocal(point : flash.geom.Point) : flash.geom.Point;
 	var height : Float;
 	var height : Float;
-	function hitTestObject(obj : DisplayObject) : Bool;
-	function hitTestPoint(x : Float, y : Float, ?shapeFlag : Bool) : Bool;
 	var loaderInfo(default,null) : LoaderInfo;
 	var loaderInfo(default,null) : LoaderInfo;
-	function localToGlobal(point : flash.geom.Point) : flash.geom.Point;
 	var mask : DisplayObject;
 	var mask : DisplayObject;
 	var mouseX(default,null) : Float;
 	var mouseX(default,null) : Float;
 	var mouseY(default,null) : Float;
 	var mouseY(default,null) : Float;
@@ -32,5 +26,23 @@ extern class DisplayObject extends flash.events.EventDispatcher, implements IBit
 	var width : Float;
 	var width : Float;
 	var x : Float;
 	var x : Float;
 	var y : Float;
 	var y : Float;
-	private function _hitTest(use_xy : Bool, x : Float, y : Float, useShape : Bool, hitTestObject : flash.display.DisplayObject) : Bool;
+
+	function getBounds(targetCoordinateSpace : DisplayObject) : flash.geom.Rectangle;
+	function getRect(targetCoordinateSpace : DisplayObject) : flash.geom.Rectangle;
+	function globalToLocal(point : flash.geom.Point) : flash.geom.Point;
+	function hitTestObject(obj : DisplayObject) : Bool;
+	function hitTestPoint(x : Float, y : Float, ?shapeFlag : Bool) : Bool;
+	function localToGlobal(point : flash.geom.Point) : flash.geom.Point;
+
+	#if flash10
+	var rotationX : Float;
+	var rotationY : Float;
+	var rotationZ : Float;
+	var scaleZ : Float;
+	var z : Float;
+	var blendShader(null,default) : Shader;
+
+	function globalToLocal3D( point : flash.geom.Point) : flash.geom.Vector3D;
+	function local3DToGlobal( point3d : flash.geom.Vector3D ) : flash.geom.Point;
+	#end
 }
 }

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

@@ -17,4 +17,13 @@ extern class Graphics {
 	function lineStyle(?thickness : Float, ?color : UInt, ?alpha : Float, ?pixelHinting : Bool, ?scaleMode : LineScaleMode, ?caps : CapsStyle, ?joints : JointStyle, ?miterLimit : Float) : Void;
 	function lineStyle(?thickness : Float, ?color : UInt, ?alpha : Float, ?pixelHinting : Bool, ?scaleMode : LineScaleMode, ?caps : CapsStyle, ?joints : JointStyle, ?miterLimit : Float) : Void;
 	function lineTo(x : Float, y : Float) : Void;
 	function lineTo(x : Float, y : Float) : Void;
 	function moveTo(x : Float, y : Float) : Void;
 	function moveTo(x : Float, y : Float) : Void;
+
+	#if flash10
+	function beginShaderFill( ?shader : Shader, ?matrix : flash.geom.Matrix ) : Void;
+	function copyFrom( sourceGraphics : Graphics ) : Void;
+	function drawGraphicsData( graphicsData : flash.Vector<IGraphicsData> ) : Void;
+	function drawPath( ?commands : flash.Vector<Int>, ?data : flash.Vector<Float>, ?winding : GraphicsPathWinding ) : Dynamic;
+	function drawTriangles( ?vertices : flash.Vector<Float>, ?indices : flash.Vector<Int>, ?uvtData : flash.Vector<Float>, ?culling : TriangleCulling ) : Dynamic;
+	function lineBitmapStyle( ?bitmap : BitmapData, ?matrix : flash.geom.Matrix, ?repeat : Bool, ?smooth : Bool ) : Void;
+	#end
 }
 }

+ 11 - 0
std/flash9/display/GraphicsBitmapFill.hx

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

+ 5 - 0
std/flash9/display/GraphicsEndFill.hx

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

+ 13 - 0
std/flash9/display/GraphicsGradientFill.hx

@@ -0,0 +1,13 @@
+package flash.display;
+
+extern class GraphicsGradientFill implements IGraphicsFill, implements IGraphicsData {
+	var type : GradientType;
+	var colors : Array<UInt>;
+	var alphas : Array<Float>;
+	var ratios : Array<Float>;
+	var matrix : flash.geom.Matrix;
+	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;
+}

+ 15 - 0
std/flash9/display/GraphicsPath.hx

@@ -0,0 +1,15 @@
+package flash.display;
+
+extern class GraphicsPath implements IGraphicsPath, implements IGraphicsData {
+
+	var data : flash.Vector<Float>;
+	var commands : flash.Vector<Int>;
+	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;
+}

+ 10 - 0
std/flash9/display/GraphicsPathCommand.hx

@@ -0,0 +1,10 @@
+package flash.display;
+
+extern class GraphicsPathCommand {
+	public static var LINE_TO(default,null) : Int;
+	public static var MOVE_TO(default,null) : Int;
+	public static var CURVE_TO(default,null) : Int;
+	public static var WIDE_LINE_TO(default,null) : Int;
+	public static var WIDE_MOVE_TO(default,null) : Int;
+	public static var NO_OP(default,null) : Int;
+}

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

@@ -0,0 +1,7 @@
+package flash.display;
+
+extern enum GraphicsPathWinding {
+	EVEN_ODD;
+	NON_ZERO;
+}
+

+ 9 - 0
std/flash9/display/GraphicsShaderFill.hx

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

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

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

+ 12 - 0
std/flash9/display/GraphicsStroke.hx

@@ -0,0 +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;
+	var miterLimit : Float;
+	var pixelHinting : Bool;
+	var scaleMode : String;
+	var thickness : Float;
+}

+ 9 - 0
std/flash9/display/GraphicsTrianglePath.hx

@@ -0,0 +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;
+	var culling : TriangleCulling;
+	var indices : flash.Vector<Int>;
+	var uvtData : flash.Vector<Float>;
+	var vertices : flash.Vector<Float>;
+}

+ 4 - 0
std/flash9/display/IGraphicsData.hx

@@ -0,0 +1,4 @@
+package flash.display;
+
+extern interface IGraphicsData {
+}

+ 4 - 0
std/flash9/display/IGraphicsFill.hx

@@ -0,0 +1,4 @@
+package flash.display;
+
+extern interface IGraphicsFill {
+}

+ 4 - 0
std/flash9/display/IGraphicsPath.hx

@@ -0,0 +1,4 @@
+package flash.display;
+
+extern interface IGraphicsPath {
+}

+ 4 - 0
std/flash9/display/IGraphicsStroke.hx

@@ -0,0 +1,4 @@
+package flash.display;
+
+extern interface IGraphicsStroke {
+}

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

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

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

@@ -0,0 +1,6 @@
+package flash.display;
+
+extern class ShaderData {
+	function new(byteCode : flash.utils.ByteArray) : Void;
+	//private function _setByteCode(code : flash.utils.ByteArray) : Void;
+}

+ 10 - 0
std/flash9/display/ShaderInput.hx

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

+ 14 - 0
std/flash9/display/ShaderJob.hx

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

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

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

+ 19 - 0
std/flash9/display/ShaderParameterType.hx

@@ -0,0 +1,19 @@
+package flash.display;
+
+extern enum ShaderParameterType {
+	BOOL;
+	BOOL2;
+	BOOL3;
+	BOOL4;
+	FLOAT;
+	FLOAT2;
+	FLOAT3;
+	FLOAT4;
+	INT;
+	INT2;
+	INT3;
+	INT4;
+	MATRIX2X2;
+	MATRIX3X3;
+	MATRIX4X4;
+}

+ 6 - 0
std/flash9/display/ShaderPrecision.hx

@@ -0,0 +1,6 @@
+package flash.display;
+
+extern enum ShaderPrecision {
+	FAST;
+	FULL;
+}

+ 8 - 3
std/flash9/display/Stage.hx

@@ -4,18 +4,23 @@ extern class Stage extends DisplayObjectContainer {
 	var align : StageAlign;
 	var align : StageAlign;
 	var focus : InteractiveObject;
 	var focus : InteractiveObject;
 	var frameRate : Float;
 	var frameRate : Float;
-	function invalidate() : Void;
-	function isFocusInaccessible() : Bool;
 	var quality : StageQuality;
 	var quality : StageQuality;
 	var scaleMode : StageScaleMode;
 	var scaleMode : StageScaleMode;
 	var showDefaultContextMenu : Bool;
 	var showDefaultContextMenu : Bool;
 	var stageFocusRect : Bool;
 	var stageFocusRect : Bool;
 	var stageHeight : Int;
 	var stageHeight : Int;
 	var stageWidth : Int;
 	var stageWidth : Int;
-	private function requireOwnerPermissions() : Void;
 
 
+	function invalidate() : Void;
+	function isFocusInaccessible() : Bool;
+
+	// FP9 - fullscreen support
 	var displayState : StageDisplayState;
 	var displayState : StageDisplayState;
 	var fullScreenHeight(default,null) : UInt;
 	var fullScreenHeight(default,null) : UInt;
 	var fullScreenSourceRect : flash.geom.Rectangle;
 	var fullScreenSourceRect : flash.geom.Rectangle;
 	var fullScreenWidth(default,null) : UInt;
 	var fullScreenWidth(default,null) : UInt;
+
+	#if flash10
+	var enableColorCorrection : Bool;
+	#end
 }
 }

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

@@ -0,0 +1,7 @@
+package flash.display;
+
+extern enum TriangleCulling {
+	NEGATIVE;
+	NONE;
+	POSITIVE;
+}

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

@@ -48,4 +48,15 @@ extern class Event {
 	/** added in FP 9.0.28 **/
 	/** added in FP 9.0.28 **/
 	static var FULLSCREEN : String;
 	static var FULLSCREEN : String;
 
 
+	#if flash10
+	static var FRAME_CONSTRUCTED : String;
+	static var SAMPLES_CALLBACK : String;
+	static var EXIT_FRAME : String;
+	static var CUT : String;
+	static var COPY : String;
+	static var CLEAR : String;
+	static var SELECT_ALL : String;
+	static var PASTE : String;
+	#end
+
 }
 }

+ 6 - 0
std/flash9/events/SamplesCallbackEvent.hx

@@ -0,0 +1,6 @@
+package flash.events;
+
+extern class SamplesCallbackEvent extends Event {
+	var position : Float;
+	function new( ?type : String, ?bubbles : Bool, ?cancelable : Bool, ?position : Float ) : Void;
+}

+ 11 - 0
std/flash9/events/ShaderEvent.hx

@@ -0,0 +1,11 @@
+package flash.events;
+
+extern class ShaderEvent extends Event  {
+	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;
+}

+ 13 - 0
std/flash9/filters/ShaderFilter.hx

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

+ 31 - 0
std/flash9/geom/Matrix3D.hx

@@ -0,0 +1,31 @@
+package flash.geom;
+
+extern class Matrix3D {
+
+	var rawData : flash.Vector<Float>;
+	var position : Vector3D;
+	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;
+	function clone() : Matrix3D;
+	function identity() : Void;
+	function recompose( ?components : flash.Vector<Vector3D>, ?orientation : Orientation3D ) : Bool;
+
+	static function interpolate( thisMat : Matrix3D, toMat : Matrix3D, percent : Float ) : Matrix3D;
+}

+ 7 - 0
std/flash9/geom/Orientation3D.hx

@@ -0,0 +1,7 @@
+package flash.geom;
+
+extern enum Orientation3D {
+	AXIS_ANGLE;
+	EULER_ANGLES;
+	QUATERNION;
+}

+ 11 - 0
std/flash9/geom/PerspectiveProjection.hx

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

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

@@ -7,4 +7,9 @@ extern class Transform {
 	var concatenatedMatrix(default,null) : flash.geom.Matrix;
 	var concatenatedMatrix(default,null) : flash.geom.Matrix;
 	var matrix : flash.geom.Matrix;
 	var matrix : flash.geom.Matrix;
 	var pixelBounds(default,null) : flash.geom.Rectangle;
 	var pixelBounds(default,null) : flash.geom.Rectangle;
+	#if flash10
+	var matrix3D : flash.geom.Matrix3D;
+	var perspectiveProjection : flash.geom.PerspectiveProjection;
+	function getRelativeMatrix3D( relativeTo:flash.display.DisplayObject ) : Matrix3D;
+	#end
 }
 }

+ 7 - 0
std/flash9/geom/Utils3D.hx

@@ -0,0 +1,7 @@
+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;
+}

+ 36 - 0
std/flash9/geom/Vector3D.hx

@@ -0,0 +1,36 @@
+package flash.geom;
+
+extern class Vector3D {
+
+	static var XAXIS(default,null) : Vector3D;
+	static var YAXIS(default,null) : Vector3D;
+	static var ZAXIS(default,null) : Vector3D;
+
+	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 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 toString() : String;
+	function angleBetween( a : Vector3D ) : Float;
+	function incrementBy( a : Vector3D ) : Void;
+	function equals( ?toCompare:Vector3D, ?allFour:Bool ) : Bool;
+
+	static function distance( pt1 : Vector3D, pt2 : Vector3D ) : Float;
+
+}

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

@@ -1,20 +1,29 @@
 package flash.media;
 package flash.media;
 
 
 extern class Microphone extends flash.events.EventDispatcher {
 extern class Microphone extends flash.events.EventDispatcher {
-	function new() : Void;
+
 	var activityLevel(default,null) : Float;
 	var activityLevel(default,null) : Float;
 	var gain : Float;
 	var gain : Float;
 	var index(default,null) : Int;
 	var index(default,null) : Int;
 	var muted(default,null) : Bool;
 	var muted(default,null) : Bool;
 	var name(default,null) : String;
 	var name(default,null) : String;
 	var rate : Int;
 	var rate : Int;
-	function setLoopBack(?state : Bool) : Void;
-	function setSilenceLevel(silenceLevel : Float, ?timeout : Int) : Void;
-	function setUseEchoSuppression(useEchoSuppression : Bool) : Void;
 	var silenceLevel(default,null) : Float;
 	var silenceLevel(default,null) : Float;
 	var silenceTimeout(default,null) : Int;
 	var silenceTimeout(default,null) : Int;
 	var soundTransform : flash.media.SoundTransform;
 	var soundTransform : flash.media.SoundTransform;
 	var useEchoSuppression(default,null) : Bool;
 	var useEchoSuppression(default,null) : Bool;
+
+	function new() : Void;
+	function setLoopBack(?state : Bool) : Void;
+	function setSilenceLevel(silenceLevel : Float, ?timeout : Int) : Void;
+	function setUseEchoSuppression(useEchoSuppression : Bool) : Void;
+
+	#if flash10
+	var codec : SoundCodec;
+	var encodeQuality : Int;
+	var framesPerPacket : Int;
+	#end
+
 	static function getMicrophone(?index : Int) : flash.media.Microphone;
 	static function getMicrophone(?index : Int) : flash.media.Microphone;
 	static var names(default,null) : Array<Dynamic>;
 	static var names(default,null) : Array<Dynamic>;
 }
 }

+ 10 - 5
std/flash9/media/Sound.hx

@@ -1,16 +1,21 @@
 package flash.media;
 package flash.media;
 
 
 extern class Sound extends flash.events.EventDispatcher {
 extern class Sound extends flash.events.EventDispatcher {
-	function new(?stream : flash.net.URLRequest, ?context : flash.media.SoundLoaderContext) : Void;
+
 	var bytesLoaded(default,null) : UInt;
 	var bytesLoaded(default,null) : UInt;
 	var bytesTotal(default,null) : Int;
 	var bytesTotal(default,null) : Int;
-	function close() : Void;
 	var id3(default,null) : flash.media.ID3Info;
 	var id3(default,null) : flash.media.ID3Info;
 	var isBuffering(default,null) : Bool;
 	var isBuffering(default,null) : Bool;
 	var length(default,null) : Float;
 	var length(default,null) : Float;
+	var url(default,null) : String;
+
+	function new(?stream : flash.net.URLRequest, ?context : flash.media.SoundLoaderContext) : Void;
+	function close() : Void;
 	function load(stream : flash.net.URLRequest, ?context : flash.media.SoundLoaderContext) : Void;
 	function load(stream : flash.net.URLRequest, ?context : flash.media.SoundLoaderContext) : Void;
 	function play(?startTime : Float, ?loops : Int, ?sndTransform : flash.media.SoundTransform) : flash.media.SoundChannel;
 	function play(?startTime : Float, ?loops : Int, ?sndTransform : flash.media.SoundTransform) : flash.media.SoundChannel;
-	var url(default,null) : String;
-	private function _buildLoaderContext(context : flash.media.SoundLoaderContext) : flash.media.SoundLoaderContext;
-	private function _load(stream : flash.net.URLRequest, checkPolicyFile : Bool, bufferTime : Float) : Void;
+
+	#if flash10
+	var samplesCallbackData(default,null) : flash.utils.ByteArray;
+	function extract( ?target : flash.utils.ByteArray, ?length : Float, ?startPosition : Float ) : Float;
+	#end
 }
 }

+ 6 - 0
std/flash9/media/SoundCodec.hx

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

+ 13 - 4
std/flash9/net/FileReference.hx

@@ -1,15 +1,24 @@
 package flash.net;
 package flash.net;
 
 
 extern class FileReference extends flash.events.EventDispatcher {
 extern class FileReference extends flash.events.EventDispatcher {
-	function new() : Void;
-	function browse(?typeFilter : Array<Dynamic>) : Bool;
-	function cancel() : Void;
+
 	var creationDate(default,null) : Date;
 	var creationDate(default,null) : Date;
 	var creator(default,null) : String;
 	var creator(default,null) : String;
-	function download(request : flash.net.URLRequest, ?defaultFileName : String) : Void;
 	var modificationDate(default,null) : Date;
 	var modificationDate(default,null) : Date;
 	var name(default,null) : String;
 	var name(default,null) : String;
 	var size(default,null) : UInt;
 	var size(default,null) : UInt;
 	var type(default,null) : String;
 	var type(default,null) : String;
+
+	function new() : Void;
+	function browse(?typeFilter : Array<Dynamic>) : Bool;
+	function cancel() : Void;
+	function download(request : flash.net.URLRequest, ?defaultFileName : String) : Void;
 	function upload(request : flash.net.URLRequest, ?uploadDataFieldName : String, ?testUpload : Bool) : Void;
 	function upload(request : flash.net.URLRequest, ?uploadDataFieldName : String, ?testUpload : Bool) : Void;
+
+	#if flash10
+	var data(default,null) : flash.utils.ByteArray;
+	function load() : Void;
+	function save( ?data : Dynamic, ?defaultFileName : String ) : Void;
+	#end
+
 }
 }

+ 19 - 13
std/flash9/net/NetConnection.hx

@@ -1,25 +1,31 @@
 package flash.net;
 package flash.net;
 
 
 extern class NetConnection extends flash.events.EventDispatcher {
 extern class NetConnection extends flash.events.EventDispatcher {
-	function new() : Void;
-	function addHeader(operation : String, ?mustUnderstand : Bool, ?param : Dynamic) : Void;
-	function call(command : String, responder : flash.net.Responder, ?p1 : Dynamic, ?p2 : Dynamic, ?p3 : Dynamic, ?p4 : Dynamic, ?p5 : Dynamic ) : Void;
+
 	var client : Dynamic;
 	var client : Dynamic;
-	function close() : Void;
-	function connect(command : String, ?p1 : Dynamic, ?p2 : Dynamic, ?p3 : Dynamic, ?p4 : Dynamic, ?p5 : Dynamic ) : Void;
 	var connected(default,null) : Bool;
 	var connected(default,null) : Bool;
 	var connectedProxyType(default,null) : String;
 	var connectedProxyType(default,null) : String;
 	var objectEncoding : UInt;
 	var objectEncoding : UInt;
 	var proxyType : String;
 	var proxyType : String;
 	var uri(default,null) : String;
 	var uri(default,null) : String;
 	var usingTLS(default,null) : Bool;
 	var usingTLS(default,null) : Bool;
-	private function invoke(index : UInt, ?p1 : Dynamic, ?p2 : Dynamic, ?p3 : Dynamic, ?p4 : Dynamic, ?p5 : Dynamic ) : Void;
-	private function invokeWithArgsArray(index : UInt, args : Array<Dynamic>) : Void;
+
+	function new() : Void;
+	function addHeader(operation : String, ?mustUnderstand : Bool, ?param : Dynamic) : Void;
+	function call(command : String, responder : flash.net.Responder, ?p1 : Dynamic, ?p2 : Dynamic, ?p3 : Dynamic, ?p4 : Dynamic, ?p5 : Dynamic ) : Void;
+	function close() : Void;
+	function connect(command : String, ?p1 : Dynamic, ?p2 : Dynamic, ?p3 : Dynamic, ?p4 : Dynamic, ?p5 : Dynamic ) : Void;
+
+	#if flash10
+	var farID(default,null) : String;
+	var farNonce(default,null) : String;
+	var maxPeerConnections : UInt;
+	var nearID(default,null):String;
+	var nearNonce(default,null):String;
+	var protocol(default,null):String;
+	var unconnectedPeerStreams(default,null):Array<Dynamic>;
+	#end
+
 	static var defaultObjectEncoding : UInt;
 	static var defaultObjectEncoding : UInt;
-	private static var kAddHeader : UInt;
-	private static var kCall : UInt;
-	private static var kClose : UInt;
-	private static var kConnect : UInt;
-	private static var kGetConnectedProxyType : UInt;
-	private static var kGetUsingTLS : UInt;
+
 }
 }

+ 29 - 32
std/flash9/net/NetStream.hx

@@ -1,9 +1,7 @@
 package flash.net;
 package flash.net;
 
 
 extern class NetStream extends flash.events.EventDispatcher {
 extern class NetStream extends flash.events.EventDispatcher {
-	function new(connection : flash.net.NetConnection) : Void;
-	function attachAudio(microphone : flash.media.Microphone) : Void;
-	function attachCamera(theCamera : flash.media.Camera, ?snapshotMilliseconds : Int) : Void;
+
 	var audioCodec(default,null) : UInt;
 	var audioCodec(default,null) : UInt;
 	var bufferLength(default,null) : Float;
 	var bufferLength(default,null) : Float;
 	var bufferTime : Float;
 	var bufferTime : Float;
@@ -11,11 +9,23 @@ extern class NetStream extends flash.events.EventDispatcher {
 	var bytesTotal(default,null) : UInt;
 	var bytesTotal(default,null) : UInt;
 	var checkPolicyFile : Bool;
 	var checkPolicyFile : Bool;
 	var client : Dynamic;
 	var client : Dynamic;
-	function close() : Void;
 	var currentFPS(default,null) : Float;
 	var currentFPS(default,null) : Float;
 	var decodedFrames(default,null) : UInt;
 	var decodedFrames(default,null) : UInt;
 	var liveDelay(default,null) : Float;
 	var liveDelay(default,null) : Float;
 	var objectEncoding(default,null) : UInt;
 	var objectEncoding(default,null) : UInt;
+	var soundTransform : flash.media.SoundTransform;
+	var time(default,null) : Float;
+	var videoCodec(default,null) : UInt;
+
+	#if flash10
+	function new(connection : flash.net.NetConnection, ?peerID : String ) : Void;
+	#else
+	function new(connection : flash.net.NetConnection) : Void;
+	#end
+
+	function attachAudio(microphone : flash.media.Microphone) : Void;
+	function attachCamera(theCamera : flash.media.Camera, ?snapshotMilliseconds : Int) : Void;
+	function close() : Void;
 	function pause() : Void;
 	function pause() : Void;
 	function play( ?p1 : Dynamic, ?p2 : Dynamic, ?p3 : Dynamic, ?p4 : Dynamic, ?p5 : Dynamic ) : Void;
 	function play( ?p1 : Dynamic, ?p2 : Dynamic, ?p3 : Dynamic, ?p4 : Dynamic, ?p5 : Dynamic ) : Void;
 	function publish(?name : String, ?type : String) : Void;
 	function publish(?name : String, ?type : String) : Void;
@@ -25,33 +35,20 @@ extern class NetStream extends flash.events.EventDispatcher {
 	function resume() : Void;
 	function resume() : Void;
 	function seek(offset : Float) : Void;
 	function seek(offset : Float) : Void;
 	function send(handlerName : String, ?p1 : Dynamic, ?p2 : Dynamic, ?p3 : Dynamic, ?p4 : Dynamic, ?p5 : Dynamic ) : Void;
 	function send(handlerName : String, ?p1 : Dynamic, ?p2 : Dynamic, ?p3 : Dynamic, ?p4 : Dynamic, ?p5 : Dynamic ) : Void;
-	var soundTransform : flash.media.SoundTransform;
-	var time(default,null) : Float;
 	function togglePause() : Void;
 	function togglePause() : Void;
-	var videoCodec(default,null) : UInt;
-	private function call(stream : flash.net.NetStream, command : String, responder : flash.net.Responder, ?p1 : Dynamic, ?p2 : Dynamic, ?p3 : Dynamic, ?p4 : Dynamic, ?p5 : Dynamic ) : Void;
-	private function construct(connection : flash.net.NetConnection) : Void;
-	private function invoke(index : UInt, ?p1 : Dynamic, ?p2 : Dynamic, ?p3 : Dynamic, ?p4 : Dynamic, ?p5 : Dynamic ) : Void;
-	private function invokeWithArgsArray(index : UInt, p_arguments : Array<Dynamic>) : Void;
-	private function onResult(streamId : Int) : Void;
-	private function onStatus(info : Dynamic) : Void;
-	private static var kAttachAudio : UInt;
-	private static var kAttachVideo : UInt;
-	private static var kCall : UInt;
-	private static var kClose : UInt;
-	private static var kGetAudioCodecID : UInt;
-	private static var kGetBufferLength : UInt;
-	private static var kGetBufferTime : UInt;
-	private static var kGetBytesLoaded : UInt;
-	private static var kGetBytesTotal : UInt;
-	private static var kGetCurrentFps : UInt;
-	private static var kGetLiveDelay : UInt;
-	private static var kGetTime : UInt;
-	private static var kGetTotalFrames : UInt;
-	private static var kGetVideoCodecID : UInt;
-	private static var kSend : UInt;
-	private static var kSetAudioCodecID : UInt;
-	private static var kSetBufferTime : UInt;
-	private static var kSetTotalFrames : UInt;
-	private static var kSetVideoCodecID : UInt;
+
+	#if flash10
+	var maxPauseBufferTime : Float;
+	var farID(default,null) : String;
+	var farNonce(default,null) : String;
+	var info(default,null) : NetStreamInfo;
+	var nearNonce(default,null) : String;
+	var peerStreams(default,null) : Array<Dynamic>;
+
+	function onPeerConnect( subscriber : NetStream ) : Bool;
+	function play2( param : NetStreamPlayOptions ) : Void;
+
+	static var DIRECT_CONNECTIONS : String;
+	#end
+
 }
 }

+ 21 - 0
std/flash9/net/NetStreamInfo.hx

@@ -0,0 +1,21 @@
+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;
+	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 audioBufferLength(default,null) : Float;
+	var dataBufferByteLength(default,null) : Float;
+	var playbackBytesPerSecond(default,null) : Float;
+	var dataByteCount(default,null) : Float;
+	var audioBytesPerSecond(default,null) : Float;
+	var videoBufferLength(default,null) : Float;
+	var audioBufferByteLength(default,null) : Float;
+	var byteCount(default,null) : Float;
+}

+ 10 - 0
std/flash9/net/NetStreamPlayOptions.hx

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

+ 9 - 0
std/flash9/net/NetStreamPlayTransitions.hx

@@ -0,0 +1,9 @@
+package flash.net;
+
+extern enum NetStreamPlayTransitions {
+	SWAP;
+	SWITCH;
+	STOP;
+	APPEND;
+	RESET;
+}

+ 4 - 4
std/flash9/net/Socket.hx

@@ -1,14 +1,14 @@
 package flash.net;
 package flash.net;
 
 
 extern class Socket extends flash.events.EventDispatcher, implements flash.utils.IDataInput, implements flash.utils.IDataOutput {
 extern class Socket extends flash.events.EventDispatcher, implements flash.utils.IDataInput, implements flash.utils.IDataOutput {
-	function new(?host : String, ?port : Int) : Void;
 	var bytesAvailable(default,null) : UInt;
 	var bytesAvailable(default,null) : UInt;
+	var connected(default,null) : Bool;
+	var endian : flash.utils.Endian;
+	var objectEncoding : UInt;
+	function new(?host : String, ?port : Int) : Void;
 	function close() : Void;
 	function close() : Void;
 	function connect(host : String, port : Int) : Void;
 	function connect(host : String, port : Int) : Void;
-	var connected(default,null) : Bool;
-	var endian : String;
 	function flush() : Void;
 	function flush() : Void;
-	var objectEncoding : UInt;
 	function readBoolean() : Bool;
 	function readBoolean() : Bool;
 	function readByte() : Int;
 	function readByte() : Int;
 	function readBytes(bytes : flash.utils.ByteArray, ?offset : UInt, ?length : UInt) : Void;
 	function readBytes(bytes : flash.utils.ByteArray, ?offset : UInt, ?length : UInt) : Void;

+ 4 - 4
std/flash9/net/URLStream.hx

@@ -1,13 +1,13 @@
 package flash.net;
 package flash.net;
 
 
 extern class URLStream extends flash.events.EventDispatcher, implements flash.utils.IDataInput {
 extern class URLStream extends flash.events.EventDispatcher, implements flash.utils.IDataInput {
-	function new() : Void;
 	var bytesAvailable(default,null) : UInt;
 	var bytesAvailable(default,null) : UInt;
-	function close() : Void;
 	var connected(default,null) : Bool;
 	var connected(default,null) : Bool;
-	var endian : String;
-	function load(request : flash.net.URLRequest) : Void;
+	var endian : flash.utils.Endian;
 	var objectEncoding : UInt;
 	var objectEncoding : UInt;
+	function new() : Void;
+	function close() : Void;
+	function load(request : flash.net.URLRequest) : Void;
 	function readBoolean() : Bool;
 	function readBoolean() : Bool;
 	function readByte() : Int;
 	function readByte() : Int;
 	function readBytes(bytes : flash.utils.ByteArray, ?offset : UInt, ?length : UInt) : Void;
 	function readBytes(bytes : flash.utils.ByteArray, ?offset : UInt, ?length : UInt) : Void;

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

@@ -6,4 +6,9 @@ extern class ApplicationDomain {
 	function hasDefinition(name : String) : Bool;
 	function hasDefinition(name : String) : Bool;
 	var parentDomain(default,null) : flash.system.ApplicationDomain;
 	var parentDomain(default,null) : flash.system.ApplicationDomain;
 	static var currentDomain(default,null) : flash.system.ApplicationDomain;
 	static var currentDomain(default,null) : flash.system.ApplicationDomain;
+
+	#if flash10
+	static var MIN_DOMAIN_MEMORY_LENGTH(default,null) : UInt;
+	var domainMemory : flash.utils.ByteArray;
+	#end
 }
 }

+ 3 - 1
std/flash9/system/Capabilities.hx

@@ -1,7 +1,6 @@
 package flash.system;
 package flash.system;
 
 
 extern class Capabilities {
 extern class Capabilities {
-	function new() : Void;
 	static var _internal(default,null) : UInt;
 	static var _internal(default,null) : UInt;
 	static var avHardwareDisable(default,null) : Bool;
 	static var avHardwareDisable(default,null) : Bool;
 	static var hasAccessibility(default,null) : Bool;
 	static var hasAccessibility(default,null) : Bool;
@@ -30,4 +29,7 @@ extern class Capabilities {
 	static var screenResolutionY(default,null) : Float;
 	static var screenResolutionY(default,null) : Float;
 	static var serverString(default,null) : String;
 	static var serverString(default,null) : String;
 	static var version(default,null) : String;
 	static var version(default,null) : String;
+	#if flash10
+	static var hasColorCorrection(default,null) : Bool;
+	#end
 }
 }

+ 9 - 0
std/flash9/system/JPEGLoaderContext.hx

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

+ 1 - 1
std/flash9/text/Font.hx

@@ -7,5 +7,5 @@ extern class Font {
 	var fontType(default,null) : String;
 	var fontType(default,null) : String;
 	function hasGlyphs(str : String) : Bool;
 	function hasGlyphs(str : String) : Bool;
 	static function enumerateFonts(?enumerateDeviceFonts : Bool) : Array<Dynamic>;
 	static function enumerateFonts(?enumerateDeviceFonts : Bool) : Array<Dynamic>;
-	static function registerFont(font : Dynamic) : Void;
+	static function registerFont(font : Class<Dynamic>) : Void;
 }
 }

+ 8 - 8
std/flash9/text/StyleSheet.hx

@@ -8,12 +8,12 @@ extern class StyleSheet extends flash.events.EventDispatcher {
 	function setStyle(styleName : String, styleObject : Dynamic) : Void;
 	function setStyle(styleName : String, styleObject : Dynamic) : Void;
 	var styleNames(default,null) : Array<Dynamic>;
 	var styleNames(default,null) : Array<Dynamic>;
 	function transform(formatObject : Dynamic) : flash.text.TextFormat;
 	function transform(formatObject : Dynamic) : flash.text.TextFormat;
-	private function _copy(o : Dynamic) : Dynamic;
-	private var _css : Dynamic;
-	private function _parseCSSFontFamily(fontFamily : String) : String;
-	private function _parseCSSInternal(cssText : String) : Dynamic;
-	private function _parseColor(color : String) : UInt;
-	private var _styles : Dynamic;
-	private function _update() : Void;
-	private function doTransform(n : String) : Void;
+	//private function _copy(o : Dynamic) : Dynamic;
+	//private var _css : Dynamic;
+	//private function _parseCSSFontFamily(fontFamily : String) : String;
+	//private function _parseCSSInternal(cssText : String) : Dynamic;
+	//private function _parseColor(color : String) : UInt;
+	//private var _styles : Dynamic;
+	//private function _update() : Void;
+	//private function doTransform(n : String) : Void;
 }
 }

+ 3 - 3
std/flash9/text/TextField.hx

@@ -62,7 +62,7 @@ extern class TextField extends flash.display.InteractiveObject {
 	var type : String;
 	var type : String;
 	var useRichTextClipboard : Bool;
 	var useRichTextClipboard : Bool;
 	var wordWrap : Bool;
 	var wordWrap : Bool;
-	private function copyRichText() : String;
-	private function pasteRichText(richText : String) : Bool;
-	private static var richTextFields : Array<Dynamic>;
+	//private function copyRichText() : String;
+	//private function pasteRichText(richText : String) : Bool;
+	//private static var richTextFields : Array<Dynamic>;
 }
 }

+ 9 - 0
std/flash9/text/engine/BreakOpportunity.hx

@@ -0,0 +1,9 @@
+package flash.text.engine;
+
+extern class BreakOpportunity {
+	function new() : Void;
+	static var ALL : String;
+	static var ANY : String;
+	static var AUTO : String;
+	static var NONE : String;
+}

+ 15 - 0
std/flash9/text/engine/ContentElement.hx

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

+ 8 - 0
std/flash9/text/engine/DigitCase.hx

@@ -0,0 +1,8 @@
+package flash.text.engine;
+
+extern class DigitCase {
+	function new() : Void;
+	static var DEFAULT : String;
+	static var LINING : String;
+	static var OLD_STYLE : String;
+}

+ 8 - 0
std/flash9/text/engine/DigitWidth.hx

@@ -0,0 +1,8 @@
+package flash.text.engine;
+
+extern class DigitWidth {
+	function new() : Void;
+	static var DEFAULT : String;
+	static var PROPORTIONAL : String;
+	static var TABULAR : String;
+}

+ 6 - 0
std/flash9/text/engine/EastAsianJustifier.hx

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

+ 22 - 0
std/flash9/text/engine/ElementFormat.hx

@@ -0,0 +1,22 @@
+package flash.text.engine;
+
+extern class ElementFormat {
+	function new(?fontDescription : flash.text.engine.FontDescription, ?fontSize : Float, ?color : UInt, ?alpha : Float, ?textRotation : String, ?dominantBaseline : String, ?alignmentBaseline : String, ?baselineShift : Float, ?kerning : String, ?tracking : Float, ?locale : String, ?breakOpportunity : String, ?digitCase : String, ?digitWidth : String, ?ligatureLevel : String, ?typographicCase : String) : Void;
+	var alignmentBaseline : String;
+	var alpha : Float;
+	var baselineShift : Float;
+	var breakOpportunity : String;
+	var color : UInt;
+	var digitCase : String;
+	var digitWidth : String;
+	var dominantBaseline : String;
+	var fontDescription : flash.text.engine.FontDescription;
+	var fontSize : Float;
+	function getFontMetrics() : flash.text.engine.FontMetrics;
+	var kerning : String;
+	var ligatureLevel : String;
+	var locale : String;
+	var textRotation : String;
+	var tracking : Float;
+	var typographicCase : String;
+}

+ 13 - 0
std/flash9/text/engine/FontDescription.hx

@@ -0,0 +1,13 @@
+package flash.text.engine;
+
+extern class FontDescription {
+	function new(?fontName : String, ?fontWeight : String, ?fontPosture : String, ?fontLookup : String, ?antiAliasType : String, ?gridFitType : String, ?sharpness : Float, ?thickness : Float) : Void;
+	var antiAliasType : String;
+	var fontLookup : String;
+	var fontName : String;
+	var fontPosture : String;
+	var fontWeight : String;
+	var gridFitType : String;
+	var sharpness : Float;
+	var thickness : Float;
+}

+ 7 - 0
std/flash9/text/engine/FontLookup.hx

@@ -0,0 +1,7 @@
+package flash.text.engine;
+
+extern class FontLookup {
+	function new() : Void;
+	static var DEVICE : String;
+	static var EMBEDDED : String;
+}

+ 12 - 0
std/flash9/text/engine/FontMetrics.hx

@@ -0,0 +1,12 @@
+package flash.text.engine;
+
+extern class FontMetrics {
+	function new(emBox : flash.geom.Rectangle, strikethroughPosition : Float, strikethroughThickness : Float, underlinePosition : Float, underlineThickness : Float, subscriptScale : Float, superscriptScale : Float) : Void;
+	var emBox : flash.geom.Rectangle;
+	var strikethroughPosition : Float;
+	var strikethroughThickness : Float;
+	var subscriptScale : Float;
+	var superscriptScale : Float;
+	var underlinePosition : Float;
+	var underlineThickness : Float;
+}

+ 7 - 0
std/flash9/text/engine/FontPosture.hx

@@ -0,0 +1,7 @@
+package flash.text.engine;
+
+extern class FontPosture {
+	function new() : Void;
+	static var ITALIC : String;
+	static var NORMAL : String;
+}

+ 7 - 0
std/flash9/text/engine/FontWeight.hx

@@ -0,0 +1,7 @@
+package flash.text.engine;
+
+extern class FontWeight {
+	function new() : Void;
+	static var BOLD : String;
+	static var NORMAL : String;
+}

+ 7 - 0
std/flash9/text/engine/GlyphRotation.hx

@@ -0,0 +1,7 @@
+package flash.text.engine;
+
+extern class GlyphRotation {
+	function new() : Void;
+	static var FULL_AND_WIDE : String;
+	static var NONE : String;
+}

+ 8 - 0
std/flash9/text/engine/GraphicElement.hx

@@ -0,0 +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 : String) : Void;
+	var elementHeight : Float;
+	var elementWidth : Float;
+	var graphic : flash.display.DisplayObject;
+}

+ 15 - 0
std/flash9/text/engine/GroupElement.hx

@@ -0,0 +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 : String) : Void;
+	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 ungroupElements(groupIndex : Int) : Void;
+}

+ 8 - 0
std/flash9/text/engine/JustificationStyle.hx

@@ -0,0 +1,8 @@
+package flash.text.engine;
+
+extern class JustificationStyle {
+	function new() : Void;
+	static var PRIORITIZE_LEAST_ADJUSTMENT : String;
+	static var PUSH_IN_KINSOKU : String;
+	static var PUSH_OUT_ONLY : String;
+}

+ 8 - 0
std/flash9/text/engine/Kerning.hx

@@ -0,0 +1,8 @@
+package flash.text.engine;
+
+extern class Kerning {
+	function new() : Void;
+	static var AUTO : String;
+	static var OFF : String;
+	static var ON : String;
+}

+ 10 - 0
std/flash9/text/engine/LigatureLevel.hx

@@ -0,0 +1,10 @@
+package flash.text.engine;
+
+extern class LigatureLevel {
+	function new() : Void;
+	static var COMMON : String;
+	static var EXOTIC : String;
+	static var MINIMUM : String;
+	static var NONE : String;
+	static var UNCOMMON : String;
+}

+ 8 - 0
std/flash9/text/engine/LineJustification.hx

@@ -0,0 +1,8 @@
+package flash.text.engine;
+
+extern class LineJustification {
+	function new() : Void;
+	static var ALL_BUT_LAST : String;
+	static var ALL_INCLUDING_LAST : String;
+	static var UNJUSTIFIED : String;
+}

+ 6 - 0
std/flash9/text/engine/SpaceJustifier.hx

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

+ 9 - 0
std/flash9/text/engine/TabAlignment.hx

@@ -0,0 +1,9 @@
+package flash.text.engine;
+
+extern class TabAlignment {
+	function new() : Void;
+	static var CENTER : String;
+	static var DECIMAL : String;
+	static var END : String;
+	static var START : String;
+}

+ 8 - 0
std/flash9/text/engine/TabStop.hx

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

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

@@ -0,0 +1,14 @@
+package flash.text.engine;
+
+extern class TextBaseline {
+	function new() : Void;
+	static var ASCENT : String;
+	static var DESCENT : String;
+	static var IDEOGRAPHIC_BOTTOM : String;
+	static var IDEOGRAPHIC_CENTER : String;
+	static var IDEOGRAPHIC_TOP : String;
+	static var ROMAN : String;
+	static var SUBSCRIPT : String;
+	static var SUPERSCRIPT : String;
+	static var USE_DOMINANT_BASELINE : String;
+}

+ 29 - 0
std/flash9/text/engine/TextBlock.hx

@@ -0,0 +1,29 @@
+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, ?glyphRotation : String, ?lineRotation : String, ?baselineZero : String, ?bidiLevel : Int, ?applyNonLinearFontScaling : Bool, ?baselineFontDescription : flash.text.engine.FontDescription, ?baselineFontSize : Float) : Void;
+	var applyNonLinearFontScaling : Bool;
+	var baselineFontDescription : flash.text.engine.FontDescription;
+	var baselineFontSize : Float;
+	var baselineZero : String;
+	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;
+	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 : String;
+	var lastLine(default,null) : flash.text.engine.TextLine;
+	var lineRotation : String;
+	function releaseLines(firstLine : flash.text.engine.TextLine, lastLine : flash.text.engine.TextLine) : Dynamic;
+	var tabStops : flash.Vector<flash.text.engine.TabStop>;
+	var textJustifier : flash.text.engine.TextJustifier;
+	var textLineCreationResult(default,null) : String;
+	var userData : Dynamic;
+	//private function DoCreateTextLine(previousLine : flash.text.engine.TextLine, width : Float, ?lineOffset : Float, ?fitSomething : Bool) : flash.text.engine.TextLine;
+}

+ 7 - 0
std/flash9/text/engine/TextElement.hx

@@ -0,0 +1,7 @@
+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 : String) : Void;
+	function replaceText(beginIndex : Int, endIndex : Int, newText : String) : Void;
+	//var text(null,default) : Void;
+}

+ 9 - 0
std/flash9/text/engine/TextJustifier.hx

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

+ 37 - 0
std/flash9/text/engine/TextLine.hx

@@ -0,0 +1,37 @@
+package flash.text.engine;
+
+extern class TextLine extends flash.display.DisplayObjectContainer {
+	function new() : Void;
+	var ascent(default,null) : Float;
+	var atomCount(default,null) : Int;
+	var descent(default,null) : Float;
+	function dump() : String;
+	function flushAtomData() : Void;
+	function getAtomBidiLevel(atomIndex : Int) : Int;
+	function getAtomBounds(atomIndex : Int) : flash.geom.Rectangle;
+	function getAtomCenter(atomIndex : Int) : Float;
+	function getAtomGraphic(atomIndex : Int) : flash.display.DisplayObject;
+	function getAtomIndexAtCharIndex(charIndex : Int) : Int;
+	function getAtomIndexAtPoint(stageX : Float, stageY : Float) : Int;
+	function getAtomTextBlockBeginIndex(atomIndex : Int) : Int;
+	function getAtomTextBlockEndIndex(atomIndex : Int) : Int;
+	function getAtomTextRotation(atomIndex : Int) : String;
+	function getAtomWordBoundaryOnLeft(atomIndex : Int) : Bool;
+	function getBaselinePosition(baseline : String) : 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 : String;
+	//private function doGetAtomIndexAtPoint(x : Float, y : Float) : Int;
+	static var MAX_LINE_WIDTH : Int;
+}

+ 9 - 0
std/flash9/text/engine/TextLineCreationResult.hx

@@ -0,0 +1,9 @@
+package flash.text.engine;
+
+extern class TextLineCreationResult {
+	function new() : Void;
+	static var COMPLETE : String;
+	static var EMERGENCY : String;
+	static var INSUFFICIENT_WIDTH : String;
+	static var SUCCESS : String;
+}

+ 11 - 0
std/flash9/text/engine/TextLineMirrorRegion.hx

@@ -0,0 +1,11 @@
+package flash.text.engine;
+
+extern class TextLineMirrorRegion {
+	function new() : Void;
+	var bounds(default,null) : flash.geom.Rectangle;
+	var element(default,null) : flash.text.engine.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;
+}

+ 9 - 0
std/flash9/text/engine/TextLineValidity.hx

@@ -0,0 +1,9 @@
+package flash.text.engine;
+
+extern class TextLineValidity {
+	function new() : Void;
+	static var INVALID : String;
+	static var POSSIBLY_INVALID : String;
+	static var STATIC : String;
+	static var VALID : String;
+}

+ 9 - 0
std/flash9/text/engine/TextRotation.hx

@@ -0,0 +1,9 @@
+package flash.text.engine;
+
+extern class TextRotation {
+	function new() : Void;
+	static var ROTATE_0 : String;
+	static var ROTATE_180 : String;
+	static var ROTATE_270 : String;
+	static var ROTATE_90 : String;
+}

+ 12 - 0
std/flash9/text/engine/TypographicCase.hx

@@ -0,0 +1,12 @@
+package flash.text.engine;
+
+extern class TypographicCase {
+	function new() : Void;
+	static var CAPS : String;
+	static var CAPS_AND_SMALL_CAPS : String;
+	static var DEFAULT : String;
+	static var LOWERCASE : String;
+	static var SMALL_CAPS : String;
+	static var TITLE : String;
+	static var UPPERCASE : String;
+}

+ 10 - 2
std/flash9/ui/ContextMenu.hx

@@ -1,9 +1,17 @@
 package flash.ui;
 package flash.ui;
 
 
 extern class ContextMenu extends flash.events.EventDispatcher {
 extern class ContextMenu extends flash.events.EventDispatcher {
-	function new() : Void;
+
 	var builtInItems : flash.ui.ContextMenuBuiltInItems;
 	var builtInItems : flash.ui.ContextMenuBuiltInItems;
-	function clone() : flash.ui.ContextMenu;
 	var customItems : Array<Dynamic>;
 	var customItems : Array<Dynamic>;
+
+	function new() : Void;
+	function clone() : flash.ui.ContextMenu;
 	function hideBuiltInItems() : Void;
 	function hideBuiltInItems() : Void;
+
+	#if flash10
+	var clipboardItems : ContextMenuClipboardItems;
+	var clipboardMenu : Bool;
+	var link : flash.net.URLRequest;
+	#end
 }
 }

+ 14 - 0
std/flash9/ui/ContextMenuClipboardItems.hx

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

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

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

+ 9 - 0
std/flash9/ui/MouseCursor.hx

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

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

@@ -1,13 +1,15 @@
 package flash.utils;
 package flash.utils;
 
 
 extern class ByteArray implements IDataInput, implements IDataOutput, implements ArrayAccess<Int> {
 extern class ByteArray implements IDataInput, implements IDataOutput, implements ArrayAccess<Int> {
-	function new() : Void;
+
 	var bytesAvailable(default,null) : UInt;
 	var bytesAvailable(default,null) : UInt;
-	function compress() : Void;
-	var endian : String;
+	var endian : Endian;
 	var length : UInt;
 	var length : UInt;
 	var objectEncoding : UInt;
 	var objectEncoding : UInt;
 	var position : UInt;
 	var position : UInt;
+
+	function new() : Void;
+	function compress() : Void;
 	function readBoolean() : Bool;
 	function readBoolean() : Bool;
 	function readByte() : Int;
 	function readByte() : Int;
 	function readBytes(bytes : flash.utils.ByteArray, ?offset : UInt, ?length : UInt) : Void;
 	function readBytes(bytes : flash.utils.ByteArray, ?offset : UInt, ?length : UInt) : Void;
@@ -36,5 +38,13 @@ extern class ByteArray implements IDataInput, implements IDataOutput, implements
 	function writeUTF(value : String) : Void;
 	function writeUTF(value : String) : Void;
 	function writeUTFBytes(value : String) : Void;
 	function writeUTFBytes(value : String) : Void;
 	function writeUnsignedInt(value : UInt) : Void;
 	function writeUnsignedInt(value : UInt) : Void;
+
+	#if flash10
+	function clear():Void;
+	function deflate():Void;
+	function inflate():Void;
+	#end
+
 	static var defaultObjectEncoding : UInt;
 	static var defaultObjectEncoding : UInt;
+
 }
 }

+ 3 - 4
std/flash9/utils/Endian.hx

@@ -1,7 +1,6 @@
 package flash.utils;
 package flash.utils;
 
 
-extern class Endian {
-	function new() : Void;
-	static var BIG_ENDIAN : String;
-	static var LITTLE_ENDIAN : String;
+extern enum Endian {
+	BIG_ENDIAN;
+	LITTLE_ENDIAN;
 }
 }

+ 1 - 1
std/flash9/utils/IDataInput.hx

@@ -2,7 +2,7 @@ package flash.utils;
 
 
 extern interface IDataInput {
 extern interface IDataInput {
 	var bytesAvailable(default,null) : UInt;
 	var bytesAvailable(default,null) : UInt;
-	var endian : String;
+	var endian : Endian;
 	var objectEncoding : UInt;
 	var objectEncoding : UInt;
 	function readBoolean() : Bool;
 	function readBoolean() : Bool;
 	function readByte() : Int;
 	function readByte() : Int;

+ 1 - 1
std/flash9/utils/IDataOutput.hx

@@ -1,7 +1,7 @@
 package flash.utils;
 package flash.utils;
 
 
 extern interface IDataOutput {
 extern interface IDataOutput {
-	var endian : String;
+	var endian : Endian;
 	var objectEncoding : UInt;
 	var objectEncoding : UInt;
 	function writeBoolean(value : Bool) : Void;
 	function writeBoolean(value : Bool) : Void;
 	function writeByte(value : Int) : Void;
 	function writeByte(value : Int) : Void;

+ 1 - 1
std/flash9/utils/ObjectInput.hx

@@ -3,7 +3,7 @@ package flash.utils;
 extern class ObjectInput implements IDataInput {
 extern class ObjectInput implements IDataInput {
 	function new() : Void;
 	function new() : Void;
 	var bytesAvailable(default,null) : UInt;
 	var bytesAvailable(default,null) : UInt;
-	var endian : String;
+	var endian : Endian;
 	var objectEncoding : UInt;
 	var objectEncoding : UInt;
 	function readBoolean() : Bool;
 	function readBoolean() : Bool;
 	function readByte() : Int;
 	function readByte() : Int;

+ 1 - 1
std/flash9/utils/ObjectOutput.hx

@@ -2,7 +2,7 @@ package flash.utils;
 
 
 extern class ObjectOutput implements IDataOutput {
 extern class ObjectOutput implements IDataOutput {
 	function new() : Void;
 	function new() : Void;
-	var endian : String;
+	var endian : Endian;
 	var objectEncoding : UInt;
 	var objectEncoding : UInt;
 	function writeBoolean(value : Bool) : Void;
 	function writeBoolean(value : Bool) : Void;
 	function writeByte(value : Int) : Void;
 	function writeByte(value : Int) : Void;

+ 4 - 8
std/flash9/utils/Timer.hx

@@ -1,18 +1,14 @@
 package flash.utils;
 package flash.utils;
 
 
 extern class Timer extends flash.events.EventDispatcher {
 extern class Timer extends flash.events.EventDispatcher {
-	function new(delay : Float, ?repeatCount : Int) : Void;
+
 	var currentCount(default,null) : Int;
 	var currentCount(default,null) : Int;
 	var delay : Float;
 	var delay : Float;
 	var repeatCount : Int;
 	var repeatCount : Int;
-	function reset() : Void;
 	var running(default,null) : Bool;
 	var running(default,null) : Bool;
+
+	function new(delay : Float, ?repeatCount : Int) : Void;
+	function reset() : Void;
 	function start() : Void;
 	function start() : Void;
 	function stop() : Void;
 	function stop() : Void;
-	private function _start(delay : Float, closure : Dynamic) : Void;
-	private function _timerDispatch() : Void;
-	private var m_delay : Float;
-	private var m_iteration : Int;
-	private var m_repeatCount : Int;
-	private function tick() : Void;
 }
 }

+ 83 - 0
std/haxe/ImportAll.hx

@@ -441,3 +441,86 @@ import tools.haxelib.Site;
 
 
 #end
 #end
 
 
+#if flash10
+
+import flash.Vector;
+
+import flash.events.SamplesCallbackEvent;
+import flash.events.ShaderEvent;
+
+import flash.display.GraphicsBitmapFill;
+import flash.display.GraphicsEndFill;
+import flash.display.GraphicsGradientFill;
+import flash.display.GraphicsPath;
+import flash.display.GraphicsPathCommand;
+import flash.display.GraphicsPathWinding;
+import flash.display.GraphicsShaderFill;
+import flash.display.GraphicsSolidFill;
+import flash.display.GraphicsStroke;
+import flash.display.GraphicsTrianglePath;
+import flash.display.IGraphicsData;
+import flash.display.IGraphicsFill;
+import flash.display.IGraphicsPath;
+import flash.display.IGraphicsStroke;
+
+import flash.display.Shader;
+import flash.display.ShaderData;
+import flash.display.ShaderInput;
+import flash.display.ShaderJob;
+import flash.display.ShaderParameter;
+import flash.display.ShaderParameterType;
+import flash.display.ShaderPrecision;
+
+import flash.display.TriangleCulling;
+
+import flash.filters.ShaderFilter;
+
+import flash.geom.Matrix3D;
+import flash.geom.Orientation3D;
+import flash.geom.PerspectiveProjection;
+import flash.geom.Utils3D;
+import flash.geom.Vector3D;
+
+import flash.media.SoundCodec;
+
+import flash.net.NetStreamInfo;
+import flash.net.NetStreamPlayOptions;
+import flash.net.NetStreamPlayTransitions;
+
+import flash.text.engine.ContentElement;
+import flash.text.engine.TextJustifier;
+import flash.text.engine.SpaceJustifier;
+import flash.text.engine.EastAsianJustifier;
+import flash.text.engine.TypographicCase;
+import flash.text.engine.TabAlignment;
+import flash.text.engine.TabStop;
+import flash.text.engine.FontDescription;
+import flash.text.engine.GlyphRotation;
+import flash.text.engine.FontMetrics;
+import flash.text.engine.FontWeight;
+import flash.text.engine.GraphicElement;
+import flash.text.engine.BreakOpportunity;
+import flash.text.engine.TextRotation;
+import flash.text.engine.Kerning;
+import flash.text.engine.TextElement;
+import flash.text.engine.JustificationStyle;
+import flash.text.engine.ElementFormat;
+import flash.text.engine.LigatureLevel;
+import flash.text.engine.TextLineCreationResult;
+import flash.text.engine.TextBlock;
+import flash.text.engine.FontPosture;
+import flash.text.engine.GroupElement;
+import flash.text.engine.FontLookup;
+import flash.text.engine.DigitCase;
+import flash.text.engine.TextLineMirrorRegion;
+import flash.text.engine.LineJustification;
+import flash.text.engine.TextLineValidity;
+import flash.text.engine.TextBaseline;
+import flash.text.engine.TextLine;
+import flash.text.engine.DigitWidth;
+
+import flash.ui.ContextMenuClipboardItems;
+import flash.ui.MouseCursor;
+
+import flash.system.JPEGLoaderContext;
+#end

Some files were not shown because too many files changed in this diff