Transferred from the Adobe Open Source Subversion Repository

Revision: 5797
Author:   jimurphy@adobe.com
Date:     2009-03-31T15:35:34.544076Z

Log Message:
-----------
Merged revisions 3.x 5505,5526-5527,5535,5540,5542,5572,5616-5617,5656-5657,5671,5674,5683,5687-5688,5690,5698,5708-5709,5713-5716,5719-5723,5726,5728-5729,5736,5752,5754,5761,5774,5780,5784 -> trunk

most of these are user submitted patches! very cool.

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/VideoDisplay.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/resources/IResourceManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/ToggleButtonBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/Menu.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/Container.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/CalendarLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/ProgressIndeterminateSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/controls/FileSystemComboBox.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/NavBar.as</path>
<path kind="dir" action="M">/flex/sdk/trunk</path>
<path kind="file" action="D">/flex/sdk/trunk/modules/compiler/FlexCompilerShell-license.txt</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/DateField.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/DividedBox.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/formatters/DateFormatter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/FormItem.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/SWFLoader.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/framework/src/mx/controls/dataGridClasses/DataGridColumn.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/validators/PhoneNumberValidator.as</path>
<path kind="file" copyfrom-path="/flex/sdk/branches/3.x/frameworks/projects/framework/src/mx/validators/NumberValidatorDomainType.as" copyfrom-rev="5784" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/validators/NumberValidatorDomainType.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/PopUpButton.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/listClasses/ListBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/ToolTipManagerImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/utils/ObjectUtil.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/validators/NumberValidator.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/framework/src/mx/validators/CurrencyValidator.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/Form.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/dataGridClasses/DataGridBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/resources/ResourceManagerImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/Label.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/DataGrid.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/CalendarLayoutChangeEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/DataGridEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/sliderClasses/Slider.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/PopUpMenuButton.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/Text.as</path>

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

--- frameworks/projects/mx/src/mx/controls/Text.as
+++ frameworks/projects/mx/src/mx/controls/Text.as
@@ -196,16 +196,20 @@
      */
     private var lastUnscaledWidth:Number = NaN;

+    /**
+     *  @private
+     */
+	private var widthChanged:Boolean = true;
+
     //--------------------------------------------------------------------------
     //
     //  Overridden properties
     //
     //--------------------------------------------------------------------------

-    /**
-     *  @private
-     */
-    private var widthChanged:Boolean = true;
+	//----------------------------------
+	//  explicitWidth
+	//----------------------------------

     /**
      *  @private
@@ -223,8 +227,37 @@
             invalidateProperties();
             invalidateSize();
         }
+
         super.explicitWidth = value;
     }
+
+	//----------------------------------
+	//  maxWidth
+	//----------------------------------
+
+    /**
+     *  @private
+     */
+    override public function set maxWidth(value:Number):void
+    {
+        // Due to player bugs relating to scaling text, we
+        // have to be careful to set wordWrap appropriately
+        // (which we do in commitProperties).
+        // Also have to re-measure when maxWidth changes, because maxWidth
+        // can affect height.
+        if (value != maxWidth)
+        {
+            widthChanged = true;
+            invalidateProperties();
+            invalidateSize();
+        }
+
+        super.maxWidth = value;
+    }
+
+	//----------------------------------
+	//  percentWidth
+	//----------------------------------

     /**
      *  @private
@@ -242,6 +275,7 @@
             invalidateProperties();
             invalidateSize();
         }
+
         super.percentWidth = value;
     }

@@ -257,6 +291,7 @@
     override protected function childrenCreated():void
     {
         super.childrenCreated();
+
         textField.wordWrap = true;
         textField.multiline = true;
         textField.mouseWheelEnabled = false;
@@ -269,11 +304,14 @@
     override protected function commitProperties():void
     {
         super.commitProperties();
-        // if explicitWidth or percentWidth changed, we want to set
-        // wordWrap appropriately before measuring()
+
+        // If explicitWidth or maxWidth or percentWidth changed,
+        // set wordWrap appropriately before measuring.
         if (widthChanged)
         {
-            textField.wordWrap = !isNaN(percentWidth) || !isNaN(explicitWidth);
+            textField.wordWrap = !isNaN(explicitWidth) ||
+								 !isNaN(maxWidth) ||
+								 !isNaN(percentWidth);
             widthChanged = false;
         }
     }
@@ -281,7 +319,7 @@
     /**
      *  @private
      *
-     *  If the Text component has an explicit width,
+     *  If the Text component has an explicit width or maximum width,
      *  its text wordwraps within that width,
      *  and the measured height is tall enough to display all the text.
      *  (If there is an explicit height or a percent height in this case,
@@ -292,7 +330,7 @@
      *  If there is an explicit height or a percent height,
      *  the text may get clipped.
      *
-     *  If the Text doesn't have an explicit width,
+     *  If the Text doesn't have an explicit or maximum width,
      *  the measured width is based on explicit line breaks
      *  (e.g, \n, <br>, etc.).
      *  For example, if the text is
@@ -318,16 +356,22 @@
             else
             {
                 // We're not ready to measure yet.
-                // We need updateDisplayList() to first tell us the unscaledWidth
-                // that has been calculated from the percentWidth.
+                // We need updateDisplayList() to first tell us
+				// the unscaledWidth that has been calculated
+				// from the percentWidth.
                 measuredWidth = 0;
                 measuredHeight = 0;
             }
             return;
         }

-        measureUsingWidth(explicitWidth);
+        // Figure out the width we're going to use;
+		// explicitWidth trumps maxWidth.
+        var availableWidth:Number = !isNaN(explicitWidth) ?
+									explicitWidth :
+									maxWidth;

+        measureUsingWidth(availableWidth);
     }

     /**
@@ -340,7 +384,8 @@
         // Text has a different layout algorithm than Label.
         if (isSpecialCase())
         {
-            var firstTime:Boolean = isNaN(lastUnscaledWidth) || lastUnscaledWidth != unscaledWidth;
+            var firstTime:Boolean = isNaN(lastUnscaledWidth) ||
+									lastUnscaledWidth != unscaledWidth;
             lastUnscaledWidth = unscaledWidth;
             if (firstTime)
             {
@@ -359,6 +404,7 @@

         textField.x = paddingLeft;
         textField.y = paddingTop;
+
         // Although we also set wordWrap in commitProperties(), we do
         // this here to handle width being set through setActualSize().
         if (Math.floor(width) < Math.floor(measuredWidth))
@@ -426,8 +472,10 @@
         {
             textField.width = w - paddingLeft - paddingRight;

-            measuredWidth = Math.ceil(textField.textWidth) + UITextField.TEXT_WIDTH_PADDING;
-            measuredHeight = Math.ceil(textField.textHeight) + UITextField.TEXT_HEIGHT_PADDING;
+            measuredWidth = Math.ceil(textField.textWidth) +
+							UITextField.TEXT_WIDTH_PADDING;
+            measuredHeight = Math.ceil(textField.textHeight) +
+							 UITextField.TEXT_HEIGHT_PADDING;
             // Round up because embedded fonts can produce fractional values;
             // if a parent container rounds a component's actual width or height
             // down, the component may not be wide enough to display the text.
@@ -441,8 +489,10 @@
             var oldWordWrap:Boolean = textField.wordWrap;
             textField.wordWrap = false;

-            measuredWidth = Math.ceil(textField.textWidth) + UITextField.TEXT_WIDTH_PADDING;
-            measuredHeight = Math.ceil(textField.textHeight) + UITextField.TEXT_HEIGHT_PADDING;
+            measuredWidth = Math.ceil(textField.textWidth) +
+							UITextField.TEXT_WIDTH_PADDING;
+            measuredHeight = Math.ceil(textField.textHeight) +
+							 UITextField.TEXT_HEIGHT_PADDING;
             // Round up because embedded fonts can produce fractional values;
             // if a parent container rounds a component's actual width or height
             // down, the component may not be wide enough to display the text.


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

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

 /**


fixed possible null pointer error

fixed possible null pointer error

Change-Id: I58a5285f88e4f6181556c0a76ed3fa2cab36586f

--- WeaveAdmin/src/weave/ui/EntityTreeDataDescriptor.as
+++ WeaveAdmin/src/weave/ui/EntityTreeDataDescriptor.as
@@ -10,12 +10,16 @@
     {
         public function addChildAt(parent:Object, newChild:Object, index:int, model:Object = null):Boolean
         {
-			EntityNode.addChildAt(parent as EntityNode, newChild as EntityNode, index);
-			return true;
+			if (newChild is EntityNode)
+			{
+				EntityNode.addChildAt(parent as EntityNode, newChild as EntityNode, index);
+				return true;
+			}
+			return false;
         }
         public function removeChildAt(parent:Object, child:Object, index:int, model:Object = null):Boolean
         {
-			if (child)
+			if (child is EntityNode)
 				EntityNode.removeChild(parent as EntityNode, child as EntityNode);
 			return true;
         }


Should fix menus for flex 3.

Should fix menus for flex 3.

git-svn-id: b675b909355d5cf946977f44a8ec5a6ceb3782e4@427 ed5b42cb-e716-0410-a449-f6a68f950b19

--- src/as/com/threerings/flex/menuClasses/CommandListData.as
+++ src/as/com/threerings/flex/menuClasses/CommandListData.as
@@ -25,9 +25,9 @@
 import mx.core.IFlexDisplayObject;
 import mx.core.IUIComponent;

-import mx.controls.listClasses.ListData;
+import mx.controls.menuClasses.MenuListData;

-public class CommandListData extends ListData
+public class CommandListData extends MenuListData
 {
     /** An already-instantiated icon, to use if the icon property is null. */
     public var iconObject :IFlexDisplayObject;


Added RTE protection

Added RTE protection

git-svn-id: f8d5f742b420a6a114b58659a4f85f335318e53c@1447135 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/advancedgrids/src/mx/controls/advancedDataGridClasses/AdvancedDataGridColumn.as
+++ frameworks/projects/advancedgrids/src/mx/controls/advancedDataGridClasses/AdvancedDataGridColumn.as
@@ -1727,7 +1727,7 @@
         var headerInfo:AdvancedDataGridHeaderInfo  = owner.mx_internal::getHeaderInfo(this);
         //In case of Column grouping, when a column has a parent with dataField/labelFunction set, this column is
         //supposed to take value from what its parent supplies it
-        if(headerInfo.internalLabelFunction!=null)
+        if(headerInfo && headerInfo.internalLabelFunction!=null)
             data = headerInfo.internalLabelFunction(data, this);

         if (!data)


Added more support for recursion tracking during encode. Removed encoding of id='null' as well

--- as3/xobjas3/src/com/rpath/xobj/XObjXMLEncoder.as
+++ as3/xobjas3/src/com/rpath/xobj/XObjXMLEncoder.as
@@ -192,9 +192,13 @@
      * value.
      */

-    public function encodeObject(obj:Object, parentNode:XMLNode=null, rootTag:String=null, rootQName:XObjQName=null):XMLDocument
+    private var recursionMap:Dictionary;
+
+    public function encodeObject(obj:Object, parentNode:XMLNode=null, rootTag:String=null, rootQName:XObjQName=null, referenceOnly:Boolean=false):XMLDocument
     {
         var qname:XObjQName = rootQName;
+
+        recursionMap = new Dictionary(true);

         // is obj a root holder?
         /*if (XObjMetadata.METADATA_PROPERTY in obj)
@@ -235,7 +239,10 @@
             parentNode.parentNode = xmlDocument;
         }

-        encodeValue(obj, qname, parentNode, true, false, true);
+        encodeValue(obj, qname, parentNode, true, referenceOnly, true);
+
+        // dump the recursionMap at the end
+        recursionMap = null;

         return xmlDocument;
     }
@@ -248,7 +255,7 @@
     internal function encodeValue(obj:Object, q:*, parentNode:XMLNode, recurse:Boolean=true, referenceOnly:Boolean=false, isRoot:Boolean=false):XMLNode
     {
         var qname:XObjQName = new XObjQName();
-
+
         if (q is XObjQName)
             qname = q;
         else if (q is QName)
@@ -305,7 +312,7 @@
         }
         else if (isRoot)
         {
-            return internal_encodeValue(obj, qname, parentNode);
+            return internal_encodeValue(obj, qname, parentNode, true, referenceOnly);
         }
         else if (referenceOnly)
         {
@@ -322,7 +329,9 @@
                 return internal_encodeValue(obj, qname, parentNode, false);
             }
             else
+            {
                 return internal_encodeValue(obj, qname, parentNode);
+            }
         }
         else
         {
@@ -356,8 +365,11 @@

         myElement = xmlDocument.createElement("foo");

-        if (referenceOnly)
-        {
+        if (referenceOnly || recursionMap[obj])
+        {
+            if (recursionMap[obj])
+                trace("recursive encode");
+
             // link us into the heirarchy so that namespaces
             // will be resolved up the chain correctly
             parentNode.appendChild(myElement);
@@ -366,6 +378,9 @@
         }
         else if (typeType == XObjXMLEncoder.OBJECT_TYPE)
         {
+            // track anything we're actually encoding
+            recursionMap[obj] = true;
+
             // link us into the heirarchy so that namespaces
             // will be resolved up the chain correctly
             parentNode.appendChild(myElement);
@@ -466,29 +481,6 @@
                     encodeValue(member, qname, myElement, recurse);
             }
         }
-            /*else if (typeType == XObjXMLEncoder.ARRAY_TYPE)
-            {
-            if (simpleEncoderCompatible)
-            {
-            // link us into the heirarchy so that namespaces
-            // will be resolved up the chain correctly
-            parentNode.appendChild(myElement);
-            setAttributes(myElement, obj);
-            myElement.nodeName = XObjUtils.encodeElementTag(qname, myElement);
-            qname = new XObjQName("", "item");
-            }
-            else
-            {
-            // write array elements directly to the parent (no wrapping element required)
-            myElement = parentNode;
-            }
-
-            // encode array elements as repeated instances of this elem qname
-            for (var i:int=0; i < obj.length; i++)
-            {
-            encodeValue(obj[i], qname, myElement);
-            }
-            }*/
         else // must be simple type
         {
             parentNode.appendChild(myElement);
@@ -558,7 +550,7 @@
             //TODO: synthesize the attrList structure

         }
-        else if ("id" in obj) // special case id property in non __attributes case
+        else if (("id" in obj) && obj["id"]) // special case id property in non __attributes case
         {
             attrList.push({propname:"id"});
         }


Change 20100211-bargull-7mc by bargull@dell--p4--2-53 on 2010-02-11 00:15:06
    in /home/Admin/src/svn/openlaszlo/trunk
    for http://svn.openlaszlo.org/openlaszlo/trunk

Summary: make leak detector working again (swf8)

New Features:

Bugs Fixed: LPP-8581 (SWF8: Leak detector does not work anymore)

Technical Reviewer: ptw
QA Reviewer: (pending)
Doc Reviewer: (pending)

Documentation:

Release Notes:

Overview:

Details:
Accessing "isaudio" on LzSprite.prototype invokes the "isaudio" getter, which in turn called a couple of functions on the prototype. This made the prototype itself invalid and broke the complete application.
The fix simply checks whether the context is an instance of LzSprite, if the check fails the getter returns 'undefined'.

Tests:
- testcase from bugreport
- Debug.objectOwnProperties(..) works for LzSprite.prototype

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

--- WEB-INF/lps/lfc/kernel/swf/LzSprite.as
+++ WEB-INF/lps/lfc/kernel/swf/LzSprite.as
@@ -2,7 +2,7 @@
 /**
   * LzSprite.as
   *
-  * @copyright Copyright 2001-2009 Laszlo Systems, Inc.  All Rights Reserved.
+  * @copyright Copyright 2001-2010 Laszlo Systems, Inc.  All Rights Reserved.
   *            Use is subject to license terms.
   *
   * @topic Kernel
@@ -1443,8 +1443,11 @@
   * Adds a getter for isaudio
   */
 LzSprite.prototype.addProperty("isaudio", function () {
-    var m = this.getMCRef();
-    return (m && m.isaudio || false);
+    // disallow call on prototypes (LPP-8581)
+    if (this instanceof LzSprite) {
+        var m = this.getMCRef();
+        return (m && m.isaudio || false);
+    }
 }, null);


no longer punishing priority queues for overtime

--- WeaveCore/src/weave/core/StageUtils.as
+++ WeaveCore/src/weave/core/StageUtils.as
@@ -120,7 +120,7 @@
 		 */
 		private const _priorityCallLaterQueues:Array = [[], [], [], []];
 		private var _activePriority:uint = WeaveAPI.TASK_PRIORITY_IMMEDIATE + 1; // task priority that is currently being processed
-		private const _priorityElapsedTimes:Array = [0, 0, 0, 0]; // An Array of elapsed times corresponding to callLater queues.
+		private var _activePriorityElapsedTime:uint = 0; // elapsed time for active task priority
 		private const _priorityAllocatedTimes:Array = [int.MAX_VALUE, 100, 65, 35]; // An Array of allocated times corresponding to callLater queues.

 		/**
@@ -362,8 +362,7 @@
 			var lastPriority:int = _activePriority == minPriority ? _priorityCallLaterQueues.length - 1 : _activePriority - 1;
 			var pStart:int = getTimer();
 			var pAlloc:int = int(_priorityAllocatedTimes[_activePriority]);
-			var pElapsed:int = int(_priorityElapsedTimes[_activePriority]);
-			var pStop:int = Math.min(allStop, pStart + pAlloc - pElapsed); // account for overtime from previous frame
+			var pStop:int = Math.min(allStop, pStart + pAlloc - _activePriorityElapsedTime); // continue where we left off
 			queue = _priorityCallLaterQueues[_activePriority] as Array;
 			countdown = queue.length;
 			while (true)
@@ -374,9 +373,8 @@
 				now = getTimer();
 				if (countdown == 0 || now > pStop)
 				{
-					// keep track of the actual elapsed time for this priority
-					// if we went overtime, let the overflow value carry over to the next frame (but not after that)
-					_priorityElapsedTimes[_activePriority] = Math.min(Math.max(0, now - pStart), pAlloc);
+					// add the time we just spent on this priority
+					_activePriorityElapsedTime += now - pStart;

 					// if max computation time was reached for this frame or we have visited all priorities, stop now
 					if (now > allStop || _activePriority == lastPriority)
@@ -390,14 +388,14 @@
 					if (remaining == 0)
 						break;

-					// switch to next priority
+					// switch to next priority, reset elapsed time
 					_activePriority++;
+					_activePriorityElapsedTime = 0;
 					if (_activePriority == _priorityCallLaterQueues.length)
 						_activePriority = minPriority;
 					pStart = now;
 					pAlloc = int(_priorityAllocatedTimes[_activePriority]);
-					pElapsed = int(_priorityElapsedTimes[_activePriority]);
-					pStop = Math.min(allStop, pStart + pAlloc - pElapsed);
+					pStop = Math.min(allStop, pStart + pAlloc);
 					queue = _priorityCallLaterQueues[_activePriority] as Array;
 					countdown = queue.length;


fixed RangeError on empty Vector

fixed RangeError on empty Vector

Change-Id: I910619ba6bb0cab4dad991c1c7484077274579d9

--- WeaveCore/src/weave/utils/AsyncSort.as
+++ WeaveCore/src/weave/utils/AsyncSort.as
@@ -186,7 +186,7 @@

 			if (compare === null)
 			{
-				if (original[0] is Number || original[0] is Date)
+				if (original.length && (original[0] is Number || original[0] is Date))
 					original.sort(Array.NUMERIC);
 				else
 					original.sort(0); // Vector.sort() requires one parameter


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

--- frameworks/projects/advancedgrids/src/mx/controls/olapDataGridClasses/OLAPDataGridRendererProvider.as
+++ frameworks/projects/advancedgrids/src/mx/controls/olapDataGridClasses/OLAPDataGridRendererProvider.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.controls.olapDataGridClasses
 {


Transferred from the Adobe Open Source Subversion Repository

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

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

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

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

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

 package mx.controls.olapDataGridClasses
 {


Transferred from the Adobe Open Source Subversion Repository

Revision: 7743
Author:   clucier@adobe.com
Date:     2009-06-11T13:53:10.203664Z

Log Message:
-----------
Moving away from using namespace qualifiers in most cases in the SDK.  We've run into a few cases now where the use of qualifiers in code that is called excessively can slow things down.
Bugs: SDK-21337
Reviewer: Ryan, Paul
QE Notes: None
Tests: Ran several random Mustella test groups, checkintests.

Modified Paths:
--------------
106 paths were modified

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

--- frameworks/projects/mx/src/mx/containers/GridRow.as
+++ frameworks/projects/mx/src/mx/containers/GridRow.as
@@ -432,9 +432,8 @@
             preferredWidth += child.preferred;
         }

-        var wPadding:Number =
-            mx_internal::layoutObject.widthPadding(numChildren);
-        var hPadding:Number = mx_internal::layoutObject.heightPadding(0);
+        var wPadding:Number = layoutObject.widthPadding(numChildren);
+        var hPadding:Number = layoutObject.heightPadding(0);
         var rowInfo:GridRowInfo = rowHeights[rowIndex];

         measuredMinWidth = minWidth + wPadding;
@@ -523,7 +522,7 @@
             var diff:Number = w - child.maxWidth;
             if (diff > 0)
             {
-                x += diff * mx_internal::layoutObject.getHorizontalAlignValue();
+                x += diff * layoutObject.getHorizontalAlignValue();
                 w -= diff;
             }
             diff = h - child.maxHeight;
@@ -531,7 +530,7 @@
                 diff = Math.max(diff, h * (100 - percentHeight));
             if (diff > 0)
             {
-                y = diff * mx_internal::layoutObject.getVerticalAlignValue();
+                y = diff * layoutObject.getVerticalAlignValue();
                 h -= diff;
             }

@@ -607,7 +606,7 @@
         }

         // Set each child's x-coordinate.
-        left = vm.left + spaceToDistribute * mx_internal::layoutObject.getHorizontalAlignValue();
+        left = vm.left + spaceToDistribute * layoutObject.getHorizontalAlignValue();
         for (i = 0; i < numChildren; i++)
         {
             columnInfo = columnWidths[i];


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

--- frameworks/projects/framework/src/mx/collections/ModifiedCollectionView.as
+++ frameworks/projects/framework/src/mx/collections/ModifiedCollectionView.as
@@ -1,16 +1,4 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  ADOBE SYSTEMS INCORPORATED
-//  Copyright 2007 Adobe Systems Incorporated
-//  All Rights Reserved.
-//
-//  NOTICE: Adobe permits you to use, modify, and distribute this file
-//  in accordance with the terms of the license agreement accompanying it.
-//
-////////////////////////////////////////////////////////////////////////////////
-
-// AdobePatentID="B518"
-// AdobePatentID="B519"
+

 package mx.collections
 {


Transferred from the Adobe Open Source Subversion Repository

Revision: 18785
Author:   chiedozi@adobe.com
Date:     2010-11-22T22:54:54.368346Z

Log Message:
-----------
ViewNavigatorBase now registers its stage event listenters on creationComplete to avoid RTEs related to a null systemManager
Fixed RTE in ViewNavigator and TabbedViewNavigator that occurred when a developer created a custom actionbar or tabbar hide/show animation

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

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

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

--- frameworks/projects/mobilecomponents/src/spark/components/ViewNavigator.as
+++ frameworks/projects/mobilecomponents/src/spark/components/ViewNavigator.as
@@ -1414,14 +1414,13 @@
                                             createActionBarHideEffect();

                 actionBarVisibilityEffect.addEventListener(EffectEvent.EFFECT_END,
-                    visibilityAnimation_completeHandler);
+                                                           visibilityAnimation_completeHandler);

                 actionBarVisibilityEffect.play();
             }
             else
             {
-                if (actionBarVisibilityInvalidated)
-                    actionBar.visible = actionBar.includeInLayout = !actionBar.visible;
+                actionBar.visible = actionBar.includeInLayout = !actionBar.visible;
             }
         }

@@ -1442,7 +1441,7 @@
      */
     protected function createActionBarHideEffect():IEffect
     {
-        return createActionBarVisibilityEffect();
+        return createActionBarVisibilityEffect(false);
     }

@@ -1460,49 +1459,42 @@
      */
     protected function createActionBarShowEffect():IEffect
     {
-        return createActionBarVisibilityEffect();
+        return createActionBarVisibilityEffect(true);
     }

     /**
      *  @private
      */
-    private function createActionBarVisibilityEffect():IEffect
-    {
-        var effect:IEffect;
-        var finalEffect:Parallel = new Parallel();
+	private function createActionBarVisibilityEffect(showAnimation:Boolean):IEffect
+	{
+		var effect:IEffect;
+		var finalEffect:Parallel = new Parallel();

         // Grab initial values
         actionBarProps = { target:actionBar, start:captureAnimationValues(actionBar) };
         contentGroupProps = { target:contentGroup, start:captureAnimationValues(contentGroup) };

-        // Update actionBar layout properties
-        if (actionBarVisibilityInvalidated)
-            actionBar.visible = actionBar.includeInLayout = !actionBarProps.start.visible;
-
-        // Calculate final positions.  This method will force a validation
-        calculateFinalUIPositions();
-
-        // The actionbar will be visible if we are animating it
-        if (actionBar.visible)
-        {
-            var animate:Animate = new Animate();
-            animate.target = actionBar;
-            animate.duration = ACTION_BAR_ANIMATION_DURATION;
-            animate.motionPaths = new Vector.<MotionPath>();
-            animate.motionPaths.push(new SimpleMotionPath("y", actionBarProps.start.y, actionBarProps.end.y));
-
-            actionBar.includeInLayout = false;
-            actionBar.cacheAsBitmap = true;
-
-            effect = animate;
-            effect.target = actionBar;
-
-            finalEffect.addChild(effect);
-        }
-
-        effect = createContentVisibilityEffect(actionBar.visible, contentGroupProps);
+        // Update actionBar layout properties so we can capture the final state of
+        // of the navigator
+        actionBar.visible = actionBar.includeInLayout = showAnimation;
+
+        // Calculate final positions and position actionBar.  This method will force a validation
+        prepareActionBarForAnimation(showAnimation);
+
+        // Create animation for action bar
+        var animate:Animate = new Animate();
+        animate.target = actionBar;
+        animate.duration = ACTION_BAR_ANIMATION_DURATION;
+        animate.motionPaths = new Vector.<MotionPath>();
+        animate.motionPaths.push(new SimpleMotionPath("y", actionBarProps.start.y, actionBarProps.end.y));
+
+        // Add action bar effect to final parallel effect
+        effect = animate;
+        finalEffect.addChild(effect);
+
+        // Create animation for content group
+        effect = createContentVisibilityEffect(contentGroupProps);
         effect.target = contentGroup;
-
         finalEffect.addChild(effect);

         return finalEffect;
@@ -1519,15 +1511,15 @@
      *  @playerversion AIR 2.5
      *  @productversion Flex 4.5
      */
-    private function calculateFinalUIPositions():void
+    private function prepareActionBarForAnimation(showAnimation:Boolean):void
     {
         var animateActionBarUp:Boolean;

         // Determine whether the action bar should be animated up or down
         if (overlayControls)
         {
-            // The actionBar is animated up if the actionBar is above the center
-            // of the navigator
+            // If the control is overlaid on top, the actionBar is animated up if
+            // the actionBar is above the center of the navigator
             animateActionBarUp = (actionBar.y + (actionBar.height / 2)) <= height / 2;
         }
         else
@@ -1548,25 +1540,24 @@

         // Update the end position of the animation based on whether the
         // actionBar is showing/hiding and if it is animating up or down.
-        if (actionBarVisibilityInvalidated)
-        {
-            if (animateActionBarUp)
-            {
-                if (actionBarProps.start.visible)
-                    actionBarProps.end.y = -actionBar.height;
-                else
-                    actionBarProps.start.y = -actionBar.height;
-            }
+        if (animateActionBarUp)
+        {
+            if (showAnimation)
+                actionBarProps.start.y = -actionBar.height;
             else
-            {
-                if (actionBarProps.start.visible)
-                    actionBarProps.end.y = this.height;
-                else
-                    actionBarProps.start.y = this.height;
-            }
-
-            actionBar.visible = true;
-        }
+                actionBarProps.end.y = -actionBar.height;
+        }
+        else
+        {
+            if (showAnimation)
+                actionBarProps.start.y = this.height;
+            else
+                actionBarProps.end.y = this.height;
+        }
+
+        actionBar.visible = true;
+        actionBar.includeInLayout = false;
+        actionBar.cacheAsBitmap = true;
     }

     /**
@@ -1611,7 +1602,7 @@
      *  @playerversion AIR 2.5
      *  @productversion Flex 4.5
      */
-    private function createContentVisibilityEffect(hiding:Boolean, props:Object):IEffect
+    private function createContentVisibilityEffect(props:Object):IEffect
     {
         var animate:Animate = new Animate();
         animate.target = contentGroup;
@@ -1634,23 +1625,28 @@
      *  @playerversion AIR 2.5
      *  @productversion Flex 4.5
      */
-    private function visibilityAnimation_completeHandler(event:EffectEvent):void
-    {
-        // Update the actionBar visibility and includeInLayout flags
-        actionBar.visible = actionBar.includeInLayout = !actionBarProps.start.visible;
-
-        // Restore includeInLayout and cacheAsBitmap properties for each component
-        actionBar.cacheAsBitmap = actionBarProps.start.cacheAsBitmap;
-        contentGroup.includeInLayout = contentGroupProps.start.includeInLayout;
-        contentGroup.cacheAsBitmap = contentGroupProps.start.cacheAsBitmap;
+	private function visibilityAnimation_completeHandler(event:EffectEvent):void
+	{
+        event.target.removeEventListener(EffectEvent.EFFECT_END, visibilityAnimation_completeHandler);

         // Clear flags and temporary properties
-        actionBarVisibilityEffect = null;
-        actionBarProps = null;
-        contentGroupProps = null;
-        actionBarVisibilityInvalidated = false;
-
-        event.target.removeEventListener(EffectEvent.EFFECT_END, visibilityAnimation_completeHandler);
+		actionBarVisibilityEffect = null;
+		actionBarVisibilityInvalidated = false;
+
+        if (actionBarProps)
+        {
+            // Update the actionBar visibility, includeInLayout and cacheAsBitmap flags
+    		actionBar.visible = actionBar.includeInLayout = !actionBarProps.start.visible;
+            actionBar.cacheAsBitmap = actionBarProps.start.cacheAsBitmap;
+    		actionBarProps = null;
+        }
+
+        if (contentGroupProps)
+        {
+		    contentGroup.includeInLayout = contentGroupProps.start.includeInLayout;
+		    contentGroup.cacheAsBitmap = contentGroupProps.start.cacheAsBitmap;
+    		contentGroupProps = null;
+        }
     }

     /**


Transferred from the Adobe Open Source Subversion Repository

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

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

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

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

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

--- frameworks/projects/framework/src/mx/binding/RepeatableBinding.as
+++ frameworks/projects/framework/src/mx/binding/RepeatableBinding.as
@@ -46,6 +46,11 @@
 	 *
      *  @param destString The destination represented as a String.
 	 *  We can then tell the ValidationManager to validate this field.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public function RepeatableBinding(document:Object, srcFunc:Function,
 									  destFunc:Function, destString:String)
@@ -63,6 +68,11 @@
      *  Execute the binding.
      *  Call the source function and get the value we'll use.
      *  Then call the destination function passing the value as an argument.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     override public function execute(o:Object = null):void
     {
@@ -158,6 +168,11 @@
     /**
      *  The only reason a Binding listens to an event
 	 *  is because it wants a signal to execute
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public function eventHandler(event:Event):void
     {


Transferred from the Adobe Open Source Subversion Repository

Revision: 19722
Author:   egeorgie@adobe.com
Date:     2011-01-12T00:53:24.336848Z

Log Message:
-----------
Fix popups/tooltips and scaling bugs:
Slider tooltip renders far above under 2.0 scaling - http://bugs.adobe.com/jira/browse/SDK-28833
Mobile HSliderSkin dataTip sometimes stops following the thumb all the way to the right edge - http://bugs.adobe.com/jira/browse/SDK-28762
When the app is scaled, DropDownList shows the list at wrong place - http://bugs.adobe.com/jira/browse/SDK-28818

In this change:
- update popup/tooltip positioning code to work with scaling.

QE notes:  make another test pass on tooltips/pop-ups
Doc notes:
Bugs: SDK-28833, SDK-28762, SDK-28818
Reviewer: Alex
Tests run: full mustella cyclone
Is noteworthy for integration: No

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/managers/SystemManager.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mx/src/mx/controls/dataGridClasses/DataGridItemRenderer.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mx/src/mx/controls/treeClasses/TreeItemRenderer.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/VSlider.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/managers/PopUpManagerImpl.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mx/src/mx/controls/listClasses/TileListItemRenderer.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/managers/ISystemManager.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/FrameworkClasses.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/managers/DragManagerImpl.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/utils/BitmapUtil.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/primitives/supportClasses/GraphicElement.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/HSlider.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/utils/PopUpUtil.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mx/src/mx/controls/ComboBox.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/PopUpAnchor.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/utils/MatrixUtil.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/gridClasses/GridItemRenderer.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mx/src/mx/controls/listClasses/ListItemRenderer.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/mx/controls/dataGridClasses/FTEDataGridItemRenderer.as</path>

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

--- frameworks/projects/mx/src/mx/controls/listClasses/TileListItemRenderer.as
+++ frameworks/projects/mx/src/mx/controls/listClasses/TileListItemRenderer.as
@@ -17,6 +17,7 @@
 import flash.geom.Point;
 import flash.geom.Rectangle;
 import flash.text.TextFieldType;
+
 import mx.core.IDataRenderer;
 import mx.core.IFlexDisplayObject;
 import mx.core.IFlexModuleFactory;
@@ -30,6 +31,7 @@
 import mx.events.InterManagerRequest;
 import mx.events.ToolTipEvent;
 import mx.managers.ISystemManager;
+import mx.utils.PopUpUtil;

 use namespace mx_internal;

@@ -588,23 +590,16 @@
     protected function toolTipShowHandler(event:ToolTipEvent):void
     {
         var toolTip:IToolTip = event.toolTip;
-
-        // Calculate global position of label.
-        var sm:ISystemManager = systemManager.topLevelSystemManager;
-        var sbRoot:DisplayObject = sm.getSandboxRoot();
-        var screen:Rectangle = sm.getVisibleApplicationRect(null, true);
-        var pt:Point = new Point(0, 0);
-        pt = label.localToGlobal(pt);
-        pt = sbRoot.globalToLocal(pt);
-
-        toolTip.move(pt.x, pt.y + (height - toolTip.height) / 2);
-
-        var screenRight:Number = screen.x + screen.width;
-        pt.x = toolTip.x;
-        pt.y = toolTip.y;
-        pt = sbRoot.localToGlobal(pt);
-        if (pt.x + toolTip.width > screenRight)
-            toolTip.move(toolTip.x - (pt.x + toolTip.width - screenRight), toolTip.y);
+
+        // We need to position the tooltip at same x coordinate,
+        // center vertically and make sure it doesn't overlap the screen.
+        // Call the helper function to handle this for us.
+        var pt:Point = PopUpUtil.positionOverComponent(DisplayObject(label),
+                                                       systemManager,
+                                                       toolTip.width,
+                                                       toolTip.height,
+                                                       height / 2);
+        toolTip.move(pt.x, pt.y);
     }

     /**


Transferred from the Adobe Open Source Subversion Repository

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

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

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

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

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

 package mx.resources
 {


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

--- frameworks/projects/spark/src/spark/layouts/supportClasses/DropLocation.as
+++ frameworks/projects/spark/src/spark/layouts/supportClasses/DropLocation.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: 19370
Author:   smgilson@adobe.com
Date:     2010-12-14T19:07:03.991198Z

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

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/View.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@1264181 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/mobilecomponents/src/spark/components/View.as
+++ frameworks/projects/mobilecomponents/src/spark/components/View.as
@@ -98,8 +98,9 @@

 /**
  *  Dispatched when the screen is about to be removed in response
- *  to a screen change.  Calling preventDefault()
- *  while handling this event will cancel the screen change.
+ *  to a screen change.
+ *  Calling preventDefault()
+ *  while handling this event cancels the screen change.
  *
  *  @eventType mx.events.ViewNavigatorEvent.REMOVING
  *
@@ -111,10 +112,58 @@
 [Event(name="removing", type="spark.events.ViewNavigatorEvent")]

 /**
- *  The View class is the base container class for all Views used by view
- *  navigators.  The View container extends Group and adds
- *  additional properties that are used to communicate with it's parent
- *  navigators' various ui controls.
+ *  The View class is the base container class for all views used by view
+ *  navigators.
+ *  The View container extends the Group container and adds
+ *  additional properties used to communicate with it's parent
+ *  navigator.
+ *
+ *
In a mobile application, the content area of the application
+ *  displays the individual screens, or views, that make up the application.
+ *  Users navigate the views of the application by using the touch screen,
+ *  components built into the application, and the input controls of the mobile device.

+ *
+ *
Each view in an application corresponds to a View container defined
+ *  in an ActionScript or MXML file.
+ *  Each View contains a data property that specifies the data
+ *  associated with that view.
+ *  Views can use the data property to pass information to each
+ *  other as the user navigates the application.

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

+ *
+ *

+ *  <s:View
+ *   Properties
+ *    actionBarVisible="true"
+ *    actionContent="null"
+ *    actionLayout="null"
+ *    data="null"
+ *    destructionPolicy="auto"
+ *    navigationContent="null"
+ *    navigationLayout="null"
+ *    overlayControls="false"
+ *    tabBarVisible="true"
+ *    title=""
+ *    titleContent="null"
+ *    titleLayout="null"
+ *    viewMenuItems="null"
+ *
+ *   Events
+ *    backKeyPressed="No default"
+ *    dataChange="No default"
+ *    menuKeyPressed="No default"
+ *    removing="No default"
+ *    viewActivate="No default"
+ *    viewDeactivate="No default"
+ *
+ *  >
+ *

+ *
+ *  @see ViewNavigator
  *
  *  @langversion 3.0
  *  @playerversion Flash 10.1
@@ -155,10 +204,11 @@
     private var _active:Boolean = false;

     /**
-     *  Flag indicating whether the current screen is active.  The view's navigator will
-     *  automatically set this flag to true or false as its state changes.  This getter
-     *  will dispatch FlexEvent.VIEW_ACTIVATE and
-     *  FlexEvent.VIEW_DEACTIVATE as the value changes.
+     *  Indicates whether the current view is active.
+     *  The view's navigator  automatically sets this flag to true
+     *  or false as its state changes.
+     *  Setting this property can dispatch the viewActivate or
+     *  viewDeactivate events.
      *
      *  @default false
      *
@@ -265,10 +315,7 @@

     [Inspectable(category="General", defaultValue="false")]
     /**
-     *  Determines the way the view's navigator's ui controls
-     *  should lay out in relation to the view content.  If
-     *  set to true, the ui controls will hover on top of the
-     *  view.
+     *  @copy spark.components.supportClasses.ViewNavigatorBase#overlayControls
      *
      *  @default false
      *
@@ -342,15 +389,15 @@
     private var _navigator:ViewNavigator = null;

     /**
-     * The navigator that the view resides in.
-     *
-     *  @langversion 3.0
-     *  @playerversion Flash 10.1
-     *  @playerversion AIR 2.5
-     *  @productversion Flex 4.5
-     */
-
-	[Bindable("navigatorChanged")]
+     * The view navigator that this view resides in.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10.1
+     *  @playerversion AIR 2.5
+     *  @productversion Flex 4.5
+     */
+
+    [Bindable("navigatorChanged")]
     public function get navigator():ViewNavigator
     {
         return _navigator;
@@ -362,9 +409,9 @@
     mx_internal function setNavigator(value:ViewNavigator):void
     {
         _navigator = value;
-
-		if (hasEventListener("navigatorChanged"))
-			dispatchEvent(new Event("navigatorChanged"));
+
+        if (hasEventListener("navigatorChanged"))
+            dispatchEvent(new Event("navigatorChanged"));
     }

     //--------------------------------------------------------------------------
@@ -380,10 +427,9 @@

     [Inspectable(category="General", defaultValue="true")]
     /**
-     *  Flag indicating whether a view should show the action bar or not.
-     *  This doesn't necessarily correlate to the visible property of the
-     *  navigator's ActionBar.  In the end, ViewNavigator and the developer
-     *  have the last say as to what's visible.
+     *  Specifies whether a view should show the action bar or not.
+     *  This property does not necessarily correlate to the
+     *  visible property of the view navigator's ActionBar control.
      *
      *  @default true
      *
@@ -432,10 +478,16 @@

     [ArrayElementType("mx.core.IVisualElement")]
     /**
-     *  Array of visual elements that are used as the ActionBar's
-     *  actionContent when this view is active.
+     *  This property overrides the actionContent
+     *  property in the ActionBar, ViewNavigator, and
+     *  ViewNavigatorApplication components.
+     *
+     *  @copy ActionBar#actionContent
      *
      *  @default null
+     *
+     *  @see ActionBar#actionContent
+     *  @see spark.skins.mobile.ActionBarSkin
      *
      *  @langversion 3.0
      *  @playerversion Flash 10.1
@@ -467,8 +519,10 @@
     //  actionLayout
     //----------------------------------

-    /**
-     *  Layout for the ActionBar's action content group.
+    private var _actionLayout:LayoutBase;
+
+    /**
+     *  @copy ActionBar#actionLayout
      *
      *  @default null
      *
@@ -477,8 +531,6 @@
      *  @playerversion AIR 2.5
      *  @productversion Flex 4.5
      */
-    private var _actionLayout:LayoutBase;
-
     public function get actionLayout():LayoutBase
     {
         return _actionLayout;
@@ -507,8 +559,11 @@
     private var _viewMenuItems:Vector.<ViewMenuItem>;

     /**
-     *  The Vector of ViewMenuItems that are passed to the ViewMenu when
+     *  The Vector of ViewMenuItem objects that are passed to the ViewMenu when
      *  this View is the active view.
+     *
+     *  @see ViewMenu
+     *  @see ViewMenuItem
      */
     public function get viewMenuItems():Vector.<ViewMenuItem>
     {
@@ -528,10 +583,16 @@

     [ArrayElementType("mx.core.IVisualElement")]
     /**
-     *  Array of visual elements that are used as the ActionBar's
-     *  navigationContent when this view is active.
+     *  This property overrides the navigationContent
+     *  property in the ActionBar, ViewNavigator, and
+     *  ViewNavigatorApplication components.
+     *
+     *  @copy ActionBar#navigationContent
      *
      *  @default null
+     *
+     *  @see ActionBar#navigationContent
+     *  @see spark.skins.mobile.ActionBarSkin
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
@@ -566,7 +627,7 @@
     private var _navigationLayout:LayoutBase;

     /**
-     *  Layout for the ActionBar navigation content group.
+     *  @copy ActionBar#navigationLayout
      *
      *  @default null
      *
@@ -595,44 +656,43 @@
             dispatchEvent(changeEvent);
         }
     }
-
-
-
-	//----------------------------------
-	//  tabBarVisible
-	//----------------------------------
-	private var _tabBarVisible:Boolean = true;
+
+
+
+    //----------------------------------
+    //  tabBarVisible
+    //----------------------------------
+    private var _tabBarVisible:Boolean = true;

     [Inspectable(category="General", defaultValue="true")]
-	/**
-	 *  Flag indicating whether a view should show the action bar or not.
-	 *  This doesn't necessarily correlate to the visible property of the
-	 *  navigator's ActionBar.  In the end, ViewNavigator and the developer
-	 *  have the last say as to what's visible.
-	 *
-	 *  @default true
-     *
-     *  @langversion 3.0
-     *  @playerversion Flash 10.1
-     *  @playerversion AIR 2.5
-     *  @productversion Flex 4.5
-	 */
-	public function get tabBarVisible():Boolean
-	{
-		return _tabBarVisible;
-	}
-
-    /**
-     *  @private
-     */
-	public function set tabBarVisible(value:Boolean):void
-	{
+    /**
+     *  Specifies whether a view should show the tab bar or not.
+     *  This property does not necessarily correlate to the
+     *  visible property of the navigator's TabBar control.
+     *
+     *  @default true
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10.1
+     *  @playerversion AIR 2.5
+     *  @productversion Flex 4.5
+     */
+    public function get tabBarVisible():Boolean
+    {
+        return _tabBarVisible;
+    }
+
+    /**
+     *  @private
+     */
+    public function set tabBarVisible(value:Boolean):void
+    {
         var oldValue:Boolean = _tabBarVisible;
-		_tabBarVisible = value;
-
-		// Immediately request actionBar's visibility be toggled
-		if (isActive && navigator)
-		{
+        _tabBarVisible = value;
+
+        // Immediately request actionBar's visibility be toggled
+        if (isActive && navigator)
+        {
             if (hasEventListener(PropertyChangeEvent.PROPERTY_CHANGE))
             {
                 var changeEvent:PropertyChangeEvent =
@@ -640,8 +700,8 @@

                 dispatchEvent(changeEvent);
             }
-		}
-	}
+        }
+    }

     /**
      *  @private
@@ -661,7 +721,13 @@

     [Bindable]
     /**
-     *  The title for the view.
+     *  This property overrides the title
+     *  property in the ActionBar, ViewNavigator, and
+     *  ViewNavigatorApplication components.
+     *
+     *  @copy ActionBar#title
+     *
+     *  @default ""
      *
      *  @langversion 3.0
      *  @playerversion Flash 10.1
@@ -700,10 +766,16 @@

     [ArrayElementType("mx.core.IVisualElement")]
     /**
-     *  Array of visual elements that are used as the ActionBar's
-     *  titleContent when this view is active.
+     *  This property overrides the titleContent
+     *  property in the ActionBar, ViewNavigator, and
+     *  ViewNavigatorApplication components.
+     *
+     *  @copy ActionBar#titleContent
      *
      *  @default null
+     *
+     *  @see ActionBar#titleContent
+     *  @see spark.skins.mobile.ActionBarSkin
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
@@ -735,8 +807,10 @@
     //  titleLayout
     //----------------------------------

-    /**
-     *  Layout for the ActionBar's titleContent group.
+    private var _titleLayout:LayoutBase;
+
+    /**
+     *  @copy ActionBar#titleLayout
      *
      *  @default null
      *
@@ -745,8 +819,6 @@
      *  @playerversion AIR 2.5
      *  @productversion Flex 4.5
      */
-    private var _titleLayout:LayoutBase;
-
     public function get titleLayout():LayoutBase
     {
         return _titleLayout;
@@ -784,6 +856,10 @@

     /**
      *  The data associated with the current view.
+     *  You use this property to pass infomration to the View when
+     *  it is pushed onto the navigator's stack.
+     *  You can set this property by passing a data
+     *  argument to the pushView() method.
      *
      *  @langversion 3.0
      *  @playerversion Flash 10.1
@@ -813,11 +889,30 @@
     //--------------------------------------------------------------------------

     /**
-     *  Methods creates an object that should be returned to the
-     *  previous screen when this view is popped off a navigator's
-     *  stack.
-     *
-     *  @return null
+     *  Creates an object returned to the view navigator
+     *  when this view is popped off the navigator's stack.
+     *
+     *
Override this method in a View to return data back the new
+     *  view when this view is popped off the stack.
+     *  The createReturnObject() method returns a single Object.
+     *  The Object returned by this method is written to the
+     *  ViewNavigator.poppedViewReturnedObject property.

+     *
+     *
The ViewNavigator.poppedViewReturnedObject property
+     *  is of type ViewReturnObject.
+     *  The ViewReturnObject.object property contains the
+     *  value returned by this method.

+     *
+     *
If the poppedViewReturnedObject property is null,
+     *  no data was returned.
+     *  The poppedViewReturnedObject property is guaranteed to be set
+     *  in the new view before the new view receives the add event.

+     *
+     *  @return The value written to the object field of the
+     *  ViewNavigator.poppedViewReturnedObject property.
+     *
+     *  @see ViewNavigator#poppedViewReturnedObject
+     *  @see spark.components.supportClasses.ViewReturnObject
      *
      *  @langversion 3.0
      *  @playerversion Flash 10.1
@@ -831,12 +926,14 @@

     /**
      *  Checks the aspect ratio of the stage and returns the proper state
-     *  that the View should change to.  The possible values are either "portrait"
-     *  or "landscape".  The state is only changed if the desired state exists
-     *  on the View. If it does not, this method will return the component's
-     *  current state.
+     *  that the View should change to.
      *
      *  @return A String specifying the name of the state to apply to the view.
+     *  The possible return values are "portrait"
+     *  or "landscape".
+     *  The state is only changed if the desired state exists
+     *  on the View.
+     *  If it does not, this method returns the component's current state.
      *
      *  @langversion 3.0
      *  @playerversion Flash 10.1
@@ -866,7 +963,7 @@
     private function stage_orientationChangeHandler(event:StageOrientationEvent):void
     {
         if (isActive)
-        	setCurrentState(getCurrentViewState(), false);
+            setCurrentState(getCurrentViewState(), false);
     }

@@ -881,7 +978,7 @@
      */
     override public function initialize():void
     {
-    	super.initialize();
+        super.initialize();

         addEventListener(FlexEvent.CREATION_COMPLETE, creationCompleteHandler);
     }
@@ -907,10 +1004,12 @@
     //--------------------------------------------------------------------------

     /**
-     *  Responsible for serializes the view's data object when the view is being
-     *  persisted to disk.  The created object should be something that can
-     *  be successfully written to a shared object.  By default, this will return
-     *  the data object of the view.
+     *  Responsible for serializes the view's data property
+     *  when the view is being persisted to disk.
+     *  The returned object should be something that can
+     *  be successfully written to a shared object.
+     *  By default, this method returns the data property
+     *  of the view.
      *
      *  @return The serialized data object.
      *
@@ -925,8 +1024,14 @@
     }

     /**
-     *  Deserializes a data object that was saved to disk by the view.  The
-     *  returned object will be the value assigned to the view's data object.
+     *  Deserializes a data object that was saved to disk by the view,
+     *  typically by a call to the serializeData() method.
+     *
+     *  @param value The data object to deserialize.
+     *
+     *  @return The value assigned to the
+     *  view's data property.
+     *
      *
      *  @langversion 3.0
      *  @playerversion Flash 10.1


Transferred from the Adobe Open Source Subversion Repository

Revision: 8483
Author:   smgilson@adobe.com
Date:     2009-07-09T17:52:48.367800Z

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

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

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/easing/EaseInOutBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/Fade.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/animation/MotionPath.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/filters/ColorMatrixFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/easing/Power.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/filters/BlurFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/filters/DisplacementMapFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/filters/ShaderFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/filters/DropShadowFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/CallAction.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/filters/GradientBevelFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/AnimateColor.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/Scale3D.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/Animate.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/AnimateTransitionShader.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/AnimateFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/Rotate3D.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/AddAction.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/Scale.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/VerticalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/primitives/Graphic.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/Move3D.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/Rotate.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/BasicLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/Resize.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/AnimateTransform3D.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/Wipe.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/easing/Sine.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/Move.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/filters/GlowFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/HorizontalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/AnimateTransform.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/TileLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/filters/ConvolutionFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/easing/Linear.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/animation/Keyframe.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/supportClasses/LayoutBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/filters/GradientGlowFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/SetAction.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/RemoveAction.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/filters/BevelFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/filters/GradientFilter.as</path>

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

--- frameworks/projects/spark/src/spark/effects/AnimateTransform3D.as
+++ frameworks/projects/spark/src/spark/effects/AnimateTransform3D.as
@@ -59,7 +59,7 @@
  *  and adds the following tag attributes:

  *
  *

- *  <mx:AnimateTransform
+ *  <s:AnimateTransform
  *    Properties
  *    id="ID"
  *    applyChangesPostLayout="true"


These uints were initialised with a value of -1. Falcon agreed that was silly. For their mistake they now have to suffer under the load of int.MAX_VALUE ;-)

Signed-off-by: Erik de Bruin <c195b508e6f0c57aeafdb5e96947e2b79e6a4b40@ixsoftware.nl>

--- frameworks/projects/spark/src/spark/events/GridItemEditorEvent.as
+++ frameworks/projects/spark/src/spark/events/GridItemEditorEvent.as
@@ -265,8 +265,8 @@
     public function GridItemEditorEvent(type:String,
                                       bubbles:Boolean = false,
                                       cancelable:Boolean = false,
-                                      rowIndex:uint = -1,
-                                      columnIndex:uint = -1,
+                                      rowIndex:uint = int.MAX_VALUE,
+                                      columnIndex:uint = int.MAX_VALUE,
                                       column:GridColumn = null)
     {
         super(type, bubbles, cancelable);


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

--- frameworks/projects/automation_spark/src/spark/automation/tabularData/SkinnableContainerTabularData.as
+++ frameworks/projects/automation_spark/src/spark/automation/tabularData/SkinnableContainerTabularData.as
@@ -1,11 +1,19 @@
 ////////////////////////////////////////////////////////////////////////////////
 //
-//  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.
+//  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
+//
+//      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: 8320
Author:   dloverin@adobe.com
Date:     2009-06-26T18:34:59.947300Z

Log Message:
-----------
Fix the problem where the WindowedApplication was not shutting down after closing Windows.

The problem ended up being the Window class was creating a new NativeWindow (and WindowedSystemManager) in commitProperties() before closing down. The problem is easily fixed by setting flagForOpen to false so the code will not come down this path after _nativeWindow is set to null in the close() method.

QE Notes: none.
Doc Notes: none.
Bugs: SDK-21529
Reviewer: Glenn
tests: checkintests

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/spark/components/Window.as</path>

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

--- frameworks/projects/airframework/src/mx/core/Window.as
+++ frameworks/projects/airframework/src/mx/core/Window.as
@@ -2255,6 +2255,8 @@
         // Create and open window.
         if (flagForOpen && !_nativeWindow)
         {
+            flagForOpen = false;
+
             var init:NativeWindowInitOptions = new NativeWindowInitOptions();
             init.maximizable = _maximizable;
             init.minimizable = _minimizable;


Transferred from the Adobe Open Source Subversion Repository

Revision: 19240
Author:   clucier@adobe.com
Date:     2010-12-09T22:07:22.660903Z

Log Message:
-----------
Since Flex 4.0 the policy of a transition has been, the values of the destination state trump any values that may have been set by effects during the transition (this is different than Flex 3).  There were however cases where we'd fail to apply the proper end values.

For example if a button in states A, B had an explicit width of 100px, and a Resize effect animated the button's width to 500 during the transition..the button's width would be stuck at 500 once the transition was complete.

QE notes: None
Doc notes: None
Bugs: SDK-28195
Reviewer: Jason/Steven
Tests run: Checkin, Catalyst Matrix, Cyclone
Is noteworthy for integration: Yes

Modified Paths:
--------------
/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/effects/Effect.as

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

--- frameworks/projects/framework/src/mx/effects/Effect.as
+++ frameworks/projects/framework/src/mx/effects/Effect.as
@@ -1679,7 +1679,6 @@
                     var startVal:* = propChanges[i].start[propName];
                     var endVal:* = propChanges[i].end[propName];
                     if (propName in propChanges[i].end &&
-                        endVal != startVal &&
                         (!(endVal is Number) ||
                          !(isNaN(endVal) && isNaN(startVal))))
                     {
@@ -1697,7 +1696,6 @@
                     var startStyle:* = propChanges[i].start[styleName];
                     var endStyle:* = propChanges[i].end[styleName];
                     if (styleName in propChanges[i].end &&
-                        endStyle != startStyle &&
                         (!(endStyle is Number) ||
                          !(isNaN(endStyle) && isNaN(startStyle))) &&
                         target is IStyleClient)


Transferred from the Adobe Open Source Subversion Repository

Revision: 1083
Author:   shodgson@adobe.com
Date:     2008-04-02T23:33:46.996974Z

Log Message:
-----------
Merge 1082 from branches/3.0.x to trunk.

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/config/ServerConfig.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/ChannelSet.as</path>

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

--- frameworks/projects/rpc/src/mx/messaging/ChannelSet.as
+++ frameworks/projects/rpc/src/mx/messaging/ChannelSet.as
@@ -559,6 +559,33 @@
             }
             _clustered = value;
         }
+    }
+
+    //----------------------------------
+    //  initialDestinationId
+    //----------------------------------
+
+    /**
+     *  @private
+     */
+    private var _initialDestinationId:String;
+
+    /**
+     *  Provides access to the initial destination this ChannelSet is used to access.
+     *  When the clustered property is true, this value is used to request available failover URIs
+     *  for the configured channels for the destination.
+     */
+    public function get initialDestinationId():String
+    {
+        return _initialDestinationId;
+    }
+
+    /**
+     *  @private
+     */
+    public function set initialDestinationId(value:String):void
+    {
+        _initialDestinationId = value;
     }

     //----------------------------------
@@ -975,6 +1002,9 @@
      *  @param charset The character set encoding to use while encoding the
      *  credentials. The default is null, which implies the legacy charset of
      *  ISO-Latin-1. The only other supported charset is "UTF-8".
+     *
+     *  @return Returns a token that client code may add a responder to in order to handle
+     *  success or failure directly.
      *
      *  @throws flash.errors.IllegalOperationError in two situations; if the ChannelSet is
      *          already authenticated, or if a login or logout operation is currently in progress.
@@ -1046,6 +1076,9 @@
      *
      *  @param agent Legacy argument. The MessageAgent that is initiating the logout.
      *
+     *  @return Returns a token that client code may
+     *  add a responder to in order to handle success or failure directly.
+     *
      *  @throws flash.errors.IllegalOperationError if a login or logout operation is currently in progress.
      */
     public function logout(agent:MessageAgent=null):AsyncToken
@@ -1103,7 +1136,15 @@
             if (!_hasRequestedClusterEndpoints && clustered)
             {
                 var msg:CommandMessage = new CommandMessage();
-                msg.destination = agent.destination;
+                // Fetch failover URIs for the correct destination.
+                if (agent is AuthenticationAgent)
+                {
+                    msg.destination = initialDestinationId;
+                }
+                else
+                {
+                    msg.destination = agent.destination;
+                }
                 msg.operation = CommandMessage.CLUSTER_REQUEST_OPERATION;
                 _currentChannel.sendClusterRequest(new ClusterMessageResponder(msg, this));
                 _hasRequestedClusterEndpoints = true;


Transferred from the Adobe Open Source Subversion Repository

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

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

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

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

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

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

--- frameworks/projects/rpc/src/mx/rpc/wsdl/WSDLBinding.as
+++ frameworks/projects/rpc/src/mx/rpc/wsdl/WSDLBinding.as
@@ -0,0 +1,127 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  ADOBE SYSTEMS INCORPORATED
+//  Copyright 2006-2007 Adobe Systems Incorporated
+//  All Rights Reserved.
+//
+//  NOTICE: Adobe permits you to use, modify, and distribute this file
+//  in accordance with the terms of the license agreement accompanying it.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+package mx.rpc.wsdl
+{
+
+import mx.rpc.soap.SOAPConstants;
+
+/**
+ * A binding defines the message format and protocol for messages sent
+ * to and from operations as defined by a particular portType.
+ *

+ * Currently only SOAP binding is supported for WSDL.
+ *

+ */
+public class WSDLBinding
+{
+    public function WSDLBinding(name:String)
+    {
+        super();
+        _name = name;
+    }
+
+
+    //--------------------------------------------------------------------------
+    //
+    // Properties
+    //
+    //--------------------------------------------------------------------------
+
+    /**
+     * The unique name of this binding.
+     */
+    public function get name():String
+    {
+        return _name;
+    }
+
+    /**
+     * The portType for this binding which provides the interface definitions
+     * for the operations of this binding.
+     */
+    public function get portType():WSDLPortType
+    {
+        return _portType;
+    }
+
+    public function set portType(value:WSDLPortType):void
+    {
+        _portType = value;
+    }
+
+    [Inspectable(enumeration="document,rpc", defaultValue="document", category="General")]
+    /**
+     * Represents a SOAP binding style attribute which is the default for any
+     * operation defined under this binding. The style indicates whether an
+     * operation is RPC-oriented (messages containing parameters and return
+     * values) or document-oriented (message containing document(s)).
+     *

+     * The default is document.
+     *

+     */
+    public function get style():String
+    {
+        if (_style == null)
+            _style = SOAPConstants.DEFAULT_OPERATION_STYLE;
+
+        return _style;
+    }
+
+    public function set style(value:String):void
+    {
+        _style = value;
+    }
+
+    [Inspectable(defaultValue="http://schemas.xmlsoap.org/soap/http/", category="General")]
+    /**
+     * Represents a SOAP binding transport attribute which indicates the
+     * URI of the transport used to send SOAP encoded messages.
+     * The default URI is http://schemas.xmlsoap.org/soap/http/ which signifies
+     * SOAP over HTTP (and is currently the only transport supported).
+     */
+    public function get transport():String
+    {
+        if (_transport == null)
+            _transport = WSDLConstants.SOAP_HTTP_URI;
+
+        return _transport;
+    }
+
+    public function set transport(value:String):void
+    {
+        _transport = value;
+    }
+
+
+    //--------------------------------------------------------------------------
+    //
+    // Methods
+    //
+    //--------------------------------------------------------------------------
+
+    /**
+     * @private
+     */
+    public function toString():String
+    {
+        return "WSDLBinding name=" + _name
+            + ", style=" + _style
+            + ", transport=" + _transport;
+    }
+
+    private var _name:String;
+    private var _portType:WSDLPortType;
+    private var _style:String;
+    private var _transport:String;
+}
+
+}


A BitmapData encoder/decoder
M custom objects encoding now uses IExternalizable methods when available

git-svn-id: 3704838867447408e01268abee7e32a5bd8c3d03@9 5cda2b45-c24c-6f34-eaa9-e0910a1cbe04

--- src/aerys/qark/Qark.as
+++ src/aerys/qark/Qark.as
@@ -1,23 +1,28 @@
 package aerys.qark
 {
+	import flash.display.BitmapData;
 	import flash.utils.ByteArray;
+	import flash.utils.IExternalizable;
 	import flash.utils.describeType;
 	import flash.utils.getDefinitionByName;
 	import flash.utils.getQualifiedClassName;

 	public class Qark
 	{
-		private static const FLAG_OBJECT		: int		= 0;
-		private static const FLAG_ARRAY			: int		= 1;
-		private static const FLAG_INTEGER		: int		= 2;
-		private static const FLAG_FLOAT			: int		= 3;
-		private static const FLAG_STRING		: int		= 4;
-		private static const FLAG_UTF_STRING	: int		= 5;
-		private static const FLAG_BYTES			: int		= 6;
-		private static const FLAG_BOOLEAN		: int		= 7;
-		private static const FLAG_CUSTOM		: int		= 8;
-
-		private static const ENCODERS		: Array		= [encodeObject,
+		private static const FLAG_CUSTOM		: int		= 0;
+		private static const FLAG_OBJECT		: int		= 1;
+		private static const FLAG_ARRAY			: int		= 2;
+		private static const FLAG_INTEGER		: int		= 3;
+		private static const FLAG_FLOAT			: int		= 4;
+		private static const FLAG_STRING		: int		= 5;
+		private static const FLAG_UTF_STRING	: int		= 6;
+		private static const FLAG_BYTES			: int		= 7;
+		private static const FLAG_BOOLEAN		: int		= 8;
+		private static const FLAG_BITMAP_DATA	: int		= 9;
+
+
+		private static const ENCODERS		: Array		= [encodeCustomObject,
+														   encodeObject,
 														   encodeArray,
 														   encodeInteger,
 														   encodeFloat,
@@ -25,9 +30,10 @@
 														   encodeUTFString,
 														   encodeBytes,
 														   encodeBoolean,
-														   encodeCustomObject];
-
-		private static const DECODERS		: Array		= [decodeObject,
+														   encodeBitmapData];
+
+		private static const DECODERS		: Array		= [decodeCustomObject,
+														   decodeObject,
 														   decodeArray,
 														   decodeInteger,
 														   decodeFloat,
@@ -35,7 +41,7 @@
 														   decodeUTFString,
 														   decodeBytes,
 														   decodeBoolean,
-														   decodeCustomObject];
+														   decodeBitmapData];

 		private static function getTypeFlag(source : *) : int
 		{
@@ -51,6 +57,8 @@
 				return FLAG_BYTES;
 			if (source is Boolean)
 				return FLAG_BOOLEAN;
+			if (source is BitmapData)
+				return FLAG_BITMAP_DATA;
 			if (getQualifiedClassName(source) == "Object")
 				return FLAG_OBJECT;

@@ -221,19 +229,26 @@

 		private static function encodeCustomObject(source : Object, target : ByteArray) : void
 		{
-			var variables : XMLList = describeType(source).variable;
-			var object	: Object = new Object();
-
-			encodeString(getQualifiedClassName(source), target);
-
-			for each (var variable : XML in variables)
-			{
-				var propertyName : String = variable.@name;
-
-				object[propertyName] = source[propertyName];
-			}
-
-			encodeObject(object, target);
+			if (source is IExternalizable)
+			{
+				(source as IExternalizable).writeExternal(target);
+			}
+			else
+			{
+				var variables : XMLList = describeType(source).variable;
+				var object	: Object = new Object();
+
+				encodeString(getQualifiedClassName(source), target);
+
+				for each (var variable : XML in variables)
+				{
+					var propertyName : String = variable.@name;
+
+					object[propertyName] = source[propertyName];
+				}
+
+				encodeObject(object, target);
+			}
 		}

 		private static function decodeCustomObject(source : ByteArray) : Object
@@ -241,9 +256,32 @@
 			var className : String = decodeString(source);
 			var instance : Object = new (getDefinitionByName(className))();

-			decodeObject(source, instance);
+			if (instance is IExternalizable)
+				(instance as IExternalizable).readExternal(source);
+			else
+				decodeObject(source, instance);

 			return instance;
+		}
+
+		private static function encodeBitmapData(source : BitmapData, target : ByteArray) : void
+		{
+			var ba : ByteArray = source.getPixels(source.rect);
+
+			target.writeShort(source.width);
+			target.writeShort(source.height);
+
+			encodeBytes(ba, target);
+		}
+
+		private static function decodeBitmapData(source : ByteArray) : BitmapData
+		{
+			var bmp : BitmapData = new BitmapData(source.readShort(),
+												  source.readShort());
+
+			bmp.setPixels(bmp.rect, decodeBytes(source));
+
+			return bmp;
 		}
 	}
 }


fixed bug where getSessionStateTree() was requesting deprecated properties.

--- WeaveCore/src/weave/core/SessionManager.as
+++ WeaveCore/src/weave/core/SessionManager.as
@@ -259,6 +259,7 @@
 			}
 			else
 			{
+				var deprecatedLookup:Object = null;
 				if (object is ILinkableDynamicObject)
 				{
 					// do not show static object in tree
@@ -267,12 +268,14 @@
 				else if (object)
 				{
 					names = getLinkablePropertyNames(object);
+					var className:String = getQualifiedClassName(object);
+					deprecatedLookup = classNameToDeprecatedGetterLookup[className];
 				}
 				for each (var name:String in names)
 				{
 					if (object is ILinkableDynamicObject)
 						childObject = (object as ILinkableDynamicObject).internalObject;
-					else
+					else if (!deprecatedLookup[name])
 						childObject = object[name];
 					if (!childObject)
 						continue;


added support for 'regex' property as an alternative to the preferred 'regexp' property

--- WeaveData/src/weave/data/KeySets/ColumnDataFilter.as
+++ WeaveData/src/weave/data/KeySets/ColumnDataFilter.as
@@ -37,6 +37,7 @@
 		}

 		public static const REGEXP:String = 'regexp';
+		private static const ALTERNATE_REGEX_PROPERTY:String = 'regex';

 		public const enabled:LinkableBoolean = registerLinkableChild(this, new LinkableBoolean(true), _cacheVars);
 		public const includeMissingKeyTypes:LinkableBoolean = registerLinkableChild(this, new LinkableBoolean(true), _cacheVars);
@@ -219,7 +220,7 @@
 			}
 			else if (isRegExp(value))
 			{
-				return new RegExp(value[REGEXP]).toString();
+				return new RegExp(value[REGEXP] || value[ALTERNATE_REGEX_PROPERTY]).toString();
 			}

 			return null;
@@ -227,7 +228,8 @@

 		private static function isRegExp(obj:Object):Boolean
 		{
-			return obj != null && typeof obj == 'object' && obj.hasOwnProperty(REGEXP);
+			return obj != null && typeof obj == 'object'
+				&& (obj.hasOwnProperty(REGEXP) || obj.hasOwnProperty(ALTERNATE_REGEX_PROPERTY));
 		}

 		private var _deprecatedRangeState:Object;


Transferred from the Adobe Open Source Subversion Repository

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

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

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

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

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

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

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

--- frameworks/projects/advancedgrids/src/mx/olap/OLAPCell.as
+++ frameworks/projects/advancedgrids/src/mx/olap/OLAPCell.as
@@ -0,0 +1,103 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  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.olap
+{
+
+/**
+ *  The OLAPCell class represents a cell in an OLAPResult instance.
+ *
+ *  @see mx.olap.OLAPResult
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
+ */
+public class OLAPCell implements IOLAPCell
+{
+    include "../core/Version.as";
+
+    //--------------------------------------------------------------------------
+    //
+    //  Constructor
+    //
+    //--------------------------------------------------------------------------
+
+    /**
+     *  Constructor
+     *
+     *  @param value The raw value in the cell.
+     *
+     *  @param formattedValue The formatted value in the cell.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    public function OLAPCell(value:Number, formattedValue:String=null)
+    {
+        _value = value;
+        _formattedValue = formattedValue;
+    }
+
+    //--------------------------------------------------------------------------
+    //
+    //  Properties
+    //
+    //--------------------------------------------------------------------------
+
+    //----------------------------------
+    // formattedValue
+    //----------------------------------
+
+    /**
+     * @private
+     */
+    protected var _formattedValue:String;
+
+    /**
+     *  @inheritDoc
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    public function get formattedValue():String
+    {
+        if (_formattedValue)
+            return _formattedValue;
+        return _value.toString();
+    }
+
+    //----------------------------------
+    // value
+    //----------------------------------
+
+    private var _value:Number;
+
+    /**
+     *  @inheritDoc
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    public function get value():Number
+    {
+        return _value;
+    }
+
+}
+}


Transferred from the Adobe Open Source Subversion Repository

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

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

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

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

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

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

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

--- frameworks/projects/automation_dmv/src/mx/core/Version.as
+++ frameworks/projects/automation_dmv/src/mx/core/Version.as
@@ -0,0 +1,18 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  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.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+import mx.core.mx_internal;
+
+/**
+ *  @private
+ *  Version string for this class.
+ */
+mx_internal static const VERSION:String = "4.0.0.0";