Transferred from the Adobe Open Source Subversion Repository

Revision: 22588
Author:   chiedozi@adobe.com
Date:     2011-09-15T23:25:18.392244Z

Log Message:
-----------
The popup skinpart for SplitViewNavigator is now typed SkinnablePopUpContainer.  This resulted in PARB changes for the following properties:
viewNavigatorCallout --> viewNavigatorPopUp
showFirstViewNavigatorInCallout() --> showFirstViewNavigatorInPopUp()
hideViewNavigatorCallout() --> hideViewNavigatorPopUp()

QE notes:
Doc notes:
Bugs:SDK-31531
Reviewer: Tom
Tests run: checkintests
Is noteworthy for integration: Yes

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/tests/airMobileBasicTests/src/mobile/views/DetailView.mxml</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobiletheme/src/spark/skins/mobile/SplitViewNavigatorSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/tests/airMobileBasicTests/src/mobile/scripts/SplitViewNavigatorTestScript.mxml</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="M">/private/flex/sdk/branches/4.y/frameworks/tests/airMobileBasicTests/src/mobile/views/MasterView.mxml</path>

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

--- frameworks/projects/mobilecomponents/src/spark/components/SplitViewNavigator.as
+++ frameworks/projects/mobilecomponents/src/spark/components/SplitViewNavigator.as
@@ -89,12 +89,13 @@
  *  flag on the child.  When set, the includeInLayout property
  *  of that child will be set to match.

  *
- *
SplitViewNavigator lets you  display the first navigator in a Callout component.
- *  When you call the showFirstViewNavigatorInCallout() method, the
- *  first navigator is displayed in a callout until the
- *  hideViewNavigatorCallout() method is called, or the user
- *  touches outside the bounds of the callout.
- *  It is important to note that when a navigator is displayed in a callout,
+ *
SplitViewNavigator lets you  display the first navigator in a
+ *  popup.  By default, it uses a Callout component.
+ *  When you call the showFirstViewNavigatorInPopUp() method, the
+ *  first navigator is displayed in a popup until the
+ *  hideViewNavigatorPopUp() method is called, or the user
+ *  touches outside the bounds of the popup.
+ *  It is important to note that when a navigator is displayed in a popup,
  *  it is reparented as a child of that container.
  *  This means that using IVisualElementContainer methods such as
  *  getElementAt() on SplitViewNavigator may not return the
@@ -102,7 +103,7 @@
  *  If you want to access the first or second  navigator, Adobe recommends
  *  that you use the getViewNavigatorAt()  method.
  *  This method always returns the correct navigator regardless of whether
- *  a navigator is in a callout or not.

+ *  a navigator is in a popup or not.

  *
  *  @mxml
The <s:SplitViewNavigator> tag inherits all of the tag
  *  attributes of its superclass and adds the following tag attributes:

@@ -120,6 +121,7 @@
  *  @see spark.components.TabbedViewNavigator
  *  @see spark.components.Application#aspectRatio
  *  @see spark.components.Callout
+ *  @see spark.components.SkinnablePopUpContainer
  *
  *  @langversion 3.0
  *  @playerversion AIR 3
@@ -153,8 +155,8 @@

     [SkinPart(required="false")]
     /**
-     *  The Callout used to display a navigator when
-     *  showFirstViewNavigatorInCallout() is called.
+     *  The popUp used to display a navigator when
+     *  showFirstViewNavigatorInPopUp() is called.
      *  When creating a custom MXML skin, this component should not be on the display list,
      *  but instead declared inside a fx:Declarations tag.
      *
@@ -162,7 +164,7 @@
      *  @playerversion AIR 3
      *  @productversion Flex 4.6
      */
-    public var viewNavigatorCallout:Callout;
+    public var viewNavigatorPopUp:SkinnablePopUpContainer;

     //--------------------------------------------------------------------------
     //
@@ -181,15 +183,15 @@
     /**
      *  @private
      *  Stores the original element index of the navigator that is reparented
-     *  into the callout.
-     */
-    private var _calloutNavigatorIndex:int = -1;
-
-    /**
-     *  @private
-     *  A reference to the navigator that is being displayed in the callout
-     */
-    private var _calloutNavigator:ViewNavigatorBase = null;
+     *  into the popup.
+     */
+    private var _popUpNavigatorIndex:int = -1;
+
+    /**
+     *  @private
+     *  A reference to the navigator that is being displayed inside the popUp
+     */
+    private var _popUpNavigator:ViewNavigatorBase = null;

     //--------------------------------------------------------------------------
     //
@@ -290,7 +292,7 @@
      */
     public function get numViewNavigators():int
     {
-        return _calloutNavigatorIndex == -1 ? numElements : numElements + 1;
+        return _popUpNavigatorIndex == -1 ? numElements : numElements + 1;
     }

     //--------------------------------------------------------------------------
@@ -303,11 +305,11 @@
      *  Returns a specific child navigator independent of the container's
      *  child display hierarchy.
      *  Since a child navigator is not parented by this
-     *  container when visible inside a callout, this method should be used instead of
+     *  container when visible inside a popup, this method should be used instead of
      *  getElementAt().
      *
-     *
When a callout is open, the navigator at index 0 refers to the
-     *  navigator in the callout.

+     *
When a popup is open, the navigator at index 0 refers to the
+     *  navigator in the popup.

      *
      *  @param index Index of the navigator to retrieve.
      *
@@ -319,15 +321,15 @@
      */
     public function getViewNavigatorAt(index:int):ViewNavigatorBase
     {
-        // If the index is the navigator currently in the callout, return it
-        if (_calloutNavigatorIndex == index)
-            return _calloutNavigator;
-
-        // Since a callout is visible, one of the navigators has been removed
-        // from this display tree.  If the index of the navigator in the callout
+        // If the index is the navigator currently in the popup, return it
+        if (_popUpNavigatorIndex == index)
+            return _popUpNavigator;
+
+        // Since a popup is visible, one of the navigators has been removed
+        // from this display tree.  If the index of the navigator in the popup
         // is before the passed index, decrement it by 1 so that it reflects
         // the current indicies of the child navigatos.
-        if (_calloutNavigatorIndex != -1 && _calloutNavigatorIndex < index)
+        if (_popUpNavigatorIndex != -1 && _popUpNavigatorIndex < index)
             index--;

         if (index >= numElements)
@@ -337,40 +339,41 @@
     }

     /**
-     *  Displays the child navigator at index 0 inside a callout.
-     *  The navigator is reparented as a child of the callout.
+     *  Displays the child navigator at index 0 inside a popup.
+     *  The navigator is reparented as a child of the popop.
      *
      *
Since the navigator is reparented, using getElementAt(0)
      *  does not return the first navigator, but returns the second.
      *  Adobe recommends that you use the getViewNavigatorAt()
      *  method to access the navigators.

      *
-     *
The callout height is fixed by the component but can be changed by
-     *  reskinning or by manually setting the height property on the
-     *  viewNavigatorCallout skinPart.

-     *
-     *
If the callout is already open or the callout skin part does not exist,
+     *
The popup height is not set by this component.  The height will size to
+     *  fit the View currently active in the ViewNavigator.  A height can be set
+     *  by reskinning this component or by manually setting the height
+     *  property on the viewNavigatorPopUp skinPart.

+     *
+     *
If the popup is already open or the popup skin part does not exist,
      *  this method does nothing.

      *
      *  @langversion 3.0
      *  @playerversion AIR 3
      *  @productversion Flex 4.6
      */
-    public function showFirstViewNavigatorInCallout(owner:DisplayObjectContainer):void
-    {
-        showNavigatorAtIndexInCallout(0, owner);
-    }
-
-    /**
-     *  Hides the navigator callout if its open.  The navigator that was
-     *  displayed in the callout is reparented as a child of this
+    public function showFirstViewNavigatorInPopUp(owner:DisplayObjectContainer):void
+    {
+        showNavigatorAtIndexInPopUp(0, owner);
+    }
+
+    /**
+     *  Hides the navigator popup if its open.  The navigator that was
+     *  displayed in the popup is reparented as a child of this
      *  SplitViewNavigator.
      *
      *
This method is automatically called if the user touches outside
-     *  of the callout when it is visible.  The navigator inside the callout
-     *  is hidden after the callout closes.

-     *
-     *
After closing the callout, the navigator that was shown remains
+     *  of the popup when it is visible.  The navigator inside the popup
+     *  is hidden after the popup closes.

+     *
+     *
After closing the popup, the navigator that was shown remains
      *  invisible unless autoHideFirstViewNavigator is true
      *  and the device orientation is landscape.
      *  In all other cases, the visibility of the first navigator needs to be set
@@ -380,14 +383,14 @@
      *  @playerversion AIR 3
      *  @productversion Flex 4.6
      */
-    public function hideViewNavigatorCallout():void
-    {
-        if (!viewNavigatorCallout|| !viewNavigatorCallout.isOpen)
+    public function hideViewNavigatorPopUp():void
+    {
+        if (!viewNavigatorPopUp|| !viewNavigatorPopUp.isOpen)
             return;

-        viewNavigatorCallout.addEventListener(PopUpEvent.CLOSE, navigatorCallout_closeHandler);
-        viewNavigatorCallout.close(true);
-        viewNavigatorCallout.removeEventListener('mouseDownOutside', navigatorCallout_mouseDownOutsideHandler);
+        viewNavigatorPopUp.addEventListener(PopUpEvent.CLOSE, navigatorPopUp_closeHandler);
+        viewNavigatorPopUp.close(true);
+        viewNavigatorPopUp.removeEventListener('mouseDownOutside', navigatorPopUp_mouseDownOutsideHandler);
     }

     //--------------------------------------------------------------------------
@@ -398,62 +401,62 @@

     /**
      *  @private
-     *  Shows the navigator at the specified index in the callout component.
-     */
-    mx_internal function showNavigatorAtIndexInCallout(index:int, owner:DisplayObjectContainer):void
-    {
-        // TODO (chiedozi): Consider replacing the navigator in the callout if
+     *  Shows the navigator at the specified index in the popup component.
+     */
+    mx_internal function showNavigatorAtIndexInPopUp(index:int, owner:DisplayObjectContainer):void
+    {
+        // TODO (chiedozi): Consider replacing the navigator in the popup if
         // it is already open.
-        if (index >= numElements || !viewNavigatorCallout|| viewNavigatorCallout.isOpen)
+        if (index >= numElements || !viewNavigatorPopUp|| viewNavigatorPopUp.isOpen)
             return;

-        _calloutNavigatorIndex = index;
-        _calloutNavigator = getElementAt(index) as ViewNavigatorBase;
-
-        viewNavigatorCallout.addEventListener('mouseDownOutside', navigatorCallout_mouseDownOutsideHandler, false, 0, true);
-        viewNavigatorCallout.addElement(_calloutNavigator);
+        _popUpNavigatorIndex = index;
+        _popUpNavigator = getElementAt(index) as ViewNavigatorBase;
+
+        viewNavigatorPopUp.addEventListener('mouseDownOutside', navigatorPopUp_mouseDownOutsideHandler, false, 0, true);
+        viewNavigatorPopUp.addElement(_popUpNavigator);

         // Make sure the first navigator is visible
-        _calloutNavigator.visible = true;
-
-        // Open the callout
-        viewNavigatorCallout.open(owner, true);
-    }
-
-    /**
-     *  @private
-     */
-    private function navigatorCallout_closeHandler(event:PopUpEvent):void
-    {
-        viewNavigatorCallout.removeEventListener(PopUpEvent.CLOSE, navigatorCallout_closeHandler);
-
-        if (_calloutNavigator)
-            restoreNavigatorInCallout();
-
-        // When an orientation change occurs, the callout's visibility may be set to false.
+        _popUpNavigator.visible = true;
+
+        // Open the popup
+        viewNavigatorPopUp.open(owner, true);
+    }
+
+    /**
+     *  @private
+     */
+    private function navigatorPopUp_closeHandler(event:PopUpEvent):void
+    {
+        viewNavigatorPopUp.removeEventListener(PopUpEvent.CLOSE, navigatorPopUp_closeHandler);
+
+        if (_popUpNavigator)
+            restoreNavigatorInPopUp();
+
+        // When an orientation change occurs, the popup's visibility may be set to false.
         // Set it back to true so that it is visible the next time it is opened.
-        viewNavigatorCallout.visible = true;
-    }
-
-    /**
-     *  @private
-     */
-    private function restoreNavigatorInCallout():void
+        viewNavigatorPopUp.visible = true;
+    }
+
+    /**
+     *  @private
+     */
+    private function restoreNavigatorInPopUp():void
     {
         // Restore navigator parent
-        addElementAt(_calloutNavigator, _calloutNavigatorIndex);
-
-        if (autoHideFirstViewNavigator && _calloutNavigatorIndex == 0)
+        addElementAt(_popUpNavigator, _popUpNavigatorIndex);
+
+        if (autoHideFirstViewNavigator && _popUpNavigatorIndex == 0)
         {
             toggleFirstNavigatorVisibility();
         }
         else
         {
-            _calloutNavigator.visible = false;
-        }
-
-        _calloutNavigator = null;
-        _calloutNavigatorIndex = -1;
+            _popUpNavigator.visible = false;
+        }
+
+        _popUpNavigator = null;
+        _popUpNavigatorIndex = -1;
     }

     /**
@@ -472,7 +475,7 @@
      */
     private function elementRemoveHandler(event:ElementExistenceEvent):void
     {
-        if (event.element != _calloutNavigator)
+        if (event.element != _popUpNavigator)
         {
             var navigator:ViewNavigatorBase = event.element as ViewNavigatorBase;

@@ -499,17 +502,17 @@

         if (autoHideFirstViewNavigator)
         {
-            // The navigator in the callout needs to be immediately reparented
+            // The navigator in the popup needs to be immediately reparented
             // when the orientation changes since we don't provide orientation
             // effects.  Because of this, we don't want to see any close
-            // transitions to play on the callout.  Since the transitions are
+            // transitions to play on the popup.  Since the transitions are
             // defined on the skin, there is no way to intercept them, so instead
-            // the callout is hidden.  restoreNavigatorInCallout() will call
+            // the popup is hidden.  restoreNavigatorInPopUp() will call
             // toggleFirstNavigatorVisibility() if needed.
-            if (_calloutNavigator)
+            if (_popUpNavigator)
             {
-                restoreNavigatorInCallout();
-                viewNavigatorCallout.visible = false;
+                restoreNavigatorInPopUp();
+                viewNavigatorPopUp.visible = false;
             }
             else
             {
@@ -517,8 +520,8 @@
             }
         }

-        // The navigator callout is always hidden if the orientation changes
-        hideViewNavigatorCallout();
+        // The navigator popup is always hidden if the orientation changes
+        hideViewNavigatorPopUp();
     }

     /**
@@ -545,9 +548,9 @@
     /**
      *  @private
      */
-    private function navigatorCallout_mouseDownOutsideHandler(event:Event):void
-    {
-        hideViewNavigatorCallout();
+    private function navigatorPopUp_mouseDownOutsideHandler(event:Event):void
+    {
+        hideViewNavigatorPopUp();
     }

     /**
@@ -584,8 +587,8 @@
     {
         var navigator:ViewNavigatorBase = event.target as ViewNavigatorBase;

-        if (event.type == FlexEvent.HIDE && navigator == _calloutNavigator)
-            hideViewNavigatorCallout();
+        if (event.type == FlexEvent.HIDE && navigator == _popUpNavigator)
+            hideViewNavigatorPopUp();

         navigator.includeInLayout = navigator.visible;
     }
@@ -683,13 +686,13 @@
      */
     override public function validateNow():void
     {
-        // If a navigator is currently inside a callout, force a validation on it as well.
+        // If a navigator is currently inside a popup, force a validation on it as well.
         // This was added because ViewNavigator will call validateNow on its parentNavigator
-        // when preparing to do a view transition.  Since the callout navigator is no longer
-        // a child of this SplitViewNavigator, the navigator in the callout isn't validated
+        // when preparing to do a view transition.  Since the popup navigator is no longer
+        // a child of this SplitViewNavigator, the navigator in the popup isn't validated
         // as expected.
-        if (_calloutNavigatorIndex != -1)
-            _calloutNavigator.validateNow();
+        if (_popUpNavigatorIndex != -1)
+            _popUpNavigator.validateNow();

         super.validateNow();
     }


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

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

 package spark.skins.mobile
 {


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

--- frameworks/projects/spark/src/spark/components/supportClasses/ScrollerLayout.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/ScrollerLayout.as
@@ -1,12 +1,3 @@
-////////////////////////////////////////////////////////////////////////////////
-//  ADOBE SYSTEMS INCORPORATED
-//  Copyright 2008 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


Transferred from the Adobe Open Source Subversion Repository

Revision: 5463
Author:   hmuller@adobe.com
Date:     2009-03-20T18:52:47.717993Z

Log Message:
-----------
Added ASDoc for FxScroller about the unconditional use of FxScrollerLayout.   Fixed a mistake in FxScrollerLayout::measure().

QE Notes:
Doc Notes:
Bugs: sdk-19555
Reviewer: Ryan

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxScrollerLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxScroller.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxScrollerSkin.mxml</path>

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

--- frameworks/projects/spark/src/spark/components/supportClasses/ScrollerLayout.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/ScrollerLayout.as
@@ -24,7 +24,11 @@
 import mx.components.baseClasses.GroupBase;
 import mx.components.Skin;

-
+[ExcludeClass]
+
+/**
+ *  @private
+ */
 internal class FxScrollerLayout extends LayoutBase
 {
     public function FxScrollerLayout()
@@ -65,6 +69,19 @@
         if (!scroller)
             return;

+        var measuredW:Number = 0;
+        var measuredH:Number = 0;
+        var minW:Number = 0;
+        var minH:Number = 0;
+
+        var viewport:IViewport = scroller.viewport;
+        if (viewport)
+        {
+            var viewportElt:ILayoutElement = LayoutElementFor(viewport);
+            measuredW = viewportElt.getPreferredBoundsWidth();
+            measuredH = viewportElt.getPreferredBoundsHeight();
+        }
+
         var hsb:FxScrollBar = scroller.horizontalScrollBar;
         var showHSB:Boolean = false;
         switch(scroller.horizontalScrollPolicy) {
@@ -72,7 +89,7 @@
                 if (hsb) showHSB = true;
                 break;
             case ScrollPolicy.AUTO:
-                if (hsb) showHSB = hsb.visible;
+                if (hsb) showHSB = hsb.visible;
                 break;
         }

@@ -83,21 +100,8 @@
                 if (vsb) showVSB = true;
                 break;
             case ScrollPolicy.AUTO:
-                if (vsb) showVSB = vsb.visible;
-                break;
-        }
-
-        var measuredW:Number = 0;
-        var measuredH:Number = 0;
-        var minW:Number = 0;
-        var minH:Number = 0;
-
-        var viewport:IViewport = scroller.viewport;
-        if (viewport)
-        {
-            var viewportElt:ILayoutElement = LayoutElementFor(viewport);
-            measuredW = viewportElt.getPreferredBoundsWidth();
-            measuredH = viewportElt.getPreferredBoundsHeight();
+                if (vsb) showVSB = vsb.visible;
+                break;
         }

         if (showHSB)
@@ -118,8 +122,8 @@
         var g:GroupBase = target;
         g.measuredWidth = measuredW;
         g.measuredHeight = measuredH;
-        g.minWidth = minW;
-        g.minHeight = minH;
+        g.measuredMinWidth = minW;
+        g.measuredMinHeight = minH;
     }

     /**
@@ -135,17 +139,6 @@
      *
      *  The scrollbars are made visible if the viewport's content size is
      *  bigger than the actual size.
-     *
-     *  If the visibility of either scrollbar changes we apply invalidateSize()
-     *  to the ScrollerSkin.
-     *
-     *  This causes new values for measuredWidth,Height to be computed, and
-     *  it causes the update process to be restarted.
-     *
-     *  Note also: the logic for calling updateDisplayList and then restarting
-     *  the process if the component has become invalid is in
-     *  mx.managers.LayoutManager::validateDisplayList.
-     *
      */
     override public function updateDisplayList(w:Number, h:Number):void
     {


Transferred from the Adobe Open Source Subversion Repository

Revision: 11450
Author:   dsubrama@adobe.com
Date:     2009-11-05T01:10:56.713867Z

Log Message:
-----------
Cleaning up the whitespace in these 3 files (tabs to spaces).

QE notes: No
Doc notes: No
Bugs: No
Reviewer: Me
Tests run: Checkintests
Is noteworthy for integration: No

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

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

--- frameworks/projects/spark/src/spark/primitives/supportClasses/GraphicElement.as
+++ frameworks/projects/spark/src/spark/primitives/supportClasses/GraphicElement.as
@@ -453,12 +453,12 @@
      *  Storage for the blendMode property.
      */
     private var _blendMode:String = "auto";
-
-	/**
+
+    /**
      *  @private
      */
     private var blendModeChanged:Boolean;
-	private var blendShaderChanged:Boolean;
+    private var blendShaderChanged:Boolean;
     private var blendModeExplicitlySet:Boolean = false;

     [Inspectable(category="General", enumeration="auto,add,alpha,darken,difference,erase,hardlight,invert,layer,lighten,multiply,normal,subtract,screen,overlay,colordodge,colorburn,exclusion,softlight,hue,saturation,color,luminosity", defaultValue="auto")]
@@ -478,7 +478,7 @@
      */
     public function get blendMode():String
     {
-		return _blendMode;
+        return _blendMode;
     }

     /**
@@ -517,20 +517,20 @@
         {
             _blendMode = value;

-			// If one of the non-native Flash blendModes is set,
-			// record the new value and set the appropriate
-			// blendShader on the display object.
-			if (value == "colordodge" ||
-				value =="colorburn" || value =="exclusion" ||
-				value =="softlight" || value =="hue" ||
-				value =="saturation" || value =="color"
-				|| value =="luminosity")
-				blendShaderChanged = true;
-			else
-				blendModeChanged = true;
-
-			blendModeExplicitlySet = true;
-			invalidateProperties();
+            // If one of the non-native Flash blendModes is set,
+            // record the new value and set the appropriate
+            // blendShader on the display object.
+            if (value == "colordodge" ||
+                value =="colorburn" || value =="exclusion" ||
+                value =="softlight" || value =="hue" ||
+                value =="saturation" || value =="color"
+                || value =="luminosity")
+                blendShaderChanged = true;
+            else
+                blendModeChanged = true;
+
+            blendModeExplicitlySet = true;
+            invalidateProperties();
         }
     }

@@ -1164,7 +1164,7 @@
      *
The maskType defines how the mask is applied to the GraphicElement.

      *
      *
The possible values are MaskType.CLIP, MaskType.ALPHA and
-	 *  MaskType.LUMINOSITY.

+     *  MaskType.LUMINOSITY.

      *
      *
Clip Masking

      *
@@ -1200,27 +1200,27 @@
      *
When in alpha mode, the alpha channel of any bitmap data is composited normally into the mask
      *  alpha channel, and will affect the final rendered content. This holds true for both BitmapGraphics
      *  and bitmap filled shapes and paths.

-	 *
-	 *
Luminosity Masking

      *
-	 *
A luminosity mask, sometimes called a 'soft mask', works very similarly to an alpha mask
-	 *  except that both the opacity and RGB color value of a pixel in the source content is multiplied
-	 *  by the opacity and RGB color value of the corresponding region in the mask.

+     *
Luminosity Masking

+     *
+     *
A luminosity mask, sometimes called a 'soft mask', works very similarly to an alpha mask
+     *  except that both the opacity and RGB color value of a pixel in the source content is multiplied
+     *  by the opacity and RGB color value of the corresponding region in the mask.

      *
      *
Conceptually, luminosity masking is equivalent to rendering the transformed mask and source content
      *  into separate RGBA surfaces, and multiplying the alpha channel and the RGB color value of the mask
-	 *  content into the alpha channel and RGB color value of the source content.  All of the mask content is
-	 *  rendered into its surface before compositing into the source content's surface. As a result, all FXG
-	 *  features, such as strokes, bitmap filters, and fill opacity will affect the final composited
-	 *  content.

+     *  content into the alpha channel and RGB color value of the source content.  All of the mask content is
+     *  rendered into its surface before compositing into the source content's surface. As a result, all FXG
+     *  features, such as strokes, bitmap filters, and fill opacity will affect the final composited
+     *  content.

      *
      *
Luminosity masking is not native to Flash but is common in Adobe Creative Suite tools like Adobe
-	 *  Illustrator and Adobe Photoshop. In order to accomplish the visual effect of a luminosity mask in
-	 *  Flash-rendered content, a graphic element specifying a luminosity mask actually instantiates a shader
-	 *  filter that mimics the visual look of a luminosity mask as rendered in Adobe Creative Suite tools.

-	 *
-	 *
Objects being masked by luminosity masks can set properties to control the RGB color value and
-	 *  clipping of the mask. See the luminosityInvert and luminosityClip attributes.

+     *  Illustrator and Adobe Photoshop. In order to accomplish the visual effect of a luminosity mask in
+     *  Flash-rendered content, a graphic element specifying a luminosity mask actually instantiates a shader
+     *  filter that mimics the visual look of a luminosity mask as rendered in Adobe Creative Suite tools.

+     *
+     *
Objects being masked by luminosity masks can set properties to control the RGB color value and
+     *  clipping of the mask. See the luminosityInvert and luminosityClip attributes.

      *
      *  @default MaskType.CLIP
      *
@@ -1247,7 +1247,7 @@
         invalidateProperties();
     }

-	//----------------------------------
+    //----------------------------------
     //  luminosityInvert
     //----------------------------------

@@ -1266,15 +1266,15 @@

     /**
      *  A property that controls the calculation of the RGB
-	 *  color value of a graphic element being masked by
-	 *  a luminosity mask. If true, the RGB color value of a
-	 *  pixel in the source content is inverted and multipled
-	 *  by the corresponding region in the mask. If false,
-	 *  the source content's pixel's RGB color value is used
-	 *  directly.
-	 *
-	 *  @default false
-	 *  @see #maskType
+     *  color value of a graphic element being masked by
+     *  a luminosity mask. If true, the RGB color value of a
+     *  pixel in the source content is inverted and multipled
+     *  by the corresponding region in the mask. If false,
+     *  the source content's pixel's RGB color value is used
+     *  directly.
+     *
+     *  @default false
+     *  @see #maskType
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
@@ -1291,14 +1291,14 @@
      */
     public function set luminosityInvert(value:Boolean):void
     {
-    	if (_luminosityInvert == value)
+        if (_luminosityInvert == value)
             return;

         _luminosityInvert = value;
-		luminositySettingsChanged = true;
-    }
-
-	//----------------------------------
+        luminositySettingsChanged = true;
+    }
+
+    //----------------------------------
     //  luminosityClip
     //----------------------------------

@@ -1312,13 +1312,13 @@

     /**
      *  A property that controls whether the luminosity
-	 *  mask clips the masked content. This property can
-	 *  only have an effect if the graphic element has a
-	 *  mask applied to it that is of type
-	 *  MaskType.LUMINOSITY.
-	 *
-	 *  @default false
-	 *  @see #maskType
+     *  mask clips the masked content. This property can
+     *  only have an effect if the graphic element has a
+     *  mask applied to it that is of type
+     *  MaskType.LUMINOSITY.
+     *
+     *  @default false
+     *  @see #maskType
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
@@ -1335,11 +1335,11 @@
      */
     public function set luminosityClip(value:Boolean):void
     {
-    	if (_luminosityClip == value)
+        if (_luminosityClip == value)
             return;

         _luminosityClip = value;
-		luminositySettingsChanged = true;
+        luminositySettingsChanged = true;
     }

     //----------------------------------
@@ -3160,7 +3160,7 @@
     /**
      *  @private
      *  Enables clipping, alpha or luminosity, depending on the
-	 *  type of mask being applied.
+     *  type of mask being applied.
      */
     mx_internal function applyMaskType():void
     {
@@ -3180,45 +3180,45 @@
                 //notifyElementLayerChanged(); // Trigger recreation of the layers
                 drawnDisplayObject.cacheAsBitmap = true;
             }
-			else if (_maskType == MaskType.LUMINOSITY)
-			{
-				_mask.cacheAsBitmap = true;
-
-				// Create the shader wrapper class which wraps the pixel bender filter
-				var luminosityMaskShader:LuminosityMaskShader = new LuminosityMaskShader();
-
-				// Sets up the shader's mode property based on
-				// whether the luminosityClip and
-				// luminosityInvert properties are on or off.
-				luminosityMaskShader.mode = calculateLuminositySettings();
-
-				// Create the shader filter
-				var shaderFilter:ShaderFilter = new ShaderFilter(luminosityMaskShader);
-
-				// Apply the shader filter to the mask
-				_mask.filters = [shaderFilter];
-			}
+            else if (_maskType == MaskType.LUMINOSITY)
+            {
+                _mask.cacheAsBitmap = true;
+
+                // Create the shader wrapper class which wraps the pixel bender filter
+                var luminosityMaskShader:LuminosityMaskShader = new LuminosityMaskShader();
+
+                // Sets up the shader's mode property based on
+                // whether the luminosityClip and
+                // luminosityInvert properties are on or off.
+                luminosityMaskShader.mode = calculateLuminositySettings();
+
+                // Create the shader filter
+                var shaderFilter:ShaderFilter = new ShaderFilter(luminosityMaskShader);
+
+                // Apply the shader filter to the mask
+                _mask.filters = [shaderFilter];
+            }
         }
     }
-
-	/**
-	 *  @private
-	 *  Calculates the luminosity mask shader's mode property which
-	 *  determines how the shader is drawn.
-	 */
-	private function calculateLuminositySettings():int
-	{
-		var mode:int = -1;
-		if (luminosityClip && !luminosityInvert)
-			mode = 0;
-		if (luminosityClip && luminosityInvert)
-			mode = 1;
-		if (!luminosityClip && !luminosityInvert)
-			mode = 2;
-		if (!luminosityClip && luminosityInvert)
-			mode = 3;
-		return mode;
-	}
+
+    /**
+     *  @private
+     *  Calculates the luminosity mask shader's mode property which
+     *  determines how the shader is drawn.
+     */
+    private function calculateLuminositySettings():int
+    {
+        var mode:int = -1;
+        if (luminosityClip && !luminosityInvert)
+            mode = 0;
+        if (luminosityClip && luminosityInvert)
+            mode = 1;
+        if (!luminosityClip && !luminosityInvert)
+            mode = 2;
+        if (!luminosityClip && luminosityInvert)
+            mode = 3;
+        return mode;
+    }

     /**
      *  @private
@@ -3491,60 +3491,60 @@
                 else if (_blendMode == "auto" && alpha == 1 || alpha == 0)
                     displayObject.blendMode = BlendMode.NORMAL;
                 else
-                    displayObject.blendMode = _blendMode;
+                    displayObject.blendMode = _blendMode;
             }
-
-			if (blendShaderChanged || displayObjectChanged)
-			{
-				// The graphic element's blendMode was set to a non-Flash
-				// blendMode. We mimic the look by instantiating the
-				// appropriate shader class and setting the blendShader
-				// property on the displayObject.
-				blendShaderChanged = false;
-				switch(_blendMode)
-				{
-					case "color":
-					{
-						displayObject.blendShader = new ColorShader();
-						break;
-					}
-					case "colordodge":
-					{
-						displayObject.blendShader = new ColorDodgeShader();
-						break;
-					}
-					case "colorburn":
-					{
-						displayObject.blendShader = new ColorBurnShader();
-						break;
-					}
-					case "exclusion":
-					{
-						displayObject.blendShader = new ExclusionShader();
-						break;
-					}
-					case "hue":
-					{
-						displayObject.blendShader = new HueShader();
-						break;
-					}
-					case "luminosity":
-					{
-						displayObject.blendShader = new LuminosityShader();
-						break;
-					}
-					case "saturation":
-					{
-						displayObject.blendShader = new SaturationShader();
-						break;
-					}
-					case "softlight":
-					{
-						displayObject.blendShader = new SoftLightShader();
-						break;
-					}
-				}
-			}
+
+            if (blendShaderChanged || displayObjectChanged)
+            {
+                // The graphic element's blendMode was set to a non-Flash
+                // blendMode. We mimic the look by instantiating the
+                // appropriate shader class and setting the blendShader
+                // property on the displayObject.
+                blendShaderChanged = false;
+                switch(_blendMode)
+                {
+                    case "color":
+                    {
+                        displayObject.blendShader = new ColorShader();
+                        break;
+                    }
+                    case "colordodge":
+                    {
+                        displayObject.blendShader = new ColorDodgeShader();
+                        break;
+                    }
+                    case "colorburn":
+                    {
+                        displayObject.blendShader = new ColorBurnShader();
+                        break;
+                    }
+                    case "exclusion":
+                    {
+                        displayObject.blendShader = new ExclusionShader();
+                        break;
+                    }
+                    case "hue":
+                    {
+                        displayObject.blendShader = new HueShader();
+                        break;
+                    }
+                    case "luminosity":
+                    {
+                        displayObject.blendShader = new LuminosityShader();
+                        break;
+                    }
+                    case "saturation":
+                    {
+                        displayObject.blendShader = new SaturationShader();
+                        break;
+                    }
+                    case "softlight":
+                    {
+                        displayObject.blendShader = new SoftLightShader();
+                        break;
+                    }
+                }
+            }

             if (filtersChanged || displayObjectChanged)
             {
@@ -3609,31 +3609,31 @@
                     drawnDisplayObject.mask = _mask;
                 }
             }
-
-			if (luminositySettingsChanged)
-			{
-				luminositySettingsChanged = false;
-
-				if (_mask && _maskType == MaskType.LUMINOSITY && _mask.filters.length > 0)
-				{
-					// Grab the shader filter and clear out the mask
-					var shaderFilter:ShaderFilter = _mask.filters[0];
-
-					if (shaderFilter && (shaderFilter.shader is LuminosityMaskShader))
-					{
-						// Clear out the mask's filters because we could potentially
-						// have a rendering change by setting the mode dynamically
-						// while the filters have been set.
-						_mask.filters = [];
-
-						// Reset the mode property
-						LuminosityMaskShader(shaderFilter.shader).mode = calculateLuminositySettings();
-
-						// Re-apply the filter to the mask
-						_mask.filters = [shaderFilter];
-					}
-				}
-			}
+
+            if (luminositySettingsChanged)
+            {
+                luminositySettingsChanged = false;
+
+                if (_mask && _maskType == MaskType.LUMINOSITY && _mask.filters.length > 0)
+                {
+                    // Grab the shader filter and clear out the mask
+                    var shaderFilter:ShaderFilter = _mask.filters[0];
+
+                    if (shaderFilter && (shaderFilter.shader is LuminosityMaskShader))
+                    {
+                        // Clear out the mask's filters because we could potentially
+                        // have a rendering change by setting the mode dynamically
+                        // while the filters have been set.
+                        _mask.filters = [];
+
+                        // Reset the mode property
+                        LuminosityMaskShader(shaderFilter.shader).mode = calculateLuminositySettings();
+
+                        // Re-apply the filter to the mask
+                        _mask.filters = [shaderFilter];
+                    }
+                }
+            }

             if (maskTypeChanged || displayObjectChanged)
             {
@@ -4263,15 +4263,15 @@
                                         height:Number,
                                         postLayoutTransform:Boolean = true):void
     {
-		if (!isNaN(width) || !isNaN(height))
-		{
-	        var strokeExtents:Rectangle = getStrokeExtents(postLayoutTransform);
-
-			if (!isNaN(width))
-	           width -= strokeExtents.width;
-	        if (!isNaN(height))
-	           height -= strokeExtents.height;
-		}
+        if (!isNaN(width) || !isNaN(height))
+        {
+            var strokeExtents:Rectangle = getStrokeExtents(postLayoutTransform);
+
+            if (!isNaN(width))
+               width -= strokeExtents.width;
+            if (!isNaN(height))
+               height -= strokeExtents.height;
+        }

         // Calculate the width and height pre-transform:
         var m:Matrix;
@@ -4477,15 +4477,15 @@

     /**
      *  Returns the amount of pixels occupied by the stroke on each side
-	 *  of the element's bounds.
-	 *
-	 *  @param postLayoutTransform - if true, the stroke extents are calculated
-	 *  in parent coordinate space (after applying the element's transformations).
-	 *
-	 *  @return Rectangle of the stroke extents. The rectangle's left,
-	 *  right, top and bottom properties
-	 *  represent the stroke extent for the respective side of the element's
-	 *  bounding box.
+     *  of the element's bounds.
+     *
+     *  @param postLayoutTransform - if true, the stroke extents are calculated
+     *  in parent coordinate space (after applying the element's transformations).
+     *
+     *  @return Rectangle of the stroke extents. The rectangle's left,
+     *  right, top and bottom properties
+     *  represent the stroke extent for the respective side of the element's
+     *  bounding box.
      *
      *  @langversion 3.0
      *  @playerversion Flash 10


set size on bitmap if needed

set size on bitmap if needed

--- frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/ImageView.as
+++ frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/ImageView.as
@@ -107,8 +107,13 @@

             if (isNaN(host.explicitWidth) && isNaN(host.percentWidth))
                 host.dispatchEvent(new Event("widthChanged"));
+            else
+                bitmap.width = UIBase(_strand).width;
+
             if (isNaN(host.explicitHeight) && isNaN(host.percentHeight))
                 host.dispatchEvent(new Event("heightChanged"));
+            else
+                bitmap.height = UIBase(_strand).height;

 		}


Transferred from the Adobe Open Source Subversion Repository

Revision: 1968
Author:   jimurphy@adobe.com
Date:     2008-06-05T15:31:56.961691Z

Log Message:
-----------
Merge 3.0.x revisions [1940,1954] -> trunk

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

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

--- frameworks/projects/airframework/src/mx/controls/FileSystemHistoryButton.as
+++ frameworks/projects/airframework/src/mx/controls/FileSystemHistoryButton.as
@@ -104,7 +104,7 @@
  *  @see mx.controls.FileSystemList
  *  @see mx.controls.FileSystemDataGrid
  *
- *  @productversion Apollo 1.0
+ *  @playerversion AIR 1.1
  */
 public class FileSystemHistoryButton extends PopUpButton
 {


Transferred from the Adobe Open Source Subversion Repository

Revision: 6173
Author:   dsubrama@adobe.com
Date:     2009-04-20T22:09:26.709924Z

Log Message:
-----------
SDK-20210

As per ARB's request, the loosely typed property 'fxComponent' has been removed from Skin. To now get a reference back to a component from its skin, you can use the hostComponent property which is set if the skin has the [HostComponent] metadata declared. With this metadata, the hostComponent property ends up being a strongly typed reference back to the owning component.

More information can be found on the ARB page: http://opensource.adobe.com/wiki/display/flexsdk/Removing+fxComponent+from+Skin

As part of this change, I've added a new skin for the skinnable Window component.

Reviewer: Glenn
Checkintests: Pass
Doc: Yes - removed a property
QA: Yes - if any tests rely on fxComponent, they will have to be changed.

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/defaults.css</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/ScrollerLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/Skin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/spark/skins/default/WindowedApplicationSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/spark/components/windowClasses/TitleBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/spark/skins/default/MacTitleBarSkin.mxml</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/airframework/src/spark/skins/default/WindowSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/SkinnableComponent.as</path>

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

--- frameworks/projects/airspark/src/spark/components/windowClasses/TitleBar.as
+++ frameworks/projects/airspark/src/spark/components/windowClasses/TitleBar.as
@@ -427,7 +427,7 @@
      *  Button component could return the String "up", "down", "over", or "disabled"
      *  to specify the state.
      *
-     *
A subclass of FxComponent must override this method to return a value.

+     *
A subclass of SkinnableComponent must override this method to return a value.

      *
      *  @return A string specifying the name of the state to apply to the skin.
      *


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

--- frameworks/projects/wireframe/src/mx/skins/wireframe/ContainerBorderSkin.as
+++ frameworks/projects/wireframe/src/mx/skins/wireframe/ContainerBorderSkin.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.skins.wireframe {


report isVisible before loading animation complete

(fixes a race condition where initBG can be called multiple times before the loading animation completes)

--- src/AIR/ChildBrowser/src/blackberry/polarmobile/childbrowser/ChildBrowser.as
+++ src/AIR/ChildBrowser/src/blackberry/polarmobile/childbrowser/ChildBrowser.as
@@ -74,11 +74,12 @@
             webViewUI.y = webView.stage.stageHeight;
             webView.stage.addChild(webViewUI);

+            self.isVisible = true;
+
             function loaded(){
               setTimeout(function(){
                 childWebView.stage = webView.stage;
                 childWebView.zOrder = 1;
-                self.isVisible = true;
               }, 1000);
             }


updated ASDoc for ISceneNode.added and ISceneNode.removed

--- src/aerys/minko/scene/node/ISceneNode.as
+++ src/aerys/minko/scene/node/ISceneNode.as
@@ -78,8 +78,8 @@
 		function get worldToLocal() : Matrix4x4;

 		/**
-		 * The signal executed when the node is added to a parent scene node.
-		 * Callbacks functions must accept the following arguments:
+		 * The signal executed when the node (or one of its ancestors) is added to a parent scene
+         * node. Callbacks functions must accept the following arguments:
 		 *

 		 *
node : ISceneNode, the scene node itself

 		 *
ancestor : Group, the ancestor the scene node has been added to

@@ -92,8 +92,8 @@
 		function get addedToScene() : Signal;

 		/**
-		 * The signal executed when the node is removed from a parent scene node.
-		 * Callbacks functions must accept the following arguments:
+		 * The signal executed when the node (or one of its ancestors) is removed from a parent
+         * scene node. Callbacks functions must accept the following arguments:
 		 *

 		 *
node : ISceneNode, the scene node itself

 		 *
ancestor : Group, the ancestor the scene node has been removed from


Allow the handleCOMMAND functions to have no arg if the command's arg is null.

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

--- src/as/com/threerings/util/Controller.as
+++ src/as/com/threerings/util/Controller.as
@@ -46,7 +46,18 @@
             var fn :Function = (this["handle" + cmd] as Function);
             if (fn != null) {
                 try {
-                    fn(arg);
+                    try {
+                        // try calling it with the arg
+                        fn(arg);
+                    } catch (ae :ArgumentError) {
+                        if (arg == null) {
+                            // try calling it without the arg
+                            fn();
+                        } else {
+                            throw ae;
+                        }
+                    }
+
                 } catch (e :Error) {
                     var log :Log = Log.getLog(this);
                     log.warning("Error handling controller " +


- Added a primitive formatNumber()
- Handle commas in parseNumber()

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

--- src/as/com/threerings/util/StringUtil.as
+++ src/as/com/threerings/util/StringUtil.as
@@ -137,6 +137,31 @@
     }

     /**
+     * Format the specified number, nicely, with commas.
+     * TODO: format specifyer, locale handling, etc. We'll probably move this into a
+     * NumberFormat-style class.
+     */
+    public static function formatNumber (n :Number) :String
+    {
+        var postfix :String = "";
+        var s :String = n.toString(); // use standard to-stringing
+
+        // move any fractional portion to the postfix
+        const dex :int = s.lastIndexOf(".");
+        if (dex != -1) {
+            postfix = s.substring(dex);
+            s = s.substring(0, dex);
+        }
+
+        // hackily add commas
+        while (s.length > 3) {
+            postfix = "," + s.substring(s.length - 3) + postfix;
+            s = s.substring(0, s.length - 3);
+        }
+        return s + postfix;
+    }
+
+    /**
      * Parse a Number from a String, throwing an ArgumentError if there are any
      * invalid characters.
      *
@@ -146,8 +171,6 @@
      */
     public static function parseNumber (str :String) :Number
     {
-        var originalString :String = str;
-
         if (str == null) {
             throw new ArgumentError("Cannot parseNumber(null)");
         }
@@ -161,6 +184,10 @@
             return NaN;
         }

+        const originalString :String = str;
+        str = str.replace(",", "");
+        const noCommas :String = str;
+
         // validate all characters before the "e"
         str = validateDecimal(str, true, true);

@@ -175,7 +202,7 @@
         }

         // let Flash do the actual conversion
-        return parseFloat(originalString);
+        return parseFloat(noCommas);
     }

     /**
@@ -541,7 +568,8 @@
     /**
      * Internal helper function for parseNumber.
      */
-    protected static function validateDecimal (str :String, allowDot :Boolean, allowTrailingE :Boolean) :String
+    protected static function validateDecimal (
+        str :String, allowDot :Boolean, allowTrailingE :Boolean) :String
     {
         // skip the leading minus
         if (str.charAt(0) == "-") {


can't use % to find child because % messes up html side

--- frameworks/as/projects/FlexJSJX/src/org/apache/flex/html/beads/layouts/OneFlexibleChildVerticalLayout.as
+++ frameworks/as/projects/FlexJSJX/src/org/apache/flex/html/beads/layouts/OneFlexibleChildVerticalLayout.as
@@ -56,6 +56,17 @@
 		{
 		}

+
+        /**
+         *  The flexible child
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10.2
+         *  @playerversion AIR 2.6
+         *  @productversion FlexJS 0.0
+         */
+        public var flexibleChild:IUIBase;
+
         // the strand/host container is also an ILayoutChild because
         // can have its size dictated by the host's parent which is
         // important to know for layout optimization
@@ -136,7 +147,7 @@
             for (var i:int = 0; i < n; i++)
             {
                 var child:IUIBase = contentView.getElementAt(i) as IUIBase;
-                if (child is ILayoutChild && !isNaN(ILayoutChild(child).percentHeight))
+                if (child == flexibleChild)
                 {
                     flexChildIndex = i;
                     break;
@@ -207,7 +218,7 @@
                 horizontalMargins[i] = { marginLeft: ml, marginRight: mr, halign: halign };
             }

-            for (i = n - 1; i >= flexChildIndex; i--)
+            for (i = n - 1; i > flexChildIndex; i--)
 			{
 				child = contentView.getElementAt(i) as IUIBase;
 				margin = ValuesManager.valuesImpl.getValue(child, "margin");
@@ -404,7 +415,12 @@
             var pl:Number = Number(paddingLeft);
             var pt:Number = Number(paddingTop);
             var pr:Number = Number(paddingRight);
-
+            if (isNaN(pl))
+                pl = 0;
+            if (isNaN(pr))
+                pr = 0;
+            if (isNaN(pt))
+                pt = 0;
             return {paddingLeft:pl, paddingTop:pt, paddingRight:pr};
         }


Added streamStopped event

Added streamStopped event

--- src/Player.as
+++ src/Player.as
@@ -31,6 +31,7 @@
   public class Player extends Sprite {
     private static const EVENT_STREAM_STARTED:String  = "streamStarted";
     private static const EVENT_STREAM_PAUSED:String  = "streamPaused";
+    private static const EVENT_STREAM_STOPPED:String  = "streamStopped";
     private static const EVENT_FULLSCREEN_ENTERED:String  = "fullscreenEntered";
     private static const EVENT_FULLSCREEN_EXITED:String  = "fullscreenExited";

@@ -225,7 +226,6 @@
       urlParsed = null;
       ns = null;
       client.stop();
-      this.callAPI('streamStopped');
       this.currentState = "stopped";
       this.streamHasAudio = false;
       this.streamHasVideo = false;
@@ -343,6 +343,7 @@
     private function onStopped(ev:ClientEvent):void {
       video.clear();
       client = null;
+      this.callAPI(EVENT_STREAM_STOPPED);
       if (urlParsed) {
         start();
       }


Transferred from the Adobe Open Source Subversion Repository

Revision: 14565
Author:   chaase@adobe.com
Date:     2010-03-04T01:17:59.106140Z

Log Message:
-----------
Merge revision 14564 from 4.x to trunk.

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

Modified Paths:
--------------
<path kind="dir" action="M">/flex/sdk/trunk</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/ListBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/effectClasses/MaskEffectInstance.as</path>

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

--- frameworks/projects/framework/src/mx/effects/effectClasses/MaskEffectInstance.as
+++ frameworks/projects/framework/src/mx/effects/effectClasses/MaskEffectInstance.as
@@ -654,6 +654,7 @@
 	 */
 	override public function stop():void
 	{
+        EffectManager.endVectorEffect(IUIComponent(target));
 		stoppedEarly = true;
 		super.stop();


Transferred from the Adobe Open Source Subversion Repository

Revision: 17891
Author:   smgilson@adobe.com
Date:     2010-09-28T11:59:19.704021Z

Log Message:
-----------
Fix ASDoc comments to add closing </p> tags

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

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

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

--- frameworks/projects/mobilecomponents/src/spark/components/TabbedViewNavigator.as
+++ frameworks/projects/mobilecomponents/src/spark/components/TabbedViewNavigator.as
@@ -401,7 +401,7 @@
      *  @productversion Flex 4.5
      */
     public function hideTabBar(animate:Boolean = true):void
-    {
+    {
         if (!tabBar)
             return;

@@ -413,10 +413,10 @@
     }

     /**
-     *  Shows the tab bar of the navigtor
+     *  Shows the tab bar of the navigator
      *
      *  @param animate Flag indicating whether a hide effect should play.
-     *  This property is code>true by default.
+     *  This property is true by default.
      *
      *  @langversion 3.0
      *  @playerversion Flash 10.1
@@ -979,10 +979,10 @@
     {
         if (event.property == "tabBarVisible")
         {
-    		if (event.newValue)
-    			showTabBar();
-    		else
-    			hideTabBar();
+            if (event.newValue)
+                showTabBar();
+            else
+                hideTabBar();
         }
         else if (event.property == "overlayControls")
         {


Added a check on MouseUtil.isMouseOver if the object is actually attached on the stage or not

--- src/org/openPyro/utils/MouseUtil.as
+++ src/org/openPyro/utils/MouseUtil.as
@@ -10,6 +10,7 @@
 		}

 		public static function isMouseOver(obj:DisplayObject):Boolean{
+			if(!obj.stage) return false;
 			var pt:Point = new Point(obj.stage.mouseX, obj.stage.mouseY);
 			obj.globalToLocal(pt);
 			return obj.hitTestPoint(pt.x, pt.y);


Transferred from the Adobe Open Source Subversion Repository

Revision: 4449
Author:   egeorgie@adobe.com
Date:     2009-01-08T21:24:44.060483Z

Log Message:
-----------
Fix bug http://bugs.adobe.com/jira/browse/SDK-18423 Setting enabled=false on any Spark container does not set its children to be disabled
Fix:
1. Make sure the mouseShield is on top of the display list
2. Add a mouseShield to FxTextBase
3. Update the FxContainer skin with alpha.disabled=0.5

QE Notes: Add tests for these cases
Doc Notes: None
Bugs: SDK-18423
Reviewer: Glenn, Ryan
tests: checkintests, mustella (FxContainer, FxTextArea)

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxContainerSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/baseClasses/FxContainerBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/baseClasses/FxTextBase.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/utils/MouseShieldUtil.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UIComponent.as</path>

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

--- frameworks/projects/spark/src/spark/components/supportClasses/SkinnableTextBase.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/SkinnableTextBase.as
@@ -23,6 +23,7 @@
 import mx.events.FlexEvent;
 import mx.events.TextOperationEvent;
 import mx.managers.IFocusManagerComponent;
+import mx.utils.MouseShieldUtil;

 import flashx.textLayout.events.SelectionEvent;
 import flashx.textLayout.formats.LineBreak;
@@ -91,6 +92,12 @@
      */
     mx_internal var parentDrawsFocus:Boolean = false;

+    /**
+     *  @private
+     *  Mouse shield that is put up when this component is disabled.
+     */
+    private var mouseShield:DisplayObject;
+
     //--------------------------------------------------------------------------
     //
     //  Overridden properties: UIComponent
@@ -118,6 +125,10 @@
         enabledChanged = true;

         invalidateSkinState();
+
+        // We update the mouseShield that prevents clicks to propagate to
+        // children in our updateDisplayList.
+        invalidateDisplayList();
     }

     //----------------------------------
@@ -592,6 +603,12 @@
             textView.text = mx_internal::_text;
             mx_internal::textChanged = false;
         }
+    }
+
+    override protected function updateDisplayList(width:Number, height:Number):void
+    {
+        super.updateDisplayList(width, height);
+        mouseShield = MouseShieldUtil.updateMouseShield(this, mouseShield);
     }

     /**
@@ -740,7 +757,7 @@

         textView.appendText(text);
     }
-
+
     //--------------------------------------------------------------------------
     //
     //  Overridden event handlers


Transferred from the Adobe Open Source Subversion Repository

Revision: 7543
Author:   gosmith@adobe.com
Date:     2009-06-04T07:41:31.426059Z

Log Message:
-----------
Various changes to obscure Spark text styles.

The default for the 'dominantBaseline' style, as set in the global selector, is now "auto", as it is now in TLF, instead of "roman". In TLF, a value of "auto" means "ideographicCenter" if the 'locale' is Japanese (i.e., starts with "ja") or Chinese (i.e., starts with "zh"), and "roman" otherwise. SimpleText now implements this same logic.

The default for the 'firstBaselineOffset' style, as set in the global selector, is now "auto", as it is now in TLF, instead of "ascent". SimpleText does not support 'firstBaselineOffset'.

The default for the 'justificationRule' style, as set in the global selector, is now "auto" as it is now in TLF, instead of "space". In TLF, a value of "auto" means "eastAsian" if the 'locale' is Japanese or Chinese, and "space" otherwise. SimpleText now implements this same logic.

The default for the 'justificationStyle' style, as set in the global selector, is now "auto", as it is now in TLF, instead of "pushInKinsoku". In TLF, a value of "auto" means "pushInKinsoku" regardless of the locale. (I guess "auto" just sounds like a nicer default.) SimpleText now implements this same logic.

The default for the 'tabStops' style, as set in the global selector, is now null. Previously it was omitted from the global selector and the default value was therefore undefined.

The 'tracking' style has been removed. (The 'trackingLeft' and 'trackingRight' styles remain.) A 'tracking' attribute was defined in FXG 1.0 but FTE instead implemented trackingLeft and trackingRight properties. So when compiling FXG 1.0, the compiler will (soon) map 'tracking' to 'trackingRight', and 'tracking' will not be supported in MXML. SimpleText no longer pays any attention to a 'tracking' style.

The 'leadingModel' style can now be set to "ascentDescentUp", as in TLF. The default remains "auto".

The metadata for the 'backgroundAlpha' style in TextGraphicElement and RichEditableText no longer says theme="halo".

I also fixed some [Event] metadata and @eventType comments in RichEditableText.

Finally, RichEditableText now has an mx_internal createTextContainerManager() method. You can override this if you need to subclass our RichEditableTextContainerManager.

QE Notes: Some tests may need updating due to these changes.
Doc Notes: None
Bugs: SDK-21594
Reviewer: Carol

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/RichEditableText.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/defaults.css</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/supportClasses/TextGraphicElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/TextArea.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/styles/metadata/BasicTextLayoutFormatStyles.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/styles/metadata/AdvancedTextLayoutFormatStyles.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/TextInput.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/SimpleText.as</path>

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

--- frameworks/projects/spark/src/spark/styles/metadata/BasicInheritingTextStyles.as
+++ frameworks/projects/spark/src/spark/styles/metadata/BasicInheritingTextStyles.as
@@ -117,7 +117,7 @@
  *  @playerversion AIR 1.5
  *  @productversion Flex 4
  */
-[Style(name="fontLookup", type="String", enumeration="device,embeddedCFF,auto", inherit="yes")]
+[Style(name="fontLookup", type="String", enumeration="auto,device,embeddedCFF", inherit="yes")]

 /**
  *  @copy flashx.textLayout.formats.ITextLayoutFormat#fontSize
@@ -177,7 +177,7 @@
  *  @playerversion AIR 1.5
  *  @productversion Flex 4
  */
-[Style(name="kerning", type="String", enumeration="on,off,auto", inherit="yes")]
+[Style(name="kerning", type="String", enumeration="auto,on,off", inherit="yes")]

 /**
  *  @copy flashx.textLayout.formats.ITextLayoutFormat#ligatureLevel
@@ -187,7 +187,7 @@
  *  @playerversion AIR 1.5
  *  @productversion Flex 4
  */
-[Style(name="ligatureLevel", type="String", enumeration="common,uncommon,exotic,minimum", inherit="yes")]
+[Style(name="ligatureLevel", type="String", enumeration="common,minimum,uncommon,exotic", inherit="yes")]

 /**
  *  @copy flashx.textLayout.formats.ITextLayoutFormat#lineBreak
@@ -290,17 +290,6 @@
 [Style(name="textJustify", type="String", enumeration="interWord,distribute", inherit="yes")]

 /**
- *  Space added to the advance after each character, as a percentage of the current point size. Percentages can be negative,
- *  to bring characters closer together. The default value is 0.
- *
- *  @langversion 3.0
- *  @playerversion Flash 10
- *  @playerversion AIR 1.5
- *  @productversion Flex 4
- */
-[Style(name="tracking", type="Object", inherit="yes")]
-
-/**
  *  @copy flashx.textLayout.formats.ITextLayoutFormat#trackingLeft
  *
  *  @langversion 3.0
@@ -328,4 +317,4 @@
  *  @playerversion AIR 1.5
  *  @productversion Flex 4
  */
-[Style(name="typographicCase", type="String", enumeration="default,capsToSmallCaps,lowercase,lowercaseToSmallCaps,uppercase", inherit="yes")]
+[Style(name="typographicCase", type="String", enumeration="default,capsToSmallCaps,uppercase,lowercase,lowercaseToSmallCaps", inherit="yes")]


Transferred from the Adobe Open Source Subversion Repository

Revision: 6018
Author:   pfarland@adobe.com
Date:     2009-04-08T15:36:36.925077Z

Log Message:
-----------
API changes from PARB review of Advanced CSS additions.

Changes include:
- Fold IStyleManager3 back into IStyleManager2
- Remove CSSSelectorKind enum as it is not needed.
- Update CSSStyleDeclaration constructor to accept either a CSSSelector or legacy String selector.
- Update CSSConditionKind enum to use Strings
- Revert concept of StyleManager.addCSSStyleDeclaration() so that we continue to use the Flex 3 restriction of one CSSStyleDeclaration per unique selector String.
- Minor renames for lower level APIs such as IAdvancedStyleClient's isPseudoSelectorMatch() -> matchesCSSState(), and isTypeSelectorMatch)() -> matchesCSSType()
- Update ASDoc comment version info for APIs that were really added in Gumbo
- Add compiler warning for unqualified type selectors (e.g. when a type selector probably needs a namespace prefix).
- Add compiler warning for unresolved qualified type selector (e.g. when a type is probably missing from a manifest).

QE: I have an update for the mustella tests of programmatic creation of CSSStyleDeclaration
Doc: Yes, if we can do an ASDoc review of CSS classes in the framework it would be much appreciated.
Checkintests: Pass
mustella StyleManager/AdvancedCSS: Pass
Reviewer: Glenn

Modified Paths:
--------------
<path kind="dir" action="D">/flex/sdk/trunk/modules/fxgutils/src/java/flash</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/css/StylesContainer.java</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/StyleManagerImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/supportClasses/TextGraphicElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/CSSStyleDeclaration.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/IStyleManager2.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/StyleProtoChain.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/IStyleManager3.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/SystemManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/CSSSelector.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flash/css/StyleSelector.java</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler_en.properties</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/StyleManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/css/StyleModule.java</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/css/StyleModule.vm</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/IAdvancedStyleClient.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/CSSSelectorKind.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/CSSCondition.as</path>
<path kind="file" action="A">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/css/UnqualifiedTypeSelector.java</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flash/css/StyleCondition.java</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/gen/ClassDefLib.vm</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/StyleProxy.as</path>
<path kind="file" action="A">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/css/UnresolvedQualifiedTypeSelector.java</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/CSSConditionKind.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/spark/components/supportClasses/SkinnableComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/css/StyleDef.vm</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/ImplementationGenerator.java</path>

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

--- frameworks/projects/framework/src/mx/managers/SystemManager.as
+++ frameworks/projects/framework/src/mx/managers/SystemManager.as
@@ -2059,10 +2059,6 @@
         Singleton.registerClass("mx.styles::IStyleManager2",
             Class(getDefinitionByName("mx.styles::StyleManagerImpl")));

-        Singleton.registerClass("mx.styles::IStyleManager3",
-            Class(getDefinitionByName("mx.styles::StyleManagerImpl")));
-
-
         // The FlashVars of the SWF's HTML wrapper,
         // or the query parameters of the SWF URL,
         // can specify the ResourceManager's localeChain.


Transferred from the Adobe Open Source Subversion Repository

Revision: 2725
Author:   rfrishbe@adobe.com
Date:     2008-08-04T18:00:35.464035Z

Log Message:
-----------
When adding the new gumbo Application class in checkin 2382, in SystemManager we added code that called document.children.contains() if Application's not an IRawChildrenContainer.  However document.children doesn't exist; it should just be document.contains() rather than document.children.contains().

Also cleaned up a few imports for IRawChildrenContainer that weren't needed in list classes.

QE: Yes
Doc: No
Bugs: SDK-16274
Reviewer: Glenn

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/SystemManager.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/controls/DataGrid.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/listClasses/ListBase.as</path>

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

--- frameworks/projects/framework/src/mx/managers/SystemManager.as
+++ frameworks/projects/framework/src/mx/managers/SystemManager.as
@@ -3319,7 +3319,7 @@
 				var p:DisplayObject = DisplayObject(event.target);
 				var isApplication:Boolean = document is IRawChildrenContainer ?
 											IRawChildrenContainer(document).rawChildren.contains(p) :
-											document.children.contains(p);
+											document.contains(p);
 				while (p)
 				{
 					for (var i:int = 0; i < n; i++)


Manage RTSP Errors

Manage RTSP Errors

--- src/com/axis/rtspclient/RTSPClient.as
+++ src/com/axis/rtspclient/RTSPClient.as
@@ -216,6 +216,11 @@
         return false;
       }

+      if (200 !== parsed.code) {
+        ErrorManager.dispatchError(parsed.code);
+        return false;
+      }
+
       if (parsed.headers['content-length']) {
         if (data.bytesAvailable < parsed.headers['content-length']) {
           return false;


Unknown determining byte fix

Unknown determining byte fix

When a full RTP packet could not be extracted in the same
callback, `onData` failed to determine what type of packet
that's currently being handled because `onInterleaveData`
extracted the determining byte from the ByteArray.

To fix this, only peek the data until we know we have enough
to extract a full RTP packet.

--- src/com/axis/rtspclient/RTSPClient.as
+++ src/com/axis/rtspclient/RTSPClient.as
@@ -150,7 +150,7 @@
         /* Determining byte have already been read. This is a continuation */
       } else {
         /* Read the determining byte */
-        handle.readBytes(data, 0, 1);
+        handle.readBytes(data, data.position, 1);
       }

       switch(data[0]) {
@@ -322,19 +322,23 @@
       handle.readBytes(data, data.length);

       if (-1 == rtpLength && 0x24 === data[0]) {
-        /* This is the beginning of a new RTP package */
-        data.readByte();
-        rtpChannel = data.readByte();
-        rtpLength = data.readShort();
-      }
-
-      if (data.bytesAvailable < rtpLength) {
+        /* This is the beginning of a new RTP package. We can't read data
+           from buffer here, as we may not have enough for complete RTP packet
+           and we need to be able to determine that this is an interleaved
+           packet when `onData` is called again. */
+        rtpChannel = data[1];
+        rtpLength = data[2] << 8 | data[3];
+      }
+
+      if (data.bytesAvailable < rtpLength + 4) { /* add 4 for interleaved header */
         /* The complete RTP package is not here yet, wait for more data */
         return;
       }

+      /* Discard the interleaved header. It was extracted previously. */
+      data.readUnsignedInt();
+
       var pkgData:ByteArray = new ByteArray();
-
       data.readBytes(pkgData, 0, rtpLength);

       if (rtpChannel === 0 || rtpChannel === 2) {


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

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


Transferred from the Adobe Open Source Subversion Repository

Revision: 18625
Author:   smgilson@adobe.com
Date:     2010-11-16T20:43:37.417675Z

Log Message:
-----------
ASDoc updates for DataGrid

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

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/gridClasses/CellRegion.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/gridClasses/CellPosition.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/gridClasses/DataGridEditor.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/gridClasses/DefaultGridItemEditor.mxml</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/gridClasses/GridSelection.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/gridClasses/ComboBoxGridItemEditor.mxml</path>

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

--- frameworks/projects/spark/src/spark/components/gridClasses/DataGridEditor.as
+++ frameworks/projects/spark/src/spark/components/gridClasses/DataGridEditor.as
@@ -9,14 +9,6 @@
 //
 ////////////////////////////////////////////////////////////////////////////////

-/**
- *  The DataGridEditor contains all the logic and event handling needed to
- *  manage the life cycle of an item editor. A DataGridEditor is owned by a
- *  specified DataGrid. The owning DataGrid is responsible for calling
- *  initialize() to enable editing and uninitialize() when editing is no
- *  longer needed.
- *
- */
 package spark.components.gridClasses
 {
 import flash.display.DisplayObject;
@@ -58,21 +50,39 @@

 [ExcludeClass]

-//--------------------------------------------------------------------------
-//
-//  Constructor
-//
-//--------------------------------------------------------------------------
-
 /**
- *  Constructor
+ *  The DataGridEditor contains all the logic and event handling needed to
+ *  manage the life cycle of an item editor.
+ *  A DataGridEditor is owned by a
+ *  specified DataGrid. The owning DataGrid is responsible for calling
+ *  initialize() to enable editing and uninitialize() when editing is no
+ *  longer needed.
  *
- *  @param dataGrid The owner of this editor.
+ *  @langversion 3.0
+ *  @playerversion Flash 10
+ *  @playerversion AIR 2.5
+ *  @productversion Flex 4.5
  */
 public class DataGridEditor
 {
     include "../../core/Version.as";

+    //--------------------------------------------------------------------------
+    //
+    //  Constructor
+    //
+    //--------------------------------------------------------------------------
+
+    /**
+     *  Constructor
+     *
+     *  @param dataGrid The owner of this editor.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 2.5
+     *  @productversion Flex 4.5
+     */
     public function DataGridEditor(dataGrid:DataGrid)
     {
         _dataGrid = dataGrid;


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

--- frameworks/projects/spark/src/spark/effects/supportClasses/RotateInstance.as
+++ frameworks/projects/spark/src/spark/effects/supportClasses/RotateInstance.as
@@ -1,13 +1,3 @@
-		////////////////////////////////////////////////////////////////////////////////
-//
-//  ADOBE SYSTEMS INCORPORATED
-//  Copyright 2008 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.effects.supportClasses
 {


Transferred from the Adobe Open Source Subversion Repository

Revision: 1098
Author:   jimurphy@adobe.com
Date:     2008-04-03T21:50:39.896200Z

Log Message:
-----------
Merge 3.0.x -- 362:394, 427:429, 603:608, 644:645, 651:663, 672:676, 755:756, 763:766, 785:790, 812:814, 854:861, 862:866, 866:933,971:1009, 1050:1056 --> 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="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/treeClasses/DefaultDataDescriptor.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/VRule.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/AsyncRequest.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/collections/IList.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/LayoutManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/channels/StreamingConnectionHandler.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/IRepeaterClient.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/videoClasses/VideoError.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/utils/ObjectProxy.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/messages/HTTPRequestMessage.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/resources/Locale.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/effectClasses/ParallelInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/Responder.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/errors/MessageSerializationError.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/messages/SOAPMessage.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/IBrowserManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/ComponentDescriptor.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/events/FaultEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/dataGridClasses/DataGridColumn.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/collections/IViewCursor.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/soap/AbstractWebService.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/Tween.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/listClasses/ListBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/Panel.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/DragManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/TextInput.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/menuClasses/IMenuItemRenderer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/MessageResponder.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/dataGridClasses/DataGridBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/SystemManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/preloaders/Preloader.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/ILayoutManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/Spacer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/Label.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/Fault.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/collections/XMLListCollection.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/EffectTargetFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/SliderEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/AsyncToken.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/core/Window.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/resources/ResourceManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/ScrollEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/http/mxml/HTTPService.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/videoClasses/CuePointManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/CrossDomainRSLItem.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/NumericStepperEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/BrowserManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/events/ChannelFaultEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/TextArea.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/collections/CursorBookmark.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/xml/IXMLEncoder.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/http/HTTPService.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/events/WSDLLoadEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/ComboBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/soap/LoadEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/collections/ListCollectionView.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/FlexClient.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/SubscriptionInfo.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/utils/DescribeTypeCache.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/logging/LogLogger.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/rpc/src/mx/messaging/MessageAgent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/build_framework.xml</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/rpc/src/mx/rpc/events/HeaderEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/build.xml</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/dataGridClasses/DataGridDragProxy.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/preloaders/DownloadProgressBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/treeClasses/ITreeDataDescriptor.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/remoting/RemoteObject.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/listClasses/TileBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/listClasses/ListItemDragProxy.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/ChannelSet.as</path>

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

--- frameworks/projects/framework/src/mx/utils/DescribeTypeCache.as
+++ frameworks/projects/framework/src/mx/utils/DescribeTypeCache.as
@@ -72,7 +72,7 @@
          *  ActionScript value, including all available ActionScript types, object instances,
          *  primitive types (such as uint), and class objects.
          *
-         *  @return The cached record.
+         *  @return Returns the cached record.
          *
          *  @see flash.utils#describeType()
 	 */