Transferred from the Adobe Open Source Subversion Repository

Revision: 10633
Author:   dloverin@adobe.com
Date:     2009-09-28T13:24:30.559033Z

Log Message:
-----------
Use styleManager instance instead of StyleManager singleton (framework and compiler generated code)

Modified compiler generated style code for the FlexInit class. The style related changes are only available with the -keep option. AST generation is coming later.

Only the framework project is changed here. The other projects are will be changed soon.

QE notes: None.
Doc notes: None.
Bugs:
Reviewer: Alex and Paul
Tests run: checkintests, all Mustella tests(no new failures)
Is noteworthy for integration: no.

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/ButtonBarButtonSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/HaloBorder.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/accordionClasses/AccordionHeader.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/utilityClasses/CanvasLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/ButtonBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/DateChooser.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/dragClasses/DragProxy.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/ScrollArrowSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/Container.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/ButtonSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/configuration_en.properties</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/common/CompilerConfiguration.java</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/ProgressIndeterminateSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/DateChooserMonthArrowSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/lang/StandardDefs.java</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/SliderThumbSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/DateField.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/DividedBox.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/DragManagerImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/Application.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/ScrollThumbSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/dataGridClasses/DataGridColumn.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/StyleManagerImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/IStyleModule.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/listClasses/ListBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/Form.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/IStyleManager2.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/ComboBox.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/tools/PreLink.java</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/StyleManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/Label.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/DataGrid.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/gen/ClassDefLib.vm</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/ProgressTrackSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/TitleBackground.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/NumericStepperDownSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/PopUpButtonSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/ProgrammaticSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/TabSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/textClasses/TextRange.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/LayoutContainer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/AccordionHeaderSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/CheckBoxIcon.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/NumericStepperUpSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/RadioButtonIcon.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UITextField.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/states/SetStyle.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/ComboBoxArrowSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/dataGridClasses/DataGridHeaderBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/FormItem.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UIComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/dataGridClasses/DataGridHeader.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/MenuBarBackgroundSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/ProgressBarSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/SWFLoader.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/BusyCursor.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/Request.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/MenuBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/Tree.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/CSSStyleDeclaration.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/Accordion.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/SliderTrackSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/StyleProtoChain.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/List.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/css/StyleModule.vm</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/ScrollTrackSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/listClasses/TileBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/dataGridClasses/DataGridItemRenderer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/DataGridHeaderBackgroundSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/CursorManagerImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/modules/ModuleManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/effectClasses/SetStyleActionInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/css/StyleDef.vm</path>

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1262559 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/framework/src/mx/styles/IStyleManager2.as
+++ frameworks/projects/framework/src/mx/styles/IStyleManager2.as
@@ -44,6 +44,26 @@
      *  @private
      */
     function set parent(parent:IStyleManager2):void;
+
+    //----------------------------------
+    //  qualifiedTypeSelectors
+    //----------------------------------
+
+    /**
+     *  @private
+     *  Qualified type selectors were added in Flex 4 to support styling
+     *  components with the same local name, e.g. 'spark.components.Button'.
+     *  Prior to this type selectors were always unqualified class names  e.g.
+     *  'Button'. To ease migration of Flex 3 application, this property can
+     *  control whether CSS type selectors must be fully qualified class names
+     *  when the compatibility version is 4 or later.
+     */
+    function get qualifiedTypeSelectors():Boolean;
+
+    /**
+     *  @private
+     */
+    function set qualifiedTypeSelectors(value:Boolean):void;

     //----------------------------------
 	//  selectors
@@ -74,6 +94,11 @@

     /**
      * @private
+     */
+    function getMergedStyleDeclaration(selector:String):CSSStyleDeclaration;
+
+    /**
+     * @private
      */
     function hasPseudoCondition(value:String):Boolean;


Transferred from the Adobe Open Source Subversion Repository

Revision: 6169
Author:   dloverin@adobe.com
Date:     2009-04-20T20:19:55.241620Z

Log Message:
-----------
Show disabled look when the application is disabled.

Set the Spark ApplicationSkin to use alpha="0.5" when the application is disabled.

Removed setting the name property in the Halo Application constructor and the Spark Application constructor. The name set there is overwritten in the FlexSprite constructor.

QE Notes: None.
Doc Notes: None.
Bugs: SDK-20428
Reviewer: Glenn
tests: checkintests

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/Application.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/skins/default/ApplicationSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/Application.as</path>

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1278186 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/spark/src/spark/components/Application.as
+++ frameworks/projects/spark/src/spark/components/Application.as
@@ -160,8 +160,6 @@
      */
     public function Application()
     {
-        name = "fxApplication";
-
         UIComponentGlobals.layoutManager = ILayoutManager(
             Singleton.getInstance("mx.managers::ILayoutManager"));
         UIComponentGlobals.layoutManager.usePhasedInstantiation = true;


Transferred from the Adobe Open Source Subversion Repository

Revision: 8615
Author:   dsubrama@adobe.com
Date:     2009-07-16T00:06:27.325362Z

Log Message:
-----------
Added in enumerations to Inspectable metadata for a bunch of properties.

Reviewer: Ryan
QA: Yes, regress
Doc: No
Checkintests: Pass

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/core/SpriteVisualElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/SkinnableContainer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/styles/metadata/BasicInheritingTextStyles.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/AnimateTransform3D.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/supportClasses/LayoutBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/GroupBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/core/IDeferredContentOwner.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/HorizontalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/VerticalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/HGroup.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/AnimateTransform.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/primitives/BitmapImage.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/TileLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/primitives/VideoElement.as</path>

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1285602 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/spark/src/spark/primitives/BitmapImage.as
+++ frameworks/projects/spark/src/spark/primitives/BitmapImage.as
@@ -177,7 +177,7 @@
      */
     protected var _resizeMode:uint = _REPEAT_UINT;

-    [Inspectable(category="General")]
+    [Inspectable(category="General", enumeration="normal,repeat,scale")]

     /**
      *  The resizeMode determines how the bitmap fills in the dimensions. If you set the value
@@ -222,7 +222,7 @@
     //  repeat
     //----------------------------------

-    [Inspectable(category="General")]
+    [Inspectable(category="General", enumeration="true,false")]

     /**
      *  Whether the bitmap is repeated to fill the area. Set to true to cause
@@ -375,7 +375,7 @@

     private var _smooth:Boolean = false;

-    [Inspectable(category="General")]
+    [Inspectable(category="General", enumeration="true,false")]

     /**
      *  @copy flash.display.GraphicsBitmapFill#smooth


Transferred from the Adobe Open Source Subversion Repository

Revision: 23243
Author:   cframpto@adobe.com
Date:     2011-12-20T00:59:57.384047Z

Log Message:
-----------
In frameworks, remove Adobe headers from all files except xml/mxml file types.  There are also a few .txt files that are license files that I didn't touch yet.

Modified Paths:
--------------
2361 paths were modified

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1284882 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/spark/src/spark/formatters/supportClasses/NumberFormatterBase.as
+++ frameworks/projects/spark/src/spark/formatters/supportClasses/NumberFormatterBase.as
@@ -1,13 +1,3 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  ADOBE SYSTEMS INCORPORATED
-//  Copyright 2010 Adobe Systems Incorporated
-//  All Rights Reserved.
-//
-//  NOTICE: Adobe permits you to use, modify, and distribute this file
-//  in accordance with the terms of the license agreement accompanying it.
-//
-////////////////////////////////////////////////////////////////////////////////

 package spark.formatters.supportClasses
 {


add Geometry.cast() optional hitUV argument to fetch the hit point texture coordinates

--- src/aerys/minko/render/geometry/Geometry.as
+++ src/aerys/minko/render/geometry/Geometry.as
@@ -16,6 +16,7 @@
 	import aerys.minko.type.math.Ray;
 	import aerys.minko.type.math.Vector4;

+	import flash.geom.Point;
 	import flash.utils.ByteArray;

 	/**
@@ -852,6 +853,17 @@
 			_boundingBox = new BoundingBox(min, max);
 		}

+		/**
+		 * Merge another Geometry object. The Geometry object calling the merge() method is
+		 * modified in place.
+		 *
+		 * @param geometry The Geometry to merge.
+		 * @param vertexStreamUsage The StreamUsage to use for the new VertexStream objects.
+		 * @param indexStreamUsage The StreamUsage to use for the new IndexStream objects.
+		 *
+		 * @return
+		 *
+		 */
 		public function merge(geometry			: Geometry,
 							  vertexStreamUsage : uint = 3,
 							  indexStreamUsage 	: uint = 3) : Geometry
@@ -895,6 +907,13 @@
 			return this;
 		}

+		/**
+		 * Flip (multiply by -1) the normals of the geometry.
+		 *
+		 * @param flipTangents Whether to flip the tangents too, default value is true.
+		 * @return
+		 *
+		 */
 		public function flipNormals(flipTangents : Boolean = true) : Geometry
 		{
 			var numStreams 	: uint 		= this.numVertexStreams;
@@ -933,7 +952,24 @@
 			_changed.execute(this);
 		}

-		public function cast(ray : Ray, transform : Matrix4x4 = null, hitPoint : Vector4 = null) : int
+		/**
+		 * Cast a ray on the 3D geometry to retrieve the ID of the hit triangle.
+		 *
+		 * @param ray The ray to cast on the geometry.
+		 * @param transform An optional 3D transform to transform the ray into the geometry local space.
+		 * @param hitXYZ An optional reference to a Vector4 object to fill with the (x, y, z) coordinates
+		 * of the actual ray/geometry hit point.
+		 * @param hitUV An optional reference to a Point object to fill with the (u, v) texture coordinates
+		 * of the actual ray/geometry hit point.
+		 *
+		 * @return The triangle ID (the ID of the first index of the triangle in the IndexStream) that was
+		 * hit by the specified ray, -1 otherwise.
+		 *
+		 */
+		public function cast(ray 		: Ray,
+							 transform 	: Matrix4x4 = null,
+							 hitXYZ 	: Vector4 	= null,
+							 hitUV		: Point		= null) : int
 		{
 			var numVertices : uint 	= indexStream._data.length / 2;

@@ -957,8 +993,8 @@

 			var vertexStream 	: IVertexStream = getVertexStream(0);

-			var xyzVertexStream : VertexStream 	= vertexStream.getStreamByComponent(VertexComponent.XYZ);
-			var format 			: VertexFormat 	= xyzVertexStream.format;
+			var xyzStream 		: VertexStream 	= vertexStream.getStreamByComponent(VertexComponent.XYZ);
+			var format 			: VertexFormat 	= xyzStream.format;
 			var xyzVertexSize 	: uint 			= format.numBytesPerVertex;
 			var offset			: uint 			= format.getOffsetForComponent(VertexComponent.XYZ);

@@ -971,9 +1007,11 @@
 			var localOriginZ	: Number 		= localOrigin.z;

 			var indicesData 	: ByteArray 	= _indexStream.lock();
-			var xyzData			: ByteArray		= xyzVertexStream.lock();
+			var xyzData			: ByteArray		= xyzStream.lock();
 			var minDistance		: Number 		= Number.POSITIVE_INFINITY;
 			var triangleIndice	: int 			= -3;
+
+			var lambda			: Vector4		= new Vector4();

 			for (var verticeIndex : uint = 0; verticeIndex < numVertices; verticeIndex += 3)
 			{
@@ -1040,25 +1078,77 @@
 				{
 					minDistance = t;
 					triangleIndice = verticeIndex;
+
+					if (hitUV)
+					{
+						lambda.x = u
+						lambda.y = v
+					}
 				}
 			}

-			if (triangleIndice >= 0 && hitPoint)
-			{
-				var origin 		: Vector4 	= ray.origin;
-				var direction 	: Vector4	= ray.direction;
-
-				hitPoint.x = origin.x + minDistance * direction.x;
-				hitPoint.y = origin.y + minDistance * direction.y;
-				hitPoint.z = origin.z + minDistance * direction.z;
+			if (triangleIndice >= 0)
+			{
+				if (hitXYZ)
+				{
+					var origin 		: Vector4 	= ray.origin;
+					var direction 	: Vector4	= ray.direction;
+
+					hitXYZ.x = origin.x + minDistance * direction.x;
+					hitXYZ.y = origin.y + minDistance * direction.y;
+					hitXYZ.z = origin.z + minDistance * direction.z;
+				}
+
+				if (hitUV)
+				{
+					var uvStream : VertexStream = vertexStream.getStreamByComponent(VertexComponent.UV);
+
+					if (!uvStream)
+						throw new Error('Missing vertex component: u, v');
+
+					var uvData 			: ByteArray = uvStream == xyzStream ? xyzData : uvStream.lock();
+					var uvVertexSize 	: uint 		= uvStream.format.numBytesPerVertex;
+					var uvOffset 		: uint 		= uvStream.format.getOffsetForComponent(VertexComponent.UV);
+
+					indicesData.position = triangleIndice * 2;
+
+					uvData.position = indicesData.readUnsignedShort() * uvVertexSize + uvOffset;
+					var u0  : Number = uvData.readFloat();
+					var v0  : Number = uvData.readFloat();
+
+					uvData.position = indicesData.readUnsignedShort() * uvVertexSize + uvOffset;
+					var u1  : Number = uvData.readFloat();
+					var v1  : Number = uvData.readFloat();
+
+					uvData.position = indicesData.readUnsignedShort() * uvVertexSize + uvOffset;
+					var u2  : Number = uvData.readFloat();
+					var v2  : Number = uvData.readFloat();
+
+					lambda.z = 1 - lambda.x - lambda.y;
+
+					hitUV.x = lambda.z * u0 + lambda.x*u1 + lambda.y * u2;
+					hitUV.y = lambda.z * v0 + lambda.x*v1 + lambda.y * v2;
+
+					if (uvStream != xyzStream)
+						uvStream.unlock(false);
+				}
 			}

 			_indexStream.unlock(false);
-			xyzVertexStream.unlock(false);
+			xyzStream.unlock(false);

 			return triangleIndice / 3;
 		}

+		/**
+		 * Invert the winding of the triangles by rewritting the IndexStream. Inverting the winding
+		 * means that the front faces will become back faces and vice versa.
+		 *
+		 * @param flipNormals
+		 * @param flipTangents
+		 * @return
+		 *
+		 */
 		public function invertWinding(flipNormals : Boolean = true, flipTangents : Boolean = true) : Geometry
 		{
 			var numIndices		: uint		= indexStream.length;


Transferred from the Adobe Open Source Subversion Repository

Revision: 19167
Author:   smgilson@adobe.com
Date:     2010-12-08T21:07:50.821383Z

Log Message:
-----------
first ASDoc pass on view transitions

QE notes:
Doc notes:
Bugs:
Reviewer:
Tests run: checkintests
Is noteworthy for integration:

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/transitions/CrossFadeViewTransition.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/transitions/ZoomViewTransitionMode.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/transitions/FlipViewTransition.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/transitions/ViewTransitionBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/transitions/FlipViewTransitionMode.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/transitions/SlideViewTransition.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/transitions/ViewTransitionDirection.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/transitions/ZoomViewTransition.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/transitions/SlideViewTransitionMode.as</path>

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1264830 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/mobilecomponents/src/spark/transitions/SlideViewTransition.as
+++ frameworks/projects/mobilecomponents/src/spark/transitions/SlideViewTransition.as
@@ -29,12 +29,18 @@
 use namespace mx_internal;

 /**
- *  The SlideViewTransition class serves as a simple slide transition for
- *  views.  The slide transition supports several modes (push, cover, and
+ *  The SlideViewTransition class performs a simple slide transition for views.
+ *  The existing view slides out as the new view slides in.
+ *  The slide transition supports several modes (push, cover, and
  *  uncover) as well as an optional direction (up, down, left, or right).
+ *
+ *
Note:Create and configure view transitions in ActionScript;
+ *  you cannot create them in MXML.

+ *
+ *  @see SlideViewTransitionMode
+ *  @see ViewTransitionDirection
  *
  *  @langversion 3.0
- *  @playerversion Flash 10
  *  @playerversion AIR 2.5
  *  @productversion Flex 4.5
  */
@@ -50,7 +56,6 @@
      *  Constructor.
      *
      *  @langversion 3.0
-     *  @playerversion Flash 10
      *  @playerversion AIR 2.5
      *  @productversion Flex 4.5
      */
@@ -109,7 +114,6 @@
      *  @default ViewTransitionDirection.LEFT
      *
      *  @langversion 3.0
-     *  @playerversion Flash 10
      *  @playerversion AIR 2.5
      *  @productversion Flex 4.5
      */
@@ -138,7 +142,6 @@
      *  @default SlideViewTransitionMode.PUSH
      *
      *  @langversion 3.0
-     *  @playerversion Flash 10
      *  @playerversion AIR 2.5
      *  @productversion Flex 4.5
      */
@@ -162,10 +165,9 @@
     //--------------------------------------------------------------------------

     /**
-     *  @inheritDoc
-     *
-     *  @langversion 3.0
-     *  @playerversion Flash 10
+     *  @private
+     *
+     *  @langversion 3.0
      *  @playerversion AIR 2.5
      *  @productversion Flex 4.5
      */
@@ -185,10 +187,9 @@
     }

     /**
-     *  @inheritDoc
-     *
-     *  @langversion 3.0
-     *  @playerversion Flash 10
+     *  @private
+     *
+     *  @langversion 3.0
      *  @playerversion AIR 2.5
      *  @productversion Flex 4.5
      */
@@ -287,7 +288,7 @@
         var animation:Move = new Move();
         animation.targets = slideTargets;
         animation.duration = duration;
-		animation.easer = easer;
+        animation.easer = easer;
         if (verticalTransition)
             animation.yBy = slideDistance + slideOffset;
         else
@@ -296,10 +297,9 @@
     }

     /**
-     *  @inheritDoc
-     *
-     *  @langversion 3.0
-     *  @playerversion Flash 10
+     *  @private
+     *
+     *  @langversion 3.0
      *  @playerversion AIR 2.5
      *  @productversion Flex 4.5
      */
@@ -405,7 +405,7 @@
                 slideDistance = -targetNavigator.width;
                 break;
         }
-
+
         // Position the control bars prior to our transition.

         if (targetNavigator == parentNavigator)
@@ -443,10 +443,9 @@
     }

     /**
-     *  @inheritDoc
-     *
-     *  @langversion 3.0
-     *  @playerversion Flash 10
+     *  @private
+     *
+     *  @langversion 3.0
      *  @playerversion AIR 2.5
      *  @productversion Flex 4.5
      */
@@ -518,10 +517,9 @@
     }

     /**
-     *  @inheritDoc
-     *
-     *  @langversion 3.0
-     *  @playerversion Flash 10
+     *  @private
+     *
+     *  @langversion 3.0
      *  @playerversion AIR 2.5
      *  @productversion Flex 4.5
      */


Remove useless import.

Remove useless import.

--- actionscript/src/com/freshplanet/nativeExtensions/PushNotification.as
+++ actionscript/src/com/freshplanet/nativeExtensions/PushNotification.as
@@ -5,8 +5,6 @@
 	import flash.events.StatusEvent;
 	import flash.external.ExtensionContext;
 	import flash.system.Capabilities;
-
-	import mx.graphics.shaderClasses.ExclusionShader;

     public class PushNotification extends EventDispatcher


Transferred from the Adobe Open Source Subversion Repository

Revision: 17256
Author:   jasonsj@adobe.com
Date:     2010-08-10T19:09:27.484560Z

Log Message:
-----------
API rename: actionGroupLayout, titleGroupLayout and navigationGroupLayout to actionLayout, titleLayout and navigationLayout per ActionBar P-ARB.

QE notes: Update tests that use custom ActionBar layouts.
Doc notes:
Bugs:
Reviewer: chiedozi
Tests run: checkintests
Is noteworthy for integration: Yes

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/components/View.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/components/MobileApplication.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/components/ViewNavigator.as</path>

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1264246 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/mobilecomponents/src/spark/components/ViewNavigator.as
+++ frameworks/projects/mobilecomponents/src/spark/components/ViewNavigator.as
@@ -275,12 +275,12 @@
 	protected function get actionBarPropertyInvalidated():Boolean
 	{
 		return 	actionContentInvalidated ||
-				actionGroupLayoutInvalidated ||
+				actionLayoutInvalidated ||
 				navigationContentInvalidated ||
-				navigationGroupLayoutInvalidated ||
+				navigationLayoutInvalidated ||
 				titleInvalidated ||
 				titleContentInvalidated ||
-				titleGroupLayoutInvalidated;
+				titleLayoutInvalidated;
 	}

     //----------------------------------
@@ -903,7 +903,7 @@
     }

     //----------------------------------
-    //  actionGroupLayout
+    //  actionLayout
     //----------------------------------

     /**
@@ -916,20 +916,20 @@
      *  @playerversion AIR 2.5
      *  @productversion Flex 4.5
      */
-    private var _actionGroupLayout:LayoutBase;
-    private var actionGroupLayoutInvalidated:Boolean = false;
-
-    public function get actionGroupLayout():LayoutBase
-    {
-        return _actionGroupLayout;
-    }
-    /**
-     *  @private
-     */
-    public function set actionGroupLayout(value:LayoutBase):void
-    {
-        _actionGroupLayout = value;
-        actionGroupLayoutInvalidated = true;
+    private var _actionLayout:LayoutBase;
+    private var actionLayoutInvalidated:Boolean = false;
+
+    public function get actionLayout():LayoutBase
+    {
+        return _actionLayout;
+    }
+    /**
+     *  @private
+     */
+    public function set actionLayout(value:LayoutBase):void
+    {
+        _actionLayout = value;
+        actionLayoutInvalidated = true;

         invalidateProperties();
     }
@@ -969,11 +969,11 @@
     }

     //----------------------------------
-    //  navigationGroupLayout
-    //----------------------------------
-
-    private var _navigationGroupLayout:LayoutBase;
-    private var navigationGroupLayoutInvalidated:Boolean = false;
+    //  navigationLayout
+    //----------------------------------
+
+    private var _navigationLayout:LayoutBase;
+    private var navigationLayoutInvalidated:Boolean = false;

     /**
      *  Layout for the ActionBar navigation content group.
@@ -985,17 +985,17 @@
      *  @playerversion AIR 2.5
      *  @productversion Flex 4.5
      */
-    public function get navigationGroupLayout():LayoutBase
-    {
-        return _navigationGroupLayout;
-    }
-    /**
-     *  @private
-     */
-    public function set navigationGroupLayout(value:LayoutBase):void
-    {
-        _navigationGroupLayout = value;
-        navigationGroupLayoutInvalidated = true;
+    public function get navigationLayout():LayoutBase
+    {
+        return _navigationLayout;
+    }
+    /**
+     *  @private
+     */
+    public function set navigationLayout(value:LayoutBase):void
+    {
+        _navigationLayout = value;
+        navigationLayoutInvalidated = true;

         invalidateProperties();
     }
@@ -1065,11 +1065,11 @@
     }

     //----------------------------------
-    //  titleGroupLayout
-    //----------------------------------
-
-    private var _titleGroupLayout:LayoutBase;
-    private var titleGroupLayoutInvalidated:Boolean = false;
+    //  titleLayout
+    //----------------------------------
+
+    private var _titleLayout:LayoutBase;
+    private var titleLayoutInvalidated:Boolean = false;

     /**
      *  Layout for the ActionBar's titleContent group.
@@ -1081,17 +1081,17 @@
      *  @playerversion AIR 2.5
      *  @productversion Flex 4.5
      */
-    public function get titleGroupLayout():LayoutBase
-    {
-        return _titleGroupLayout;
-    }
-    /**
-     *  @private
-     */
-    public function set titleGroupLayout(value:LayoutBase):void
-    {
-        _titleGroupLayout = value;
-        titleGroupLayoutInvalidated = true;
+    public function get titleLayout():LayoutBase
+    {
+        return _titleLayout;
+    }
+    /**
+     *  @private
+     */
+    public function set titleLayout(value:LayoutBase):void
+    {
+        _titleLayout = value;
+        titleLayoutInvalidated = true;

         invalidateProperties();
     }
@@ -1158,12 +1158,12 @@
     private function clearActionBarInvalidationFlags():void
     {
         actionContentInvalidated = false;
-        actionGroupLayoutInvalidated = false;
+        actionLayoutInvalidated = false;
         navigationContentInvalidated = false;
-        navigationGroupLayoutInvalidated = false;
+        navigationLayoutInvalidated = false;
         titleInvalidated = false;
         titleContentInvalidated = false;
-        titleGroupLayoutInvalidated = false;
+        titleLayoutInvalidated = false;
     }

     /**
@@ -1848,22 +1848,22 @@
         if (view == null)
         {
             actionBar.actionContent = actionContent;
-            actionBar.actionLayout = actionGroupLayout;
+            actionBar.actionLayout = actionLayout;
             actionBar.navigationContent = navigationContent;
-            actionBar.navigationLayout = navigationGroupLayout;
+            actionBar.navigationLayout = navigationLayout;
             actionBar.title = title;
             actionBar.titleContent = titleContent;
-            actionBar.titleLayout = titleGroupLayout;
+            actionBar.titleLayout = titleLayout;
         }
         else if (forceUpdate)
         {
             actionBar.actionContent = view && view.actionContent ? view.actionContent : actionContent;
-            actionBar.actionLayout = view && view.actionGroupLayout ? view.actionGroupLayout : actionGroupLayout;
+            actionBar.actionLayout = view && view.actionLayout ? view.actionLayout : actionLayout;
             actionBar.navigationContent = view && view.navigationContent ? view.navigationContent : navigationContent;
-            actionBar.navigationLayout = view && view.navigationGroupLayout ? view.navigationGroupLayout : navigationGroupLayout;
+            actionBar.navigationLayout = view && view.navigationLayout ? view.navigationLayout : navigationLayout;
             actionBar.title = view && view.title ? view.title : title;
             actionBar.titleContent = view && view.titleContent ? view.titleContent : titleContent;
-            actionBar.titleLayout = view && view.titleGroupLayout ? view.titleGroupLayout : titleGroupLayout;
+            actionBar.titleLayout = view && view.titleLayout ? view.titleLayout : titleLayout;
 			actionBar.visible = actionBar.includeInLayout = view && view.actionBarVisible;

             clearActionBarInvalidationFlags();
@@ -1877,11 +1877,11 @@
                 actionContentInvalidated = false;
             }

-            if (actionGroupLayoutInvalidated)
+            if (actionLayoutInvalidated)
             {
-                actionBar.actionLayout = view && view.actionGroupLayout ?
-                    view.actionGroupLayout : actionGroupLayout;
-                actionGroupLayoutInvalidated = false;
+                actionBar.actionLayout = view && view.actionLayout ?
+                    view.actionLayout : actionLayout;
+                actionLayoutInvalidated = false;
             }

             if (navigationContentInvalidated)
@@ -1891,11 +1891,11 @@
                 navigationContentInvalidated = false;
             }

-            if (navigationGroupLayoutInvalidated)
+            if (navigationLayoutInvalidated)
             {
-                actionBar.navigationLayout = view && view.navigationGroupLayout ?
-                    view.navigationGroupLayout : navigationGroupLayout;
-                navigationGroupLayoutInvalidated = false;
+                actionBar.navigationLayout = view && view.navigationLayout ?
+                    view.navigationLayout : navigationLayout;
+                navigationLayoutInvalidated = false;
             }

             if (titleInvalidated)
@@ -1911,11 +1911,11 @@
                 titleContentInvalidated = false;
             }

-            if (titleGroupLayoutInvalidated)
+            if (titleLayoutInvalidated)
             {
-                actionBar.titleLayout = view && view.titleGroupLayout ?
-                    view.titleGroupLayout : titleGroupLayout;
-                titleGroupLayoutInvalidated = false;
+                actionBar.titleLayout = view && view.titleLayout ?
+                    view.titleLayout : titleLayout;
+                titleLayoutInvalidated = false;
             }

 			actionBar.visible = actionBar.includeInLayout = view && view.actionBarVisible;
@@ -1941,16 +1941,16 @@
                 titleInvalidated = true;
             else if (property == "titleContent")
                 titleContentInvalidated = true;
-            else if (property == "titleGroupLayout")
-                titleGroupLayoutInvalidated = true;
+            else if (property == "titleLayout")
+                titleLayoutInvalidated = true;
             else if (property == "actionContent")
                 actionContentInvalidated = true;
-            else if (property == "actionGroupLayout")
-                actionGroupLayoutInvalidated  = true;
+            else if (property == "actionLayout")
+                actionLayoutInvalidated  = true;
 			else if (property == "navigationContent")
 				navigationContentInvalidated = true;
-			else if (property == "navigationGroupLayout")
-				navigationGroupLayoutInvalidated  = true;
+			else if (property == "navigationLayout")
+				navigationLayoutInvalidated  = true;

             invalidateProperties();
         }
@@ -1979,12 +1979,12 @@
         if (instance == actionBar)
         {
             actionContentInvalidated = true;
-            actionGroupLayoutInvalidated = true;
+            actionLayoutInvalidated = true;
             navigationContentInvalidated = true;
-            navigationGroupLayoutInvalidated = true;
+            navigationLayoutInvalidated = true;
             titleInvalidated = true;
             titleContentInvalidated = true;
-            titleGroupLayoutInvalidated = true;
+            titleLayoutInvalidated = true;

             invalidateProperties();
         }


Transferred from the Adobe Open Source Subversion Repository

Revision: 23247
Author:   cframpto@adobe.com
Date:     2011-12-20T19:21:13.134833Z

Log Message:
-----------
Remove ADOBE SYSTEMS license and replace with Apache license in headers - frameworks.  A 2nd pass will be needed to get the files not handled up by the scripts.

Modified Paths:
--------------
4959 paths were modified

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1265354 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/mobiletheme/src/spark/skins/mobile/HSliderThumbSkin.as
+++ frameworks/projects/mobiletheme/src/spark/skins/mobile/HSliderThumbSkin.as
@@ -1,11 +1,19 @@
 ////////////////////////////////////////////////////////////////////////////////
 //
-//  ADOBE SYSTEMS INCORPORATED
-//  Copyright 2010 Adobe Systems Incorporated
-//  All Rights Reserved.
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
 //
-//  NOTICE: Adobe permits you to use, modify, and distribute this file
-//  in accordance with the terms of the license agreement accompanying it.
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////


Transferred from the Adobe Open Source Subversion Repository

Revision: 23246
Author:   cframpto@adobe.com
Date:     2011-12-20T17:40:08.069454Z

Log Message:
-----------
Rollback 23243.  If comment followed header it was stripped as well.

Modified Paths:
--------------
2361 paths were modified

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1265658 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/mobiletheme/src/spark/skins/mobile/ViewMenuItemSkin.as
+++ frameworks/projects/mobiletheme/src/spark/skins/mobile/ViewMenuItemSkin.as
@@ -1,3 +1,13 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  ADOBE SYSTEMS INCORPORATED
+//  Copyright 2010 Adobe Systems Incorporated
+//  All Rights Reserved.
+//
+//  NOTICE: Adobe permits you to use, modify, and distribute this file
+//  in accordance with the terms of the license agreement accompanying it.
+//
+////////////////////////////////////////////////////////////////////////////////
 package spark.skins.mobile
 {
 import flash.display.GradientType;


Transferred from the Adobe Open Source Subversion Repository

Revision: 5545
Author:   jimurphy@adobe.com
Date:     2009-03-25T19:00:52.330680Z

Log Message:
-----------
1st pass of rename according to the spec http://opensource.adobe.com/wiki/display/flexsdk/Dropping+the+Fx+Prefix

Flex now requires CSS Style declarations to declare @namespace rules and disambiguate between halo and spark components using CSS 3 namespace prefixes on type selectors. At compile time, this namespace information will be used to map type names to qualified ActionScript class names. At runtime, type selectors are matched on qualified ActionScript class name (for example mx.controls.Button rather than just Button). Flex 3 applications must be compiled with -compatibility-version=3.0.0 to get unqualified CSS type selector behavior.

QE: Yes, this build may help in updating test cases to use the new namespaces and class names.
Dev: Not yet
Doc: Not yet

Modified Paths:
--------------
748 paths were modified

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1283119 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/spark/src/spark/components/supportClasses/TrackBase.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/TrackBase.as
@@ -9,7 +9,7 @@
 //
 ////////////////////////////////////////////////////////////////////////////////

-package mx.components.baseClasses
+package spark.components.supportClasses
 {

 import flash.events.Event;
@@ -17,7 +17,7 @@
 import flash.events.MouseEvent;
 import flash.geom.Point;

-import mx.components.FxButton;
+import spark.components.Button;

 /**
  *  Dispatched when the value of the control changes
@@ -53,22 +53,22 @@
 [SkinState("disabled")]

 /**
- *  The FxTrackBase class is a base class for components with a track
- *  and one or more thumb buttons, such as FxSlider and FxScrollBar. It
+ *  The TrackBase class is a base class for components with a track
+ *  and one or more thumb buttons, such as Slider and ScrollBar. It
  *  declares two required skin parts: thumb and
  *  track.
- *  The FxTrackBase class also provides the code for
- *  dragging the thumb button, which is shared by the FxSlider and FxScrollBar classes.
+ *  The TrackBase class also provides the code for
+ *  dragging the thumb button, which is shared by the Slider and ScrollBar classes.
  *
- *  @see mx.components.baseClasses.FxSlider
- *  @see mx.components.baseClasses.FxScrollBar
+ *  @see mx.components.baseClasses.Slider
+ *  @see mx.components.baseClasses.ScrollBar
  *
  *  @langversion 3.0
  *  @playerversion Flash 10
  *  @playerversion AIR 1.5
  *  @productversion Flex 4
  */
-public class FxTrackBase extends FxRange
+public class TrackBase extends Range
 {
     include "../../core/Version.as";

@@ -86,7 +86,7 @@
      *  @playerversion AIR 1.5
      *  @productversion Flex 4
      */
-    public function FxTrackBase():void
+    public function TrackBase():void
     {
         super();
     }
@@ -112,7 +112,7 @@
      *  @playerversion AIR 1.5
      *  @productversion Flex 4
      */
-    public var thumb:FxButton;
+    public var thumb:Button;

     [SkinPart(required="true")]

@@ -126,7 +126,7 @@
      *  @playerversion AIR 1.5
      *  @productversion Flex 4
      */
-    public var track:FxButton;
+    public var track:Button;

     //--------------------------------------------------------------------------
     //
@@ -138,7 +138,7 @@

     //--------------------------------------------------------------------------
     //
-    //  Overridden properties: UIComponent, FxRange
+    //  Overridden properties: UIComponent, Range
     //
     //--------------------------------------------------------------------------

@@ -219,7 +219,7 @@
     // value
     //---------------------------------

-    [Bindable(event="valueCommit")]  // Warning: must match the Bindable tag in FxRange
+    [Bindable(event="valueCommit")]  // Warning: must match the Bindable tag in Range

     /**
      *  @private


Clean out testing code, leave png export

--- src/main/as/flump/Flump.as
+++ src/main/as/flump/Flump.as
@@ -1,110 +1,38 @@
+//
+// Flump - Copyright 2012 Three Rings Design
+
 package flump {

-import flash.display.MovieClip;
+import flash.display.Bitmap;
+import flash.display.BitmapData;
+import flash.display.Sprite;
+import flash.filesystem.File;
 import flash.filesystem.FileMode;
-import flash.filesystem.File;
 import flash.filesystem.FileStream;
-import flash.utils.ByteArray;
+import flash.geom.Point;
+import flash.geom.Rectangle;
+
 import com.adobe.images.PNGEncoder;
-import flash.display.BitmapData;
-import flash.display.Bitmap;
-import flash.geom.Rectangle;
-import com.threerings.flashbang.resource.SwfResource;
-import com.threerings.flashbang.resource.ResourceManager;
+
 import com.threerings.util.F;
-import flash.display.LoaderInfo;
-import flash.display.Sprite;
-import flash.events.Event;
-import flash.events.KeyboardEvent;
-import flash.sampler.Sample;
-import flash.sampler.StackFrame;
-import flash.sampler.getSamples;
-import flash.sampler.pauseSampling;
-import flash.sampler.clearSamples;
-import flash.sampler.startSampling;
-import flash.sampler.stopSampling;
-import flash.utils.Timer;
-import flash.events.TimerEvent;
-import flash.ui.Keyboard;

 public class Flump extends Sprite
 {
-    public function Flump ()
-    {
-        _rsrc.registerDefaultResourceTypes();
-        addEventListener(Event.ADDED_TO_STAGE, F.callbackOnce(addedToStage));
-    }
-
-    protected function addedToStage () :void
-    {
-        _rsrc.queueResourceLoad("swf", "pant", { embeddedClass: PANT});
-        _rsrc.queueResourceLoad("swf", "hat", { embeddedClass: HAT});
-        _rsrc.queueResourceLoad("swf", "top", { embeddedClass: TOP});
-        _rsrc.queueResourceLoad("swf", "hed", { embeddedClass: HED});
-        _rsrc.queueResourceLoad("swf", "sho", { embeddedClass: SHO});
-        _rsrc.queueResourceLoad("swf", "base", { embeddedClass: BASE});
-        _rsrc.loadQueuedResources(resourcesLoaded);
-    }
-
-    protected function resourcesLoaded () :void
-    {
-        F.forEach(layers, export);
-        trace("{\n    " + _offsets.join(",\n    ") + "\n}");
-    }
-
-    protected function export (layer :String) :void
-    {
-        var theClass :Class;
-        for each (var resource :String in resources) {
-            theClass= SwfResource.getSwf(_rsrc, resource).getClass(layer + "_class");
-            if (theClass != null) break;
-        }
-        if (theClass == null) { trace("skipping " + layer); return; }
-
-
+    protected function exportToPng (dest :String, toExport :Sprite) :Point {
         const holder :Sprite = new Sprite();
-        const child :Sprite = Sprite(new theClass());
-        holder.addChild(child);
-        const bounds :Rectangle = child.getBounds(holder);
-        if (bounds.width == 0 || bounds.height == 0) { trace("invisible " + layer); return; }
-        if (_renames.hasOwnProperty(layer)) layer = _renames[layer];
-        child.x = -bounds.x;
-        child.y = -bounds.y;
-        _offsets.push(layer + ": [" + bounds.x + ', ' + bounds.y + "]");
+        holder.addChild(toExport);
+        const bounds :Rectangle = toExport.getBounds(holder);
+        toExport.x = -bounds.x;
+        toExport.y = -bounds.y;

         const bd :BitmapData = new BitmapData(bounds.width, bounds.height, true);
         // Clear bitmapdata's default white background with a transparent one
         bd.fillRect(new Rectangle(0, 0, bounds.width, bounds.height), 0);
         bd.draw(holder);
         var fs :FileStream = new FileStream();
-        fs.open(new File("/Users/charlie/dev/flump/" + layer + ".png"), FileMode.WRITE);
+        fs.open(new File(dest), FileMode.WRITE);
         fs.writeBytes(PNGEncoder.encode(bd));
         fs.close();
+        return new Point(bounds.x, bounds.y);
     }
-
-    protected const _offsets :Array = [];
-
-    protected const _rsrc :ResourceManager = new ResourceManager();
-    protected const _renames :Object = {"container_device_a": "device", "container_head_a": "head"};
-
-    protected const layers :Array = ["forearmL", "handL", "head", "neck", "bicepL", "scarfB",
-        "chest", "belly", "skirtL", "skirtM", "skirtR", "thighL", "pelvis", "calfL", "footL",
-        "thighR", "calfR", "footR", "forearmR", "handR", "device", "bicepR", "tails", "hairB",
-        "container_head_a", "container_device_a", "shadow"];
-
-    protected const resources :Array = ["pant", "hat", "top", "hed", "sho", "base"];
-
-    [Embed(source="/../swfresources/avatar/HAT_001.swf", mimeType="application/octet-stream")]
-    protected const HAT :Class;
-    [Embed(source="/../swfresources/avatar/PNT_001.swf", mimeType="application/octet-stream")]
-    protected const PANT :Class;
-    [Embed(source="/../swfresources/avatar/TOP_001.swf", mimeType="application/octet-stream")]
-    protected const TOP :Class;
-    [Embed(source="/../swfresources/avatar/HED_001.swf", mimeType="application/octet-stream")]
-    protected const HED :Class;
-    [Embed(source="/../swfresources/avatar/SHO_001.swf", mimeType="application/octet-stream")]
-    protected const SHO :Class;
-    [Embed(source="/../swfresources/avatar/male_player_base.swf", mimeType="application/octet-stream")]
-    protected const BASE :Class;
-}
-}
+}}


* 设置 AddBGMenu 只在当前图层类型为 BG 时有效

* 设置 AddBGMenu 只在当前图层类型为 BG 时有效

--- ageb/src/ageb/modules/tools/selectToolClasses/menus/AddBGMenu.as
+++ ageb/src/ageb/modules/tools/selectToolClasses/menus/AddBGMenu.as
@@ -2,15 +2,29 @@
 {
 	import flash.events.Event;
 	import age.assets.LayerType;
+	import ageb.utils.FileUtil;

+	/**
+	 * 添加背景菜单
+	 * @author zhanghaocong
+	 *
+	 */
 	public class AddBGMenu extends SelectToolMenuItem
 	{
+		/**
+		 * constructor
+		 *
+		 */
 		public function AddBGMenu()
 		{
 			super();
 			contextMenuItem.caption = "添加背景";
 		}

+		/**
+		 * @inheritDoc
+		 *
+		 */
 		override protected function onSelect(event:Event):void
 		{
 		}
@@ -21,7 +35,7 @@
 		 */
 		override public function onShow():void
 		{
-			contextMenuItem.enabled = lr.info.type == LayerType.OBJECT;
+			contextMenuItem.enabled = lr.info.type == LayerType.BG;
 		}
 	}
 }


FLEX-33131 made rendererDescriptionMap protected

--- frameworks/projects/advancedgrids/src/mx/controls/AdvancedDataGrid.as
+++ frameworks/projects/advancedgrids/src/mx/controls/AdvancedDataGrid.as
@@ -631,10 +631,16 @@
     //--------------------------------------------------------------------------

     /**
-     *  @private
-     *  Maps items to AdvancedDataGridDescription
-     */
-    private var rendererDescriptionMap:Dictionary;
+	 *  Maps renders to row and column spanning info.
+	 *
+     *  @see mx.controls.advancedDataGridClasses.AdvancedDataGridRendererDescription
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 4.11
+     */
+    protected var rendererDescriptionMap:Dictionary;

     /**
      *  @private


Transferred from the Adobe Open Source Subversion Repository

Revision: 153
Author:   proberts@adobe.com
Date:     2008-01-10T20:22:23.867658Z

Log Message:
-----------
Severity: ignore
Description: docs update -- added @productVersion tag to Flex AIR classes' class descriptions.

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/core/Window.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/events/FlexNativeMenuEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/core/FlexHTMLLoader.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/controls/FileSystemEnumerationMode.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/skins/halo/WindowMinimizeButtonSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/controls/FileSystemHistoryButton.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/skins/halo/WindowRestoreButtonSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/skins/halo/WindowMaximizeButtonSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/skins/halo/StatusBarBackgroundSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/controls/FileSystemTree.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/controls/HTML.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/core/IWindow.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/utils/DirectoryEnumeration.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/managers/WindowedSystemManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/controls/FileSystemSizeDisplayMode.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/events/FlexNativeWindowBoundsEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/controls/FileSystemComboBox.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/utils/DirectoryEnumerationMode.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/events/AIREvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/skins/halo/WindowBackground.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/controls/FileSystemList.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/events/FileEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/controls/FileSystemDataGrid.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/skins/halo/WindowCloseButtonSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/skins/halo/ApplicationTitleBarBackgroundSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/core/WindowedApplication.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/controls/FlexNativeMenu.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/managers/NativeDragManagerImpl.as</path>

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1249975 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/airframework/src/mx/events/FlexNativeMenuEvent.as
+++ frameworks/projects/airframework/src/mx/events/FlexNativeMenuEvent.as
@@ -21,6 +21,8 @@
  *  activities in FlexNativeMenu.
  *
  *  @see mx.controls.FlexNativeMenu
+ *
+ *  @productversion Apollo 1.0
  */
 public class FlexNativeMenuEvent extends Event
 {


Transferred from the Adobe Open Source Subversion Repository

Revision: 23243
Author:   cframpto@adobe.com
Date:     2011-12-20T00:59:57.384047Z

Log Message:
-----------
In frameworks, remove Adobe headers from all files except xml/mxml file types.  There are also a few .txt files that are license files that I didn't touch yet.

Modified Paths:
--------------
2361 paths were modified

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1269885 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/mx/src/mx/skins/halo/ProgressIndeterminateSkin.as
+++ frameworks/projects/mx/src/mx/skins/halo/ProgressIndeterminateSkin.as
@@ -1,13 +1,3 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  ADOBE SYSTEMS INCORPORATED
-//  Copyright 2004-2007 Adobe Systems Incorporated
-//  All Rights Reserved.
-//
-//  NOTICE: Adobe permits you to use, modify, and distribute this file
-//  in accordance with the terms of the license agreement accompanying it.
-//
-////////////////////////////////////////////////////////////////////////////////

 package mx.skins.halo
 {


Transferred from the Adobe Open Source Subversion Repository

Revision: 9894
Author:   egreenfi@adobe.com
Date:     2009-09-02T00:35:45.048694Z

Log Message:
-----------
Removed the special case code from FocusSkin for RadioButton and Checkbox skins.
Added a focusSkinExclusions property to Skin to allow components to specify which parts are excluded from the focus ring.

Reviewed by Glenn
QA:  none.
DOC: none.

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/skins/spark/CheckBoxSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/skins/spark/RadioButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/Skin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/skins/spark/FocusSkin.as</path>

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1282643 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/spark/src/spark/components/supportClasses/Skin.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/Skin.as
@@ -68,7 +68,18 @@
 	{
 		super();
 	}
-
+
+	/**
+	 *  items that should be included when rendering the focus ring.
+	 *  Only items of type DisplayObject or GraphicElement should be excluded. Items
+	 *  of other types will be ignored.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 10
+	 *  @playerversion AIR 1.5
+	 *  @productversion Flex 4
+	 */
+	public function get focusSkinExclusions():Array { return null;}
 }

 }


Transferred from the Adobe Open Source Subversion Repository

Revision: 23247
Author:   cframpto@adobe.com
Date:     2011-12-20T19:21:13.134833Z

Log Message:
-----------
Remove ADOBE SYSTEMS license and replace with Apache license in headers - frameworks.  A 2nd pass will be needed to get the files not handled up by the scripts.

Modified Paths:
--------------
4959 paths were modified

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1288522 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/sparkskins/src/mx/skins/spark/ProgressMaskSkin.as
+++ frameworks/projects/sparkskins/src/mx/skins/spark/ProgressMaskSkin.as
@@ -1,11 +1,19 @@
 ////////////////////////////////////////////////////////////////////////////////
 //
-//  ADOBE SYSTEMS INCORPORATED
-//  Copyright 2007 Adobe Systems Incorporated
-//  All Rights Reserved.
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
 //
-//  NOTICE: Adobe permits you to use, modify, and distribute this file
-//  in accordance with the terms of the license agreement accompanying it.
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////


Transferred from the Adobe Open Source Subversion Repository

Revision: 12850
Author:   jimurphy@adobe.com
Date:     2009-12-11T14:57:14.623098Z

Log Message:
-----------
add 6 new DMV projects to the SDK:
automation
automation_air
automation_dmv
automation_flashflexkit
automation_spark
datavisualization

These projects are setup to build in an ant main call.  There are currently several warnings in the datavisualization project that will be cleaned up.  No checkintests exist for these projects as of yet.

I also modified the exisitng projects build files for easier management of the localization targets, bundle and fat-swc. If the projects that I updated:airframework,airspark,framework,playerglobal,rpc,and spark.  All the new projects have been implemented this same way.

QE notes: DMV folks should run through their tests
Doc notes: probably
Bugs: nope
Reviewer:
Tests run: ran the following targets: compile,checkintests,other.locales and doc
Is noteworthy for integration: no

Modified Paths:
--------------
1404 paths were modified

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1290410 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/advancedgrids/src/mx/controls/advancedDataGridClasses/SortInfo.as
+++ frameworks/projects/advancedgrids/src/mx/controls/advancedDataGridClasses/SortInfo.as
@@ -0,0 +1,149 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  ADOBE SYSTEMS INCORPORATED
+//  Copyright 2009 Adobe Systems Incorporated
+//  All Rights Reserved.
+//
+//  NOTICE: Adobe permits you to use, modify, and distribute this file
+//  in accordance with the terms of the license agreement accompanying it.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+package mx.controls.advancedDataGridClasses
+{
+
+/**
+ *  The SortInfo class defines information about the sorting of a column
+ *  of the AdvancedDataGrid control.
+ *  Each column in the AdvancedDataGrid control has an associated
+ *  SortInfo instance.
+ *  The AdvancedDataGridSortItemRenderer class uses the
+ *  information in the SortInfo instance to create the item renderer
+ *  for the sort icon and text field in the column header of each column in
+ *  the AdvancedDataGrid control.
+ *
+ *  @see mx.controls.AdvancedDataGrid
+ *  @see mx.controls.advancedDataGridClasses.AdvancedDataGridSortItemRenderer
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
+ */
+public class SortInfo
+{
+    include "../../core/Version.as";
+
+    //--------------------------------------------------------------------------
+    //
+    //  Class constants
+    //
+    //--------------------------------------------------------------------------
+
+    /**
+     *  Specifies that the sort is only a visual
+     *  indication of the proposed sort.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    public static const PROPOSEDSORT:String = "proposedSort";
+
+    /**
+     *  Specifies that the sort is the actual current sort.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    public static const ACTUALSORT:String   = "actualSort";
+
+    //--------------------------------------------------------------------------
+    //
+    //  Constructor
+    //
+    //--------------------------------------------------------------------------
+
+    /**
+     *  Constructor.
+     *
+     *  @param sequenceNumber The number of this column in the sort order sequence.
+     *
+     *  @param descending true when the column is sorted in descending order.
+     *
+     *  @param status PROPOSEDSORT if the sort is only a visual
+     *  indication of the proposed sort, or ACTUALSORT
+     *  if the sort is the actual current sort.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    public function SortInfo(sequenceNumber:int = -1, descending:Boolean = false,
+                                status:String = ACTUALSORT)
+    {
+        this.sequenceNumber = sequenceNumber;
+        this.descending     = descending;
+        this.status         = status;
+    }
+
+    //--------------------------------------------------------------------------
+    //
+    //  Properties
+    //
+    //--------------------------------------------------------------------------
+
+    //--------------------------------------------------------------------------
+    // sequenceNumber
+    //--------------------------------------------------------------------------
+
+    /**
+     *  The number of this column in the sort order sequence.
+     *  This number is used when sorting by multiple columns.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    public var sequenceNumber:int;
+
+    //--------------------------------------------------------------------------
+    // descending
+    //--------------------------------------------------------------------------
+
+    /**
+     *  Contains true when the column is sorted in descending order,
+     *  and false when the column is sorted in ascending order.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    public var descending:Boolean;
+
+    //--------------------------------------------------------------------------
+    // status
+    //--------------------------------------------------------------------------
+
+    /**
+     *  Contains PROPOSEDSORT if the sort is only a visual
+     *  indication of the proposed sort, or contains ACTUALSORT
+     *  if the sort is the actual current sort.
+     *
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    public var status:String;
+
+} // end class SortInfo
+
+} // end package mx.controls.advancedDataGridClasses


Transferred from the Adobe Open Source Subversion Repository

Revision: 3724
Author:   gruehle@adobe.com
Date:     2008-10-17T21:42:20.548422Z

Log Message:
-----------
Text style changes:

* Default text styles for Gumbo components are temporarily placed on type selectors (as of revision 3528). This checkin changes those selectors to just two: TextGraphicElement and TextView. This makes the default font work correctly for all 5 text-related tags - TextBox, TextGraphic, TextView, FxTextArea, and FxTextInput.

* Since the default text styles are temporarily on type selectors, setting text styles on component tags was not working. This checkin fixes that by explicitly setting the "styleName" property of the labelField (Button) and textView (FxTextBase) skin parts to the component itself. This way, any styles set on the component will take precedence over styles set on the text type selectors.

QE Notes: Text styles can be set on component tags (ie <FxButton fontSize="24" />). This should be tested.
Doc Notes: We should add a release note about changing the default text styles for Gumbo components. This is done on the TextGraphicElement and TextView type selectors.
Bugs: SDK-17159
Reviewer: Deepa

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/baseClasses/FxTextBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxButton.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/wireframe/defaults.css</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/defaults.css</path>

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1282784 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/spark/src/spark/components/supportClasses/SkinnableTextBase.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/SkinnableTextBase.as
@@ -262,6 +262,12 @@

             // Set the initial text value
             textView.text = mx_internal::_text;
+
+            // TODO: Remove this hard-coded styleName assignment
+            // once all global text styles are moved to the global
+            // stylesheet. This is a temporary workaround to support
+            // inline text styles for Buttons and subclasses.
+            textView.styleName = this;
 		}
 	}


Transferred from the Adobe Open Source Subversion Repository

Revision: 18230
Author:   gruehle@adobe.com
Date:     2010-10-19T22:49:21.316189Z

Log Message:
-----------
Make the following skin parts bindable:
 SkinnableContainer.contentGroup
 SkinnableDataContainer.dataGroup
 SkinnableTextBase.textDisplay

QE notes: none
Doc notes: none
Bugs: SDK-25288
Reviewer:  jszeto
Tests run: checkintests
Is noteworthy for integration: no

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/SkinnableContainer.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/SkinnableTextBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/SkinnableDataContainer.as</path>

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1282863 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/spark/src/spark/components/supportClasses/SkinnableTextBase.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/SkinnableTextBase.as
@@ -343,6 +343,7 @@
     //  textDisplay
     //----------------------------------

+	[Bindable]
     [SkinPart(required="false")]

     /**


Revert "FLEX-33537:  Changed the internal setfocus to the textDisplay call to be callLater.  This allows for the skin/child components to be setup before receiving focus."

This reverts commit d5c329722cd60568c53210973024b591b912b486.

--- frameworks/projects/spark/src/spark/components/supportClasses/SkinnableTextBase.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/SkinnableTextBase.as
@@ -1875,8 +1875,7 @@
             }
             else
             {
-                //Calling later so the skin/state can finish setting up before accepting focus on textDisplay.
-                callLater(textDisplay.setFocus);
+                textDisplay.setFocus();
             }
         }
     }


Transferred from the Adobe Open Source Subversion Repository

Revision: 2464
Author:   jimurphy@adobe.com
Date:     2008-07-14T19:50:33.449468Z

Log Message:
-----------
add flex 4 to trunk

Modified Paths:
--------------
134 paths were modified

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1284415 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/spark/src/spark/effects/supportClasses/RemoveActionInstance.as
+++ frameworks/projects/spark/src/spark/effects/supportClasses/RemoveActionInstance.as
@@ -0,0 +1,174 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  ADOBE SYSTEMS INCORPORATED
+//  Copyright 2005-2006 Adobe Systems Incorporated
+//  All Rights Reserved.
+//
+//  NOTICE: Adobe permits you to use, modify, and distribute this file
+//  in accordance with the terms of the license agreement accompanying it.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+package flex.effects.effectClasses
+{
+
+import flash.display.DisplayObject;
+import flash.display.DisplayObjectContainer;
+import flash.events.Event;
+
+import mx.core.mx_internal;
+import mx.effects.effectClasses.ActionEffectInstance;
+
+/**
+ *  The RemoveChildActionInstance class implements the instance class
+ *  for the RemoveChildAction effect.
+ *  Flex creates an instance of this class when it plays a RemoveChildAction
+ *  effect; you do not create one yourself.
+ *
+ *  @see mx.effects.RemoveChildAction
+ */
+public class RemoveActionInstance extends ActionEffectInstance
+{
+    include "../../core/Version.as";
+
+	//--------------------------------------------------------------------------
+	//
+	//  Constructor
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  Constructor.
+	 *
+	 *  @param target The Object to animate with this effect.
+	 */
+	public function RemoveActionInstance(target:Object)
+	{
+		super(target);
+        try {
+            target.parent;
+            hasParent = true;
+        } catch (e:Error) {
+            hasParent = false;
+        }
+    }
+
+    private var hasParent:Boolean;
+
+	//--------------------------------------------------------------------------
+	//
+	//  Variables
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  @private
+	 */
+	private var _startIndex:Number;
+
+	/**
+	 *  @private
+	 */
+	private var _startParent:*;
+
+	//--------------------------------------------------------------------------
+	//
+	//  Overridden methods
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  @private
+	 */
+	override public function initEffect(event:Event):void
+	{
+		super.initEffect(event);
+	}
+
+    private function getContainer(child:*):*
+    {
+        if (hasParent)
+           return child.parent;
+        else
+           return child.elementHost;
+    }
+
+    private function addChild(container:*, child:*):void
+    {
+        if (hasParent)
+           container.addChild(child);
+        else
+           container.addItem(child);
+    }
+
+    private function removeChild(container:*, child:*):void
+    {
+        if (hasParent)
+           container.removeChild(child);
+        else
+           container.removeItem(child);
+    }
+
+    private function addChildAt(container:*, child:*, index:int):void
+    {
+        if (hasParent)
+           container.addChildAt(child, index);
+        else
+           container.addItemAt(child, index);
+    }
+
+    private function getChildIndex(container:*, child:*):int
+    {
+        if (hasParent)
+           return container.getChildIndex(child);
+        else
+           return container.getItemIndex(child);
+    }
+
+
+	/**
+	 *  @private
+	 */
+	override public function play():void
+	{
+		var doRemove:Boolean = true;
+
+		// Dispatch an effectStart event from the target.
+		super.play();
+
+		if (propertyChanges)
+		{
+			doRemove = (getContainer(propertyChanges.start) != null &&
+						getContainer(propertyChanges.end) == null)
+		}
+
+		if (!mx_internal::playReversed)
+		{
+			// Set the style property
+			if (doRemove && target && getContainer(target) != null)
+				removeChild(getContainer(target), target);
+		}
+		else if (_startParent && !isNaN(_startIndex))
+		{
+			addChildAt(_startParent, target, _startIndex);
+		}
+
+		// We're done...
+		finishRepeat();
+	}
+
+	/**
+	 *  @private
+	 */
+	override protected function saveStartValue():*
+	{
+		if (target && getContainer(target) != null)
+		{
+			_startIndex =
+				getChildIndex(getContainer(target), target);
+			_startParent = getContainer(target);
+		}
+	}
+}
+
+}


- clean up: removed temporary method.

- clean up: removed temporary method.

--- src_test/com/percentjuice/utils/timelineWrappers/builder/TimelineWrapperBuilderTest.as
+++ src_test/com/percentjuice/utils/timelineWrappers/builder/TimelineWrapperBuilderTest.as
@@ -100,18 +100,6 @@
 			assertThat(instanceTestWrapper.isPlaying, isTrue());
 			assertThat(instanceTestWrapper.currentLabel, equalTo(playing));
 		}
-
-		[Test]
-		public function f():void
-		{
-			TimelineWrapperBuilder
-			.initialize().setWrappedMC(mcWithoutLabels)
-			.setOnceOnCompleteHandler(new Function())
-			.addAutoPlayFunctionAndBuild()
-			.addPlayLoopedWhenQueueEmpty(5)
-			.addGotoAndPlayUntilNextLabelQueue([4,5,5])
-			.build();
-		}

 		[Test(async)]
 		public function should_destroy_after_complete():void


Transferred from the Adobe Open Source Subversion Repository

Revision: 9215
Author:   jszeto@adobe.com
Date:     2009-08-11T00:30:21.721484Z

Log Message:
-----------
Event Propagation bug fix

http://bugs.adobe.com/jira/browse/SDK-21044 - Spark Components should use event.preventDefault instead of event.stopPropagation

Since keyboard are now cancellable, the Spark components should use event.preventDefault() / event.isDefaultPrevented()  instead of event.stopPropagation. I updated ButtonBar, RadioButton, and DropDownList to use preventDefault(). Also cleaned up Slider and Spinner to always assume the event is cancellable.

QE notes: Add tests with these components inside of scrollable containers
Doc notes: None
Bugs: SDK-21044
Reviewer: Hans
Tests run: Slider, Spinner, RadioButton, ButtonBar, DropDownList
Is noteworthy for integration: No

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/RadioButton.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/DropDownController.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/Slider.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/Spinner.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/ButtonBar.as</path>

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1282024 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/spark/src/spark/components/supportClasses/DropDownController.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/DropDownController.as
@@ -550,15 +550,18 @@
     public function processKeyDown(event:KeyboardEvent):Boolean
     {

+        if (event.isDefaultPrevented())
+            return true;
+
         if (event.ctrlKey && event.keyCode == Keyboard.DOWN)
         {
             openDropDownHelper(true); // Programmatically open
-            event.stopPropagation();
+            event.preventDefault();
         }
         else if (event.ctrlKey && event.keyCode == Keyboard.UP)
         {
             closeDropDown(true);
-            event.stopPropagation();
+            event.preventDefault();
         }
         else if (event.keyCode == Keyboard.ENTER)
         {
@@ -566,7 +569,7 @@
             if (isOpen)
             {
                 closeDropDown(true);
-                event.stopPropagation();
+                event.preventDefault();
             }
         }
         else if (event.keyCode == Keyboard.ESCAPE)
@@ -575,7 +578,7 @@
             if (isOpen)
             {
                 closeDropDown(false);
-                event.stopPropagation();
+                event.preventDefault();
             }
         }
         else


Transferred from the Adobe Open Source Subversion Repository

Revision: 18351
Author:   cframpto@adobe.com
Date:     2010-10-28T19:40:47.134160Z

Log Message:
-----------
Many DataGrid fixes.

DescribeTypeCache.as/describeType
	a string which wasn't a definition would RTE (SDK-28237)

UIFTETestField.as
	explicitWidth/Height always pushed down to FTETextField even if setLayoutBounds set width/height after explcitWidth/Height was set (SDK-27844, SDK-28130)
	alphabetized the properties

GridItemRenderer.as
	should not show dataTip on header (SDK-28212)
	prepare and discard arg names were swapped

DataGrid.as
	if mouse down on a part of the grid where there isn't a row/cell it should be a no-op (SDK-28013)

DefaultGridHeaderRenderer.as
	should show truncation tip if header is truncated (SDK-27259)

TextFieldGridItemRenderInclude.as
	should not show dataTip on header (SDK-28212)

QE notes: setting explicitWidth/Height on the grid IR now does what it should and height/width for text will be reduced by the padding
Doc notes:
Bugs: SDK-28212, SDK-27259, SDK-28237, SDK-27844, SDK-28130
Reviewer: Hans
Tests run: a few cyclones
Is noteworthy for integration:

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/skins/spark/DefaultGridHeaderRenderer.mxml</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/skins/spark/TextFieldGridItemRendererInclude.as</path>
<path kind="dir" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/textLayout/bin</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/mx/core/UIFTETextField.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/gridClasses/GridItemRenderer.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/DataGrid.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/utils/DescribeTypeCache.as</path>

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1287356 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/spark/src/spark/skins/spark/TextFieldGridItemRendererInclude.as
+++ frameworks/projects/spark/src/spark/skins/spark/TextFieldGridItemRendererInclude.as
@@ -460,12 +460,12 @@
         updatePreferredSize();

         // If the effective value of showDataTips has changed for this column, then
-        // set the renderer's tooltTip property to a placeholder.  The real tooltip
+        // set the renderer's toolTip property to a placeholder.  The real tooltip
         // text is computed in the TOOL_TIP_SHOW handler below.

         // TBD(hmuller) - this code should be common with GridItemRenderer

-        const showDataTips:Boolean = column && column.getShowDataTips();
+        const showDataTips:Boolean = rowIndex != -1 && column && column.getShowDataTips();
         const dataTip:String = toolTip;
         if (showDataTips && !dataTip)
             toolTip = "<dataTip>";


Testing auto-waits for actions.

Testing auto-waits for actions.

--- test/flash_tests/TestFoo.as
+++ test/flash_tests/TestFoo.as
@@ -1,11 +1,17 @@
 package {
   import org.windmill.TestCase;
   public class TestFoo extends TestCase {
-    public var order:Array = ['testWaitCondition', 'testWaitConditionTimeout',
+    public var order:Array = ['testClick', 'testClickTimeout', 'testWaitCondition', 'testWaitConditionTimeout',
         'testWaitSleep', 'testAssertDisplayObject', 'testWaitDisplayObject', 'testAssertEqualsString',
         'testAssertEqualsNumber'];

     public function setup():void {
+    }
+    public function testClick():void {
+      controller.click({id: 'howdyButton'});
+    }
+    public function testClickTimeout():void {
+      controller.click({id: 'howdyButton', timeout: 3000});
     }
     public function testWaitCondition():void {
       var now:Date = new Date();


Fix variable and methods names.

Fix variable and methods names.

--- dolly-framework/src/test/actionscript/dolly/CopyingOfCopyableCloneableClassTest.as
+++ dolly-framework/src/test/actionscript/dolly/CopyingOfCopyableCloneableClassTest.as
@@ -30,10 +30,12 @@
 	}

 	[Test]
-	public function findingAllWritableFieldsForType():void {
-		const writableFields:Vector.<Field> = Copier.findCopyableFieldsForType(copyableCloneableClassType);
-		assertNotNull(writableFields);
-		assertEquals(2, writableFields.length);
+	public function findingAllCopyableFieldsForType():void {
+		const copyableFields:Vector.<Field> = Copier.findCopyableFieldsForType(copyableCloneableClassType);
+		assertNotNull(copyableFields);
+		assertEquals(2, copyableFields.length);
+		assertNotNull(copyableFields[0]);
+		assertNotNull(copyableFields[1]);
 	}

 	[Test]


Transferred from the Adobe Open Source Subversion Repository

Revision: 12850
Author:   jimurphy@adobe.com
Date:     2009-12-11T14:57:14.623098Z

Log Message:
-----------
add 6 new DMV projects to the SDK:
automation
automation_air
automation_dmv
automation_flashflexkit
automation_spark
datavisualization

These projects are setup to build in an ant main call.  There are currently several warnings in the datavisualization project that will be cleaned up.  No checkintests exist for these projects as of yet.

I also modified the exisitng projects build files for easier management of the localization targets, bundle and fat-swc. If the projects that I updated:airframework,airspark,framework,playerglobal,rpc,and spark.  All the new projects have been implemented this same way.

QE notes: DMV folks should run through their tests
Doc notes: probably
Bugs: nope
Reviewer:
Tests run: ran the following targets: compile,checkintests,other.locales and doc
Is noteworthy for integration: no

Modified Paths:
--------------
1404 paths were modified

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1290221 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/advancedgrids/src/AdvancedDataGridClasses.as
+++ frameworks/projects/advancedgrids/src/AdvancedDataGridClasses.as
@@ -0,0 +1,60 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  ADOBE SYSTEMS INCORPORATED
+//  Copyright 2009 Adobe Systems Incorporated
+//  All Rights Reserved.
+//
+//  NOTICE: Adobe permits you to use, modify, and distribute this file
+//  in accordance with the terms of the license agreement accompanying it.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+package
+{
+
+/**
+ *  @private
+ *  In some projects, this class is used to link additional classes
+ *  into the SWC beyond those that are found by dependency analysis
+ *  starting from the classes specified in manifest.xml.
+ *  This project has no manifest file (because there are no MXML tags
+ *  corresponding to any classes in it) so all the classes linked into
+ *  the SWC are found by a dependency analysis starting from the classes
+ *  listed here.
+ */
+internal class AdvancedDataGridClasses
+{
+	// Maintain alphabetical order
+	import mx.accessibility.AdvancedDataGridAccImpl; AdvancedDataGridAccImpl;
+	import mx.collections.DefaultSummaryCalculator; DefaultSummaryCalculator;
+	import mx.collections.Grouping; Grouping;
+	import mx.collections.GroupingCollection; GroupingCollection;
+	import mx.collections.GroupingCollection2; GroupingCollection2;
+	import mx.collections.GroupingField; GroupingField;
+	import mx.collections.HierarchicalCollectionView; HierarchicalCollectionView;
+	import mx.collections.HierarchicalCollectionViewCursor; HierarchicalCollectionViewCursor;
+	import mx.collections.HierarchicalData; HierarchicalData;
+	import mx.collections.ISummaryCalculator; ISummaryCalculator;
+	import mx.collections.LeafNodeCursor; LeafNodeCursor;
+	import mx.collections.SummaryField; SummaryField;
+	import mx.collections.SummaryField2; SummaryField2;
+	import mx.collections.SummaryObject; SummaryObject;
+	import mx.collections.SummaryRow; SummaryRow;
+    import mx.controls.AdvancedDataGrid; AdvancedDataGrid;
+    import mx.controls.advancedDataGridClasses.AdvancedDataGridBaseSelectionData; AdvancedDataGridBaseSelectionData;
+    import mx.controls.advancedDataGridClasses.AdvancedDataGridBaseSelectionPending; AdvancedDataGridBaseSelectionPending;
+    import mx.controls.advancedDataGridClasses.AdvancedDataGridColumn; AdvancedDataGridColumn;
+    import mx.controls.advancedDataGridClasses.AdvancedDataGridColumnGroup; AdvancedDataGridColumnGroup;
+	import mx.controls.advancedDataGridClasses.AdvancedDataGridGroupItemRenderer; AdvancedDataGridGroupItemRenderer;
+    import mx.controls.advancedDataGridClasses.AdvancedDataGridHeaderRenderer; AdvancedDataGridHeaderRenderer;
+    import mx.skins.halo.AdvancedDataGridHeaderHorizontalSeparator; AdvancedDataGridHeaderHorizontalSeparator;
+    import mx.controls.advancedDataGridClasses.AdvancedDataGridItemRenderer; AdvancedDataGridItemRenderer;
+	import mx.controls.advancedDataGridClasses.AdvancedDataGridRendererDescription; AdvancedDataGridRendererDescription;
+	import mx.controls.advancedDataGridClasses.AdvancedDataGridRendererProvider; AdvancedDataGridRendererProvider;
+    import mx.controls.advancedDataGridClasses.AdvancedDataGridSortItemRenderer; AdvancedDataGridSortItemRenderer;
+	import mx.controls.advancedDataGridClasses.SortInfo; SortInfo;
+	import mx.printing.PrintAdvancedDataGrid; PrintAdvancedDataGrid;
+	import mx.printing.PrintOLAPDataGrid; PrintOLAPDataGrid;
+}
+
+}


Transferred from the Adobe Open Source Subversion Repository

Revision: 9427
Author:   egeorgie@adobe.com
Date:     2009-08-20T20:04:22.377902Z

Log Message:
-----------
Update the DragManagerImpl.as to support scaled/transformed lists.

QE notes: Add a test for dragging from a scaled List.
Doc notes: None
Bugs: None
Reviewer: Glenn, Jason
Tests run: checkintests, mustella (managers/DragManager)
Is noteworthy for integration: No

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/Group.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/listClasses/ListBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/DragManagerImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/dragClasses/DragProxy.as</path>

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1261468 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/framework/src/mx/managers/DragManagerImpl.as
+++ frameworks/projects/framework/src/mx/managers/DragManagerImpl.as
@@ -13,30 +13,24 @@
 {

 import flash.display.DisplayObject;
-import flash.display.DisplayObjectContainer;
 import flash.events.Event;
 import flash.events.EventDispatcher;
 import flash.events.IEventDispatcher;
-import flash.events.KeyboardEvent;
 import flash.events.MouseEvent;
+import flash.geom.Matrix;
 import flash.geom.Point;
-import flash.system.ApplicationDomain;

 import mx.core.DragSource;
 import mx.core.IFlexDisplayObject;
 import mx.core.IUIComponent;
 import mx.core.UIComponentGlobals;
 import mx.core.mx_internal;
-import mx.effects.EffectInstance;
-import mx.effects.Move;
-import mx.effects.Zoom;
 import mx.events.DragEvent;
 import mx.events.Request;
-import mx.managers.ISystemManager;
 import mx.managers.dragClasses.DragProxy;
-import mx.managers.SystemManager;
 import mx.styles.CSSStyleDeclaration;
 import mx.styles.StyleManager;
+import mx.utils.MatrixUtil;

 use namespace mx_internal;

@@ -311,7 +305,22 @@

 		dragProxy.allowMove = allowMove;

-		var nonNullTarget:Object = mouseEvent.target;
+        // Make sure any scale/rotation from the initiator will be reflected.
+        var concatenatedMatrix:Matrix = MatrixUtil.getConcatenatedMatrix(DisplayObject(dragInitiator));
+        // Zero out the translation part of the matrix, as we're going to
+        // position the dragProxy explicitly further below.
+        concatenatedMatrix.tx = 0;
+        concatenatedMatrix.ty = 0;
+        // Combine with the matrix of the dragImage if it has any.
+        var m:Matrix = dragImage.transform.matrix;
+        if (m)
+        {
+            concatenatedMatrix.concat(dragImage.transform.matrix);
+            dragImage.transform.matrix = concatenatedMatrix;
+        }
+
+        // Find mouse coordinates in global space
+        var nonNullTarget:Object = mouseEvent.target;
 		if (nonNullTarget == null)
 			nonNullTarget = dragInitiator;

@@ -321,16 +330,17 @@
 		var mouseX:Number = point.x;
 		var mouseY:Number = point.y;

-		// Set dragProxy.offset to the mouse offset within the drag proxy.
-		var proxyOrigin:Point = DisplayObject(nonNullTarget).localToGlobal(
-						new Point(mouseEvent.localX, mouseEvent.localY));
-		proxyOrigin = DisplayObject(dragInitiator).globalToLocal(proxyOrigin);
-		dragProxy.xOffset = proxyOrigin.x + xOffset;
-		dragProxy.yOffset = proxyOrigin.y + yOffset;
-
-		// Call onMouseMove to setup initial position of drag proxy and cursor.
-		dragProxy.x = mouseX - dragProxy.xOffset;
-		dragProxy.y = mouseY - dragProxy.yOffset;
+        // Find the proxy origin in global space
+        var proxyOrigin:Point = DisplayObject(dragInitiator).localToGlobal(new Point(-xOffset, -yOffset));
+        proxyOrigin = DisplayObject(sandboxRoot).globalToLocal(proxyOrigin);
+
+        // Set dragProxy.offset to the mouse offset within the drag proxy.
+        dragProxy.xOffset = mouseX - proxyOrigin.x;
+        dragProxy.yOffset = mouseY - proxyOrigin.y;
+
+        // Setup the initial position of the drag proxy.
+        dragProxy.x = proxyOrigin.x;
+        dragProxy.y = proxyOrigin.y;

 		// Remember the starting location of the drag proxy so it can be
 		// "snapped" back if the drop was refused.


Transferred from the Adobe Open Source Subversion Repository

Revision: 17401
Author:   dthakkar@adobe.com
Date:     2010-08-20T03:21:57.711520Z

Log Message:
-----------
Flex integration bug fixes

QE notes: No
Doc notes: No
Bugs: SDK-27420, SDK-26936, SDK-27452
Reviewer: Craig , Masa
Tests run: Checkintests
Is noteworthy for integration: No

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/globalization/supportClasses/GlobalizationBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/formatters/NumberFormatter.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/globalization/supportClasses/CollatorBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/formatters/CurrencyFormatter.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/globalization/StringTools.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/formatters/DateTimeFormatter.as</path>

git-svn-id: 7146a936b37d36e51ea0d66f8acbe0b8281bc7b7@1284907 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/spark/src/spark/globalization/StringTools.as
+++ frameworks/projects/spark/src/spark/globalization/StringTools.as
@@ -144,7 +144,7 @@
         if (g11nWorkingInstance)
             return this.g11nWorkingInstance.actualLocaleIDName;

-        if (!localeStyle)
+        if ((localeStyle === undefined) || (localeStyle === null))
         {
             fallbackLastOperationStatus
                                 = LastOperationStatus.LOCALE_UNDEFINED_ERROR;
@@ -202,7 +202,7 @@
      */
     override mx_internal function createWorkingInstance():void
     {
-        if (!localeStyle)
+        if ((localeStyle === undefined) || (localeStyle === null))
         {
             fallbackLastOperationStatus
                                 = LastOperationStatus.LOCALE_UNDEFINED_ERROR;
@@ -259,7 +259,7 @@
         if (g11nWorkingInstance)
             return g11nWorkingInstance.toLowerCase(s);

-        if (!localeStyle)
+        if ((localeStyle === undefined) || (localeStyle === null))
         {
             fallbackLastOperationStatus
                                 = LastOperationStatus.LOCALE_UNDEFINED_ERROR;
@@ -294,7 +294,7 @@
         if (g11nWorkingInstance)
             return g11nWorkingInstance.toUpperCase(s);

-        if (!localeStyle)
+        if ((localeStyle === undefined) || (localeStyle === null))
         {
             fallbackLastOperationStatus
                                 = LastOperationStatus.LOCALE_UNDEFINED_ERROR;