Transferred from the Adobe Open Source Subversion Repository

Revision: 12436
Author:   smgilson@adobe.com
Date:     2009-12-03T16:08:12.117370Z

Log Message:
-----------
ASDoc localization prep

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

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/automation/IAutomationObject.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/Group.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/Label.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/BorderContainer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/Application.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/SkinnableComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/Scroller.as</path>

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

--- frameworks/projects/spark/src/spark/components/Application.as
+++ frameworks/projects/spark/src/spark/components/Application.as
@@ -299,7 +299,7 @@
     *
     *
Only the main application is allowed to set the colorCorrection
     *  property. If a nested application's needs to set the color correction property, it
-    *  must set it by referencing the the main application's instance.

+    *  must set it by referencing the main application's instance.

     *
     *  @default ColorCorrection.DEFAULT
     *


Transferred from the Adobe Open Source Subversion Repository

Revision: 17697
Author:   clucier@adobe.com
Date:     2010-09-14T18:00:59.484626Z

Log Message:
-----------
Better support for DisplayObject based sources.

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

Modified Paths:
--------------
/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/primitives/BitmapImage.as

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

--- frameworks/projects/spark/src/spark/primitives/BitmapImage.as
+++ frameworks/projects/spark/src/spark/primitives/BitmapImage.as
@@ -33,6 +33,7 @@
 import flash.system.LoaderContext;
 import flash.utils.ByteArray;

+import mx.core.IInvalidating;
 import mx.core.mx_internal;
 import mx.events.FlexEvent;
 import mx.graphics.BitmapFillMode;
@@ -752,6 +753,9 @@
             // for example that we do not receive further load related events
             // our previous content before we can consider the new source.
             clearLoadingContent();
+
+            // Remove any event listeners from previous source.
+            removeAddedToStageHandler(_source);

             _source = value;
             sourceInvalid = true;
@@ -1263,7 +1267,7 @@
         invalidateSize();
         invalidateDisplayList();
     }
-
+
     /**
      *  @private
      *  Utility method which analyzes our source and either acquires the
@@ -1323,6 +1327,15 @@
         else if (value is DisplayObject)
         {
             tmpSprite = value as DisplayObject;
+
+            if (tmpSprite.stage == null)
+            {
+                // If our source DisplayObject has yet to be assigned a stage,
+                // it is not ready to be captured, so we defer bitmap capture
+                // until it is added to the display list.
+                tmpSprite.addEventListener(Event.ADDED_TO_STAGE, source_addedToStageHandler);
+                return;
+            }
         }
         else if (value == null)
         {
@@ -1337,8 +1350,18 @@

         if (!bitmapData && tmpSprite)
         {
+            // We must ensure any IInvalidating sources
+            // are properly validated before capturing.
+            if (tmpSprite is IInvalidating)
+                IInvalidating(tmpSprite).validateNow();
+
+            // Return immediately if our input source has 0 bounds else
+            // our BitmapData constructor will RTE.
+            if (tmpSprite.width == 0 || tmpSprite.height == 0)
+                return;
+
             bitmapData = new BitmapData(tmpSprite.width, tmpSprite.height, true, 0);
-            bitmapData.draw(tmpSprite, new Matrix());
+            bitmapData.draw(tmpSprite, new Matrix(), tmpSprite.transform.colorTransform);
             currentBitmapCreated = true;

             if (tmpSprite.scale9Grid)
@@ -1745,5 +1768,25 @@
         setBitmapData(null);
         loadFailed = true;
     }
+
+    /**
+     *  @private
+     *  Used for deferral of bitmap capture when an assigned source
+     *  has yet to be added to the stage.
+     */
+    private function source_addedToStageHandler(event:Event):void
+    {
+        removeAddedToStageHandler(event.target);
+        applySource();
+    }
+
+    /**
+     *  @private
+     */
+    private function removeAddedToStageHandler(target:Object):void
+    {
+        if (target && target is DisplayObject)
+            target.removeEventListener(Event.ADDED_TO_STAGE, source_addedToStageHandler);
+    }
 }
 }


don't create legend swatch for text symbol

--- src/com/esri/viewer/components/toc/tocClasses/TocItemRenderer.as
+++ src/com/esri/viewer/components/toc/tocClasses/TocItemRenderer.as
@@ -18,7 +18,6 @@

 import com.esri.ags.layers.Layer;
 import com.esri.ags.layers.TiledMapServiceLayer;
-import com.esri.ags.symbols.CompositeSymbol;
 import com.esri.ags.symbols.Symbol;
 import com.esri.viewer.AppEvent;
 import com.esri.viewer.components.toc.TOC;
@@ -31,6 +30,7 @@
 import mx.controls.treeClasses.TreeItemRenderer;
 import mx.controls.treeClasses.TreeListData;
 import mx.core.FlexGlobals;
+import mx.core.UIComponent;

 import spark.components.Group;

@@ -94,12 +94,17 @@
         super.data = value;

         if (value is TocLegendItem)
-        {
+        {
+            _legendSwatchContainer.removeAllElements();
+
             var symbol:Symbol = TocLegendItem(value).legendItemInfo.symbol;
-            if (symbol && !(symbol is CompositeSymbol))
-            {
-                _legendSwatchContainer.removeAllElements();
-                _legendSwatchContainer.addElement(symbol.createSwatch(LEGEND_SWATCH_SIZE, LEGEND_SWATCH_SIZE));
+            if (symbol)
+            {
+                var swatch:UIComponent = symbol.createSwatch(LEGEND_SWATCH_SIZE, LEGEND_SWATCH_SIZE);
+                if (swatch)
+                {
+                    _legendSwatchContainer.addElement(swatch);
+                }
             }
         }
     }


LinkableWatcher can now be used with multiple instances of Weave by setting the "root" property

--- WeaveJS/src/weavejs/core/LinkableWatcher.as
+++ WeaveJS/src/weavejs/core/LinkableWatcher.as
@@ -55,6 +55,7 @@
 		}

 		protected var _typeRestriction:Class;
+		private var _root:ILinkableObject; // the root object to which targetPath is relative
 		private var _target:ILinkableObject; // the current target or ancestor of the to-be-target
 		private var _foundRoot:Boolean = false; // false until Weave.getWeave() or Weave.getRoot(this) returns non-null
 		private var _foundTarget:Boolean = true; // false when _target is not the desired target
@@ -63,9 +64,43 @@
 		private var _warned:Boolean = false; // true after warning has been shown

 		/**
+		 * This is the root object to which targetPath is relative.
+		 */
+		public function get root():ILinkableObject
+		{
+			if (!_root)
+			{
+				var weave:Weave = Weave.getWeave(this);
+				_root = weave ? weave.root : Weave.getRoot(this);
+
+				if (_root && !_foundRoot && !_foundTarget)
+					handlePath();
+			}
+			return _root;
+		}
+		public function set root(object:ILinkableObject):void
+		{
+			if (root != object)
+			{
+				var cc:ICallbackCollection = Weave.getCallbacks(this);
+				cc.delayCallbacks();
+
+				_root = object;
+				if (_targetPath)
+				{
+					resetPathDependencies();
+					handlePath();
+				}
+				cc.triggerCallbacks();
+
+				cc.resumeCallbacks();
+			}
+		}
+
+		/**
 		 * This is the linkable object currently being watched.
 		 * Setting this will unset the targetPath.
-		 */
+		 */
 		public function get target():ILinkableObject
 		{
 			if (!_foundRoot && !_foundTarget)
@@ -174,7 +209,7 @@
 		 */
 		public function set targetPath(path:Array/*/<string|number>/*/):void
 		{
-			// do not allow watching the globalHashMap
+			// do not allow watching the root object
 			if (path && path.length == 0)
 				path = null;
 			if (StandardLib.compare(_targetPath, path) != 0)
@@ -200,23 +235,21 @@
 				return;
 			}

-			var weave:Weave = Weave.getWeave(this);
-			var root:ILinkableObject = weave ? weave.root : Weave.getRoot(this);
 			_foundRoot = root != null;
 			if (!_foundRoot && !_warned)
 			{
-				var error:Error = new Error("LinkableWatcher has a targetPath but has not been registered with an instance of Weave");
+				var error:Error = new Error("LinkableWatcher has a targetPath but no root");
 				WeaveAPI.Scheduler.callLater(this, function():void {
-					if (!_foundRoot && !Weave.getWeave(this))
+					if (!_foundRoot && !root)
 						JS.error("Warning:", error);
 				});
 				_warned = true;
 			}
-			var node:ILinkableObject = Weave.followPath(root, _targetPath);
+			var node:ILinkableObject = Weave.followPath(_root, _targetPath);
 			if (!node)
 			{
 				// traverse the path, finding ILinkableDynamicObject path dependencies along the way
-				node = root;
+				node = _root;
 				var subPath:Array = [];
 				for each (var name:* in _targetPath)
 				{
@@ -323,6 +356,7 @@
 		{
 			_targetPath = null;
 			_target = null;
+			_root = null;
 			// everything else will be cleaned up automatically
 		}


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

--- frameworks/projects/framework/src/mx/collections/errors/SortError.as
+++ frameworks/projects/framework/src/mx/collections/errors/SortError.as
@@ -15,6 +15,11 @@
 /**
  *  This error is thrown when a Sort class is not configured properly;
  *  for example, if the find criteria are invalid.
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 public class SortError extends Error
 {
@@ -30,6 +35,11 @@
      *  Constructor.
 	 *
 	 *  @param message A message providing information about the error cause.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public function SortError(message:String)
     {


Transferred from the Adobe Open Source Subversion Repository

Revision: 88
Author:   open-source-svn-admin@adobe.com
Date:     2008-01-03T22:47:56.499469Z

Log Message:
-----------
Perforce Change 191925 by proberts@proberts-laptop-flex on 2008/01/03 16:47:12 Severity: ignore Details: doc additions/clean up for FlexNativeMenu. Also FLEXDOCS-320 (update documentation for FlexNativeMenuEvent.MENU_SHOW to explain that the index, label, and item properties are null) Affected files ...

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/in/air/air_version.txt</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/Consumer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/errors/NoChannelAvailableError.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/controls/FileSystemHistoryButton.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/channels/DirectHTTPChannel.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/controls/FileSystemTree.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/controls/HTML.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/config/ServerConfig.as</path>
<path kind="file" action="M">/flex/sdk/trunk/in/air/mac/AIR Integration Kit.tbz2</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/channels/StreamingConnectionHandler.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/channels/HTTPChannel.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/errors/MessagingError.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/errors/InvalidChannelError.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/channels/amfx/AMFXDecoder.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/AbstractProducer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/errors/MessageSerializationError.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/config/ConfigMap.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/Channel.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/controls/FileSystemComboBox.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/channels/SecureStreamingAMFChannel.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/controls/FileSystemList.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/channels/StreamingHTTPChannel.as</path>
<path kind="file" action="M">/flex/sdk/trunk/in/air/win/AIR Integration Kit.zip</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/AbstractConsumer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/controls/FileSystemDataGrid.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/channels/SecureStreamingHTTPChannel.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/channels/amfx/AMFXContext.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/channels/AMFChannel.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/events/FlexNativeMenuEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/channels/PollingChannel.as</path>
<path kind="file" action="M">/flex/sdk/trunk/lib/flex-messaging-common.jar</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/channels/NetConnectionChannel.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/channels/amfx/AMFXHeader.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/remoting/mxml/RemoteObject.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/channels/SecureAMFChannel.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/Tree.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/rpc/src/mx/messaging/channels/StreamingAMFChannel.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/Grammar.jj</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/ConsumerMessageDispatcher.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/channels/SecureHTTPChannel.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/errors/InvalidDestinationError.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/channels/amfx/AMFXResult.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/channels/amfx/AMFXEncoder.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/ChannelSet.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/controls/FlexNativeMenu.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/AbstractMessageStore.as</path>

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

--- frameworks/projects/rpc/src/mx/messaging/channels/amfx/AMFXResult.as
+++ frameworks/projects/rpc/src/mx/messaging/channels/amfx/AMFXResult.as
@@ -1,25 +1,19 @@
-/*************************************************************************
- *
- * ADOBE CONFIDENTIAL
- * __________________
- *
- *  [2002] - [2007] Adobe Systems Incorporated
- *  All Rights Reserved.
- *
- * NOTICE:  All information contained herein is, and remains
- * the property of Adobe Systems Incorporated and its suppliers,
- * if any.  The intellectual and technical concepts contained
- * herein are proprietary to Adobe Systems Incorporated
- * and its suppliers and may be covered by U.S. and Foreign Patents,
- * patents in process, and are protected by trade secret or copyright law.
- * Dissemination of this information or reproduction of this material
- * is strictly forbidden unless prior written permission is obtained
- * from Adobe Systems Incorporated.
- */
+////////////////////////////////////////////////////////////////////////////////
+//
+//  ADOBE SYSTEMS INCORPORATED
+//  Copyright 2005-2007 Adobe Systems Incorporated
+//  All Rights Reserved.
+//
+//  NOTICE: Adobe permits you to use, modify, and distribute this file
+//  in accordance with the terms of the license agreement accompanying it.
+//
+////////////////////////////////////////////////////////////////////////////////
+
 package mx.messaging.channels.amfx
 {

 [ExcludeClass]
+
 /**
  * A simple context to hold the result of an AMFX request.
  * @private
@@ -36,4 +30,4 @@
     }
 }

-}+}


Transferred from the Adobe Open Source Subversion Repository

Revision: 20642
Author:   smgilson@adobe.com
Date:     2011-03-07T17:53:01.854031Z

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/spark/src/spark/components/HGroup.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/RichEditableText.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/primitives/BitmapImage.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/DataGroup.as</path>
<path kind="file" action="D">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/asdoc/en_US/spark/components/examples/TraceSelectionRanges.mxml</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/SkinnableContainer.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/RichText.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/ButtonBarButton.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/Group.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/Image.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/FormHeading.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/VideoPlayer.as</path>

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

--- frameworks/projects/spark/src/spark/components/SkinnableContainer.as
+++ frameworks/projects/spark/src/spark/components/SkinnableContainer.as
@@ -382,7 +382,7 @@
     //
     //--------------------------------------------------------------------------

-	[Bindable]
+    [Bindable]
     [SkinPart(required="false")]

     /**
@@ -821,6 +821,11 @@

     /**
      *  @inheritDoc
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 2.5
+     *  @productversion Flex 4.5
      */
     public function setElementIndex(element:IVisualElement, index:int):void
     {


Hide the settings screen joystick in NinjaSnowWar when the game is unpaused. Do not show the settings joystick if not already showing the controls joystick.

--- Bin/Data/Scripts/NinjaSnowWar.as
+++ Bin/Data/Scripts/NinjaSnowWar.as
@@ -496,14 +496,24 @@
         if (!gameScene.updateEnabled)
         {
             SetMessage("PAUSED");
-            if (screenJoystickSettingsIndex == M_MAX_UNSIGNED)
-                screenJoystickSettingsIndex = input.AddScreenJoystick(cache.GetResource("XMLFile", "UI/ScreenJoystickSettings_NinjaSnowWar.xml"));
-            input.OpenJoystick(screenJoystickSettingsIndex);
+
+            // Open the settings joystick only if the controls screen joystick was already open
+            if (screenJoystickIndex != M_MAX_UNSIGNED)
+            {
+                if (screenJoystickSettingsIndex == M_MAX_UNSIGNED)
+                    screenJoystickSettingsIndex = input.AddScreenJoystick(cache.GetResource("XMLFile", "UI/ScreenJoystickSettings_NinjaSnowWar.xml"));
+                input.OpenJoystick(screenJoystickSettingsIndex);
+            }
         }
         else
         {
             SetMessage("");
-            input.CloseJoystick(screenJoystickSettingsIndex);
+            if (screenJoystickSettingsIndex != M_MAX_UNSIGNED)
+            {
+                input.CloseJoystick(screenJoystickSettingsIndex);
+                input.RemoveScreenJoystick(screenJoystickSettingsIndex);
+                screenJoystickSettingsIndex = M_MAX_UNSIGNED;
+            }
         }
     }
 }


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

--- frameworks/projects/framework/src/mx/graphics/shaderClasses/HueShader.as
+++ frameworks/projects/framework/src/mx/graphics/shaderClasses/HueShader.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.graphics.shaderClasses
 {


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

--- frameworks/projects/mobiletheme/src/spark/skins/mobile/VScrollBarSkin.as
+++ frameworks/projects/mobiletheme/src/spark/skins/mobile/VScrollBarSkin.as
@@ -1,11 +1,19 @@
 ////////////////////////////////////////////////////////////////////////////////
 //
-//  ADOBE SYSTEMS INCORPORATED
-//  Copyright 2010 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: 18038
Author:   hmuller@adobe.com
Date:     2010-10-06T20:10:48.132975Z

Log Message:
-----------
Added DataGrid rowBackground skin part.

Added DataGrid/resizableColumns cover property for the Grid resizableColumns property.

Updated DataGrid skin part ASDoc.

Removed ColumnHeaderBarSkin.

Changed GridEvent itemRenderer property type from IVisualElement to IGridItemRenderer.

Added ColumnHeaderBar support for dispatching separator click/double-click events.

QE notes:
Doc notes:
Bugs:
Reviewer: Kevin
Tests run: checkin, mustella cyclone
Is noteworthy for integration: no

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/Grid.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/events/GridEvent.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/SparkClasses.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/ColumnHeaderBar.as</path>
<path kind="file" action="D">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/skins/spark/ColumnHeaderBarSkin.mxml</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/GridColumn.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/GridLayout.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/DataGrid.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/skins/spark/DataGridSkin.mxml</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/ColumnHeaderBarLayout.as</path>

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

--- frameworks/projects/spark/src/spark/components/gridClasses/GridColumn.as
+++ frameworks/projects/spark/src/spark/components/gridClasses/GridColumn.as
@@ -823,7 +823,8 @@
     [Bindable("resizableChanged")]

     /**
-     *  Enable interactive resizing of this column's width.
+     *  Enable interactive resizing of this column's width if the grid's
+     *  resizableColumns property is also true.
      *
      *  @default true
      */
@@ -842,7 +843,6 @@

         _resizable = value;
         dispatchChangeEvent("resizableChanged");
-        // TBD invalidate grid
     }

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


Transferred from the Adobe Open Source Subversion Repository

Revision: 17058
Author:   hmuller@adobe.com
Date:     2010-07-26T15:36:53.685628Z

Log Message:
-----------
Final PARB changes: added GridEvent constructor relatedObject argument, IGrid no longer extends IItemRenderer.

Added GridLayout overrides of getElementBounds() and getElementBounds{Above,Below,LeftOf,RightOf}ScrollRect().   Removed override of getScrollPositionDeltaToElementHelper().

Added temporary performanace statistics gathering code to GridLayout.  See the performanceStatistics property.

Added GridLayout/dataProviderCollectionReset() for reset and refresh collection events: clears all internal cached layout state.

Inhibit Grid/invalidateDisplayList() calls during virtual grid layout to gain a little (< 3%) performance.

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/IGridItemRenderer.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/Grid.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/GridItemRenderer.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/events/GridEvent.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/ColumnHeaderBar.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/GridLayout.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/GridContainerBase.as</path>

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

--- frameworks/projects/spark/src/spark/components/gridClasses/GridLayout.as
+++ frameworks/projects/spark/src/spark/components/gridClasses/GridLayout.as
@@ -11,9 +11,11 @@

 package spark.components.supportClasses
 {
+import flash.events.Event;
 import flash.geom.Point;
 import flash.geom.Rectangle;
 import flash.utils.Dictionary;
+import flash.utils.getTimer;

 import mx.collections.IList;
 import mx.core.IFactory;
@@ -88,6 +90,75 @@
     //
     //--------------------------------------------------------------------------

+
+    /**
+     *  @private
+     */
+    override public function clearVirtualLayoutCache():void
+    {
+        // TBD(hmuller):DTRT when the target changes
+    }
+
+    /**
+     *  @private
+     *  This version of the method uses gridDimensions to calcuate the bounds
+     *  of the specified cell.   The index is the cell's position in the row-major
+     *  layout.
+     */
+    override public function getElementBounds(index:int):Rectangle
+    {
+        const dataProvider:IList = (grid) ? grid.dataProvider : null;
+        if (!dataProvider || (dataProvider.length == 0))
+            return null;
+
+        const rowCount:uint = dataProvider.length;
+        const rowIndex:int = index / rowCount;
+        const columnIndex:int = index - (rowIndex * rowCount);
+        return gridDimensions.getCellBounds(rowIndex, columnIndex);
+    }
+
+    /**
+     *  @private
+     */
+    override protected function getElementBoundsAboveScrollRect(scrollRect:Rectangle):Rectangle
+    {
+        const y:int = Math.max(0, scrollRect.top - 1);
+        const rowIndex:int = gridDimensions.getRowIndexAt(scrollRect.x, y);
+        return gridDimensions.getRowBounds(rowIndex);
+    }
+
+    /**
+     *  @private
+     */
+    override protected function getElementBoundsBelowScrollRect(scrollRect:Rectangle):Rectangle
+    {
+        const maxY:int = Math.max(0, gridDimensions.getContentHeight() - 1);
+        const y:int = Math.min(maxY, scrollRect.bottom + 1);
+        const rowIndex:int = gridDimensions.getRowIndexAt(scrollRect.x, y);
+        return gridDimensions.getRowBounds(rowIndex);
+    }
+
+    /**
+     *  @private
+     */
+    override protected function getElementBoundsLeftOfScrollRect(scrollRect:Rectangle):Rectangle
+    {
+        const x:int = Math.max(0, scrollRect.left - 1);
+        const columnIndex:int = gridDimensions.getColumnIndexAt(x, scrollRect.y);
+        return gridDimensions.getColumnBounds(columnIndex);
+    }
+
+    /**
+     *  @private
+     */
+    override protected function getElementBoundsRightOfScrollRect(scrollRect:Rectangle):Rectangle
+    {
+        const maxX:int = Math.max(0, gridDimensions.getContentWidth() - 1);
+        const x:int = Math.min(maxX, scrollRect.right + 1);
+        const columnIndex:int = gridDimensions.getColumnIndexAt(x, scrollRect.y);
+        return gridDimensions.getColumnBounds(columnIndex);
+    }
+
     /**
      *  @private
      */
@@ -132,6 +203,10 @@
     {
         if (!grid)
             return;
+
+        var startTime:Number;
+        if (enablePerformanceStatistics)
+            startTime = getTimer();

         layoutColumns(horizontalScrollPosition, verticalScrollPosition, NaN /* width */);

@@ -147,6 +222,12 @@
         grid.measuredHeight = Math.ceil(measuredHeight);
         grid.measuredMinWidth = Math.ceil(measuredMinWidth);
         grid.measuredMinHeight = Math.ceil(measuredMinHeight);
+
+        if (enablePerformanceStatistics)
+        {
+            var elapsedTime:Number = getTimer() - startTime;
+            performanceStatistics.measureTimes.push(elapsedTime);
+        }
     }

     /**
@@ -156,6 +237,14 @@
     {
         if (!grid)
             return;
+
+        var startTime:Number;
+        if (enablePerformanceStatistics)
+        {
+            startTime = getTimer();
+            if (performanceStatistics.updateDisplayListStartTime === undefined)
+                performanceStatistics.updateDisplayListStartTime = startTime;
+        }

         // Layout the item renderers and compute new values for visibleRowIndices et al

@@ -213,51 +302,19 @@

         const contentWidth:Number = Math.ceil(gridDimensions.getContentWidth());
         const contentHeight:Number = Math.ceil(gridDimensions.getContentHeight());
-        grid.setContentSize(contentWidth, contentHeight);
-    }
-
-    /**
-     *  @private
-     */
-    override public function clearVirtualLayoutCache():void
-    {
-        // TBD(hmuller):DTRT when the target changes
-    }
-
-    /**
-     *  @private
-     *  For the offset properties, a value of NaN means don't offset from that edge. A value
-     *  of 0 means to put the element flush against that edge.
-     *
-     *  @param topOffset Number of pixels to position the element below the top edge.
-     *  @param bottomOffset Number of pixels to position the element above the bottom edge.
-     *  @param leftOffset Number of pixels to position the element to the right of the left edge.
-     *  @param rightOffset Number of pixels to position the element to the left of the right edge.
-     */
-    override mx_internal function getScrollPositionDeltaToElementHelper(
-                                                               index:int, topOffset:Number = NaN,
-                                                               bottomOffset:Number = NaN,
-                                                               leftOffset:Number = NaN,
-                                                               rightOffset:Number = NaN):Point
-    {
-        var rowIndex:int = index / gridDimensions.rowCount;
-        var colIndex:int;
-
-        var elementR:Rectangle;
-        if (isRowSelectionMode())
-        {
-            elementR = gridDimensions.getRowBounds(rowIndex);
-        }
-        else if (isCellSelectionMode())
-        {
-            colIndex = index % gridDimensions.rowCount
-            elementR = gridDimensions.getCellBounds(rowIndex, colIndex);
-        }
-
-        return getScrollPositionDeltaToElementHelperHelper(
-                    elementR, topOffset, bottomOffset, leftOffset, rightOffset);
-    }
-
+        grid.setContentSize(contentWidth, contentHeight);
+
+        if (enablePerformanceStatistics)
+        {
+            var endTime:Number = getTimer();
+            const cellCount:int = visibleRowIndices.length * visibleColumnIndices.length;
+            performanceStatistics.updateDisplayListEndTime = endTime;
+            performanceStatistics.updateDisplayListTimes.push(endTime - startTime);
+            performanceStatistics.updateDisplayListRectangles.push(visibleGridBounds.clone());
+            performanceStatistics.updateDisplayListCellCounts.push(cellCount);
+        }
+    }
+
     //--------------------------------------------------------------------------
     //
     //  DataGrid Access
@@ -821,7 +878,7 @@

         if (gridRenderer && gridColumn)
         {
-            gridRenderer.itemIndex = rowIndex;
+            gridRenderer.rowIndex = rowIndex;
             gridRenderer.column = gridColumn;
             if (dataItem == null)
                 dataItem = getDataProviderItem(rowIndex);
@@ -1385,6 +1442,8 @@

             case CollectionEventKind.REFRESH:
             case CollectionEventKind.RESET:
+                return dataProviderCollectionReset(event);
+
             case CollectionEventKind.UPDATE:
             case CollectionEventKind.REPLACE:
                 break;
@@ -1474,7 +1533,7 @@
         }

         return false;
-    }
+    }

     /**
      *  @private
@@ -1497,6 +1556,23 @@
         return elementChanged;
     }

+    /**
+     *  @private
+     *  Called in response to a refresh/reset CollectionEvent.  Clear everything.
+     */
+    private function dataProviderCollectionReset(event:CollectionEvent):Boolean
+    {
+        visibleRowIndices.length = 0;
+        visibleColumnIndices.length = 0;
+        visibleItemRenderersBounds.setEmpty();
+        visibleGridBounds.setEmpty();
+        freeGridElements(visibleRowBackgrounds);
+        freeGridElements(visibleRowSeparators);
+        freeItemRenderers(visibleItemRenderers);
+
+        return true;
+    }
+
     //--------------------------------------------------------------------------
     //
     //  Grid Elements
@@ -1617,8 +1693,10 @@

     private function layoutGridElement(elt:IVisualElement, x:Number, y:Number, width:Number, height:Number):void
     {
-        // TBD(hmuller): support for BasicLayout constraints
-
+        var startTime:Number;
+        if (enablePerformanceStatistics)
+            startTime = getTimer();
+
         const validatingElt:IInvalidating = elt as IInvalidating;

         if (!isNaN(width) || !isNaN(height))
@@ -1630,6 +1708,12 @@
         if (validatingElt)
             validatingElt.validateNow();
         elt.setLayoutBoundsPosition(x, y);
+
+        if (enablePerformanceStatistics)
+        {
+            var elapsedTime:Number = getTimer() - startTime;
+            performanceStatistics.layoutGridElementTimes.push(elapsedTime);
+        }
     }

     private function layoutGridElementR(elt:IVisualElement, bounds:Rectangle):void
@@ -1883,5 +1967,90 @@

     // TBD: isCellVisible(rowIndex, columnIndex)
     // TBD: getCellValue(rowIndex, columnIndex)? getCellLabel()?
+
+    //--------------------------------------------------------------------------
+    //
+    //  Performance Statistics
+    //
+    //--------------------------------------------------------------------------
+
+    //----------------------------------
+    //  performanceStatistics
+    //----------------------------------
+
+    private var _performanceStatistics:Object = null;
+
+    /**
+     *  @private
+     *  The value of this object, if enablePerformanceStatistics == true, is an
+     *  object with the following properties:
+     *
+     *  updateDisplayListStartTime:Number
+     *  updateDisplayListEndTime:Number
+     *    The getTimer() value for start of the first updateDisplayList() call
+     *    and the end of the last one.   These values can be used to compute an
+     *    effective frame rate if Grid is continuously scrolled while
+     *    enablePerformanceStatistics is true.
+     *
+     *  updateDisplayListTimes:Vector.<Number>
+     *    The elapsed time in ms for each updateDisplayList() call since
+     *    enablePerformanceStatistics was set to true.
+     *
+     *  updateDisplayListRectangles:Vector.<Rectangle>
+     *    The value of visibleGridBounds for each udpateDisplayList() call.
+     *
+     *  updateDisplayListCellCounts:Vector.<int>
+     *    The number of cells rendered in each updateDisplayList() call.
+     *
+     *  layoutGridElementTimes:Vector.<Number>
+     *    Execution times for the layoutGridElement() method.  This method is
+     *    responsible for applying validateNow() to item renderers.
+     *
+     *  measureTimes:Vector.<Number>
+     *    The elapsed time in ms for each measure() call since
+     *    enablePerformanceStatistics was set to true.
+     */
+    public function get performanceStatistics():Object
+    {
+        return _performanceStatistics;
+    }
+
+    //----------------------------------
+    //  enablePerformanceStatistics
+    //----------------------------------
+
+    private var _enablePerformanceStatistics:Boolean = false;
+
+    /**
+     *  @private
+     *  When set to true the GridLayout implementation starts recording statistics
+     *  per the performanceStatistics property.   When set to null (the default),
+     *  recording stops.
+     */
+    public function get enablePerformanceStatistics():Boolean
+    {
+        return _enablePerformanceStatistics;
+    }
+
+    /**
+     *  @private
+     */
+    public function set enablePerformanceStatistics(value:Boolean):void
+    {
+        if (value == _enablePerformanceStatistics)
+            return;
+
+        if (value)
+            _performanceStatistics = {
+                updateDisplayListTimes: new Vector.<Number>(),
+                updateDisplayListRectangles: new Vector.<Rectangle>(),
+                updateDisplayListCellCounts: new Vector.<int>(),
+                measureTimes: new Vector.<Number>(),
+                layoutGridElementTimes: new Vector.<Number>()
+            };
+
+        _enablePerformanceStatistics = value;
+    }
+
 }
 }


Transferred from the Adobe Open Source Subversion Repository

Revision: 11596
Author:   rfrishbe@adobe.com
Date:     2009-11-10T00:36:35.849792Z

Log Message:
-----------
Some changes to the new OSMF video player classes.  Some PARB renames, like videoElement->videoDisplay and playWhenHidden -> pauseWhenHidden as well as some fundamental changes around events.

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

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/mediaClasses/VolumeBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/VideoDisplay.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/VideoPlayer2.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/skins/spark/VideoPlayerSkin2.mxml</path>

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

--- frameworks/projects/spark/src/spark/components/mediaClasses/VolumeBar.as
+++ frameworks/projects/spark/src/spark/components/mediaClasses/VolumeBar.as
@@ -123,7 +123,7 @@
  *  muteButton functions as a mute/unmute button when clicked.
  *
  *  @see spark.components.VideoPlayer
- *  @see spark.primitives.VideoElement
+ *  @see spark.components.VideoDisplay
  *
  *  @langversion 3.0
  *  @playerversion Flash 10


Mapnode base type

Mapnode base type

--- src/ageofai/map/model/MapNode.as
+++ src/ageofai/map/model/MapNode.as
@@ -33,6 +33,11 @@
             return this._type & 0xFF00;
         }

+        public function get baseType():int
+        {
+            return this._type & 0xFF;
+        }
+
         public function get baseNodeWalkable():Boolean
         {
             return (this._type & 0xFF) < CMapNodeType.WATER;


Issue #83: Assign existing basemap icon when converting from web map.

--- src/com/esri/builder/controllers/SwitchingMapsController.as
+++ src/com/esri/builder/controllers/SwitchingMapsController.as
@@ -25,12 +25,16 @@
 import com.esri.ags.layers.WebTiledLayer;
 import com.esri.ags.layers.supportClasses.TileInfo;
 import com.esri.ags.portal.WebMapUtil;
+import com.esri.ags.portal.supportClasses.PortalItem;
 import com.esri.builder.eventbus.AppEvent;
 import com.esri.builder.model.ConfigLayer;
 import com.esri.builder.model.ConfigMap;
 import com.esri.builder.model.Model;
+import com.esri.builder.model.PortalLayer;
 import com.esri.builder.model.PortalModel;
+import com.esri.builder.supportClasses.IconFetchEvent;
 import com.esri.builder.supportClasses.LogUtil;
+import com.esri.builder.supportClasses.PortalLayerIconFetcher;
 import com.esri.builder.views.popups.NoticePopUp;

 import flash.display.DisplayObject;
@@ -42,6 +46,8 @@
 import mx.logging.ILogger;
 import mx.managers.PopUpManager;
 import mx.resources.ResourceManager;
+import mx.rpc.Fault;
+import mx.rpc.Responder;
 import mx.utils.ObjectUtil;

 public final class SwitchingMapsController
@@ -251,20 +257,75 @@
             }
         }

-        mapConfigXML.appendChild(baseLayers);
-
-        if (opLayers.hasComplexContent())
-        {
-            mapConfigXML.appendChild(opLayers);
-        }
-        if (unsupportedLayers.length)
-        {
-            noticePopUp.isWaiting = false;
-            showLayerNotAddedPopUp(unsupportedLayers);
+        var basemapLayerItemId:String;
+
+        if (event.itemData.baseMap)
+        {
+            var basemapLayersObjects:Array = event.itemData.baseMap.baseMapLayers;
+            for each (var basemapLayerObject:Object in basemapLayersObjects)
+            {
+                if (basemapLayerObject.itemId && !basemapLayerObject.isReference)
+                {
+                    basemapLayerItemId = basemapLayerObject.itemId;
+                    break;
+                }
+            }
+        }
+
+        if (basemapLayerItemId)
+        {
+            PortalModel.getInstance().portal.getItem(basemapLayerItemId, new Responder(getItem_resultHandler, getItem_faultHandler));
+
+            function getItem_resultHandler(item:PortalItem):void
+            {
+                LOG.debug("fetched basemap item: {0}", basemapLayerItemId);
+                var iconFetcher:PortalLayerIconFetcher = new PortalLayerIconFetcher();
+                iconFetcher.addEventListener(IconFetchEvent.FETCH_COMPLETE, iconFetcher_fetchCompleteHandler);
+                iconFetcher.fetchIconURL(new PortalLayer(item));
+
+                function iconFetcher_fetchCompleteHandler(e:IconFetchEvent):void
+                {
+                    iconFetcher.removeEventListener(IconFetchEvent.FETCH_COMPLETE, iconFetcher_fetchCompleteHandler);
+
+                    if (baseLayers.children().length() > 0 && e.iconPath)
+                    {
+                        //set the icon on the 1st basemap
+                        baseLayers.child(0).@icon = e.iconPath;
+                    }
+
+                    carryOn();
+                }
+            }
+
+            function getItem_faultHandler(fault:Fault):void
+            {
+                LOG.debug("could not fetch basemap item: {0}", fault.toString());
+                carryOn();
+            }
         }
         else
         {
-            saveNewMapConfig();
+            carryOn();
+        }
+
+        function carryOn():void
+        {
+            mapConfigXML.appendChild(baseLayers);
+
+            if (opLayers.hasComplexContent())
+            {
+                mapConfigXML.appendChild(opLayers);
+            }
+
+            if (unsupportedLayers.length)
+            {
+                noticePopUp.isWaiting = false;
+                showLayerNotAddedPopUp(unsupportedLayers);
+            }
+            else
+            {
+                saveNewMapConfig();
+            }
         }
     }


refactor scene

refactor scene

--- src/com/merlinds/miracle_tool/controllers/PublishCommand.as
+++ src/com/merlinds/miracle_tool/controllers/PublishCommand.as
@@ -6,7 +6,6 @@
 package com.merlinds.miracle_tool.controllers {
 	import com.merlinds.debug.log;
 	import com.merlinds.miracle.meshes.MeshMatrix;
-	import com.merlinds.miracle.utils.UMath;
 	import com.merlinds.miracle_tool.events.ActionEvent;
 	import com.merlinds.miracle_tool.events.DialogEvent;
 	import com.merlinds.miracle_tool.models.ProjectModel;
@@ -117,7 +116,7 @@
 					//create matrix
 					var prevMatrix:MeshMatrix = layer.matrixList.length > 0
 							? layer.matrixList[ layer.matrixList.length - 1] : null;
-					var matrix:MeshMatrix = MeshMatrix.fromMatrix(frameVO.matrix, 0, 0);
+					var matrix:MeshMatrix = MeshMatrix.fromMatrix(frameVO.matrix, frameVO.transformationPoint.x, frameVO.transformationPoint.y);
 					if(prevMatrix != null && matrix != null){
 						//calculate shortest angle between previous matrix skew and current matrix skew
 						matrix.skewX = this.getShortest(matrix.skewX, prevMatrix.skewX);


Flash: In effort to resolve random freeze problem in FP11 - simplify BitmapDataUnlimited event dispatching model (was not dispatching complete event properly). Related #421.

--- src/flash/plupload/src/com/formatlos/BitmapDataUnlimited.as
+++ src/flash/plupload/src/com/formatlos/BitmapDataUnlimited.as
@@ -31,7 +31,6 @@
 	import flash.display.Loader;
 	import flash.events.Event;
 	import flash.events.EventDispatcher;
-	import flash.events.IEventDispatcher;
 	import flash.geom.ColorTransform;
 	import flash.geom.Matrix;
 	import flash.geom.Point;
@@ -86,12 +85,11 @@
 	 * </div>
 	 *
 	 */
-	public class BitmapDataUnlimited implements IEventDispatcher
+	public class BitmapDataUnlimited extends EventDispatcher
 	{
 		// basically this value is 4096, but take 4000 to have some buffer
 		static private const DRAW_LIMIT : uint = 4000;

-		protected var _eventDispatcher : EventDispatcher;
 		private var _loader : Loader;
 		private var _gif : Gif;
 		private var _fillColor : uint;
@@ -111,14 +109,6 @@
 			return _bitmapData;
 		}

-
-		/**
-		 * Creates a new BitmapDataUnlimited object.
-		 */
-		public function BitmapDataUnlimited()
-		{
-			_eventDispatcher = new EventDispatcher(this);
-		}

 		/**
 		 * Creates a huge BitmapData object.
@@ -259,33 +249,6 @@
 		{
 			dispatchEvent(new BitmapDataUnlimitedEvent(BitmapDataUnlimitedEvent.COMPLETE));
 		}
-
-
-		public function addEventListener(type : String, listener : Function, useCapture : Boolean = false, priority : int = 0, useWeakReference : Boolean = true) : void
-		{
-			_eventDispatcher.addEventListener(type, listener, useCapture, priority, useWeakReference);
-		}
-
-		public function dispatchEvent(event : Event) : Boolean
-		{
-			return _eventDispatcher.dispatchEvent(event);
-		}
-
-		public function hasEventListener(type : String) : Boolean
-		{
-			return _eventDispatcher.hasEventListener(type);
-		}
-
-		public function removeEventListener(type : String, listener : Function, useCapture : Boolean = false) : void
-		{
-			_eventDispatcher.removeEventListener(type, listener, useCapture);
-		}
-
-		public function willTrigger(type : String) : Boolean
-		{
-			return _eventDispatcher.willTrigger(type);
-		}
-

 	}
 }


Added some comments and cleaned the code of previous commit

--- WeaveUISpark/src/weave/visualization/plotters/RegressionLinePlotter.as
+++ WeaveUISpark/src/weave/visualization/plotters/RegressionLinePlotter.as
@@ -346,21 +346,29 @@

 			// For the other types, we know that coefficients only has 2 entries.

-			//
+			// Model y = a*ln(x) + b
+			// called with (y, ln(x))
+			// => A = a, B = b
 			else if (type == LOGARITHMIC)
 			{
 				return a*Math.log(xValue) + b;
 			}
-
+
+			// Model y = b*exp(a*x)
+			// => ln(y) = ln(b) + a*x
+			// called with (ln(y), x)
+			// => A = a, B = ln(b)
 			else if (type == EXPONENTIAL)
 			{
-				trace(coefficients);
 				return Math.exp(b)*Math.exp(a*xValue);
-				//return Math.exp(coefficients[0])*Math.exp(xValue*coefficients[1]);
-			}
+			}
+
+			// Model y = b*x^a
+			// => ln(y) = ln(b) + a*ln(x)
+			// called with (ln(y), a*ln(x)
+			// => A = a, B = ln(b)
 			else if (type == POWER)
 			{
-				trace(coefficients);
 				return Math.exp(b) * Math.pow(xValue, a);
 			}
 			else


RR#id_from_response bug fix

RR#id_from_response bug fix

--- src/metafas3/ReactiveResource.as
+++ src/metafas3/ReactiveResource.as
@@ -491,17 +491,26 @@
         protected function id_from_response (request:Object) :void
         {
 			var fmt:String = model_format(self());
+			var matches:Array;

 			if (fmt == 'html')
 			{
 				var root:String = Inflector.underscore(Inflector.demodulize(getQualifiedClassName(this)));
-				var re:RegExp = new RegExp('<input[^>]*id="' + root + '_id"[^>]*>');
-				var input:XML = XML(request.response.raw.match(re).toString());
-				this.id = input.@value.toString();
+				var re:RegExp = new RegExp('<input[^>]+id="' + root + '_id"[^>]*>');
+				matches = request.response.raw.match(re);
+				// prevent errors on no id
+				if (matches)
+				{
+					var input:XML = XML(matches.toString());
+					this.id = input.@value.toString();
+				}
+				else
+				{
+					logger.info('>>> ERROR: Expected response to contain <input type="hidden" id="' + root + '_id" />');
+				}
 			}
 			else if (fmt == 'xml')
 			{
-				var matches:Array;
 				// parse id from location
 				if (request.data.location) matches = request.data.location.toString().match(/\/([^\/]*?)(\.\w+)?$/);
 				// assign id IFF match is not null


Update vpaidLinearFullPage.as

Update vpaidLinearFullPage.as

--- com/ozg/adcore/vpaid/vpaidLinearFullPage.as
+++ com/ozg/adcore/vpaid/vpaidLinearFullPage.as
@@ -7,9 +7,9 @@
    import flash.events.TimerEvent;
    import com.ozg.events.helperEvents;
    import flash.system.Security;
-   import flash.net.navigateToURL;
-   import flash.net.URLRequest;
-   import flash.net.URLLoader;
+   import flash.net.navigateToURL;
+   import flash.net.URLRequest;
+   import flash.net.URLLoader;

    public class vpaidLinearFullPage extends Sprite implements IVPAID
    {
@@ -18,7 +18,7 @@
       {
          super();
          Security.allowDomain("*");
-         mouseEnabled = false;
+         mouseEnabled = false;

       }

@@ -44,11 +44,11 @@

       private var adContainerSprite:Sprite;

-      protected var isLinearAd:Boolean = true;
-
-	  private var clickThru:String;
-
-	  private var impressionURL:String;
+      protected var isLinearAd:Boolean = true;
+
+      private var clickThru:String;
+
+      private var impressionURL:String;

       public function getVPAID() : Object
       {
@@ -108,21 +108,21 @@
          {
             try
             {
-               xmlData = new XML(creativeData);
-               this.creativePath = xmlData.setting;
-				this.creativeLoadTimeout = xmlData.duration;
-				this.clickThru = xmlData.clickThru;
-				this.impressionURL = xmlData.impressionURL;
-				initWidth = xmlData.creativeWidth;
-				initHeight = xmlData.creativeHeight;
-				handleVpaidEvent('AdImpression');
-				var s:SendAndLoadExample = new SendAndLoadExample();
-				s.sendData(impressionURL,'no message');
+		                xmlData = new XML(creativeData);
+		                this.creativePath = xmlData.setting;
+			        this.creativeLoadTimeout = xmlData.duration;
+				this.clickThru = xmlData.clickThru;
+				this.impressionURL = xmlData.impressionURL;
+				initWidth = xmlData.creativeWidth;
+				initHeight = xmlData.creativeHeight;
+				handleVpaidEvent('AdImpression');
+				var s:SendAndLoadExample = new SendAndLoadExample();
+				s.sendData(impressionURL,'no message');

             }
             catch(e:Error)
             {
-               onError();
+               			onError();
             }
          }
          else
@@ -151,7 +151,7 @@
          this.addJsCallbacks();
          this.addEventListeners();
          this.adContainerSprite = new adContainer(this.initWidth,this.initHeight);
-         addChild(this.adContainerSprite);
+         addChild(this.adContainerSprite);

       }

@@ -163,20 +163,15 @@
       private function addJsCallbacks() : void
       {
          ExternalInterface.addCallback("handleVpaidEvent",this.handleVpaidEvent);
-         ExternalInterface.addCallback("getPlayerVolume",this.getAdPlayerVolume);
-		 ExternalInterface.call("initVpaid",creativePath,this.initWidth,this.initHeight);
+         ExternalInterface.addCallback("getPlayerVolume",this.getAdPlayerVolume);
+         ExternalInterface.call("initVpaid",creativePath,this.initWidth,this.initHeight);
       }

       private function getAdPlayerVolume() : void
       {
          //js will come here
-      }
-
-	  public function comingHTML() : void
-      {
-         ExternalInterface.call("console.log","i am talking with js");
-      }
-
+      }
+
       private function addEventListeners() : void
       {
          addEventListener(vpaidEvent.AdUserClose,this.userClose);
@@ -188,7 +183,7 @@
       }

       protected function handleVpaidEvent(param1:String) : void
-      {
+      {
 		// ExternalInterface.call('console.log','param : '+param1);
          switch(param1)
          {
@@ -251,16 +246,16 @@
          this.timeRemaining--;
       }

-
-	  public function onAdClick(event:Object = null) : void
-	  {
-		 var data:Object = { "playerHandles":true };
-		 dispatchEvent(new vpaidEvent(vpaidEvent.AdClickThru, data));
-
-		  ExternalInterface.call("function setWMWindow() {window.open('" + this.clickThru + "');}");
-		 stopAd();
-
-	   }
+
+	  public function onAdClick(event:Object = null) : void
+	  {
+		 var data:Object = { "playerHandles":true };
+		 dispatchEvent(new vpaidEvent(vpaidEvent.AdClickThru, data));
+
+		  ExternalInterface.call("function setWMWindow() {window.open('" + this.clickThru + "');}");
+		 stopAd();
+
+	   }

       public function stopAd() : void


comment outs

comment outs

--- com/ozg/utils/loadingAnimation.as
+++ com/ozg/utils/loadingAnimation.as
@@ -1,9 +1,7 @@
 package com.ozg.utils
 {
    import flash.display.Sprite;
-   import flash.utils.Timer;
-   import flash.events.TimerEvent;
-   import com.ozg.events.helperEvents;
+

    public class loadingAnimation extends Sprite
    {
@@ -11,94 +9,7 @@
       public function loadingAnimation(param1:Number = 16777215)
       {
          super();
-         this.animationColor = param1;
-         this.animation = new Sprite();
-         addChild(this.animation);
-         this.makeAnimation();
-      }
-
-      private var animation:Sprite;
-
-      private var rotate:Number = 0;
-
-      private var animationTimer:Timer;
-
-      private var animationColor:Number;
-
-      private var animationStopped:Boolean = false;
-
-      public function stopAnimation() : void
-      {
-         if(this.animationStopped == false)
-         {
-            removeChild(this.animation);
-            this.animationTimer.removeEventListener(TimerEvent.TIMER,this.rotateMe);
-            this.animationTimer.stop();
-            this.animationStopped = true;
-         }
-      }
-
-      private function makeAnimation() : void
-      {
-         this.renderAnimation();
-         addEventListener(helperEvents.RemoveLoader,this.removeLoaderHandler);
-         this.animationTimer = new Timer(70);
-         this.animationTimer.addEventListener(TimerEvent.TIMER,this.rotateMe);
-         this.animationTimer.start();
-      }
-
-      private function removeLoaderHandler(param1:helperEvents) : void
-      {
-         this.stopAnimation();
-      }
-
-      private function rotateMe(param1:TimerEvent) : void
-      {
-         this.rotate = this.rotate + 30;
-         if(this.rotate == 360)
-         {
-            this.rotate = 0;
-         }
-         this.renderAnimation(this.rotate);
-      }
-
-      private function renderAnimation(param1:Number = 0) : void
-      {
-         var _loc4_:Sprite = null;
-         this.clearAnimation();
-         var _loc2_:Sprite = new Sprite();
-         var _loc3_:uint = 0;
-         while(_loc3_ <= 12)
-         {
-            _loc4_ = this.getShape();
-            _loc4_.rotation = _loc3_ * 30 + param1;
-            _loc4_.alpha = 0 + 1 / 12 * _loc3_;
-            _loc2_.addChild(_loc4_);
-            _loc3_++;
-         }
-         this.animation.addChild(_loc2_);
-      }
-
-      private function clearAnimation() : void
-      {
-         if(this.animation.numChildren == 0)
-         {
-            return;
-         }
-         this.animation.removeChildAt(0);
-      }
-
-      private function getShape() : Sprite
-      {
-         var _loc1_:Sprite = new Sprite();
-         _loc1_.graphics.beginFill(this.animationColor,1);
-         _loc1_.graphics.moveTo(-1,-12);
-         _loc1_.graphics.lineTo(2,-12);
-         _loc1_.graphics.lineTo(1,-5);
-         _loc1_.graphics.lineTo(0,-5);
-         _loc1_.graphics.lineTo(-1,-12);
-         _loc1_.graphics.endFill();
-         return _loc1_;
+
       }
    }
 }


Fails on error when callback is null

Fails on error when callback is null

--- src/asfac.tests/src/com/thedevstop/asfac/RegistrationTests.as
+++ src/asfac.tests/src/com/thedevstop/asfac/RegistrationTests.as
@@ -123,5 +123,17 @@

 			assertThrows(IllegalOperationError, registerFunc);
 		}
+
+		public function test_should_error_when_callback_is_null():void
+		{
+			var factory:AsFactory = new AsFactory();
+
+			var registerFunc:Function = function():void
+			{
+				factory.registerCallback(null, Dictionary);
+			};
+
+			assertThrows(IllegalOperationError, registerFunc);
+		}
 	}
 }


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

--- frameworks/projects/rpc/src/mx/messaging/AbstractConsumer.as
+++ frameworks/projects/rpc/src/mx/messaging/AbstractConsumer.as
@@ -36,6 +36,12 @@
  *  Dispatched when a message is received by the Consumer.
  *
  *  @eventType mx.messaging.events.MessageEvent.MESSAGE
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion BlazeDS 4
+ *  @productversion LCDS 3
  */
 [Event(name="message", type="mx.messaging.events.MessageEvent")]

@@ -45,6 +51,12 @@
  *  The AbstractConsumer is the base class for both the Consumer and
  *  MultiTopicConsumer classes.  You use those classes to receive pushed
  *  messages from the server.
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion BlazeDS 4
+ *  @productversion LCDS 3
  */
 public class AbstractConsumer extends MessageAgent
 {
@@ -76,6 +88,12 @@
      *       trace("-App recieved message: " + msg.toString());
      *   }
      *   </listing>
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
 	public function AbstractConsumer()
 	{
@@ -104,6 +122,12 @@

 	/**
 	 *  Flag indicating whether this consumer should be subscribed or not.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion BlazeDS 4
+	 *  @productversion LCDS 3
 	 */
 	protected var _shouldBeSubscribed:Boolean;

@@ -200,6 +224,12 @@
      *  Note that this property should be set before the Consumer subscribes and
      *  any changes after Consumer subscription will not have any effect until
      *  Consumer unsubscribes and resubscribes.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     public function get maxFrequency():uint
     {
@@ -242,6 +272,12 @@
 	 *

 	 *
 	 *  @see mx.messaging.Consumer#resubscribeInterval
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion BlazeDS 4
+	 *  @productversion LCDS 3
 	 */
 	public function get resubscribeAttempts():int
 	{
@@ -293,6 +329,12 @@
 	 *  @see mx.messaging.Consumer#resubscribeInterval
 	 *
 	 *  @throws ArgumentError If the assigned value is negative.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion BlazeDS 4
+	 *  @productversion LCDS 3
 	 */
 	public function get resubscribeInterval():int
 	{
@@ -341,6 +383,12 @@
 	/**
 	 *  Indicates whether the Consumer is currently subscribed. The propertyChange
 	 *  event is dispatched when this property changes.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion BlazeDS 4
+	 *  @productversion LCDS 3
 	 */
 	public function get subscribed():Boolean
 	{
@@ -398,6 +446,12 @@
 	 *  timestamp value will be returned during a poll operation.
 	 *  Setting this value to -1 will retrieve all cached messages from the
 	 *  destination.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion BlazeDS 4
+	 *  @productversion LCDS 3
 	 */
 	public function get timestamp():Number
 	{
@@ -515,6 +569,12 @@
 	 *  disconnected, unsubscribed state because it will not receive any more
 	 *  messages until it has reconnected and resubscribed.
 	 *  Disconnecting stops automatic resubscription attempts if they are running.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion BlazeDS 4
+	 *  @productversion LCDS 3
 	 */
 	override public function disconnect():void
 	{
@@ -630,6 +690,12 @@
 	 *  This method is a no-op if the Consumer is not subscribed.
 	 *
 	 *  @param timestamp This argument is deprecated and is ignored.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion BlazeDS 4
+	 *  @productversion LCDS 3
 	 */
 	public function receive(timestamp:Number = 0):void
 	{
@@ -650,6 +716,12 @@
 	 *                  to reconnect to the correct durable subscription in the remote destination.
 	 *
 	 *  @throws mx.messaging.errors.InvalidDestinationError If no destination is set.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion BlazeDS 4
+	 *  @productversion LCDS 3
 	 */
 	public function subscribe(clientId:String = null):void
 	{
@@ -684,6 +756,12 @@
      *
      *  @param preserveDurable - when true, durable JMS subscriptions are not destroyed
 	 * 		allowing consumers to later resubscribe and receive missed messages
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion BlazeDS 4
+	 *  @productversion LCDS 3
 	 */
 	public function unsubscribe(preserveDurable:Boolean = false):void
 	{
@@ -750,6 +828,12 @@
             /*
              * Command messages are handled internally by the Consumer and
              * are not dispatched to message listeners via MessageEvents.
+             *
+             *  @langversion 3.0
+             *  @playerversion Flash 9
+             *  @playerversion AIR 1.1
+             *  @productversion BlazeDS 4
+             *  @productversion LCDS 3
              */
             return;
         }
@@ -777,6 +861,12 @@
 	 *  subscribe messages.
 	 *
 	 *  @return The subscribe CommandMessage.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion BlazeDS 4
+	 *  @productversion LCDS 3
 	 */
 	protected function buildSubscribeMessage():CommandMessage
 	{
@@ -798,6 +888,12 @@
 	 * 			allowing consumers to later resubscribe and receive missed messages
 	 *
 	 *  @return The unsubscribe CommandMessage.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion BlazeDS 4
+	 *  @productversion LCDS 3
 	 */
 	protected function buildUnsubscribeMessage(preserveDurable:Boolean):CommandMessage
 	{
@@ -868,6 +964,12 @@
 	             * Initially, the timeout is set to 1 so we try to
 	             * reconnect immediately (perhaps to a different channel).
 	             * after that, it will poll at the configured time interval.
+	             *
+	             *  @langversion 3.0
+	             *  @playerversion Flash 9
+	             *  @playerversion AIR 1.1
+	             *  @productversion BlazeDS 4
+	             *  @productversion LCDS 3
 	             */
 	            _resubscribeTimer = new Timer(1);
 	            _resubscribeTimer.addEventListener(TimerEvent.TIMER, resubscribe);


Transferred from the Adobe Open Source Subversion Repository

Revision: 10402
Author:   gruehle@adobe.com
Date:     2009-09-18T20:08:24.668748Z

Log Message:
-----------
Move the focus exclusion code from FocusSkin to SparkSkin. Refactor common code in FocusSkin and ErrorSkin into a new HighlightBitmapCaptureSkin base class. Fix focus/error skin rendering issues with contentBackgroundAlpha set to low values.

QE notes: -
Doc notes: Added new class HighlightBitmapCaptureSkin.
Bugs: SDK-23209, SDK-23204, SDK-23200
Reviewer: Ely
Tests run: checkintests, mustella gumbo Button, List, CheckBox, TextInput
Is noteworthy for integration: no

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/skins/SparkSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/Skin.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/src/spark/skins/spark/HighlightBitmapCaptureSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/skins/spark/ErrorSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/SkinnableComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/skins/spark/FocusSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/skins/spark/ScrollerSkin.mxml</path>

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

--- frameworks/projects/spark/src/spark/skins/spark/ErrorSkin.as
+++ frameworks/projects/spark/src/spark/skins/spark/ErrorSkin.as
@@ -17,16 +17,12 @@
 import flash.display.IBitmapDrawable;
 import flash.events.Event;
 import flash.filters.GlowFilter;
-import flash.geom.ColorTransform;
 import flash.geom.Matrix;
 import flash.geom.Matrix3D;
 import flash.geom.Point;
 import flash.geom.Rectangle;

-import spark.components.supportClasses.SkinnableComponent;
-import mx.core.UIComponent;
 import mx.core.mx_internal;
-import mx.events.FlexEvent;

 use namespace mx_internal;

@@ -41,7 +37,7 @@
  *  @playerversion AIR 1.5
  *  @productversion Flex 4
  */
-public class ErrorSkin extends UIComponent
+public class ErrorSkin extends HighlightBitmapCaptureSkin
 {
     include "../../core/Version.as";

@@ -50,18 +46,13 @@
     //  Class constants
     //
     //--------------------------------------------------------------------------
-
-    // FIXME (gruehle): Make this a style property?
-    private const ERROR_THICKNESS:int = 1;
-
+
     //--------------------------------------------------------------------------
     //
     //  Class variables
     //
     //--------------------------------------------------------------------------

-    private static var colorTransform:ColorTransform = new ColorTransform(
-                1.01, 1.01, 1.01, 2);
     private static var glowFilter:GlowFilter = new GlowFilter(
                 0xFF0000, 0.85, 2, 2, 3, 1, false, true);
     private static var rect:Rectangle = new Rectangle();;
@@ -95,46 +86,6 @@
     //
     //--------------------------------------------------------------------------

-    /**
-     *  Bitmap capture of the focused component. This bitmap includes a glow
-     *  filter that shows the focus glow.
-     *
-     *  @langversion 3.0
-     *  @playerversion Flash 10
-     *  @playerversion AIR 1.5
-     *  @productversion Flex 4
-     */
-    private var bitmap:Bitmap;
-
-    /**
-     * @private
-     */
-    private var _errorObject:SkinnableComponent;
-
-    /**
-     *  The Spark component to draw the error skin around.
-     *
-     *  @langversion 3.0
-     *  @playerversion Flash 10
-     *  @playerversion AIR 1.5
-     *  @productversion Flex 4
-     */
-    public function get errorObject():SkinnableComponent
-    {
-        return _errorObject;
-    }
-
-    public function set errorObject(value:SkinnableComponent):void
-    {
-        _errorObject = value;
-
-        // Add an "updateComplete" listener to the skin so we can redraw
-        // whenever the skin is drawn.
-        if (_errorObject.skin)
-            _errorObject.skin.addEventListener(FlexEvent.UPDATE_COMPLETE,
-                    skin_updateCompleteHandler, false, 0, true);
-    }
-
     //--------------------------------------------------------------------------
     //
     //  Overridden methods
@@ -142,125 +93,34 @@
     //--------------------------------------------------------------------------

     /**
+     *  @private
+     */
+    override protected function processBitmap() : void
+    {
+        // Apply the glow filter
+        rect.x = rect.y = 0;
+        rect.width = bitmap.bitmapData.width;
+        rect.height = bitmap.bitmapData.height;
+        glowFilter.color = target.getStyle("errorColor");
+        bitmap.bitmapData.applyFilter(bitmap.bitmapData, rect, filterPt, glowFilter);
+    }
+
+    /**
      * @inheritDoc
      */
     override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void
     {
-        // Early exit if we don't have an error object
-        if (!errorObject)
+        // Early exit if we don't have a target object
+        if (!target)
             return;
-
-        // Grab a bitmap of the error object
-        var bitmapData:BitmapData = new BitmapData(
-                    errorObject.width + (ERROR_THICKNESS * 2),
-                    errorObject.height + (ERROR_THICKNESS * 2), true, 0);
-        var m:Matrix = new Matrix();

-        // If the error object has a focus skin, make sure it is hidden.
-        if (errorObject.focusObj)
-            errorObject.focusObj.visible = false;
-
-        // Ensure no 3D transforms apply, as this skews our snapshot bitmap.
-        var transform3D:Matrix3D = null;
-        if (errorObject.$transform.matrix3D)
-        {
-            transform3D = errorObject.$transform.matrix3D;
-            errorObject.$transform.matrix3D = null;
-        }
-
-        // Temporary solution for error drawing on CheckBox and RadioButton components.
-        // Hide the label before drawing the focus.
-        // FIXME (gruehle): Figure out a better solution.
-        var hidLabelElement:Boolean = false;
-        if ((weakIsCheck(errorObject, "spark.components::CheckBox") ||
-             weakIsCheck(errorObject, "spark.components::RadioButton"))
-             && Object(errorObject).labelDisplay)
-        {
-            Object(errorObject).labelDisplay.displayObject.visible = false;
-            hidLabelElement = true;
-        }
-
-        m.tx = ERROR_THICKNESS;
-        m.ty = ERROR_THICKNESS;
-        bitmapData.draw(errorObject as IBitmapDrawable, m);
-
-        // Show the focus skin, if needed.
-        if (errorObject.focusObj)
-            errorObject.focusObj.visible = true;
-
-        // Show the label, if needed.
-        if (hidLabelElement)
-            Object(errorObject).labelDisplay.displayObject.visible = true;
-
-        // Special case for Scroller - fill the entire rect.
-        // FIXME (gruehle): Figure out a better solution.
-        if (weakIsCheck(errorObject, "spark.components::Scroller"))
-        {
-            rect.x = rect.y = ERROR_THICKNESS;
-            rect.width = errorObject.width;
-            rect.height = errorObject.height;
-            bitmapData.fillRect(rect, 0xFFFFFFFF);
-        }
-
-        // Transform the color to remove the transparency. The GlowFilter has the "knockout" property
-        // set to true, which removes this image from the final display, leaving only the outer glow.
-        rect.x = rect.y = ERROR_THICKNESS;
-        rect.width = errorObject.width;
-        rect.height = errorObject.height;
-        bitmapData.colorTransform(rect, colorTransform);
-
-        // Apply the glow filter
-        rect.x = rect.y = 0;
-        rect.width = bitmapData.width;
-        rect.height = bitmapData.height;
-        glowFilter.color = errorObject.getStyle("errorColor");
-        bitmapData.applyFilter(bitmapData, rect, filterPt, glowFilter);
-
-        if (!bitmap)
-        {
-            bitmap = new Bitmap();
-            addChild(bitmap);
-        }
-
-        bitmap.bitmapData = bitmapData;
+        super.updateDisplayList(unscaledWidth, unscaledHeight);

         // Set the size of the bitmap to be the size of the component. This has the effect
         // of overlaying the error skin on the border of the component.
-        bitmap.width = errorObject.width;
-        bitmap.height = errorObject.height;
-
-        // Restore original 3D matrix if applicable.
-        if (transform3D)
-            errorObject.$transform.matrix3D = transform3D;
-    }
-
-    private static var classDefCache:Object = {};
-
-    /**
-     *  @private
-     */
-    private function weakIsCheck(obj:Object, className:String):Boolean
-    {
-        if (!(className in classDefCache))
-        {
-            var classObj:Class = Class(systemManager.getDefinitionByName(className));
-
-            classDefCache[className] = classObj;
-        }
-
-        if (!classDefCache[className])
-            return false;
-
-        return obj is classDefCache[className];
-    }
-
-    /**
-     *  @private
-     */
-    private function skin_updateCompleteHandler(event:Event):void
-    {
-        // Whenever the skin is updated, we need to redraw
-        invalidateDisplayList();
+        bitmap.x = bitmap.y = 0;
+        bitmap.width = target.width;
+        bitmap.height = target.height;
     }
 }
 }


DynamicEditor: no longer using JSON editing for LinkableNumber or LinkableBoolen.

--- WeaveUI/src/weave/editors/DynamicEditor.as
+++ WeaveUI/src/weave/editors/DynamicEditor.as
@@ -91,10 +91,10 @@
 			{
 				var codeEditor:CodeEditor = new CodeEditor();
 				codeEditor.addEventListener(FlexEvent.CREATION_COMPLETE, function(event:Event):void {
-					if (!(lv is LinkableString) && JsonSynchronizer.available)
+					if (lv is LinkableString || lv is LinkableNumber || lv is LinkableBoolean || !JsonSynchronizer.available)
+						linkBindableProperty(lv, event.target, 'text', 500, true)
+					else
 						new JsonSynchronizer(lv, codeEditor, 'text');
-					else
-						linkBindableProperty(lv, event.target, 'text', 500, true)

 					var eb:ExpandButton = ExpandButton.makeExpandable(codeEditor, false, 24);
 					eb.addEventListener(MouseEvent.CLICK, function(e:Event):void {


FLEX-24780: Returned dispatchChangeAfterSelection to false after preventDefault is called commitSelection is called.  This should resolve the issue for all children such as list, buttonbar, tabbar and the like.

--- frameworks/projects/spark/src/spark/components/supportClasses/ListBase.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/ListBase.as
@@ -1322,6 +1322,10 @@
                 // The event was cancelled. Cancel the selection change and return.
                 itemSelected(_proposedSelectedIndex, false);
                 _proposedSelectedIndex = NO_PROPOSED_SELECTION;
+
+                //Reset back to false to resolve selectedIndex
+                dispatchChangeAfterSelection = false;
+
                 return false;
             }
         }


Transferred from the Adobe Open Source Subversion Repository

Revision: 2878
Author:   gosmith@adobe.com
Date:     2008-08-19T01:47:49.628691Z

Log Message:
-----------
Added an ObjectUtil.getUnqualifiedClassName() utility method for use in the className getter in four classes, which previously had copy-and-paste code.

Moved the STYLE_UNINITIALIZED constant from StyleManager to StyleProtoChain, since it indicates an uninitialized style proto chain.

Reviewer: Jono
Bugs: -
QA: No
Doc: No

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/Effect.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/core/UITextField.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/StyleManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/EffectInstance.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/controls/dataGridClasses/DataGridItemRenderer.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/flex/graphics/graphicsClasses/TextGraphicElement.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/styles/StyleProtoChain.as</path>

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

--- frameworks/projects/spark/src/spark/components/supportClasses/TextBase.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/TextBase.as
@@ -28,6 +28,7 @@
 import mx.styles.ISimpleStyleClient;
 import mx.styles.IStyleClient;
 import mx.styles.StyleManager;
+import mx.styles.StyleProtoChain;

 import text.formats.TextAlign;
 import text.formats.VerticalAlign;
@@ -659,7 +660,7 @@
      *  Storage for the inheritingStyles property.
      */
     private var _inheritingStyles:Object =
-        StyleManager.mx_internal::STYLE_UNINITIALIZED;
+        StyleProtoChain.STYLE_UNINITIALIZED;

     [Inspectable(environment="none")]

@@ -688,7 +689,7 @@
      *  Storage for the nonInheritingStyles property.
      */
     private var _nonInheritingStyles:Object =
-        StyleManager.mx_internal::STYLE_UNINITIALIZED;
+        StyleProtoChain.STYLE_UNINITIALIZED;

     [Inspectable(environment="none")]


Fixed Flash SeekMusic for Monkey 73b

Fixed Flash SeekMusic for Monkey 73b

--- src/diddy/native/diddy.flash.as
+++ src/diddy/native/diddy.flash.as
@@ -138,7 +138,7 @@
 			var chan:gxtkChannel = bb_audio_device.channels[32];
 			if(chan.channel) {
 				chan.channel.stop();
-				chan.channel = chan.sample.sound.play(timeMillis, chan.loops, chan.transform);
+				chan.channel = chan.sample.sound.play(timeMillis, 0, chan.transform);
 			}
 		}
 		// TODO: check it worked


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

--- frameworks/projects/rpc/src/mx/messaging/messages/ISmallMessage.as
+++ frameworks/projects/rpc/src/mx/messaging/messages/ISmallMessage.as
@@ -1,13 +1,3 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  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.messaging.messages
 {


updated asdoc to render tiles larger

updated asdoc to render tiles larger

--- YCanvasMapLibrary/src/main/actionscript/sk/yoz/ycanvas/map/layers/LayerFactory.as
+++ YCanvasMapLibrary/src/main/actionscript/sk/yoz/ycanvas/map/layers/LayerFactory.as
@@ -47,6 +47,11 @@

         /**
         * Converts YCanvas scale to index/level.
+        * You may want to update the zoom formula to show larger tiles for
+        * devices with higher DPI. E.g.:
+        * var zoom:Number = 1 / scale * 2;
+        * would render the tile larger so the labels embedded in tiles are
+        * readable.
         */
         protected function getLayerIndex(scale:Number):uint
         {


Transferred from the Adobe Open Source Subversion Repository

Revision: 20690
Author:   mhorn@adobe.com
Date:     2011-03-08T20:26:51.755036Z

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

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/charts/src/mx/charts/Legend.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/charts/src/mx/charts/PieChart.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/charts/src/mx/charts/PlotChart.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/charts/src/mx/charts/series/items/LineSeriesSegment.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/charts/src/mx/charts/series/ColumnSeries.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/charts/src/mx/charts/CandlestickChart.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/charts/src/mx/charts/HLOCChart.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/charts/src/mx/charts/chartClasses/InstanceCache.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/charts/src/mx/charts/series/BarSeries.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/charts/src/mx/charts/chartClasses/Series.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/charts/src/mx/charts/LineChart.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/charts/src/mx/charts/chartClasses/CartesianChart.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/charts/src/mx/charts/chartClasses/ChartBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/charts/src/mx/charts/BubbleChart.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/charts/src/mx/charts/chartClasses/PolarChart.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/charts/src/mx/charts/effects/SeriesZoom.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/charts/src/mx/charts/chartClasses/CartesianDataCanvas.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/charts/src/mx/charts/ColumnChart.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/charts/src/mx/charts/DateTimeAxis.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/charts/src/mx/charts/chartClasses/PolarDataCanvas.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/charts/src/mx/charts/BarChart.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/charts/src/mx/charts/AreaChart.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/charts/src/mx/charts/chartClasses/ChartElement.as</path>

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


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

--- frameworks/projects/framework/src/mx/events/ResourceEvent.as
+++ frameworks/projects/framework/src/mx/events/ResourceEvent.as
@@ -0,0 +1,186 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  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.events
+{
+
+import flash.events.Event;
+import flash.events.ProgressEvent;
+
+/**
+ *  The ResourceEvent class represents an Event object that is dispatched
+ *  when the ResourceManager loads the resource bundles in a resource module
+ *  by calling the loadResourceModule() method.
+ *
+ *  @see mx.resources.ResourceManager
+ */
+public class ResourceEvent extends ProgressEvent
+{
+    include "../core/Version.as";
+
+    //--------------------------------------------------------------------------
+    //
+    //  Class constants
+    //
+    //--------------------------------------------------------------------------
+
+    /**
+     *  Dispatched when the resource module SWF file has finished loading.
+     *  The ResourceEvent.COMPLETE constant defines the value of the
+     *  type property of the event object for a complete event.
+     *
+     *
The properties of the event object have the following values:

+     *

+     *
Property	Value

+     *
bubbles	false

+     *
cancelable	false

+     *
currentTarget	The object that defines the
+     *       event listener that handles the event. For example, if you use
+     *       myButton.addEventListener() to register an event listener,
+     *       myButton is the value of currentTarget.

+     *
errorText	Empty

+     *
target	The object that dispatched the event;
+     *       it is not always the object listening for the event.
+     *       Use the currentTarget property to always access the
+     *       object that listens for the event.

+     *

+     *
+     *  @eventType complete
+     */
+    public static const COMPLETE:String = "complete";
+
+    /**
+     *  Dispatched when there is an error loading the resource module SWF file.
+     *  The ResourceEvent.ERROR constant defines the value of the
+     *  type property of the event object for a error event.
+     *
+     *
The properties of the event object have the following values:

+     *

+     *
Property	Value

+     *
bubbles	false

+     *
bytesLoaded	Empty

+     *
bytesTotal	Empty

+     *
cancelable	false

+     *
currentTarget	The object that defines the
+     *       event listener that handles the event. For example, if you use the
+     *       myButton.addEventListener() method to register an event listener,
+     *       myButton is the value of currentTarget.

+     *
errorText	An error message.

+     *
target	The object that dispatched the event;
+     *       it is not always the object that is listening for the event.
+     *       Use the currentTarget property to always access the
+     *       object that listens for the event.

+     *

+     *
+     *  @eventType error
+     */
+    public static const ERROR:String = "error";
+
+    /**
+     *  Dispatched when the resource module SWF file is loading.
+     *  The ResourceEvent.PROGRESS constant defines the value of the
+     *  type property of the event object for a progress event.
+     *
+     *
The properties of the event object have the following values:

+     *

+     *
Property	Value

+     *
bubbles	false

+     *
bytesLoaded	The number of bytes loaded.

+     *
bytesTotal	The total number of bytes to load.

+     *
cancelable	false

+     *
currentTarget	The object that defines the
+     *       event listener that handles the event. For example, if you use the
+     *       myButton.addEventListener() method to register an event listener,
+     *       myButton is the value of currentTarget.

+     *
errorText	Empty

+     *
target	The object that dispatched the event;
+     *       it is not always the object that listens for the event.
+     *       Use the currentTarget property to always access the
+     *       object that is listening for the event.

+     *

+     *
+     *  @eventType progress
+     */
+    public static const PROGRESS:String = "progress";
+
+    //--------------------------------------------------------------------------
+    //
+    //  Constructor
+    //
+    //--------------------------------------------------------------------------
+
+    /**
+     *  Constructor.
+     *
+     *  @param type The value of the type property of the event object. Possible values are:
+     *

+     *
"progress" (ResourceEvent.PROGRESS)

+     *
"complete" (ResourceEvent.COMPLETE)

+     *
"error" (ResourceEvent.ERROR)

+     *

+     *
+     *  @param bubbles Determines whether the Event object
+     *  participates in the bubbling stage of the event flow.
+     *
+     *  @param cancelable Determines whether the Event object can be cancelled.
+     *
+     *  @param bytesLoaded The number of bytes loaded
+     *  at the time the listener processes the event.
+     *
+     *  @param bytesTotal The total number of bytes
+     *  that will ultimately be loaded if the loading process succeeds.
+     *
+     *  @param errorText The error message of the error
+     *  when type is ResourceEvent.ERROR.
+     */
+    public function ResourceEvent(type:String, bubbles:Boolean = false,
+                                  cancelable:Boolean = false,
+                                  bytesLoaded:uint = 0, bytesTotal:uint = 0,
+                                  errorText:String = null)
+    {
+        super(type, bubbles, cancelable, bytesLoaded, bytesTotal);
+
+        this.errorText = errorText;
+    }
+
+    //--------------------------------------------------------------------------
+    //
+    //  Properties
+    //
+    //--------------------------------------------------------------------------
+
+    //----------------------------------
+    //  errorText
+    //----------------------------------
+
+    /**
+     *  The error message if the type is ERROR;
+     *  otherwise, it is null.
+     */
+    public var errorText:String;
+
+    //--------------------------------------------------------------------------
+    //
+    //  Overridden properties: Event
+    //
+    //--------------------------------------------------------------------------
+
+    /**
+     *  @private
+     */
+    override public function clone():Event
+    {
+        return new ResourceEvent(type, bubbles, cancelable,
+                                 bytesLoaded, bytesTotal, errorText);
+    }
+}
+
+}


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

--- frameworks/projects/rpc/src/mx/rpc/events/SchemaLoadEvent.as
+++ frameworks/projects/rpc/src/mx/rpc/events/SchemaLoadEvent.as
@@ -1,11 +1,19 @@
 ////////////////////////////////////////////////////////////////////////////////
 //
-//  ADOBE SYSTEMS INCORPORATED
-//  Copyright 2006-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.
 //
 ////////////////////////////////////////////////////////////////////////////////