Transferred from the Adobe Open Source Subversion Repository

Revision: 20482
Author:   dloverin@adobe.com
Date:     2011-02-28T17:16:14.975868Z

Log Message:
-----------
Add properties to control allowing domains for new RSLs.

Add two Boolean properties to the IFlexModuleFactory interface.
•        Add the allowDomainsInNewRSLs property to control applying the domains gathered from allowDomain() calls to new RSLs.

•        Add the allowInsecureDomainsInNewRSLs property to control applying the domains gathered from allowInsecureDomain() calls to new RSLs.

QE notes: None.
Doc notes: None.
Bugs:
Reviewer: Alex
Tests run: cyclone
Is noteworthy for integration: No.

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/airframework/src/mx/managers/WindowedSystemManager.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/modules/compiler/src/java/flex2/tools/PreLink.java</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/managers/SystemManager.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/core/IFlexModuleFactory.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/core/FlexModuleFactory.as</path>

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

--- frameworks/projects/framework/src/mx/core/IFlexModuleFactory.as
+++ frameworks/projects/framework/src/mx/core/IFlexModuleFactory.as
@@ -32,7 +32,7 @@
 {
     import flash.display.LoaderInfo;
     import flash.utils.Dictionary;
-
+
     import mx.core.RSLData;

     //--------------------------------------------------------------------------
@@ -40,6 +40,36 @@
     //  Properties
     //
     //--------------------------------------------------------------------------
+
+    /**
+     *  Controls whether the domains allowed by calls to allowDomain()
+     *  are also allowed by RSLs loaded after the call. Additional RSLs
+     *  may be loaded into this module factory by sub-applications or modules.
+     *
+     *  @default true
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion Flex 4.5
+     */
+    function get allowDomainsInNewRSLs():Boolean;
+    function set allowDomainsInNewRSLs(value:Boolean):void;
+
+    /**
+     *  Controls whether the domains allowed by calls to allowInsecureDomain()
+     *   are also allowed by RSLs loaded after the call. Additional RSLs
+     *  may be added to this module factory by sub-applications or modules.
+     *
+     *  @default true
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion Flex 4.5
+     */
+    function get allowInsecureDomainsInNewRSLs():Boolean;
+    function set allowInsecureDomainsInNewRSLs(value:Boolean):void;

     /**
      *  The RSLs loaded by this SystemManager or FlexModuleFactory before the
@@ -51,8 +81,13 @@
      *
      *  Information about preloadedRSLs is stored in a Dictionary. The key is
      *  the RSL's LoaderInfo. The value is the a Vector of RSLData where the
-     *  first element is the primaray RSL and the remaining elements are
+     *  first element is the primary RSL and the remaining elements are
      *  failover RSLs.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 3
      */
     function get preloadedRSLs():Dictionary;

@@ -61,12 +96,12 @@
     //  Methods
     //
     //--------------------------------------------------------------------------
-
+
     /**
      *  Adds an RSL to the preloadedRSLs list. This method is called by child
      *  module factories when they add load an RSL into this module factory's
      *  application domain.
-     *
+     *
      *
You do not call this method directly. This method is called by child
      *  module factories when they add load an RSL into this module factory's
      *  application domain.

@@ -75,20 +110,42 @@
      *  @param rsl The RSL's configuration information. A Vector of RSLData.
      *  The first element in the array is the primary RSL. The remaining
      *  elements are failover RSLs.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion Flex 4.5
      */
     function addPreloadedRSL(loaderInfo:LoaderInfo, rsl:Vector.<RSLData>):void;
-
-    /**
-     *  Calls the Security.allowDomain() method for the SWF associated with this IFlexModuleFactory
-     *  plus all the SWFs assocatiated with RSLs preloaded by this IFlexModuleFactory.
-     *
+
+    /**
+     *  Calls the Security.allowDomain() method for the SWF
+     *  associated with this IFlexModuleFactory plus all the SWFs associated
+     *  with RSLs preloaded by this IFlexModuleFactory. RSLs loaded after this
+     *  call will, by default, allow the same domains as have been allowed by
+     *  previous calls to this method. This behavior is controlled by the
+     *  allowDomainsInNewRSLs property.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion Flex 4.5
      */
     function allowDomain(... domains):void;

     /**
-     *  Calls the Security.allowInsecureDomain() method for the SWF associated with this IFlexModuleFactory
-     *  plus all the SWFs assocatiated with RSLs preLoaded by this IFlexModuleFactory.
-     *
+     *  Calls the Security.allowInsecureDomain() method for the
+     *  SWF associated with this IFlexModuleFactory
+     *  plus all the SWFs associated with RSLs preloaded by this
+     *  IFlexModuleFactory. RSLs loaded after this call will, by default,
+     *  allow the same domains as have been allowed by
+     *  previous calls to this method. This behavior is controlled by the
+     *  allowInsecureDomainsInNewRSLs property.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion Flex 4.5
      */
     function allowInsecureDomain(... domains):void;

@@ -103,15 +160,15 @@
      *  @return Whatever the function returns, if anything.
      *
      *  @see Function.apply
-	 *
+     *
      *  @langversion 3.0
      *  @playerversion Flash 10
      *  @playerversion AIR 1.5
      *  @productversion Flex 3
      */
     function callInContext(fn:Function, thisArg:Object,
-						   argArray:Array, returns:Boolean = true):*;
-
+                           argArray:Array, returns:Boolean = true):*;
+
     /**
      *  A factory method that requests
      *  an instance of a definition known to the module.
@@ -133,7 +190,7 @@
      *  @productversion Flex 3
      */
     function create(... parameters):Object;
-
+
     /**
      *  Get the implementation for an interface.
      *  Similar to Singleton.getInstance() method, but per-


Transferred from the Adobe Open Source Subversion Repository

Revision: 19989
Author:   klin@adobe.com
Date:     2011-01-27T23:32:03.687643Z

Log Message:
-----------
Revert 19979. Need to look into some breaking effects tests.

QE notes: no
Doc notes: no
Bugs: n/a
Reviewer: n/a
Tests run: checkintests
Is noteworthy for integration: no

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/core/UIComponent.as</path>
<path kind="file" action="D">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/utils/TransformUtil.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/core/SpriteVisualElement.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/flash-integration/src/mx/flash/UIMovieClip.as</path>

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

--- frameworks/projects/spark/src/spark/core/SpriteVisualElement.as
+++ frameworks/projects/spark/src/spark/core/SpriteVisualElement.as
@@ -53,7 +53,6 @@
 import mx.graphics.shaderClasses.SoftLightShader;
 import mx.managers.ILayoutManagerClient;
 import mx.utils.MatrixUtil;
-import mx.utils.TransformUtil;

 import spark.components.ResizeMode;
 import spark.utils.MaskUtil;
@@ -137,12 +136,18 @@

     /**
      *  @private
+     *  Static point for use in transformPointToParent
+     */
+    private static var xformPt:Point;
+
+    /**
+     *  @private
      *  Initializes the implementation and storage of some of the less
      *  frequently used advanced layout features of a component.
      *  Call this function before attempting to use any of the
      *  features implemented by the AdvancedLayoutFeatures object.
      */
-    private function initAdvancedLayoutFeatures():AdvancedLayoutFeatures
+    private function initAdvancedLayoutFeatures():void
     {
         var features:AdvancedLayoutFeatures = new AdvancedLayoutFeatures();

@@ -164,7 +169,6 @@
         _layoutFeatures = features;

         invalidateTransform();
-        return features;
     }

     /**
@@ -2831,43 +2835,102 @@
             _includeInLayout = false;
         }

-        TransformUtil.transformAround(this,
-                                      transformCenter,
-                                      scale,
-                                      rotation,
-                                      translation,
-                                      postLayoutScale,
-                                      postLayoutRotation,
-                                      postLayoutTranslation,
-                                      _layoutFeatures,
-                                      initAdvancedLayoutFeatures);
-
-        if (_layoutFeatures != null)
-        {
+        if (_layoutFeatures == null)
+        {
+            // TODO (chaase): should provide a way to return to having no
+            // layoutFeatures if we call this later with a more trivial
+            // situation
+            var needAdvancedLayout:Boolean =
+                (scale != null && ((!isNaN(scale.x) && scale.x != 1) ||
+                    (!isNaN(scale.y) && scale.y != 1) ||
+                    (!isNaN(scale.z) && scale.z != 1))) ||
+                (rotation != null && ((!isNaN(rotation.x) && rotation.x != 0) ||
+                    (!isNaN(rotation.y) && rotation.y != 0) ||
+                    (!isNaN(rotation.z) && rotation.z != 0))) ||
+                (translation != null && translation.z != 0 && !isNaN(translation.z)) ||
+                postLayoutScale != null ||
+                postLayoutRotation != null ||
+                (postLayoutTranslation != null &&
+                    (postLayoutTranslation.x != translation.x ||
+                        postLayoutTranslation.y != translation.y ||
+                        postLayoutTranslation.z != translation.z));
+            if (needAdvancedLayout)
+                initAdvancedLayoutFeatures();
+        }
+        if (_layoutFeatures)
+        {
+            _layoutFeatures.transformAround(transformCenter, scale, rotation, translation,
+                postLayoutScale, postLayoutRotation, postLayoutTranslation);
             invalidateTransform();

             // Will not invalidate parent if we have set _includeInLayout to false
             // in the beginning of the method
             invalidateParentSizeAndDisplayList();
         }
+        else
+        {
+            if (translation == null && transformCenter != null)
+            {
+                if (xformPt == null)
+                    xformPt = new Point();
+                xformPt.x = transformCenter.x;
+                xformPt.y = transformCenter.y;
+                var xformedPt:Point =
+                    transform.matrix.transformPoint(xformPt);
+            }
+            if (rotation != null && !isNaN(rotation.z))
+                this.rotation = rotation.z;
+            if (scale != null)
+            {
+                scaleX = scale.x;
+                scaleY = scale.y;
+            }
+            if (transformCenter == null)
+            {
+                if (translation != null)
+                {
+                    x = translation.x;
+                    y = translation.y;
+                }
+            }
+            else
+            {
+                if (xformPt == null)
+                    xformPt = new Point();
+                xformPt.x = transformCenter.x;
+                xformPt.y = transformCenter.y;
+                var postXFormPoint:Point =
+                    transform.matrix.transformPoint(xformPt);
+                if (translation != null)
+                {
+                    x += translation.x - postXFormPoint.x;
+                    y += translation.y - postXFormPoint.y;
+                }
+                else
+                {
+                    x += xformedPt.x - postXFormPoint.x;
+                    y += xformedPt.y - postXFormPoint.y;
+                }
+            }
+        }

         if (!invalidateLayout)
             _includeInLayout = oldIncludeInLayout;
     }

     /**
-     *  A utility method to transform a point specified in the local
-     *  coordinates of this object to its location in the object's parent's
-     *  coordinates. The pre-layout and post-layout result will be set on
-     *  the position and postLayoutPosition
-     *  parameters, if they are non-null.
-     *
-     *  @param localPosition The point to be transformed, specified in the
-     *  local coordinates of the object.
-     *  @param position A Vector3D point that will hold the pre-layout
-     *  result. If null, the parameter is ignored.
-     *  @param postLayoutPosition A Vector3D point that will hold the post-layout
-     *  result. If null, the parameter is ignored.
+     * A utility method to transform a point specified in the local
+     * coordinates of this object to its location in the object's parent's
+     * coordinates. The pre-layout and post-layout result will be set on
+     * the position and postLayoutPosition
+     * parameters, if they are non-null.
+     *
+     * @param localPosition The point to be transformed, specified in the
+     * local coordinates of the object.
+     * @param position A Vector3D point that will hold the pre-layout
+     * result. If null, the parameter is ignored.
+     * @param postLayoutPosition A Vector3D point that will hold the post-layout
+     * result. If null, the parameter is ignored.
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
@@ -2878,11 +2941,41 @@
                                            position:Vector3D,
                                            postLayoutPosition:Vector3D):void
     {
-        TransformUtil.transformPointToParent(this,
-                                             localPosition,
-                                             position,
-                                             postLayoutPosition,
-                                             _layoutFeatures);
+        if (_layoutFeatures != null)
+        {
+            _layoutFeatures.transformPointToParent(true, localPosition,
+                position, postLayoutPosition);
+        }
+        else
+        {
+            if (xformPt == null)
+                xformPt = new Point();
+            if (localPosition)
+            {
+                xformPt.x = localPosition.x;
+                xformPt.y = localPosition.y;
+            }
+            else
+            {
+                xformPt.x = 0;
+                xformPt.y = 0;
+            }
+            var tmp:Point = (transform.matrix != null) ?
+                transform.matrix.transformPoint(xformPt) :
+                xformPt;
+            if (position != null)
+            {
+                position.x = tmp.x;
+                position.y = tmp.y;
+                position.z = 0;
+            }
+            if (postLayoutPosition != null)
+            {
+                postLayoutPosition.x = tmp.x;
+                postLayoutPosition.y = tmp.y;
+                postLayoutPosition.z = 0;
+            }
+        }
     }

     /**


Transferred from the Adobe Open Source Subversion Repository

Revision: 3429
Author:   hmuller@adobe.com
Date:     2008-09-30T20:57:43.716432Z

Log Message:
-----------
Removed the flex.layout.ILayout interface.   All references to this interface
have been replaced with flex.layout.LayoutBase.

Added verticalScrollPositionDelta() and horizontalScrollPositionDelta() to
IViewport put provisional implementations in TextView.

Added LayoutBase clipContent property and exposed same in GroupBase
and TextView.  The latter is provisional.

ScrollerSkin measure() and updateDisplayList() now handle a null viewport.
This fixes bugs 17079, 17029.

ScrollerSkin updateDisplayList() now respects the minimum width for
its horizontalScrollBar and the minimum height for verticalScrollBar
(the corresponding HSB height and VSB width are already set to their
preferred sizes).

ScrollSkin's measure now ignores the min size of its viewport, it's
minimum size is only based on its visible scrollbars.  This ensures
that the viewport can get as small as possible.  This change corrects
bug 16840.

QE: Removing ILayout may break some tests
Doc: No
Checkintests: Pass
Reviewer: Evtim
Bugs:
  SDK-17079 - RTE if empty Scroller is created
  SDK-17029 - RTE when Scroller's viewport is set to null
  SDK-16840 - Scroller is unusable if height is set as a percentage height

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/layout/BasicLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/component/DataComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/core/DataGroup.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/core/GroupBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/component/TextView.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/core/Group.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/layout/HorizontalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/layout/VerticalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/layout/LayoutBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/component/ItemsComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/component/Scroller.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/intf/IViewport.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/skin/ScrollerSkin.mxml</path>

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

--- frameworks/projects/spark/src/spark/layouts/HorizontalLayout.as
+++ frameworks/projects/spark/src/spark/layouts/HorizontalLayout.as
@@ -20,7 +20,6 @@

 import flex.core.GroupBase;
 import flex.graphics.IGraphicElement;
-import flex.intf.ILayout;
 import flex.intf.ILayoutItem;

 import mx.containers.utilityClasses.Flex;
@@ -570,44 +569,52 @@
         var itemR:Rectangle;
         var firstIndex:int;
         var lastIndex:int;
-
+
         switch (unit)
         {
+            // Compute the bounds of the leftmost item that's not
+            // completely visible, is non-null, and is includeInLayout.
+            // If the item whose index is firstIndexInView satisfies
+            // all of the requirements, we'll use that, otherwise we'll
+            // scan "leftwards" until we find one.
             case Keyboard.LEFT:
-            {
-                firstIndex = firstIndexInView;
-                if (inView(firstIndex) >= 1)
-                   firstIndex = Math.max(0, firstIndex -1);
-                itemR = itemScan(g, firstIndex, -1);
-                return (itemR) ? Math.max(minDelta, itemR.left - scrollR.left) : 0;
-            }
-
-            case Keyboard.RIGHT:
-            {
-                lastIndex = lastIndexInView;
-                if (inView(lastIndex) >= 1)
-                   lastIndex = Math.min(maxIndex, lastIndex + 1);
-                itemR = itemScan(g, lastIndex, +1);
-                return (itemR) ? Math.min(maxDelta, itemR.right - scrollR.right) : 0;
-            }
-
             case Keyboard.PAGE_UP:
             {
                 firstIndex = firstIndexInView;
                 if (inView(firstIndex) >= 1)
                    firstIndex = Math.max(0, firstIndex -1);
                 itemR = itemScan(g, firstIndex, -1);
-                return (itemR) ? Math.max(minDelta, itemR.right - scrollR.right) : 0;
-            }
-
+            }
+
+            // Compute the bounds of the rightmost item that's not
+            // completely visible, is non-null, and is includeInLayout.
+            // If the item whose index is lastIndexInView satisfies
+            // all of the requirements, we'll use that, otherwise we'll
+            // scan "rightwards" until we find one.
+            case Keyboard.RIGHT:
             case Keyboard.PAGE_DOWN:
             {
                 lastIndex = lastIndexInView;
                 if (inView(lastIndex) >= 1)
                    lastIndex = Math.min(maxIndex, lastIndex + 1);
                 itemR = itemScan(g, lastIndex, +1);
+            }
+        }
+
+
+        switch (unit)
+        {
+            case Keyboard.LEFT:
+                return (itemR) ? Math.max(minDelta, itemR.left - scrollR.left) : 0;
+
+            case Keyboard.RIGHT:
+                return (itemR) ? Math.min(maxDelta, itemR.right - scrollR.right) : 0;
+
+            case Keyboard.PAGE_UP:
+                return (itemR) ? Math.max(minDelta, itemR.right - scrollR.right) : 0;
+
+            case Keyboard.PAGE_DOWN:
                 return (itemR) ? Math.min(maxDelta, itemR.left - scrollR.x) : 0;
-            }

             default:
                 return super.verticalScrollPositionDelta(unit);


Transferred from the Adobe Open Source Subversion Repository

Revision: 5871
Author:   jimurphy@adobe.com
Date:     2009-04-02T15:30:28.054633Z

Log Message:
-----------
rename for AnimateTransform.as - it didn't make it to the spreadsheet because it was a pre-existing spark class

qa: might have to update some tests
doc: probably?
checkintests: pass

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/branches/i11.5/frameworks/projects/flex4/src/spark/effects/AnimateTransformRotate3D.as</path>
<path kind="file" action="M">/flex/sdk/branches/i11.5/frameworks/projects/flex4/src/spark/effects/AnimateTransformMove.as</path>
<path kind="file" action="M">/flex/sdk/branches/i11.5/frameworks/projects/flex4/src/spark/effects/AnimateTransformScale.as</path>
<path kind="file" action="M">/flex/sdk/branches/i11.5/frameworks/projects/flex4/src/spark/effects/AnimateTransformMove3D.as</path>
<path kind="file" action="M">/flex/sdk/branches/i11.5/frameworks/projects/flex4/src/spark/effects/AnimateTransformRotate.as</path>
<path kind="file" action="M">/flex/sdk/branches/i11.5/frameworks/projects/flex4/src/spark/effects/AnimateTransformScale3D.as</path>
<path kind="file" action="D">/flex/sdk/branches/i11.5/frameworks/projects/flex4/src/spark/effects/effectClasses/AnimateTransformInstance.as</path>
<path kind="file" copyfrom-path="/flex/sdk/branches/i11.5/frameworks/projects/flex4/src/spark/effects/effectClasses/AnimateTransformInstance.as" copyfrom-rev="5870" action="A">/flex/sdk/branches/i11.5/frameworks/projects/flex4/src/spark/effects/supportClasses/AnimateTransformInstance.as</path>
<path kind="file" action="M">/flex/sdk/branches/i11.5/frameworks/projects/flex4/src/spark/effects/AnimateTransform.as</path>

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

--- frameworks/projects/spark/src/spark/effects/supportClasses/AnimateTransformInstance.as
+++ frameworks/projects/spark/src/spark/effects/supportClasses/AnimateTransformInstance.as
@@ -9,7 +9,7 @@
 //
 ////////////////////////////////////////////////////////////////////////////////

-package spark.effects.effectClasses
+package spark.effects.supportClasses
 {
 import flash.geom.Vector3D;

@@ -18,7 +18,6 @@
 import spark.effects.AnimationProperty;
 import mx.effects.Effect;
 import spark.effects.Animate;
-import spark.effects.supportClasses.AnimateInstance;
 import spark.effects.easing.IEaser;
 import spark.effects.easing.Linear;


实现圆角矩形

实现圆角矩形

--- source/fairygui/GGraph.as
+++ source/fairygui/GGraph.as
@@ -11,6 +11,7 @@
 		private var _lineSize: Number;
 		private var _lineColor: String;
 		private var _fillColor: String;
+		private var _corner: int;

 		public function GGraph () {
 			super();
@@ -19,6 +20,7 @@
 			this._lineSize = 1;
 			this._lineColor = "#000000"
 			this._fillColor = "#FFFFFF";
+			this._corner = 0;
 		}

 		public function drawRect(lineSize: Number, lineColor: String, fillColor: String): void {
@@ -72,9 +74,25 @@
 					this.alpha = a;
 				}
 			}
-			if (this._type == 1)
-				gr.drawRect(0,0,w,h,fillColor,this._lineSize>0?lineColor:null,this._lineSize);
-			else
+			if (this._type == 1) {
+				if(_corner > 0) {
+					var fixCorner:int = w<h?w:h;
+					if(2*_corner > fixCorner)
+						fixCorner = parseInt(fixCorner/2+"");
+
+					var path:Array =  [
+						["moveTo", fixCorner, 0],
+						["arcTo", w, 0,    w, h, fixCorner],
+						["arcTo", w, h,    0, h, fixCorner],
+						["arcTo", 0, h,    0, 0, fixCorner],
+						["arcTo", 0, 0,    w, 0, fixCorner],
+						["closePath"]
+					];
+
+					gr.drawPath(0, 0, path, {fillStyle: fillColor}, this._lineSize>0?{strokeStyle:lineColor, lineWidth:this._lineSize}:null);
+				} else
+					gr.drawRect(0,0,w,h,fillColor,this._lineSize>0?lineColor:null,this._lineSize);
+			} else
 				gr.drawCircle(w/2,h/2,w/2, fillColor, this._lineSize>0?lineColor:null, this._lineSize);

 			this._displayObject.repaint();
@@ -168,6 +186,11 @@
 						this._fillColor = Utils.toHexColor(c & 0xFFFFFF);
 				}

+				str = xml.getAttribute("corner");
+				if (str) {
+					this._corner = parseInt(str);
+				}
+
 				if (type == "rect")
 					this._type = 1;
 				else


fixed missing error message bug

fixed missing error message bug

--- WeaveAPI/src/JavaScript.as
+++ WeaveAPI/src/JavaScript.as
@@ -262,14 +262,7 @@
 						var func = function() {
 							var params = Array.prototype.slice.call(arguments);
 							var paramsJson = toJson(params);
-							try {
-								var resultJson = flash[JSON_CALL](id, paramsJson);
-							} catch (e) {
-								var e2 = new Error();
-								e2.name = e.name;
-								e2.message = e.message;
-								throw e2;
-							}
+							var resultJson = flash[JSON_CALL](id, paramsJson);
 							return fromJson(resultJson);
 						};
 						func[JSON_FUNCTION_PREFIX] = id;


Change 20080220-maxcarlson-O by maxcarlson@Roboto.local on 2008-02-20 14:33:48 PST
    in /Users/maxcarlson/openlaszlo/trunk
    for http://svn.openlaszlo.org/openlaszlo/trunk

Summary: Send onerror event for failed streaming mp3 loads in swf`

New Features:

Bugs Fixed: LPP-5445 - SoundMC does not send onerror-event

Technical Reviewer: promanik`
QA Reviewer: a.bargull@intensis.de
Doc Reviewer: (pending)

Documentation:

Release Notes:

Details: Send onerror event when load fails.

Tests: See LPP-5445

git-svn-id: d62bde4b5aa582fdf07c8d403e53e0399a7ed285@8129 fa20e4f9-1d0a-0410-b5f3-dc9c16b8b17c

--- WEB-INF/lps/lfc/kernel/swf/LzSoundMC.as
+++ WEB-INF/lps/lfc/kernel/swf/LzSoundMC.as
@@ -1,7 +1,7 @@
 /**
   * LzSoundMC.as
   *
-  * @copyright Copyright 2001-2007 Laszlo Systems, Inc.  All Rights Reserved.
+  * @copyright Copyright 2001-2008 Laszlo Systems, Inc.  All Rights Reserved.
   *            Use is subject to license terms.
   *
   * @topic Kernel
@@ -156,6 +156,7 @@
   */
 SoundMC.prototype.loadDone = function(success) {
     if (success != true) {
+        this.loader.owner.owner.resourceloaderror();
         if ($debug) {
             Debug.warn("failed to load %w", this.reqobj.url);
         }


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@1290267 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/advancedgrids/src/mx/collections/HierarchicalCollectionViewCursor.as
+++ frameworks/projects/advancedgrids/src/mx/collections/HierarchicalCollectionViewCursor.as
@@ -1,11 +1,19 @@
 ////////////////////////////////////////////////////////////////////////////////
 //
-//  ADOBE SYSTEMS INCORPORATED
-//  Copyright 2009 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.
 //
 ////////////////////////////////////////////////////////////////////////////////


FLEX-34119 renaming variables for increased readability.

--- frameworks/projects/advancedgrids/src/mx/collections/HierarchicalCollectionViewCursor.as
+++ frameworks/projects/advancedgrids/src/mx/collections/HierarchicalCollectionViewCursor.as
@@ -142,7 +142,7 @@
      *  @private
      *  A stack of the currentChildBookmark in all parents of the currentNode.
      */
-    private var childIndexStack:Array = [];
+    private var parentBookmarkStack:Array = [];

     /**
      *  @private
@@ -215,7 +215,7 @@
      */
     public function get current():Object
     {
-        if (childIndexStack.length == 0)
+        if (parentBookmarkStack.length == 0)
         {
             return modelCursor.current;
         }
@@ -431,7 +431,7 @@
                 childNodes = collection.getChildren(currentNode);
                 if (childNodes.length > 0)
                 {
-                    childIndexStack.push(currentChildBookmark);
+                    parentBookmarkStack.push(currentChildBookmark);
                     parentNodes.push(currentNode);
                     currentChildBookmark = CursorBookmark.FIRST;
                     childCursor = childNodes.createCursor();
@@ -481,7 +481,7 @@
                 (childCursor.bookmark == CursorBookmark.LAST || childCursor.afterLast))
             {
                 //check for the end of the tree here.
-                if (childIndexStack.length < 1 && !more)
+                if (parentBookmarkStack.length < 1 && !more)
                 {
                     currentNode = null;
                     currentIndex++;
@@ -507,7 +507,7 @@
                         childNodes = null;
                     }
                     //get new current nodes index
-                    currentChildBookmark = childIndexStack.pop();
+                    currentChildBookmark = parentBookmarkStack.pop();
                     //pop the level up one
                     _currentDepth--;
                 }
@@ -515,7 +515,7 @@
             else
             {
                 //if no childnodes then we're probably at the top level
-                if (childIndexStack.length == 0)
+                if (parentBookmarkStack.length == 0)
                 {
                     //check for more top level siblings
                     //and if we're here the depth should be 1
@@ -568,11 +568,11 @@
                             childNodes = null;
                         }
                         //get new current nodes index
-                        currentChildBookmark = childIndexStack.pop();
+                        currentChildBookmark = parentBookmarkStack.pop();
                         //pop the level up one
                         _currentDepth--;

-                        if (childIndexStack.length == 0)
+                        if (parentBookmarkStack.length == 0)
                         {
                             //check for more top level siblings
                             //and if we're here the depth should be 1
@@ -628,7 +628,7 @@
             {
                 //at the first node in this branch so move to parent
                 currentNode = parentNodes.pop();
-                currentChildBookmark = childIndexStack.pop();
+                currentChildBookmark = parentBookmarkStack.pop();
                 var grandParent:Object = parentNodes[parentNodes.length-1];
                 //we could probably assume that a non-null grandparent has descendants
                 //but the analogy only goes so far...
@@ -709,7 +709,7 @@
                 childNodes = collection.getChildren(currentNode);
                 if (childNodes.length > 0)
                 {
-                    childIndexStack.push(currentChildBookmark);
+                    parentBookmarkStack.push(currentChildBookmark);
                     parentNodes.push(currentNode);
                     // if the child collection has only one item then set the
                     // bookmark to first
@@ -1066,7 +1066,7 @@
             more = false;
         currentChildBookmark = CursorBookmark.FIRST;
         parentNodes = [];
-        childIndexStack = [];
+        parentBookmarkStack = [];
         currentIndex = 0;
         _currentDepth = 1;
     }
@@ -1077,7 +1077,7 @@
     public function moveToLast():void
     {
         childNodes = null;
-        childIndexStack = [];
+        parentBookmarkStack = [];
         _currentDepth = 1;
         parentNodes = [];
         var emptyBranch:Boolean = false;
@@ -1109,7 +1109,7 @@
                     break;
                 }
                 parentNodes.push(currentNode);
-                childIndexStack.push(currentChildBookmark);
+                parentBookmarkStack.push(currentChildBookmark);
                 currentNode = childCursor.current;
                 currentChildBookmark = CursorBookmark.LAST;
                 try
@@ -1149,9 +1149,9 @@
     {
         var i:int;
         var n:int;
-        var node:Object;
-        var nodeParent:Object
-        var parent:Object;
+        var changingNode:Object;
+        var parentOfChangingNode:Object;
+        var parentOfCurrentNode:Object;
         var parentStack:Array;
         var parentTable:Dictionary;
         var isBefore:Boolean = false;
@@ -1168,10 +1168,10 @@
             parentTable[parentStack[i]] = i + 1;
         }
         // remember the current parent
-        parent = parentStack[parentStack.length - 1];
-
-        var tmpChildnodes:ICollectionView;
-        var childCursor:IViewCursor;
+        parentOfCurrentNode = parentStack[parentStack.length - 1];
+
+        var changingNodeAndSiblings:ICollectionView;
+        var changingCollectionCursor:IViewCursor;

         if (event.kind == CollectionEventKind.ADD)
         {
@@ -1184,25 +1184,25 @@

             for (i = 0; i < n; i++)
             {
-                node = event.items[i];
+                changingNode = event.items[i];
                 if (isBefore)
                 {
                     // if the added node is before the current
                     // and they share parent's then we have to
                     // adjust the currentChildIndex or
                     // the stack of child indexes.
-                    nodeParent = collection.getParentItem(node);
-                    tmpChildnodes = collection.getChildren(nodeParent);
-                    if (nodeParent == parent)
-                    {
-                        if (tmpChildnodes != null)
+                    parentOfChangingNode = collection.getParentItem(changingNode);
+                    changingNodeAndSiblings = collection.getChildren(parentOfChangingNode);
+                    if (parentOfChangingNode == parentOfCurrentNode)
+                    {
+                        if (changingNodeAndSiblings != null)
                         {
-                            childCursor = tmpChildnodes.createCursor();
+                            changingCollectionCursor = changingNodeAndSiblings.createCursor();
                             try
                             {
-                                childCursor.seek(currentChildBookmark);
-                                childCursor.moveNext();
-                                currentChildBookmark = childCursor.bookmark;
+                                changingCollectionCursor.seek(currentChildBookmark);
+                                changingCollectionCursor.moveNext();
+                                currentChildBookmark = changingCollectionCursor.bookmark;
                             }
                             catch (e:ItemPendingError)
                             {
@@ -1210,21 +1210,21 @@
                             }
                         }
                     }
-                    else if (parentTable[nodeParent] != null)
-                    {
-                        if (tmpChildnodes != null)
+                    else if (parentTable[parentOfChangingNode] != null)
+                    {
+                        if (changingNodeAndSiblings != null)
                         {
-                            childCursor = tmpChildnodes.createCursor();
+                            changingCollectionCursor = changingNodeAndSiblings.createCursor();
                             try
                             {
-                                childCursor.seek(currentChildBookmark);
-                                childCursor.moveNext();
-                                currentChildBookmark = childCursor.bookmark;
+                                changingCollectionCursor.seek(currentChildBookmark);
+                                changingCollectionCursor.moveNext();
+                                currentChildBookmark = changingCollectionCursor.bookmark;
                             }
                             catch (e:ItemPendingError)
                             {
                             }
-                            childIndexStack[parentTable[nodeParent]] = currentChildBookmark;
+                            parentBookmarkStack[parentTable[parentOfChangingNode]] = currentChildBookmark;
                         }
                     }
                 }
@@ -1247,8 +1247,8 @@
                     seek(CursorBookmark.FIRST, newIndex);
                     for (i = 0; i < n; i++)
                     {
-                        node = event.items[i];
-                        delete collection.parentMap[UIDUtil.getUID(node)];
+                        changingNode = event.items[i];
+                        delete collection.parentMap[UIDUtil.getUID(changingNode)];
                     }
                     return;
                 }
@@ -1259,25 +1259,25 @@

             for (i = 0; i < n; i++)
             {
-                node = event.items[i];
+                changingNode = event.items[i];
                 if (isBefore)
                 {
                     // if the removed node is before the current
                     // and they share parent's then we have to
                     // adjust the currentChildIndex or
                     // the stack of child indexes.
-                    nodeParent = collection.getParentItem(node);
-                    tmpChildnodes = collection.getChildren(nodeParent);
-                    if (nodeParent == parent)
-                    {
-                        if (tmpChildnodes != null)
+                    parentOfChangingNode = collection.getParentItem(changingNode);
+                    changingNodeAndSiblings = collection.getChildren(parentOfChangingNode);
+                    if (parentOfChangingNode == parentOfCurrentNode)
+                    {
+                        if (changingNodeAndSiblings != null)
                         {
-                            childCursor = tmpChildnodes.createCursor();
+                            changingCollectionCursor = changingNodeAndSiblings.createCursor();
                             try
                             {
-                                childCursor.seek(currentChildBookmark);
-                                childCursor.movePrevious();
-                                currentChildBookmark = childCursor.bookmark;
+                                changingCollectionCursor.seek(currentChildBookmark);
+                                changingCollectionCursor.movePrevious();
+                                currentChildBookmark = changingCollectionCursor.bookmark;
                             }
                             catch (e:ItemPendingError)
                             {
@@ -1285,25 +1285,25 @@
                             }
                         }
                     }
-                    else if (parentTable[nodeParent] != null)
-                    {
-                        if (tmpChildnodes != null)
+                    else if (parentTable[parentOfChangingNode] != null)
+                    {
+                        if (changingNodeAndSiblings != null)
                         {
-                            childCursor = tmpChildnodes.createCursor();
+                            changingCollectionCursor = changingNodeAndSiblings.createCursor();
                             try
                             {
-                                childCursor.seek(currentChildBookmark);
-                                childCursor.movePrevious();
-                                currentChildBookmark = childCursor.bookmark;
+                                changingCollectionCursor.seek(currentChildBookmark);
+                                changingCollectionCursor.movePrevious();
+                                currentChildBookmark = changingCollectionCursor.bookmark;
                             }
                             catch (e:ItemPendingError)
                             {
                             }
-                            childIndexStack[parentTable[nodeParent]] = currentChildBookmark;
+                            parentBookmarkStack[parentTable[parentOfChangingNode]] = currentChildBookmark;
                         }
                     }
                 }
-                delete collection.parentMap[UIDUtil.getUID(node)];
+                delete collection.parentMap[UIDUtil.getUID(changingNode)];
             }

         }


Transferred from the Adobe Open Source Subversion Repository

Revision: 5101
Author:   gauravj@adobe.com
Date:     2009-02-27T05:22:45.887116Z

Log Message:
-----------
Update action script files with asdoc version tags.

QE Notes: None.
Doc Notes: Please review and update as necessary.
tests: checkintests

Modified Paths:
--------------
663 paths were modified

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

--- frameworks/projects/mx/src/mx/controls/textClasses/TextRange.as
+++ frameworks/projects/mx/src/mx/controls/textClasses/TextRange.as
@@ -31,6 +31,11 @@
  *  @see mx.controls.TextArea
  *  @see mx.controls.TextInput
  *  @see flash.text.TextFormatAlign
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 public class TextRange
 {
@@ -80,6 +85,11 @@
 	 *  and you omit this parameter, specify a negative value, or specify
 	 *  a value past the end of the text, the range ends with the last
 	 *  text character.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public function TextRange(owner:UIComponent,
 							  modifiesSelection:Boolean = false,
@@ -155,6 +165,11 @@

 	/**
 	 *  Storage for the beginIndex property.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	private var _beginIndex:int;

@@ -163,6 +178,11 @@
 	 *  character in the range.
 	 *  If the fifth character in the text is the first character in the
 	 *  range, this property has a value of 4.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public function get beginIndex():int
 	{
@@ -191,6 +211,11 @@
 	 *  Whether the text in the range is in a bulleted list.
 	 *  If only part of the range is in a bulleted list,
 	 *  this value is false.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public function get bullet():Boolean
 	{
@@ -216,6 +241,11 @@
 	 *  You can set this value using any valid color identifier.
 	 *  The property returns the value as a numeric value.
 	 *  If the range has multiple colors, this value is null.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public function get color():Object
 	{
@@ -243,6 +273,11 @@

 	/**
 	 *  Storage for the beginIndex property.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	private var _endIndex:int;

@@ -252,6 +287,11 @@
 	 *  the One-based index of the last character.
 	 *  If the fifth character in the text is the last character in the
 	 *  range, this property has a value of 5.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public function get endIndex():int
 	{
@@ -279,6 +319,11 @@
 	/**
 	 *  Name of the font for text in the range.
 	 *  If the range has multiple fonts, this value is null.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public function get fontFamily():String
 	{
@@ -302,6 +347,11 @@
 	/**
 	 *  Point size of the text in the range.
 	 *  If the range has multiple sizes, this value is 0.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public function get fontSize():int
 	{
@@ -327,6 +377,11 @@
 	 *  or "normal". Setting the property to any other string results
 	 *  in normal style.
 	 *  If the range has multiple styles, this value is null.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public function get fontStyle():String
 	{
@@ -352,6 +407,11 @@
 	 *  or "normal". Setting the property to any other string results
 	 *  in normal weight.
 	 *  If the range has multiple weights, this value is null.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public function get fontWeight():String
 	{
@@ -379,6 +439,11 @@
 	 *  HTML that you specify in using an htmlText property.
 	 *  This property is, therefore, a full HTML representation of the
 	 *  text as it appears in the control.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public function get htmlText():String
 	{
@@ -443,6 +508,11 @@
 	 *  such as Courier New, do not support kerning.
 	 *
 	 *  @default false
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public function get kerning():Boolean
 	{
@@ -469,6 +539,11 @@
 	 *  beyond the normal spacing, while a negative value decreases it.
 	 *
 	 *  @default 0
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public function get letterSpacing():Number
 	{
@@ -498,6 +573,11 @@
 	/**
 	 *  Whether the TextRange modifies the currenly selected text.
 	 *  Set by the constructor.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public function get modifiesSelection():Boolean
 	{
@@ -522,6 +602,11 @@
 	 *  The owner of the text in a RichTextEditor control is the
 	 *  RichTextEditor control, not its TextArea subcontrol.
 	 *  Initially set by the constructor.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public function get owner():UIComponent
 	{
@@ -551,6 +636,11 @@

 	/**
 	 *  Plain-text contents of the range.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public function get text():String
 	{
@@ -583,6 +673,11 @@
 	 *  If the range has multiple alignments, this value is null.
 	 *
 	 *  @see flash.text.TextFormatAlign
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public function get textAlign():String
 	{
@@ -609,6 +704,11 @@
 	 *  in normal text.
 	 *  If the range has multiple decoration settings, this value is
 	 *  null.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public function get textDecoration():String
 	{
@@ -635,6 +735,11 @@
 	 *  is the empty string.
 	 *  If the range includes multiple links, the value
 	 *  is null.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public function get url():String
 	{


Transferred from the Adobe Open Source Subversion Repository

Revision: 9211
Author:   hmuller@adobe.com
Date:     2009-08-10T21:50:20.402032Z

Log Message:
-----------
Corrected two alignment=JUSTIFY problems exposed by this bug:

- VerticalLayout/updateDisplayListVirtual() methods unconditionally
used LinearLayoutVector.minorSize for the contentWidth.  If
horizontalAlign=JUSTIFY then the contentWidth is less than or equal to
the "targetWidth", i.e. the target's width less the left/right
padding.  HorizontalLayout is similar.

- DataGroup/getVirtualElementAt() now initializes the new renderer's
width and height with setLayoutBoundsSize(), before calling validateNow().
If  VerticalLayout.horizontalAlign=JUSTIFY, the (renderer's) width is
the DataGroup's width less padding and height is NaN.   HorizontalLayout
is similar.

The signature for GroupBase/getVirtualElementAt() has changed, two optional
parameters were added:

  public function getVirtualElementAt(index:int, eltWidth:Number=NaN, eltHeight:Number=NaN):IVisualElement

QE Notes: API change should not affect tests.  Mustella datagroup, viewport, and layout tests pass.
Doc Notes: ASDoc revisions in all classes
Bugs: sdk-22017
Reviewer: Evtim

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/supportClasses/Block.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/supportClasses/LinearLayoutVector.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/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/DataGroup.as</path>

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

--- frameworks/projects/spark/src/spark/layouts/HorizontalLayout.as
+++ frameworks/projects/spark/src/spark/layouts/HorizontalLayout.as
@@ -11,10 +11,7 @@

 package spark.layouts
 {
-import flash.display.DisplayObject;
-import flash.events.Event;
-import flash.events.EventDispatcher;
-import flash.geom.Point;
+import flash.events.Event;
 import flash.geom.Rectangle;

 import mx.containers.utilityClasses.Flex;
@@ -22,7 +19,6 @@
 import mx.events.PropertyChangeEvent;

 import spark.components.supportClasses.GroupBase;
-import spark.core.NavigationUnit;
 import spark.core.NavigationUnit;
 import spark.layouts.supportClasses.LayoutBase;
 import spark.layouts.supportClasses.LayoutElementHelper;
@@ -1083,7 +1079,7 @@
             var typicalWidth:Number = typicalElt.getPreferredBoundsWidth();
             var typicalHeight:Number = typicalElt.getPreferredBoundsHeight();
             llv.minorSize = Math.max(llv.minorSize, typicalHeight);
-            llv.defaultMajorSize = typicalWidth;
+            llv.defaultMajorSize = typicalWidth;
         }
         if (layoutTarget)
             llv.length = layoutTarget.numElements;
@@ -1473,7 +1469,10 @@
         if (!variableColumnWidth)
             fixedColumnWidth = columnWidth;  // may query typicalLayoutElement, elt at index=0

-        var contentHeight:Number = llv.minorSize;
+        var justifyHeights:Boolean = verticalAlign == VerticalAlign.JUSTIFY;
+        var eltWidth:Number = NaN;
+        var eltHeight:Number = (justifyHeights) ? Math.max(llv.minMinorSize, targetHeight) : llv.minorSize;
+        var contentHeight:Number = (justifyHeights) ? Math.max(llv.minMinorSize, targetHeight) : llv.minorSize;
         var containerHeight:Number = Math.max(contentHeight, targetHeight);
         var x:Number = llv.start(startIndex);
         var index:int = startIndex;
@@ -1498,7 +1497,7 @@

         // Second pass: if neccessary, fix up y and height values based
         // on the updated contentHeight
-        if (llv.minorSize != contentHeight)
+        if (!justifyHeights && (llv.minorSize != contentHeight))
         {
             contentHeight = llv.minorSize;
             containerHeight = Math.max(contentHeight, targetHeight);
@@ -1521,8 +1520,9 @@

         // Make sure that if the content spans partially over a pixel to the right/bottom,
         // the content size includes the whole pixel.
-        layoutTarget.setContentSize(Math.ceil(llv.end(llv.length - 1) + paddingRight),
-                                    Math.ceil(contentHeight + paddingTop + paddingBottom));
+        var paddedContentWidth:Number = Math.ceil(llv.end(llv.length - 1) + paddingRight);
+        var paddedContentHeight:Number = Math.ceil(contentHeight + paddingTop + paddingBottom);
+        layoutTarget.setContentSize(paddedContentWidth, paddedContentHeight);
     }

     /**


If the last arg (in the Error position) is null, assume it's a null Error and
print "error=null" rather than "null=".

git-svn-id: a1a4b28b82a3276cc491891159dd9963a0a72fae@5763 542714f4-19e9-0310-aa3c-eee0fc999fb1

--- src/as/com/threerings/util/Log.as
+++ src/as/com/threerings/util/Log.as
@@ -255,6 +255,8 @@
                 var lastArg :Object = args.pop();
                 if (lastArg is Error) {
                     err = lastArg as Error; // ok, it's an error, we like those
+                } else if (lastArg == null) { // assume it's an error that's just null
+                    args.push("error", lastArg); // print "error=null"
                 } else {
                     args.push(lastArg, ""); // what? Well, cope by pushing it back with a ""
                 }


Transferred from the Adobe Open Source Subversion Repository

Revision: 1218
Author:   jimurphy@adobe.com
Date:     2008-04-15T16:09:32.174552Z

Log Message:
-----------
merge 3.0.x[1069:1202] -> trunk

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/in/air/air_version.txt</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/ProgressBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/lib/flex-messaging-common.jar</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/graphics/codec/PNGEncoder.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/MultiTopicProducer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/graphics/codec/JPEGEncoder.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/rpc/src/mx/rpc/xml/SchemaTypeRegistry.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/http/mxml/HTTPService.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/graphics/codec/IImageEncoder.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/utils/ObjectProxy.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/MultiTopicConsumer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/xml/IXMLDecoder.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/soap/SOAPFault.as</path>
<path kind="file" action="M">/flex/sdk/trunk/build.xml</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/frameworks/projects/rpc/src/mx/rpc/soap/WebService.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/Channel.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/soap/Operation.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/HaloColors.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/TextArea.as</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/rpc/src/mx/rpc/xml/IXMLEncoder.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/graphics/RoundedRectangle.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/xml/SimpleXMLEncoder.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/rpc/src/mx/rpc/soap/SOAPHeader.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/soap/mxml/WebService.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/wsdl/WSDLBinding.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/soap/mxml/Operation.as</path>

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

--- frameworks/projects/rpc/src/mx/messaging/Channel.as
+++ frameworks/projects/rpc/src/mx/messaging/Channel.as
@@ -366,12 +366,13 @@

     /**
      * @private
-     *
+     */
+    protected var _recordMessageTimes:Boolean = false;
+
+    /**
      * Channel property determines the level of performance information injection - whether
-     * we inject timestamps or not
-     */
-    protected var _recordMessageTimes:Boolean = false;
-
+     * we inject timestamps or not.
+     */
     public function get recordMessageTimes():Boolean
     {
     	return _recordMessageTimes;
@@ -383,12 +384,13 @@

     /**
      * @private
-     *
+     */
+    protected var _recordMessageSizes:Boolean = false;
+
+    /**
      * Channel property determines the level of performance information injection - whether
-     * we inject message sizes or not
-     */
-    protected var _recordMessageSizes:Boolean = false;
-
+     * we inject message sizes or not.
+     */
     public function get recordMessageSizes():Boolean
     {
     	return _recordMessageSizes;


Transferred from the Adobe Open Source Subversion Repository

Revision: 8953
Author:   cframpto@adobe.com
Date:     2009-07-31T15:03:43.191943Z

Log Message:
-----------
Per the signoff, removed the debug code from RET.

SDK-22385.  Programatically giving focus to RET should work correctly now.

SDK-22384.  RET implements IFocusManagerComponent now so you can tab into one.

SDK-22391.  Fixed an autoSize bug in updateDisplayList().

Reworked the textFlow getter which wasn't quite right if there were uncommitted properties.

Change the selection behavior on focusIn to be consistent with Halo with one exception.  The focusIn behavior is still subject to change but this is closer to final than what we have now.

As of this change, on focusIn, if there is no selection, if multiline (ie TextArea and RET), the insertion pt is set to 0,0, and if !multiline (ie TextInput) all the text is selected.  If the text/textFlow is set while the component already has focus the insertion pt is set to 0,0 (for ex. NumericStepper clicking up or down arrow).

The only remaining difference I know of between spark and halo is for TextInput.  halo TextInput on focusIn only remembers the previous selection, whether set programatically or with the mouse, if a selection was programatically set at some point.  spark TextInput will remember a previous selection regardless of how it was set.  The halo behavior doesn't make sense to me but we may end up changing spark to match.

QE notes: since the focusIn change didn't break any TextArea/TextInput tests that means we don't have any
Doc notes:
Bugs: SDK-22385, SDK-22384, SDK-22391
Reviewer: Gordon
Tests run: mustella TextInput TextArea passed NumericStepper 2 failures because insertion pt is now 0,0 rather than end of text
Is noteworthy for integration: RET is now focusable with tab or programatically with setFocus(), insertion point on focusIn changes

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/primitives/RichEditableText.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/SkinnableTextBase.as</path>

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

--- frameworks/projects/spark/src/spark/components/supportClasses/SkinnableTextBase.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/SkinnableTextBase.as
@@ -211,14 +211,6 @@
     //  Variables
     //
     //--------------------------------------------------------------------------
-
-    /**
-     *  @private
-     *  If true, pass calls to drawFocus() up to the parent.
-     *  This is used when a component is part of a composite control
-     *  like NumericStepper or ComboBox;
-     */
-    mx_internal var parentDrawsFocus:Boolean = false;

     //--------------------------------------------------------------------------
     //
@@ -789,7 +781,10 @@
             // Copy proxied values from textDisplayProperties (if set) to
             //textDisplay.
             textDisplayAdded();
-
+
+            // Focus on this, rather than the inner RET component.
+            textDisplay.focusEnabled = false;
+
             // Start listening for various events from the RichEditableText.

             textDisplay.addEventListener(SelectionEvent.SELECTION_CHANGE,
@@ -866,21 +861,6 @@
     override protected function isOurFocus(target:DisplayObject):Boolean
     {
         return target == textDisplay || super.isOurFocus(target);
-    }
-
-    /**
-     *  @private
-     *  Forward the drawFocus to the parent, if requested.
-     */
-    override public function drawFocus(isFocused:Boolean):void
-    {
-        if (parentDrawsFocus)
-        {
-            IFocusManagerComponent(parent).drawFocus(isFocused);
-            return;
-        }
-
-        super.drawFocus(isFocused);
     }

     //--------------------------------------------------------------------------


Fixed suffix determination for message pluralization.

git-svn-id: a1a4b28b82a3276cc491891159dd9963a0a72fae@5359 542714f4-19e9-0310-aa3c-eee0fc999fb1

--- src/as/com/threerings/util/MessageBundle.as
+++ src/as/com/threerings/util/MessageBundle.as
@@ -219,13 +219,17 @@
      */
     protected function getSuffix (args :Array) :String
     {
-        if (args.length > 0) {
-            var count :int = int(args[0]);
-            switch (args[0]) {
-                case NaN: break; // Fall out
-                case 0: return ".0";
-                case 1: return ".1";
-                default: return ".n";
+        if (args.length > 0 && args[0] != null) {
+            try {
+                var count :int = (args[0] is int) ? int(args[0]) :
+                    StringUtil.parseInteger(String(args[0]));
+                switch (count) {
+                    case 0: return ".0";
+                    case 1: return ".1";
+                    default: return ".n";
+                }
+            } catch (err :ArgumentError) {
+                // fall out
             }
         }
         return "";


fixed compile error

fixed compile error

--- WeaveUISpark/src/weave/visualization/plotters/GeometryRelationPlotter.as
+++ WeaveUISpark/src/weave/visualization/plotters/GeometryRelationPlotter.as
@@ -1,7 +1,5 @@
 package weave.visualization.plotters
 {
-	import flash.display.Graphics;
-	import flash.display.Shape;
 	import flash.geom.Point;
 	import flash.text.TextFormat;
 	import flash.utils.Dictionary;
@@ -10,10 +8,8 @@
 	import weave.api.data.ColumnMetadata;
 	import weave.api.data.DataTypes;
 	import weave.api.data.IAttributeColumn;
-	import weave.api.data.IKeySet;
 	import weave.api.data.IProjector;
 	import weave.api.data.IQualifiedKey;
-	import weave.api.data.ISimpleGeometry;
 	import weave.api.detectLinkableObjectChange;
 	import weave.api.linkSessionState;
 	import weave.api.newDisposableChild;
@@ -21,19 +17,14 @@
 	import weave.api.primitives.IBounds2D;
 	import weave.api.registerLinkableChild;
 	import weave.api.ui.IPlotTask;
-	import weave.api.ui.IPlotterWithGeometries;
 	import weave.core.LinkableBoolean;
 	import weave.core.LinkableNumber;
 	import weave.core.LinkableString;
 	import weave.data.AttributeColumns.DynamicColumn;
 	import weave.data.AttributeColumns.FilteredColumn;
 	import weave.data.AttributeColumns.ReprojectedGeometryColumn;
-	import weave.data.QKeyManager;
 	import weave.primitives.GeneralizedGeometry;
 	import weave.utils.BitmapText;
-	import weave.utils.ColumnUtils;
-	import weave.utils.DrawUtils;
-	import weave.visualization.layers.PlotTask;

 	// Refer to Feature #924 for detail description
 	public class GeometryRelationPlotter extends AbstractPlotter
@@ -162,22 +153,15 @@
 			}
 		}

-		/**
-		 * The data bounds for a glyph has width and height equal to zero.
-		 * This function returns a Bounds2D object set to the data bounds associated with the given record key.
-		 * @param key The key of a data record.
-		 * @param outputDataBounds A Bounds2D object to store the result in.
-		 */
-		override public function getDataBoundsFromRecordKey(recordKey:IQualifiedKey):Array
+		override public function getDataBoundsFromRecordKey(recordKey:IQualifiedKey, output:Array):void
 		{
 			getCoordsFromRecordKey(recordKey, tempGeometryPoint);
-			var Bounds:IBounds2D = getReusableBounds();
-			Bounds.setCenteredRectangle(tempGeometryPoint.x, tempGeometryPoint.y, 0, 0);
+			var bounds:IBounds2D = initBoundsArray(output);
+			bounds.setCenteredRectangle(tempGeometryPoint.x, tempGeometryPoint.y, 0, 0);
 			if (isNaN(tempGeometryPoint.x))
-				Bounds.setXRange(-Infinity, Infinity);
+				bounds.setXRange(-Infinity, Infinity);
 			if (isNaN(tempSourcePoint.y))
-				Bounds.setYRange(-Infinity, Infinity);
-			return [Bounds];
+				bounds.setYRange(-Infinity, Infinity);
 		}

 		override public function drawPlotAsyncIteration(task:IPlotTask):Number


Fixes SoundTransform

Fixes SoundTransform

--- src/flash/media/SoundTransform.as
+++ src/flash/media/SoundTransform.as
@@ -18,7 +18,10 @@

 [native(cls='SoundTransformClass')]
 public final class SoundTransform {
-  public function SoundTransform(vol: Number = 1, panning: Number = 0) {}
+  public function SoundTransform(vol: Number = 1, panning: Number = 0) {
+    this.volume = vol;
+    this.pan = panning;
+  }
   public native function get volume(): Number;
   public native function set volume(volume: Number): void;
   public native function get leftToLeft(): Number;


Disable unneeded logging.

Disable unneeded logging.

--- OSMF/org/osmf/net/httpstreaming/flv/FLVParser.as
+++ OSMF/org/osmf/net/httpstreaming/flv/FLVParser.as
@@ -184,7 +184,7 @@
 				input.readBytes(savedBytes, savedBytes.length);
 			}

-			trace("savedBytes.length = " + savedBytes.length);
+			//trace("savedBytes.length = " + savedBytes.length);

 		} // parse


* 修复了 ObjectInfoEditable 中侦听设置不正确的错误

* 修复了 ObjectInfoEditable 中侦听设置不正确的错误

--- ageb/src/ageb/modules/ae/ObjectInfoEditable.as
+++ ageb/src/ageb/modules/ae/ObjectInfoEditable.as
@@ -121,6 +121,68 @@
 			}
 		}

+		/**
+		 * @inheritDoc
+		 *
+		 */
+		override public function set actionName(value:String):void
+		{
+			if (actionInfoEditable)
+			{
+				actionInfoEditable.onFPSChange.remove(onFPSChange);
+				actionInfoEditable.onNumFramesChange.remove(onNumFramesChange);
+				actionInfoEditable.onLayersChange.remove(onActionNameChange.dispatch);
+			}
+			super.actionName = value;
+
+			if (actionInfoEditable)
+			{
+				actionInfoEditable.onFPSChange.add(onFPSChange);
+				actionInfoEditable.onNumFramesChange.add(onNumFramesChange);
+				actionInfoEditable.onLayersChange.add(onActionNameChange.dispatch);
+			}
+		}
+
+		/**
+		 * @private
+		 *
+		 */
+		protected function get actionInfoEditable():ActionInfoEditable
+		{
+			return actionInfo as ActionInfoEditable;
+		}
+
+		/**
+		 * @inheritDoc
+		 *
+		 */
+		override public function set avatarID(value:String):void
+		{
+			if (avatarInfoEditable)
+			{
+				avatarInfoEditable.onSizeChange.remove(super.validateNow);
+				avatarInfoEditable.onSizeChange.remove(onAvatarIDChange.dispatch);
+			}
+			// 设置前同步加载 avatar 信息
+			SyncInfoLoader.loadAvatar(value);
+			super.avatarID = value;
+
+			if (avatarInfoEditable)
+			{
+				avatarInfoEditable.onSizeChange.add(super.validateNow);
+				avatarInfoEditable.onSizeChange.add(onAvatarIDChange.dispatch);
+			}
+		}
+
+		/**
+		 * @private
+		 *
+		 */
+		protected function get avatarInfoEditable():AvatarInfoEditable
+		{
+			return avatarInfo as AvatarInfoEditable;
+		}
+
 		private var _isSelected:Boolean;

 		/**
@@ -190,66 +252,6 @@
 		public function clone():ICloneable
 		{
 			return new ObjectInfoEditable(JSON.parse(JSON.stringify(this)));
-		}
-
-		/**
-		 * @inheritDoc
-		 *
-		 */
-		override public function validateNow():void
-		{
-			var avatar:AvatarInfoEditable, action:ActionInfoEditable;
-
-			try
-			{
-				avatar = avatarInfo as AvatarInfoEditable;
-				action = actionInfo as ActionInfoEditable;
-			}
-			catch (error:Error)
-			{
-				// ignored
-			}
-
-			// 删除侦听
-			if (avatar)
-			{
-				avatar.onSizeChange.remove(onAvatarIDChange.dispatch);
-				avatar.onSizeChange.remove(super.validateNow);
-			}
-
-			if (action)
-			{
-				action.onFPSChange.remove(onFPSChange);
-				action.onNumFramesChange.remove(onNumFramesChange);
-				action.onLayersChange.remove(onActionNameChange.dispatch);
-			}
-			// 验证前使用同步的方式把 avatar 元数据载进来
-			// 如果有任何错误，将弹出 Alert
-			SyncInfoLoader.loadAvatar(avatarID);
-			super.validateNow();
-
-			// 添加侦听
-			try
-			{
-				avatar = avatarInfo as AvatarInfoEditable
-			}
-			catch (error:Error)
-			{
-				return;
-			}
-
-			if (avatar)
-			{
-				avatar.onSizeChange.add(super.validateNow);
-				avatar.onSizeChange.add(onAvatarIDChange.dispatch);
-			}
-
-			if (action)
-			{
-				action.onFPSChange.add(onFPSChange);
-				action.onNumFramesChange.add(onNumFramesChange);
-				action.onLayersChange.add(onActionNameChange.dispatch);
-			}
 		}

 		/**


trace(): better detection of window.console() so that there isn't a runtime error in a Node.js release build

--- frameworks/projects/Core/src/main/flex/org/apache/flex/utils/Language.as
+++ frameworks/projects/Core/src/main/flex/org/apache/flex/utils/Language.as
@@ -308,10 +308,9 @@

 			if (theConsole === undefined)
 			{
-            	var windowConsole:* = window.console;
-				if (windowConsole !== undefined)
-				{
-					theConsole = windowConsole;
+				if(typeof window !== "undefined")
+				{
+					theConsole = window.console;
 				}
 			}


Transferred from the Adobe Open Source Subversion Repository

Revision: 13038
Author:   hneelu@adobe.com
Date:     2009-12-17T09:45:13.816497Z

Log Message:
-----------
Reverting P4 changes made for automation project.

Modified Paths:
--------------
228 paths were modified

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

--- frameworks/projects/automation/src/mx/automation/codec/TabObjectCodec.as
+++ frameworks/projects/automation/src/mx/automation/codec/TabObjectCodec.as
@@ -99,7 +99,8 @@
 				// we need to replace the above code to replace the getAutomationChildAt
 				// and numAutomationChildren with getAutomationChildren to avoid the
 				// multiple calcuation of the children.
-				var childList:Array = aoc.getAutomationChildren();
+				//var childList:Array = aoc.getAutomationChildren();
+				var childList:Array =  Automation.automationManager2.getAutomationChildrenArray(aoc);
 				if(childList)
 				{
 					var n:int  = childList.length;


Transferred from the Adobe Open Source Subversion Repository

Revision: 5101
Author:   gauravj@adobe.com
Date:     2009-02-27T05:22:45.887116Z

Log Message:
-----------
Update action script files with asdoc version tags.

QE Notes: None.
Doc Notes: Please review and update as necessary.
tests: checkintests

Modified Paths:
--------------
663 paths were modified

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

--- frameworks/projects/mx/src/mx/styles/metadata/SelectedFillColorsStyle.as
+++ frameworks/projects/mx/src/mx/styles/metadata/SelectedFillColorsStyle.as
@@ -15,5 +15,10 @@
  *  Pass the same color for both values for "flat" looking control.
  *  The default value is undefined, which means the colors
  *  are derived from themeColor.
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 [Style(name="selectedFillColors", type="Array", arrayType="uint", format="Color", inherit="no")]


Fixed super.updateBuffer() call.

Fixed super.updateBuffer() call.

--- net/flashpunk/graphics/Text.as
+++ net/flashpunk/graphics/Text.as
@@ -54,7 +54,7 @@
 			_field.height = _height = _field.textHeight + 4;
 			_source.fillRect(_sourceRect, 0);
 			_source.draw(_field);
-			super.updateBuffer();
+			super.updateBuffer(clearBefore);
 		}

 		/** @private Centers the Text's originX/Y to its center. */


Transferred from the Adobe Open Source Subversion Repository

Revision: 5101
Author:   gauravj@adobe.com
Date:     2009-02-27T05:22:45.887116Z

Log Message:
-----------
Update action script files with asdoc version tags.

QE Notes: None.
Doc Notes: Please review and update as necessary.
tests: checkintests

Modified Paths:
--------------
663 paths were modified

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

--- frameworks/projects/framework/src/mx/effects/Rotate.as
+++ frameworks/projects/framework/src/mx/effects/Rotate.as
@@ -42,6 +42,11 @@
  *  @see mx.effects.effectClasses.RotateInstance
  *
  *  @includeExample examples/RotateEffectExample.mxml
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 public class Rotate extends TweenEffect
 {
@@ -68,6 +73,11 @@
 	 *  Constructor.
 	 *
 	 *  @param target The Object to animate with this effect.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public function Rotate(target:Object = null)
 	{
@@ -95,6 +105,11 @@
 	 *  Valid values range from 0 to 360.
 	 *
 	 *  @default 0
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public var angleFrom:Number = 0;

@@ -117,6 +132,11 @@
 	 *  set this value to a large positive or small negative number.</p>
 	 *
 	 *  @default 360
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public var angleTo:Number = 360;

@@ -132,6 +152,11 @@
 	 *  The valid values are between 0 and the width of the target.
 	 *
 	 *  @default 0
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public var originX:Number;

@@ -147,6 +172,11 @@
 	 *  The valid values are between 0 and the height of the target.
 	 *
 	 *  @default 0
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public var originY:Number;

@@ -160,6 +190,11 @@
 	 *  Determines whether the effect should hide the focus ring when starting the
 	 *  effect. The target itself is responsible for the actual hiding of the focus ring.
 	 *  @default true
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	override public function set hideFocusRing(value:Boolean):void
 	{