Transferred from the Adobe Open Source Subversion Repository

Revision: 7445
Author:   gruehle@adobe.com
Date:     2009-05-29T20:51:55.035384Z

Log Message:
-----------
Replace a bunch of event name literals with constants.

Bug: SDK-21271
QA Notes:
Doc Notes:
Reviewer: Chet

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/core/Window.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/TextBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/skins/default/FocusSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/spark/components/WindowedApplication.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/effectClasses/SoundEffectInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/spark/components/Window.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/ToolTipManagerImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/ButtonBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/core/WindowedApplication.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UIComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/managers/WindowedSystemManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/skins/default/ErrorSkin.as</path>

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

--- frameworks/projects/framework/src/mx/managers/ToolTipManagerImpl.as
+++ frameworks/projects/framework/src/mx/managers/ToolTipManagerImpl.as
@@ -1145,7 +1145,7 @@
         if (isError)
         {
             // Listen for a change event so we know when to hide the tip
-            currentTarget.addEventListener("change", changeHandler);
+            currentTarget.addEventListener(Event.CHANGE, changeHandler);
         }
         else
         {
@@ -1195,7 +1195,7 @@
         if (isError)
         {
             if (currentTarget)
-                currentTarget.removeEventListener("change", changeHandler);
+                currentTarget.removeEventListener(Event.CHANGE, changeHandler);
         }
         else
         {


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

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

 package spark.formatters
 {


Transferred from the Adobe Open Source Subversion Repository

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

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

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

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

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

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

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

--- frameworks/projects/advancedgrids/src/mx/olap/IOLAPAttribute.as
+++ frameworks/projects/advancedgrids/src/mx/olap/IOLAPAttribute.as
@@ -0,0 +1,30 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  ADOBE SYSTEMS INCORPORATED
+//  Copyright 2009 Adobe Systems Incorporated
+//  All Rights Reserved.
+//
+//  NOTICE: Adobe permits you to use, modify, and distribute this file
+//  in accordance with the terms of the license agreement accompanying it.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+package mx.olap
+{
+import mx.collections.IList;
+
+/**
+ *  The IOLAPAttribute interface represents
+ *  an attribute within a dimension of an OLAP schema.
+ *.
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
+ */
+public interface IOLAPAttribute extends IOLAPHierarchy
+{
+
+}
+}


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

--- frameworks/projects/framework/src/mx/effects/IEffectInstance.as
+++ frameworks/projects/framework/src/mx/effects/IEffectInstance.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.
 //
 ////////////////////////////////////////////////////////////////////////////////


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

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


Code cleanup + fix pausing on live stream.

--- HLSPlugin/src/org/osmf/net/httpstreaming/HLSHTTPNetStream.as
+++ HLSPlugin/src/org/osmf/net/httpstreaming/HLSHTTPNetStream.as
@@ -208,6 +208,9 @@
 			 */
 			override public function pause():void
 			{
+				// Always seek.
+				seek(time);
+
 				_isPaused = true;
 				super.pause();
 			}
@@ -220,9 +223,6 @@
 				_isPaused = false;
 				super.resume();

-				// Always seek.
-				seek(time + 1);
-				seek(time - 1);
 			}

 			/**
@@ -528,11 +528,11 @@
 				if (_mixer == null)
 				{
 					CONFIG::LOGGING
-						{
-							logger.warn("Invalid operation(changeAudioStreamTo) for legacy source. Should been a mixed source.");
-						}
-
-						_audioStreamNeedsChanging = false;
+					{
+						logger.warn("Invalid operation(changeAudioStreamTo) for legacy source. Should been a mixed source.");
+					}
+
+					_audioStreamNeedsChanging = false;
 					_desiredAudioStreamName = null;
 					return;
 				}
@@ -540,8 +540,7 @@
 				_audioStreamNeedsChanging = true;
 				_desiredAudioStreamName = streamName;

-				if (
-					_videoHandler.isOpen
+				if (_videoHandler.isOpen
 					&& (
 						(_mixer.audio == null && _desiredAudioStreamName != null)
 						||  (_mixer.audio != null && _mixer.audio.streamName != _desiredAudioStreamName)
@@ -549,11 +548,11 @@
 				)
 				{
 					CONFIG::LOGGING
-						{
-							logger.debug("Initiating change of audio stream to [" + _desiredAudioStreamName + "]");
-						}
-
-						var audioResource:MediaResourceBase = createAudioResource(_resource, _desiredAudioStreamName);
+					{
+						logger.debug("Initiating change of audio stream to [" + _desiredAudioStreamName + "]");
+					}
+
+					var audioResource:MediaResourceBase = createAudioResource(_resource, _desiredAudioStreamName);
 					if (audioResource != null)
 					{
 						// audio handler is not dispatching events on the NetStream
@@ -616,7 +615,7 @@
 							trace("NetStream emptied out, upping buffer time by 5 seconds.");
 							bufferTime += 5.0;
 						}
-
+
 						CONFIG::LOGGING
 						{
 							logger.debug("Received NETSTREAM_BUFFER_EMPTY. _wasBufferEmptied = "+_wasBufferEmptied+" bufferLength "+this.bufferLength);
@@ -634,17 +633,17 @@
 					case NetStreamCodes.NETSTREAM_BUFFER_FULL:
 						_wasBufferEmptied = false;
 						CONFIG::LOGGING
-					{
-						logger.debug("Received NETSTREAM_BUFFER_FULL. _wasBufferEmptied = "+_wasBufferEmptied+" bufferLength "+this.bufferLength);
-					}
+						{
+							logger.debug("Received NETSTREAM_BUFFER_FULL. _wasBufferEmptied = "+_wasBufferEmptied+" bufferLength "+this.bufferLength);
+						}
 						break;

 					case NetStreamCodes.NETSTREAM_BUFFER_FLUSH:
 						_wasBufferEmptied = false;
 						CONFIG::LOGGING
-					{
-						logger.debug("Received NETSTREAM_BUFFER_FLUSH. _wasBufferEmptied = "+_wasBufferEmptied+" bufferLength "+this.bufferLength);
-					}
+						{
+							logger.debug("Received NETSTREAM_BUFFER_FLUSH. _wasBufferEmptied = "+_wasBufferEmptied+" bufferLength "+this.bufferLength);
+						}
 						break;

 					case NetStreamCodes.NETSTREAM_PLAY_STREAMNOTFOUND:


Cleaning up conditions to trigger enhanced seek.

--- HLSPlugin/src/org/osmf/net/httpstreaming/HLSHTTPNetStream.as
+++ HLSPlugin/src/org/osmf/net/httpstreaming/HLSHTTPNetStream.as
@@ -1417,13 +1417,13 @@
 				logger.debug("Dropped frames=" + this.info.droppedFrames + ".");
 			}

-			if (_initialTime < 0 || _seekTime < 0 || _insertScriptDataTags ||  _playForDuration >= 0)
+			if (isNaN(_initialTime) || !isNaN(_enhancedSeekTarget) ||  _playForDuration >= 0)
 			{
 				if (_flvParser == null)
 				{
 					CONFIG::LOGGING
 					{
-						logger.debug("Initialize the FLV Parser ( seekTime = " + _seekTime + ", initialTime = " + _initialTime + ", playForDuration = " + _playForDuration + " ).");
+						logger.debug("Initialize the FLV Parser ( _enhancedSeekTarget = " + _enhancedSeekTarget + ", initialTime = " + _initialTime + ", playForDuration = " + _playForDuration + " ).");
 						if (_insertScriptDataTags != null)
 						{
 							CONFIG::LOGGING


legacy boolean for graph 1.0

legacy boolean for graph 1.0

--- actionscript/src/com/freshplanet/ane/AirFacebook/Facebook.as
+++ actionscript/src/com/freshplanet/ane/AirFacebook/Facebook.as
@@ -96,15 +96,16 @@
 		/**
 		 * Initialize the Facebook extension.
 		 *
-		 * @param appID A Facebook application ID.
-		 * @param urlSchemeSuffix (Optional) The URL Scheme Suffix to be used in scenarios where multiple iOS apps
-		 * use one Facebook App ID. Must contain only lowercase letters.
-		 */
-		public function init( appID : String, urlSchemeSuffix : String = null ) : void
+		 * @param appID             A Facebook application ID.
+         * @param legacyMode        TRUE enables Graph 1.0, FALSE uses current Graph API.
+		 * @param urlSchemeSuffix   (Optional) The URL Scheme Suffix to be used in scenarios where multiple iOS apps
+		 *                          use one Facebook App ID. Must contain only lowercase letters.
+		 */
+		public function init( appID : String, legacyMode : Boolean, urlSchemeSuffix : String = null ) : void
 		{
 			if (!isSupported) return;

-			_context.call('init', appID, urlSchemeSuffix);
+			_context.call('init', appID, urlSchemeSuffix, legacyMode);
 		}

 		/**


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

--- frameworks/projects/mx/src/mx/controls/videoClasses/CuePointManager.as
+++ frameworks/projects/mx/src/mx/controls/videoClasses/CuePointManager.as
@@ -1,3 +1,13 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  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.controls.videoClasses
 {


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

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


Changed param name from eventType to type

--- src/flexlib/mdi/events/MDIEffectEvent.as
+++ src/flexlib/mdi/events/MDIEffectEvent.as
@@ -20,13 +20,13 @@
 		/**
 		 * Constructor
 		 *
-		 * @param eventType EffectEvent.EFFECT_START or EfectEvent.EFFECT_END
+		 * @param type EffectEvent.EFFECT_START or EfectEvent.EFFECT_END
 		 * @param mdiEventType Corresponding mdi event type like minimize, maximize, tile, etc. Will be one of MDIManagerEvent's static types.
 		 * @param windows List of windows involved in effect. Will be a single element except for cascade and tile.
 		 */
-		public function MDIEffectEvent(eventType:String, mdiEventType:String, windows:Array)
+		public function MDIEffectEvent(type:String, mdiEventType:String, windows:Array)
 		{
-			super(eventType);
+			super(type);

 			this.mdiEventType = mdiEventType;
 			this.windows = windows;


[FragmentData] Fix starts_with_idr setting

Poor implementation did not retain the fact that Fragment did not start
with IDR after successive headers were found.

--- src/org/mangui/hls/model/FragmentData.as
+++ src/org/mangui/hls/model/FragmentData.as
@@ -70,7 +70,7 @@
             this.valid = true;
             this.video_width = 0;
             this.video_height = 0;
-            this.starts_with_idr = false;
+            this.starts_with_idr = true;
             this.pts_min_video_header = NaN;
         };

@@ -106,7 +106,9 @@
                         tags_pts_max_video = Math.max(tags_pts_max_video, tag.pts);
                         pts_min_video = Math.min(pts_min_video, tag.pts);
                         pts_max_video = Math.max(pts_max_video, tag.pts);
-                        starts_with_idr = !isNaN(pts_min_video_header) && pts_min_video_header <= tag.pts;
+                        if (isNaN(pts_min_video_header)) {
+                            starts_with_idr = false;
+                        }
                         break;
                     case FLVTag.DISCONTINUITY:
                     case FLVTag.METADATA:
@@ -125,7 +127,7 @@
             pts_min_audio = pts_min_video = dts_min = tags_pts_min_audio = tags_pts_min_video = Number.POSITIVE_INFINITY;
             pts_max_audio = pts_max_video = tags_pts_max_audio = tags_pts_max_video = Number.NEGATIVE_INFINITY;
             audio_found = video_found = tags_audio_found = tags_video_found = false;
-            starts_with_idr = false;
+            starts_with_idr = true;
             pts_min_video_header = NaN;
         }


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

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

 package mx.events
 {


Transferred from the Adobe Open Source Subversion Repository

Revision: 17740
Author:   clucier@adobe.com
Date:     2010-09-16T23:18:52.749737Z

Log Message:
-----------
Spark and Wireframe button skins now support the icon and iconPlacement functionality of ButtonBase.
ButtonBarBase now supports iconField an iconFunction.

QE notes: None
Doc notes: None
Bugs: None
Reviewer: Glenn
Tests run: Checking, Full Cyclone
Is noteworthy for integration: Yes

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/skins/spark/TabBarButtonSkin.mxml</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/wireframe/src/spark/skins/wireframe/TabBarButtonSkin.mxml</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/spark-manifest.xml</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/defaults.css</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/skins/spark/ButtonBarFirstButtonSkin.mxml</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/ButtonBarBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/wireframe/src/spark/skins/wireframe/ButtonBarFirstButtonSkin.mxml</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/skins/spark/ButtonSkin.mxml</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/skins/spark/ButtonBarMiddleButtonSkin.mxml</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/wireframe/src/spark/skins/wireframe/ButtonSkin.mxml</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/wireframe/src/spark/skins/wireframe/ButtonBarMiddleButtonSkin.mxml</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/skins/spark/ToggleButtonSkin.mxml</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/wireframe/src/spark/skins/wireframe/ToggleButtonSkin.mxml</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/skins/spark/DefaultButtonSkin.mxml</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/skins/spark/ButtonBarLastButtonSkin.mxml</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/wireframe/src/spark/skins/wireframe/DefaultButtonSkin.mxml</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/wireframe/src/spark/skins/wireframe/ButtonBarLastButtonSkin.mxml</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/skins/SparkButtonSkin.as</path>

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

--- frameworks/projects/spark/src/spark/skins/SparkButtonSkin.as
+++ frameworks/projects/spark/src/spark/skins/SparkButtonSkin.as
@@ -0,0 +1,494 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  ADOBE SYSTEMS INCORPORATED
+//  Copyright 2010 Adobe Systems Incorporated
+//  All Rights Reserved.
+//
+//  NOTICE: Adobe permits you to use, modify, and distribute this file
+//  in accordance with the terms of the license agreement accompanying it.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+package spark.skins
+{
+    import mx.core.IVisualElement;
+    import spark.components.Button;
+    import spark.components.Group;
+    import spark.components.IconPlacement;
+    import spark.components.supportClasses.ButtonBase;
+    import spark.core.IDisplayText;
+    import spark.layouts.*;
+    import spark.primitives.BitmapImage;
+    import spark.skins.SparkSkin;
+
+    /**
+     *  Base class for Spark button skins. Primarily used for
+     *  pay-as-you-go icon management.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4.5
+     */
+    public class SparkButtonSkin extends SparkSkin
+    {
+
+        //--------------------------------------------------------------------------
+        //
+        //  Constructor
+        //
+        //--------------------------------------------------------------------------
+
+        /**
+         * Constructor.
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10
+         *  @playerversion AIR 1.5
+         *  @productversion Flex 4.5
+         */
+        public function SparkButtonSkin()
+        {
+            super();
+        }
+
+        //--------------------------------------------------------------------------
+        //
+        //  Variables
+        //
+        //--------------------------------------------------------------------------
+
+        /**
+         * @private
+         * Internal flag used to determine if we should consider icon construction,
+         * placement, or layout in commitProperties.
+         */
+        private var iconChanged:Boolean = true;
+        private var iconPlacementChanged:Boolean = false;
+        private var groupPaddingChanged:Boolean = true;
+
+        /**
+         * @private
+         * Our transient icon and label Group.
+         */
+        private var iconGroup:Group;
+
+        //--------------------------------------------------------------------------
+        //
+        //  Properties
+        //
+        //--------------------------------------------------------------------------
+
+        //----------------------------------
+        //  autoIconManagement
+        //----------------------------------
+
+        private var _autoIconManagement:Boolean = true;
+
+        /**
+         *  If enabled will automatically construct the necessary
+         *  constructs to present and layout an iconDisplay
+         *  part.
+         *
+         *  @default true
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10
+         *  @playerversion AIR 1.5
+         *  @productversion Flex 4
+         */
+        public function get autoIconManagement():Boolean
+        {
+            return _autoIconManagement;
+        }
+
+        /**
+         *  @private
+         */
+        public function set autoIconManagement(value:Boolean):void
+        {
+            _autoIconManagement = value;
+            invalidateProperties();
+        }
+
+        //----------------------------------
+        //  gap
+        //----------------------------------
+
+        private var _gap:Number = 6;
+
+        /**
+         *  Number of pixels between the buttons's icon and
+         *  label.
+         *
+         *  @default 6
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10
+         *  @playerversion AIR 1.5
+         *  @productversion Flex 4
+         */
+        public function get gap():Number
+        {
+            return _gap;
+        }
+
+        /**
+         *  @private
+         */
+        public function set gap(value:Number):void
+        {
+            _gap = value;
+            groupPaddingChanged = true;
+            invalidateProperties();
+        }
+
+        //----------------------------------
+        //  hostComponent
+        //----------------------------------
+
+        /**
+         *  @private
+         */
+        private var _hostComponent:ButtonBase;
+
+        /**
+         *  @private
+         */
+        public function set hostComponent(value:ButtonBase):void
+        {
+            if (_hostComponent)
+            {
+                _hostComponent.removeEventListener("iconChange", iconChangeHandler);
+                _hostComponent.removeEventListener("contentChange", contentChangeHandler);
+            }
+
+            _hostComponent = value;
+
+            if (value)
+            {
+                // Detect changes to our icon or label content so that we can
+                // realize the necessary component parts and layout as appropriate.
+                _hostComponent.addEventListener("iconChange", iconChangeHandler);
+                _hostComponent.addEventListener("contentChange", contentChangeHandler);
+            }
+        }
+
+        /**
+         *  @private
+         */
+        public function get hostComponent():ButtonBase
+        {
+            return _hostComponent;
+        }
+
+        //----------------------------------
+        //  iconDisplay
+        //----------------------------------
+
+        /**
+         * @copy spark.components.supportClasses.ButtonBase#iconDisplay
+         */
+        [Bindable]
+        public var iconDisplay:BitmapImage;
+
+        //----------------------------------
+        //  labelDisplay
+        //----------------------------------
+
+        /**
+         * @copy spark.components.supportClasses.ButtonBase#labelDisplay
+         */
+        [Bindable]
+        public var labelDisplay:IDisplayText;
+
+
+        //----------------------------------
+        //  paddingLeft
+        //----------------------------------
+
+        private var _iconGroupPaddingLeft:Number = 10;
+
+        /**
+         *  The minimum number of pixels between the buttons's left edge and
+         *  the left edge of the icon or label.
+         *
+         *  @default 0
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10
+         *  @playerversion AIR 1.5
+         *  @productversion Flex 4.5
+         */
+        public function get iconGroupPaddingLeft():Number
+        {
+            return _iconGroupPaddingLeft;
+        }
+
+        /**
+         *  @private
+         */
+        public function set iconGroupPaddingLeft(value:Number):void
+        {
+            _iconGroupPaddingLeft = value;
+            groupPaddingChanged = true;
+            invalidateProperties();
+        }
+
+        //----------------------------------
+        //  paddingRight
+        //----------------------------------
+
+        private var _iconGroupPaddingRight:Number = 10;
+
+        [Inspectable(category="General")]
+
+        /**
+         *  The minimum number of pixels between the buttons's right edge and
+         *  the right edge of the icon or label.
+         *
+         *  @default 0
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10
+         *  @playerversion AIR 1.5
+         *  @productversion Flex 4
+         */
+        public function get iconGroupPaddingRight():Number
+        {
+            return _iconGroupPaddingRight;
+        }
+
+        /**
+         *  @private
+         */
+        public function set iconGroupPaddingRight(value:Number):void
+        {
+            _iconGroupPaddingRight = value;
+            groupPaddingChanged = true;
+            invalidateProperties();
+        }
+
+        //----------------------------------
+        //  paddingTop
+        //----------------------------------
+
+        private var _iconGroupPaddingTop:Number = 4;
+
+        /**
+         *  Number of pixels between the buttons's top edge
+         *  and the top edge of the first icon or label.
+         *
+         *  @default 0
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10
+         *  @playerversion AIR 1.5
+         *  @productversion Flex 4
+         */
+        public function get iconGroupPaddingTop():Number
+        {
+            return _iconGroupPaddingTop;
+        }
+
+        /**
+         *  @private
+         */
+        public function set iconGroupPaddingTop(value:Number):void
+        {
+            _iconGroupPaddingTop = value;
+            groupPaddingChanged = true;
+            invalidateProperties();
+        }
+
+        //----------------------------------
+        //  paddingBottom
+        //----------------------------------
+
+        private var _iconGroupPaddingBottom:Number = 4;
+
+        /**
+         *  Number of pixels between the buttons's bottom edge
+         *  and the bottom edge of the icon or label.
+         *
+         *  @default 0
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10
+         *  @playerversion AIR 1.5
+         *  @productversion Flex 4
+         */
+        public function get iconGroupPaddingBottom():Number
+        {
+            return _iconGroupPaddingBottom;
+        }
+
+        /**
+         *  @private
+         */
+        public function set iconGroupPaddingBottom(value:Number):void
+        {
+            _iconGroupPaddingBottom = value;
+            groupPaddingChanged = true;
+            invalidateProperties();
+        }
+
+        //--------------------------------------------------------------------------
+        //
+        //  Overridden Methods
+        //
+        //--------------------------------------------------------------------------
+
+        /**
+         *  @private
+         */
+        override protected function commitProperties():void
+        {
+            super.commitProperties();
+
+            if (!((iconChanged || iconPlacementChanged || groupPaddingChanged)
+                && autoIconManagement))
+                return;
+
+            // If we have an icon to render we ensure the necessary
+            // parts are created and we configure a linear layout
+            // instance to manage our icon and label parts.
+            if (_hostComponent.icon && labelDisplay)
+            {
+                if (iconChanged)
+                    constructIconParts(true);
+
+                if (groupPaddingChanged)
+                {
+                    iconGroup.left = _iconGroupPaddingLeft;
+                    iconGroup.right = _iconGroupPaddingRight;
+                    iconGroup.top = _iconGroupPaddingTop;
+                    iconGroup.bottom = _iconGroupPaddingBottom;
+                    groupPaddingChanged = false;
+                }
+
+                var iconPlacement:String = getStyle("iconPlacement");
+
+                var horizontal:Boolean =
+                    iconPlacement == IconPlacement.LEFT ||
+                    iconPlacement == IconPlacement.RIGHT;
+
+                iconGroup.layout =  horizontal ?
+                    new HorizontalLayout() : new VerticalLayout();
+
+                // Initialize our layout alignment and position the icon in
+                // the correct child slot per our iconPlacement.
+                Object(iconGroup.layout).horizontalAlign = HorizontalAlign.CENTER;
+                Object(iconGroup.layout).verticalAlign = VerticalAlign.MIDDLE;
+                Object(iconGroup.layout).gap = _gap;
+
+                var firstElement:IVisualElement =
+                    (iconPlacement == IconPlacement.LEFT ||
+                        iconPlacement == IconPlacement.TOP) ?
+                    iconDisplay : IVisualElement(labelDisplay);
+
+                iconGroup.setElementIndex(firstElement, 0);
+
+                // Ensure we account for empty layout so that we don't apply layout gap.
+                IVisualElement(labelDisplay).includeInLayout = labelDisplay.text && labelDisplay.text.length;
+            }
+            else
+            {
+                // If we've previously realized our iconDisplay or iconGroup
+                // remove them from the display list as they are no long required.
+                constructIconParts(false);
+            }
+
+            iconChanged = false;
+            iconPlacementChanged = false;
+        }
+
+        /**
+         *  @private
+         *  Detected changes to iconPlacement and update as necessary.
+         */
+        override public function styleChanged(styleProp:String):void
+        {
+            if (!styleProp ||
+                styleProp == "styleName" || styleProp == "iconPlacement")
+            {
+                iconPlacementChanged = true;
+                invalidateProperties();
+            }
+
+            super.styleChanged(styleProp);
+        }
+
+        //--------------------------------------------------------------------------
+        //
+        //  Methods
+        //
+        //--------------------------------------------------------------------------
+
+        /**
+         *  @private
+         *  Creates our iconDisplay and containing Group
+         *  or removes them from the display list and restores
+         *  our single labelDisplay.
+         */
+        private function constructIconParts(construct:Boolean):void
+        {
+            if (!autoIconManagement)
+                return;
+
+            if (construct)
+            {
+                if (!iconDisplay)
+                {
+                    iconDisplay = new BitmapImage();
+                    iconDisplay.verticalCenter = 0;
+                    iconDisplay.horizontalCenter = 0;
+                }
+
+                if (!iconGroup)
+                    iconGroup = new Group();
+
+                iconGroup.addElement(iconDisplay);
+                iconGroup.addElement(IVisualElement(labelDisplay));
+                addElement(iconGroup);
+            }
+            else
+            {
+                if (iconDisplay && iconDisplay.parent)
+                    iconGroup.removeElement(iconDisplay);
+
+                if (iconGroup && iconGroup.parent)
+                {
+                    removeElement(iconGroup);
+                    addElement(IVisualElement(labelDisplay));
+                }
+            }
+        }
+
+        //--------------------------------------------------------------------------
+        //
+        //  Event Handlers
+        //
+        //--------------------------------------------------------------------------
+
+        /**
+         *  @private
+         */
+        private function iconChangeHandler(event:Event):void
+        {
+            iconChanged = true;
+            invalidateProperties();
+        }
+
+        /**
+         *  @private
+         */
+        protected function contentChangeHandler(event:Event):void
+        {
+            // Ensure empty label is not included in layout else
+            // a gap between icon and label would be applied.
+            IVisualElement(labelDisplay).includeInLayout = labelDisplay.text != null
+                && labelDisplay.text.length;
+        }
+    }
+}


CSVDataSource: fixed bug in keysAreUnique and added deprecatedStateMapping

--- WeaveJS/src/weavejs/data/source/CSVDataSource.as
+++ WeaveJS/src/weavejs/data/source/CSVDataSource.as
@@ -18,6 +18,7 @@
 	import weavejs.WeaveAPI;
 	import weavejs.api.core.ICallbackCollection;
 	import weavejs.api.core.ILinkableHashMap;
+	import weavejs.api.core.ILinkableObjectWithNewProperties;
 	import weavejs.api.data.ColumnMetadata;
 	import weavejs.api.data.DataType;
 	import weavejs.api.data.IAttributeColumn;
@@ -38,15 +39,16 @@
 	import weavejs.data.hierarchy.ColumnTreeNode;
 	import weavejs.data.key.QKeyManager;
 	import weavejs.net.ResponseType;
+	import weavejs.util.ArrayUtils;
 	import weavejs.util.JS;
-	import weavejs.util.StandardLib;
+	import weavejs.util.StandardLib;

 	/**
 	 *
 	 * @author adufilie
 	 * @author skolman
 	 */
-	public class CSVDataSource extends AbstractDataSource implements IDataSource_File
+	public class CSVDataSource extends AbstractDataSource implements IDataSource_File, ILinkableObjectWithNewProperties
 	{
 		WeaveAPI.ClassRegistry.registerImplementation(IDataSource, CSVDataSource, "CSV file");

@@ -197,7 +199,7 @@

 		private function handleUpdatedKeys():void
 		{
-			_keysAreUnique = parsedRows ? keysArray.length == parsedRows.length : true;
+			_keysAreUnique = ArrayUtils.union(keysArray).length == keysArray.length;
 		}

 		private var _keysAreUnique:Boolean = true;
@@ -640,9 +642,15 @@

 		private var nullValues:Array = [null, "", "null", "\\N", "NaN"];

+		public function get deprecatedStateMapping():Object
+		{
+			return {
+				keyColName: keyColumn,
+				csvDataString: setCSVDataString
+			};
+		}
+
 		// backwards compatibility
-		[Deprecated(replacement="keyColumn")] public function set keyColName(value:String):void { keyColumn.state = value; }
-		[Deprecated(replacement="csvData")] public function set csvDataString(value:String):void { setCSVDataString(value); }
 		[Deprecated(replacement="getColumnById")] public function getColumnByName(name:String):IAttributeColumn { return getColumnById(name); }
 	}
 }


Quick fix to how objects are tested before being sent in a message.
We used to compare them against the Object class, but that doesn't work
well in the presence of multiple application domains. So instead we
check for the presence of parent classes.

git-svn-id: a3e1eb16dde062992de22c830ed8045c8013209a@166 c613c5cb-e716-0410-b11b-feb51c14d237

--- src/as/com/threerings/ezgame/client/GameControlBackend.as
+++ src/as/com/threerings/ezgame/client/GameControlBackend.as
@@ -15,6 +15,7 @@
 import flash.utils.IExternalizable;
 import flash.utils.ByteArray;
 import flash.utils.Dictionary;
+import flash.utils.getQualifiedSuperclassName;

 import com.threerings.io.TypedArray;

@@ -481,7 +482,9 @@
             if (clazz == ByteArray) {
                 return; // kosher
             }
-            if (clazz != Object ) {
+            var clazzparentname :String = getQualifiedSuperclassName (clazz);
+            var rootclass :Boolean = (clazzparentname == null);
+            if (! rootclass) {
                 throw new ArgumentError(
                     "Non-simple properties may not be set.");
             }


Transferred from the Adobe Open Source Subversion Repository

Revision: 3626
Author:   smgilson@adobe.com
Date:     2008-10-14T17:00:31.950167Z

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

Checkin Test Passed: Yes
QA: No
Bug:
Doc: No

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/baseClasses/FxRange.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxNumericStepper.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/baseClasses/FxTrackBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxSpinner.as</path>

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

--- frameworks/projects/spark/src/spark/components/Spinner.as
+++ frameworks/projects/spark/src/spark/components/Spinner.as
@@ -22,10 +22,10 @@
 import mx.managers.IFocusManagerComponent;

 /**
- *  Dispatched when the value of the Spinner control changes
+ *  Dispatched when the value of the FxSpinner control changes
  *  as a result of user interaction.
  *
- *  @eventType flash.events.Event
+ *  @eventType flash.events.Event.CHANGE
  */
 [Event(name="change", type="flash.events.Event")]

@@ -35,24 +35,32 @@
 [SkinStates("normal", "disabled")]

 /**
- *  A Spinner is used to select a value from an
+ *  A FxSpinner component selects a value from an
  *  ordered set. It uses two buttons that increase or
  *  decrease the current value based on the current
- *  stepSize.
+ *  value of the stepSize property.
  *
- *
This control extends the Range class and
- *  is the base class for controls that select a value
- *  from an ordered set such as the NumericStepper control.

- *
  *
A Spinner consists of two required buttons,
- *  one to increase the value and one to decrease the
- *  value.

+ *  one to increase the current value and one to decrease the
+ *  current value.

  *
- *
Spinner has the addition property of
- *  valueWrap which enables value wrapping.

- *
- *  @see mx.components.Range
- *  @see mx.components.NumericStepper
+ *
The scale of an FxSpinner component is the set of
+ *  allowed values for the value property.
+ *  The allowed values are the multiples of
+ *  the valueInterval property between
+ *  the maximum and minimum values,
+ *  including the maximum and minimum values.
+ *  For example:

+ *
+ *

+ *
minimum = -1

+ *
maximum = 10

+ *
valueInterval = 3

+ *

+ *
+ *  Therefore the scale is {-1,3,6,9,10}.
+ *
+ *  @see mx.components.FxNumericStepper
  */
 public class FxSpinner extends FxRange implements IFocusManagerComponent
 {
@@ -81,18 +89,18 @@
     [SkinPart]

     /**
-     *  incrementButton is a SkinPart that defines
-     *  a button that, when pressed, will cause value
-     *  to increment by stepSize.
+     *  A skin part that defines the  button that,
+     *  when pressed, increments the value property
+     *  by stepSize.
      */
     public var incrementButton:FxButton;

     [SkinPart]

     /**
-     *  decrementButton is a SkinPart that defines
-     *  a button that, when pressed, will cause value
-     *  to decrement by stepSize.
+     *  A skin part that defines the  button that,
+     *  when pressed, decrements the value property
+     *  by stepSize.
      */
     public var decrementButton:FxButton;

@@ -107,8 +115,7 @@
     //----------------------------------

     /**
-     *  Enable/disable this component. This also enables/disables any of the
-     *  skin parts for this component.
+     *  @inheritDoc
      */
     override public function set enabled(value:Boolean):void
     {
@@ -133,11 +140,13 @@
     private var _valueWrap:Boolean = false;

     /**
-     *  valueWrap determines the behavior of stepping
-     *  beyond the maximum or minimum value. If
-     *  valueWrap is true when stepping beyond an
-     *  extreme, it will set value to the opposite
-     *  extreme.
+     *  Determines the behavior of the control for a step when the current
+     *  value is either the maximum
+     *  or minimum value.
+     *  If valueWrap is true, then the
+     *  value property wraps from the maximum
+     *  to the minimum value, or from
+     *  the minimum to the maximum value.
      *
      *  @default false
      */
@@ -160,10 +169,10 @@
     /**
      *  @inheritDoc
      */
-	override protected function getUpdatedSkinState():String
-	{
-		return enabled ? "normal" : "disabled";
-	}
+    override protected function getUpdatedSkinState():String
+    {
+        return enabled ? "normal" : "disabled";
+    }

     /**
      *  @private
@@ -205,7 +214,7 @@
     }

     /**
-     *  Make the skins reflect the enabled state of the Spinner.
+     *  @inheritDoc
      */
     protected function enableSkinParts(value:Boolean):void
     {
@@ -280,6 +289,7 @@
     //---------------------------------

     /**
+     *  @private
      *  Handle a click on the incrementButton. This should
      *  increment value by stepSize.
      */
@@ -294,6 +304,7 @@
     }

     /**
+     *  @private
      *  Handle a click on the decrementButton. This should
      *  decrement value by stepSize.
      */
@@ -308,6 +319,7 @@
     }

     /**
+     *  @private
      *  Handles keyboard input. Up arrow increments. Down arrow
      *  decrements. Home and End keys set the value to maximum
      *  and minimum respectively.


Transferred from the Adobe Open Source Subversion Repository

Revision: 4885
Author:   jszeto@adobe.com
Date:     2009-02-07T00:12:32.609062Z

Log Message:
-----------
Flex SDK Framework - Update mx.filters API and class hierarchy

- Removed BaseFilter.as, BaseDimensionFilter.as, and GradientFilter.as
- Renamed IBitmapFilter.as to IFlexBitmapFilter.as
- Changed IBitmapFilter.clone to createBitmapFilter
- Moved properties and functions from base classes up to filter subclasses
- Changed ColorMatrixFilter constructor parameter from Array to Object
- Added Change metadata to all filter classes
- Changed notifyFilterChanged from public to private
- Added ASDoc comments
- Added copyright info
- Added a number of formatting and style fixes

QE Notes: Need to update tests based on API changes. Missing tests for DisplacementMapFilter.as.
Doc Notes: Need extensive ASDoc review. Consider using @copy for properties that match the flash.filters properties
Bugs: n/a
Reviewer: Gordon

Modified Paths:
--------------
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/framework/src/mx/filters/BaseDimensionFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/filters/BevelFilter.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/filters/GradientFilter.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/framework/src/mx/filters/IBitmapFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/filters/ColorMatrixFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/filters/BlurFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/filters/DisplacementMapFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/filters/ShaderFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/StrokedElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/filters/GlowFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/filters/DropShadowFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/filters/GradientBevelFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/Parser.as</path>
<path kind="file" copyfrom-path="/flex/sdk/trunk/frameworks/projects/framework/src/mx/filters/IBitmapFilter.as" copyfrom-rev="4821" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/filters/IFlexBitmapFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/filters/ConvolutionFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/effects/effectClasses/FxAnimateFilterInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/effects/FxAnimateFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/FrameworkClasses.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UIComponent.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/framework/src/mx/filters/BaseFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/filters/GradientGlowFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/graphicsClasses/GraphicElement.as</path>

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

--- frameworks/projects/spark/src/spark/filters/BlurFilter.as
+++ frameworks/projects/spark/src/spark/filters/BlurFilter.as
@@ -1,20 +1,68 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  ADOBE SYSTEMS INCORPORATED
+//  Copyright 2003-2008 Adobe Systems Incorporated
+//  All Rights Reserved.
+//
+//  NOTICE: Adobe permits you to use, modify, and distribute this file
+//  in accordance with the terms of the license agreement accompanying it.
+//
+////////////////////////////////////////////////////////////////////////////////
+
 package mx.filters
 {
+import flash.events.Event;
+import flash.events.EventDispatcher;
 import flash.filters.BitmapFilter;
 import flash.filters.BitmapFilterQuality;
 import flash.filters.BlurFilter;
-import mx.filters.BaseFilter;
-import mx.filters.IBitmapFilter;
+import mx.filters.IFlexBitmapFilter;

-public class BlurFilter extends BaseFilter implements IBitmapFilter
+/**
+ *  @review
+ *  Dispatched when a property value has changed.
+ */
+[Event(name="change", type="flash.events.Event")]
+
+/**
+ *  @review
+ *
+ * 	The mx.filters.BlurFilter class is based on flash.filters.BlurFilter but adds
+ *  support for dynamically updating property values.
+ *  When a property changes, it dispatches an event that tells the filter owner to
+ *  reapply the filter. Use this class instead of flash.filters.BlurFilter if you plan
+ *  to dynamically change the filter property values.
+ *
+ *  @see flash.filters.BlurFilter
+ */
+public class BlurFilter extends EventDispatcher implements IFlexBitmapFilter
 {
+	include "../core/Version.as";
+
+    //--------------------------------------------------------------------------
+    //
+    //  Constructor
+    //
+    //--------------------------------------------------------------------------
+
+	/**
+	 * @copy flash.filters.BlurFilter
+	 */
 	public function BlurFilter(blurX:Number = 4.0, blurY:Number = 4.0, quality:int = 1)
 	{
+		super();
+
 		this.blurX = blurX;
 		this.blurY = blurY;
 		this.quality = quality;
 	}
-
+
+	//--------------------------------------------------------------------------
+	//
+	//  Properties
+	//
+	//--------------------------------------------------------------------------
+
 	//----------------------------------
     //  blurX
     //----------------------------------
@@ -100,11 +148,38 @@
 			notifyFilterChanged();
 		}
 	}
-
-	public function clone():BitmapFilter
+
+	//--------------------------------------------------------------------------
+	//
+	//  Methods
+	//
+	//--------------------------------------------------------------------------
+
+   	/**
+     * @private
+     * Notify of a change to our filter, so that filter stack is ultimately
+     * re-applied by the framework.
+     */
+	private function notifyFilterChanged():void
+	{
+		dispatchEvent(new Event(Event.CHANGE));
+	}
+
+	//--------------------------------------------------------------------------
+	//
+	//  IFlexBitmapFilter
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  Creates a flash.filters.BlurFilter instance using the current
+	 *  property values.
+	 *
+	 *  @return flash.filters.BlurFilter instance
+	 */
+	public function createBitmapFilter():BitmapFilter
 	{
 		return new flash.filters.BlurFilter(blurX, blurY, quality);
 	}
-
 }
 }


Transferred from the Adobe Open Source Subversion Repository

Revision: 19839
Author:   rfrishbe@adobe.com
Date:     2011-01-20T19:27:06.918618Z

Log Message:
-----------
Fixing a bug in TileLayout caused by SVN 19816.  One of the getVirtualElementAt() calls which was replaced with getElementAt() should continue to be getVirtualElementAt().  I'm also cleaning up a call to setLayoutBoundsSize(0,0) that is no longer needed.  I'm not sure why it was in the layout code at all (as opposed to letting DataGroup do it when it puts the item renderer in the free state).  I'm also not clear why the TileLayout code sets the item renderer's visible property to false (and later to true when it's re-used) as opposed to letting the DataGroup handle the item renderer recycling, but it doesn't seem worth changing.

QE notes: -
Doc notes:
Bugs: SDK-29181
Reviewer: Hans
Tests run: checkintests, mustella TileLayout + all the other ones that failed b/c of SVN 19816 (some ComboBox, DropDownList, List tests)
Is noteworthy for integration: No

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

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

--- frameworks/projects/spark/src/spark/layouts/TileLayout.as
+++ frameworks/projects/spark/src/spark/layouts/TileLayout.as
@@ -1248,7 +1248,7 @@
         if ((visibleStartIndex != -1) && (visibleEndIndex != -1))
         {
             for (var index:int = visibleStartIndex; index <= visibleEndIndex; index++)
-                updateVirtualTileSize(target.getElementAt(index));
+                updateVirtualTileSize(target.getVirtualElementAt(index));
         }

         // Make sure that we always have non-NaN values in the cache, even
@@ -1435,7 +1435,6 @@
             var el:ILayoutElement = layoutTarget.getElementAt(i);
             if (!el)
                 continue;
-            el.setLayoutBoundsSize(0, 0);
             if (el is IVisualElement)
                 IVisualElement(el).visible = false;
         }


Transferred from the Adobe Open Source Subversion Repository

Revision: 3558
Author:   egeorgie@adobe.com
Date:     2008-10-10T06:51:13.082331Z

Log Message:
-----------
Fixes to the way the Ellipse calculates its bounds for the purpose of layouts

Reviewed by Ryan

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/Ellipse.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/graphicsClasses/GraphicElement.as</path>

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

--- frameworks/projects/spark/src/spark/primitives/Ellipse.as
+++ frameworks/projects/spark/src/spark/primitives/Ellipse.as
@@ -15,6 +15,8 @@
 import flash.events.EventDispatcher;
 import flash.display.Graphics;
 import flash.geom.Rectangle;
+import flash.geom.Point;
+import flash.geom.Matrix;

 /**
  *  The Ellipse class is a filled graphic element that draws an ellipse.
@@ -56,6 +58,97 @@
 	{
 		g.drawEllipse(drawX, drawY, width, height);
 	}
+
+    // Find the minimum and maximum x & y for the specified ellipse transformed by the matrix m
+    static private function getBBox(rx:Number, ry:Number, m:Matrix):Rectangle
+    {
+        var a:Number = m.a;
+        var b:Number = m.b;
+        var c:Number = m.c;
+        var d:Number = m.d;
+
+        var cx:Number = rx;
+        var cy:Number = ry;
+
+        // Ellipse can be represented by the following parametric equations:
+        //
+        // (1) x = cx + rx * cos(t)
+        // (2) y = cy + ry * sin(t)
+        //
+        // After applying transformation with matrix m(a, c, b, d) we get:
+        //
+        // (3) x = a * cx + a * cos(t) * rx + c * cy + c * sin(t) * ry + m.tx
+        // (4) y = b * cx + b * cos(t) * rx + d * cy + d * sin(t) * ry + m.ty
+        //
+        // In (3) and (4) x and y are functions of a parameter t. To find the extremums we need
+        // to find where dx/dt and dy/dt reach zero:
+        //
+        // (5) dx/dt = - a * sin(t) * rx + c * cos(t) * ry
+        // (6) dy/dt = - b * sin(t) * rx + d * cos(t) * ry
+        // (7) dx/dt = 0 <=> sin(t) / cos(t) = (c * ry) / (a * rx);
+        // (8) dy/dt = 0 <=> sin(t) / cos(t) = (d * ry) / (b * rx);
+
+        if(rx == 0 && ry == 0)
+            return new Rectangle(cx, cy, 0, 0);
+
+        var t:Number;
+        var t1:Number;
+
+        if (a * rx == 0)
+            t = Math.PI / 2;
+        else
+            t = Math.atan((c * ry) / (a * rx));
+
+        if (b * rx == 0)
+            t1 = Math.PI / 2;
+        else
+            t1 = Math.atan((d * ry) / (b * rx));
+
+        // TODO EGeorgie: optimize
+        var x1:Number = a * Math.cos(t) * rx + c * Math.sin(t) * ry;
+        var x2:Number = -x1;
+        x1 += a * cx + c * cy + m.tx;
+        x2 += a * cx + c * cy + m.tx;
+
+        var y1:Number = b * Math.cos(t1) * rx + d * Math.sin(t1) * ry;
+        var y2:Number = -y1;
+        y1 += b * cx + d * cy + m.ty;
+        y2 += b * cx + d * cy + m.ty;
+
+        return new Rectangle(Math.min(x1, x2), Math.min(y1, y2), Math.abs(x1 - x2), Math.abs(y1 - y2));
+    }
+
+
+    /**
+     *  @return Returns the transformed size. Transformation is this element's
+     *  transformation matrix.
+     */
+    override protected function transformSizeForLayout(width:Number, height:Number,
+                                                       actualMatrix:Boolean):Point
+    {
+        var size:Point = new Point(width, height);
+        var m:Matrix = computeMatrix(actualMatrix);
+        if (m)
+        {
+            var bbox:Rectangle = getBBox(width / 2, height / 2, m);
+            size.x = bbox.width;
+            size.y = bbox.height;
+        }
+
+        // Take stroke into account
+        var strokeExtents:Point = getStrokeExtents();
+        size.x += strokeExtents.x;
+        size.y += strokeExtents.y;
+        return size;
+    }
+
+    override protected function computeTopLeft(topLeft:Point, width:Number, height:Number, m:Matrix):Point
+    {
+        var bbox:Rectangle = getBBox(width / 2, height / 2, m);
+        topLeft.x = bbox.x;
+        topLeft.y = bbox.y;
+        return topLeft;
+    }
 }

 }


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

--- frameworks/projects/framework/src/mx/controls/ProgressBarMode.as
+++ frameworks/projects/framework/src/mx/controls/ProgressBarMode.as
@@ -0,0 +1,56 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  ADOBE SYSTEMS INCORPORATED
+//  Copyright 2005-2006 Adobe Systems Incorporated
+//  All Rights Reserved.
+//
+//  NOTICE: Adobe permits you to use, modify, and distribute this file
+//  in accordance with the terms of the license agreement accompanying it.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+package mx.controls
+{
+
+/**
+ *  The ProgressBarMode class defines the values for the mode property
+ *  of the ProgressBar class.
+ *
+ *  @see mx.controls.ProgressBar
+ */
+public final class ProgressBarMode
+{
+	include "../core/Version.as";
+
+	//--------------------------------------------------------------------------
+	//
+	//  Class constants
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  The control specified by the source property must
+	 *  dispatch progress and completed events.
+	 *  The ProgressBar uses these events to update its status.
+	 */
+	public static const EVENT:String = "event";
+
+	/**
+	 *  You manually update the ProgressBar status. In this mode, you
+	 *  specify the maximum and minimum
+	 *  properties and use the setProgress() method
+	 *  to specify the status. This mode is often used when the
+	 *  indeterminate property is true.
+	 */
+	public static const MANUAL:String = "manual";
+
+	/**
+	 *  The source property must specify an object that
+	 *  exposes the getBytesLoaded() and
+	 *  getBytesTotal() methods.  The ProgressBar control
+	 *  calls these methods to update its status.
+	 */
+	public static const POLLED:String = "polled";
+}
+
+}


Transferred from the Adobe Open Source Subversion Repository

Revision: 10075
Author:   rfrishbe@adobe.com
Date:     2009-09-09T01:01:58.077369Z

Log Message:
-----------
Cleanups from the spark text changes and some bug fixes for VideoElement.  Also some PARB changes for UIComponent.

TitleBar: Changing the skin part type from Label to Textbase

UIComponent: skipMeasure()->canSkipMeasurement() to be in line with GraphicElement.  This has been PARB approved.
UIComponent: same with hasComplexLayoutMatrix...this replaces hasDeltaIdentityTransform.  This has been PARB approved.

StyleProtoChain: cleanup around what interfaces to use

TextBase: clean up code that’s no longer needed.

VideoElement: Fixing 4 bugs:
SDK-22824: sourceLastPlayed keeps track of what video file we’ve called play() with last.  This way if a user pauses the video and wants to start it up again at the same point, we can call play(null) on the underlying FLVPlayback videoPlayer.  However, anytime the souce changes, we want to null out sourceLastPlayed.  This was causing a bug when someone set the source to null and then reset it to it’s previous value.

SDK-23034 (GUMBO_PRIORITY): This deals with some FLVPlayback quirks around sizing.  I had put in a fix so we weren’t setting width/height on the underlying videoPlayer too many times, but apparently we need to make sure it always gets called once.  Hopefully when switching to Strobe we can cleanup this logic...I put a FIXME in to do this.

SDK-21947/ SDK-22533 - some video files don’t always send out a metadata event.  I’m not quite sure why this is, but in case this happens, we do a check in the ready handler to see whether we should call invalidateSize() to make sure it gets sized properly.

QE notes:-
Doc notes:-
Bugs: SDK-22824, SDK-23034, SDK-21947, SDK-22533
Reviewer: Glenn, Corey
Tests run: checkintests, Button, GraphicTags, VideoElement, and VideoPlayer (some VideoPlayer were failing, but I think it should be fine)
Is noteworthy for integration: Yes

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/primitives/supportClasses/GraphicElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/RichText.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/Group.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/Skin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/supportClasses/AddActionInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/mx/core/UITLFTextField.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/spark/components/windowClasses/TitleBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/supportClasses/RemoveActionInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/StyleProtoChain.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/TextBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/Label.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/GroupBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/supportClasses/AnimateTransformInstance.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/spark/src/spark/components/RichEditableText.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/primitives/VideoElement.as</path>

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

--- frameworks/projects/spark/src/spark/components/supportClasses/Skin.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/Skin.as
@@ -87,7 +87,7 @@
     /**
      *  @private
      */
-    override protected function skipMeasure():Boolean
+    override protected function canSkipMeasurement():Boolean
     {
         var uiOwner:UIComponent = owner as UIComponent;

@@ -95,7 +95,7 @@
         if (uiOwner && !isNaN(uiOwner.explicitWidth) && !isNaN(uiOwner.explicitHeight))
             return true;

-        return super.skipMeasure();
+        return super.canSkipMeasurement();
     }
 }


Transferred from the Adobe Open Source Subversion Repository

Revision: 8506
Author:   smgilson@adobe.com
Date:     2009-07-10T16:36:46.292514Z

Log Message:
-----------
- Fix incorrect [Alternative] link in Tween.as
- Expose SparkSkinForHalo.as in ASDoc

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

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/Tween.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/sparkskins/src/mx/skins/spark/SparkSkinForHalo.as</path>

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

--- frameworks/projects/sparkskins/src/mx/skins/spark/SparkSkinForHalo.as
+++ frameworks/projects/sparkskins/src/mx/skins/spark/SparkSkinForHalo.as
@@ -15,11 +15,10 @@

 import spark.skins.SparkSkin;

-[ExcludeClass]
-
 /**
- *  Base class for Spark skins for Halo components. This class
- *  adds support for colorizing the border with errorColor.
+ *  The SparkSkinForHalo class is the base class for Spark skins for Halo components.
+ *  This class adds support for setting the color of the border with the
+ *  value of the errorColor style when a validation error occurs.
  *
  *  @langversion 3.0
  *  @playerversion Flash 10
@@ -29,7 +28,7 @@
 public class SparkSkinForHalo extends SparkSkin
 {
     /**
-     * Constructor.
+     *  Constructor.
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
@@ -42,8 +41,11 @@
     }

     /**
-     * Names of items that should have their color property set to the errorColor style
-     * if the component has an errorString.
+     *  If the errorString property of the component contains text,
+     *  this property contains the names of the items that should have their
+     *  color property set to the value of the errorColor style.
+     *  The text in the errorString property is displayed by a component's
+     *  error tip when the component is monitored by a Validator and validation fails.
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
@@ -56,7 +58,9 @@
     }

     /**
-     * Default border item color.
+     *  Default border item color.
+     *
+     *  @default 0
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
@@ -69,7 +73,7 @@
     }

     /**
-     *  @private.
+     *  @private
      */
     override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void
     {


Transferred from the Adobe Open Source Subversion Repository

Revision: 716
Author:   matamel@adobe.com
Date:     2008-03-03T18:32:50.322093Z

Log Message:
-----------
Merging change 715 from 3.0.x branch to trunk.

*********************************************
Bug: BLZ-61 - Can get into a state where Consumer gets a duplicate subscription error but keeps trying to resubscribe with the same clientId.
QA: Yes
Doc: No
Checkintests: Pass
*********************************************

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

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

--- frameworks/projects/rpc/src/mx/messaging/AbstractConsumer.as
+++ frameworks/projects/rpc/src/mx/messaging/AbstractConsumer.as
@@ -505,27 +505,23 @@
 	override public function fault(errMsg:ErrorMessage, msg:IMessage):void
     {
         // Ignore faults for any outstanding messages that return after disconnect() is invoked.
-	    if (_disconnectBarrier)
-	        return;
-
-        if (errMsg.headers[ErrorMessage.RETRYABLE_HINT_HEADER])
-        {
-            if (_resubscribeTimer == null)
-            {
-    	        // If this error correlates to our current subscribe message,
-    	        // we should no longer be subscribed.
-    	        if ((_subscribeMsg != null) && (errMsg.correlationId == _subscribeMsg.messageId))
-    	            _shouldBeSubscribed = false;
-    	        super.fault(errMsg, msg);
-    	    }
-    	    // Else, suppress the fault dispatch because the resubscribe
-    	    // timer is running and will generate a fault when it runs out of
-    	    // allowed resubscribe attempts.
-	    }
-	    else
-	    {
-	        super.fault(errMsg, msg);
-	    }
+        if (_disconnectBarrier)
+            return;
+
+        // If this error correlates to our current subscribe message,
+        // we should no longer be subscribed.
+        if ((_subscribeMsg != null) && (errMsg.correlationId == _subscribeMsg.messageId))
+            _shouldBeSubscribed = false;
+
+        // If the error is not retryable, or there is no resubscribe timer running,
+        // dispatch a fault event. Otherwise, the resubscribe timer is running and
+        // will generate a fault when it runs out of allowed resubscribe attempts.
+        if (!errMsg.headers[ErrorMessage.RETRYABLE_HINT_HEADER] || _resubscribeTimer == null)
+        {
+            // Stop the resubscribe timer in case it is running.
+            stopResubscribeTimer();
+            super.fault(errMsg, msg);
+        }
     }

     /**


Transferred from the Adobe Open Source Subversion Repository

Revision: 9561
Author:   jimurphy@adobe.com
Date:     2009-08-25T01:58:28.109106Z

Log Message:
-----------
Merge 3.x revisions 9452,9493 -> trunk

checkintests:pass

Modified Paths:
--------------
<path kind="dir" action="M">/flex/sdk/trunk</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/http/AbstractOperation.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/utils/ObjectUtil.as</path>

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

--- frameworks/projects/rpc/src/mx/rpc/http/AbstractOperation.as
+++ frameworks/projects/rpc/src/mx/rpc/http/AbstractOperation.as
@@ -1116,16 +1116,18 @@
         var trimmed:String = StringUtil.trim(source);
         var params:Array = trimmed.split('&');
         var decoded:Object = {};
-        for (var i:int = 0; i<params.length; i++)
+        for (var i:int = 0; i < params.length; i++)
         {
             var param:String = params[i];
             var equalsIndex:int = param.indexOf('=');
             if (equalsIndex != -1)
             {
-                var name:String = unescape(param.substr(0, equalsIndex));
+                var name:String = param.substr(0, equalsIndex);
                 name = name.split('+').join(' ');
-                var value:String = unescape(param.substr(equalsIndex+1));
+                name = unescape(name);
+                var value:String = param.substr(equalsIndex + 1);
                 value = value.split('+').join(' ');
+                value = unescape(value);
                 decoded[name] = value;
             }
         }


Transferred from the Adobe Open Source Subversion Repository

Revision: 5098
Author:   gauravj@adobe.com
Date:     2009-02-27T02:21:27.489350Z

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

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

--- frameworks/projects/spark/src/spark/layouts/VerticalAlign.as
+++ frameworks/projects/spark/src/spark/layouts/VerticalAlign.as
@@ -17,21 +17,41 @@
  *  property.
  *
  * @see HorizontalLayout#verticalAlign
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 10
+ *  @playerversion AIR 1.5
+ *  @productversion Flex 4
  */
 public final class VerticalAlign
 {
     /**
      *  Vertically align children to the top of the container.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
      */
     public static const TOP:String = "top";

     /**
      *  Vertically align children in the middle of the container.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
      */
     public static const MIDDLE:String = "middle";

     /**
      *  Vertically align children to the bottom of the container.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
      */
     public static const BOTTOM:String = "bottom";

@@ -39,6 +59,11 @@
      *  Justify the children with respect to the container.  This
      *  uniformly sizes all children to be the same height as the
      *  container.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
      */
     public static const JUSTIFY:String = "justify";

@@ -48,6 +73,11 @@
      *  The content height of the container is the size of the largest child.
      *  If all children are smaller than the height of the container, then
      *  all the children will be sized to the height of the container.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
      */
     public static const CONTENT_JUSTIFY:String = "contentJustify";


Transferred from the Adobe Open Source Subversion Repository

Revision: 5098
Author:   gauravj@adobe.com
Date:     2009-02-27T02:21:27.489350Z

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

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

--- frameworks/projects/spark/src/spark/skins/spark/FocusSkin.as
+++ frameworks/projects/spark/src/spark/skins/spark/FocusSkin.as
@@ -28,6 +28,11 @@

 /**
  *  Focus skins for Fx components.
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 10
+ *  @playerversion AIR 1.5
+ *  @productversion Flex 4
  */
 public class FxFocusSkin extends UIComponent
 {
@@ -75,11 +80,21 @@
     /**
      *  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;

     /**
      *  Object to draw focus around.  If null, uses focusManager.getFocus();
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
      */
 	public var focusObject:Object;


Transferred from the Adobe Open Source Subversion Repository

Revision: 22036
Author:   egeorgie@adobe.com
Date:     2011-08-16T23:42:05.491851Z

Log Message:
-----------
Add Copyright Headers to SplashScreeImage and SplashScreenImageSource

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

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/preloaders/SplashScreenImage.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/preloaders/SplashScreenImageSource.as</path>

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

--- frameworks/projects/mobilecomponents/src/spark/preloaders/SplashScreenImageSource.as
+++ frameworks/projects/mobilecomponents/src/spark/preloaders/SplashScreenImageSource.as
@@ -1,3 +1,14 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  ADOBE SYSTEMS INCORPORATED
+//  Copyright 2011 Adobe Systems Incorporated
+//  All Rights Reserved.
+//
+//  NOTICE: Adobe permits you to use, modify, and distribute this file
+//  in accordance with the terms of the license agreement accompanying it.
+//
+////////////////////////////////////////////////////////////////////////////////
+
 package spark.preloaders
 {
 import mx.core.INavigatorContent;


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

--- frameworks/projects/mx/src/mx/effects/effectClasses/UnconstrainItemActionInstance.as
+++ frameworks/projects/mx/src/mx/effects/effectClasses/UnconstrainItemActionInstance.as
@@ -23,6 +23,11 @@
  *  effect; you do not create one yourself.
  *
  *  @see mx.effects.UnconstrainItemAction
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 public class UnconstrainItemActionInstance extends ActionEffectInstance
 {
@@ -38,6 +43,11 @@
      *  Constructor.
      *
      *  @param target The Object to animate with this effect.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public function UnconstrainItemActionInstance(target:Object)
     {


Some obscurity about working with actionscript I don't understand--the temp variable is actually relevant here (?!)

--- HLSPlugin/src/org/denivip/osmf/net/httpstreaming/hls/HTTPStreamingMP2TSFileHandler.as
+++ HLSPlugin/src/org/denivip/osmf/net/httpstreaming/hls/HTTPStreamingMP2TSFileHandler.as
@@ -162,7 +162,8 @@
 				// process adaptation field
 				// don't care about flags
 				// don't care about clocks here
-				packet.position += packet.readUnsignedByte();	// skip to end
+                var af:uint = packet.readUnsignedByte();
+				packet.position += af;	// skip to end
 			}

             return hasPD ? processES(pid, pusi, packet) : null;


Transferred from the Adobe Open Source Subversion Repository

Revision: 22217
Author:   mhorn@adobe.com
Date:     2011-08-25T18:07:03.696931Z

Log Message:
-----------
minor asdoc change

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/components/VideoPlayer.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/components/FormHeading.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/components/DropDownList.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/framework/src/mx/controls/ToolTip.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/components/TabBar.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/components/VideoDisplay.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/components/Panel.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/components/Form.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/components/NumericStepper.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/components/VSlider.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/components/ComboBox.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/components/TitleWindow.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/components/ToggleButton.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/components/Spinner.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mx/src/mx/controls/ProgressBar.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/components/BorderContainer.as</path>

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

--- frameworks/projects/spark/src/spark/components/TitleWindow.as
+++ frameworks/projects/spark/src/spark/components/TitleWindow.as
@@ -133,7 +133,7 @@
  * Because this component does not define a skin for the mobile theme, Adobe
  * recommends that you not use it in a mobile application. Alternatively, you
  * can define your own mobile skin for the component. For more information,
- * see Spark Skinning.
+ * see Basics of mobile skinning.
  */
 [DiscouragedForProfile("mobileDevice")]


Transferred from the Adobe Open Source Subversion Repository

Revision: 10647
Author:   preilly@adobe.com
Date:     2009-09-28T17:21:59.390445Z

Log Message:
-----------
* A batch of compiler fixes.

QE notes:
Doc notes:
Bugs: SDK-22258, SDK-21547, SDK-22879, SDK-23169, SDK-23336
Reviewer: Edwin (ActionFactory.java), Ryan (VideoPlayer.as), Corey
Tests run: full cyclone
Is noteworthy for integration: Yes, HostComponent, SkinPart, and
                               SkinState metadata is now validated by
                               the compiler.
Code-level description of changes:

  frameworks/projects/spark/src/spark/skins/spark/BorderSkin.as

    Made HostComponent fully qualified.

  frameworks/projects/spark/src/spark/components/VideoPlayer.as

    Updated SkinState metadata to reflect revision 7732.

  modules/swfutils/src/java/flash/swf/ActionFactory.java

    Made getLabel() more bullet proof.

  modules/compiler/src/java/flex2/compiler_en.properties

    Added as3.HostComponentExtension.HostComponentClassNotFound,
    as3.HostComponentExtension.MissingSkinPart,
    as3.HostComponentExtension.MissingSkinState,
    as3.SyntaxTreeEvaluator.OnlyOneHostComponentAllowed, and
    as3.SyntaxTreeEvaluator.SkinPartsMustBePublic.

  modules/compiler/src/java/flex2/compiler/CompilationUnit.java

    Replaced hasHostComponentMD with hostComponentMetaData.

  modules/compiler/src/java/flex2/compiler/as3/genext/GenerativeClassInfo.java

    Modified getImports() to support Vectors.

  modules/compiler/src/java/flex2/compiler/as3/HostComponentEvaluator.java

    Removed, because we really don't need to evaluate the AST again to
    find the HostComponent metadata since SyntaxTreeEvaluator has
    already found it.

  modules/compiler/src/java/flex2/compiler/as3/AbstractSyntaxTreeUtil.java

    Modified generateTypeExpression() and generateVariable() to
    support passing in a position.

  modules/compiler/src/java/flex2/compiler/as3/SyntaxTreeEvaluator.java

    Modified evaluate(Context, MetaDataNode) to handle [SkinPart].

    Modified processHostComponentMetaData() to store the node in the
    CompilationUnit and report an error if more than one HostComponent
    is found.

    Added processSkinPartMetaData().

  modules/compiler/src/java/flex2/compiler/as3/HostComponentExtension.java

    Refactored to handle what HostComponentEvaluator was doing, plus
    validate HostComponent, SkinPart and SkinState metadata.

  modules/compiler/src/java/flex2/compiler/mxml/rep/init/ValueInitializer.java

    Modified generateDefinitionBody() to store a line number mapped
    position for the variable definition.

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/as3/genext/GenerativeClassInfo.java</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler_en.properties</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/swfutils/src/java/flash/swf/ActionFactory.java</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/CompilationUnit.java</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/as3/AbstractSyntaxTreeUtil.java</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/as3/SyntaxTreeEvaluator.java</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/as3/HostComponentExtension.java</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/VideoPlayer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/rep/init/ValueInitializer.java</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/skins/spark/BorderSkin.as</path>
<path kind="file" action="D">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/as3/HostComponentEvaluator.java</path>

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

--- frameworks/projects/spark/src/spark/components/VideoPlayer.as
+++ frameworks/projects/spark/src/spark/components/VideoPlayer.as
@@ -225,7 +225,7 @@
  *  @playerversion AIR 1.5
  *  @productversion Flex 4
  */
-[SkinState("fullScreenConnectionError")]
+[SkinState("connectionErrorAndFullScreen")]

 /**
  *  Disabled State of the VideoPlayer when
@@ -236,7 +236,7 @@
  *  @playerversion AIR 1.5
  *  @productversion Flex 4
  */
-[SkinState("fullScreenDisabled")]
+[SkinState("disabledAndFullScreen")]

 /**
  *  Disconnected State of the VideoPlayer when
@@ -247,7 +247,7 @@
  *  @playerversion AIR 1.5
  *  @productversion Flex 4
  */
-[SkinState("fullScreenDisconnected")]
+[SkinState("disconnectedAndFullScreen")]

 /**
  *  Loading State of the VideoPlayer when
@@ -258,7 +258,7 @@
  *  @playerversion AIR 1.5
  *  @productversion Flex 4
  */
-[SkinState("fullScreenLoading")]
+[SkinState("loadingAndFullScreen")]

 /**
  *  Playing State of the VideoPlayer when
@@ -269,7 +269,7 @@
  *  @playerversion AIR 1.5
  *  @productversion Flex 4
  */
-[SkinState("fullScreenPlaying")]
+[SkinState("playingAndFullScreen")]

 /**
  *  Stopped State of the VideoPlayer when
@@ -280,7 +280,7 @@
  *  @playerversion AIR 1.5
  *  @productversion Flex 4
  */
-[SkinState("fullScreenStopped")]
+[SkinState("stoppedAndFullScreen")]

 /**
  *  Loading State of the VideoPlayer


Transferred from the Adobe Open Source Subversion Repository

Revision: 12127
Author:   hmuller@adobe.com
Date:     2009-11-23T23:58:00.001192Z

Log Message:
-----------
Additional min/max Inspectable metadata, mostly for the filter classes.

QE notes:
Doc notes:
Bugs: sdk-24365
Reviewer: Chet, Jason, Ryan
Tests run:
Is noteworthy for integration: no

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/filters/ConvolutionFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/filters/BaseDimensionFilter.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/supportClasses/ScrollBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/filters/BlurFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/filters/DisplacementMapFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/filters/GlowFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/VideoPlayer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/filters/DropShadowFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/filters/BevelFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/filters/GradientFilter.as</path>

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

--- frameworks/projects/spark/src/spark/components/VideoPlayer.as
+++ frameworks/projects/spark/src/spark/components/VideoPlayer.as
@@ -1278,7 +1278,7 @@
     //  volume
     //----------------------------------

-    [Inspectable(category="General", defaultValue="1.0")]
+    [Inspectable(category="General", defaultValue="1.0", minValue="0.0", maxValue="1.0")]
     [Bindable("volumeChanged")]

     /**


Transferred from the Adobe Open Source Subversion Repository

Revision: 11574
Author:   egeorgie@adobe.com
Date:     2009-11-09T18:53:35.299310Z

Log Message:
-----------
Drag and Drop - Bug fixes:
- Added slight delay before drag-scrolling start.
- Single selection ctrl+drag fixed.
- Default drop indicator for List that doesn't have drop indicator specified in its skin. The default DI is specified through the new dropIndicatorSkin List style.
- Memory leak for the drop indicator dynamic skin part.
- ListItemDragProxy incorrectly listed in spark-manifest.xml moved to SparkClassess.

QE notes: None
Doc notes: None
Bugs: SDK-24047, SDK-23999, SDK-23871
Reviewer: Glenn, Deepa
Tests run: checkintests, mustella (List, ListDragDrop)
Is noteworthy for integration: No

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/SparkClasses.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/List.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/spark-manifest.xml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/supportClasses/LayoutBase.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/src/spark/skins/spark/ListDropIndicator.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/defaults.css</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/HorizontalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/VerticalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/supportClasses/DropLocation.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/TileLayout.as</path>

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

--- frameworks/projects/spark/src/spark/layouts/VerticalLayout.as
+++ frameworks/projects/spark/src/spark/layouts/VerticalLayout.as
@@ -18,6 +18,7 @@
 import mx.containers.utilityClasses.Flex;
 import mx.core.ILayoutElement;
 import mx.core.IVisualElement;
+import mx.core.mx_internal;
 import mx.events.PropertyChangeEvent;

 import spark.components.supportClasses.GroupBase;
@@ -26,6 +27,8 @@
 import spark.layouts.supportClasses.LayoutBase;
 import spark.layouts.supportClasses.LayoutElementHelper;
 import spark.layouts.supportClasses.LinearLayoutVector;
+
+use namespace mx_internal;

 /**
  *  The VerticalLayout class arranges the layout elements in a vertical sequence,
@@ -176,8 +179,10 @@
     public function VerticalLayout():void
     {
         super();
-    }
-
+
+		// Don't drag-scroll in the horizontal direction
+		dragScrollRegionSizeHorizontal = 0;
+    }

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


Transferred from the Adobe Open Source Subversion Repository

Revision: 4390
Author:   rfrishbe@adobe.com
Date:     2008-12-23T23:34:25.543838Z

Log Message:
-----------
Fix a small bug with BitmapGraphic in the way it's calling the fill.  Since fill now works properly, we need to make sure begin() is called correctly.

Also, I removed ITransformable yesterday, but let's push some of those properties on to IVisualElement directly.

QE Notes: The ITransformable change should fix some tests that aren't compiling in 3d layout
Doc Notes: None
Bugs: SDK-18530
Reviewer: Evtim
tests: checkintests, mustella Group tests, BitmapGraphic tests (one BitmapGraphic tests was still failing for me...)

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/IVisualElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/BitmapGraphic.as</path>

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

--- frameworks/projects/spark/src/spark/primitives/BitmapImage.as
+++ frameworks/projects/spark/src/spark/primitives/BitmapImage.as
@@ -347,8 +347,8 @@
 			g.clear();

         g.lineStyle();
-        _fill.offsetX = drawX;
-        _fill.offsetY = drawY;
+        _fill.x = drawX;
+        _fill.y = drawY;
         _fill.smooth = smooth;
         _fill.repeat = false;
         _fill.scaleX = 1;
@@ -383,7 +383,7 @@
             break;
         }

-        _fill.begin(g, new Rectangle(fillWidth, fillHeight));
+        _fill.begin(g, new Rectangle(0, 0, fillWidth, fillHeight));
         g.drawRect(drawX, drawY, unscaledWidth, unscaledHeight);
         _fill.end(g);
     }