Transferred from the Adobe Open Source Subversion Repository

Revision: 10693
Author:   aharui@adobe.com
Date:     2009-09-29T20:11:37.031631Z

Log Message:
-----------
Fix disabled state for ControlBar.
Add controlBarVisible property

QE Notes: None
Doc Notes: New controlBarVisible property
Bugs: SDK-23491, SDK-23404
Reviewer: Corey
API Change: Yes
Is noteworthy for integration: No
tests: checkintests mustella/gumbo/components/Panel

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/Panel.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/skins/spark/PanelSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/wireframe/src/spark/skins/wireframe/PanelSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/skins/spark/ApplicationSkin.mxml</path>

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

--- frameworks/projects/spark/src/spark/components/Panel.as
+++ frameworks/projects/spark/src/spark/components/Panel.as
@@ -124,6 +124,11 @@
      */
     private static const LAYOUT_PROPERTY_FLAG:uint = 1 << 1;

+    /**
+     *  @private
+     */
+    private static const VISIBLE_PROPERTY_FLAG:uint = 1 << 2;
+
     //--------------------------------------------------------------------------
     //
     //  Constructor
@@ -170,7 +175,7 @@
      *  controlBarGroupProperties stores booleans as to whether these properties
      *  have been explicitely set or not.
      */
-    private var controlBarGroupProperties:Object = {};
+    private var controlBarGroupProperties:Object = { visible: true };

     //----------------------------------
     //  controlBarGroup
@@ -265,6 +270,46 @@
     }

     //----------------------------------
+    //  controlBarVisible
+    //----------------------------------
+
+    /**
+     *  A flag that controls whether the controlBar is visible.
+     *  The flag has no meaning if there is no controlBarContent.
+     *  The Panel does not monitor the controlBarGroup so if some
+     *  other code makes it invisible, the Panel may not update
+     *  correctly
+     *
+     *  @default true
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
+     */
+    public function get controlBarVisible():Boolean
+    {
+        return (controlBarGroup)
+            ? controlBarGroup.visible
+            : controlBarGroupProperties.visible;
+    }
+
+    public function set controlBarVisible(value:Boolean):void
+    {
+        if (controlBarGroup)
+        {
+            controlBarGroup.visible = value;
+            controlBarGroupProperties = BitFlagUtil.update(controlBarGroupProperties as uint,
+                                                        VISIBLE_PROPERTY_FLAG, value);
+        }
+        else
+            controlBarGroupProperties.visible = value;
+
+        invalidateSkinState();
+        skin.invalidateSize();
+    }
+
+    //----------------------------------
     //  titleField
     //----------------------------------

@@ -366,6 +411,13 @@
                                                                LAYOUT_PROPERTY_FLAG, true);
             }

+            if (controlBarGroupProperties.visible !== undefined)
+            {
+                controlBarGroup.visible = controlBarGroupProperties.visible;
+                newControlBarGroupProperties = BitFlagUtil.update(newControlBarGroupProperties,
+                                                               VISIBLE_PROPERTY_FLAG, true);
+            }
+
             controlBarGroupProperties = newControlBarGroupProperties;
         }
     }
@@ -394,6 +446,9 @@
             if (BitFlagUtil.isSet(controlBarGroupProperties as uint, LAYOUT_PROPERTY_FLAG))
                 newControlBarGroupProperties.layout = controlBarGroup.layout;

+            if (BitFlagUtil.isSet(controlBarGroupProperties as uint, VISIBLE_PROPERTY_FLAG))
+                newControlBarGroupProperties.visible = controlBarGroup.visible;
+
             controlBarGroupProperties = newControlBarGroupProperties;

             controlBarGroup.mxmlContent = null;
@@ -414,12 +469,14 @@
         var state:String = enabled ? "normal" : "disabled";
         if (controlBarGroup)
         {
-            if (BitFlagUtil.isSet(controlBarGroupProperties as uint, CONTROLBAR_PROPERTY_FLAG))
+            if (BitFlagUtil.isSet(controlBarGroupProperties as uint, CONTROLBAR_PROPERTY_FLAG) &&
+                BitFlagUtil.isSet(controlBarGroupProperties as uint, VISIBLE_PROPERTY_FLAG))
                 state += "WithControlBar";
         }
         else
         {
-            if (controlBarGroupProperties.controlBarContent)
+            if (controlBarGroupProperties.controlBarContent &&
+                controlBarGroupProperties.visible)
                 state += "WithControlBar";
         }


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

--- frameworks/projects/spark/src/spark/components/Panel.as
+++ frameworks/projects/spark/src/spark/components/Panel.as
@@ -1,13 +1,3 @@
-////////////////////////////////////////////////////////////////////////////////
-//
-//  ADOBE SYSTEMS INCORPORATED
-//  Copyright 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 spark.components
 {


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

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

 package mx.managers
 {


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

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


Transferred from the Adobe Open Source Subversion Repository

Revision: 18707
Author:   smgilson@adobe.com
Date:     2010-11-18T18:34:25.996019Z

Log Message:
-----------
ASDoc edits for DataGrid

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

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/events/GridCaretEvent.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/events/GridEvent.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/events/GridItemEditorEvent.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/events/GridSelectionEvent.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/events/GridSelectionEventKind.as</path>

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

--- frameworks/projects/spark/src/spark/events/GridSelectionEventKind.as
+++ frameworks/projects/spark/src/spark/events/GridSelectionEventKind.as
@@ -13,7 +13,7 @@
 {

 /**
- *  The GridSelectionEventKind class contains constants for the valid values
+ *  The GridSelectionEventKind class defines constants for the valid values
  *  of the spark.events.GridSelectionEvent class kind property.
  *  These constants indicate the kind of change that was made to the selection.
  *
@@ -22,12 +22,12 @@
  *
  *  @langversion 3.0
  *  @playerversion Flash 10
- *  @playerversion AIR 2.0
+ *  @playerversion AIR 2.5
  *  @productversion Flex 4.5
  */
 public final class GridSelectionEventKind
 {
-	include "../core/Version.as";
+    include "../core/Version.as";

     //--------------------------------------------------------------------------
     //
@@ -40,7 +40,7 @@
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
-     *  @playerversion AIR 2.0
+     *  @playerversion AIR 2.5
      *  @productversion Flex 4.5
      */
     public static const SELECT_ALL:String = "selectAll";
@@ -50,7 +50,7 @@
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
-     *  @playerversion AIR 2.0
+     *  @playerversion AIR 2.5
      *  @productversion Flex 4.5
      */
     public static const CLEAR_SELECTION:String = "clearSelection";
@@ -60,7 +60,7 @@
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
-     *  @playerversion AIR 2.0
+     *  @playerversion AIR 2.5
      *  @productversion Flex 4.5
      */
     public static const SET_ROW:String = "setRow";
@@ -70,7 +70,7 @@
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
-     *  @playerversion AIR 2.0
+     *  @playerversion AIR 2.5
      *  @productversion Flex 4.5
      */
     public static const ADD_ROW:String = "addRow";
@@ -80,7 +80,7 @@
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
-     *  @playerversion AIR 2.0
+     *  @playerversion AIR 2.5
      *  @productversion Flex 4.5
      */
     public static const REMOVE_ROW:String = "removeRow";
@@ -90,7 +90,7 @@
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
-     *  @playerversion AIR 2.0
+     *  @playerversion AIR 2.5
      *  @productversion Flex 4.5
      */
     public static const SET_ROWS:String = "setRows";
@@ -100,7 +100,7 @@
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
-     *  @playerversion AIR 2.0
+     *  @playerversion AIR 2.5
      *  @productversion Flex 4.5
      */
     public static const SET_CELL:String = "setCell";
@@ -110,7 +110,7 @@
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
-     *  @playerversion AIR 2.0
+     *  @playerversion AIR 2.5
      *  @productversion Flex 4.5
      */
     public static const ADD_CELL:String = "addCell";
@@ -120,7 +120,7 @@
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
-     *  @playerversion AIR 2.0
+     *  @playerversion AIR 2.5
      *  @productversion Flex 4.5
      */
     public static const REMOVE_CELL:String = "removeCell";
@@ -130,7 +130,7 @@
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
-     *  @playerversion AIR 2.0
+     *  @playerversion AIR 2.5
      *  @productversion Flex 4.5
      */
     public static const SET_CELL_REGION:String = "setCellRegion";


Transferred from the Adobe Open Source Subversion Repository

Revision: 20661
Author:   mhorn@adobe.com
Date:     2011-03-07T21:41:06.124806Z

Log Message:
-----------
ASdoc updates

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/primitives/supportClasses/GraphicElement.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/globalization/supportClasses/GlobalizationBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/globalization/supportClasses/CollatorBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/globalization/SortingCollator.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/globalization/StringTools.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/primitives/Path.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/globalization/MatchingCollator.as</path>

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

--- frameworks/projects/spark/src/spark/globalization/SortingCollator.as
+++ frameworks/projects/spark/src/spark/globalization/SortingCollator.as
@@ -41,6 +41,11 @@
  *  @includeExample examples/SortingCollatorExample.mxml
  *
  *  @see flash.globalization.Collator
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 10.1
+ *  @playerversion AIR 2.5
+ *  @productversion Flex 4.5
  */
 public class SortingCollator extends CollatorBase
 {


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

--- frameworks/projects/framework/src/mx/core/ClassFactory.as
+++ frameworks/projects/framework/src/mx/core/ClassFactory.as
@@ -68,6 +68,11 @@
  *
  *  @see mx.core.IFactory
  *  @see mx.controls.List
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 public class ClassFactory implements IFactory
 {
@@ -84,6 +89,11 @@
      *
      *  @param generator The Class that the newInstance() method uses
 	 *  to generate objects from this factory object.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public function ClassFactory(generator:Class = null)
     {
@@ -105,6 +115,11 @@
     /**
      *  The Class that the newInstance() method uses
 	 *  to generate objects from this factory object.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public var generator:Class;

@@ -124,6 +139,11 @@
 	 *  100.

 	 *
 	 *  @default null
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public var properties:Object = null;

@@ -141,6 +161,11 @@
 	 *  of the IFactory interface.

 	 *
 	 *  @return The new instance that was created.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public function newInstance():*
 	{


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

--- frameworks/projects/mx/src/mx/effects/RemoveItemAction.as
+++ frameworks/projects/mx/src/mx/effects/RemoveItemAction.as
@@ -0,0 +1,111 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  ADOBE SYSTEMS INCORPORATED
+//  Copyright 2007 Adobe Systems Incorporated
+//  All Rights Reserved.
+//
+//  NOTICE: Adobe permits you to use, modify, and distribute this file
+//  in accordance with the terms of the license agreement accompanying it.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+package mx.effects
+{
+
+import mx.core.mx_internal;
+import mx.effects.effectClasses.PropertyChanges;
+import mx.effects.effectClasses.RemoveItemActionInstance;
+import mx.controls.listClasses.ListBase;
+
+use namespace mx_internal;
+
+//--------------------------------------
+//  Excluded APIs
+//--------------------------------------
+
+[Exclude(name="duration", kind="property")]
+
+/**
+ *  The RemoveItemAction class defines an action effect that determines
+ *  when the item renderer disappears from the control for the item renderer
+ *  of an item being removed from a list-based control, such as List or TileList,
+ *  or for an item that is replaced by a new item added to the control.
+ *  You can use this class as part of defining custom data effect for the
+ *  list-based classes.
+ *
+ *  @mxml
+ *
+ *
The <mx:RemoveItemAction> tag
+ *  inherits all of the tag attributes of its superclass,
+ *  and adds no new tag attributes:

+ *
+ *

+ *  <mx:RemoveItemAction
+ *  />
+ *

+ *
+ *  @see mx.effects.effectClasses.RemoveItemActionInstance
+ *
+ *  @includeExample examples/AddItemActionEffectExample.mxml
+ */
+public class RemoveItemAction extends Effect
+{
+    include "../core/Version.as";
+
+    //--------------------------------------------------------------------------
+    //
+    //  Class constants
+    //
+    //--------------------------------------------------------------------------
+
+    /**
+     *  @private
+     */
+    private static var AFFECTED_PROPERTIES:Array = ["parent"];
+
+    //--------------------------------------------------------------------------
+    //
+    //  Constructor
+    //
+    //--------------------------------------------------------------------------
+
+    /**
+     *  Constructor.
+     *
+     *  @param target The Object to animate with this effect.
+     */
+    public function RemoveItemAction(target:Object = null)
+    {
+        super(target);
+
+        instanceClass = RemoveItemActionInstance;
+    }
+
+    //--------------------------------------------------------------------------
+    //
+    //  Overridden methods
+    //
+    //--------------------------------------------------------------------------
+
+    /**
+     *  @private
+     */
+    override public function getAffectedProperties():Array /* of String */
+    {
+        return AFFECTED_PROPERTIES;
+    }
+
+    /**
+     *  @private
+     */
+    override protected function initInstance(instance:IEffectInstance):void
+    {
+        super.initInstance(instance);
+
+        var actionInstance:RemoveItemActionInstance  =
+            RemoveItemActionInstance(instance);
+
+    }
+}
+
+}


Transferred from the Adobe Open Source Subversion Repository

Revision: 6266
Author:   egeorgie@adobe.com
Date:     2009-04-24T23:09:01.304621Z

Log Message:
-----------
Layout PARB changes

Major (most probably will require updates):
- LayoutBase.getScrollPositionDelta() -> getScrollPositionDeltaToElement()
- HorizontalLayout, VerticalLayout method inView() -> fractionOfElementInView()
- LayoutElementFactory is deleted, interface ILayoutElement is implemented by UIComponent, GraphicElement, VisualSprite, no need for casting in those cases, cast to ILayoutElement in case of type Object.
- TileLayout.elementHorizontalAlign -> horizontalAlign
- TileLayout.elementVerticalAlign -> verticalAlign
- TileJustifyRows -> RowAlign
- TileJustifyColumsn > ColumnAlign
- TileLayout.justifyRows -> rowAlign
- TileLayout.justifyColumns -> columnAling
- TileJustifyRows.NONE, "none" -> TOP, "top"
- TileJustifyRows.GAP_SIZE, "gapSize" -> JUSTIFY_USING_GAP, "justifyUsingGap"
- TileJustifyRows.ROW_SIZE, "rowSize" -> JUSTIFY_USING_HEIGHT, "justifyUsingHeight"
- TileJustifyColumns.NONE, "none" -> LEFT, "left"
- TileJustifyColumns.GAP_SIZE, "gapSize" -> JUSTIFY_USING_GAP, "justifyUsingGap"
- TileJustifyColumns.COLUMN_SIZE, "columnSize" -> JUSTIFY_USING_WIDTH, "justifyUsingWidth"
- TileLayout.set rowCount -> set requestedRowCount
- add TileLayout.get requestedRowCount
- TileLayout.set columnCount -> set requestedColumnCount
- add TileLayout.get requestedColumnCount

Minor (may require updates, but not that probable):
- get baselinePosition() is moved from IVisualElement to ILayoutElement.
- setLayoutBoundsSize() does not have default NaN values for width & height (but still logic is the same).
- name of ILayoutInterface methods' parameter "postTransform" is renamed to "postLayoutTransform".
- name of ILayoutInterface methods' parameter "triggerLayout" is renamed to "invalidateLayout".
- LayoutBase methods invalidateTargetSizeAndDisplayList() and invalidateTargetSize() are removed.
- LayoutBase method getTargetScrollRect() is renamed to getScrollRect().

QE Notes: None
Doc Notes: None
Bugs: None
Reviewer: Hans, Ryan
tests: checkintests, mustella (gumbo/layout, gumbo/group, gumbo/dataGroup)

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/tests/layout/layout_tester.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/DataGroup.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/supportClasses/GraphicElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/layout/supportClasses/LayoutBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/supportClasses/TextGraphicElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/Group.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flash-integration/src/mx/flash/UIMovieClip.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/layout/VerticalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/Ellipse.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/core/SpriteVisualElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/IVisualElement.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/layout/RowAlign.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/framework/src/mx/core/LayoutElementUIComponentUtils.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/layout/TileJustifyRows.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/supportClasses/Animate3DInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/layout/HorizontalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UIComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/ILayoutElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/layout/TileLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/HSlider.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/HScrollBar.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/layout/ColumnAlign.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/layout/supportClasses/LayoutElementFactory.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/ButtonBarHorizontalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/Path.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/Rect.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/layout/TileJustifyColumns.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/layout/BasicLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/core/TextBaseClass.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/VSlider.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/VScrollBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/List.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/layout/supportClasses/Block.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/layout/supportClasses/LinearLayoutVector.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/ScrollerLayout.as</path>

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

--- frameworks/projects/spark/src/spark/layouts/TileLayout.as
+++ frameworks/projects/spark/src/spark/layouts/TileLayout.as
@@ -18,8 +18,8 @@
 import mx.events.PropertyChangeEvent;
 import spark.layout.HorizontalAlign;
 import spark.layout.supportClasses.LayoutBase;
-import spark.layout.TileJustifyColumns;
-import spark.layout.TileJustifyRows;
+import spark.layout.ColumnAlign;
+import spark.layout.RowAlign;
 import spark.layout.TileOrientation;
 import spark.layout.VerticalAlign;

@@ -107,7 +107,7 @@
      *  Horizontal space between columns.
      *
      *  @see #verticalGap
-     *  @see #justifyColumns
+     *  @see #columnAlign
      *  @default 6
      *
      *  @langversion 3.0
@@ -147,7 +147,7 @@
      *  Vertical space between rows.
      *
      *  @see #horizontalGap
-     *  @see #justifyRows
+     *  @see #rowAlign
      *  @default 6
      *
      *  @langversion 3.0
@@ -177,25 +177,54 @@
     //  columnCount
     //----------------------------------

-    private var explicitColumnCount:int = -1;
     private var _columnCount:int = -1;

     [Bindable("propertyChange")]
     [Inspectable(category="General")]

     /**
-     *  Number of columns to be displayed.
      *  This property will contain the actual column count after
      *  updateDisplayList().
+     *
+     *  @see #rowCount
+     *  @see #columnAlign
+     *  @default -1
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
+     */
+    public function get columnCount():int
+    {
+        return _columnCount;
+    }
+
+    //----------------------------------
+    //  requestedColumnCount
+    //----------------------------------
+
+    /**
+     *  @private
+     *  Storage for the requestedColumnCount property.
+     */
+    private var _requestedColumnCount:int = -1;
+
+    [Inspectable(category="General")]
+
+    /**
+     *  Number of columns to be displayed.
+     *  Set to make sure the layout measures a specific number of columns.
+     *
      *  Set to -1 to remove explicit override and allow the TileLayout to determine
      *  the column count automatically.
      *
      *  Setting this property won't have any effect, if orientation is
      *  set to TileOrientation.ROWS, rowCount is explicitly set, and the
      *  container width is explicitly set.
-     *
-     *  @see #rowCount
-     *  @see #justifyColumns
+     *
+     *  @see #columnCount
+     *  @see #columnAlign
      *  @default -1
      *
      *  @langversion 3.0
@@ -203,25 +232,23 @@
      *  @playerversion AIR 1.5
      *  @productversion Flex 4
      */
-    public function get columnCount():int
-    {
-        return _columnCount;
-    }
-
-    /**
-     *  @private
-     */
-    public function set columnCount(value:int):void
-    {
-        // Changing rowCount/columnCount explicit values may affect layout
-        // even if the current actual values are the same
-        if (value == explicitColumnCount)
-            return;
-        explicitColumnCount = value;
-
+    public function get requestedColumnCount():int
+    {
+        return _requestedColumnCount;
+    }
+
+    /**
+     *  @private
+     */
+    public function set requestedColumnCount(value:int):void
+    {
+        if (_requestedColumnCount == value)
+            return;
+
+        _requestedColumnCount = value;
         _columnCount = value;
         invalidateTargetSizeAndDisplayList();
-    }
+    }

     //----------------------------------
     //  rowCount
@@ -231,25 +258,54 @@
      *  @private
      *  Storage for the rowCount property.
      */
-    private var explicitRowCount:int = -1;
     private var _rowCount:int = -1;

     [Bindable("propertyChange")]
     [Inspectable(category="General")]

     /**
-     *  Number of rows to be displayed.
      *  This property will contain the actual row count after
      *  updateDisplayList().
+     *
+     *  @see #requestedRowCount
+     *  @see #columnCount
+     *  @default -1
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
+     */
+    public function get rowCount():int
+    {
+        return _rowCount;
+    }
+
+    //----------------------------------
+    //  requestedRowCount
+    //----------------------------------
+
+    /**
+     *  @private
+     *  Storage for the requestedRowCount property.
+     */
+    private var _requestedRowCount:int = -1;
+
+    [Inspectable(category="General")]
+
+    /**
+     *  Number of rows to be displayed.
+     *  Set to make sure the layout measures a specific number of rows.
+     *
      *  Set to -1 to remove explicit override and allow the TileLayout to determine
      *  the row count automatically.
      *
      *  Setting this property won't have any effect, if orientation is
      *  set to TileOrientation.COLUMNS, columnCount is explicitly set, and the
      *  container height is explicitly set.
-     *
-     *  @see #columnCount
-     *  @see #justifyRows
+     *
+     *  @see #rowCount
+     *  @see #rowAlign
      *  @default -1
      *
      *  @langversion 3.0
@@ -257,25 +313,23 @@
      *  @playerversion AIR 1.5
      *  @productversion Flex 4
      */
-    public function get rowCount():int
-    {
-        return _rowCount;
-    }
-
-    /**
-     *  @private
-     */
-    public function set rowCount(value:int):void
-    {
-        // Changing rowCount/columnCount explicit values may affect layout
-        // even if the current actual values are the same
-        if (value == explicitRowCount)
-            return;
-        explicitRowCount = value;
-
+    public function get requestedRowCount():int
+    {
+        return _requestedRowCount;
+    }
+
+    /**
+     *  @private
+     */
+    public function set requestedRowCount(value:int):void
+    {
+        if (_requestedRowCount == value)
+            return;
+
+        _requestedRowCount = value;
         _rowCount = value;
         invalidateTargetSizeAndDisplayList();
-    }
+    }

     //----------------------------------
     //  columnWidth
@@ -296,11 +350,11 @@
      *  determined from the maximum of elements' width.
      *  Set to NaN to remove explicit override.

      *
-     *  If justifyColumns is set to "columnSize", the actual column width
+     *  If columnAlign is set to "justifyUsingWidth", the actual column width
      *  will grow to justify the fully-visible columns to the container width.
      *
      *  @see #rowHeight
-     *  @see #justifyColumns
+     *  @see #columnAlign
      *  @default NaN
      *
      *  @langversion 3.0
@@ -345,11 +399,11 @@
      *  determined from the maximum of elements' height.
      *  Set to NaN to remove explicit override.

      *
-     *  If justifyRows is set to "rowSize", the actual row height
+     *  If rowAlign is set to "justifyUsingHeight", the actual row height
      *  will grow to justify the fully-visible rows to the container height.
      *
      *  @see #columnWidth
-     *  @see #justifyRows
+     *  @see #rowAlign
      *  @default NaN
      *
      *  @langversion 3.0
@@ -379,7 +433,7 @@
     //  horizontalAlign
     //----------------------------------

-    private var _elementHorizontalAlign:String = HorizontalAlign.JUSTIFY;
+    private var _horizontalAlign:String = HorizontalAlign.JUSTIFY;

     [Bindable("propertyChange")]
     [Inspectable(category="General")]
@@ -402,20 +456,20 @@
      *  @playerversion AIR 1.5
      *  @productversion Flex 4
      */
-    public function get elementHorizontalAlign():String
-    {
-        return _elementHorizontalAlign;
-    }
-
-    /**
-     *  @private
-     */
-    public function set elementHorizontalAlign(value:String):void
-    {
-        if (_elementHorizontalAlign == value)
-            return;
-
-        _elementHorizontalAlign = value;
+    public function get horizontalAlign():String
+    {
+        return _horizontalAlign;
+    }
+
+    /**
+     *  @private
+     */
+    public function set horizontalAlign(value:String):void
+    {
+        if (_horizontalAlign == value)
+            return;
+
+        _horizontalAlign = value;
         invalidateTargetSizeAndDisplayList();
     }

@@ -423,7 +477,7 @@
     //  verticalAlign
     //----------------------------------

-    private var _elementVerticalAlign:String = VerticalAlign.JUSTIFY;
+    private var _verticalAlign:String = VerticalAlign.JUSTIFY;

     [Bindable("propertyChange")]
     [Inspectable(category="General")]
@@ -446,42 +500,42 @@
      *  @playerversion AIR 1.5
      *  @productversion Flex 4
      */
-    public function get elementVerticalAlign():String
-    {
-        return _elementVerticalAlign;
-    }
-
-    /**
-     *  @private
-     */
-    public function set elementVerticalAlign(value:String):void
-    {
-        if (_elementVerticalAlign == value)
-            return;
-
-        _elementVerticalAlign = value;
+    public function get verticalAlign():String
+    {
+        return _verticalAlign;
+    }
+
+    /**
+     *  @private
+     */
+    public function set verticalAlign(value:String):void
+    {
+        if (_verticalAlign == value)
+            return;
+
+        _verticalAlign = value;
         invalidateTargetSizeAndDisplayList();
     }

     //----------------------------------
-    //  justifyColumns
-    //----------------------------------
-
-    private var _justifyColumns:String = TileJustifyColumns.NONE;
-
-    [Inspectable(category="General", enumeration="none,gapSize,columnSize", defaultValue="none")]
+    //  columnAlign
+    //----------------------------------
+
+    private var _columnAlign:String = ColumnAlign.LEFT;
+
+    [Inspectable(category="General", enumeration="left,justifyUsingGap,justifyUsingWidth", defaultValue="left")]

     /**
      *  Specifies how to justify the fully visible columns to the container width.
-     *  ActionScript values can be TileJustifyColumns.NONE, TileJustifyColumns.GAP_SIZE
-     *  and TileJustifyColumns.COLUMN_SIZE.
-     *  MXML values can be "none", "gapSize" and "columnSize".
-     *
-     *
When set to TileJustifyColumns.NONE - turns column justification off, there may
+     *  ActionScript values can be ColumnAlign.LEFT, ColumnAlign.JUSTIFY_USING_GAP
+     *  and ColumnAlign.JUSTIFY_USING_WIDTH.
+     *  MXML values can be "left", "justifyUsingGap" and "justifyUsingWidth".
+     *
+     *
When set to ColumnAlign.LEFT - turns column justification off, there may
      *  be partially visible columns or whitespace between the last column and
      *  the right edge of the container.  This is the default value.

      *
-     *
When set to TileJustifyColumns.GAP_SIZE - the horizontalGap
+     *
When set to ColumnAlign.JUSTIFY_USING_GAP - the horizontalGap
      *  actual value will increase so that
      *  the last fully visible column right edge aligns with the container's right edge.
      *  In case there is only a single fully visible column, the horizontalGap actual value
@@ -490,7 +544,7 @@
      *  justification, but just determines the initial gap value, and after thatn justification
      *  may increases it.

      *
-     *
When set to TileJustifyColumns.COLUMN_SIZE - the columnWidth
+     *
When set to ColumnAlign.JUSTIFY_USING_WIDTH - the columnWidth
      *  actual value will increase so that
      *  the last fully visible column right edge aligns with the container's right edge.  Note that
      *  explicitly setting the columnWidth does not turn off justification, but simply
@@ -498,50 +552,50 @@
      *
      *  @see #horizontalGap
      *  @see #columnWidth
-     *  @see #justifyRows
-     *  @default TileJustifyColumns.NONE
-     *
-     *  @langversion 3.0
-     *  @playerversion Flash 10
-     *  @playerversion AIR 1.5
-     *  @productversion Flex 4
-     */
-    public function get justifyColumns():String
-    {
-        return _justifyColumns;
-    }
-
-    /**
-     *  @private
-     */
-    public function set justifyColumns(value:String):void
-    {
-        if (_justifyColumns == value)
-            return;
-
-        _justifyColumns = value;
+     *  @see #rowAlign
+     *  @default ColumnAlign.LEFT
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
+     */
+    public function get columnAlign():String
+    {
+        return _columnAlign;
+    }
+
+    /**
+     *  @private
+     */
+    public function set columnAlign(value:String):void
+    {
+        if (_columnAlign == value)
+            return;
+
+        _columnAlign = value;
         invalidateTargetSizeAndDisplayList();
     }

     //----------------------------------
-    //  justifyRows
-    //----------------------------------
-
-    private var _justifyRows:String = TileJustifyRows.NONE;
-
-    [Inspectable(category="General", enumeration="none,gapSize,rowSize", defaultValue="none")]
+    //  rowAlign
+    //----------------------------------
+
+    private var _rowAlign:String = RowAlign.TOP;
+
+    [Inspectable(category="General", enumeration="top,justifyUsingGap,justifyUsingHeight", defaultValue="top")]

     /**
      *  Specifies how to justify the fully visible rows to the container height.
-     *  ActionScript values can be TileJustifyRows.NONE, TileJustifyRows.GAP_SIZE
-     *  and TileJustifyRows.ROW_SIZE.
-     *  MXML values can be "none", "gapSize" and "rowSize".
-     *
-     *
When set to TileJustifyRows.NONE - turns column justification off, there may
+     *  ActionScript values can be RowAlign.TOP, RowAlign.JUSTIFY_USING_GAP
+     *  and RowAlign.JUSTIFY_USING_HEIGHT.
+     *  MXML values can be "top", "justifyUsingGap" and "justifyUsingHeight".
+     *
+     *
When set to RowAlign.TOP - turns column justification off, there may
      *  be partially visible rows or whitespace between the last row and
      *  the bottom edge of the container.  This is the default value.

      *
-     *
When set to TileJustifyRows.GAP_SIZE - the verticalGap
+     *
When set to RowAlign.JUSTIFY_USING_GAP - the verticalGap
      *  actual value will increase so that
      *  the last fully visible row bottom edge aligns with the container's bottom edge.
      *  In case there is only a single fully visible row, the verticalGap actual value
@@ -550,7 +604,7 @@
      *  justification, but just determines the initial gap value, and after that justification
      *  may increases it.

      *
-     *
When set to TileJustifyRows.ROW_SIZE - the rowHeight
+     *
When set to RowAlign.JUSTIFY_USING_HEIGHT - the rowHeight
      *  actual value will increase so that
      *  the last fully visible row bottom edge aligns with the container's bottom edge.  Note that
      *  explicitly setting the rowHeight does not turn off justification, but simply
@@ -558,28 +612,28 @@
      *
      *  @see #verticalGap
      *  @see #rowHeight
-     *  @see #justifyColumns
-     *  @default TileJustifyRows.NONE
-     *
-     *  @langversion 3.0
-     *  @playerversion Flash 10
-     *  @playerversion AIR 1.5
-     *  @productversion Flex 4
-     */
-    public function get justifyRows():String
-    {
-        return _justifyRows;
-    }
-
-    /**
-     *  @private
-     */
-    public function set justifyRows(value:String):void
-    {
-        if (_justifyRows == value)
-            return;
-
-        _justifyRows = value;
+     *  @see #columnAlign
+     *  @default RowAlign.TOP
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
+     */
+    public function get rowAlign():String
+    {
+        return _rowAlign;
+    }
+
+    /**
+     *  @private
+     */
+    public function set rowAlign(value:String):void
+    {
+        if (_rowAlign == value)
+            return;
+
+        _rowAlign = value;
         invalidateTargetSizeAndDisplayList();
     }

@@ -674,7 +728,7 @@
      *  @playerversion AIR 1.5
      *  @productversion Flex 4
      */
-    protected function dispatchEventsForActualValueChanges():void
+    private function dispatchEventsForActualValueChanges():void
     {
         if (hasEventListener(PropertyChangeEvent.PROPERTY_CHANGE))
         {
@@ -714,7 +768,7 @@
      *  @playerversion AIR 1.5
      *  @productversion Flex 4
      */
-    protected function updateActualValues(width:Number, height:Number):void
+    private function updateActualValues(width:Number, height:Number):void
     {
         // First, figure the tile size
         calculateTileSize();
@@ -728,22 +782,22 @@
         _verticalGap = explicitVerticalGap;

         // Justify
-        switch(justifyColumns)
-        {
-            case TileJustifyColumns.GAP_SIZE:
+        switch (columnAlign)
+        {
+            case ColumnAlign.JUSTIFY_USING_GAP:
                 _horizontalGap = justifyByGapSize(width, _columnWidth, _horizontalGap, _columnCount);
             break;
-            case TileJustifyColumns.COLUMN_SIZE:
+            case ColumnAlign.JUSTIFY_USING_WIDTH:
                 _columnWidth = justifyByElementSize(width, _columnWidth, _horizontalGap, _columnCount);
             break;
         }

-        switch(justifyRows)
-        {
-            case TileJustifyRows.GAP_SIZE:
+        switch (rowAlign)
+        {
+            case RowAlign.JUSTIFY_USING_GAP:
                 _verticalGap = justifyByGapSize(height, _rowHeight, _verticalGap, _rowCount);
             break;
-            case TileJustifyRows.ROW_SIZE:
+            case RowAlign.JUSTIFY_USING_HEIGHT:
                 _rowHeight = justifyByElementSize(height, _rowHeight, _verticalGap, _rowCount);
             break;
         }
@@ -754,12 +808,12 @@
         // and the count along the major axis.
         // Note that we do this *after* justification is taken into account as we want to
         // justify based on the explicit user settings.
-        if (-1 != explicitColumnCount && -1 != explicitRowCount)
+        if (-1 != _requestedColumnCount && -1 != _requestedRowCount)
         {
             if (orientation == TileOrientation.ROWS)
-                _rowCount = Math.max(_rowCount, Math.ceil(elementCount / Math.max(1, explicitColumnCount)));
+                _rowCount = Math.max(_rowCount, Math.ceil(elementCount / Math.max(1, _requestedColumnCount)));
             else
-                _columnCount = Math.max(_columnCount, Math.ceil(elementCount / Math.max(1, explicitRowCount)));
+                _columnCount = Math.max(_columnCount, Math.ceil(elementCount / Math.max(1, _requestedRowCount)));
         }
     }

@@ -782,20 +836,20 @@
     /**
      *  @private
      *  Calculates _columnCount and _rowCount based on width, height,
-     *  orientation, explicitColumnCount, explicitRowCount, _columnWidth, _rowHeight.
+     *  orientation, _requestedColumnCount, _requestedRowCount, _columnWidth, _rowHeight.
      *  _columnWidth and _rowHeight must be valid before calling.
      */
     private function calculateColumnAndRowCount(width:Number, height:Number, elementCount:int):void
     {
         _columnCount = _rowCount = -1;

-        if (-1 != explicitColumnCount || -1 != explicitRowCount)
-        {
-            if (-1 != explicitRowCount)
-                _rowCount = Math.max(1, explicitRowCount);
-
-            if (-1 != explicitColumnCount)
-                _columnCount = Math.max(1, explicitColumnCount);
+        if (-1 != _requestedColumnCount || -1 != _requestedRowCount)
+        {
+            if (-1 != _requestedRowCount)
+                _rowCount = Math.max(1, _requestedRowCount);
+
+            if (-1 != _requestedColumnCount)
+                _columnCount = Math.max(1, _requestedColumnCount);
         }
         // Figure out number of columns or rows based on the explicit size along one of the axes
         else if (!isNaN(width) && (orientation == TileOrientation.ROWS || isNaN(height)))
@@ -1148,7 +1202,7 @@
      *  @playerversion AIR 1.5
      *  @productversion Flex 4
      */
-    protected function sizeAndPositionElement(element:ILayoutElement,
+    private function sizeAndPositionElement(element:ILayoutElement,
                                               cellX:int,
                                               cellY:int,
                                               cellWidth:int,
@@ -1158,14 +1212,14 @@
         var childHeight:Number = NaN;

         // Determine size of the element
-        if (elementHorizontalAlign == "justify")
+        if (horizontalAlign == "justify")
             childWidth = cellWidth;
         else if (!isNaN(element.percentWidth))
             childWidth = Math.round(cellWidth * element.percentWidth * 0.01);
         else
             childWidth = element.getPreferredBoundsWidth();

-        if (elementVerticalAlign == "justify")
+        if (verticalAlign == "justify")
             childHeight = cellHeight;
         else if (!isNaN(element.percentHeight))
             childHeight = Math.round(cellHeight * element.percentHeight * 0.01);
@@ -1183,7 +1237,7 @@
         element.setLayoutBoundsSize(childWidth, childHeight);

         var x:Number = cellX;
-        switch (elementHorizontalAlign)
+        switch (horizontalAlign)
         {
             case "right":
                 x += cellWidth - element.getLayoutBoundsWidth();
@@ -1195,7 +1249,7 @@
         }

         var y:Number = cellY;
-        switch (elementVerticalAlign)
+        switch (verticalAlign)
         {
             case "bottom":
                 y += cellHeight - element.getLayoutBoundsHeight();
@@ -1245,6 +1299,29 @@
     {
         return Math.min(target.contentHeight, rowIndex * (_rowHeight + _verticalGap) + _rowHeight);
     }
+
+    /**
+     *  @private
+     *  Convenience function for subclasses that invalidates the
+     *  target's size and displayList so that both layout's measure()
+     *  and updateDisplayList methods get called.
+     *
+     *
Typically a layout invalidates the target's size and display list so that
+     *  it gets a chance to recalculate the target's default size and also size and
+     *  position the target's elements. For example changing the gap
+     *  property on a VerticalLayout will internally call this method
+     *  to ensure that the elements are re-arranged with the new setting and the
+     *  target's default size is recomputed.

+     */
+    private function invalidateTargetSizeAndDisplayList():void
+    {
+        var g:GroupBase = target;
+        if (!g)
+            return;
+
+        g.invalidateSize();
+        g.invalidateDisplayList();
+    }

     //--------------------------------------------------------------------------
     //
@@ -1280,8 +1357,8 @@
         updateActualValues(layoutTarget.explicitWidth, layoutTarget.explicitHeight);

         // For measure, any explicit overrides for rowCount and columnCount take precedence
-        var columnCount:int = explicitColumnCount != -1 ? Math.max(1, explicitColumnCount) : _columnCount;
-        var rowCount:int = explicitRowCount != -1 ? Math.max(1, explicitRowCount) : _rowCount;
+        var columnCount:int = _requestedColumnCount != -1 ? Math.max(1, _requestedColumnCount) : _columnCount;
+        var rowCount:int = _requestedRowCount != -1 ? Math.max(1, _requestedRowCount) : _rowCount;

         layoutTarget.measuredWidth = Math.round(columnCount * (_columnWidth + _horizontalGap) - _horizontalGap);
         layoutTarget.measuredHeight = Math.round(rowCount * (_rowHeight + _verticalGap) - _verticalGap);


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

--- frameworks/projects/framework/src/mx/managers/IHistoryManager.as
+++ frameworks/projects/framework/src/mx/managers/IHistoryManager.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: 3021
Author:   gosmith@adobe.com
Date:     2008-08-28T01:56:25.254704Z

Log Message:
-----------
Integrated TCAL SWCs from Build 159 to get scrolling improvements.

Reviewer: Glenn
Bugs: -
QA: No
Doc: No

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/component/TextView.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/libs/text_importExport.swc</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/libs/text_model.swc</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/component/TextInput.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/component/NumericStepper.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/libs/text_edit.swc</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/events/TextOperationEvent.as</path>

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

--- frameworks/projects/spark/src/spark/events/TextOperationEvent.as
+++ frameworks/projects/spark/src/spark/events/TextOperationEvent.as
@@ -14,7 +14,7 @@

 import flash.events.Event;

-import text.edit.FlowOperation;
+import text.operations.FlowOperation;

 /**
  *  Represents events that are dispatched when text content


Fix typo in WMTS layer to XML logic.

Fix typo in WMTS layer to XML logic.

--- src/com/esri/builder/model/ConfigLayer.as
+++ src/com/esri/builder/model/ConfigLayer.as
@@ -984,7 +984,7 @@
                     version={wmtsLayer.version}
                     imageformat={wmtsLayer.imageFormat}
                     url={wmtsLayer.url}
-                    useproxy={tiledLyr.proxyURL != null}/>;
+                    useproxy={wmtsLayer.proxyURL != null}/>;
             if (wmtsLayer.refreshInterval > 0)
             {
                 lyrXML.@autorefresh = minutesToSeconds(wmtsLayer.refreshInterval);


Add trailing forward slash if missing from Portal URL.

--- src/com/esri/builder/model/PortalModel.as
+++ src/com/esri/builder/model/PortalModel.as
@@ -58,6 +58,7 @@
         cleanURL = StringUtil.trim(cleanURL);
         cleanURL = replacePreviousDefaultPortalURL(cleanURL);
         cleanURL = cleanURL.replace(/\/sharing\/content\/items\/?$/i, '');
+        cleanURL = cleanURL.charAt(cleanURL.length - 1) == "/" ? cleanURL : cleanURL + "/";
         cleanURL = URLUtil.encode(cleanURL);
         return cleanURL;
     }


Int defaulted to NaN, which is a Number, thus failing...

git-svn-id: c197267f952b24206666de142881703007ca05d5@13173 b35dd754-fafc-0310-a699-88a17e54d16e

--- src/org/igniterealtime/xiff/core/XMPPConnection.as
+++ src/org/igniterealtime/xiff/core/XMPPConnection.as
@@ -782,7 +782,7 @@
 		 * @param	code Legacy code
 		 * @param	extension
 		 */
-		protected function dispatchError( condition:String, message:String, type:String, code:int = NaN, extension:Extension=null ):void
+		protected function dispatchError( condition:String, message:String, type:String, code:int = 0, extension:Extension=null ):void
 		{
 			var event:XIFFErrorEvent = new XIFFErrorEvent();
 			event.errorCondition = condition;


Moved "Manage or browse data" higher in menu

--- WeaveUI/src/weave/application/VisApplication.as
+++ WeaveUI/src/weave/application/VisApplication.as
@@ -754,6 +754,9 @@
 					_weaveMenu.addMenuItemToMenu(_dataMenu, new WeaveMenuItem(lang("Browse Data"), AttributeSelectorPanel.open));
 				}

+				if (Weave.properties.enableManageDataSources.value)
+					_weaveMenu.addMenuItemToMenu(_dataMenu, new WeaveMenuItem(lang("Manage or browse data"), DraggablePanel.openStaticInstance, [DataSourceManager]));
+
 				if (Weave.properties.enableRefreshHierarchies.value)
 				{
 					_weaveMenu.addMenuItemToMenu(_dataMenu,
@@ -767,9 +770,6 @@
 					);
 				}

-				if (Weave.properties.enableManageDataSources.value)
-					_weaveMenu.addMenuItemToMenu(_dataMenu, new WeaveMenuItem(lang("Manage or browse data"), DraggablePanel.openStaticInstance, [DataSourceManager]));
-
 				if (Weave.properties.enableExportCSV.value)
 					_weaveMenu.addMenuItemToMenu(_dataMenu, new WeaveMenuItem(lang("Export CSV from all visualizations"), exportCSV));
 			}


Transferred from the Adobe Open Source Subversion Repository

Revision: 3695
Author:   gosmith@adobe.com
Date:     2008-10-16T21:24:44.841539Z

Log Message:
-----------
Reverted a recent optimization in TextGraphic and TextView which made them use a static instance of an ITextImporter of type TCAL_FORMAT. This exposed a TCAL bug with repeated use of a single instance of this kind of importer. I'll restore the optimization when the problem is fixed in TCAL.

Reviewer: Deepa
Bugs: SDK-17386
QA: No
Doc: No

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

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

--- frameworks/projects/spark/src/spark/components/RichText.as
+++ frameworks/projects/spark/src/spark/components/RichText.as
@@ -75,20 +75,6 @@

     //--------------------------------------------------------------------------
     //
-    //  Class variables
-    //
-    //--------------------------------------------------------------------------
-
-    /**
-     *  @private
-     *  Since this static var gets initialized by calling a method
-     *  in another class, we initialize it in the constructor to avoid
-     *  any class-initialization-order problems.
-     */
-    private static var textImporter:ITextImporter;
-
-    //--------------------------------------------------------------------------
-    //
     //  Constructor
     //
     //--------------------------------------------------------------------------
@@ -99,9 +85,6 @@
     public function TextGraphic()
     {
         super();
-
-        if (!textImporter)
-            textImporter = TextFilter.getImporter(TextFilter.TCAL_FORMAT);

         _content = textFlow = createEmptyTextFlow();
     }
@@ -422,7 +405,7 @@
                  markup +
                  '</TextFlow>';

-        return textImporter.importToFlow(markup);
+        return TextFilter.importToFlow(markup, TextFilter.TCAL_FORMAT);
     }

     /**


Transferred from the Adobe Open Source Subversion Repository

Revision: 7910
Author:   egeorgie@adobe.com
Date:     2009-06-17T01:41:55.138890Z

Log Message:
-----------
P-ARB changes:

* IGraphicElement sharedIndex -> DisplayObjectSharingMode
* ScrollUnit -> NavigationUnit
* LayoutBase.getDestinationIndex -> LayoutBase.getNavigationDestinationIndex, param order reversed!!!!
* mouseOpaque -> mouseEnabledWhereTransparent
* various other small renames and changes to non-public APIs

Doc Notes: None
Bugs: N/A
Reviewer: Deepa
tests: checkintests

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/Scroller.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/DataGroup.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/supportClasses/GraphicElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/development/eclipse/flex/flex4test/src/layouts/WheelLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/DropDownList.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/fxg/FlexFXG2SWFTranscoder.java</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/RichEditableText.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/InvalidatingSprite.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/HScrollBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/core/IViewport.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/supportClasses/TextGraphicElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/Group.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/core/ScrollUnit.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/layouts/HorizontalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/core/NavigationUnit.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/core/IGraphicElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/SkinnableDataContainer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/layouts/TileLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/VScrollBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/SkinnableContainer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/List.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/layouts/supportClasses/LayoutBase.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/core/DisplayObjectSharingMode.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/GroupBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/layouts/VerticalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UIComponent.as</path>

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

--- frameworks/projects/spark/src/spark/components/Scroller.as
+++ frameworks/projects/spark/src/spark/components/Scroller.as
@@ -26,7 +26,7 @@
 import mx.core.IVisualElement;
 import mx.core.IVisualElementContainer;
 import mx.core.ScrollPolicy;
-import spark.core.ScrollUnit;
+import spark.core.NavigationUnit;
 import mx.events.PropertyChangeEvent;
 import mx.managers.IFocusManagerComponent;
 import flash.display.InteractiveObject;
@@ -704,22 +704,22 @@
             switch (event.keyCode)
             {
                 case Keyboard.UP:
-                     vspDelta = vp.getVerticalScrollPositionDelta(ScrollUnit.UP);
+                     vspDelta = vp.getVerticalScrollPositionDelta(NavigationUnit.UP);
                      break;
                 case Keyboard.DOWN:
-                     vspDelta = vp.getVerticalScrollPositionDelta(ScrollUnit.DOWN);
+                     vspDelta = vp.getVerticalScrollPositionDelta(NavigationUnit.DOWN);
                      break;
                 case Keyboard.PAGE_UP:
-                     vspDelta = vp.getVerticalScrollPositionDelta(ScrollUnit.PAGE_UP);
+                     vspDelta = vp.getVerticalScrollPositionDelta(NavigationUnit.PAGE_UP);
                      break;
                 case Keyboard.PAGE_DOWN:
-                     vspDelta = vp.getVerticalScrollPositionDelta(ScrollUnit.PAGE_DOWN);
+                     vspDelta = vp.getVerticalScrollPositionDelta(NavigationUnit.PAGE_DOWN);
                      break;
                 case Keyboard.HOME:
-                     vspDelta = vp.getVerticalScrollPositionDelta(ScrollUnit.HOME);
+                     vspDelta = vp.getVerticalScrollPositionDelta(NavigationUnit.HOME);
                      break;
                 case Keyboard.END:
-                     vspDelta = vp.getVerticalScrollPositionDelta(ScrollUnit.END);
+                     vspDelta = vp.getVerticalScrollPositionDelta(NavigationUnit.END);
                      break;
             }
             if (!isNaN(vspDelta))
@@ -735,26 +735,26 @@
             switch (event.keyCode)
             {
                 case Keyboard.LEFT:
-                    hspDelta = vp.getHorizontalScrollPositionDelta(ScrollUnit.LEFT);
+                    hspDelta = vp.getHorizontalScrollPositionDelta(NavigationUnit.LEFT);
                     break;
                 case Keyboard.RIGHT:
-                    hspDelta = vp.getHorizontalScrollPositionDelta(ScrollUnit.RIGHT);
+                    hspDelta = vp.getHorizontalScrollPositionDelta(NavigationUnit.RIGHT);
                     break;
                 case Keyboard.HOME:
-                    hspDelta = vp.getHorizontalScrollPositionDelta(ScrollUnit.HOME);
+                    hspDelta = vp.getHorizontalScrollPositionDelta(NavigationUnit.HOME);
                     break;
                 case Keyboard.END:
-                    hspDelta = vp.getHorizontalScrollPositionDelta(ScrollUnit.END);
+                    hspDelta = vp.getHorizontalScrollPositionDelta(NavigationUnit.END);
                     break;
                 // If there's no vertical scrollbar, then map page up/down to
                 // page left,right
                 case Keyboard.PAGE_UP:
                      if (!verticalScrollBar || !(verticalScrollBar.visible))
-                         hspDelta = vp.getHorizontalScrollPositionDelta(ScrollUnit.PAGE_LEFT);
+                         hspDelta = vp.getHorizontalScrollPositionDelta(NavigationUnit.PAGE_LEFT);
                      break;
                 case Keyboard.PAGE_DOWN:
                      if (!verticalScrollBar || !(verticalScrollBar.visible))
-                         hspDelta = vp.getHorizontalScrollPositionDelta(ScrollUnit.PAGE_RIGHT);
+                         hspDelta = vp.getHorizontalScrollPositionDelta(NavigationUnit.PAGE_RIGHT);
                      break;
             }
             if (!isNaN(hspDelta))
@@ -795,17 +795,17 @@
             return;*/

         var nSteps:uint = Math.abs(event.delta);
-        var scrollUnit:uint;
+        var navigationUnit:uint;

         // Scroll event.delta "steps".  If the VSB is up, scroll vertically,
         // if -only- the HSB is up then scroll horizontally.

         if (verticalScrollBar && verticalScrollBar.visible)
         {
-            scrollUnit = (event.delta < 0) ? ScrollUnit.DOWN : ScrollUnit.UP;
+            navigationUnit = (event.delta < 0) ? NavigationUnit.DOWN : NavigationUnit.UP;
             for(var vStep:int = 0; vStep < nSteps; vStep++)
             {
-                var vspDelta:Number = vp.getVerticalScrollPositionDelta(scrollUnit);
+                var vspDelta:Number = vp.getVerticalScrollPositionDelta(navigationUnit);
                 if (!isNaN(vspDelta))
                     vp.verticalScrollPosition += vspDelta;
             }
@@ -813,10 +813,10 @@
         }
         else if (horizontalScrollBar && horizontalScrollBar.visible)
         {
-            scrollUnit = (event.delta < 0) ? ScrollUnit.LEFT : ScrollUnit.RIGHT;
+            navigationUnit = (event.delta < 0) ? NavigationUnit.LEFT : NavigationUnit.RIGHT;
             for(var hStep:int = 0; hStep < nSteps; hStep++)
             {
-                var hspDelta:Number = vp.getHorizontalScrollPositionDelta(scrollUnit);
+                var hspDelta:Number = vp.getHorizontalScrollPositionDelta(navigationUnit);
                 if (!isNaN(hspDelta))
                     vp.horizontalScrollPosition += hspDelta;
             }


Transferred from the Adobe Open Source Subversion Repository

Revision: 3916
Author:   gosmith@adobe.com
Date:     2008-10-27T22:45:53.541205Z

Log Message:
-----------
Renamed the getAttributes() and setAttributes() methods of TextView and FxTextArea to getSelectionFormat() and setSelectionFormat(), to match the spec.

Also, the contentWidth, contentHeight, horizontalScrollPosition, and verticalScrollPosition properties of TextView now implement binding using a PropertyChangeEvent, because this is what a Scroller expects. As part of this, I've moved the dispatchPropertyChangeEvent() utility method from GroupBase to UIComponent.

QE Notes: None
Doc Notes: None
Bugs: None
Reviewer: Hans

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxTextArea.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UIComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/TextView.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/baseClasses/GroupBase.as</path>

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

--- frameworks/projects/spark/src/spark/components/TextArea.as
+++ frameworks/projects/spark/src/spark/components/TextArea.as
@@ -417,23 +417,23 @@
 	/**
 	 *  Documentation is not currently available.
 	 */
-    public function getAttributes(names:Array = null):Object
+    public function getSelectionFormat(names:Array = null):Object
     {
         if (!textView)
             return null;

-        return textView.getAttributes(names);
-    }
-
-	/**
-	 *  Documentation is not currently available.
-	 */
-    public function setAttributes(attributes:Object):void
+        return textView.getSelectionFormat(names);
+    }
+
+	/**
+	 *  Documentation is not currently available.
+	 */
+    public function setSelectionFormat(attributes:Object):void
     {
         if (!textView)
             return;

-        textView.setAttributes(attributes);
+        textView.setSelectionFormat(attributes);
     }

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


Transferred from the Adobe Open Source Subversion Repository

Revision: 2905
Author:   clucier@adobe.com
Date:     2008-08-19T20:45:59.993275Z

Log Message:
-----------
Changes to allow UIComponent to take advantage of the new bindable filters (bindable wrappers around DropShadowFilter, GlowFilter, etc. that will force the filter stack to be re-evaluated when one or more of the filter parameters change). Checkin-tests: PASS
Reviewer: Jason
Bugs: SDK-16311
QA: Yes

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/graphics/Parser.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/filters/ConvolutionFilter.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/filters/BaseDimensionFilter.as</path>
<path kind="file" copyfrom-path="/flex/sdk/trunk/frameworks/projects/flex4/src/flex/filters/BaseDimensionFilter.as" copyfrom-rev="2873" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/filters/BaseDimensionFilter.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/filters/IBitmapFilter.as</path>
<path kind="file" copyfrom-path="/flex/sdk/trunk/frameworks/projects/flex4/src/flex/filters/IBitmapFilter.as" copyfrom-rev="2873" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/filters/IBitmapFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/filters/GradientGlowFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/graphics/graphicsClasses/GraphicElement.as</path>
<path kind="dir" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/filters</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/graphics/BitmapGraphic.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/filters/BevelFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/filters/GradientFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/filters/ColorMatrixFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/filters/BlurFilter.as</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/filters/DisplacementMapFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/graphics/StrokedElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/filters/GlowFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/tools/dependencychecker/flex/tools/dependencychecker/FrameworkSwcDependencyRules.java</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/filters/BaseFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/filters/DropShadowFilter.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/flex4/src/flex/filters/GradientBevelFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UIComponent.as</path>
<path kind="file" copyfrom-path="/flex/sdk/trunk/frameworks/projects/flex4/src/flex/filters/BaseFilter.as" copyfrom-rev="2873" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/filters/BaseFilter.as</path>

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

--- frameworks/projects/spark/src/spark/filters/BevelFilter.as
+++ frameworks/projects/spark/src/spark/filters/BevelFilter.as
@@ -4,6 +4,8 @@
 import flash.filters.BevelFilter;
 import flash.filters.BitmapFilter;
 import flash.filters.BitmapFilterType;
+import mx.filters.BaseDimensionFilter;
+import mx.filters.IBitmapFilter;

 public class BevelFilter extends BaseDimensionFilter implements IBitmapFilter
 {


Transferred from the Adobe Open Source Subversion Repository

Revision: 2998
Author:   hmuller@adobe.com
Date:     2008-08-26T15:32:00.001204Z

Log Message:
-----------
In the layout classes, only set the Group layoutTarget's scrollRect
when a scrolling request is implied, i.e. when
vertical,horizontalScrollPosition isn't zero, or when the Group's
contentWidth,Height is bigger than its unscaled width,height.
At the moment, the code for doing this is a static function on BasicLayout
that's also used by Vertical,HorizontalLayout.  If a layout utilities
class was defined, BasicLayout.setScrollRect() should move there.

This change should mitigate the number of bugs caused by
unconditionally clipping Groups to their width,height.  Unfortunately,
because of line stroke widths and anti-aliasing, many skins
currently draw outside of their measured bounds.

QE: No
Doc: No
Checkintests: Pass
Reviewer: Chet

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/layout/BasicLayout.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/layout/VerticalLayout.as</path>

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

--- frameworks/projects/spark/src/spark/layouts/BasicLayout.as
+++ frameworks/projects/spark/src/spark/layouts/BasicLayout.as
@@ -25,6 +25,44 @@
 public class BasicLayout implements ILayout
 {
     include "../core/Version.as";
+
+    //--------------------------------------------------------------------------
+    //
+    //  Class methods
+    //
+    //--------------------------------------------------------------------------
+
+    /**
+     * Layout class utility function used by updateDisplayList functions.
+     * Conditionally sets the origin of the specified Group's scrollRect to
+     * verticalScrollPosition,horizontalScrollPosition and its width
+     * width,height to 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.
+     */
+	static function setScrollRect(g:Group, unscaledWidth:Number, unscaledHeight:Number):void
+	{
+	    var r:Rectangle = g.scrollRect;
+	    if (r != null)
+	    {
+			r.width = unscaledWidth;
+			r.height = unscaledHeight;
+			g.scrollRect = r;
+	    }
+	    else // scrollRect wasn't set
+	    {
+			var hsp:Number = g.horizontalScrollPosition;
+			var vsp:Number = g.verticalScrollPosition;
+			var cw:Number = g.contentWidth;
+			var ch:Number = g.contentHeight;
+			// don't set the scrollRect needlessly
+			if ((hsp != 0) || (vsp != 0) || (cw > unscaledWidth) || (ch > unscaledHeight))
+			    g.scrollRect = new Rectangle(hsp, vsp, unscaledWidth, unscaledHeight);
+	    }
+	}
+

     //--------------------------------------------------------------------------
     //
@@ -209,19 +247,8 @@
             // Set position
             layoutItem.setActualPosition(childX, childY);
         }
-        var r:Rectangle = layoutTarget.scrollRect;
-        if (r != null)
-        {
-            r.width = unscaledWidth;
-            r.height = unscaledHeight;
-            layoutTarget.scrollRect = r;
-        }
-        else
-        {
-        	var rx:Number = layoutTarget.horizontalScrollPosition;
-        	var ry:Number = layoutTarget.verticalScrollPosition;
-        	layoutTarget.scrollRect = new Rectangle(rx, ry, unscaledWidth, unscaledHeight);
-        }
+
+        setScrollRect(layoutTarget, unscaledWidth, unscaledHeight);
     }
 }


Transferred from the Adobe Open Source Subversion Repository

Revision: 3082
Author:   clucier@adobe.com
Date:     2008-09-03T18:12:36.277296Z

Log Message:
-----------
Adding patent id markers to source files per request from legal.
QA: No

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/states/AddItems.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/states/SetEventHandler.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/states/SetStyle.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/gen/StatesGenerator.java</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/states/SetProperty.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/states/State.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/rep/StatesModel.java</path>

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

--- frameworks/projects/framework/src/mx/states/State.as
+++ frameworks/projects/framework/src/mx/states/State.as
@@ -6,6 +6,8 @@
 //
 //  NOTICE: Adobe permits you to use, modify, and distribute this file
 //  in accordance with the terms of the license agreement accompanying it.
+//
+//  AdobePatentID="B770"
 //
 ////////////////////////////////////////////////////////////////////////////////


workaround for voronoi bug

workaround for voronoi bug

--- WeaveUISpark/src/weave/visualization/plotters/AnchorPlotter.as
+++ WeaveUISpark/src/weave/visualization/plotters/AnchorPlotter.as
@@ -49,7 +49,7 @@
 	import weave.utils.BitmapText;
 	import weave.utils.LinkableTextFormat;
 	import weave.visualization.plotters.styles.SolidFillStyle;
-	import weave.visualization.plotters.styles.SolidLineStyle;
+	import weave.visualization.plotters.styles.SolidLineStyle;

 	/**
 	 * AnchorPlotter
@@ -419,6 +419,8 @@
 				var p:Point = new Point(anchor.x.value, anchor.y.value);
 				dataBounds.projectPointTo(p, screenBounds);
 				vertices.push(p);
+				p.x += 0.0000001 * vertices.length;
+				p.y += 0.0000001 * vertices.length;
 				counter++;
 			}

@@ -427,7 +429,7 @@
 			dataBounds.projectPointTo(barycenter, screenBounds);

 			vertices.push(barycenter);
-
+
 			edges = v.GetEdges(vertices, screenBounds.getWidth(), screenBounds.getHeight());

 			graphics.lineStyle(1, 0x888888);
@@ -436,7 +438,6 @@
 			   graphics.moveTo(edges[i].start.x, edges[i].start.y);
 			   graphics.lineTo(edges[i].end  .x, edges[i].end  .y);
 			}
-
 		}

 		override public function getDataBoundsFromRecordKey(recordKey:IQualifiedKey, output:Array):void


computed inner and outer radius...

computed inner and outer radius...

--- WeaveUISpark/src/weave/visualization/plotters/RadVizPlotter.as
+++ WeaveUISpark/src/weave/visualization/plotters/RadVizPlotter.as
@@ -644,20 +644,46 @@
 				dataBounds.projectPointTo(coordinate, screenBounds);
 				var normArray:Array = (localNormalization.value) ? keyNormMap[key] : keyGlobalNormMap[key];

-				var value:Number;
+				var linkLengths:Array = [];
+				var innerRadius:Number = 0;
+				var outerRadius:Number = 0;
+				var temp:Number = 0;
 				for (var i:int = 0; i < _cols.length; i++)
 				{
 					var column:IAttributeColumn = _cols[i];
-					trace(_cols[i]);
 					var stats:IColumnStatistics = WeaveAPI.StatisticsCache.getColumnStatistics(column);
-					value = normArray ? normArray[i] : stats.getNorm(key);
-					trace(value);
-					dataBounds.projectPointTo(tempPoint, screenBounds);
-					graphics.lineStyle(.5, 0xff0000);
-					graphics.drawCircle(coordinate.x, coordinate.y, 30);
-
-					graphics.endFill();
-				}
+					var value:Number = normArray ? normArray[i] : stats.getNorm(key);
+					if(!isNaN(value))
+					{
+						linkLengths.push(value);
+					}
+
+				}
+
+				outerRadius = Math.max.apply(null, linkLengths);
+
+				for (i = 0; i < linkLengths.length; i++)
+				{
+					if (linkLengths[i] != outerRadius){
+						temp += linkLengths[i];
+					}
+				}
+
+				innerRadius = outerRadius - temp;
+
+				if (innerRadius < 0) {
+					innerRadius = 0;
+				}
+
+				outerRadius = outerRadius * radiusConstant.value;
+				innerRadius = innerRadius * radiusConstant.value;
+				dataBounds.projectPointTo(tempPoint, screenBounds);
+
+				graphics.lineStyle(.5, 0xff0000);
+				dataBounds.projectPointTo(coordinate, screenBounds);
+				graphics.drawCircle(coordinate.x, coordinate.y, outerRadius);
+				graphics.drawCircle(coordinate.x, coordinate.y, innerRadius);
+				graphics.endFill();
 			}
 		}


Added array getter for indexed access to the bytes and framework access to the platform-specific implementation

--- frameworks/projects/Core/src/main/flex/org/apache/flex/utils/BinaryData.as
+++ frameworks/projects/Core/src/main/flex/org/apache/flex/utils/BinaryData.as
@@ -72,6 +72,42 @@
 		return bd;
 	}

+    /**
+     *  Gets a reference to the internal array of bytes.
+     *  On the Flash side, this is  a ByteArray.
+     *  On the JS side, it's a Uint8Array.
+     *  This is primarily used for indexed access to the bytes, and internally
+     *  where the platform-specific implementation is significant.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion FlexJS 0.7.0
+     */
+     COMPILE::SWF
+     public function get array():ByteArray
+     {
+        return ba;
+     }
+
+    /**
+     *  Gets a reference to the internal array of bytes.
+     *  On the Flash side, this is  a ByteArray.
+     *  On the JS side, it's a Uint8Array.
+     *  This is primarily used for indexed access to the bytes, and internally
+     *  where the platform-specific implementation is significant.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10.2
+     *  @playerversion AIR 2.6
+     *  @productversion FlexJS 0.7.0
+     */
+     COMPILE::JS
+     public function get array():Uint8Array
+     {
+        return getTypedArray();
+     }
+
 	private var _endian:String = Endian.DEFAULT;

 	/**
@@ -291,15 +327,22 @@
 		}
 		COMPILE::JS
 		{
-			if(typedArray == null)
-				typedArray = new Uint8Array(ba);
-			return typedArray[idx];
+			return getTypedArray()[idx];
 		}
 	}
 	COMPILE::JS
 	{
-		private var typedArray:Uint8Array;
-	}
+		private var _typedArray:Uint8Array;
+	}
+    COMPILE::JS
+    {
+        private function getTypedArray():Uint8Array
+        {
+            if(_typedArray == null)
+                _typedArray = new Uint8Array(ba);
+                return _typedArray;
+        }
+    }

 	/**
 	 *  Writes a byte of binary data at the specified index. Does not change the position property.
@@ -319,9 +362,7 @@
 			}
 			COMPILE::JS
 			{
-				if(typedArray == null)
-					typedArray = new Uint8Array(ba);
-				typedArray[idx] = byte;
+				getTypedArray()[idx] = byte;
 			}
 	}

@@ -463,7 +504,7 @@
         var view:Uint8Array = new Uint8Array(ba, 0, Math.min(newSize,n));
         newView.set(view);
         ba = newBuffer;
-		typedArray = null;
+		_typedArray = null;
     }
     /**
      *  The total number of bytes remaining to be read.
@@ -557,7 +598,7 @@
                     newView[i] = view[i];
                 }
                 ba = newBuffer;
-				typedArray = null;
+				_typedArray = null;
             }
         }
 	}
@@ -707,7 +748,7 @@
                 var encoder:TextEncoder = new TextEncoder('utf-8');
                 bytes = encoder.encode(str);
                 ba = bytes.buffer;
-				typedArray = null;
+				_typedArray = null;
                 return;
             }

@@ -745,7 +786,7 @@
             }
             bytes = new Uint8Array(out);
             ba = bytes.buffer;
-			typedArray = null;
+			_typedArray = null;
         }
     }
 }


Transferred from the Adobe Open Source Subversion Repository

Revision: 7065
Author:   smgilson@adobe.com
Date:     2009-05-19T12:27:36.799816Z

Log Message:
-----------
ASDoc updates for styles

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

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/NumericStepper.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/Scroller.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/CheckBox.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/SkinnableContainer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/RadioButton.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/layouts/BasicLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/List.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/TextArea.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/Spinner.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/GroupBase.as</path>

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

--- frameworks/projects/spark/src/spark/components/supportClasses/GroupBase.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/GroupBase.as
@@ -117,7 +117,7 @@

 /**
  *  Color of any symbol of a component. Examples include the check mark of a CheckBox or
- *  the arrow of a FxScrollButton
+ *  the arrow of a scroll button
  *
  *  @default 0x000000
  *