Transferred from the Adobe Open Source Subversion Repository

Revision: 5185
Author:   anshulg@adobe.com
Date:     2009-03-06T10:41:04.284205Z

Log Message:
-----------
Checking in to get message agent(for endpoint url) in network monitor (for FB). We tested these changes with check in tests for network monitor. This has been reviewed by Seth Hodgson.FB 14940 fixed with this change. No change in documentation in SDK. This needs to be backported to SDK3 (for support for SDK3 as well). This backporting is done.

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/MessageAgent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/netmon/NetworkMonitor.as</path>

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

--- frameworks/projects/rpc/src/mx/netmon/NetworkMonitor.as
+++ frameworks/projects/rpc/src/mx/netmon/NetworkMonitor.as
@@ -187,10 +187,10 @@
      *  @productversion Flex 3
      */
     public static function monitorInvocation(id:String,
-											 invocationMessage:Object):void
+											 invocationMessage:Object, messageAgent:Object):void
     {
         if (monitorInvocationImpl != null)
-			monitorInvocationImpl(id, invocationMessage);
+			monitorInvocationImpl(id, invocationMessage, messageAgent);
     }

     /**


Updated denominator handling in inverse interpolation

git-svn-id: 6aa7ccb0a2048310a30f08a72aaff4ca39d980ed@168 91848ab2-c4ae-4e4f-8e6a-6a52ea0dccc3

--- flare/src/flare/util/Maths.as
+++ flare/src/flare/util/Maths.as
@@ -258,7 +258,7 @@
         public static function invLinearInterp(x:Number, min:Number, max:Number):Number
         {
             var denom:Number = (max - min);
-            return (denom < EPSILON ? 0 : (x - min) / denom);
+            return (denom < EPSILON && denom > -EPSILON ? 0 : (x - min) / denom);
         }

         /**
@@ -275,7 +275,7 @@
         {
             min = symLog(min, b);
             var denom:Number = symLog(max, b) - min;
-            return (denom < EPSILON ? 0.5 : (symLog(x, b) - min) / denom);
+            return (denom < EPSILON && denom > -EPSILON ? 0 : (symLog(x, b) - min) / denom);
         }

         /**
@@ -292,7 +292,7 @@
         {
             min = adjLog(min, b);
             var denom:Number = adjLog(max, b) - min;
-            return (denom < EPSILON ? 0.5 : (adjLog(x, b) - min) / denom);
+            return (denom < EPSILON && denom > -EPSILON ? 0 : (adjLog(x, b) - min) / denom);
         }

         /**
@@ -308,7 +308,7 @@
         {
             min = symSqrt(min);
             var denom:Number = symSqrt(max) - min;
-            return (denom < EPSILON ? 0.5 : (symSqrt(x) - min) / denom);
+            return (denom < EPSILON && denom > -EPSILON ? 0 : (symSqrt(x) - min) / denom);
         }

         /**
@@ -325,7 +325,7 @@
         {
             min = symRoot(min,p);
             var denom:Number = symRoot(max,p) - min;
-            return (denom < EPSILON ? 0.5 : (symRoot(x,p) - min) / denom);
+            return (denom < EPSILON  && denom > -EPSILON ? 0 : (symRoot(x,p) - min) / denom);
         }

 		/**


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

--- frameworks/projects/mx/src/mx/skins/halo/LinkButtonSkin.as
+++ frameworks/projects/mx/src/mx/skins/halo/LinkButtonSkin.as
@@ -17,6 +17,11 @@

 /**
  *  The skin for all the states of a LinkButton.
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 public class LinkButtonSkin extends Border
 {
@@ -30,6 +35,11 @@

 	/**
 	 *  Constructor.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public function LinkButtonSkin()
 	{


Transferred from the Adobe Open Source Subversion Repository

Revision: 18038
Author:   hmuller@adobe.com
Date:     2010-10-06T20:10:48.132975Z

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

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

Updated DataGrid skin part ASDoc.

Removed ColumnHeaderBarSkin.

Changed GridEvent itemRenderer property type from IVisualElement to IGridItemRenderer.

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

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

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

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

--- frameworks/projects/spark/src/spark/components/DataGrid.as
+++ frameworks/projects/spark/src/spark/components/DataGrid.as
@@ -351,6 +351,7 @@
         "columnSeparator",
         "headerColumnSeparator",
         "hoverIndicator",
+        "rowBackground",
         "rowSeparator",
         "selectionIndicator"];

@@ -362,7 +363,7 @@
     [SkinPart(required="false", type="mx.core.IFactory")]

     /**
-     *  A reference to IVisualElement used to render the alternatingRowColors style
+     *  The IVisualElement class used to render the alternatingRowColors style
      */
     public var alternatingRowColorsBackground:IFactory;

@@ -374,7 +375,7 @@
     [SkinPart(required="false", type="mx.core.IFactory")]

     /**
-     *  Used to render the alternatingRowColors style.
+     *  The IVisualElement class used to render the grid's caret indicator.
      */
     public var caretIndicator:IFactory;

@@ -398,7 +399,7 @@
     [SkinPart(required="false", type="mx.core.IFactory")]

     /**
-     *  Used to render the vertical separator between columns.
+     *  The IVisualElement class used to render the vertical separator between columns.
      */
     public var columnSeparator:IFactory;

@@ -435,7 +436,7 @@
     [SkinPart(required="false", type="mx.core.IFactory")]

     /**
-     *  Used to render the vertical separator between column headers.
+     *  The IVisualElement class used to render the vertical separator between header columns.
      */
     public var headerColumnSeparator:IFactory;

@@ -447,19 +448,31 @@
     [SkinPart(required="false", type="mx.core.IFactory")]

     /**
-     *  Used to provide mouse hover feedback.
+     *  The IVisualElement class used to provide hover feedback.
      */
     public var hoverIndicator:IFactory;

     //----------------------------------
-    //  rowSeparator
+    //  rowBackground
     //----------------------------------

     [Bindable]
     [SkinPart(required="false", type="mx.core.IFactory")]

     /**
-     *  Used to render the horizontal separator between rows.
+     *  The IVisualElement class used to render the background of each row.
+     */
+    public var rowBackground:IFactory;
+
+    //----------------------------------
+    //  rowSeparator
+    //----------------------------------
+
+    [Bindable]
+    [SkinPart(required="false", type="mx.core.IFactory")]
+
+    /**
+     *  The IVisualElement class used to render the horizontal separator between header rows.
      */
     public var rowSeparator:IFactory;

@@ -483,7 +496,7 @@
     [SkinPart(required="false", type="mx.core.IFactory")]

     /**
-     *  Used to render selected rows or cells.
+     *  The IVisualElement class used to render selected rows or cells.
      */
     public var selectionIndicator:IFactory;

@@ -538,7 +551,8 @@
         typicalItem: uint(1 << 9),
         variableRowHeight: uint(1 << 10),
         dataTipField: uint(1 << 11),
-        dataTipFunction: uint(1 << 12)
+        dataTipFunction: uint(1 << 12),
+        resizableColumns: uint(1 << 13)
     };

     /**
@@ -562,6 +576,7 @@
         columns: null,
         dataProvider: null,
         itemRenderer: null,
+        resizableColumns: true,
         requestedRowCount: int(10),
         requestedColumnCount: int(-1),
         requestedMinRowCount: int(-1),
@@ -1335,6 +1350,31 @@
     }

     //----------------------------------
+    //  resizableColumns(delegates to grid.resizableColumns)
+    //----------------------------------
+
+    /**
+     *  @copy spark.components.Grid#resizableColumns
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 2.0
+     *  @productversion Flex 4.5
+     */
+    public function get resizableColumns():Boolean
+    {
+        return getGridProperty("resizableColumns");
+    }
+
+    /**
+     *  @private
+     */
+    public function set resizableColumns(value:Boolean):void
+    {
+        setGridProperty("resizableColumns", value);
+    }
+
+    //----------------------------------
     //  rowHeight(delegates to grid.rowHeight)
     //----------------------------------

@@ -1561,7 +1601,7 @@
      *  unless the event is dispatched to it.
      */
     override protected function keyDownHandler(event:KeyboardEvent):void
-    {
+    {
         // If the key is passed down to the Scroller it will come back here when
         // it bubbles back up.  It may or may not have default prevented.
         if (event.eventPhase != EventPhase.AT_TARGET)
@@ -3190,7 +3230,7 @@
     }

     /**
-     *  @copy spark.components.supportClasses.Grid#ensureIndexIsVisible
+     *  @copy spark.components.supportClasses.Grid#ensureCellIsVisible
      *
      *  @langversion 3.0
      *  @playerversion Flash 10


Transferred from the Adobe Open Source Subversion Repository

Revision: 17145
Author:   hmuller@adobe.com
Date:     2010-07-30T23:52:04.178841Z

Log Message:
-----------
The default property of DataGrid is now dataProvider.

QE notes:
Doc notes:
Bugs: SDK-27161
Reviewer:
Tests run: none
Is noteworthy for integration: no

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

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

--- frameworks/projects/spark/src/spark/components/DataGrid.as
+++ frameworks/projects/spark/src/spark/components/DataGrid.as
@@ -177,8 +177,9 @@
  *  @productversion Flex 4.5
  */
 [Event(name="caretChange", type="spark.events.GridCaretEvent")]
-

+[DefaultProperty("dataProvider")]
+
 /**
  *  TBD
  */


Transferred from the Adobe Open Source Subversion Repository

Revision: 18173
Author:   jasonsj@adobe.com
Date:     2010-10-15T17:03:20.801634Z

Log Message:
-----------
Mobile Theme Initial check-in

* New light-look visuals from XD
* Changed airmobile-config.xml to use standalone Mobile theme instead of Spark overlay
* Added theme="spark, mobile" where spark was already white-listed and support is implemented and/or planned for Mobile/spark.css (see https://zerowing.corp.adobe.com/display/flexmobile/Mobile+Theme+Styles+Spec)
* MobileSkin has symbolColor and chromeColor support. Override beginChromeColorFill and drawChromeColor when defining custom chromeColor visuals.
* CheckBox and RadioButton now have chromeColor and symbolColor support
* Added textShadowColor and textShadowAlpha support to Button and ActionBar
* Added chromeColor support to HScrollBar and VScrollBar

QE notes: All mobile skins have been updaetd.
Doc notes: Update mobile skinning documentation for new APIs
Bugs:
SDK-28043 Investigate usage of "viewWidth", "viewHeight" for the Flex Mobile Skin Assets
SDK-27609 Mobile scroll bar skins should use chromeColor
SDK-27646 cornerradius has no effect on button in mobile application
Reviewer: gruehle
Tests run: checkintests
Is noteworthy for integration: Yes

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/VScrollBarTrackSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/MobileSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/defaults.css</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/ActionBarSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/Button.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/styles/metadata/BorderStyles.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/assets/CheckBox_symbol.fxg</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/ActionButtonSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/Image.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/SkinnableComponent.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/assets/RadioButton_symbol.fxg</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/assets/Button_up.fxg</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/styles/metadata/ContainerBackgroundStyles.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/CheckBox.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/Group.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/components/ActionBar.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/assets/CheckBox_up.fxg</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/ButtonBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/SkinnableTextBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/ActionBarButtonSkinBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/HScrollBarThumbSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/SkinnableDataContainer.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/assets/RadioButton_up.fxg</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/assets/TextInput_border.fxg</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/SliderBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/ButtonSkinBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/assets/Button_down.fxg</path>
<path kind="file" action="D">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/assets/CheckBox_upSelected.fxg</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/SkinnableContainer.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/List.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/skins/spark/DefaultItemRenderer.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/TextInputSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/assets/RadioButton_upSelected.fxg</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/VScrollBarThumbSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/GroupBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/assets/CheckBox_down.fxg</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/ButtonSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/TextAreaSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/Scroller.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/ViewMenuItemSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/assets/RadioButton_down.fxg</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/HScrollBarTrackSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/controls/ToolTip.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/RadioButton.as</path>
<path kind="file" action="D">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/assets/CheckBox_downSelected.fxg</path>
<path kind="file" action="D">/private/flex/sdk/branches/hero_private/frameworks/themes/Mobile/spark.css</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/SelectableButtonSkinBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/airmobile-config.xml</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/CheckBoxSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/assets/RadioButton_downSelected.fxg</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/RadioButtonSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/NavigationButtonSkin.as</path>

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

--- frameworks/projects/spark/src/spark/components/Scroller.as
+++ frameworks/projects/spark/src/spark/components/Scroller.as
@@ -66,7 +66,7 @@
  *  @playerversion AIR 1.5
  *  @productversion Flex 4
  */
-[Style(name="alternatingItemColors", type="Array", arrayType="uint", format="Color", inherit="yes", theme="spark")]
+[Style(name="alternatingItemColors", type="Array", arrayType="uint", format="Color", inherit="yes", theme="spark, mobile")]

 /**
  *  The alpha of the content background for this component.
@@ -76,7 +76,7 @@
  *  @playerversion AIR 1.5
  *  @productversion Flex 4
  */
-[Style(name="contentBackgroundAlpha", type="Number", inherit="yes", theme="spark")]
+[Style(name="contentBackgroundAlpha", type="Number", inherit="yes", theme="spark, mobile")]

 /**
  *  @copy spark.components.supportClasses.GroupBase#style:contentBackgroundColor
@@ -86,7 +86,7 @@
  *  @playerversion AIR 1.5
  *  @productversion Flex 4
  */
-[Style(name="contentBackgroundColor", type="uint", format="Color", inherit="yes", theme="spark")]
+[Style(name="contentBackgroundColor", type="uint", format="Color", inherit="yes", theme="spark, mobile")]

 /**
  *  @copy spark.components.supportClasses.GroupBase#style:focusColor
@@ -96,7 +96,7 @@
  *  @playerversion AIR 1.5
  *  @productversion Flex 4
  */
-[Style(name="focusColor", type="uint", format="Color", inherit="yes", theme="spark")]
+[Style(name="focusColor", type="uint", format="Color", inherit="yes", theme="spark, mobile")]

 /**
  *  Indicates under what conditions the horizontal scroll bar is displayed.
@@ -149,7 +149,7 @@
  *  @playerversion AIR 1.5
  *  @productversion Flex 4
  */
-[Style(name="symbolColor", type="uint", format="Color", inherit="yes", theme="spark")]
+[Style(name="symbolColor", type="uint", format="Color", inherit="yes", theme="spark, mobile")]

 /**
  *  When in touch interaction mode, the number of milliseconds to wait before showing the


Refactored Data to include DataList helper class
Updated tests, demos, and operators to new Data syntax
Created new Sort object instances to encapsulate sort criteria

git-svn-id: 6aa7ccb0a2048310a30f08a72aaff4ca39d980ed@54 91848ab2-c4ae-4e4f-8e6a-6a52ea0dccc3

--- flare.query/flare/query/Query.as
+++ flare.query/flare/query/Query.as
@@ -12,8 +12,7 @@
 		private var _orderby:Array;
 		private var _groupby:Array;
 		private var _where:Expression;
-
-		private var _sorter:Function;
+		private var _sort:Sort;
 		private var _aggrs:Array;

 		/**
@@ -37,11 +36,11 @@
 			_where = where;
 			_orderby = orderby;
 			_groupby = groupby;
-			_sorter = sorter();
+			_sort = sorter();
 			_aggrs = aggregates();
 		}

-		private function sorter():Function
+		private function sorter():Sort
 		{
 			var s:Array = [], i:int;
 			if (_groupby != null) {
@@ -52,7 +51,7 @@
 				for (i=0; i<_orderby.length; ++i)
 					s.push(_orderby[i]);
 			}
-			return s.length==0 ? null : Sort.sorter(s);
+			return s.length==0 ? null : new Sort(s);
 		}

 		private function aggregates():Array
@@ -101,8 +100,8 @@
 				});
 			}
 			// sort the result set
-			if (_sorter != null) {
-				Sort.sort(results, _sorter);
+			if (_sort != null) {
+				_sort.sort(results);
 			}

 			if (_select == null) return results;


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

--- frameworks/projects/rpc/src/mx/messaging/channels/amfx/AMFXEncoder.as
+++ frameworks/projects/rpc/src/mx/messaging/channels/amfx/AMFXEncoder.as
@@ -0,0 +1,472 @@
+/*************************************************************************
+ *
+ * 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.
+ */
+package mx.messaging.channels.amfx
+{
+
+import flash.utils.ByteArray;
+import flash.utils.describeType;
+import flash.utils.IExternalizable;
+import flash.xml.XMLDocument;
+
+import mx.logging.Log;
+import mx.utils.HexEncoder;
+import mx.utils.ObjectProxy;
+import mx.utils.ObjectUtil;
+
+[ExcludeClass]
+/**
+ * Serializes an arbitrary ActionScript object graph to an XML
+ * representation that is based on Action Message Format (AMF)
+ * version 3.
+ * @private
+ */
+public class AMFXEncoder
+{
+    public function AMFXEncoder()
+    {
+        super();
+        settings = {};
+        settings.prettyPrinting = false;
+    }
+
+    public function encode(obj:Object, headers:Array = null):XML
+    {
+        XML.setSettings(settings);
+        var xml:XML = new XML("<amfx />");
+        xml.setNamespace(NAMESPACE);
+        xml.@["ver"] = CURRENT_VERSION;
+
+        var context:AMFXContext = new AMFXContext();
+        context.log = Log.getLogger("mx.messaging.channels.amfx.AMFXEncoder");
+        encodePacket(xml, obj, headers, context);
+
+        return xml;
+    }
+
+    private static function encodePacket(xml:XML, obj:Object, headers:Array = null, context:AMFXContext = null):void
+    {
+        if (headers)
+        {
+            encodeHeaders(xml, headers, context);
+        }
+
+        encodeBody(xml, obj, context);
+    }
+
+    private static function encodeHeaders(xml:XML, headers:Array, context:AMFXContext):void
+    {
+        for (var i:uint = 0; i < headers.length; i++)
+        {
+            var header:Object = headers[i];
+            var element:XML = <header />;
+            element.@["name"] = header.name;
+            element.@["mustUnderstand"] = (header.mustUnderstand == true);
+            encodeValue(element, header.content, context);
+            xml.appendChild(element);
+        }
+    }
+
+    private static function encodeBody(xml:XML, obj:*, context:AMFXContext):void
+    {
+        var element:XML = <body />;
+        //element.@["targetURI"] = ""; //TODO: Support this attribute
+        encodeValue(element, obj, context);
+        xml.appendChild(element);
+    }
+
+    public static function encodeValue(xml:XML, obj:*, context:AMFXContext):void
+    {
+        if (obj != null)
+        {
+            if (obj is String)
+            {
+                encodeString(xml, String(obj), context);
+            }
+            else if (obj is Number)
+            {
+                encodeNumber(xml, Number(obj));
+            }
+            else if (obj is Boolean)
+            {
+                encodeBoolean(xml, Boolean(obj));
+            }
+            else if (obj is ByteArray)
+            {
+                encodeByteArray(xml, ByteArray(obj));
+            }
+            else if (obj is Array)
+            {
+                encodeArray(xml, obj as Array, context);
+            }
+            else if (obj is XML || obj is XMLDocument)
+            {
+                encodeXML(xml, obj);
+            }
+            else if (obj is Date)
+            {
+                encodeDate(xml, obj as Date, context);
+            }
+            else if (obj is Class)
+            {
+                //TODO: Throw errors for unsupported types?
+                if (context.log)
+                    context.log.warn("Cannot serialize type Class");
+            }
+            else
+            {
+                encodeObject(xml, obj, context);
+            }
+        }
+        else if (obj === undefined)
+        {
+            xml.appendChild(X_UNDEFINED.copy());
+        }
+        else
+        {
+            xml.appendChild(X_NULL.copy());
+        }
+    }
+
+
+    private static function encodeArray(xml:XML, array:Array, context:AMFXContext):void
+    {
+        var ref:int = context.findObject(array);
+        var element:XML;
+        if (ref >= 0)
+        {
+            element = <ref />
+            element.@["id"] = String(ref);
+        }
+        else
+        {
+            //Remember array object
+            context.addObject(array);
+
+            element = <array />;
+
+            var named:Object = {};
+            var ordinal:Array = [];
+            var isECMAArray:Boolean = false;
+
+            // Separate named and ordinal array members
+            for (var member:String in array)
+            {
+                if (isNaN(Number(member)))
+                {
+                    named[member] = array[member];
+                    isECMAArray = true;
+                }
+                else
+                {
+                    var num:int = parseInt(member);
+                    ordinal[num] = array[num];
+                }
+            }
+
+            // Encode named items as early as possible
+            for (var n:String in named)
+            {
+                encodeArrayItem(element, n, named[n], context);
+            }
+
+            var ordinalLength:uint = 0;
+            var dense:Boolean = true;
+            for (var i:uint = 0; i < ordinal.length; i++)
+            {
+                var o:* = ordinal[i];
+
+                // If we have an undefined slot remaining ordinal
+                // keys will be converted to named keys to preserve dense set
+                if (o !== undefined)
+                {
+                    if (dense)
+                    {
+                        encodeValue(element, o, context);
+                        ordinalLength++;
+                    }
+                    else
+                    {
+                        isECMAArray = true;
+                        encodeArrayItem(element, String(i), o, context);
+                    }
+                }
+                else
+                {
+                    dense = false;
+                }
+            }
+
+            element.@["length"] = String(ordinalLength);
+
+            if (isECMAArray)
+            {
+                element.@["ecma"] = "true";
+            }
+        }
+
+        xml.appendChild(element);
+    }
+
+    private static function encodeArrayItem(xml:XML, name:String, value:*, context:AMFXContext):void
+    {
+        var item:XML = <item />;
+        item.@["name"] = name;
+        encodeValue(item, value, context);
+        xml.appendChild(item);
+    }
+
+    private static function encodeBoolean(xml:XML, bool:Boolean):void
+    {
+        if (bool)
+        {
+            xml.appendChild(X_TRUE.copy());
+        }
+        else
+        {
+            xml.appendChild(X_FALSE.copy());
+        }
+    }
+
+
+    private static function encodeByteArray(xml:XML, obj:ByteArray):void
+    {
+        var element:XML = <bytearray/>;
+        var encoder:HexEncoder = new HexEncoder();
+        encoder.encode(obj);
+        var encoded:String = encoder.flush();
+        element.appendChild(encoded);
+        xml.appendChild(element);
+    }
+
+    private static function encodeDate(xml:XML, date:Date, context:AMFXContext):void
+    {
+        var ref:int = context.findObject(date);
+        var element:XML;
+        if (ref >= 0)
+        {
+            element = <ref />
+            element.@["id"] = String(ref);
+        }
+        else
+        {
+            //Remember date object
+            context.addObject(date);
+
+            element = <date />;
+            element.appendChild(new XML(date.getTime().toString()));
+        }
+        xml.appendChild(element);
+    }
+
+    private static function encodeNumber(xml:XML, num:Number):void
+    {
+        var element:XML = null;
+        if (num is int || num is uint)
+        {
+            element = <int />;
+        }
+        else
+        {
+            element = <double />;
+        }
+        element.appendChild(new XML(num.toString()));
+        xml.appendChild(element);
+
+    }
+
+    private static function encodeObject(xml:XML, obj:*, context:AMFXContext):void
+    {
+        var ref:int = context.findObject(obj);
+        var element:XML;
+        if (ref >= 0)
+        {
+            element = <ref />
+            element.@["id"] = String(ref);
+        }
+        else
+        {
+            //Remember object
+            context.addObject(obj);
+
+            element = <object />;
+
+            var classInfo:Object = ObjectUtil.getClassInfo(obj, null, CLASS_INFO_OPTIONS);
+            var className:String = classInfo.name;
+            var classAlias:String = classInfo.alias;
+            var properties:Array = classInfo.properties;
+            var count:uint = properties.length;
+
+            // We need to special case ObjectProxy as for serialization we actually need the
+            // remote alias of ObjectProxy, not the wrapped object.
+            if (obj is ObjectProxy)
+            {
+                var cinfo:XML = describeType(obj);
+                className = cinfo.@name.toString();
+                classAlias = cinfo.@alias.toString();
+            }
+
+            var remoteClassName:String = ((classAlias != null) ? classAlias : className);
+
+            if (remoteClassName && remoteClassName != "Object" && remoteClassName != "Array")
+            {
+                element.@["type"] = remoteClassName.replace(REGEX_CLASSNAME, ".");
+            }
+
+            if (obj is IExternalizable)
+            {
+                classInfo.externalizable = true;
+                encodeTraits(element, classInfo, context);
+
+                var ext:IExternalizable = IExternalizable(obj);
+                var ba:ByteArray = new ByteArray();
+                ext.writeExternal(ba);
+                encodeByteArray(element, ba);
+            }
+            else
+            {
+                classInfo.externalizable = false;
+                encodeTraits(element, classInfo, context);
+
+                for (var i:uint = 0; i < count; i++)
+                {
+                    var prop:String = properties[i];
+                    encodeValue(element, obj[prop], context);
+                }
+            }
+        }
+
+        xml.appendChild(element);
+    }
+
+    private static function encodeString(xml:XML, str:String, context:AMFXContext, isTrait:Boolean = false):void
+    {
+        var ref:int = context.findString(str);
+        var element:XML = <string />;
+        if (ref >= 0)
+        {
+            element.@["id"] = String(ref);
+        }
+        else
+        {
+            //Remember string
+            context.addString(str);
+
+            if (str.length > 0)
+            {
+                // Traits won't contain chars that need escaping
+                if (!isTrait)
+                    str = escapeXMLString(str);
+
+                var x:XML = new XML(str);
+                element.appendChild(x);
+            }
+        }
+        xml.appendChild(element);
+    }
+
+    private static function encodeTraits(xml:XML, classInfo:Object, context:AMFXContext):void
+    {
+        var element:XML = <traits />;
+
+        var ref:int = context.findTraitInfo(classInfo);
+        if (ref >= 0)
+        {
+            element.@["id"] = String(ref);
+        }
+        else
+        {
+            //Remember trait info
+            context.addTraitInfo(classInfo)
+
+            if (classInfo.externalizable)
+            {
+                element.@["externalizable"] = "true";
+            }
+            else
+            {
+                var properties:Array = classInfo.properties;
+                if (properties != null)
+                {
+                    var count:uint = properties.length;
+                    for (var i:uint = 0; i < count; i++)
+                    {
+                        var prop:String = properties[i];
+                        encodeString(element, prop, context, true);
+                    }
+                }
+            }
+        }
+
+        xml.appendChild(element);
+    }
+
+    private static function encodeXML(xml:XML, xmlObject:Object):void
+    {
+        var element:XML = <xml />;
+        var str:String;
+        if (xmlObject is XML)
+            str = XML(xmlObject).toXMLString();
+        else
+            str = xmlObject.toString();
+
+        if (str.length > 0)
+        {
+            str = escapeXMLString(str);
+            var x:XML = new XML(str);
+            element.appendChild(x);
+        }
+        xml.appendChild(element);
+    }
+
+    private static function escapeXMLString(str:String):String
+    {
+        if (str.length > 0)
+        {
+            if ((str.indexOf("<") != -1) || (str.indexOf("&") != -1))
+            {
+                if (str.indexOf("]]>") != -1)
+                {
+                    str = str.replace(REGEX_CLOSE_CDATA, "]]>");
+                }
+
+                str = "<![CDATA[" + str + "]]>";
+            }
+        }
+
+        return str;
+    }
+
+    private var settings:Object;
+
+    public static const CURRENT_VERSION:uint = 3;
+    public static const NAMESPACE_URI:String = "http://www.macromedia.com/2005/amfx";
+    public static const NAMESPACE:Namespace = new Namespace("", NAMESPACE_URI);
+
+    private static const REGEX_CLASSNAME:RegExp = new RegExp("\\:\\:", "g");
+    private static const REGEX_CLOSE_CDATA:RegExp = new RegExp("]]>", "g");
+
+    private static const CLASS_INFO_OPTIONS:Object = {includeReadOnly:false, includeTransient:false};
+
+    private static const X_FALSE:XML = <false />;
+    private static const X_NULL:XML = <null />;
+    private static const X_TRUE:XML = <true />;
+    private static const X_UNDEFINED:XML = <undefined />;
+}
+
+}


Transferred from the Adobe Open Source Subversion Repository

Revision: 21594
Author:   deeptika@adobe.com
Date:     2011-07-18T11:39:38.158141Z

Log Message:
-----------
Changing the style setting mechanism in charts (moving to defaults.css) to fix memory leak in charts.
QE notes:
Doc notes:
Bugs: FLEXDMV-2626 (Views with charts not getting GC-ed)
Reviewer:
Tests run: Mustella test suite for charts - cyclone tested by QE
Is noteworthy for integration:

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/charts/charts.css</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/charts/src/mx/charts/chartClasses/CartesianChart.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/charts/src/mx/charts/chartClasses/ChartBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/charts/src/mx/charts/series/AreaSeries.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/charts/src/mx/charts/BubbleChart.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/charts/src/mx/charts/chartClasses/PolarChart.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/charts/src/mx/charts/ColumnChart.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/charts/charts-4.X.0.css</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/charts/src/mx/charts/GridLines.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/charts/src/mx/charts/series/PieSeries.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/charts/src/mx/charts/series/PlotSeries.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/charts/src/mx/charts/BarChart.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/charts/src/mx/charts/series/CandlestickSeries.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/charts/src/mx/charts/AreaChart.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/charts/src/mx/charts/series/HLOCSeries.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/charts/src/mx/charts/AxisRenderer.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/charts/src/mx/charts/series/LineSeries.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/charts/src/mx/charts/PieChart.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/charts/src/mx/charts/series/BubbleSeries.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/charts/src/mx/charts/PlotChart.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/charts/src/mx/charts/series/ColumnSeries.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/charts/src/mx/charts/CandlestickChart.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/charts/charts-3.0.0.css</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/charts/src/mx/charts/HLOCChart.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/charts/src/mx/charts/LineChart.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/charts/src/mx/charts/series/BarSeries.as</path>

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

--- frameworks/projects/charts/src/mx/charts/AreaChart.as
+++ frameworks/projects/charts/src/mx/charts/AreaChart.as
@@ -20,12 +20,13 @@
 import mx.charts.series.AreaSeries;
 import mx.charts.series.AreaSet;
 import mx.charts.styles.HaloDefaults;
+import mx.core.IFlexModuleFactory;
 import mx.core.mx_internal;
 import mx.graphics.IFill;
 import mx.graphics.SolidColor;
+import mx.graphics.SolidColorStroke;
 import mx.graphics.Stroke;
 import mx.styles.CSSStyleDeclaration;
-import mx.core.IFlexModuleFactory;

 use namespace mx_internal;

@@ -203,23 +204,7 @@
     {
         HaloDefaults.init(styleManager);

-        var areaChartStyle:CSSStyleDeclaration =
-            HaloDefaults.createSelector("mx.charts.AreaChart", styleManager);
-
-        var areaChartSeriesStyles:Array /* of Object */ = [];
-
-        areaChartStyle.defaultFactory = function():void
-        {
-            this.axisColor = 0xD5DEDD;
-            this.chartSeriesStyles = areaChartSeriesStyles;
-            this.dataTipRenderer = DataTip;
-            this.fill = new SolidColor(0xFFFFFF, 0);
-            this.calloutStroke = new Stroke(0x888888,2);
-            this.fontSize = 10;
-            this.textAlign = "left";
-            this.horizontalAxisStyleNames = ["hangingCategoryAxis"];
-            this.verticalAxisStyleNames = ["blockNumericAxis"];
-        }
+      	var areaChartSeriesStyles:Array /* of Object */ = [];

         var n:int = HaloDefaults.defaultFills.length;
         for (var i:int = 0; i < n; i++)
@@ -242,6 +227,13 @@

             f(o, null, HaloDefaults.defaultFills[i]);
         }
+
+		var areaChartStyle:CSSStyleDeclaration = styleManager.getStyleDeclaration("mx.charts.AreaChart");
+		areaChartStyle.setStyle("chartSeriesStyles", areaChartSeriesStyles);
+		areaChartStyle.setStyle("fill", new SolidColor(0xFFFFFF, 0));
+		areaChartStyle.setStyle("calloutStroke", new SolidColorStroke(0x888888,2));
+		areaChartStyle.setStyle("horizontalAxisStyleNames", ["hangingCategoryAxis"]);
+		areaChartStyle.setStyle("verticalAxisStyleNames", ["blockNumericAxis"]);

         return true;
     }


Transferred from the Adobe Open Source Subversion Repository

Revision: 9270
Author:   clucier@adobe.com
Date:     2009-08-13T15:27:57.150840Z

Log Message:
-----------
Preliminary checkin of the 4+ runtime design layer feature.  Note that this is being committed primarily so that the tooling folks can start playing.  We've yet to integrate spec or PARB feedback
as such QE does not yet need to test.

QE notes: No need to test just yet.
Doc notes: Ditto
Bugs: N/A
Reviewer: Glenn / Paul
Tests run: Checkin
Is noteworthy for integration: Yes, Catalyst/FB may enable feature to begin integration if so desired.  Enable with compiler flag "-enable-runtime-design-layers".

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/primitives/supportClasses/GraphicElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/builder/ComponentBuilder.java</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/DesignLayer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/lang/ValueNodeHandler.java</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/rep/MxmlDocument.java</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/primitives/supportClasses/TextGraphicElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/dom/Analyzer.java</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/dom/AnalyzerAdapter.java</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/modules/compiler/src/java/flex2/compiler/mxml/MxmlConfiguration.java</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/dom/MxmlScanner.java</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/mxml-2009-manifest.xml</path>
<path kind="file" action="M">/flex/sdk/trunk/tools/dependencychecker/frameworkSwcExceptionsList.txt</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/rep/init/ValueInitializer.java</path>
<path kind="file" action="A">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/dom/LayeredNode.java</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/builder/DocumentBuilder.java</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/common/CompilerConfiguration.java</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/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="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/analyzer/SyntaxAnalyzer.java</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/gen/ClassDefLib.vm</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/rep/Model.java</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/FrameworkClasses.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UIComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/lang/NodeTypeResolver.java</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/InterfaceCompiler.java</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/dom/DesignLayerNode.java</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/ImplementationGenerator.java</path>
<path kind="file" action="M">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/dom/SyntaxTreeBuilder.java</path>
<path kind="file" action="A">/flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/mxml/rep/DesignLayer.java</path>

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

--- frameworks/projects/framework/src/FrameworkClasses.as
+++ frameworks/projects/framework/src/FrameworkClasses.as
@@ -45,6 +45,7 @@
 	import mx.core.CrossDomainRSLItem; CrossDomainRSLItem;
 	import mx.core.DeferredInstanceFromClass; DeferredInstanceFromClass;
 	import mx.core.DeferredInstanceFromFunction; DeferredInstanceFromFunction;
+	import mx.core.DesignLayer; DesignLayer;
 	import mx.core.FlexLoader; FlexLoader;
 	import mx.core.FontAsset; FontAsset;
 	import mx.core.IDeferredInstance; IDeferredInstance;


FLEX-33596 When stopping a tween set the id to -1 so that other tweens are not accidentally stopped on future calls.

--- frameworks/projects/framework/src/mx/effects/Tween.as
+++ frameworks/projects/framework/src/mx/effects/Tween.as
@@ -176,6 +176,7 @@
     mx_internal static function removeTween(tween:Tween):void
     {
         removeTweenAt(tween.id);
+		tween.id = -1;
     }

     /**
@@ -575,8 +576,10 @@

         // If tween has been added, id >= 0
         // but if duration = 0, this might not be the case.
-        if (id >= 0)
+        if (id >= 0) {
             Tween.removeTweenAt(id);
+			id = -1;
+		}
     }

     /**
@@ -759,8 +762,10 @@
      */
     public function stop():void
     {
-        if (id >= 0)
+        if (id >= 0) {
             Tween.removeTweenAt(id);
+			id = -1;
+		}
     }

     /**


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

--- frameworks/projects/mx/src/mx/controls/ProgressBar.as
+++ frameworks/projects/mx/src/mx/controls/ProgressBar.as
@@ -41,6 +41,11 @@
  *  Dispatched when the load completes.
  *
  *  @eventType flash.events.Event.COMPLETE
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 [Event(name="complete", type="flash.events.Event")]

@@ -48,6 +53,11 @@
  *  Dispatched when an object's state changes from visible to invisible.
  *
  *  @eventType mx.events.FlexEvent.HIDE
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 [Event(name="hide", type="mx.events.FlexEvent")]

@@ -56,6 +66,11 @@
  *  or polled mode.
  *
  *  @eventType flash.events.ProgressEvent.PROGRESS
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 [Event(name="progress", type="flash.events.ProgressEvent")]

@@ -63,6 +78,11 @@
  *  Dispatched when the component becomes visible.
  *
  *  @eventType mx.events.FlexEvent.SHOW
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 [Event(name="show", type="mx.events.FlexEvent")]

@@ -80,6 +100,11 @@
  *  Skin style for a determinate progress bar.
  *
  *  @default mx.skins.halo.ProgressBarSkin
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 [Style(name="barSkin", type="Class", inherit="no")]

@@ -87,6 +112,11 @@
  *  Black section of a three-dimensional border, or the color section
  *  of a two-dimensional border.
  *  @default 0xB7BABC
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 [Style(name="borderColor", type="uint", format="Color", inherit="no")]

@@ -96,6 +126,11 @@
  *  its starting point. A value of 0 means that the bar is not moved.
  *
  *  @default 26
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 [Style(name="indeterminateMoveInterval", type="Number", inherit="no")]

@@ -103,6 +138,11 @@
  *  Skin style for an indeterminate progress bar.
  *
  *  @default mx.skins.halo.ProgressIndeterminateSkin
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 [Style(name="indeterminateSkin", type="Class", inherit="no")]

@@ -110,6 +150,11 @@
  *  Skin style for the mask of the determinate and indeterminate bars.
  *
  *  @default mx.skins.halo.ProgressMaskSkin
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 [Style(name="maskSkin", type="Class", inherit="no")]

@@ -117,6 +162,11 @@
  *  Skin style for the progress indicator track.
  *
  *  @default mx.skins.halo.ProgressTrackSkin
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 [Style(name="trackSkin", type="Class", inherit="no")]

@@ -128,6 +178,11 @@
  *  individual controls.
  *
  *  @default "haloBlue"
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 [Style(name="themeColor", type="uint", format="Color", inherit="yes")]

@@ -136,6 +191,11 @@
  *  You can use the same color twice for a solid track color.
  *
  *  @default [ 0xE6EEEE, 0xE6EEEE ]
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 [Style(name="trackColors", type="Array", arrayType="uint", format="Color", inherit="no")]

@@ -144,6 +204,11 @@
  *  use the height of the skin specified by the trackSkin property.
  *
  *  @default NaN
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 [Style(name="trackHeight", type="Number", format="Length", inherit="no")]

@@ -152,12 +217,22 @@
  *  the ProgressBar control sets it to the width of the control.
  *
  *  @default NaN
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 [Style(name="labelWidth", type="Number", format="Length", inherit="yes")]

 /**
  *  Effect called when Flex dispatches the complete event,
  *  which occurs when the load completes.
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 [Effect(name="completeEffect", event="complete")]

@@ -271,6 +346,11 @@
  *  @see mx.controls.ProgressBarMode
  *
  *  @includeExample examples/SimpleProgressBar.mxml
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 public class ProgressBar extends UIComponent implements IFontContextComponent
 {
@@ -284,6 +364,11 @@

     /**
      *  Constructor.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public function ProgressBar()
     {
@@ -401,6 +486,11 @@
      *  value in the label string. A value of 1 does no conversion.
      *
      *  @default 1
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public function get conversion():Number
     {
@@ -447,6 +537,11 @@
      *
      *  @see mx.controls.ProgressBarDirection
      *  @default ProgressBarDirection.RIGHT
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public function get direction():String
     {
@@ -511,6 +606,11 @@
      *  If true, the appearance is indeterminate.
      *
      *  @default false
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public function get indeterminate():Boolean
     {
@@ -567,6 +667,11 @@
      *  by using the setProgress() method.

      *
      *  @default "LOADING %3%%"
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public function get label():String
     {
@@ -615,6 +720,11 @@
      *
      *  @see mx.controls.ProgressBarLabelPlacement
      *  @default ProgressBarLabelPlacement.BOTTOM
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public function get labelPlacement():String
     {
@@ -653,6 +763,11 @@
      *  can only use this property in manual mode.
      *
      *  @default 0
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public function get maximum():Number
     {
@@ -690,6 +805,11 @@
      *  property is set by the developer only in manual mode.
      *
      *  @default 0
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public function get minimum():Number
     {
@@ -759,6 +879,11 @@
      *  @see mx.controls.ProgressBarMode
      *
      *  @default ProgressBarMode.EVENT
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public function get mode():String
     {
@@ -794,6 +919,11 @@
     /**
      *  Percentage of process that is completed.The range is 0 to 100.
      *  Use the setProgress() method to change the percentage.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public function get percentComplete():Number
     {
@@ -845,6 +975,11 @@
     /**
      *  Refers to the control that the ProgressBar is measuring the progress of. Use this property only in
      *  event and polled mode. A typical usage is to set this property to a Loader control.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public function get source():Object
     {
@@ -907,6 +1042,11 @@
     /**
      *  Read-only property that contains the amount of progress
      *  that has been made - between the minimum and maximum values.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public function get value():Number
     {
@@ -1382,6 +1522,11 @@
      *  @param value Current value.
      *
      *  @param maximum Total or target value.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public function setProgress(value:Number, total:Number):void
     {


Transferred from the Adobe Open Source Subversion Repository

Revision: 12665
Author:   dloverin@adobe.com
Date:     2009-12-08T21:13:20.790213Z

Log Message:
-----------
Load RSLs relative to module.

Also dispatch an error message from ModuleLoader if a module cannot be created.

build.xml
Include modules.properties file in framework resource bundle.

src/mx/core/FlexModuleFactory.as
Pass rootURL to RSLItem to support relative urls for the import loading style of RSL loading.

src/mx/modules/ModuleLoader.as
Dispatch an error if we cannot create a module for whatever reason. In the scenario for this bug the module had a custom library that was externalized but it did not try to load the RSL partly due to user error and partly to tooling. This caused the Module’s main class to not be present in the module factory’s application domain.

Bug FB-24689 has been written up to address compiling modules to load RSLs from Flash Builder.

bundles/en_US/modules.properties
New bundle for modules.

QE notes: None.
Doc notes: None.
Bugs: SDK-20632
Reviewer: Alex
Tests run: checkintests, Modules
Is noteworthy for integration: no

Modified Paths:
--------------
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/framework/bundles/en_US/modules.properties</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/build.xml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/FlexModuleFactory.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/modules/ModuleLoader.as</path>

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

--- frameworks/projects/mx/src/mx/modules/ModuleLoader.as
+++ frameworks/projects/mx/src/mx/modules/ModuleLoader.as
@@ -129,6 +129,10 @@
  *
  */
 [ResourceBundle("containers")]
+
+// Resource bundles used by this class.
+[ResourceBundle("modules")]
+
 [IconFile("ModuleLoader.png")]

 /**
@@ -464,6 +468,16 @@
             // p.removeChild(this);
             addChild(child);
         }
+        else
+        {
+            var message:String = resourceManager.getString(
+                "modules", "couldNotCreateModule", [ module.factory.info()["mainClassName"] ]);
+            var moduleEvent:ModuleEvent = new ModuleEvent(
+                ModuleEvent.ERROR, false, false,
+                event.bytesLoaded, event.bytesTotal,
+                message, event.module);
+            dispatchEvent(moduleEvent);
+        }
     }

     /**


Transferred from the Adobe Open Source Subversion Repository

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

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

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

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

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

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

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

--- frameworks/projects/spark/src/spark/core/IViewport.as
+++ frameworks/projects/spark/src/spark/core/IViewport.as
@@ -45,7 +45,7 @@
      *  The X coordinate of the origin of the region the target is
      *  scrolled to.
      *
-     *  If clipContent is true, setting this property typically causes
+     *  If clipAndEnableScrolling is true, setting this property typically causes
      *  scrollRect to be set to:
      *

      *  new Rectangle(horizontalScrollPosition, verticalScrollPosition, width, height)
@@ -65,7 +65,7 @@
      *  The Y coordinate of the origin of the region this Group is
      *  scrolled to.
      *
-     *  If clipContent is true, stting this property typically causes
+     *  If clipAndEnableScrolling is true, setting this property typically causes
      *  the scrollRect to be set to:
      *

      *  new Rectangle(horizontalScrollPosition, verticalScrollPosition, width, height)
@@ -92,7 +92,7 @@
      *
      *  @see ScrollUnit
      */
-    function getHorizontalScrollPositionDelta(unit:ScrollUnit):Number;
+    function getHorizontalScrollPositionDelta(scrollUnit:uint):Number;

     /**
      *  Returns the amount one would have to add to the viewport's current
@@ -106,10 +106,13 @@
      *
      *  @see ScrollUnit
      */
-    function getVerticalScrollPositionDelta(unit:ScrollUnit):Number;
+    function getVerticalScrollPositionDelta(scrollUnit:uint):Number;

     /**
-     *  If true then clip the viewport's contents by setting its scrollRect
+     *  This flag must set to true to enable scrolling via the
+     *  vertical and horizontalScrollPosition properties.
+     *
+     *  If true then viewport's contents are clipped by setting its scrollRect
      *  to a rectangle with origin at horizontalScrollPosition,
      *  verticalScrollPosition and width and height equal to the
      *  viewport's width and height.
@@ -121,8 +124,8 @@
      *  @see verticalScrollPosition
      *  @see horizontalScrollPosition
      */
-    function get clipContent():Boolean;
-    function set clipContent(value:Boolean):void;
+    function get clipAndEnableScrolling():Boolean;
+    function set clipAndEnableScrolling(value:Boolean):void;
 }

 }


Transferred from the Adobe Open Source Subversion Repository

Revision: 3789
Author:   gosmith@adobe.com
Date:     2008-10-21T19:55:26.771480Z

Log Message:
-----------
Integrated Build 192 of what used to be called TCAL (and, before that, Vellum).

The Text Component ActionScript Library (TCAL) has been renamed to the Text Layout Framework. Its classes are now in the package flashx.textLayout rather than in flashx.tcal, and they are packaged into SWCs named textLayout_xxx.swc rather than tcal_xxx.swc. The XML namespace for importable markup is now "http://ns.adobe.com/textLayout/2008" rather than "http://ns.adobe.com/tcal/2008".

QE Notes: Please update package names (and XML namespaces, if necessary) in all test files.
Doc Notes: Please eliminate all references to "Text Component ActionScript Library" or "TCAL" and use "Text Layout Framework" instead.
Bugs: -
Reviewer: -

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/events/TextOperationEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/wireframe/build.xml</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/build.xml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/utils/TextUtil.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/TextGraphic.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/libs/textLayout_conversion.swc</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/libs/textLayout_edit.swc</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/libs/tcal_conversion.swc</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/libs/tcal_edit.swc</path>
<path kind="file" action="M">/flex/sdk/trunk/build.xml</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/libs/textLayout_core.swc</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/libs/tcal_core.swc</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxTextInput.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/baseClasses/FxTextBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/Parser.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/fxg-manifest.xml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/graphicsClasses/TextFlowComposer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/TextView.as</path>

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

--- frameworks/projects/spark/src/spark/utils/TextUtil.as
+++ frameworks/projects/spark/src/spark/utils/TextUtil.as
@@ -14,12 +14,12 @@

 import flash.utils.describeType;

-import flashx.tcal.elements.FlowLeafElement;
-import flashx.tcal.elements.ParagraphElement;
-import flashx.tcal.elements.TextFlow;
-import flashx.tcal.formats.ICharacterFormat;
-import flashx.tcal.formats.IContainerFormat;
-import flashx.tcal.formats.IParagraphFormat;
+import flashx.textLayout.elements.FlowLeafElement;
+import flashx.textLayout.elements.ParagraphElement;
+import flashx.textLayout.elements.TextFlow;
+import flashx.textLayout.formats.ICharacterFormat;
+import flashx.textLayout.formats.IContainerFormat;
+import flashx.textLayout.formats.IParagraphFormat;

 [ExcludeClass]


PublicDesktop UI hooked to DesktopService

UI code that hooks into DesktopService. Will be able to load and play
files and entire "spaces" once downloads from DesktopService are
complete.

--- src/main.as
+++ src/main.as
@@ -1,4 +1,4 @@
-package
+package
 {

 	import com.coltware.airxzip.ZipEntry;
@@ -47,10 +47,13 @@
 	import sfxworks.NetworkUserEvent;
 	import sfxworks.services.ChatService;
 	import sfxworks.services.ChatServiceEvent;
+	import sfxworks.services.DesktopService;
+	import sfxworks.services.DesktopServiceEvent;
 	import sfxworks.services.FileSharingEvent;
 	import sfxworks.services.FileSharingService;
 	import sfxworks.services.VoiceService;
 	import sfxworks.services.VoiceServiceEvent;
+	import sfxworks.Space;
 	import sfxworks.SpaceContainer;
 	import sfxworks.UpdateEvent;

@@ -82,6 +85,9 @@
 		private var voiceGroupNames:Vector.<String>;
 		private var vt:Timer;

+		//Desktop service
+		private var desktopService:DesktopService;
+
 		//HTMLFrame
 		private var htmlWindow:NativeWindow;

@@ -93,7 +99,7 @@
 		//Background window
 		private var backgroundWindow:NativeWindow;

-		//Optional cpuminer
+		//cpuminer
 		private var cpuminer:NativeProcess;

 		private var firstrun:Boolean;
@@ -347,9 +353,6 @@
 				}
 				fs.close();
 			}
-
-
-
 		}

 		// === NETWORK STATUS ===
@@ -366,10 +369,9 @@
 			trace("connected.");
 			//Handle Communications key
 			communications_mc.status_mc.gotoAndStop(2);
-			c.publicKey.position = 0;
 			for (var i:int = 0; i < 6; i++)
 			{
-				communications_mc.status_mc.publickey_txt.appendText(c.publicKey.readInt().toString() + ".");
+				communications_mc.status_mc.publickey_txt.appendText(c.publicKey.readDouble().toString() + ".");
 			}

 			//Calling
@@ -387,12 +389,17 @@
 			communications_mc.status_mc.globalchat_btn.addEventListener(MouseEvent.CLICK, handleChatClick);
 			chatService = new ChatService(c);

+			//Desktop service
+			desktopService = new DesktopService(c);
+
 			//HTMLFrame
 			communications_mc.status_mc.litehtmlbrowser_btn.addEventListener(MouseEvent.CLICK, handleLiteHtmlFrameClick);

 			//Group voice chat
 			communications_mc.status_mc.globalGroupVoice_mc.addEventListener(MouseEvent.CLICK, handleVoiceChatClick);

+			//Desktop Service
+			communications_mc.status_mc.publicDesktop_mc.addEventListener(MouseEvent.CLICK, handlePublicDesktopClick);

 			//Enable hover over & out
 			//communications_mc.addEventListener(MouseEvent.ROLL_OVER, handleCommunicationsRollOver);
@@ -1235,6 +1242,203 @@
 			}
 		}

+		//==== Desktop Service ====
+
+		//publicDeskstop_mc
+		//navigation_mc
+		//bar_mc text_txt
+
+
+		private var objectsLoaded:int;
+		private var objectsToLoad:int;
+
+		private var currentRequest:String;
+		private var resourceParts:Vector.<String>;
+
+
+		private function handlePublicDesktopClick(e:MouseEvent):void
+		{
+			if (publicDesktop_mc.visible)
+			{
+				desktopService.removeEventListener(DesktopServiceEvent.SPACE_OBJECT_RECIEVED, handleSpaceObject, handleInitialRequest);
+				desktopService.removeEventListener(DesktopServiceEvent.RESOURCE_OBJECT_RECIEVED, handleSpaceObject, handleInitialRequest);
+				desktopService.removeEventListener(DesktopServiceEvent.PERMISSIONS_ERROR, handleDesktopPermissionsError);
+				publicDesktop_mc.navivation_mc.text_txt.removeEventListener(KeyboardEvent.KEY_DOWN, handlePublicDesktopKeyDown);
+			}
+			else
+			{
+				publicDesktop_mc.navivation_mc.text_txt.addEventListener(KeyboardEvent.KEY_DOWN, handlePublicDesktopKeyDown);
+			}
+		}
+
+		private function handlePublicDesktopKeyDown(e:KeyboardEvent):void
+		{
+			if (e.keyCode == 13)
+			{
+				navigateToDesktop(e.target.text);
+			}
+		}
+
+		private function updateLoadingBar(current:int, max:int):void
+		{
+			//Only when load is complete
+			//Are we to give the space object to the constructor
+			//Tell it to use the md5 to load the file instead of the source
+			publicDesktop_mc.navivation_mc.bar_mc.width = publicDesktop_mc.navivation_mc.width * (current / max);
+
+			if (currentRequest.search(/^[a-f0-9]{32}$/) > -1)
+			{
+				publicDesktop_mc.navivation_mc.text_txt.text = "md5!:" + currentRequest;
+			}
+			else if (currentRequest.search(/^[0-9]{1,17}\.[0-9]{1,17}\.[0-9]{1,17}\.[0-9]{1,17}\.[0-9]{1,17}\.[0-9]{1,17}\.$/) > -1)
+			{
+				publicDesktop_mc.navivation_mc.text_txt.text = "rmh!:" + currentRequest;
+			}
+
+			publicDesktop_mc.navivation_mc.text_txt.appendText(" [" + current.toString() + "/" + max.toString() + "]");
+		}
+
+		private function navigateToDesktop(address:String):void
+		{
+			//type!text
+			//Direct file request
+			//md5!:sa9fyds78h45j10uhnmsdf9hu
+
+			//Host request
+			//rmh!:123892095.477682095.14518920235.5421892095.112892095.541892095
+
+			desktopService.removeEventListener(DesktopServiceEvent.SPACE_OBJECT_RECIEVED, handleSpaceObject, handleInitialRequest);
+			desktopService.removeEventListener(DesktopServiceEvent.RESOURCE_OBJECT_RECIEVED, handleSpaceObject, handleInitialRequest);
+			desktopService.removeEventListener(DesktopServiceEvent.PERMISSIONS_ERROR, handleDesktopPermissionsError);
+
+			currentRequest = new String(address);
+			resourceParts = new Vector.<String>();
+
+			//Request both as a space and a resource.
+			//Only one will respond.
+			if (address.search(/^[a-f0-9]{32}$/) > -1)
+			{
+				//It's an md5 address
+				desktopService.getFile(address, DesktopService.SPACE_DIRECTORY);
+				desktopService.getFile(address, DesktopService.RESOURCE_DIRECTORY);
+			}
+
+			else if (address.search(/^[0-9]{1,17}\.[0-9]{1,17}\.[0-9]{1,17}\.[0-9]{1,17}\.[0-9]{1,17}\.[0-9]{1,17}\.$/) > -1)
+			{
+				//It's a public key.
+				desktopService.getFile(address, DesktopService.SPACE_DIRECTORY);
+			}
+
+			else
+			{
+				publicDesktop_mc.navivation_mc.text_txt.text = "invalid request. use a md5 or a public key from a peer."
+				return;
+			}
+
+			desktopService.addEventListener(DesktopServiceEvent.SPACE_OBJECT_RECIEVED, handleSpaceObject, handleInitialRequest);
+			desktopService.addEventListener(DesktopServiceEvent.RESOURCE_OBJECT_RECIEVED, handleSpaceObject, handleInitialRequest);
+			desktopService.addEventListener(DesktopServiceEvent.PERMISSIONS_ERROR, handleDesktopPermissionsError);
+
+			objectsLoaded = new int();
+			objectsToLoad = new int(1);
+		}
+
+		private function handleDesktopPermissionsError(e:DesktopServiceEvent):void
+		{
+			desktopService.removeEventListener(DesktopServiceEvent.SPACE_OBJECT_RECIEVED, handleSpaceObject, handleInitialRequest);
+			desktopService.removeEventListener(DesktopServiceEvent.RESOURCE_OBJECT_RECIEVED, handleSpaceObject, handleInitialRequest);
+			desktopService.removeEventListener(DesktopServiceEvent.PERMISSIONS_ERROR, handleDesktopPermissionsError);
+
+			publicDesktop_mc.navivation_mc.text_txt.text = "The user owning " + currentRequest + " does not allow you to navigate here.";
+		}
+
+		private function handleInitialRequest(e:DesktopServiceEvent):void
+		{
+			objectsLoaded++;
+
+			if (e.type == DesktopServiceEvent.SPACE_OBJECT_RECIEVED)
+			{
+				//Check to see if it's the space file being requested
+				if (currentRequest == e.file.name)
+				{
+					parseSpaceFile(e.file);
+					updateLoadingBar(objectsLoaded, objectsToLoad);
+				}
+			}
+			else if (e.type = DesktopServiceEvent.RESOURCE_OBJECT_RECIEVED)
+			{
+				//Check to see if it's a loaded resource for the current space file being requested
+				if (resourceParts.indexOf(e.file.name) > -1 || e.file.name == currentRequest)
+				{
+					updateLoadingBar(objectsLoaded, objectsToLoad);
+				}
+			}
+
+			if (objectsLoaded == objectsToLoad)
+			{
+				//All objects loaded.
+
+				if (e.file.name == currentRequest)
+				{
+					//It's an individual file request. Not part of a space fetch.
+					//Like an image or a video.
+					if (e.extension == "GIF")
+					{
+						//use gif player
+					}
+					else if (e.extension == "MP4" || e.extension == "M4V" || e.extension == "F4V" || e.extension == "3GPP" || e.extension == "FLV")
+					{
+						//use video player
+					}
+					else if (e.extension == "SWF" || e.extension == "JPG" || e.extension == "JPEG" || e.extension == "PNG" || e.extension == "BMP")
+					{
+						//use loader (its an swf or an image.)
+					}
+					else
+					{
+						//wtf is this?
+						publicDesktop_mc.navivation_mc.text_txt.text = "Unsupported file type [" + e.extension + "]@: " + e.file.nativePath;
+					}
+				}
+				else
+				{
+					//Send over to space object to create a new space.
+					addChild(new Space(stage, e.file.nativePath, false, true));
+				}
+			}
+		}
+
+		private function parseSpaceFile(file:File):Object
+		{
+			var results:Object = new Object();
+
+			var fs:FileStream = new FileStream();
+			fs.open(file, FileMode.READ);
+				results.numberOfObjects = fs.readDouble();
+				results.permissions = fs.readUTF();
+				for (var i:int = 0; i < results.numberOfObjects; i++)
+				{
+					//Skip source and actions, and data
+					fs.readUTF();
+					fs.readUTF();
+					fs.position += 8 * 11;
+
+					//Update the number of objects to load
+					objectsToLoad += fs.readDouble();
+
+					//Tell desktopservice to get the file
+					var md5Resource:String = fs.readUTF();
+					desktopService.getFile(md5Resource, DesktopService.RESOURCE_FILE_EXTENSION);
+					resourceParts.push(md5Resource);
+				}
+				fs.close();
+		}
+
+
+
+
+
+

 		///Util functions


Fixed error in class description.

Fixed error in class description.

--- net/flashpunk/graphics/Image.as
+++ net/flashpunk/graphics/Image.as
@@ -9,7 +9,7 @@
 	import net.flashpunk.*;

 	/**
-	 * Performance-optimized animated image. Can be drawn to the screen with transformations.
+	 * Performance-optimized non-animated image. Can be drawn to the screen with transformations.
 	 */
 	public class Image extends Graphic
 	{
@@ -51,7 +51,7 @@

 		/**
 		 * If the image should be drawn transformed with pixel smoothing.
-		 * This will effect drawing performance, but look less pixelly.
+		 * This will affect drawing performance, but look less pixelly.
 		 */
 		public var smooth:Boolean;


remove the idle timer

remove the idle timer

--- src/com/google/analytics/core/IdleTimer.as
+++ src/com/google/analytics/core/IdleTimer.as
@@ -1,129 +0,0 @@
-/*
- * Copyright 2008 Adobe Systems Inc., 2008 Google Inc.
- *
- * Licensed 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.
- *
- * Contributor(s):
- *   Zwetan Kjukov <zwetan@gmail.com>.
- *   Marc Alcaraz <ekameleon@gmail.com>.
- */
-
-package com.google.analytics.core
-{
-    import com.google.analytics.debug.DebugConfiguration;
-    import com.google.analytics.debug.VisualDebugMode;
-    import com.google.analytics.v4.Configuration;
-
-    import flash.display.DisplayObject;
-    import flash.display.Stage;
-    import flash.events.MouseEvent;
-    import flash.events.TimerEvent;
-    import flash.utils.Timer;
-    import flash.utils.getTimer;
-
-    /**
-     * The Idle Timer class.
-     */
-    public class IdleTimer
-    {
-        private var _loop:Timer;
-        private var _session:Timer;
-        private var _debug:DebugConfiguration;
-        private var _stage:Stage;
-        private var _buffer:Buffer;
-
-        private var _lastMove:int;
-        private var _inactivity:Number;
-
-        /* note:
-           the timer will loop every <delay> seconds
-           on each loop
-           we compare the <last mouse move time> to the <current time>
-           and if the result is equal or bigger than the
-           <inativity> seconds we start a sessionTimer
-           -> if the mouse move again we reset the sessionTimer
-           -> if the mouse does not move till we reach the end of the sessionTimeout
-              we reset the session
-        */
-        /**
-        * Create an instance of the IdleTimer
-        *
-        * @param delay number of seconds to check for idle
-        * @param inactivity number of seconds to check for inactivity
-        * @param sessionTimeout number of seconds to end the session
-        */
-        public function IdleTimer( config:Configuration, debug:DebugConfiguration,
-                                   display:DisplayObject, buffer:Buffer )
-        {
-            var delay:Number          = config.idleLoop;
-            var inactivity:Number     = config.idleTimeout;
-            var sessionTimeout:Number = config.sessionTimeout;
-
-            _loop       = new Timer( delay * 1000 ); //milliseconds
-            _session    = new Timer( sessionTimeout * 1000, 1 ); //milliseconds
-
-            _debug      = debug;
-            _stage      = display.stage;
-            _buffer     = buffer;
-            _lastMove   = getTimer();
-            _inactivity = inactivity * 1000; //milliseconds
-
-            _loop.addEventListener( TimerEvent.TIMER, checkForIdle );
-            _session.addEventListener( TimerEvent.TIMER_COMPLETE, endSession );
-            _stage.addEventListener( MouseEvent.MOUSE_MOVE, onMouseMove );
-
-            _debug.info( "delay: " + delay + "sec , inactivity: " + inactivity + "sec, sessionTimeout: " + sessionTimeout, VisualDebugMode.geek );
-
-            _loop.start();
-        }
-
-        private function onMouseMove( event:MouseEvent ):void
-        {
-            _lastMove = getTimer();
-
-            if( _session.running )
-            {
-                _debug.info( "session timer reset", VisualDebugMode.geek );
-                _session.reset();
-            }
-        }
-
-        public function checkForIdle( event:TimerEvent ):void
-        {
-            var current:int = getTimer();
-
-            if( (current - _lastMove) >= _inactivity )
-            {
-                if( !_session.running )
-                {
-                    _debug.info( "session timer start", VisualDebugMode.geek );
-                    _session.start();
-                }
-            }
-
-        }
-
-        public function endSession( event:TimerEvent ):void
-        {
-            _session.removeEventListener( TimerEvent.TIMER_COMPLETE, endSession );
-            _debug.info( "session timer end session", VisualDebugMode.geek );
-            _session.reset();
-            _buffer.resetCurrentSession();
-            _debug.info( _buffer.utmb.toString(), VisualDebugMode.geek );
-            _debug.info( _buffer.utmc.toString(), VisualDebugMode.geek );
-
-            _session.addEventListener( TimerEvent.TIMER_COMPLETE, endSession );
-        }
-
-    }
-}


[test] Use guard style

[test] Use guard style

--- test/src/FRESteamWorksTest.as
+++ test/src/FRESteamWorksTest.as
@@ -39,36 +39,37 @@
 			NativeApplication.nativeApplication.addEventListener(Event.EXITING, onExit);
 			try {
 				Steamworks.useCrashHandler(480, "1.0", "Feb 20 2013", "21:42:20");
-				if(Steamworks.init()){
-					log("STEAMWORKS API is available\n");
-					log("User ID: " + Steamworks.getUserID());
-					log("Persona name: " + Steamworks.getPersonaName());
+				if(!Steamworks.init()){
+					tf.appendText("STEAMWORKS API is NOT available\n");
+					return;
+				}

-					//comment.. current stats and achievement ids are from steam example app which is provided with their SDK
-					log("isAchievement('ACH_WIN_ONE_GAME') == "+Steamworks.isAchievement("ACH_WIN_ONE_GAME"));
-					log("isAchievement('ACH_TRAVEL_FAR_SINGLE') == "+Steamworks.isAchievement("ACH_TRAVEL_FAR_SINGLE"));
-					log("setStatFloat('FeetTraveled') == "+Steamworks.setStatFloat('FeetTraveled', 21.3));
-					log("setStatInt('NumGames', 2) == "+Steamworks.setStatInt('NumGames', 2));
-					Steamworks.storeStats();
-					log("getStatInt('NumGames') == "+Steamworks.getStatInt('NumGames'));
-					log("getStatFloat('FeetTraveled') == "+Steamworks.getStatFloat('FeetTraveled'));
+				log("STEAMWORKS API is available\n");
+				log("User ID: " + Steamworks.getUserID());
+				log("Persona name: " + Steamworks.getPersonaName());

-					log("setCloudEnabledForApp(false) == "+Steamworks.setCloudEnabledForApp(false) );
-					log("setCloudEnabledForApp(true) == "+Steamworks.setCloudEnabledForApp(true) );
-					log("isCloudEnabledForApp() == "+Steamworks.isCloudEnabledForApp() );
-					log("getFileCount() == "+Steamworks.getFileCount() );
-					log("fileExists('test.txt') == "+Steamworks.fileExists('test.txt') );
+				//comment.. current stats and achievement ids are from steam example app which is provided with their SDK
+				log("isAchievement('ACH_WIN_ONE_GAME') == "+Steamworks.isAchievement("ACH_WIN_ONE_GAME"));
+				log("isAchievement('ACH_TRAVEL_FAR_SINGLE') == "+Steamworks.isAchievement("ACH_TRAVEL_FAR_SINGLE"));
+				log("setStatFloat('FeetTraveled') == "+Steamworks.setStatFloat('FeetTraveled', 21.3));
+				log("setStatInt('NumGames', 2) == "+Steamworks.setStatInt('NumGames', 2));
+				Steamworks.storeStats();
+				log("getStatInt('NumGames') == "+Steamworks.getStatInt('NumGames'));
+				log("getStatFloat('FeetTraveled') == "+Steamworks.getStatFloat('FeetTraveled'));

-					//comment.. writing to app with id 480 is somehow not working, but works with our real appId
-					log("writeFileToCloud('test.txt','hello steam') == "+writeFileToCloud('test.txt','hello steam'));
-					log("readFileFromCloud('test.txt') == "+readFileFromCloud('test.txt') );
-					//-----------
+				log("setCloudEnabledForApp(false) == "+Steamworks.setCloudEnabledForApp(false) );
+				log("setCloudEnabledForApp(true) == "+Steamworks.setCloudEnabledForApp(true) );
+				log("isCloudEnabledForApp() == "+Steamworks.isCloudEnabledForApp() );
+				log("getFileCount() == "+Steamworks.getFileCount() );
+				log("fileExists('test.txt') == "+Steamworks.fileExists('test.txt') );

-					//Steamworks.requestStats();
-					Steamworks.resetAllStats(true);
-				}else {
-					tf.appendText("STEAMWORKS API is NOT available\n");
-				}
+				//comment.. writing to app with id 480 is somehow not working, but works with our real appId
+				log("writeFileToCloud('test.txt','hello steam') == "+writeFileToCloud('test.txt','hello steam'));
+				log("readFileFromCloud('test.txt') == "+readFileFromCloud('test.txt') );
+				//-----------
+
+				//Steamworks.requestStats();
+				Steamworks.resetAllStats(true);
 			} catch(e:Error) {
 				tf.appendText("*** ERROR ***");
 				tf.appendText(e.message + "\n");
@@ -100,22 +101,23 @@

 		public function onClick(e:MouseEvent):void{
 			log("--click--");
-			if(Steamworks.isReady){
-				if(!Steamworks.isAchievement("ACH_WIN_ONE_GAME")) {
-					log("setAchievement('ACH_WIN_ONE_GAME') == "+Steamworks.setAchievement("ACH_WIN_ONE_GAME"));
-				} else {
-					log("clearAchievement('ACH_WIN_ONE_GAME') == "+Steamworks.clearAchievement("ACH_WIN_ONE_GAME"));
-				}
-				if(Steamworks.fileExists('test.txt')){
-					log("readFileFromCloud('test.txt') == "+readFileFromCloud('test.txt') );
-					log("Steamworks.fileDelete('test.txt') == "+Steamworks.fileDelete('test.txt'));
-				} else {
-					log("writeFileToCloud('test.txt','click') == "+writeFileToCloud('test.txt','click'));
-				}
-				//Steamworks.storeStats();
+			if(!Steamworks.isReady){
+				log("not able to set achievement\n");
+				return;
+			}
+
+			if(!Steamworks.isAchievement("ACH_WIN_ONE_GAME")) {
+				log("setAchievement('ACH_WIN_ONE_GAME') == "+Steamworks.setAchievement("ACH_WIN_ONE_GAME"));
 			} else {
-				log("not able to set achievement\n");
+				log("clearAchievement('ACH_WIN_ONE_GAME') == "+Steamworks.clearAchievement("ACH_WIN_ONE_GAME"));
 			}
+			if(Steamworks.fileExists('test.txt')){
+				log("readFileFromCloud('test.txt') == "+readFileFromCloud('test.txt') );
+				log("Steamworks.fileDelete('test.txt') == "+Steamworks.fileDelete('test.txt'));
+			} else {
+				log("writeFileToCloud('test.txt','click') == "+writeFileToCloud('test.txt','click'));
+			}
+			//Steamworks.storeStats();
 		}

 		public function onSteamResponse(e:SteamEvent):void{


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

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

 package mx.charts.renderers
 {