Transferred from the Adobe Open Source Subversion Repository

Revision: 12816
Author:   jszeto@adobe.com
Date:     2009-12-11T00:19:26.766916Z

Log Message:
-----------
VideoPlayer full screen bug fix

SDK-24308 - Full-screen VideoPlayer running as AIR application on dual monitor setup has white background

If we are running on the AIR Player, then use the Screen bounds API instead.

QE notes: None
Doc notes: None
Bugs: SDK-24308
Reviewer: Ryan
Tests run: checkintests
Is noteworthy for integration: No

Modified Paths:
--------------
/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/VideoPlayer.as

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

--- frameworks/projects/spark/src/spark/components/VideoPlayer.as
+++ frameworks/projects/spark/src/spark/components/VideoPlayer.as
@@ -21,6 +21,7 @@
 import flash.events.TimerEvent;
 import flash.geom.Rectangle;
 import flash.media.Video;
+import flash.system.ApplicationDomain;
 import flash.utils.Timer;

 import mx.core.FlexGlobals;
@@ -550,6 +551,43 @@
      */
     private static const THUMBNAIL_SOURCE_PROPERTY_FLAG:uint = 1 << 9;

+
+    //--------------------------------------------------------------------------
+    //
+    //  Class properties
+    //
+    //--------------------------------------------------------------------------
+
+    /**
+     * @private
+     */
+    private static var _screenClass:Class;
+
+    /**
+     * @private
+     */
+    private static var checkedForScreenClass:Boolean;
+
+    /**
+     *  @private
+     */
+    private static function get screenClass():Class
+    {
+        if (!checkedForScreenClass)
+        {
+            checkedForScreenClass = true;
+
+            if (ApplicationDomain.currentDomain.
+                hasDefinition("flash.display::Screen"))
+            {
+                _screenClass = Class(ApplicationDomain.currentDomain.
+                    getDefinition("flash.display::Screen"));
+            }
+        }
+
+        return _screenClass;
+    }
+
     //--------------------------------------------------------------------------
     //
     //  Class mixins
@@ -1978,6 +2016,30 @@
     {
         currentTimeDisplay.text = formatTimeValue(currentTime);
     }
+
+    /**
+     *  @private
+     *  Returns the screen bounds.
+     *  If we are on the AIR Player, we need to work around AIR Player bug #2503351
+     *  We check if the flash.display.Screen class is defined. If so, then
+     *  we are running on the AIR Player and can access this API.
+     */
+    mx_internal function getScreenBounds():Rectangle
+    {
+        if (screenClass)
+        {
+            // Get the screen where the application resides
+            var nativeWindowBounds:Rectangle = stage["nativeWindow"]["bounds"];
+            var currentScreen:Object = screenClass["getScreensForRectangle"](nativeWindowBounds)[0];
+
+            // Return the bounds of that screen
+            return currentScreen["bounds"];
+        }
+        else
+        {
+            return new Rectangle(0, 0, stage.fullScreenWidth, stage.fullScreenHeight);
+        }
+    }

     //--------------------------------------------------------------------------
     //
@@ -2099,6 +2161,8 @@
             // check to make sure we can go into fullscreen mode
             if (!systemManager.getTopLevelRoot())
                 return;
+
+            var screenBounds:Rectangle = getScreenBounds();

             fullScreen = true;

@@ -2141,7 +2205,7 @@
             // Resize the component to be the full screen of the stage.
             // Push the component at (0,0).  It should be on top of everything
             // at this point because it was added as a popup
-            setLayoutBoundsSize(stage.fullScreenWidth, stage.fullScreenHeight, true);
+            setLayoutBoundsSize(screenBounds.width, screenBounds.height, true);
             // set the explicit width/height to make sure this value sticks regardless
             // of any other code or layout passes.  Calling setLayoutBoundsSize() before hand
             // allows us to use postLayout width/height
@@ -2162,8 +2226,6 @@
             this.validateNow();

             systemManager.stage.addEventListener(FullScreenEvent.FULL_SCREEN, fullScreenEventHandler);
-
-            systemManager.stage.fullScreenSourceRect = new Rectangle(0, 0, stage.fullScreenWidth, stage.fullScreenHeight);

             // FIXME (rfrishbe): Should we make this FULL_SCREEN_INTERACTIVE if in AIR?
             systemManager.stage.displayState = StageDisplayState.FULL_SCREEN;


Remove dead code

Remove dead code

--- src/aerys/minko/render/shader/compiler/allocation/ContiguousAllocation.as
+++ src/aerys/minko/render/shader/compiler/allocation/ContiguousAllocation.as
@@ -26,11 +26,6 @@
 		{
 			return offset % 4;
 		}
-
-//		public function get writeMask() : uint
-//		{
-//
-//		}

 		public function get aligned() : Boolean
 		{


fixed bug with LinkableHashMap and LinkableSynchronizer where the synchronizer may run code before the LinkableHashMap state was finished updating.

--- WeaveCore/src/weave/core/LinkableHashMap.as
+++ WeaveCore/src/weave/core/LinkableHashMap.as
@@ -18,13 +18,15 @@
 	import flash.utils.Dictionary;
 	import flash.utils.getQualifiedClassName;

+	import weave.api.disposeObject;
+	import weave.api.getCallbackCollection;
+	import weave.api.newLinkableChild;
+	import weave.api.registerLinkableChild;
 	import weave.api.core.DynamicState;
+	import weave.api.core.ICallbackCollection;
 	import weave.api.core.IChildListCallbackInterface;
 	import weave.api.core.ILinkableHashMap;
-	import weave.api.core.ILinkableObject;
-	import weave.api.disposeObject;
-	import weave.api.newLinkableChild;
-	import weave.api.registerLinkableChild;
+	import weave.api.core.ILinkableObject;

 	/**
 	 * Allows dynamically creating instances of objects implementing ILinkableObject at runtime.
@@ -411,7 +413,9 @@

 			//trace(LinkableHashMap, "setSessionState "+setMissingValuesToNull, ObjectUtil.toString(newState.qualifiedClassNames), ObjectUtil.toString(newState));
 			// first pass: make sure the types match and sessioned properties are instantiated.
-			var i:int;
+			var i:int;
+			var delayed:Array = [];
+			var callbacks:ICallbackCollection;
 			var objectName:String;
 			var className:String;
 			var typedState:Object;
@@ -420,6 +424,14 @@
 			var newNameOrder:Array = []; // the order the object names appear in the vector
 			if (newStateArray != null)
 			{
+				// first pass: delay callbacks of all children
+				for each (objectName in _orderedNames)
+				{
+					callbacks = WeaveAPI.SessionManager.getCallbackCollection(_nameToObjectMap[objectName]);
+					delayed.push(callbacks)
+					callbacks.delayCallbacks();
+				}
+
 				// initialize all the objects before setting their session states because they may refer to each other.
 				for (i = 0; i < newStateArray.length; i++)
 				{
@@ -437,8 +449,17 @@
 					// initialize object and remember if a new one was just created
 					if (_nameToObjectMap[objectName] != initObjectByClassName(objectName, className))
 						newObjects[objectName] = true;
-				}
-				// second pass: copy the session state for each property that is defined.
+				}
+
+				// next pass: delay callbacks of all children (again, because there may be new children)
+				for each (objectName in _orderedNames)
+				{
+					callbacks = WeaveAPI.SessionManager.getCallbackCollection(_nameToObjectMap[objectName]);
+					delayed.push(callbacks)
+					callbacks.delayCallbacks();
+				}
+
+				// next pass: copy the session state for each property that is defined.
 				// Also remember the ordered list of names that appear in the session state.
 				for (i = 0; i < newStateArray.length; i++)
 				{
@@ -480,7 +501,14 @@
 				}
 			}
 			// update name order AFTER objects have been added and removed.
-			setNameOrder(newNameOrder);
+			setNameOrder(newNameOrder);
+
+			// final pass: resume all callbacks
+
+			// next pass: delay callbacks of all children
+			for each (callbacks in delayed)
+				if (!WeaveAPI.SessionManager.objectWasDisposed(callbacks))
+					callbacks.resumeCallbacks();

 			resumeCallbacks();
 		}


OFC-720

--- collect-client/src/main/flex/org/openforis/collect/presenter/InputFieldPresenter.as
+++ collect-client/src/main/flex/org/openforis/collect/presenter/InputFieldPresenter.as
@@ -15,7 +15,9 @@
 	import org.openforis.collect.event.InputFieldEvent;
 	import org.openforis.collect.event.NodeEvent;
 	import org.openforis.collect.metamodel.proxy.AttributeDefinitionProxy;
+	import org.openforis.collect.metamodel.proxy.NumberAttributeDefinitionProxy;
 	import org.openforis.collect.metamodel.proxy.NumericAttributeDefinitionProxy;
+	import org.openforis.collect.metamodel.proxy.RangeAttributeDefinitionProxy;
 	import org.openforis.collect.model.FieldSymbol;
 	import org.openforis.collect.model.proxy.AttributeProxy;
 	import org.openforis.collect.model.proxy.EntityProxy;
@@ -210,7 +212,8 @@
 		}

 		private static function skippedField(attr:AttributeProxy, index:int):Boolean {
-			if ( attr.definition is NumericAttributeDefinitionProxy && index == 1 ) {
+			if ( attr.definition is NumberAttributeDefinitionProxy && index == 1 ||
+				attr.definition is RangeAttributeDefinitionProxy && index == 2 ) {
 				//OFC-720
 				return true;
 			} else {


Added utility method

Added utility method

--- collect-flex/collect-flex-client/src/main/flex/org/openforis/collect/model/Queue.as
+++ collect-flex/collect-flex-client/src/main/flex/org/openforis/collect/model/Queue.as
@@ -1,58 +1,68 @@
-package org.openforis.collect.model {
-	/**
-	 * @author S. Ricci
-	 */
-	public class Queue {
-		private var _first:Node;
-		private var _last:Node;
-
-		public function isEmpty():Boolean {
-			return (_first == null);
-		}
-
-		/**
-		 *
-		 * Append the object to the queue
-		 * */
-		public function push(data:Object):void {
-			var node:Node = new Node();
-			node.data = data;
-			node.next = null;
-			if (isEmpty()) {
-				_first = node;
-				_last = node;
-			} else {
-				_last.next = node;
-				_last = node;
-			}
-		}
-
-		/**
-		 * Returns the head of the queue and removes it
-		 * */
-		public function pop():Object {
-			if (isEmpty()) {
-				return null;
-			}
-			var data:Object = _first.data;
-			_first = _first.next;
-			return data;
-		}
-
-		/**
-		 * Returns the head of the queue without removing it
-		 */
-		public function get element():Object {
-			if (isEmpty()) {
-				return null;
-			}
-			var data:Object = _first.data;
-			return data;
-		}
-	}
-}
-
-internal class Node {
-	public var next : Node;
-	public var data : Object;
+package org.openforis.collect.model {
+	/**
+	 * @author S. Ricci
+	 */
+	public class Queue {
+		private var _first:Node;
+		private var _last:Node;
+
+		public function isEmpty():Boolean {
+			return (_first == null);
+		}
+
+		/**
+		 *
+		 * Append the object to the queue
+		 * */
+		public function push(data:Object):void {
+			var node:Node = new Node();
+			node.data = data;
+			node.next = null;
+			if (isEmpty()) {
+				_first = node;
+				_last = node;
+			} else {
+				_last.next = node;
+				_last = node;
+			}
+		}
+
+		/**
+		 * Returns the head of the queue and removes it
+		 * */
+		public function pop():Object {
+			if (isEmpty()) {
+				return null;
+			}
+			var data:Object = _first.data;
+			_first = _first.next;
+			return data;
+		}
+
+		/**
+		 * Returns the head of the queue without removing it
+		 */
+		public function get element():Object {
+			if (isEmpty()) {
+				return null;
+			}
+			var data:Object = _first.data;
+			return data;
+		}
+
+		/**
+		 * Append all the items to the queue
+		 */
+		public function pushAll(items:Array):void {
+			for each (var item:* in items) {
+				push(item);
+			}
+
+		}
+	}
+}
+
+internal class Node {
+	public var next : Node;
+	public var data : Object;
 }


Log to stderr and die on uncaught error.

--- src/stdio/Process.as
+++ src/stdio/Process.as
@@ -1,6 +1,6 @@
 package stdio {
   import flash.display.Sprite
-  import flash.events.UncaughtErrorEvent
+  import flash.events.*
   import flash.net.*

   public class Process extends Sprite {
@@ -14,7 +14,7 @@
     public function Process() {
       instance = this
       connect(function (): void {
-        handle_uncaught_errors()
+        listen_for_uncaught_errors()
         main()
       })
     }
@@ -64,13 +64,25 @@
     public function get stdout(): OutputStream { return stdout_socket }
     public function get stderr(): OutputStream { return stderr_socket }

-    private function handle_uncaught_errors(): void {
+    private function listen_for_uncaught_errors(): void {
       loaderInfo.uncaughtErrorEvents.addEventListener(
         UncaughtErrorEvent.UNCAUGHT_ERROR,
-        function (event: UncaughtErrorEvent): void {
-          warn(event.error.stack)
-        }
+        handle_uncaught_error_event
       )
+    }
+
+    protected function handle_uncaught_error_event(
+      event: UncaughtErrorEvent
+    ): void {
+      event.preventDefault()
+
+      if (event.error is Error) {
+        warn((event.error as Error).getStackTrace())
+      } else {
+        warn(event.error)
+      }
+
+      exit(1)
     }

     private function connect(callback: Function): void {


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

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

 package mx.events
 {


Transferred from the Adobe Open Source Subversion Repository

Revision: 19724
Author:   jasonsj@adobe.com
Date:     2011-01-12T01:07:20.451197Z

Log Message:
-----------
Moved ActionBar font color style declaration to #titleDisplay part and subclasses of ButtonBase
Replaced MobileSkin usage of layoutMeasuredWidth/Height with minWidth/Height

QE notes: Some mustella baselines for ActionBar custom content will need to be regenerated. In particular, usage of TextInput with text content.
Doc notes:
Bugs:
SDK-28948 The default color for text in TextInput on ActionBar is white so it looks invisible
SDK-28953 Button width not adjusted as expected when changing percentWidth at runtime
Reviewer: rfrishbe, chiedozi
Tests run: checkintests
Is noteworthy for integration: No

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/ButtonSkinBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/MobileSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/TextAreaVScrollBarSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/defaults.css</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/TextInputSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/VScrollBarSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/ButtonSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/NavigationBackButtonSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/TextAreaSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/ActionBarButtonSkinBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/TextAreaHScrollBarSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/CheckBoxSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/TabbedViewNavigatorButtonBarButtonSkinBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/ActionRoundedButtonSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/RadioButtonSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/HScrollBarSkin.as</path>

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

--- frameworks/projects/mobiletheme/src/spark/skins/mobile/ButtonSkin.as
+++ frameworks/projects/mobiletheme/src/spark/skins/mobile/ButtonSkin.as
@@ -82,8 +82,8 @@
                 layoutPaddingTop = 20;
                 layoutPaddingBottom = 20;
                 layoutBorderSize = 2;
-                layoutMeasuredWidth = 64;
-                layoutMeasuredHeight = 86;
+                minWidth = 64;
+                minHeight = 86;

                 break;
             }
@@ -99,8 +99,8 @@
                 layoutPaddingTop = 15;
                 layoutPaddingBottom = 14;
                 layoutBorderSize = 1;
-                layoutMeasuredWidth = 48;
-                layoutMeasuredHeight = 65;
+                minWidth = 48;
+                minHeight = 65;

                 break;
             }
@@ -117,8 +117,8 @@
                 layoutPaddingTop = 10;
                 layoutPaddingBottom = 10;
                 layoutBorderSize = 1;
-                layoutMeasuredWidth = 32;
-                layoutMeasuredHeight = 43;
+                minWidth = 32;
+                minHeight = 43;

                 break;
             }


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

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


Transferred from the Adobe Open Source Subversion Repository

Revision: 4283
Author:   rfrishbe@adobe.com
Date:     2008-12-10T22:34:18.162845Z

Log Message:
-----------
PARB Review changes for Group and DataGroup.  The main API changes are:

- content property on Group and FxContainer renamed to mxmlContent.

- contentFactory property on FxContainer renamed to mxmlContentFactory

- New names for DataGroup methods: getRendererForItemAt(index:int):IVisualElement and getItemIndexForRenderer(renderer:IVisualElement):int.  These are now in the mxml_internal namespace (not public anymore)

- registerRenderer and unregisterRenderer are private methods (not public)

Also, I made a minor fix to ITransformable.

QE Notes: Steve's changing the mustella tests for me and will be checking in shortly.
Doc Notes: None
Bugs: SDK-18042
Reviewer: Hans
tests: checkintests, Steve ran mustella tests for all of gumbo and states

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/geom/ITransformable.as</path>
<path kind="file" action="M">/flex/sdk/trunk/development/eclipse/flex/flex4test/src/skins/MyScrollBarTrackSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/DataGroup.as</path>
<path kind="file" action="M">/flex/sdk/trunk/development/eclipse/flex/flex4test/src/skins/MyVScrollBarSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/Group.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/baseClasses/FxListBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxButtonBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/wireframe/src/wireframe/FxDefaultComplexItemRenderer.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/development/eclipse/flex/flex4test/src/skins/CircularScrollBarTrackSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxList.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/wireframe/src/wireframe/FxDefaultItemRenderer.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxDefaultComplexItemRenderer.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/baseClasses/GroupBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/development/eclipse/flex/flex4test/src/skins/CircularScrollBarSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxContainer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/graphicsClasses/GraphicElement.as</path>

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

--- frameworks/projects/spark/src/spark/components/SkinnableContainer.as
+++ frameworks/projects/spark/src/spark/components/SkinnableContainer.as
@@ -63,9 +63,7 @@
 //  Excluded APIs
 //--------------------------------------

-[Exclude(name="content", kind="property")]
-
-[DefaultProperty("contentFactory")]
+[DefaultProperty("mxmlContentFactory")]

 /**
  *  The FxContainer class is the base class for all skinnable components that have
@@ -172,8 +170,8 @@
             {
                 _placeHolderGroup = new Group();

-                if (_content)
-                    _placeHolderGroup.content = _content;
+                if (_mxml_content)
+                    _placeHolderGroup.mxmlContent = _mxml_content;

                 _placeHolderGroup.addEventListener(
                     ItemExistenceChangedEvent.ITEM_ADD, contentGroup_itemAddedHandler);
@@ -189,40 +187,40 @@
     }

     //----------------------------------
-    //  contentFactory
+    //  mxmlContentFactory
     //----------------------------------

     /**
      *  @private
      *  Backing variable for the contentFactory property.
      */
-    private var _contentFactory:IDeferredInstance;
+    private var _mxmlContentFactory:IDeferredInstance;

     /**
      *  @private
      *  Flag that indicates whether or not the content has been created.
      */
-    private var contentCreated:Boolean = false;
+    private var mxmlContentCreated:Boolean = false;

     /**
      *  A factory object that creates the initial value for the
      *  content property.
      */
-    public function get contentFactory():IDeferredInstance
-    {
-        return _contentFactory;
+    public function get mxmlContentFactory():IDeferredInstance
+    {
+        return _mxmlContentFactory;
     }

     /**
      *  @private
      */
-    public function set contentFactory(value:IDeferredInstance):void
-    {
-        if (value == _contentFactory)
+    public function set mxmlContentFactory(value:IDeferredInstance):void
+    {
+        if (value == _mxmlContentFactory)
             return;

-        _contentFactory = value;
-        contentCreated = false;
+        _mxmlContentFactory = value;
+        mxmlContentCreated = false;
     }

     //----------------------------------
@@ -291,39 +289,39 @@
     //  content
     //----------------------------------

-    private var _content:Object;
+    private var _mxml_content:Object;

     /**
      *  @copy mx.components.Group#content
      */
     [Bindable]
-    public function get content():Object
+    public function get mxmlContent():Object
     {
         // Make sure deferred content is created, if needed
         createContentIfNeeded();

         if (contentGroup)
-            return contentGroup.content;
+            return contentGroup.mxmlContent;
         else if (_placeHolderGroup)
-            return _placeHolderGroup.content;
+            return _placeHolderGroup.mxmlContent;
         else
-            return _content;
-    }
-
-    /**
-     *  @private
-     */
-    public function set content(value:Object):void
-    {
-        if (value == _content)
+            return _mxml_content;
+    }
+
+    /**
+     *  @private
+     */
+    public function set mxmlContent(value:Object):void
+    {
+        if (value == _mxml_content)
             return;

-        _content = value;
+        _mxml_content = value;

         if (contentGroup)
-            contentGroup.content = value;
+            contentGroup.mxmlContent = value;
         else if (_placeHolderGroup)
-            _placeHolderGroup.content = value;
+            _placeHolderGroup.mxmlContent = value;
     }

     //----------------------------------
@@ -676,15 +674,12 @@
         {
             if (_placeHolderGroup != null)
             {
-                var sourceContent:Array = _placeHolderGroup.content as Array;
+                var sourceContent:Array = _placeHolderGroup.mxmlContent as Array;

                 if (sourceContent)
-                    contentGroup.content = sourceContent.slice();
-                else if (_placeHolderGroup.content is IList)
-                    throw new Error("ContainerSkin can not currently handle content of type " +
-                            "IList when adding children dynamically.");
+                    contentGroup.mxmlContent = sourceContent.slice();
                 else
-                    contentGroup.content = _placeHolderGroup.content;
+                    contentGroup.mxmlContent = _placeHolderGroup.mxmlContent;

                 // Temporary workaround because copying content from one Group to another throws RTE
                 for (var i:int = _placeHolderGroup.numElements; i > 0; i--)
@@ -693,9 +688,9 @@
                 }

             }
-            else if (_content != null)
-            {
-                contentGroup.content = _content;
+            else if (_mxml_content != null)
+            {
+                contentGroup.mxmlContent = _mxml_content;
             }

             // copy proxied values from contentGroupProperties (if set) to contentGroup
@@ -784,11 +779,11 @@

             contentGroupProperties = newContentGroupProperties;

-            if (contentGroup.content)
+            if (contentGroup.mxmlContent)
             {
                 _placeHolderGroup = new Group();

-                _placeHolderGroup.content = contentGroup.content;
+                _placeHolderGroup.mxmlContent = contentGroup.mxmlContent;

                 _placeHolderGroup.addEventListener(
                     ItemExistenceChangedEvent.ITEM_ADD, contentGroup_itemAddedHandler);
@@ -798,7 +793,7 @@

             // TODO: Need to force the contentGroup to removeChild on its content children
             // before the any other Group adds the content children
-            contentGroup.content = null;
+            contentGroup.mxmlContent = null;
             contentGroup.validateProperties();
         }
     }
@@ -817,13 +812,13 @@
      */
     public function createDeferredContent():void
     {
-        if (!contentCreated)
-        {
-            contentCreated = true;
-
-            if (contentFactory)
-            {
-                content = contentFactory.getInstance();
+        if (!mxmlContentCreated)
+        {
+            mxmlContentCreated = true;
+
+            if (mxmlContentFactory)
+            {
+                mxmlContent = mxmlContentFactory.getInstance();
                 dispatchEvent(new FlexEvent(FlexEvent.CONTENT_CREATION_COMPLETE));
             }
         }
@@ -834,7 +829,7 @@
      */
     private function createContentIfNeeded():void
     {
-        if (!contentCreated && creationPolicy != ContainerCreationPolicy.NONE)
+        if (!mxmlContentCreated && creationPolicy != ContainerCreationPolicy.NONE)
             createDeferredContent();
     }


Redmine Feature #801 scene - DynamicTextureController - add property to force clearing of the BitmapData between frames. Added the logic

--- src/aerys/minko/scene/controller/mesh/DynamicTextureController.as
+++ src/aerys/minko/scene/controller/mesh/DynamicTextureController.as
@@ -4,13 +4,14 @@
 	import aerys.minko.render.resource.texture.TextureResource;
 	import aerys.minko.scene.controller.EnterFrameController;
 	import aerys.minko.scene.node.ISceneNode;
+	import aerys.minko.scene.node.Mesh;
 	import aerys.minko.scene.node.Scene;
-	import aerys.minko.scene.node.Mesh;
 	import aerys.minko.type.binding.DataProvider;

 	import flash.display.BitmapData;
 	import flash.display.DisplayObject;
 	import flash.geom.Matrix;
+	import flash.geom.Rectangle;

 	/**
 	 * The DynamicTextureController makes it possible to use Flash DisplayObjects
@@ -27,18 +28,19 @@
 	 */
 	public final class DynamicTextureController extends EnterFrameController
 	{
-		private var _data			: DataProvider		= null;
+		private var _data					: DataProvider		= null;

-		private var _source			: DisplayObject		= null;
-		private var _framerate		: Number			= 0.;
-		private var _mipMapping		: Boolean			= false;
-		private var _propertyName	: String			= null;
-		private var _matrix			: Matrix			= null;
-
-		private var _bitmapData	: BitmapData			= null;
-		private var _texture	: TextureResource		= null;
+		private var _source					: DisplayObject		= null;
+		private var _framerate				: Number			= 0.;
+		private var _mipMapping				: Boolean			= false;
+		private var _propertyName			: String			= null;
+		private var _matrix					: Matrix			= null;
+		private var _forceBitmapDataClear	: Boolean			= false;
+		private var _bitmapData				: BitmapData		= null;
+		private var _texture				: TextureResource	= null;

 		private var _lastDraw	: Number				= 0.;
+

 		/**
 		 * Create a new DynamicTextureController.
@@ -54,13 +56,14 @@
 		 * into the dynamic texture. Default value is 'null'.
 		 *
 		 */
-		public function DynamicTextureController(source			: DisplayObject,
-												 width			: Number,
-												 height			: Number,
-												 mipMapping		: Boolean	= true,
-												 framerate		: Number	= 30.,
-												 propertyName	: String	= 'diffuseMap',
-												 matrix			: Matrix	= null)
+		public function DynamicTextureController(source					: DisplayObject,
+												 width					: Number,
+												 height					: Number,
+												 mipMapping				: Boolean	= true,
+												 framerate				: Number	= 30.,
+												 propertyName			: String	= 'diffuseMap',
+												 matrix					: Matrix	= null,
+												 forceBitmapDataClear	: Boolean	= false)
 		{
 			super();

@@ -70,11 +73,22 @@
 			_mipMapping = mipMapping;
 			_propertyName = propertyName;
 			_matrix = matrix;
+			_forceBitmapDataClear = forceBitmapDataClear;

 			_data = new DataProvider();
 			_data.setProperty(propertyName, _texture);
 		}

+		public function get forceBitmapDataClear():Boolean
+		{
+			return _forceBitmapDataClear;
+		}
+
+		public function set forceBitmapDataClear(value:Boolean):void
+		{
+			_forceBitmapDataClear = value;
+		}
+
 		override protected function targetAddedHandler(ctrl		: EnterFrameController,
 													   target	: ISceneNode) : void
 		{
@@ -112,6 +126,10 @@
 				_lastDraw = time;

 				_bitmapData ||= new BitmapData(_source.width, _source.height);
+				if (_forceBitmapDataClear)
+				{
+					_bitmapData.fillRect(new Rectangle(0, 0, _bitmapData.width, _bitmapData.height), 0);
+				}
 				_bitmapData.draw(_source, _matrix);

 				_texture.setContentFromBitmapData(_bitmapData, _mipMapping);


Now using <![CDATA[ ... ]]> for multi-line string literal.

--- WeaveAPI/src/weave/api/WeaveAPI.as
+++ WeaveAPI/src/weave/api/WeaveAPI.as
@@ -196,15 +196,20 @@
 				var prev:Boolean = ExternalInterface.marshallExceptions;
 				ExternalInterface.marshallExceptions = false;
 				ExternalInterface.call(
-					'function(objectID) {' +
-					'  var weave = document.getElementById(objectID);' +
-					'  if (window && window.weaveReady) {' +
-					'    window.weaveReady(weave);' +
-					'  }' +
-					'  else if (weaveReady) {' +
-					'    weaveReady(weave);' +
-					'  }' +
-					'}',
+					<![CDATA[
+						function(objectID)
+						{
+							var weave = document.getElementById(objectID);
+							if (window && window.weaveReady)
+							{
+								window.weaveReady(weave);
+							}
+							else if (weaveReady)
+							{
+								weaveReady(weave);
+							}
+						}
+					]]>,
 					[ExternalInterface.objectID]
 				);
 				ExternalInterface.marshallExceptions = prev;


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


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

--- frameworks/projects/framework/src/mx/styles/metadata/BorderStyles.as
+++ frameworks/projects/framework/src/mx/styles/metadata/BorderStyles.as
@@ -1,11 +1,19 @@
 ////////////////////////////////////////////////////////////////////////////////
 //
-//  ADOBE SYSTEMS INCORPORATED
-//  Copyright 2005-2007 Adobe Systems Incorporated
-//  All Rights Reserved.
-//
-//  NOTICE: Adobe permits you to use, modify, and distribute this file
-//  in accordance with the terms of the license agreement accompanying it.
+//  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: 5099
Author:   gauravj@adobe.com
Date:     2009-02-27T03:43:02.639229Z

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

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

Modified Paths:
--------------
147 paths were modified

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

--- frameworks/projects/rpc/src/mx/messaging/events/ChannelFaultEvent.as
+++ frameworks/projects/rpc/src/mx/messaging/events/ChannelFaultEvent.as
@@ -18,6 +18,12 @@

 /**
  *  The ChannelFaultEvent class is used to propagate channel fault events within the messaging system.
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion BlazeDS 4
+ *  @productversion LCDS 3
  */
 public class ChannelFaultEvent extends ChannelEvent
 {
@@ -57,6 +63,12 @@
      *       Object listening for the event.

      *

      *  @eventType channelFault
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     public static const FAULT:String = "channelFault";

@@ -88,6 +100,12 @@
      *  is already connected.
      *
      *  @return New ChannelFaultEvent.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     public static function createEvent(channel:Channel, reconnecting:Boolean = false,
             code:String = null, level:String = null, description:String = null,
@@ -132,6 +150,12 @@
      *
      *  @param connected Indicates whether the Channel that generated this event
      *  is already connected.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     public function ChannelFaultEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false,
             channel:Channel = null, reconnecting:Boolean = false, code:String = null, level:String = null, description:String = null,
@@ -161,6 +185,12 @@
      *
      *  @see #faultString
      *  @see #faultDetail
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     public var faultCode:String;

@@ -172,6 +202,12 @@
      *
      *  @see #faultString
      *  @see #faultCode
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     public var faultDetail:String;

@@ -180,12 +216,24 @@
      *
      *  @see #faultCode
      *  @see #faultDetail
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     public var faultString:String;

     /**
      * Provides access to the underlying reason for the failure if the channel did
      * not raise the failure itself.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     public var rootCause:Object;

@@ -199,6 +247,12 @@
      *  Clones the ChannelFaultEvent.
      *
      *  @return Copy of this ChannelFaultEvent.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     override public function clone():Event
     {
@@ -211,6 +265,12 @@
      *  Returns a string representation of the ChannelFaultEvent.
      *
      *  @return String representation of the ChannelFaultEvent.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     override public function toString():String
     {
@@ -229,6 +289,12 @@
      *  the faultCode, faultString, faultDetail and rootCause to the new ErrorMessage.
      *
      *  @return The ErrorMessage.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     public function createErrorMessage():ErrorMessage
     {


Transferred from the Adobe Open Source Subversion Repository

Revision: 10157
Author:   peterson@adobe.com
Date:     2009-09-11T16:26:03.047663Z

Log Message:
-----------
Fixed HTML tag in ASDoc comment.

Modified Paths:
--------------
/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/events/ChannelFaultEvent.as

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

--- frameworks/projects/rpc/src/mx/messaging/events/ChannelFaultEvent.as
+++ frameworks/projects/rpc/src/mx/messaging/events/ChannelFaultEvent.as
@@ -190,7 +190,7 @@
      * issued by the AMFChannel when the channel is already connected but it gets a
      * Call.Failed code from its underlying NetConnection.
      * Only the AMFChannel class listens for NetConnection.Call.Failed, which gets
-     * converted to Channel.Call.Failed.
+     * converted to Channel.Call.Failed.</p>
      *
      *  @see #faultString
      *  @see #faultDetail


Transferred from the Adobe Open Source Subversion Repository

Revision: 6174
Author:   jszeto@adobe.com
Date:     2009-04-20T23:35:57.095896Z

Log Message:
-----------
Updated ASDoc comments for DropDownList.

- Updated comments in DropDownController and DropDownList
- Localized error messages for DropDownList

SDK-19874  Setting selectedIndex on Spark DropDownList control doesnt auto-scroll dropdown

Call ensureIndexIsVisible when opening the dropDown.

QE Notes:
Doc Notes: ASDoc comments need review
Bugs: SDK-19874
Reviewer: Deepa

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/bundles/en_US/components.properties</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/DropDownList.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/DropDownController.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/List.as</path>

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

--- frameworks/projects/spark/src/spark/components/supportClasses/DropDownController.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/DropDownController.as
@@ -24,12 +24,8 @@
 import flash.display.DisplayObject;
 import flash.display.DisplayObjectContainer;

-/*
-	TODO (jszeto) Needs ASDoc comments
-*/
-
 /**
- *  DropDownController handles the mouse and keyboard
+ *  DropDownController handles the mouse, keyboard, and focus
  *  interactions for an anchor button and its dropDown. This helper class
  *  should be used by other dropDown components to handle the opening
  *  and closing of the dropDown due to user interactions.
@@ -41,6 +37,14 @@
  */
 public class DropDownController extends EventDispatcher
 {
+	/**
+	 *  Constructor
+	 *
+	 *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
+	 */
 	public function DropDownController(target:IEventDispatcher=null)
 	{
 		super(target);
@@ -59,7 +63,7 @@
 	private var _button:ButtonBase;

 	/**
-     *  @private
+     *  Reference to the button skin part of the dropDown component.
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
@@ -150,8 +154,7 @@
     //--------------------------------------------------------------------------

 	/**
-     *  Initializes the dropDown and changes the skin state to open.
-     *
+     *  Opens the dropDown and dispatches a DropdownEvent.OPEN event.
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
@@ -160,7 +163,6 @@
      */
     public function openDropDown():void
     {
-		//trace("DDL.openDropDown isOpen",isOpen);
     	if (!isOpen)
     	{
     		// TODO (jszeto) Change these to be marshall plan compliant
@@ -175,12 +177,7 @@
     }

     /**
-     *  Changes the skin state to normal, commits the data from the dropDown and
-     *  performs some cleanup.
-     *
-     *  The user can close the dropDown either in a committing or non-committing manner
-     *  based on their interaction gesture. If the user has performed a committing
-     *  gesture, then set commitData to true.
+     *  Closes the dropDown and dispatches a DropdownEvent.CLOSE event.
      *
      *  @param commitData Flag indicating if the component should commit the selected
      *  data from the dropDown.
@@ -192,7 +189,6 @@
      */
     public function closeDropDown(commitData:Boolean):void
     {
-    	//trace("DDL.closeDropDown isOpen",isOpen);
     	if (isOpen)
     	{
 			_isOpen = false;
@@ -228,7 +224,6 @@
  	 */
     protected function button_buttonDownHandler(event:Event):void
     {
-    	//trace("DDL.button_buttonDownHandler");
         if (isOpen)
             closeDropDown(true);
         else
@@ -236,8 +231,8 @@
     }

 	/**
-     *  Called when the systemManager receives a mouseDown event. In the base class
-     *  implementation, this closes the dropDown.
+     *  Called when the systemManager receives a mouseDown event. This closes
+     *  the dropDown if the target is outside of the dropDown.
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
@@ -258,8 +253,7 @@
     }

     /**
-     *  @private
-     *  Close the dropDown if the stage has been resized. Don't commit the data.
+     *  Close the dropDown if the stage has been resized.
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
@@ -272,7 +266,7 @@
     }

     /**
-     *  @private
+     *  Closes the dropDown if focus it is no longer in focus.
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
@@ -289,21 +283,22 @@
         if (isOpen)
         {
             // If focus is moving outside the dropdown...
-            // TODO (jszeto) Should we compare to the whole skin or just the dataGroup?
             if (!event.relatedObject ||
                 (!dropDown ||
                 	(dropDown is DisplayObjectContainer &&
                 	 !DisplayObjectContainer(dropDown).contains(event.relatedObject))))
             {
                 // Close the dropdown.
-                //trace("DDL.focusOutHandler");
                 closeDropDown(true);
             }
         }
     }

     /**
-	 *  @private
+	 *  Handles the keyboard user interactions.
+	 *
+	 *  @return Returns true if the keyCode was
+	 *  recognized and handled.
 	 *
      *  @langversion 3.0
      *  @playerversion Flash 10


Transferred from the Adobe Open Source Subversion Repository

Revision: 4958
Author:   rfrishbe@adobe.com
Date:     2009-02-13T23:07:46.243121Z

Log Message:
-----------
Change the initialization sequence of FxComponent and Group.  Basically now children (including the skin) should get created at createChildren() time and follow the correct lifecycle pattern.  Unfortunately, this change got mingled in with all my PARB changes, so I'm submitting a bunch of PARB changes for Group, DataGroup, FxContainer, and FxDataContainer, outlined below:

1.     New event classes/names for Group/FxContainer and DataGroup ("elementAdd" and "elementRemove" event of type ElementExistenceEvent for Group/FxContainer and "rendererAdd" and "rendererRemove" event of type RendererExistenceEvent for DataGroup). It was just one event class of ItemExistenceChangedEvent before.
2.     LayoutBase.clipContent->clipAndEnableScrolling (same with IViewport.clipContent and GroupBase.clipContent)
3.     GroupBase.getLayoutELementAt()->getElementAt()
4.     GroupBase.numLayoutElements -> numElements.
5.     LayoutBase.virtualLayout -> useVirtualLayout
6.     ScrollUnit constants are now changed to be uints instead of typed as ScrollUnit.  This means the signature for getHorizontalScrollPositionDelta(unit:ScrollUnit):Number has changed to getHorizontalScrollPositionDelta(scrollUnit:uint):Number (and ditto for getVerticalScrollPositionDelta())
7.  DataGroup.getRendererForItemAt() -> getElementAt()
8.  DataGroup.getItemIndexForRenderer() -> getElementIndex()

Other changes:
 - Change IVisualElement interface so that it's smaller now.  It also extends ILayoutElement now.  The properties removed from IVisualElement are: rotation, rotationX, rotationY, rotationZ, transformX, transformY, offsets, x, y, z, scaleX, scaleY, scaleZ, explicitWidth, explicitMinWidth, explicitMaxWidth, explicitHeight, explicitMinHeight, explicitMaxHeight)
-  Fix in DataGroup so we don’t remove/add elements if we’re gonna do it later anyways.  I also need to do some other work in here around cleaning up of renderers.
- AddItems fix around handling IVisualElementContainers more effeciently
- get mxmlContent now returns a copy of the Array rather than the one we're using internally
- Had to update mustella since there was special case logic for dealing with getLayoutElementAt().  I added this logic for getElementAt(), which replaces that method.

QE Notes: Thanks for changing all the tests and working on the cyclone
Doc Notes: Made some ASDoc changes to some core classes to move the comments into the interfaces.  I did update the comments a bit as well.
Bugs: SDK-18115, SDK-19004
Reviewer: Jason, Glenn, Hans for initialization sequence change and Hans for all PARB changes
tests: checkintests, all mustella tests

Modified Paths:
--------------
<path kind="file" copyfrom-path="/flex/sdk/trunk/frameworks/projects/flex4/src/mx/events/ItemExistenceChangedEvent.as" copyfrom-rev="4812" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/events/ElementExistenceEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/layout/TileLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxScroller.as</path>
<path kind="file" action="M">/flex/sdk/trunk/development/eclipse/flex/flex4test/src/layouts/WheelLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/DataGroup.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/baseClasses/FxComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxHScrollBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/core/IViewport.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/Group.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/baseClasses/FxListBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxButtonBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/layout/VerticalLayout.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/events/RendererExistenceEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/layout/LayoutBase.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/events/ItemExistenceChangedEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/core/ScrollUnit.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/IVisualElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxVScrollBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/layout/BasicLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/states/AddItems.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/baseClasses/FxScrollBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxList.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxDataContainer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/mustella/mustella.swc</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/ILayoutElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UIComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/baseClasses/GroupBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/TextView.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/layout/HorizontalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxContainer.as</path>

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

--- frameworks/projects/spark/src/spark/components/supportClasses/SkinnableComponent.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/SkinnableComponent.as
@@ -166,7 +166,36 @@
     {
         super.createChildren();

-        skinChanged = true;
+        validateSkinChange();
+    }
+
+    /**
+     *  @private
+     */
+    private function validateSkinChange():void
+    {
+        // If our new skin Class happens to match our existing skin Class there is no
+        // reason to fully unload then reload our skin.
+        var skipReload:Boolean = false;
+
+        if (_skin)
+        {
+            var factory:Object = getStyle("skinFactory");
+
+            var newSkinClass:Class = (factory && factory is ClassFactory) ?
+                ClassFactory(factory).generator :
+                getStyle("skinClass");
+
+            skipReload = newSkinClass &&
+                getQualifiedClassName(newSkinClass) == getQualifiedClassName(_skin);
+        }
+
+        if (!skipReload)
+        {
+            if (skin)
+                unloadSkin();
+            loadSkin();
+        }
     }

     /**
@@ -179,29 +208,7 @@
         if (skinChanged)
         {
             skinChanged = false;
-
-            // If our new skin Class happens to match our existing skin Class there is no
-            // reason to fully unload then reload our skin.
-            var skipReload:Boolean = false;
-
-            if (_skin)
-            {
-                var factory:Object = getStyle("skinFactory");
-
-                var newSkinClass:Class = (factory && factory is ClassFactory) ?
-                    ClassFactory(factory).generator :
-                    getStyle("skinClass");
-
-                skipReload = newSkinClass &&
-                    getQualifiedClassName(newSkinClass) == getQualifiedClassName(_skin);
-            }
-
-            if (!skipReload)
-            {
-                if (skin)
-                    unloadSkin();
-                loadSkin();
-            }
+            validateSkinChange();
         }

         if (skinStateIsDirty)


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

--- frameworks/projects/advancedgrids/src/mx/olap/aggregators/SumAggregator.as
+++ frameworks/projects/advancedgrids/src/mx/olap/aggregators/SumAggregator.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.olap.aggregators


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

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


Transferred from the Adobe Open Source Subversion Repository

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

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


Transferred from the Adobe Open Source Subversion Repository

Revision: 19805
Author:   tkraikit@adobe.com
Date:     2011-01-19T19:12:59.108310Z

Log Message:
-----------
bug24203: add GroupBase.containsElement(IVisualElement)

QE notes: none
Doc notes: none
Bugs: none
Reviewer: rfrishbe
Tests run: checkintests, mustella
Is noteworthy for integration: no

Modified Paths:
--------------
/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/GroupBase.as

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

--- frameworks/projects/spark/src/spark/components/supportClasses/GroupBase.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/GroupBase.as
@@ -1786,6 +1786,38 @@
         return -1;
     }

+    /**
+     *  Determines whether the specified IVisualElement is a
+     *  child of the container instance or the instance
+     *  itself. The search is deep, i.e. if the element is
+     *  a child, grandchild, great-grandchild, etc., of this
+     *  container, this returns true.
+     *
+     *  @param element the child object to test
+     *  @return true if the element is a descendant of the container
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
+     *
+     */
+    public function containsElement(element:IVisualElement):Boolean
+    {
+        while (element)
+        {
+            if (element == this)
+                return true
+
+            if (element.parent is IVisualElement)
+                element = IVisualElement(element.parent);
+            else
+                return false;
+        }
+
+        return false;
+    }
+
     //----------------------------------
     //  mask
     //----------------------------------


Transferred from the Adobe Open Source Subversion Repository

Revision: 22770
Author:   eday@adobe.com
Date:     2011-09-28T18:02:48.503874Z

Log Message:
-----------
Fix for Fade transition problem

Backed out old change for SDK-24925 in order to fix SDK-31089.  Fade once again only affects the alpha, visible, parent, and index properties.

QE notes:
Doc notes:
Bugs: SDK-31089
Reviewer: Glenn
Tests run: checkintests, cyclone
Is noteworthy for integration: no

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/effects/supportClasses/FadeInstance.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/effects/Fade.as</path>

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

--- frameworks/projects/spark/src/spark/effects/supportClasses/FadeInstance.as
+++ frameworks/projects/spark/src/spark/effects/supportClasses/FadeInstance.as
@@ -148,72 +148,6 @@
                 }
                 else if (isNaN(alphaTo)) // fade out
                 {
-                    if (propertyChanges.end["explicitWidth"] !== undefined &&
-                        isNaN(propertyChanges.end["explicitWidth"]) &&
-                        !isNaN(propertyChanges.start["explicitWidth"]))
-                    {
-                        target.explicitWidth = propertyChanges.start["explicitWidth"];
-                    }
-                    if (propertyChanges.end["explicitHeight"] !== undefined &&
-                        isNaN(propertyChanges.end["explicitHeight"]) &&
-                        !isNaN(propertyChanges.start["explicitHeight"]))
-                    {
-                        target.explicitHeight = propertyChanges.start["explicitHeight"];
-                    }
-                    if (propertyChanges.end["rotation"] !== undefined &&
-                        propertyChanges.end["rotation"] == 0 &&
-                        propertyChanges.start["rotation"] != 0)
-                    {
-                        target.rotation = propertyChanges.start["rotation"];
-                    }
-                    if (propertyChanges.end["x"] !== undefined &&
-                        propertyChanges.end["x"] == 0 &&
-                        propertyChanges.start["x"] != 0)
-                    {
-                        target.x = propertyChanges.start["x"];
-                    }
-                    if (propertyChanges.end["y"] !== undefined &&
-                        propertyChanges.end["y"] == 0 &&
-                        propertyChanges.start["y"] != 0)
-                    {
-                        target.y = propertyChanges.start["y"];
-                    }
-                    if (propertyChanges.end["left"] !== undefined &&
-                        propertyChanges.end["left"] === null &&
-                        propertyChanges.start["left"] !== null)
-                    {
-                        target.left = propertyChanges.start["left"];
-                    }
-                    if (propertyChanges.end["right"] !== undefined &&
-                        propertyChanges.end["right"] === null &&
-                        propertyChanges.start["right"] !== null)
-                    {
-                        target.right = propertyChanges.start["right"];
-                    }
-                    if (propertyChanges.end["top"] !== undefined &&
-                        propertyChanges.end["top"] === null &&
-                        propertyChanges.start["top"] !== null)
-                    {
-                        target.top = propertyChanges.start["top"];
-                    }
-                    if (propertyChanges.end["bottom"] !== undefined &&
-                        propertyChanges.end["bottom"] === null &&
-                        propertyChanges.start["bottom"] !== null)
-                    {
-                        target.bottom = propertyChanges.start["bottom"];
-                    }
-                    if (propertyChanges.end["percentWidth"] !== undefined &&
-                        isNaN(propertyChanges.end["percentWidth"]) &&
-                        !isNaN(propertyChanges.start["percentWidth"]))
-                    {
-                        target.percentWidth = propertyChanges.start["percentWidth"];
-                    }
-                    if (propertyChanges.end["percentHeight"] !== undefined &&
-                        isNaN(propertyChanges.end["percentHeight"]) &&
-                        !isNaN(propertyChanges.start["percentHeight"]))
-                    {
-                        target.percentHeight = propertyChanges.start["percentHeight"];
-                    }
                     restoreAlpha = true;
                     origAlpha = propertyChanges.end["alpha"] !== undefined ?
                         propertyChanges.end["alpha"] :


FLEX-25071 Only need to loop through all times if array collection is filtered not sorted.

--- frameworks/projects/framework/src/mx/collections/ListCollectionView.as
+++ frameworks/projects/framework/src/mx/collections/ListCollectionView.as
@@ -831,8 +831,9 @@
         var len:int = length;
         if (len > 0)
         {
-            if (localIndex)
-            {
+            if (localIndex && filterFunction != null)
+            {
+				len = localIndex.length;
                 for (var i:int = len - 1; i >= 0; i--)
                 {
                     removeItemAt(i);
@@ -840,6 +841,7 @@
             }
             else
             {
+				localIndex = null;
                 list.removeAll();
             }
         }


Tweak VScrollBarkSkin to make sure it looks good in all DPIs

--- frameworks/projects/mobiletheme/src/spark/skins/ios7/VScrollBarSkin.as
+++ frameworks/projects/mobiletheme/src/spark/skins/ios7/VScrollBarSkin.as
@@ -75,7 +75,7 @@
 			}
 			case DPIClassification.DPI_480:
 			{
-				minWidth = 18;
+				minWidth = 16;
 				paddingRight = VScrollBarThumbSkin.PADDING_RIGHT_480DPI;
 				paddingVertical = VScrollBarThumbSkin.PADDING_VERTICAL_480DPI;
 				break;
@@ -89,14 +89,14 @@
             }
 			case DPIClassification.DPI_240:
 			{
-				minWidth = 9;
+				minWidth = 8;
 				paddingRight = VScrollBarThumbSkin.PADDING_RIGHT_240DPI;
 				paddingVertical = VScrollBarThumbSkin.PADDING_VERTICAL_240DPI;
 				break;
 			}
 			case DPIClassification.DPI_120:
 			{
-				minWidth = 9;
+				minWidth = 4;
 				paddingRight = VScrollBarThumbSkin.PADDING_RIGHT_120DPI;
 				paddingVertical = VScrollBarThumbSkin.PADDING_VERTICAL_120DPI;
 				break;


Transferred from the Adobe Open Source Subversion Repository

Revision: 10464
Author:   rfrishbe@adobe.com
Date:     2009-09-21T17:40:30.663638Z

Log Message:
-----------
Removing support in Flex framework for compatibility version < 3.  We won't support compatibility-version 2 or 2.01 anymore.  We only keep compatibility-version for one full release, so for Flex 4, we only support compatibility-version = 3.x.

This should reduce our code-size some as we no longer need this old code.  I didn't clean up the compiler's support for compatibility-versioning as it didn't seem worth the effort.

QE notes: -
Doc notes: -
Bugs: SDK-15360
Reviewer: Kevin
Tests run: checkintests, Joan ran all mustella tests
Is noteworthy for integration: Yes

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/listClasses/TileListItemRenderer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/HaloBorder.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/ProgressBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/RadioButton.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/accordionClasses/AccordionHeader.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/utilityClasses/CanvasLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/DateChooser.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/mx/core/UITLFTextField.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/NumericStepper.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/ScrollArrowSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/AccordionHeaderSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/Alert.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/NavBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/Button.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UITextField.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/ColorPicker.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/TextArea.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/dataGridClasses/DataGridHeaderBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/DateField.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/StyleProxy.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/treeClasses/TreeItemRenderer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/TabNavigator.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/FormItem.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UIComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/dataGridClasses/DataGridHeader.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/CheckBox.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/SWFLoader.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/DateChooserYearArrowSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/LinkButton.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/MenuBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/ComboBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/menuClasses/MenuBarItem.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/PanelSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/menuClasses/MenuItemRenderer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/StyleManagerImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/PopUpButton.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/listClasses/ListBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/scrollClasses/ScrollBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/Panel.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/colorPickerClasses/SwatchPanel.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/Accordion.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/TextInput.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/StyleProtoChain.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/ComboBox.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/listClasses/ListItemRenderer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/List.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/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/skins/halo/ScrollTrackSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/utilityClasses/Flex.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/LinkBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/sliderClasses/Slider.as</path>

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

--- frameworks/projects/mx/src/mx/controls/treeClasses/TreeItemRenderer.as
+++ frameworks/projects/mx/src/mx/controls/treeClasses/TreeItemRenderer.as
@@ -23,7 +23,6 @@
 import mx.controls.listClasses.BaseListData;
 import mx.controls.listClasses.IDropInListItemRenderer;
 import mx.controls.listClasses.IListItemRenderer;
-import mx.core.FlexVersion;
 import mx.core.IDataRenderer;
 import mx.core.IFlexDisplayObject;
 import mx.core.IFlexModuleFactory
@@ -151,9 +150,6 @@
      */
     override public function get baselinePosition():Number
     {
-        if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0)
-            super.baselinePosition;
-
         if (!validateBaselinePosition())
             return NaN;


Transferred from the Adobe Open Source Subversion Repository

Revision: 15368
Author:   smgilson@adobe.com
Date:     2010-04-13T12:31:21.786591Z

Log Message:
-----------
integrate 15352: Update ASDoc version tags

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

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/automation_spark/src/spark/automation/delegates/components/SparkCheckBoxAutomationImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/automation_spark/src/spark/automation/delegates/components/supportClasses/SparkSliderBaseAutomationImpl.as</path>
<path kind="dir" action="M">/flex/sdk/trunk</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/skins/spark/DefaultItemRenderer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/automation_spark/src/spark/automation/delegates/components/SparkButtonBarButtonAutomationImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/automation_spark/src/spark/automation/delegates/components/SparkTextAreaAutomationImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/automation_spark/src/spark/automation/delegates/components/supportClasses/SparkButtonBaseAutomationImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/automation_spark/src/spark/automation/delegates/components/supportClasses/SparkListBaseAutomationImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/automation_spark/src/spark/automation/delegates/components/supportClasses/SparkSkinnableTextBaseAutomationImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/accessibility/TitleWindowAccImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/accessibility/RadioButtonAccImpl.as</path>

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

--- frameworks/projects/spark/src/spark/skins/spark/DefaultItemRenderer.as
+++ frameworks/projects/spark/src/spark/skins/spark/DefaultItemRenderer.as
@@ -43,9 +43,9 @@
  *  @eventType mx.events.FlexEvent.DATA_CHANGE
  *
  *  @langversion 3.0
- *  @playerversion Flash 9
- *  @playerversion AIR 1.1
- *  @productversion Flex 3
+ *  @playerversion Flash 10
+ *  @playerversion AIR 1.5
+ *  @productversion Flex 4
  */
 [Event(name="dataChange", type="mx.events.FlexEvent")]

@@ -130,9 +130,9 @@
  *  @see spark.components.supportClasses.ItemRenderer
  *
  *  @langversion 3.0
- *  @playerversion Flash 9
- *  @playerversion AIR 1.1
- *  @productversion Flex 3
+ *  @playerversion Flash 10
+ *  @playerversion AIR 1.5
+ *  @productversion Flex 4
  */
 public class DefaultItemRenderer extends UIComponent
     implements IDataRenderer, IItemRenderer
@@ -148,9 +148,9 @@
      *  Constructor.
      *
      *  @langversion 3.0
-     *  @playerversion Flash 9
-     *  @playerversion AIR 1.1
-     *  @productversion Flex 3
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
      */
     public function DefaultItemRenderer()
     {
@@ -224,9 +224,9 @@
      *  @see mx.core.IDataRenderer
      *
      *  @langversion 3.0
-     *  @playerversion Flash 9
-     *  @playerversion AIR 1.1
-     *  @productversion Flex 3
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
      */
     public function get data():Object
     {


Some fixups. I think I'm going to want to refactor this so
that there are util methods for creating nice textfields, and then
generic animation classes for floating anything. This can then become
a convenience class that marries the two.

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

--- src/as/com/threerings/flash/FloatingTextAnimation.as
+++ src/as/com/threerings/flash/FloatingTextAnimation.as
@@ -1,6 +1,8 @@
 package com.threerings.flash {

 import flash.events.Event;
+
+import flash.filters.GlowFilter;

 import flash.text.TextField;
 import flash.text.TextFieldAutoSize;
@@ -10,12 +12,16 @@
 {
     public static function create (
         text :String, duration :Number = 1000, dy :int = -10,
-        format :TextFormat = null) :FloatingTextAnimation
+        size :int = 18, font :String = "Arial", bold :Boolean = true,
+        color :uint = 0x000000, borderColor :uint = 0xFFFFFF) :FloatingTextAnimation
     {
         var fta :FloatingTextAnimation = new FloatingTextAnimation();
-        if (format != null) {
-            fta.defaultTextFormat = format;
-        }
+        var format :TextFormat = new TextFormat();
+        format.size = size;
+        format.font = font;
+        format.bold = bold;
+        format.color = color;
+        fta.defaultTextFormat = format;
         fta.autoSize = TextFieldAutoSize.CENTER;
         fta.text = text;
         fta.width = fta.textWidth + 5;
@@ -23,6 +29,9 @@

         fta.duration = duration;
         fta.dy = dy;
+
+        fta.filters = [ new GlowFilter(borderColor, 1, 2, 2, 255) ];
+
         return fta;
     }

@@ -45,8 +54,7 @@

     override public function set y (val :Number) :void
     {
-        _startY = val;
-        super.y = (val - height/2);
+        super.y = _startY = (val - height/2);
     }

     protected function enterFrame (elapsed :Number) :void
@@ -58,7 +66,7 @@
         }

         alpha = 1 - perc;
-        this.y = _startY + (dy * perc);
+        super.y = _startY + (dy * perc);
     }

     protected function handleAdded (... ignored) :void


Transferred from the Adobe Open Source Subversion Repository

Revision: 21764
Author:   ksimm@adobe.com
Date:     2011-08-02T00:24:41.948406Z

Log Message:
-----------
Added the localization codes to DateSpinner and DateAndTimeRangeList and add three new globalization classes to the spark.globalization.supportClasses package.

QE notes: None
Doc notes: None
Bugs: None
Reviewer: Jason Szeto
Tests run: checkintests, mustella
Is noteworthy for integration: No

Modified Paths:
--------------
<path kind="file" action="D">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/CalendarDate.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/DateAndTimeRangeList.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/DateSpinner.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/SparkClasses.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/globalization/supportClasses/FormatPattern.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/globalization/supportClasses/CalendarDate.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/globalization/supportClasses/DateTimeFormatterEx.as</path>

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

--- frameworks/projects/spark/src/SparkClasses.as
+++ frameworks/projects/spark/src/SparkClasses.as
@@ -35,6 +35,8 @@
 import spark.components.gridClasses.CellRegion; CellRegion;
 import spark.components.supportClasses.ListItemDragProxy; ListItemDragProxy;
 import spark.components.supportClasses.InteractionStateDetector; InteractionStateDetector;
+import spark.globalization.supportClasses.CalendarDate; CalendarDate;
+import spark.globalization.supportClasses.DateTimeFormatterEx; DateTimeFormatterEx;
 import spark.skins.spark.ApplicationSkin; ApplicationSkin;
 import spark.skins.spark.BorderContainerSkin; BorderContainerSkin;
 import spark.skins.spark.ButtonSkin; ButtonSkin;


Adds loading all available bytes if "length" is not specified.

--- image-picker-air/image-picker/src/com/github/airext/data/AssetInput.as
+++ image-picker-air/image-picker/src/com/github/airext/data/AssetInput.as
@@ -79,6 +79,8 @@

     public function readBytes(bytes:ByteArray, offset:uint = 0, length:uint = 0):void
     {
+        length = length == 0 ? bytesAvailable : length;
+
         ImagePicker.context.call("assetInputReadBytes", this.url, bytes, offset, length);
     }


Transferred from the Adobe Open Source Subversion Repository

Revision: 20742
Author:   smgilson@adobe.com
Date:     2011-03-09T21:46:11.224420Z

Log Message:
-----------
Merge 20732 - asdoc updates

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

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/MovieClipSWFLoader.as</path>
<path kind="file" action="M">/private/flex/sdk/trunk/frameworks/projects/framework/src/mx/formatters/SwitchSymbolFormatter.as</path>
<path kind="file" action="M">/private/flex/sdk/trunk/frameworks/projects/mx/src/mx/controls/ComboBox.as</path>
<path kind="file" action="M">/private/flex/sdk/trunk/frameworks/projects/flash-integration/src/mx/flash/UIMovieClip.as</path>
<path kind="file" action="M">/private/flex/sdk/trunk/frameworks/projects/framework/src/mx/states/State.as</path>
<path kind="file" action="M">/private/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/IEffect.as</path>
<path kind="file" action="M">/private/flex/sdk/trunk/frameworks/projects/mx/src/mx/effects/effectClasses/UnconstrainItemActionInstance.as</path>
<path kind="file" action="M">/private/flex/sdk/trunk/frameworks/projects/mx/src/mx/controls/ColorPicker.as</path>
<path kind="file" action="M">/private/flex/sdk/trunk/frameworks/projects/flash-integration/src/mx/flash/ContainerMovieClip.as</path>
<path kind="file" action="M">/private/flex/sdk/trunk/frameworks/projects/airframework/src/mx/controls/FlexNativeMenu.as</path>
<path kind="dir" action="M">/private/flex/sdk/trunk</path>
<path kind="file" action="M">/private/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/effectClasses/CompositeEffectInstance.as</path>
<path kind="file" action="M">/private/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/CompositeEffect.as</path>
<path kind="file" action="M">/private/flex/sdk/trunk/frameworks/projects/mx/src/mx/controls/TextInput.as</path>
<path kind="file" action="M">/private/flex/sdk/trunk/frameworks/projects/spark/src/mx/controls/MXFTETextInput.as</path>

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

--- frameworks/projects/mx/src/mx/effects/effectClasses/UnconstrainItemActionInstance.as
+++ frameworks/projects/mx/src/mx/effects/effectClasses/UnconstrainItemActionInstance.as
@@ -63,6 +63,14 @@
     // where should this live?
     // and what should it be called? (rendererHost, maybe?)

+    /**
+     *  The effect host component.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
     public var effectHost:ListBase = null
     //--------------------------------------------------------------------------
     //


[SequenceChecker] on trace click trace alignment becomes selected

git-svn-id: adbdea8fc1759bd16b0eaf24a244a7e5f870a654@85 fe3f0490-d73e-11de-a956-c71e7d3a9d2f

--- SequenceCheckerStandalone/src/org/jbei/registry/mediators/TracesListPanelMediator.as
+++ SequenceCheckerStandalone/src/org/jbei/registry/mediators/TracesListPanelMediator.as
@@ -15,6 +15,7 @@
 		private const NAME:String = "TracesListPanelMediator";

 		private var tracesListPanel:TracesListPanel;
+		private var traces:ArrayCollection; /* TraceSequence */

 		// Constructor
 		public function TracesListPanelMediator(viewComponent:Object=null)
@@ -31,6 +32,7 @@
 		{
 			return [
 				Notifications.TRACES_FETCHED
+				, Notifications.SELECTION_CHANGED
 			];
 		}

@@ -41,12 +43,36 @@
 					populateDataGrid();

 					break;
+				case Notifications.SELECTION_CHANGED:
+					if(notification.getBody() != null) {
+						var selection:Array = notification.getBody() as Array;
+
+						for(var i:int = 0; i < traces.length; i++) {
+							var traceSequence:TraceSequence = (traces[i] as TraceSequence);
+
+							if(traceSequence.traceSequenceAlignment == null) {
+								continue;
+							}
+
+							if(selection[0] == traceSequence.traceSequenceAlignment.queryStart - 1 && selection[1] == traceSequence.traceSequenceAlignment.queryEnd) {
+								if(tracesListPanel.tracesDataGrid.selectedIndex != i) {
+									tracesListPanel.tracesDataGrid.selectedIndex = i;
+
+									sendNotification(Notifications.TRACE_SEQUENCE_SELECTION_CHANGED, traceSequence);
+								}
+
+								break;
+							}
+						}
+					}
+
+					break;
 			}
 		}

 		// Private Methods
 		private function populateDataGrid():void {
-			var traces:ArrayCollection = ApplicationFacade.getInstance().traces;
+			traces = ApplicationFacade.getInstance().traces;

 			tracesListPanel.tracesDataGrid.dataProvider = null;