Transferred from the Adobe Open Source Subversion Repository

Revision: 19328
Author:   mhorn@adobe.com
Date:     2010-12-13T20:45:00.405533Z

Log Message:
-----------
ASDoc updates

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/ButtonSkinBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/MobileSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/ActionBarSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/TextInputSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/NavigationAngledButtonSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/ActionButtonSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/VScrollBarSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/VScrollBarThumbSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/TextSkinBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/ButtonSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/TabbedViewNavigatorApplicationSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/HSliderDataTip.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/TextAreaSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/HSliderTrackSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/ActionBarButtonSkinBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/SelectableButtonSkinBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/CheckBoxSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/TabbedViewNavigatorSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/HSliderSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/HSliderThumbSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/RadioButtonSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/HScrollBarSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/HScrollBarThumbSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/NavigationButtonSkin.as</path>

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

--- frameworks/projects/mobiletheme/src/spark/skins/mobile/HScrollBarThumbSkin.as
+++ frameworks/projects/mobiletheme/src/spark/skins/mobile/HScrollBarThumbSkin.as
@@ -24,127 +24,135 @@

 public class HScrollBarThumbSkin extends MobileSkin
 {
-
-	//--------------------------------------------------------------------------
-	//
-	//  Constructor
-	//
-	//--------------------------------------------------------------------------
+
+    //--------------------------------------------------------------------------
+    //
+    //  Constructor
+    //
+    //--------------------------------------------------------------------------
+    /**
+     *  Constructor.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 2.5
+     *  @productversion Flex 4.5
+     */
     public function HScrollBarThumbSkin()
     {
         super();
-		useChromeColor = true;
-
-		// Depending on density set asset and visible thumb height
-		switch (authorDensity)
-		{
-			case DeviceDensity.PPI_240:
-			{
-				thumbClass = spark.skins.mobile240.assets.HScrollThumb;
-				thumbHeight = 6;
-				break;
-			}
-			default:
-			{
-				thumbClass = spark.skins.mobile160.assets.HScrollThumb;
-				thumbHeight = 4;
-				break;
-			}
-		}
+        useChromeColor = true;
+
+        // Depending on density set asset and visible thumb height
+        switch (authorDensity)
+        {
+            case DeviceDensity.PPI_240:
+            {
+                thumbClass = spark.skins.mobile240.assets.HScrollThumb;
+                thumbHeight = 6;
+                break;
+            }
+            default:
+            {
+                thumbClass = spark.skins.mobile160.assets.HScrollThumb;
+                thumbHeight = 4;
+                break;
+            }
+        }
     }

-	//--------------------------------------------------------------------------
-	//
-	//  Properties
-	//
-	//--------------------------------------------------------------------------
-	/**
-	 * @copy spark.skins.spark.ApplicationSkin#hostComponent
-	 */
+    //--------------------------------------------------------------------------
+    //
+    //  Properties
+    //
+    //--------------------------------------------------------------------------
+    /**
+     * @copy spark.skins.spark.ApplicationSkin#hostComponent
+     */
     public var hostComponent:Button;
-
-
-	//--------------------------------------------------------------------------
-	//
-	//  Variables
-	//
-	//--------------------------------------------------------------------------
-	/**
-	 *  Specifies the FXG class to use for the thumb
-	 *
-	 *  @langversion 3.0
-	 *  @playerversion Flash 10
-	 *  @playerversion AIR 2.5
-	 *  @productversion Flex 4.5
-	 */
-	public var thumbClass:Class;
-
-	/**
-	 *  Specifies the DisplayObject to use for the thumb
-	 *
-	 *  @langversion 3.0
-	 *  @playerversion Flash 10
-	 *  @playerversion AIR 2.5
-	 *  @productversion Flex 4.5
-	 */
-	public var thumbSkin:DisplayObject;
+
+
+    //--------------------------------------------------------------------------
+    //
+    //  Variables
+    //
+    //--------------------------------------------------------------------------
+    /**
+     *  Specifies the FXG class to use for the thumb.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 2.5
+     *  @productversion Flex 4.5
+     */
+    public var thumbClass:Class;
+
+    /**
+     *  Specifies the DisplayObject to use for the thumb.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 2.5
+     *  @productversion Flex 4.5
+     */
+    public var thumbSkin:DisplayObject;

-
-	/**
-	 *  Height of the visible thumb area
-	 *
-	 *  @langversion 3.0
-	 *  @playerversion Flash 10
-	 *  @playerversion AIR 2.5
-	 *  @productversion Flex 4.5
-	 */
-	protected var thumbHeight:int;
-
-
-	//--------------------------------------------------------------------------
-	//
-	//  Overridden methods
-	//
-	//--------------------------------------------------------------------------
-	/**
-	 *  @protected
-	 */
-	override protected function createChildren():void
-	{
-		if (!thumbSkin)
-		{
-			thumbSkin = new thumbClass();
-			addChild(thumbSkin);
-		}
-	}
-
-	/**
-	 *  @protected
-	 */
-	override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void
-	{
-		super.updateDisplayList(unscaledWidth, unscaledHeight);
-		setElementSize(thumbSkin, unscaledWidth, unscaledHeight);
-	}
+
+    /**
+     *  Height of the visible thumb area.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 2.5
+     *  @productversion Flex 4.5
+     */
+    protected var thumbHeight:int;
+
+
+    //--------------------------------------------------------------------------
+    //
+    //  Overridden methods
+    //
+    //--------------------------------------------------------------------------
+    /**
+     *  @private
+     */
+    override protected function createChildren():void
+    {
+        if (!thumbSkin)
+        {
+            thumbSkin = new thumbClass();
+            addChild(thumbSkin);
+        }
+    }
+
+    /**
+     *  @private
+     */
+    override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void
+    {
+        super.updateDisplayList(unscaledWidth, unscaledHeight);
+        setElementSize(thumbSkin, unscaledWidth, unscaledHeight);
+    }

-	/**
-	 *  @protected
-	 */
-	override protected function beginChromeColorFill(chromeColorGraphics:Graphics):void
-	{
-		var chromeColor:uint = getChromeColor();
-		chromeColorGraphics.beginFill(chromeColor, 1);
-	}
-
-	/**
-	 *  @protected
-	 */
+    /**
+     *  @private
+     */
+    override protected function beginChromeColorFill(chromeColorGraphics:Graphics):void
+    {
+        var chromeColor:uint = getChromeColor();
+        chromeColorGraphics.beginFill(chromeColor, 1);
+    }
+
+    /**
+     *  @private
+     */
     override protected function drawChromeColor(chromeColorGraphics:Graphics, unscaledWidth:Number, unscaledHeight:Number):void
     {
-		chromeColorGraphics.drawRoundRect(0, 0,
-									      unscaledWidth, thumbHeight,
-										  thumbHeight, thumbHeight);
-	}
+        chromeColorGraphics.drawRoundRect(0, 0,
+                                          unscaledWidth, thumbHeight,
+                                          thumbHeight, thumbHeight);
+    }

 }
 }


Transferred from the Adobe Open Source Subversion Repository

Revision: 16665
Author:   rfrishbe@adobe.com
Date:     2010-06-24T22:40:15.397962Z

Log Message:
-----------
Initial checkin for touch-enabled Lists.  This has not been code reviewed or spec-approved.  There will be lots of changes that will occur with this, but this will allow people to easily create touch-enabled Lists

QE notes: None
Doc notes: None
Bugs: -
Reviewer: None - this will get reviewed later
Tests run: checkintests, full mustella run (some tests failed and were off by a few pixels)
Is noteworthy for integration: No

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/defaults.css</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/List.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/defaults.css</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/MobileThemeClasses.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/ScrollerLayout.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/TouchScrollingEasing.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/VScrollBarThumbSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/GroupBase.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/events/TouchScrollEvent.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/core/UIComponent.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/RichEditableText.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/Scroller.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/HScrollBarTrackSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/TrackBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/core/IViewport.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/ButtonBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/core/ScrollPolicy.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/HScrollBarThumbSkin.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/HScrollBarSkin.as</path>

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

--- frameworks/projects/mobiletheme/src/spark/skins/mobile/HScrollBarThumbSkin.as
+++ frameworks/projects/mobiletheme/src/spark/skins/mobile/HScrollBarThumbSkin.as
@@ -0,0 +1,44 @@
+package spark.skins.mobile
+{
+
+import flash.display.Graphics;
+
+import spark.components.Button;
+
+public class HScrollBarThumbSkin extends SliderSkin {
+
+    public function HScrollBarThumbSkin()
+    {
+        super();
+    }
+
+    public var hostComponent:Button;
+
+    override public function getExplicitOrMeasuredWidth():Number
+    {
+        return 8;
+    }
+
+    override public function getExplicitOrMeasuredHeight():Number
+    {
+        return 8;
+    }
+
+    override protected function measure():void
+    {
+        hostComponent.measuredWidth = 8;
+        hostComponent.measuredHeight = 8;
+    }
+
+    override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void
+    {
+        var g:Graphics = graphics;
+
+        g.clear();
+        g.beginFill(0, 0.25);
+        g.drawRoundRect(0, 0, unscaledWidth, unscaledHeight, 8, 8);
+        g.endFill();
+    }
+
+}
+}


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

--- frameworks/projects/spark/src/spark/components/supportClasses/DisplayLayer.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/DisplayLayer.as
@@ -1,3 +1,13 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  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 spark.components.supportClasses
 {


Applied the UI-element child sorting fix recursively.

--- Bin/Data/Scripts/Editor/EditorUIElement.as
+++ Bin/Data/Scripts/Editor/EditorUIElement.as
@@ -57,7 +57,7 @@
         }
         // Use the predefined UI style if set, otherwise use editor's own UI style
         element.style = uiElementDefaultStyle !is null ? uiElementDefaultStyle : uiStyle;
-        // Does not allow UI subsystem to reorder children while editing the element in the editor
+        // Do not allow UI subsystem to reorder children while editing the element in the editor
         element.sortChildren = false;

         // Create an undo action for the create
@@ -70,6 +70,15 @@
     return true;
 }

+void ResetSortChildren(UIElement@ element)
+{
+    element.sortChildren = false;
+
+    // Perform the action recursively for child elements
+    for (uint i = 0; i < element.numChildren; ++i)
+        ResetSortChildren(element.children[i]);
+}
+
 void OpenUIElement(const String&in fileName)
 {
     if (fileName.empty)
@@ -110,8 +119,8 @@
         element.vars[FILENAME_VAR] = fileName;
         element.vars[MODIFIED_VAR] = false;

-        // Does not allow UI subsystem to reorder children while editing the element in the editor
-        element.sortChildren = false;
+        // Do not allow UI subsystem to reorder children while editing the element in the editor
+        ResetSortChildren(element);

         editorUIElement.AddChild(element);

@@ -240,6 +249,7 @@
     if (editUIElement.LoadXML(xmlFile, uiElementDefaultStyle !is null ? uiElementDefaultStyle : uiStyle))
     {
         UIElement@ element = editUIElement.children[editUIElement.numChildren - 1];
+        ResetSortChildren(element);
         UpdateHierarchyItem(element);

         // Create an undo action for the load


Transferred from the Adobe Open Source Subversion Repository

Revision: 20036
Author:   dloverin@adobe.com
Date:     2011-02-01T18:01:07.348531Z

Log Message:
-----------
BusyIndicator fix plus add BusyIndicator.png

* Override the setVisible() method so we get notified when intitialized() sets the visibility of the BusyIndicator.
* Since we now have the override we don’t have need a visibility listener on ourselves.
* Rename updateSpinnerChildren() to updateSpinner() since the spinner no longer uses children.

QE notes: None.
Doc notes: None.
Bugs: SDK-29346
Reviewer: Glenn
Tests run: checkintests
Is noteworthy for integration: No.

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

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

--- frameworks/projects/mobilecomponents/src/spark/components/BusyIndicator.as
+++ frameworks/projects/mobilecomponents/src/spark/components/BusyIndicator.as
@@ -68,6 +68,12 @@
  *  @productversion Flex 4.5
  */
 [Style(name="symbolColor", type="uint", format="Color", inherit="yes", theme="spark,mobile")]
+
+//--------------------------------------
+//  Other metadata
+//--------------------------------------
+
+[IconFile("BusyIndicator.png")]

 /**
  *  The BusyIndicator defines a component to display when a long-running
@@ -334,6 +340,22 @@

     /**
      *  @private
+     *  Override so we know when visibility is set. The initialized
+     *  property calls setVisible() with noEvent == true
+     *  so we wouldn't get a visibility event if we just listened
+     *  for events.
+     */
+    override public function setVisible(value:Boolean,
+                               noEvent:Boolean = false):void
+    {
+        super.setVisible(value, noEvent);
+
+        effectiveVisibilityChanged = true;
+        invalidateProperties();
+    }
+
+    /**
+     *  @private
      */
     override public function styleChanged(styleProp:String):void
     {
@@ -357,7 +379,7 @@

         if (allStyles || styleName == "symbolColor")
         {
-            updateSpinnerChildren(spinnerDiameter);
+            updateSpinner(spinnerDiameter);
         }
     }

@@ -369,14 +391,14 @@
     {
         super.updateDisplayList(unscaledWidth, unscaledHeight);

-        // If the size or color changed, then create a new spinner.
+        // If the size changed, then create a new spinner.
         if (oldUnscaledWidth != unscaledWidth ||
             oldUnscaledHeight != unscaledHeight)
         {
             var newDiameter:Number;

             newDiameter = calculateSpinnerDiameter(unscaledWidth, unscaledHeight);
-            updateSpinnerChildren(newDiameter);
+            updateSpinner(newDiameter);

             oldUnscaledWidth = unscaledWidth;
             oldUnscaledHeight = unscaledHeight;
@@ -413,9 +435,9 @@
    /**
     *   @private
     *
-    *   Draw the spinner.
+    *   Update the spinner properties and redraw.
     */
-    private function updateSpinnerChildren(diameter:Number):void
+    private function updateSpinner(diameter:Number):void
     {
         var isRotating:Boolean = isRotating();

@@ -651,7 +673,7 @@
      */
     private function addVisibilityListeners():void
     {
-        var current:IVisualElement = this;
+        var current:IVisualElement = this.parent as IVisualElement;
         while (current)
         {
             // add visibility listeners to the parent


Transferred from the Adobe Open Source Subversion Repository

Revision: 22285
Author:   chiedozi@adobe.com
Date:     2011-08-30T18:52:45.387113Z

Log Message:
-----------
Added builder icons for SplitViewNavigator, TabbedViewNavigator and ViewNavigator

QE notes:
Doc notes:
Bugs: SDK-31067
Reviewer: Tom
Tests run: checkintests, mustella-mobile
Is noteworthy for integration: No

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/ViewNavigator.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/ViewNavigator.png</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/TabbedViewNavigator.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/TabbedViewNavigator.png</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/SplitViewNavigator.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/SplitViewNavigator.png</path>

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

--- frameworks/projects/mobilecomponents/src/spark/components/ViewNavigator.as
+++ frameworks/projects/mobilecomponents/src/spark/components/ViewNavigator.as
@@ -84,6 +84,12 @@
  *  @productversion Flex 4.5
  */
 [SkinState("landscapeAndOverlay")]
+
+//--------------------------------------
+//  Other metadata
+//--------------------------------------
+
+[IconFile("ViewNavigator.png")]

 /**
  *  The ViewNavigator component is a container that consists of a collection of


Transferred from the Adobe Open Source Subversion Repository

Revision: 3730
Author:   jszeto@adobe.com
Date:     2008-10-17T22:59:29.788150Z

Log Message:
-----------
Change Group to no longer reparent a mask

If the mask is already parented, don't add it to the Group.

QE Notes: None
Doc Notes: None
Bugs: -
Reviewer: Evtim

Modified Paths:
--------------
/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/baseClasses/GroupBase.as

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

--- frameworks/projects/spark/src/spark/components/supportClasses/GroupBase.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/GroupBase.as
@@ -336,7 +336,7 @@
         if (maskChanged)
         {
             maskChanged = false;
-            if (_mask && (!_mask.parent || _mask.parent !== this))
+            if (_mask && !_mask.parent)
             {
                 super.addChild(_mask);
                 var maskComp:UIComponent = _mask as UIComponent;


Transferred from the Adobe Open Source Subversion Repository

Revision: 12015
Author:   aharui@adobe.com
Date:     2009-11-19T22:34:02.934215Z

Log Message:
-----------
Fix truncation in Label.  Fix baselines in Spark in general.

QE Notes: SS updated tests based on Cyclone
Doc Notes: None
Bugs: SDK-23992, SDK-23462, SDK-23931, SDK-23913, SDK-23842, SDK-23082
Reviewer: Carol, Gordon
API Change: No
Is noteworthy for integration: No
tests: checkintests mustella/gumbo/components/Label, cyclone

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/DropDownList.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/TextBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/utils/TextUtil.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/Label.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/components/supportClasses/SkinnableComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/RichEditableText.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/DataGroup.as</path>

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

--- frameworks/projects/spark/src/spark/components/supportClasses/GroupBase.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/GroupBase.as
@@ -31,6 +31,7 @@
 import spark.events.DisplayLayerObjectExistenceEvent;
 import spark.layouts.BasicLayout;
 import spark.layouts.supportClasses.LayoutBase;
+import spark.utils.TextUtil;

 use namespace mx_internal;

@@ -195,6 +196,7 @@
  */
 public class GroupBase extends UIComponent implements IViewport
 {
+
     //--------------------------------------------------------------------------
     //
     //  Constructor
@@ -237,6 +239,36 @@
         _explicitAlpha = value;
     }

+    //----------------------------------
+    //  baselinePosition
+    //----------------------------------
+
+    /**
+     *  @inheritDoc
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    override public function get baselinePosition():Number
+    {
+        if (!validateBaselinePosition())
+            return NaN;
+
+        // Unless the height is very small, the baselinePosition
+        // of a generic UIComponent is calculated as if there was
+        // a UITextField using the component's styles
+        // whose top coincides with the component's top.
+        // If the height is small, the baselinePosition is calculated
+        // as if there were text within whose ascent the component
+        // is vertically centered.
+        // At the crossover height, these two calculations
+        // produce the same result.
+
+        return TextUtil.calculateFontBaseline(this, height, moduleFactory);
+    }
+
     //----------------------------------
     //  mouseChildren
     //----------------------------------
@@ -1761,6 +1793,7 @@
             }
         }
     }
+
 }

 }


Transferred from the Adobe Open Source Subversion Repository

Revision: 8486
Author:   smgilson@adobe.com
Date:     2009-07-09T18:42:45.734868Z

Log Message:
-----------
Third checkin to update the namespace in ASDoc MXML syntax descriptions for Spark components

QE Notes: None
Doc Notes: None
Bugs: -
Checkintests: passed

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/DropDownList.as</path>
<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/spark/src/spark/components/PopUpAnchor.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/ButtonBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/DataRenderer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/TextInput.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/components/NumericStepper.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/RadioButtonGroup.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/Button.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/ToggleButton.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/TextArea.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/ScrollBar.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/VGroup.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/VideoPlayer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/CheckBox.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/TrackBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/HSlider.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/HScrollBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/Panel.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/ButtonBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/ListBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/Application.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/SkinnableDataContainer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/VSlider.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/components/VScrollBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/List.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/ItemRenderer.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/components/Scroller.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/Range.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/DataGroup.as</path>

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

--- frameworks/projects/spark/src/spark/components/supportClasses/TrackBase.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/TrackBase.as
@@ -145,7 +145,7 @@
  *
  *  @mxml
  *
- *
The <TrackBase> tag inherits all of the tag
+ *
The <s:TrackBase> tag inherits all of the tag
  *  attributes of its superclass and adds the following tag attributes:

  *
  *


Transferred from the Adobe Open Source Subversion Repository

Revision: 3892
Author:   egeorgie@adobe.com
Date:     2008-10-24T23:33:52.238868Z

Log Message:
-----------
Add constraint properties and unify IVisualItem, UIComponent, GraphicElement, change percentSize to percentWidth, percentHeight in ILayoutItem. Remove IGraphicElementHost and GraphicElementHostImpl. Change GraphicElement constraint properties to take in Object instead of Number to enable advanced constraints later on.

QE Notes: None
Doc Notes: None
Bugs: None
Reviewer: Ryan
tests: checkintests, Mustella (canvas, gumbo layout)

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/layout/LayoutItemHelper.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/layout/LayoutItemUIC.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/BitmapGraphic.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/DataGroup.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/effects/effectClasses/FxResizeInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/tools/dependencychecker/frameworkSwcExceptionsList.txt</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/effects/FxAnimate3D.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/effects/effectClasses/FxMoveInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/layout/ILayoutItem.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/layout/VerticalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/StrokedElement.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/graphicsClasses/GraphicElementHostImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/layout/LayoutBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/layout/BasicLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/IVisualItem.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/IGraphicElementHost.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/IGraphicElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/layout/LayoutItemFDO.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/flex4/src/mx/layout/HorizontalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/baseClasses/GroupBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/graphicsClasses/GraphicElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/AdvancedLayoutFeatures.as</path>

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

--- frameworks/projects/spark/src/spark/effects/supportClasses/MoveInstance.as
+++ frameworks/projects/spark/src/spark/effects/supportClasses/MoveInstance.as
@@ -13,7 +13,6 @@
 import flash.events.Event;

 import mx.effects.PropertyValuesHolder;
-import mx.graphics.IGraphicElement;

 import mx.components.FxApplication;
 import mx.core.Container;
@@ -178,4 +177,4 @@

 }
-}+}


Added y offset to iconButton to center text

git-svn-id: 02605e11d3a461bc7e12f3f3880edf4b0c8dcfd0@4412 3e7533ad-8678-4d30-8e38-00a379d3f0d0

--- src/laml/display/IconButton.as
+++ src/laml/display/IconButton.as
@@ -11,7 +11,7 @@
 	public class IconButton extends Button {
 		private var classId:String = generateId();
 		private var ICON:String = classId + "_icon_button_icon";
-		private var LABEL:String = classId + "_icon_button_label";
+		private var LABEL:String = classId + "_icon_button_label";
 		private var ICON_CONTAINER:String = classId + "_icon_container";

 		private var iconComponent:Image;
@@ -64,11 +64,12 @@
 			}
 			else {
 				iconComponent.visible = true;
-				iconComponent.x = iconContainer.paddingLeft;
+				iconComponent.x = iconContainer.paddingLeft;
 				iconComponent.y = (h - iconComponent.height) / 2;

 				var labelOffset:Number = (iconComponent.x * 2) + iconComponent.width;
 				label.x = labelOffset;
+				label.y = (h - label.height)/2 - 2;
 				label.width = w - labelOffset;
 			}
 		}
@@ -143,7 +144,7 @@
 		}

 		protected function get configXml():XML {
-			var xml:XML = <HBox id={ICON_CONTAINER} width="100%" height="100%" padding="3" xmlns="laml.display">
+			var xml:XML = <HBox id={ICON_CONTAINER} width="100%" height="100%" padding="3" xmlns="laml.display">
 							<Image id={ICON} preferredWidth="1" preferredHeight="1" backgroundColor="#CCCCCC"></Image>
 							<Label id={LABEL} width="100%" height="100%"></Label>
 						</HBox>;


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

--- frameworks/projects/advancedgrids/src/mx/printing/PrintAdvancedDataGrid.as
+++ frameworks/projects/advancedgrids/src/mx/printing/PrintAdvancedDataGrid.as
@@ -1,13 +1,3 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  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.printing
 {


Transferred from the Adobe Open Source Subversion Repository

Revision: 17179
Author:   chiedozi@adobe.com
Date:     2010-08-04T01:26:08.795688Z

Log Message:
-----------
Fixed two RTEs related to pushing and popping null views

QE notes:
Doc notes:
Bugs: SDK-27152,SDK-27220
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/effects/SlideViewTransition.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@1264242 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/mobilecomponents/src/spark/components/ViewNavigator.as
+++ frameworks/projects/mobilecomponents/src/spark/components/ViewNavigator.as
@@ -206,6 +206,11 @@
 	private var currentAnimation:IEffect;

     /**
+     *  @private
+     */
+    private var emptyViewData:ViewHistoryData = null;
+
+    /**
      * @private
      * This following property stores the mouseEnabled
      * value defined on the navigator so that it can be
@@ -356,7 +361,7 @@
      */
     public function get activeView():View
     {
-        if (currentViewData)
+        if (currentViewData && currentViewData != emptyViewData)
             return currentViewData.instance;

         return null;
@@ -654,7 +659,7 @@
      */
     public function popAll(transition:IViewTransition = null):void
     {
-        if (currentSection.length == 0 || !canRemoveCurrentView())
+        if (!currentSection || currentSection.length == 0 || !canRemoveCurrentView())
             return;

         lastAction = POP_ACTION;
@@ -685,7 +690,7 @@
      */
     public function popView(transition:IViewTransition = null):void
     {
-        if (currentSection.length == 0 || !canRemoveCurrentView())
+        if (!currentSection || currentSection.length == 0 || !canRemoveCurrentView())
             return;

         lastAction = POP_ACTION;
@@ -716,7 +721,7 @@
      */
     public function popToFirstView(transition:IViewTransition = null):void
     {
-        if (currentSection.length < 2 || !canRemoveCurrentView())
+        if (!currentSection || currentSection.length < 2 || !canRemoveCurrentView())
             return;

         lastAction = POP_ACTION;
@@ -749,7 +754,7 @@
                              initializationData:Object = null,
                              transition:IViewTransition = null):void
     {
-        if (!canRemoveCurrentView())
+        if (!currentSection || viewFactory == null || !canRemoveCurrentView())
             return;

         lastAction = PUSH_ACTION;
@@ -1259,7 +1264,7 @@
             dispatchEvent(new FlexEvent(FlexEvent.VALUE_COMMIT));

         // Check if we need to push the root view
-        if (currentSection && currentSection.length == 0)
+        if (currentSection && currentSection.length == 0 && currentSection.firstView != null)
             currentSection.push(currentSection.firstView, currentSection.firstViewData);

         pendingViewTransition = null;
@@ -1540,6 +1545,10 @@
         currentViewData = pendingViewData;
         pendingViewData = null;

+        // Clear empty flag if necessary
+        if (emptyViewData && currentViewData != emptyViewData)
+            emptyViewData = null;
+
         // Clear all property invalidation flags
         actionBarVisibilityInvalidated = false;
         tabBarVisibilityInvalidated = false;
@@ -1556,7 +1565,6 @@

                 currentViewData.persistedData = currentView.getPersistenceData();
                 currentView.active = true;
-
             }
         }

@@ -1571,7 +1579,6 @@
             executeViewChange();
         }

-
         lastAction = NO_ACTION;
         viewChanging = false;

@@ -1609,7 +1616,13 @@
         if (currentSection)
             pendingViewData = currentSection.topView;

-        if (pendingViewData && pendingViewData.factory != null)
+        if (pendingViewData == null)
+        {
+            emptyViewData = new ViewHistoryData(View);
+            pendingViewData = emptyViewData;
+        }
+
+        if (pendingViewData.factory != null)
         {
             var view:View;

@@ -1639,11 +1652,18 @@

             view.setCurrentState(view.getCurrentViewState(landscapeOrientation), false);
             addElement(view);
-        }
-
-        // Put this before viewAdded() so another validation pass won't cause this to happen
-        currentViewChanged = false;
-        viewAdded(transitionsEnabled ? pendingViewTransition : null);
+
+            // Put this before viewAdded() so that another validation pass can run if needed during viewAdded
+            currentViewChanged = false;
+            viewAdded(transitionsEnabled ? pendingViewTransition : null);
+        }
+        else
+        {
+            // Cancel operation if the factory class is null
+            currentViewChanged = false;
+            endViewChange();
+        }
+
         pendingViewTransition = null;
     }


Transferred from the Adobe Open Source Subversion Repository

Revision: 13170
Author:   klin@adobe.com
Date:     2009-12-22T23:51:28.763100Z

Log Message:
-----------
Fix for an RTE in TrackBase and SliderBase when the track doesn't exist. Needed null check in the mouse move handlers.

QE notes: No
Doc notes: No
Bugs: SDK-24793
Reviewer: Jason
Tests run: checkintests
Is noteworthy for integration: No

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

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

--- frameworks/projects/spark/src/spark/components/supportClasses/TrackBase.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/TrackBase.as
@@ -596,6 +596,9 @@
      */
     protected function system_mouseMoveHandler(event:MouseEvent):void
     {
+        if (!track)
+            return;
+
         var p:Point = track.globalToLocal(new Point(event.stageX, event.stageY));
         var newValue:Number = pointToValue(p.x - clickOffset.x, p.y - clickOffset.y);
         newValue = nearestValidValue(newValue, snapInterval);


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

--- frameworks/projects/automation/src/mx/automation/codec/DateScrollDetailPropertyCodec.as
+++ frameworks/projects/automation/src/mx/automation/codec/DateScrollDetailPropertyCodec.as
@@ -0,0 +1,90 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  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.automation.codec
+{
+
+	import mx.automation.qtp.IQTPPropertyDescriptor;
+	import mx.automation.IAutomationManager;
+	import mx.automation.IAutomationObject;
+
+	/**
+	 * Translates between internal Flex description of a scroll event
+	 * and automation-friendly version
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
+	 */
+	public class DateScrollDetailPropertyCodec extends DefaultPropertyCodec
+	{
+		/**
+		 *  Constructor
+		 *
+		 *  @langversion 3.0
+		 *  @playerversion Flash 9
+		 *  @playerversion AIR 1.1
+		 *  @productversion Flex 3
+		 */
+		public function DateScrollDetailPropertyCodec()
+		{
+			super();
+		}
+
+		/**
+		 *  @private
+		 */
+		override public function encode(automationManager:IAutomationManager,
+										obj:Object,
+										pd:IQTPPropertyDescriptor,
+										relativeParent:IAutomationObject):Object
+		{
+			var val:int = 0;
+
+			if (!("detail" in obj))
+				return val;
+
+			switch (obj["detail"])
+			{
+				case "nextMonth":
+					return 1;
+				case "nextYear":
+					return 2;
+				case "previousMonth":
+					return 3;
+				case "previousYear":
+					return 4;
+			}
+
+			return val;
+		}
+
+		/**
+		 *  @private
+		 */
+		override public function decode(automationManager:IAutomationManager,
+										obj:Object,
+										value:Object,
+										pd:IQTPPropertyDescriptor,
+										relativeParent:IAutomationObject):void
+		{
+			var details:Array =
+				[
+					"nextMonth", "nextYear", "previousMonth", "previousYear"
+				];
+
+			if ("detail" in obj && value < details.length)
+				obj["detail"] = details[Number(value)-1];
+		}
+	}
+
+}


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

--- frameworks/projects/spark/src/spark/globalization/supportClasses/DateTimeFormatterEx.as
+++ frameworks/projects/spark/src/spark/globalization/supportClasses/DateTimeFormatterEx.as
@@ -1,11 +1,19 @@
 ////////////////////////////////////////////////////////////////////////////////
 //
-//  ADOBE SYSTEMS INCORPORATED
-//  Copyright 2011 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: 3057
Author:   jimurphy@adobe.com
Date:     2008-09-02T15:18:38.819662Z

Log Message:
-----------
Merged 3.0.x revisions [2966,2969,2995,3004,3018-3019,3023,3029-3030,3046,3049,3052] -> trunk

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/listClasses/TileListItemRenderer.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/ModalWindowRequest.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/Menu.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/dragClasses/DragProxy.as</path>
<path kind="dir" action="M">/flex/sdk/trunk</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/PopUpManagerImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/Button.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/ColorPicker.as</path>
<path kind="file" copyfrom-path="/flex/sdk/branches/3.0.x/frameworks/projects/framework/src/mx/events/InterDragManagerEvent.as" copyfrom-rev="3052" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/InterDragManagerEvent.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/PopUpRequest.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/SystemManagerGlobals.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/SWFBridgeEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/systemClasses/EventProxy.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/managers/ISystemManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/tools/dependencychecker/flex/tools/dependencychecker/FrameworkSwcDependencyRules.java</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/sliderClasses/SliderThumb.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/treeClasses/TreeItemRenderer.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="D">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/SizeRequest.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/controls/SWFLoader.as</path>
<path kind="file" copyfrom-path="/flex/sdk/branches/3.0.x/frameworks/projects/framework/src/mx/events/InterManagerRequest.as" copyfrom-rev="3052" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/InterManagerRequest.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/managers/NativeDragManagerImpl.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/FocusRequest.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/wsdl/WSDL.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/PopUpButton.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/controls/scrollClasses/ScrollBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/dividedBoxClasses/BoxDivider.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/Panel.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/ToolTipManagerImpl.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/SandboxRootDragEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/FocusManager.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/framework/src/mx/controls/ComboBox.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/SystemManager.as</path>
<path kind="file" copyfrom-path="/flex/sdk/branches/3.0.x/frameworks/projects/framework/src/mx/events/SandboxMouseEvent.as" copyfrom-rev="3052" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/SandboxMouseEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/listClasses/ListItemRenderer.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/frameworks/projects/framework/src/mx/managers/SystemManagerProxy.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/SandboxRootRequest.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/utils/EventUtil.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/SandboxRootMouseEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/ScrollControlBase.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/frameworks/projects/framework/src/mx/controls/sliderClasses/Slider.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/managers/CursorManagerImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/SWFBridgeRequest.as</path>

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

--- frameworks/projects/mx/src/mx/controls/Menu.as
+++ frameworks/projects/mx/src/mx/controls/Menu.as
@@ -51,7 +51,7 @@
 import mx.events.FlexEvent;
 import mx.events.FlexMouseEvent;
 import mx.events.ListEvent;
-import mx.events.SandboxRootMouseEvent;
+import mx.events.SandboxMouseEvent;
 import mx.events.MenuEvent;
 import mx.managers.IFocusManagerContainer;
 import mx.managers.ISystemManager;
@@ -1476,7 +1476,7 @@
         // If the user clicks outside the menu, then hide the menu
         var sbRoot:DisplayObject = systemManager.getSandboxRoot();
         sbRoot.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownOutsideHandler, false, 0, true);
-        addEventListener(SandboxRootMouseEvent.MOUSE_DOWN_SOMEWHERE, mouseDownOutsideHandler, false, 0, true);
+        addEventListener(SandboxMouseEvent.MOUSE_DOWN_SOMEWHERE, mouseDownOutsideHandler, false, 0, true);
     }

     /**
@@ -1524,7 +1524,7 @@
             // to listen to mouseDown events anymore.
             var sbRoot:DisplayObject = systemManager.getSandboxRoot();
             sbRoot.removeEventListener(MouseEvent.MOUSE_DOWN, mouseDownOutsideHandler);
-            removeEventListener(SandboxRootMouseEvent.MOUSE_DOWN_SOMEWHERE, mouseDownOutsideHandler);
+            removeEventListener(SandboxMouseEvent.MOUSE_DOWN_SOMEWHERE, mouseDownOutsideHandler);

             // Fire an event
             var menuEvent:MenuEvent = new MenuEvent(MenuEvent.MENU_HIDE);
@@ -1589,7 +1589,7 @@
             if (!isMouseOverMenu(mouseEvent) && !isMouseOverMenuBarItem(mouseEvent))
                 hideAllMenus();
         }
-        else if (event is SandboxRootMouseEvent)
+        else if (event is SandboxMouseEvent)
             hideAllMenus();
     }


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

--- frameworks/projects/rpc/src/mx/messaging/channels/PollingChannel.as
+++ frameworks/projects/rpc/src/mx/messaging/channels/PollingChannel.as
@@ -1,3 +1,13 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  ADOBE SYSTEMS INCORPORATED
+//  Copyright 2006-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.messaging.channels
 {


Transferred from the Adobe Open Source Subversion Repository

Revision: 8
Author:   open-source-svn-admin@adobe.com
Date:     2007-12-15T01:49:31.087529Z

Log Message:
-----------
The beginning of the open-source Flex SDK.

Populated the flex/sdk/trunk directory with an open-source subset of files from //depot/flex/sdk/...@191097 in the Faramir Perforce server. This changelist is a bit past the 3.0rc0 build.

The Ant scripts will not successfully build yet. They need to be adapted to the open-source subset.

Modified Paths:
--------------
2532 paths were modified

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

--- frameworks/projects/rpc/src/mx/messaging/messages/CommandMessage.as
+++ frameworks/projects/rpc/src/mx/messaging/messages/CommandMessage.as
@@ -0,0 +1,361 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  ADOBE SYSTEMS INCORPORATED
+//  Copyright 2005-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.messaging.messages
+{
+
+import flash.utils.IDataInput;
+import flash.utils.IDataOutput;
+
+[RemoteClass(alias="flex.messaging.messages.CommandMessage")]
+
+/**
+ *  The CommandMessage class provides a mechanism for sending commands to the
+ *  server infrastructure, such as commands related to publish/subscribe
+ *  messaging scenarios, ping operations, and cluster operations.
+ */
+public class CommandMessage extends AsyncMessage
+{
+    //--------------------------------------------------------------------------
+    //
+    // Static Constants
+    //
+    //--------------------------------------------------------------------------
+
+    /**
+     *  This operation is used to subscribe to a remote destination.
+     */
+	public static const SUBSCRIBE_OPERATION:uint = 0;
+
+    /**
+     *  This operation is used to unsubscribe from a remote destination.
+     */
+	public static const UNSUBSCRIBE_OPERATION:uint = 1;
+
+    /**
+     *  This operation is used to poll a remote destination for pending,
+     *  undelivered messages.
+     */
+	public static const POLL_OPERATION:uint = 2;
+
+    /**
+     *  This operation is used by a remote destination to sync missed or cached messages
+     *  back to a client as a result of a client issued poll command.
+     */
+	public static const CLIENT_SYNC_OPERATION:uint = 4;
+
+    /**
+     *  This operation is used to test connectivity over the current channel to
+     *  the remote endpoint.
+     */
+	public static const CLIENT_PING_OPERATION:uint = 5;
+
+    /**
+     *  This operation is used to request a list of failover endpoint URIs
+     *  for the remote destination based on cluster membership.
+     */
+	public static const CLUSTER_REQUEST_OPERATION:uint = 7;
+
+	/**
+	 * This operation is used to send credentials to the endpoint so that
+	 * the user can be logged in over the current channel.
+	 * The credentials need to be Base64 encoded and stored in the body
+	 * of the message.
+	 */
+    public static const LOGIN_OPERATION:uint = 8;
+
+    /**
+     * This operation is used to log the user out of the current channel, and
+     * will invalidate the server session if the channel is HTTP based.
+     */
+    public static const LOGOUT_OPERATION:uint = 9;
+
+    /**
+     * Endpoints can imply what features they support by reporting the
+     * latest version of messaging they are capable of during the handshake of
+     * the initial ping CommandMessage.
+     */
+    public static const MESSAGING_VERSION:String = "DSMessagingVersion";
+
+    /**
+     * This operation is used to indicate that the client's subscription with a
+     * remote destination has timed out.
+     */
+    public static const SUBSCRIPTION_INVALIDATE_OPERATION:uint = 10;
+
+    /**
+     * Used by the MultiTopicConsumer to subscribe/unsubscribe for more
+     * than one topic in the same message.
+     */
+    public static const MULTI_SUBSCRIBE_OPERATION:uint = 11;
+
+    /**
+     *  This operation is used to indicate that a channel has disconnected.
+     */
+    public static const DISCONNECT_OPERATION:uint = 12;
+
+    /**
+     *  This is the default operation for new CommandMessage instances.
+     */
+	public static const UNKNOWN_OPERATION:uint = 10000;
+
+	/**
+	 *  The server message type for authentication commands.
+	 */
+	public static const AUTHENTICATION_MESSAGE_REF_TYPE:String = "flex.messaging.messages.AuthenticationMessage";
+
+	/**
+	 *  Subscribe commands issued by a Consumer pass the Consumer's selector
+	 *  expression in this header.
+	 */
+	public static const SELECTOR_HEADER:String = "DSSelector";
+
+	/**
+	 *  Durable JMS subscriptions are preserved when an unsubscribe message
+	 *  has this parameter set to true in its header.
+	 */
+	public static const PRESERVE_DURABLE_HEADER:String = "DSPreserveDurable";
+
+    /**
+     * Header to indicate that the Channel needs the configuration from the
+     * server.
+     */
+    public static const NEEDS_CONFIG_HEADER:String = "DSNeedsConfig";
+
+    /**
+     * Header used in a MULTI_SUBSCRIBE message to specify an Array of subtopic/selector
+     * pairs to add to the existing set of subscriptions.
+     */
+    public static const ADD_SUBSCRIPTIONS:String = "DSAddSub";
+
+    /**
+     * Like the above, but specifies the subtopic/selector array of to remove
+     */
+    public static const REMOVE_SUBSCRIPTIONS:String = "DSRemSub";
+
+    /**
+     * The separator string used for separating subtopic and selectors in the
+     * add and remove subscription headers.
+     */
+    public static const SUBTOPIC_SEPARATOR:String = "_;_";
+
+    /**
+     * Header to drive an idle wait time before the next client poll request.
+     */
+    public static const POLL_WAIT_HEADER:String = "DSPollWait";
+
+    /**
+     * Header to suppress poll response processing. If a client has a long-poll
+     * parked on the server and issues another poll, the response to this subsequent poll
+     * should be tagged with this header in which case the response is treated as a
+     * no-op and the next poll will not be scheduled. Without this, a subsequent poll
+     * will put the channel and endpoint into a busy polling cycle.
+     */
+    public static const NO_OP_POLL_HEADER:String = "DSNoOpPoll";
+
+    /**
+     * Header to specify which character set encoding was used while encoding
+     * login credentials.
+     */
+    public static const CREDENTIALS_CHARSET_HEADER:String = "DSCredentialsCharset";
+
+    //--------------------------------------------------------------------------
+    //
+    // Private Static Constants for Serialization
+    //
+    //--------------------------------------------------------------------------
+
+    private static const OPERATION_FLAG:uint = 1;
+
+    //--------------------------------------------------------------------------
+    //
+    // Static Variables
+    //
+    //--------------------------------------------------------------------------
+
+    /**
+     *  @private
+     *  Map of operations to semi-descriptive operation text strings.
+     */
+    private static var operationTexts:Object = null;
+
+
+    //--------------------------------------------------------------------------
+    //
+    // Constructor
+    //
+    //--------------------------------------------------------------------------
+
+	/**
+	 *  Constructs an instance of a CommandMessage with an empty body and header
+	 *  and a default operation of UNKNOWN_OPERATION.
+	 */
+	public function CommandMessage()
+	{
+		super();
+		operation = UNKNOWN_OPERATION;
+	}
+
+    //--------------------------------------------------------------------------
+    //
+    // Variables
+    //
+    //--------------------------------------------------------------------------
+
+	/**
+     *  Provides access to the operation/command for the CommandMessage.
+     *  Operations indicate how this message should be processed by the remote
+     *  destination.
+     */
+	public var operation:uint;
+
+    //--------------------------------------------------------------------------
+    //
+    // Overridden Methods
+    //
+    //--------------------------------------------------------------------------
+
+    /**
+     * @private
+     */
+    override public function getSmallMessage():IMessage
+    {
+        // We shouldn't use small messages for PING or LOGIN operations as the
+        // messaging version handshake would not yet be complete... for now just
+        // optimize POLL operations.
+        if (operation == POLL_OPERATION)
+        {
+            return new CommandMessageExt(this);
+        }
+
+        return null;
+    }
+
+    /**
+     *  @private
+     */
+    override protected function addDebugAttributes(attributes:Object):void
+    {
+        super.addDebugAttributes(attributes);
+        attributes["operation"] = getOperationAsString(operation);
+    }
+
+    /**
+     *  Returns a string representation of the message.
+     *
+     *  @return String representation of the message.
+     */
+    override public function toString():String
+    {
+        return getDebugString();
+    }
+
+    //--------------------------------------------------------------------------
+    //
+    // Methods
+    //
+    //--------------------------------------------------------------------------
+
+    /**
+     *  Provides a description of the operation specified.
+     *  This method is used in toString() operations on this
+     *  message.
+     *
+     *  @param op One of the CommandMessage operation constants.
+     *
+     *  @return Short name for the operation.
+     *
+     *  @example
+     *

+     *     var msg:CommandMessage = CommandMessage(event.message);
+     *     trace("Current operation -'"+
+     *            CommandMessage.getOperationAsString(msg.operation)+ "'.");
+     *

+     */
+    public static function getOperationAsString(op:uint):String
+    {
+        if (operationTexts == null)
+        {
+            operationTexts = {};
+            operationTexts[SUBSCRIBE_OPERATION] = "subscribe";
+            operationTexts[UNSUBSCRIBE_OPERATION] = "unsubscribe";
+            operationTexts[POLL_OPERATION] = "poll";
+            operationTexts[CLIENT_SYNC_OPERATION] = "client sync";
+            operationTexts[CLIENT_PING_OPERATION] = "client ping";
+            operationTexts[CLUSTER_REQUEST_OPERATION] = "cluster request";
+            operationTexts[LOGIN_OPERATION] = "login";
+            operationTexts[LOGOUT_OPERATION] = "logout";
+            operationTexts[SUBSCRIPTION_INVALIDATE_OPERATION] = "subscription invalidate";
+            operationTexts[MULTI_SUBSCRIBE_OPERATION] = "multi-subscribe";
+            operationTexts[DISCONNECT_OPERATION] = "disconnect";
+            operationTexts[UNKNOWN_OPERATION] = "unknown";
+	    }
+        var result:* = operationTexts[op];
+        return result == undefined ? op.toString() : String(result);
+    }
+
+    /**
+     * @private
+     */
+    override public function readExternal(input:IDataInput):void
+    {
+        super.readExternal(input);
+
+        var flagsArray:Array = readFlags(input);
+        for (var i:uint = 0; i < flagsArray.length; i++)
+        {
+            var flags:uint = flagsArray[i] as uint;
+            var reservedPosition:uint = 0;
+
+            if (i == 0)
+            {
+                if ((flags & OPERATION_FLAG) != 0)
+                    operation = input.readObject() as uint;
+
+                reservedPosition = 1;
+            }
+
+            // For forwards compatibility, read in any other flagged objects
+            // to preserve the integrity of the input stream...
+            if ((flags >> reservedPosition) != 0)
+            {
+                for (var j:uint = reservedPosition; j < 6; j++)
+                {
+                    if (((flags >> j) & 1) != 0)
+                    {
+                        input.readObject();
+                    }
+                }
+            }
+        }
+    }
+
+    /**
+     * @private
+     */
+    override public function writeExternal(output:IDataOutput):void
+    {
+        super.writeExternal(output);
+
+        var flags:uint = 0;
+
+        if (operation != 0)
+            flags |= OPERATION_FLAG;
+
+        output.writeByte(flags);
+
+        if (operation != 0)
+            output.writeObject(operation);
+    }
+
+}
+
+}


all get id ANE methods are now async to be consistent

--- actionscript/src/com/freshplanet/ane/AirDeviceId.as
+++ actionscript/src/com/freshplanet/ane/AirDeviceId.as
@@ -31,6 +31,8 @@
 		private var _id 	: String = null;
 		private var _idfv	: String = null;
 		private var _idfa	: String = null;
+
+		private var _idfaCallbacks : Vector.<Function> = new Vector.<Function>();

 		/**
 		 * AirDeviceId constructor
@@ -100,62 +102,75 @@

 		/**
 		 *
-		 * @param salt	a developer specific salt
-		 * @return		unique id for this device
+		 * @param 	salt		a developer specific salt
+		 * @param	callback
+		 * @return				unique id for this device
 		 */
-		public function getID( salt:String ) : String {
+		public function getID( salt:String, callback:Function ) : void {

 			if ( !this.isOnDevice ) {
-				return 'simulator';
+
+				callback( 'simulator' );
+				return;
 			}

-			if ( !this._id ) {
-				this._id = this._extCtx.call( 'getID', salt ) as String;
+			if ( !_id ) {
+				_id = _extCtx.call( 'getID', salt ) as String;
 			}

-			return this._id;
+			callback( _id );
 		}

 		/**
-		 * @return vendor id or null on unavailable/Android
+		 * @param	callback	d
+		 * @return 				vendor id or null on unavailable/Android
 		 */
-		public function getIDFV() : String {
+		public function getIDFV( callback:Function ) : void {

 			if ( !this.isOnDevice ) {
-				return null;
+
+				callback( null );
+				return;
 			}

-			if ( !this._idfv ) {
-
-				this._idfv = _extCtx.call( 'getIDFV' ) as String;
-
-				if ( this._idfv == '00000000-0000-0000-0000-000000000000' ) {
-					this._idfv = null;
-				}
+			if ( !_idfv ) {
+				_idfv = _extCtx.call( 'getIDFV' ) as String;
+			}
+			else {
+				_extCtx.call( 'getIDFV' );
 			}

-			return this._idfv;
+			callback( _idfv == '00000000-0000-0000-0000-000000000000' ? null : _idfv );
 		}

 		/**
-		 * @return advertiser id or null on unavailable/Android
+		 * @param	callback	d
+		 * @return 				advertiser id
 		 */
-		public function getIDFA() : String {
+		public function getIDFA( callback:Function ) : void {

 			if ( !this.isOnDevice ) {
-				return null;
+
+				callback( null );
+				return;
 			}

-			if ( !this._idfa ) {
+			if ( _idfa ) {
+				callback( _idfa == '00000000-0000-0000-0000-000000000000' ? null : _idfa );
+			}
+			else if ( isOnIOS ) {

-				this._idfa = _extCtx.call( 'getIDFA' ) as String;
+				_idfa = _extCtx.call( 'getIDFA' ) as String;
+				callback( _idfa == '00000000-0000-0000-0000-000000000000' ? null : _idfa );
+			}
+			else {

-				if ( this._idfa == '00000000-0000-0000-0000-000000000000' ) {
-					this._idfa = null;
+				if ( _idfaCallbacks.length == 0 ) {
+					_extCtx.call( 'getIDFA' );
 				}
+
+				_idfaCallbacks.push( callback );
 			}
-
-			return this._idfa;
 		}

 		/**
@@ -167,6 +182,17 @@
 			if ( event.code == 'LOGGING' ) {
 				trace( '[AirDeviceId] ' + event.level );
 			}
+			else if ( event.code == 'IDFA_VALUE' ) {
+
+				_idfa = null;
+
+				var callbacks : Vector.<Function> = _idfaCallbacks.slice();
+				_idfaCallbacks.length = 0;
+
+				for each ( var callback:Function in callbacks ) {
+					callback( _idfa == '00000000-0000-0000-0000-000000000000' ? null : _idfa );
+				}
+			}
 		}
 	}
 }


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

--- frameworks/projects/advancedgrids/src/mx/collections/IGroupingCollection.as
+++ frameworks/projects/advancedgrids/src/mx/collections/IGroupingCollection.as
@@ -1,3 +1,13 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  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.collections
 {


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

--- frameworks/projects/spark/src/spark/components/supportClasses/SliderBase.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/SliderBase.as
@@ -1,11 +1,19 @@
 ////////////////////////////////////////////////////////////////////////////////
 //
-//  ADOBE SYSTEMS INCORPORATED
-//  Copyright 2008 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: 5099
Author:   gauravj@adobe.com
Date:     2009-02-27T03:43:02.639229Z

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:
--------------
147 paths were modified

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

--- frameworks/projects/rpc/src/mx/messaging/channels/StreamingConnectionHandler.as
+++ frameworks/projects/rpc/src/mx/messaging/channels/StreamingConnectionHandler.as
@@ -42,6 +42,12 @@
  *  Dispatched when the StreamingConnectionHandler receives a status command from the server.
  *
  *  @eventType flash.events.StatusEvent
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion BlazeDS 4
+ *  @productversion LCDS 3
  */
 [Event(name="status", type="flash.events.StatusEvent")]

@@ -49,6 +55,12 @@
  *  A helper class that is used by the streaming channels to open an internal
  *  HTTP connection to the server that is held open to allow the server to
  *  stream data down to the client with no poll overhead.
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion BlazeDS 4
+ *  @productversion LCDS 3
  */
 public class StreamingConnectionHandler extends EventDispatcher
 {
@@ -61,6 +73,12 @@
     /**
      *  The code for the StatusEvent dispatched by this handler when a disconnect
      *  command is received from the server.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     public static const DISCONNECT_CODE:String = "disconnect";

@@ -72,28 +90,58 @@

     /**
      *  Parameter name for the command passed in the request for a new streaming connection.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     private static const COMMAND_PARAM_NAME:String = "command";

     /**
      *  A request to open a streaming connection passes this 'command' in the request URI to the
      *  remote endpoint.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     private static const OPEN_COMMAND:String = "open";

     /**
      *  A request to close a streaming connection passes this 'command' in the request URI to the
      *  remote endpoint.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     private static const CLOSE_COMMAND:String = "close";

     /**
      *  Parameter name for the stream id; passed with commands for an existing streaming connection.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     private static const STREAM_ID_PARAM_NAME:String = "streamId";

     /**
      *  Parameter name for the version param passed in the request for a new streaming connection.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     private static const VERSION_PARAM_NAME:String = "version";

@@ -101,6 +149,12 @@
      *  Indicates the stream version used for this channel's stream connection.
      *  Currently just version 1. If the protocol over the wire needs to change in the future
      *  this gives us a way to indicate the change.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     private static const VERSION_1:String = "1";

@@ -172,6 +226,12 @@
      *
 	 *  @param channel The Channel that uses this class.
 	 *  @param log Reference to the logger for the associated Channel.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     public function StreamingConnectionHandler(channel:Channel, log:ILogger)
     {
@@ -188,6 +248,12 @@

   	/**
   	 * The Channel that uses this class.
+  	 *
+  	 *  @langversion 3.0
+  	 *  @playerversion Flash 9
+  	 *  @playerversion AIR 1.1
+  	 *  @productversion BlazeDS 4
+  	 *  @productversion LCDS 3
   	 */
   	 protected var channel:Channel;

@@ -195,6 +261,12 @@
      *  Byte buffer used to store the current chunk from the remote endpoint.
      *  Once a full chunk has been buffered, a message instance encoded in binary
      *  AMF format can be read from the chunk and dispatched.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     protected var chunkBuffer:ByteArray;

@@ -202,11 +274,23 @@
      *  Counter that keeps track of how many data bytes remain to be read for the current chunk.
      *  A sentinal value of -1 indicates an initial state (either waiting for the first chunk or
      *  just finished parsing the previous chunk).
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     protected var dataBytesToRead:int = -1;

     /**
      *  Index into the chunk buffer pointing to the first byte of chunk data.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     protected var dataOffset:int;

@@ -230,23 +314,47 @@

     /**
      *  Storage for the hex-format chunk size value from the byte stream.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     private var hexChunkSize:String;

     /**
      *  Current parse state on the streaming connection.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     private var state:int = INIT_STATE;

     /**
      *  URLStream used to open a streaming connection from the server to
      *  the client over HTTP.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     private var streamingConnection:URLStream;

     /**
      *  URLStream used to close the original streaming connection opened from
      *  the server to the client over HTTP.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
 	private var streamingConnectionCloser:URLStream;

@@ -262,6 +370,12 @@
      *
      *  @param appendToURL The string to append such as session id to the endpoint
      *  url while making the streaming connection request.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     public function openStreamingConnection(appendToURL:String=null):void
     {
@@ -299,6 +413,12 @@

     /**
      *  Used by the streaming channels to shut down the streaming connection.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     public function closeStreamingConnection():void
     {
@@ -386,6 +506,12 @@
 	 *  returns null and subclasses must override this method.
 	 *
 	 *  @return Returns the message that was read.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion BlazeDS 4
+	 *  @productversion LCDS 3
 	 */
     protected function readMessage():IMessage
     {
@@ -404,6 +530,12 @@
      *
      *  @param value The hex value as a String.
      *  @return The hex value converted as a decimal int.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     private function convertHexToDecimal(value:String):int
     {
@@ -427,6 +559,12 @@
      *  has been closed by the server by re-dispatching the event for the channel.
      *
      *  @param event The COMPLETE Event.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     private function streamCompleteHandler(event:Event):void
     {
@@ -438,6 +576,12 @@
      *  re-dispatching the event for the channel.
      *
      *  @param event The HTTPStatusEvent.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     private function streamHttpStatusHandler(event:HTTPStatusEvent):void
     {
@@ -449,6 +593,12 @@
      *  re-dispatching the event for the channel.
      *
      *  @param event The IOErrorEvent.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     private function streamIoErrorHandler(event:IOErrorEvent):void
     {
@@ -461,6 +611,12 @@
      *  not advance the channel to a connected state yet.
      *
      *  @param event The OPEN Event.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     private function streamOpenHandler(event:Event):void
     {
@@ -473,6 +629,12 @@
      *  encoded in binary AMF format or a block of bytes to read off the network but skip any processing of.
      *
      *  @param event The ProgressEvent.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     private function streamProgressHandler(event:ProgressEvent):void
     {
@@ -671,6 +833,12 @@
      *  re-dispatching the event for the channel.
      *
      *  @param event The SecurityErrorEvent.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     private function streamSecurityErrorHandler(event:SecurityErrorEvent):void
     {


Transferred from the Adobe Open Source Subversion Repository

Revision: 3699
Author:   egeorgie@adobe.com
Date:     2008-10-16T22:36:36.096327Z

Log Message:
-----------
Fix for http://bugs.adobe.com/jira/browse/SDK-17187 updateComplete continuously fires after setting y on an Ellipse.

The fix is to make sure we don't fire updateComplete in validateDisplayList, if invalidateDisplayList flag was false in the first place.

Reviewed by Jason

Modified Paths:
--------------
/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/graphicsClasses/GraphicElement.as

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

--- frameworks/projects/spark/src/spark/primitives/supportClasses/GraphicElement.as
+++ frameworks/projects/spark/src/spark/primitives/supportClasses/GraphicElement.as
@@ -2615,6 +2615,7 @@
         // Put this back in once we implement drawingAPI2
         /* if (!invalidateDisplayListFlag)
             return; */
+        var wasInvalid:Boolean = invalidateDisplayListFlag;
         invalidateDisplayListFlag = false;

         // we commit our transform in two places. First, during commit properties, because our size depends on it,
@@ -2629,7 +2630,7 @@
             updateDisplayList(_width, _height);

         // If we aren't doing any more invalidation, send out an UpdateComplete event
-        if (!invalidatePropertiesFlag && !invalidateSizeFlag && !invalidateDisplayListFlag)
+        if (!invalidatePropertiesFlag && !invalidateSizeFlag && !invalidateDisplayListFlag && wasInvalid)
             dispatchUpdateComplete();
     }


ExternalTool: Switch to immediate callback for toolPropertiesChanged

--- WeaveUI/src/weave/visualization/tools/ExternalTool.as
+++ WeaveUI/src/weave/visualization/tools/ExternalTool.as
@@ -21,7 +21,7 @@
 	import weave.api.WeaveAPI;
 	import weave.compiler.Compiler;
 	import weave.core.LinkableHashMap;
-	import weave.core.LinkableString;
+	import weave.core.LinkableString;

 	public class ExternalTool extends LinkableHashMap
 	{
@@ -32,7 +32,7 @@
 		public function ExternalTool()
 		{
 			toolUrl = requestObject("toolUrl", LinkableString, true);
-			toolUrl.addGroupedCallback(this, toolPropertiesChanged);
+			toolUrl.addImmediateCallback(this, toolPropertiesChanged);
 		}
 		private function toolPropertiesChanged():void
 		{
@@ -55,10 +55,11 @@
 					url: toolUrl.value,
 					features: "menubar=no,status=no,toolbar=no"
 				},
-				"if (!weave.external_tools) weave.external_tools = {};\
-				 weave.external_tools[windowName] = window.open(url, windowName, features);\
-				 weave.external_tools[windowName].toolPath = toolPath;\
-				 weave.external_tools[windowName].weave = weave;"
+				"if (!weave.external_tools) weave.external_tools = {};",
+				"weave.external_tools[windowName] = window.open(url, windowName, features);",
+				"console.log(toolPath);",
+				"weave.external_tools[windowName].toolPath = toolPath;",
+				"weave.external_tools[windowName].weave = weave;"
 			);
 		}
 		override public function dispose():void


Transferred from the Adobe Open Source Subversion Repository

Revision: 20088
Author:   deeptika@adobe.com
Date:     2011-02-03T11:20:39.567743Z

Log Message:
-----------
Adding null check and creating measuringObjects if it doesn't exist

QE notes:
Doc notes:
Bugs: FLEXENT-1407 (Not Able to Add Flex Data Grid and Objects inside Flex Data Gird are not recognised by QTP)
Reviewer: Sameer
Tests run: Checkintests
Is noteworthy for integration:

Modified Paths:
--------------
/private/flex/sdk/branches/hero_private/frameworks/projects/advancedgrids/src/mx/controls/AdvancedDataGridBaseEx.as

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

--- frameworks/projects/advancedgrids/src/mx/controls/AdvancedDataGridBaseEx.as
+++ frameworks/projects/advancedgrids/src/mx/controls/AdvancedDataGridBaseEx.as
@@ -2816,7 +2816,10 @@
     mx_internal function getMeasuringRenderer(c:AdvancedDataGridColumn, forHeader:Boolean, data:Object):IListItemRenderer
     {
         var factory:IFactory = columnItemRendererFactory(c,forHeader,data);
-
+
+		if (!measuringObjects)
+			measuringObjects = new Dictionary(false);
+
         var item:IListItemRenderer = measuringObjects[factory];
         if (!item)
         {