Transferred from the Adobe Open Source Subversion Repository

Revision: 4314
Author:   gruehle@adobe.com
Date:     2008-12-15T22:40:02.103600Z

Log Message:
-----------
Initial checkin of style support in the Spark skins. See the "Styling Gumbo Components" spec for details.

QE Notes: Bitmap compares will be different for many skins. Joan will update the bitmaps.
Doc Notes: See spec for details.
Bugs: -
Reviewer: Corey

Modified Paths:
--------------
<path kind="dir" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/assets</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxDefaultItemRenderer.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxFocusSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/ItemRenderer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxScrollBarDownButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxVSliderSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxVSliderThumbSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxVScrollBarSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxListSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/mxml-2009-manifest.xml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxHSliderTrackSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxScrollBarUpButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/manifest.xml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxSpinnerIncrButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxHScrollBarThumbSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxVSliderTrackSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxTextInputSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxNumericStepperSkin.mxml</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/SparkSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxSpinnerDecrButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/baseClasses/FxComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxVScrollBarThumbSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/defaults.css</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxScrollBarRightButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxTextAreaSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxToggleButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxSpinnerSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxHScrollBarTrackSkin.mxml</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/styles/metadata/SparkColorStyles.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxCheckBoxSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxScrollBarLeftButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxRadioButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxHSliderSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxHSliderThumbSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxHScrollBarSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxVScrollBarTrackSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/baseClasses/GroupBase.as</path>

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

--- frameworks/projects/spark/src/spark/components/supportClasses/GroupBase.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/GroupBase.as
@@ -49,6 +49,7 @@
 include "../../styles/metadata/BasicCharacterFormatTextStyles.as"
 include "../../styles/metadata/AdvancedCharacterFormatTextStyles.as"
 include "../../styles/metadata/SelectionFormatTextStyles.as"
+include "../../styles/metadata/SparkColorStyles.as"

 [Exclude(name="enabled", kind="property")]


[AssemblyTablePlayground] implemented Page-UP, Page-DOWN event handlers

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

--- AssemblyTablePlayground/src/org/jbei/registry/components/assemblyTableClasses/ContentHolder.as
+++ AssemblyTablePlayground/src/org/jbei/registry/components/assemblyTableClasses/ContentHolder.as
@@ -276,6 +276,10 @@
                 tryToMoveCaretUp();
             } else if(event.keyCode == Keyboard.DOWN) {
                 tryToMoveCaretDown();
+            } else if(event.keyCode == Keyboard.PAGE_DOWN) {
+                tryToMoveCaretPageDown();
+            } else if(event.keyCode == Keyboard.PAGE_UP) {
+                tryToMoveCaretPageUp();
             }

             selectCellsInRange(shiftSelectionStartCell, activeCell);
@@ -468,6 +472,36 @@
         {
             if(activeCell.index > 0) {
                 updateActiveCell(columns[activeCell.column.index].column.cells[activeCell.index - 1]);
+            }
+        }
+
+        private function tryToMoveCaretPageDown():void
+        {
+            var numberOfCellsPerPage:int = calculateCellsPerPage();
+
+            if(activeCell.column.cells.length == activeCell.index + numberOfCellsPerPage) {
+                return; // already at last cell
+            }
+
+            if(activeCell.index + numberOfCellsPerPage >= activeCell.column.cells.length) {
+                updateActiveCell(columns[activeCell.column.index].column.cells[activeCell.column.cells.length - 1]);
+            } else {
+                updateActiveCell(columns[activeCell.column.index].column.cells[activeCell.index + numberOfCellsPerPage]);
+            }
+        }
+
+        private function tryToMoveCaretPageUp():void
+        {
+            var numberOfCellsPerPage:int = calculateCellsPerPage();
+
+            if(activeCell.index == 0) {
+                return; // nothing to scroll up
+            }
+
+            if(activeCell.index - numberOfCellsPerPage <= 0) {
+                updateActiveCell(columns[activeCell.column.index].column.cells[0]);
+            } else {
+                updateActiveCell(columns[activeCell.column.index].column.cells[activeCell.index - numberOfCellsPerPage]);
             }
         }

@@ -525,5 +559,14 @@

             selectionLayer.select(selectedCells);
         }
+
+        private function calculateCellsPerPage():Number
+        {
+            var result:int = int(Math.floor(assemblyTableHeight / CellRenderer.CELL_HEIGHT));
+
+            result = (result <= 1) ? 1 : (result - 1);
+
+            return result;
+        }
     }
 }


Transferred from the Adobe Open Source Subversion Repository

Revision: 22872
Author:   aaltman@adobe.com
Date:     2011-10-05T18:24:46.128416Z

Log Message:
-----------
Fixes for StyleableStageText and ViewTransitions to suspend view transitions while waiting for StageText to be ready to capture bitmaps.
Co-author: Chiedo

QE notes: None
Doc notes: None
Bugs: SDK-31529 SDK-31675
Reviewer: jszeto
Tests run: checkintests mustella-mobile
Is noteworthy for integration: No

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/ViewNavigator.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/transitions/supportClasses/ViewTransitionUtil.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/supportClasses/StyleableStageText.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/transitions/ViewTransitionBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/transitions/SlideViewTransition.as</path>
<path kind="dir" action="A">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/transitions/supportClasses</path>

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

--- frameworks/projects/mobilecomponents/src/spark/transitions/SlideViewTransition.as
+++ frameworks/projects/mobilecomponents/src/spark/transitions/SlideViewTransition.as
@@ -248,6 +248,12 @@
     //
     //--------------------------------------------------------------------------

+    override mx_internal function preInit():void
+    {
+        if (mode == SlideViewTransitionMode.UNCOVER)
+            setComponentChildIndex(endView, navigator, 0);
+    }
+
     /**
      *  @private
      *
@@ -391,8 +397,8 @@
                 slideTargets.push(endView);
             }

-            if (mode == SlideViewTransitionMode.UNCOVER)
-                setComponentChildIndex(endView, navigator, 0);
+//            if (mode == SlideViewTransitionMode.UNCOVER)
+//                setComponentChildIndex(endView, navigator, 0);
         }

         var slideDistance:Number;
@@ -528,6 +534,8 @@
                 addComponentToContainer(transitionGroup, targetNavigator.skin);
             else
                 addComponentToContainer(transitionGroup, navigator.skin);
+
+            //startView.visible = false;
         }
         else
         {
@@ -759,6 +767,7 @@
             {
                 startView.contentGroup.cacheAsBitmap = navigatorProps.startViewCacheAsBitmap;
                 startView.setLayoutBoundsPosition(navigatorProps.startViewX, navigatorProps.startViewY);
+                //startView.visible = true;
             }

             if (endView)


FLEX-28424 Fix RTE when deleting typed in text

--- frameworks/projects/spark/src/spark/components/supportClasses/DropDownListBase.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/DropDownListBase.as
@@ -660,7 +660,7 @@
                                              leftOffset:Number = NaN,
                                              rightOffset:Number = NaN):void
     {
-        if (!layout)
+        if (!layout || dataGroup == null)
             return;

         var spDelta:Point =


Transferred from the Adobe Open Source Subversion Repository

Revision: 12380
Author:   smgilson@adobe.com
Date:     2009-12-02T18:37:15.838623Z

Log Message:
-----------
ASDoc edits in preparation for localization

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

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/TrackBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/HScrollBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/DisplayLayer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/ListBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/ButtonBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/ToggleButtonBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/ButtonBarHorizontalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/SliderBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/ScrollBarBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/VScrollBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/DropDownListBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/ItemRenderer.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/components/supportClasses/ListItemDragProxy.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/ButtonBarBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/Range.as</path>

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

--- frameworks/projects/spark/src/spark/components/supportClasses/ToggleButtonBase.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/ToggleButtonBase.as
@@ -90,9 +90,24 @@
  *  that support the selected property.
  *  ToggleButton, CheckBox and RadioButton are subclasses of ToggleButtonBase.
  *
- *  @see mx.components.ToggleButton
- *  @see mx.components.CheckBox
- *  @see mx.components.RadioButton
+ *  @mxml
+ *
+ *
The <s:ToggleButtonBase> tag inherits all of the tag
+ *  attributes of its superclass and adds the following tag attributes:

+ *
+ *

+ *  <s:ToggleButtonBase
+ *    Properties
+ *    selected="false"
+ *
+ *    events
+ *    change="No default"
+ *  />
+ *

+ *
+ *  @see spark.components.ToggleButton
+ *  @see spark.components.CheckBox
+ *  @see spark.components.RadioButton
  *
  *  @langversion 3.0
  *  @playerversion Flash 10
@@ -153,8 +168,9 @@
     [Bindable]

     /**
-     *  true if the button is in the down state,
+     *  Contains true if the button is in the down state,
      *  and false if it is in the up state.
+     *
      *
      *  @langversion 3.0
      *  @playerversion Flash 10


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

--- frameworks/projects/mobilecomponents/src/spark/components/calendarClasses/DateAndTimeProvider.as
+++ frameworks/projects/mobilecomponents/src/spark/components/calendarClasses/DateAndTimeProvider.as
@@ -1,11 +1,19 @@
 ////////////////////////////////////////////////////////////////////////////////
 //
-//  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.
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
 //
 ////////////////////////////////////////////////////////////////////////////////
 package spark.components.calendarClasses


Cordova Application changed to listen for the Cordova "deviceReady" and use preinitialize event to continue start-up once that "deviceReady" event is received.

--- frameworks/projects/Mobile/src/main/flex/org/apache/cordova/Application.as
+++ frameworks/projects/Mobile/src/main/flex/org/apache/cordova/Application.as
@@ -23,17 +23,6 @@
 	import org.apache.flex.core.IFlexInfo;

 	/**
-	 *  Dispatched at startup after the initial view has been
-	 *  put on the display list.
-	 *
-	 *  @langversion 3.0
-	 *  @playerversion Flash 10.2
-	 *  @playerversion AIR 2.6
-	 *  @productversion FlexJS 0.0
-	 */
-	[Event(name="deviceready", type="org.apache.flex.events.Event")]
-
-	/**
 	 *  A customized Application that dispatches the Cordova deviceReady event
 	 *
 	 *  @langversion 3.0
@@ -43,14 +32,54 @@
 	 */
 	public class Application extends org.apache.flex.core.Application implements IFlexInfo
 	{
+		/**
+		 * FalconJX will inject html into the index.html file.  Surround with
+		 * "inject_html" tag as follows:
+		 *
+		 * <inject_html>
+		 * <script type="text/javascript" src="cordova.js"></script>
+		 * </inject_html>
+		 */
 		public function Application()
 		{
-			addEventListener("applicationComplete", appCompleteHandler);
+			super();
 		}

-		private function appCompleteHandler(event:Event):void
+		public var isDeviceReady:Boolean = false
+
+		/**
+		 * @private
+		 */
+		COMPILE::JS
+		override public function start():void
 		{
-			dispatchEvent(new Event("deviceready"));
+			// listen for Cordova's deviceReady event
+			document.addEventListener("deviceReady", startOnReady, false);
+
+			// listen for preinitialize event which will be cancelled until
+			// the Cordova 'deviceReady' event is received.
+			addEventListener("preinitialize", handlePreInit);
+
+			super.start();
+		}
+
+		/**
+		 * @private
+		 */
+		private function handlePreInit(event:Event):void
+		{
+			if (!isDeviceReady) {
+				event.preventDefault(); // basically, cancel the event until the device is ready
+			}
+		}
+
+		/**
+		 * @private
+		 */
+		private function startOnReady(event:*):void
+		{
+			isDeviceReady = true;
+			removeEventListener("preinitialize", handlePreInit);
 		}
 	}
 }


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

--- frameworks/projects/mx/src/mx/styles/metadata/ContainerBackgroundStyles.as
+++ frameworks/projects/mx/src/mx/styles/metadata/ContainerBackgroundStyles.as
@@ -1,4 +1,28 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  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.
+//
+////////////////////////////////////////////////////////////////////////////////

+/**
+ *  Alpha level of the color defined by the backgroundColor
+ *  property, of the image or SWF file defined by the backgroundImage
+ *  style.
+ *  Valid values range from 0.0 to 1.0. For most controls, the default value is 1.0,
+ *  but for ToolTip controls, the default value is 0.95 and for Alert controls, the default value is 0.9.
+ *
+ *  @default 1.0
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
+ */
 [Style(name="backgroundAlpha", type="Number", inherit="no", theme="halo, spark")]

 /**


Transferred from the Adobe Open Source Subversion Repository

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

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

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

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

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

@@ -45,4 +38,4 @@
     }
 }

-}+}


Transferred from the Adobe Open Source Subversion Repository

Revision: 3243
Author:   rfrishbe@adobe.com
Date:     2008-09-17T16:14:14.399661Z

Log Message:
-----------
DataGroup/Group split work.  DataGroup is for holding data items that may require item rendering. Group only holds visual items now.  The Group APIs stay the same (numItems, addItem, etc...).  DataGroup uses the IList APIs through its dataProvider.  So the equivalent methods are now dataProvider.length, dataProvider, addItem, etc...  This is just the initial split work as there's more to come to get the files up to spec.  We will also have to visit how we deal with graphic elements in DataGroup vs. Group.  For now the implementations are roughly the same.

QE: Yes - tests may break.  please update them.
Doc: Yes
Bugs: -
Reviewer: Glenn

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/layout/BasicLayout.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/component/DataComponent.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/skin/DataComponentSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/skin/PanelSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/Flex4Classes.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/layout/HorizontalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/events/FlexEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/mxml-2009-manifest.xml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/component/ItemsComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/defaults.css</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/gumbo-manifest.xml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/component/List.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/graphics/Graphic.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/skin/ListSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/manifest.xml</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/core/DataGroup.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/core/GroupBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/component/Selector.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/skin/SelectorSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/core/Group.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/layout/VerticalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/intf/ILayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/development/eclipse/flex/flex4test/src/flex4test.mxml</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/skin/ComplexPanelSkin.mxml</path>

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

--- frameworks/projects/spark/src/spark/components/supportClasses/GroupBase.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/GroupBase.as
@@ -0,0 +1,863 @@
+package flex.core
+{
+import flash.display.DisplayObject;
+import flash.display.Sprite;
+import flash.events.Event;
+import flash.geom.ColorTransform;
+import flash.geom.Matrix;
+import flash.geom.Rectangle;
+import flash.geom.Transform;
+import flash.utils.Dictionary;
+
+import flex.events.FlexEvent;
+import flex.events.ItemExistenceChangedEvent;
+import flex.geom.Transform;
+import flex.graphics.Graphic;
+import flex.graphics.IGraphicElement;
+import flex.graphics.IGraphicElementHost;
+import flex.graphics.MaskType;
+import flex.graphics.TransformUtil;
+import flex.graphics.graphicsClasses.GraphicElement;
+import flex.intf.ILayout;
+import flex.intf.ILayoutItem;
+import flex.intf.IViewport;
+import flex.layout.BasicLayout;
+import flex.layout.LayoutItemFactory;
+
+import mx.collections.ICollectionView;
+import mx.collections.IList;
+import mx.collections.ListCollectionView;
+import mx.controls.Label;
+import mx.core.IDataRenderer;
+import mx.core.IDeferredInstance;
+import mx.core.IFactory;
+import mx.core.mx_internal;
+import mx.core.UIComponent;
+import mx.events.CollectionEvent;
+import mx.events.PropertyChangeEvent;
+import mx.events.PropertyChangeEventKind;
+
+use namespace mx_internal;
+
+//--------------------------------------
+//  Styles
+//--------------------------------------
+
+include "../styles/metadata/BasicContainerFormatTextStyles.as"
+include "../styles/metadata/AdvancedContainerFormatTextStyles.as"
+include "../styles/metadata/BasicParagraphFormatTextStyles.as"
+include "../styles/metadata/AdvancedParagraphFormatTextStyles.as"
+include "../styles/metadata/BasicCharacterFormatTextStyles.as"
+include "../styles/metadata/AdvancedCharacterFormatTextStyles.as"
+
+public class GroupBase extends UIComponent implements IGraphicElementHost, IViewport
+{
+    //--------------------------------------------------------------------------
+    //
+    //  Constructor
+    //
+    //--------------------------------------------------------------------------
+
+    public function GroupBase()
+    {
+        super();
+        tabChildren = true;
+
+        _layout = new BasicLayout();
+        ILayout(_layout).target = this;
+    }
+
+    //--------------------------------------------------------------------------
+    //
+    //  Variables
+    //
+    //--------------------------------------------------------------------------
+
+
+    //----------------------------------
+    //  layout
+    //----------------------------------
+
+    private var _layout:ILayout;  // initialized in the ctor
+
+    public function get layout():ILayout
+    {
+        return _layout;
+    }
+
+    /**
+     * @private
+     */
+    public function set layout(value:ILayout):void
+    {
+        if (_layout == value)
+            return;
+
+        _layout = value;
+        if (_layout)
+            ILayout(_layout).target = this;
+        invalidateSize();
+        invalidateDisplayList();
+    }
+
+    private var _resizeMode:uint = ResizeMode._NORMAL_UINT;
+
+    public function get resizeMode():String
+    {
+        return ResizeMode.toString(_resizeMode);
+    }
+
+    public function set resizeMode(stringValue:String):void
+    {
+        var value:uint = ResizeMode.toUINT(stringValue);
+        if (_resizeMode == value)
+            return;
+
+        _resizeMode = value;
+
+        if (_resizeMode == ResizeMode._SCALE_UINT)
+        {
+            super.scaleX = 1;
+            super.scaleY = 1;
+        }
+
+        // We need the measured values and _resizeMode affects
+        // our measure (skipMeasure implementation checks resizeMode) so
+        // we need to invalidate the size.
+        invalidateSize();
+
+        // TODO EGeorgie: can we directly call setActualSize instead?
+        invalidateParentSizeAndDisplayList();
+    }
+
+    /**
+     *  @inheritDoc
+     */
+    override public function setActualSize(w:Number, h:Number):void
+    {
+        if (_resizeMode == ResizeMode._SCALE_UINT)
+        {
+            // TODO EGeorgie: make sure we don't invalidate again while
+            // setting the scale!
+            if (measuredWidth != 0)
+            {
+                $scaleX = w / measuredWidth;
+                w = measuredWidth;
+            }
+            if (measuredHeight != 0)
+            {
+                $scaleY = h / measuredHeight;
+                h = measuredHeight;
+            }
+        }
+
+        super.setActualSize(w, h);
+    }
+
+    /**
+     *  Make sure we return 1 whenever resizeMode is set to scale.
+     */
+    override public function get scaleX():Number
+    {
+        if (_resizeMode == ResizeMode._SCALE_UINT)
+            return 1;
+
+        return super.scaleX;
+    }
+
+    /**
+     *  Make sure setting scale is no-op when resizeMode is set to scale.
+     */
+    override public function set scaleX(value:Number):void
+    {
+        if (_resizeMode == ResizeMode._SCALE_UINT)
+            return;
+
+        super.scaleX = value;
+    }
+
+    /**
+     *  Make sure we return 1 whenever resizeMode is set to scale.
+     */
+    override public function get scaleY():Number
+    {
+        if (_resizeMode == ResizeMode._SCALE_UINT)
+            return 1;
+
+        return super.scaleY;
+    }
+
+    /**
+     *  Make sure setting scale is no-op when resizeMode is set to scale.
+     */
+    override public function set scaleY(value:Number):void
+    {
+        if (_resizeMode == ResizeMode._SCALE_UINT)
+            return;
+
+        super.scaleY = value;
+    }
+
+    /**
+     *  Override so that we can return correct width when in scale mode.
+     */
+    override public function get width():Number
+    {
+        if (_resizeMode == ResizeMode._SCALE_UINT)
+            return super.width * $scaleX;
+
+        return super.width;
+    }
+
+    /**
+     *  Override so that we can return correct height when in scale mode.
+     */
+    override public function get height():Number
+    {
+        if (_resizeMode == ResizeMode._SCALE_UINT)
+            return super.height * $scaleY;
+
+        return super.height;
+    }
+
+    /**
+     *  @inheritDoc
+     */
+    override protected function skipMeasure():Boolean
+    {
+        // We never want to skip measure, if we resize by scaling
+        return _resizeMode == ResizeMode._SCALE_UINT ? false : super.skipMeasure();
+    }
+
+    override protected function commitProperties():void
+    {
+        super.commitProperties();
+
+        if (maskChanged)
+        {
+            maskChanged = false;
+            if (_mask && (!_mask.parent || _mask.parent !== this))
+            {
+                super.addChild(_mask);
+                var maskComp:UIComponent = _mask as UIComponent;
+                if (maskComp)
+                {
+                    maskComp.validateSize();
+                    maskComp.setActualSize(maskComp.getExplicitOrMeasuredWidth(),
+                                           maskComp.getExplicitOrMeasuredHeight());
+                }
+            }
+        }
+
+        if (maskTypeChanged)
+        {
+            maskTypeChanged = false;
+
+            if (_mask)
+            {
+                if (_maskType == MaskType.CLIP)
+                {
+                    // Turn off caching on mask
+                    _mask.cacheAsBitmap = false;
+                    // Save the original filters and clear the filters property
+                    originalMaskFilters = _mask.filters;
+                    _mask.filters = [];
+                }
+                else if (_maskType == MaskType.ALPHA)
+                {
+                    _mask.cacheAsBitmap = true;
+                    cacheAsBitmap = true;
+                }
+            }
+        }
+
+        if (transformChanged)
+        {
+            transformChanged = false;
+            // Apply the transform props or matrix
+            TransformUtil.applyTransforms(this, _matrix, NaN, NaN, NaN, NaN,
+                                          _rotation, _transformX, _transformY);
+            _matrix = null;
+            _rotation = NaN;
+
+            invalidateParentSizeAndDisplayList();
+        }
+
+        if (scrollPositionChanged) {
+            scrollPositionChanged = false;
+            var r:Rectangle = scrollRect;
+            if (r == null) r = new Rectangle(0, 0, width, height);
+            r.x = _horizontalScrollPosition;
+            r.y = _verticalScrollPosition;
+            scrollRect = r;
+        }
+    }
+
+    override protected function measure():void
+    {
+        super.measure();
+
+        if (_layout)
+            _layout.measure();
+    }
+
+    /**
+     *  @private
+     *  Conditionally sets the origin of the scrollRect to
+     *  verticalScrollPosition,horizontalScrollPosition and its width
+     *  width,height to w,h (unscaledWidth,unscaledHeight).  We avoid setting
+     *  the scrollRect (and therefore clipping) when scrolling isn't indicated:
+     *  if the scrollRect is currently null and the scrollPosition properties
+     *  are 0, and the Group's contentWidth,Height is <= to
+     *  unscaledWidth/Height, then the scrollRect is not set.
+     */
+    private function updateScrollRect(w:Number, h:Number):void
+    {
+        var r:Rectangle = scrollRect;
+        if (r)
+        {
+            r.width = w;
+            r.height = h;
+            scrollRect = r;
+        }
+        else // scrollRect wasn't set
+        {
+            var hsp:Number = horizontalScrollPosition;
+            var vsp:Number = verticalScrollPosition;
+            var cw:Number = contentWidth;
+            var ch:Number = contentHeight;
+
+            // Don't set the scrollRect needlessly.
+            if ((hsp != 0) || (vsp != 0) || (cw > w) || (ch > h))
+            {
+                scrollRect = new Rectangle(hsp, vsp, w, h);
+            }
+        }
+    }
+
+    override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void
+    {
+        if (_resizeMode == ResizeMode._SCALE_UINT)
+        {
+            unscaledWidth = measuredWidth;
+            unscaledHeight = measuredHeight;
+        }
+
+        super.updateDisplayList(unscaledWidth, unscaledHeight);
+
+        if (_layout)
+            _layout.updateDisplayList(unscaledWidth, unscaledHeight);
+
+        updateScrollRect(unscaledWidth, unscaledHeight);
+    }
+
+    //----------------------------------
+    //  horizontalScrollPosition
+    //----------------------------------
+
+    private var scrollPositionChanged:Boolean = false;
+    private var _horizontalScrollPosition:Number = 0;
+
+    [Bindable]
+    [Inspectable(category="General")]
+
+    /**
+     *  The X coordinate of the origin of the region this Group is
+     *  scrolled to.
+     *
+     *  Setting this property causes the scrollRect to
+     *  be set, if necessary, to:
+     *

+     *  new Rectangle(horizontalScrollPosition, verticalScrollPosition, width, height)
+     *

+     *
+     *  @default 0
+     */
+    public function get horizontalScrollPosition():Number
+    {
+        return _horizontalScrollPosition;
+    }
+
+    /**
+     *  @private
+     */
+    public function set horizontalScrollPosition(value:Number):void
+    {
+        if (value == _horizontalScrollPosition)
+            return;
+
+        _horizontalScrollPosition = value;
+        scrollPositionChanged = true;
+        invalidateProperties();
+    }
+
+    //----------------------------------
+    //  verticalScrollPosition
+    //----------------------------------
+
+    private var _verticalScrollPosition:Number = 0;
+
+    [Bindable]
+    [Inspectable(category="General")]
+
+    /**
+     *  The Y coordinate of the origin of the region this Group is
+     *  scrolled to.
+     *
+     *  Setting this property causes the scrollRect to
+     *  be set, if necessary, to:
+     *

+     *  new Rectangle(horizontalScrollPosition, verticalScrollPosition, width, height)
+     *

+     *
+     *  @default 0
+     */
+    public function get verticalScrollPosition():Number
+    {
+        return _verticalScrollPosition;
+    }
+
+    /**
+     *  @private
+     */
+    public function set verticalScrollPosition(value:Number):void
+    {
+        if (value == _verticalScrollPosition)
+            return;
+
+        _verticalScrollPosition = value;
+        scrollPositionChanged = true;
+        invalidateProperties();
+    }
+
+
+    //----------------------------------
+    //  contentWidth
+    //----------------------------------
+
+    private var _contentWidth:Number = 0;
+
+    [Bindable("propertyChange")]
+    [Inspectable(category="General")]
+
+    /**
+     * The positive extent of this Group's content, relative to the 0,0
+     * origin, along the X axis.
+     */
+    public function get contentWidth():Number
+    {
+        return _contentWidth;
+    }
+
+    private function setContentWidth(value:Number):void
+    {
+        if (value == _contentWidth)
+            return;
+    	var oldValue:Number = _contentWidth;
+        _contentWidth = value;
+        dispatchPropertyChangeEvent("contentWidth", oldValue, value);
+    }
+
+    //----------------------------------
+    //  contentHeight
+    //----------------------------------
+
+    private var _contentHeight:Number = 0;
+
+    [Bindable("propertyChange")]
+    [Inspectable(category="General")]
+
+    /**
+     * The positive extent of this Group's content, relative to the 0,0
+     * origin, along the Y axis.
+     */
+    public function get contentHeight():Number
+    {
+        return _contentHeight;
+    }
+
+    private function setContentHeight(value:Number):void
+    {
+        if (value == _contentHeight)
+            return;
+        var oldValue:Number = _contentHeight;
+        _contentHeight = value;
+        dispatchPropertyChangeEvent("contentHeight", oldValue, value);
+    }
+
+    /**
+     *  Sets this Group's contentWidth and contentHeight
+     *  properties.
+     *
+     *  This method is is intended for layout class developers who should
+     *  call it from measure() and updateDisplayList().
+     *
+     *  @param w The new value of contentWidth.
+     *  @param h The new value of contentHeight.
+     */
+    public function setContentSize(w:Number, h:Number):void
+    {
+        if ((w == _contentWidth) && (h == _contentHeight))
+           return;
+        setContentWidth(w);
+        setContentHeight(h);
+    }
+
+    //--------------------------------------------------------------------------
+    //
+    //  Properties: Overriden Focus management
+    //
+    //--------------------------------------------------------------------------
+
+    //----------------------------------
+    //  focusPane
+    //----------------------------------
+
+    /**
+     *  @private
+     *  Storage for the focusPane property.
+     */
+    private var _focusPane:Sprite;
+
+    [Inspectable(environment="none")]
+
+    // TODO (rfrishbe): only reason we need to override focusPane getter/setter
+    // is because addChild/removeChild for Groups throw an RTE.
+    // This is the same as UIComponent's focusPane getter/setter but it uses
+    // super.add/removeChild.
+
+    override public function get focusPane():Sprite
+    {
+        return _focusPane;
+    }
+
+    override public function set focusPane(value:Sprite):void
+    {
+        if (value)
+        {
+            super.addChild(value);
+
+            value.x = 0;
+            value.y = 0;
+            value.scrollRect = null;
+
+            _focusPane = value;
+        }
+        else
+        {
+             super.removeChild(_focusPane);
+
+             // TODO: remove mask?  SDK-15310
+            _focusPane = null;
+        }
+    }
+
+    //--------------------------------------------------------------------------
+    //
+    //  Layout item iteration
+    //
+    //  Iterators used by Layout objects. For visual items, the layout item
+    //  is the item itself. For data items, the layout item is the item renderer
+    //  instance that is associated with the item.
+    //
+    //  These methods and getters are really abstract methods that are
+    //  implemented in Group and DataGroup.  We need them here in BaseGroup
+    //  so that layouts can use these methods.
+    //--------------------------------------------------------------------------
+
+     /**
+     *  The number of layout items in this Group. Typically this is the same
+     *  as the number of items in the Group.
+     */
+    public function get numLayoutItems():int
+    {
+        return -1;
+    }
+
+    /**
+     *  Gets the nth layout item in the Group. For visual items, the
+     *  layout item is the item itself. For data items, the layout item is the
+     *  item renderer instance that is associated with the item.
+     *
+     *  @param index The index of the item to retrieve.
+     *
+     *  @return The layout item at the specified index.
+     */
+    public function getLayoutItemAt(index:int):ILayoutItem
+    {
+        return null;
+    }
+
+    //--------------------------------------------------------------------------
+    //
+    //  IGraphicElement Implementation
+    //
+    //--------------------------------------------------------------------------
+
+    //----------------------------------
+    //  mask
+    //----------------------------------
+    private var _mask:DisplayObject;
+    private var maskChanged:Boolean;
+
+    [Inspectable(category="General")]
+    override public function get mask():DisplayObject
+    {
+        return _mask;
+    }
+
+    /*
+     *  sets the mask. The mask will be added to the display list. The mask must
+     *  not already on a display list nor in the elements array.
+     */
+    override public function set mask(value:DisplayObject):void
+    {
+        if (_mask !== value)
+        {
+            _mask = value;
+            maskChanged = true;
+            invalidateProperties();
+            //addDrawnElements();
+
+        }
+        super.mask = value;
+    }
+
+    //----------------------------------
+    //  maskType
+    //----------------------------------
+
+    [Bindable("propertyChange")]
+    [Inspectable(category="General",enumeration="clip,alpha", defaultValue="clip")]
+    private var _maskType:String = MaskType.CLIP;
+    private var _oldMaskType:String = MaskType.CLIP;
+    private var maskTypeChanged:Boolean;
+    private var originalMaskFilters:Array;
+
+    public function get maskType():String
+    {
+        return _maskType;
+    }
+
+    public function set maskType(value:String):void
+    {
+        if (_maskType != value)
+        {
+            _oldMaskType = _maskType;
+            _maskType = value;
+            maskTypeChanged = true;
+            invalidateProperties();
+        }
+    }
+
+    //----------------------------------
+    //  rotation
+    //----------------------------------
+
+    /**
+     *  @private
+     */
+    private var _rotation:Number = 0;
+
+    [Bindable("propertyChange")]
+    [Inspectable(category="General")]
+
+    /**
+     *  The rotation for this group, in degrees.
+     */
+    override public function get rotation():Number
+    {
+        return !isNaN(_rotation) ? _rotation : super.rotation;
+    }
+
+    override public function set rotation(value:Number):void
+    {
+        if (_rotation != value)
+        {
+            var oldValue:Number = _rotation;
+
+            _rotation = value;
+            transformChanged = true;
+            invalidateProperties();
+        }
+    }
+
+    //----------------------------------
+    //  transform
+    //----------------------------------
+    private var _transform:flash.geom.Transform;
+    private var transformChanged:Boolean = false;
+    private var _matrix:Matrix;
+    private var _colorTransform:ColorTransform;
+
+    override public function set transform(value:flash.geom.Transform):void
+    {
+        // Clean up the old event listeners
+        var oldTransform:flex.geom.Transform = _transform as flex.geom.Transform;
+        if (oldTransform)
+        {
+            oldTransform.removeEventListener(PropertyChangeEvent.PROPERTY_CHANGE, transformPropertyChangeHandler);
+        }
+
+        var newTransform:flex.geom.Transform = value as flex.geom.Transform;
+
+        if (newTransform)
+        {
+            newTransform.addEventListener(PropertyChangeEvent.PROPERTY_CHANGE, transformPropertyChangeHandler);
+            _matrix = value.matrix.clone(); // Make sure it is a copy
+            _colorTransform = value.colorTransform;
+        }
+
+        _transform = value;
+        super.transform = value;
+    }
+
+    //----------------------------------
+    //  transformX
+    //----------------------------------
+    private var _transformX:Number = 0;
+
+    /**
+     *  The x position transform point of the element.
+     */
+    public function get transformX():Number
+    {
+        return _transformX;
+    }
+
+    public function set transformX(value:Number):void
+    {
+        if (_transformX != value)
+        {
+            _transformX = value;
+            transformChanged = true;
+            invalidateProperties();
+        }
+    }
+
+    //----------------------------------
+    //  transformY
+    //----------------------------------
+    private var _transformY:Number = 0;
+
+    /**
+     *  The y position transform point of the element.
+     */
+    public function get transformY():Number
+    {
+        return _transformY;
+    }
+
+    public function set transformY(value:Number):void
+    {
+        if (_transformY != value)
+        {
+            _transformY = value;
+            transformChanged = true;
+            invalidateProperties();
+        }
+    }
+
+    private function transformPropertyChangeHandler(event:PropertyChangeEvent):void
+    {
+        if (event.kind == PropertyChangeEventKind.UPDATE)
+        {
+            if (event.property == "matrix")
+            {
+                // Apply matrix
+                if (_transform)
+                {
+                    _matrix = _transform.matrix.clone();
+                    transformChanged = true;
+                    invalidateProperties();
+                }
+            }
+            else if (event.property == "colorTransform")
+            {
+                // Apply colorTranform
+                if (_transform)
+                {
+                    _colorTransform = _transform.colorTransform;
+                    // TODO EGeorgie: figure out what to invalidate when we implement
+                    // colotTransform being applied.
+                    transformChanged = true;
+                    invalidateProperties();
+                }
+            }
+        }
+    }
+
+    //--------------------------------------------------------------------------
+    //
+    //  IGraphicElementHost Implementation
+    //
+    //--------------------------------------------------------------------------
+
+    /**
+     *  @inheritDoc
+     */
+    public function elementChanged(e:IGraphicElement):void
+    {
+        // TODO!!! Optimize
+        invalidateSize();
+        invalidateDisplayList();
+    }
+
+    /**
+     *  @inheritDoc
+     */
+    public function elementSizeChanged(e:IGraphicElement):void
+    {
+        // TODO!!! Optimize
+        invalidateSize();
+        invalidateDisplayList();
+    }
+
+    /**
+     * @inheritDoc
+     */
+    public function elementLayerChanged(e:IGraphicElement):void
+    {
+        // TODO!!! Optimize
+        // TODO!!! Need to recalculate the elements
+        invalidateSize();
+        invalidateDisplayList();
+    }
+
+    /**
+     *  @inheritDoc
+     */
+    public function get parentGraphic():Graphic
+    {
+        return null;
+    }
+
+    /**
+     *  @inheritDoc
+     */
+    public function addMaskElement(mask:DisplayObject, target:IGraphicElement):void
+    {
+
+    }
+
+    /**
+     *  @inheritDoc
+     */
+    public function removeMaskElement(mask:DisplayObject, target:IGraphicElement):void
+    {
+
+    }
+
+    /**
+     *  Helper method to wrap up the changes in a propertyChangeEvent and dispatch it.
+     *
+     *  @param prop Property that's changed
+     *  @param oldValue Old value of the property
+     *  @param value New value of the property
+     */
+    protected function dispatchPropertyChangeEvent(prop:String, oldValue:*, value:*):void
+    {
+        dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, prop, oldValue, value));
+    }
+}
+}


Transferred from the Adobe Open Source Subversion Repository

Revision: 4960
Author:   gosmith@adobe.com
Date:     2009-02-14T02:23:27.721068Z

Log Message:
-----------
Decreased the number of Gumbo style buckets.

Combined AdvancedCharacterFormatTextStyles.as, AdvancedParagraphFormatTextStyles.as, and AdvancedContainerFormatTextStyles.as into AdvancedTextLayoutFormatStyles.as.

Combined BasicCharacterFormatTextStyles.as, BasicParagraphFormatTextStyles.as, and BasicContainerFormatTextStyles.as into BasicTextLayoutFormatStyles.as.

The reason for doing this is that TLF combined its CharacterFormat, ParagraphFormat, and ContainerFormat classes into a single TextLayoutFormat.

QE Notes: None
Doc Notes: None
Bugs: None
Reviewer: None; no functional change

Modified Paths:
--------------
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/styles/metadata/AdvancedCharacterFormatTextStyles.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxScroller.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/styles/metadata/BasicContainerFormatTextStyles.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/styles/metadata/AdvancedParagraphFormatTextStyles.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/TextGraphic.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/styles/metadata/BasicCharacterFormatTextStyles.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxNumericStepper.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/styles/metadata/AdvancedTextLayoutFormatStyles.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/baseClasses/FxTextBase.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/styles/metadata/BasicParagraphFormatTextStyles.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/styles/metadata/AdvancedContainerFormatTextStyles.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/baseClasses/FxSlider.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/TextBox.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxButton.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxDataContainer.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/styles/metadata/BasicTextLayoutFormatStyles.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/baseClasses/GroupBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/TextView.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxContainer.as</path>

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

--- frameworks/projects/spark/src/spark/components/supportClasses/GroupBase.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/GroupBase.as
@@ -41,12 +41,8 @@
 //  Styles
 //--------------------------------------

-include "../../styles/metadata/AdvancedCharacterFormatTextStyles.as"
-include "../../styles/metadata/AdvancedContainerFormatTextStyles.as"
-include "../../styles/metadata/AdvancedParagraphFormatTextStyles.as"
-include "../../styles/metadata/BasicCharacterFormatTextStyles.as"
-include "../../styles/metadata/BasicContainerFormatTextStyles.as"
-include "../../styles/metadata/BasicParagraphFormatTextStyles.as"
+include "../../styles/metadata/AdvancedTextLayoutFormatStyles.as"
+include "../../styles/metadata/BasicTextLayoutFormatStyles.as"
 include "../../styles/metadata/SelectionFormatTextStyles.as"

 /**


Transferred from the Adobe Open Source Subversion Repository

Revision: 12883
Author:   dsubrama@adobe.com
Date:     2009-12-12T23:53:50.782255Z

Log Message:
-----------
Remove the skin classes from the halo theme project to avoid redundancy with the airframework/framework swcs.

QE notes: No
Doc notes: No
Bugs: SDK-24293
Reviewer: Glenn
Tests run: Checkintests, smattering of Halo and AIR mustella tests
Is noteworthy for integration: Yes

Modified Paths:
--------------
<path kind="dir" action="D">/flex/sdk/trunk/frameworks/projects/halo/assets</path>
<path kind="dir" action="D">/flex/sdk/trunk/frameworks/projects/halo/src/mx/skins</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/skins/halo/WindowBackground.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/halo/src/HaloClasses.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/halo/build.xml</path>

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

--- frameworks/projects/framework/src/FrameworkClasses.as
+++ frameworks/projects/framework/src/FrameworkClasses.as
@@ -156,6 +156,7 @@
 	import mx.skins.halo.ToolTipBorder; ToolTipBorder;
 	import mx.skins.ProgrammaticSkin; ProgrammaticSkin;
 	import mx.skins.RectangularBorder; RectangularBorder;
+	import mx.skins.halo.WindowBackground; WindowBackground;
 	import mx.styles.IStyleModule; IStyleModule;
 	import mx.utils.ArrayUtil; ArrayUtil;
 	import mx.utils.DescribeTypeCache; DescribeTypeCache;


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

--- frameworks/projects/framework/src/mx/utils/UIDUtil.as
+++ frameworks/projects/framework/src/mx/utils/UIDUtil.as
@@ -35,6 +35,11 @@
  *  To avoid having this field
  *  in your dynamic object, make it [Bindable], implement the IUID interface
  *  in the object class, or set a <coded>uid</coded> property with a value.

+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 public class UIDUtil
 {
@@ -61,6 +66,11 @@

     /**
      *  This Dictionary records all generated uids for all existing items.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     private static var uidDictionary:Dictionary = new Dictionary(true);

@@ -82,6 +92,11 @@
      *  we can do without player support for UID generation.

      *
      *  @return The newly-generated UID.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public static function createUID():String
     {
@@ -140,6 +155,11 @@
      *
      * @return String representation of the UID, or null if an invalid
      * ByteArray is provided.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public static function fromByteArray(ba:ByteArray):String
     {
@@ -172,6 +192,11 @@
      * @param uid The value to test whether it is formatted as a UID.
      *
      * @return Returns true if the value is formatted as a UID.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public static function isUID(uid:String):Boolean
     {
@@ -210,6 +235,11 @@
      *
      * @return ByteArray 16 bytes in length representing the 128-bits of the
      * UID or null if the uid could not be converted.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public static function toByteArray(uid:String):ByteArray
     {
@@ -246,6 +276,11 @@
      *  @param item Object that we need to find the UID for.
      *
      *  @return The UID that was either found or generated.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public static function getUID(item:Object):String
     {


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


Transferred from the Adobe Open Source Subversion Repository

Revision: 6302
Author:   chaase@adobe.com
Date:     2009-04-27T22:30:05.183971Z

Log Message:
-----------
Deleted old Move/Rotate effects and renamed new AnimateTransformMove/Rotate/Scale effects to Move/Rotate/Scale. Also, renamed AnimateTransformMove3D/Scale3D to Move3D/Scale3D. AnimateTransformRotate3D stays where it is for now (that single class is still in flux).

QE Notes: Mustella will fail on the AnimateTransformMove/Rotate/Scale tests. Those tests should be ported to Move/Rotate/Scale to pass.
Doc Notes: None
Bugs:
Reviewer: Etviim
tests: checkintests

Modified Paths:
--------------
<path kind="file" copyfrom-path="/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/AnimateTransformMove3D.as" copyfrom-rev="6296" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/Move3D.as</path>
<path kind="file" copyfrom-path="/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/AnimateTransformRotate.as" copyfrom-rev="6296" action="R">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/Rotate.as</path>
<path kind="file" copyfrom-path="/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/AnimateTransformScale3D.as" copyfrom-rev="6296" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/Scale3D.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/spark-manifest.xml</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/AnimateTransformMove.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/AnimateTransformScale.as</path>
<path kind="file" copyfrom-path="/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/AnimateTransformMove.as" copyfrom-rev="6296" action="R">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/Move.as</path>
<path kind="file" copyfrom-path="/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/AnimateTransformScale.as" copyfrom-rev="6296" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/Scale.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/AnimateTransformMove3D.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/AnimateTransformRotate.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/AnimateTransformScale3D.as</path>

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

--- frameworks/projects/spark/src/spark/effects/Rotate.as
+++ frameworks/projects/spark/src/spark/effects/Rotate.as
@@ -16,7 +16,7 @@
 import spark.effects.supportClasses.AnimateTransformInstance;

 /**
- *  The AnimateTransformRotate effect rotates a target object
+ *  The Rotate effect rotates a target object
  *  in the x, y plane around the transform center.
  *
  *
If you specify any two of the angle values (angleFrom, angleTo,
@@ -29,12 +29,12 @@
  *
  *  @mxml
  *
- *
The <mx:AnimateTransformRotate> tag
+ *
The <mx:Rotate> tag
  *  inherits all of the tag attributes of its of its superclass,
  *  and adds the following tag attributes:

  *
  *

- *  <mx:AnimateTransformRotate
+ *  <mx:Rotate
  *    id="ID"
  *    angleBy="val"
  *    angleFrom="val"
@@ -47,7 +47,7 @@
  *  @playerversion AIR 1.5
  *  @productversion Flex 4
  */
-public class AnimateTransformRotate extends AnimateTransform
+public class Rotate extends AnimateTransform
 {
     include "../core/Version.as";

@@ -67,7 +67,7 @@
      *  @playerversion AIR 1.5
      *  @productversion Flex 4
      */
-    public function AnimateTransformRotate(target:Object=null)
+    public function Rotate(target:Object=null)
     {
         super(target);
         instanceClass = AnimateTransformInstance;