Transferred from the Adobe Open Source Subversion Repository

Revision: 11942
Author:   dloverin@adobe.com
Date:     2009-11-18T17:33:13.065717Z

Log Message:
-----------
StyleManager fixes.

Stop using the styleManager property in a constructor.
framework/src/mx/containers/DividedBox.as
framework/src/mx/containers/Form.as
framework/src/mx/controls/ButtonBar.as

Cache inheriting styles. Also made static arrays in StyleManagerImpl per-instance.
framework/src/mx/events/FlexChangeEvent.as
framework/src/mx/styles/StyleManagerImpl.as

Remove static StyleManager methods that were new to Flex 4 (qualifiedTypeSelectors property, getStyleDeclarations(), hasAdvancedSelectors(), hasPseudoCondition()).
framework/src/mx/styles/StyleManager.as

Update copyright.
framework/src/mx/styles/CSSMergedStyleDeclaration.as

QE notes: None.
Doc notes: None.
Bugs: SDK-24215
Reviewer: Alex
Tests run: checkintests, containers/DividedBox, containers/form, components/ButtonBar, Managers/StyleManager, PerModuleStyleManager
Is noteworthy for integration: yes - StyleManager performance improvement

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/StyleManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/StyleManagerImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/ButtonBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/DividedBox.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/CSSMergedStyleDeclaration.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/Form.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/FlexChangeEvent.as</path>

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

--- frameworks/projects/mx/src/mx/containers/Form.as
+++ frameworks/projects/mx/src/mx/containers/Form.as
@@ -17,6 +17,7 @@
 import mx.containers.utilityClasses.BoxLayout;
 import mx.controls.Label;
 import mx.core.Container;
+import mx.core.IFlexModuleFactory;
 import mx.core.IInvalidating;
 import mx.core.IUIComponent;
 import mx.core.mx_internal;
@@ -185,33 +186,47 @@
     {
         super();

+        showInAutomationHierarchy = true;
+
+        layoutObject.target = this;
+        layoutObject.direction = BoxDirection.VERTICAL;
+    }
+
+    //--------------------------------------------------------------------------
+    //
+    //  Variables
+    //
+    //--------------------------------------------------------------------------
+
+    /**
+     *  @private
+     */
+    mx_internal var layoutObject:BoxLayout = new BoxLayout();
+
+    /**
+     *  @private
+     */
+    private var measuredLabelWidth:Number;
+
+    //--------------------------------------------------------------------------
+    //
+    //  Overridden Properties
+    //
+    //--------------------------------------------------------------------------
+
+    /**
+     *  @private
+     */
+    override public function set moduleFactory(moduleFactory:IFlexModuleFactory):void
+    {
+        super.moduleFactory = moduleFactory;
+
         styleManager.registerInheritingStyle("labelWidth");
         styleManager.registerSizeInvalidatingStyle("labelWidth");
         styleManager.registerInheritingStyle("indicatorGap");
         styleManager.registerSizeInvalidatingStyle("indicatorGap");
-
-        showInAutomationHierarchy = true;
-
-        layoutObject.target = this;
-        layoutObject.direction = BoxDirection.VERTICAL;
-    }
-
-    //--------------------------------------------------------------------------
-    //
-    //  Variables
-    //
-    //--------------------------------------------------------------------------
-
-    /**
-     *  @private
-     */
-    mx_internal var layoutObject:BoxLayout = new BoxLayout();
-
-    /**
-     *  @private
-     */
-    private var measuredLabelWidth:Number;
-
+    }
+
     //--------------------------------------------------------------------------
     //
     //  Properties


Transferred from the Adobe Open Source Subversion Repository

Revision: 3411
Author:   egeorgie@adobe.com
Date:     2008-09-29T23:44:01.337941Z

Log Message:
-----------
* Change layout-related width/height, explicit width/height, measured width/height properties from post-scale to pre-transform. yay!
* Flex3 containers are updated to support the new behavior.
* Repeatedly scaling a component can differ from before, since we no longer accumulate rounding errors.
* The change is gated by a version flag, in compatibility mode these properties don't change.

Reviewed by Glenn, Ely

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/utilityClasses/BoxLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/Box.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/utilityClasses/CanvasLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/Tile.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/utilityClasses/PostScaleAdapter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/Accordion.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/DividedBox.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/FormItem.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UIComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/layout/LayoutItemUIC.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/Container.as</path>

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

--- frameworks/projects/mx/src/mx/containers/Tile.as
+++ frameworks/projects/mx/src/mx/containers/Tile.as
@@ -593,7 +593,7 @@

             for (i = 0; i < n; i++)
             {
-                child = IUIComponent(getChildAt(i));
+                child = getLayoutChildAt(i);

                 if (!child.includeInLayout)
                     continue;
@@ -628,7 +628,7 @@

             for (i = 0; i < n; i++)
             {
-                child = IUIComponent(getChildAt(i));
+                child = getLayoutChildAt(i);

                 if (!child.includeInLayout)
                     continue;
@@ -703,7 +703,7 @@
         var n:int = numChildren;
         for (var i:int = 0; i < n; i++)
         {
-            var child:IUIComponent = IUIComponent(getChildAt(i));
+            var child:IUIComponent = getLayoutChildAt(i);

             if (!child.includeInLayout)
                 continue;


Transferred from the Adobe Open Source Subversion Repository

Revision: 4460
Author:   gosmith@adobe.com
Date:     2009-01-09T01:53:33.590972Z

Log Message:
-----------
Renamed UIComponentAccImpl to UIComponentAccProps because it extends AccessibilityProperties, not AccessibilityImplementation.

Added comments with the identifier for each magic role constant, so that it is easier to understand what roles our components are using.

Moved two static methods from UIComponentAccProperties to AccImpl because they make more sense there.

QE Notes: None
Doc Notes: None
Bugs: None
Reviewer: None (no functional changes)

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/accessibility/ButtonAccImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/accessibility/ColorPickerAccImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/accessibility/AccImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/accessibility/DataGridAccImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/accessibility/DateFieldAccImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/accessibility/SliderAccImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/accessibility/CheckBoxAccImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/accessibility/LinkButtonAccImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/accessibility/MenuBarAccImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/accessibility/ComboBaseAccImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/accessibility/RadioButtonAccImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/accessibility/TabBarAccImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/accessibility/TreeAccImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/accessibility/PanelAccImpl.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/framework/src/mx/accessibility/UIComponentAccImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/accessibility/DateChooserAccImpl.as</path>
<path kind="file" copyfrom-path="/flex/sdk/trunk/frameworks/projects/framework/src/mx/accessibility/UIComponentAccImpl.as" copyfrom-rev="4437" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/accessibility/UIComponentAccProps.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/accessibility/MenuAccImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/accessibility/ListBaseAccImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/accessibility/AlertAccImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UIComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/accessibility/AccordionHeaderAccImpl.as</path>

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

--- frameworks/projects/mx/src/mx/accessibility/TabBarAccImpl.as
+++ frameworks/projects/mx/src/mx/accessibility/TabBarAccImpl.as
@@ -151,7 +151,7 @@
 	{
 		super(master);

-		role = 0x3C;
+		role = 0x3C; // ROLE_SYSTEM_PAGETABLIST
 	}

 	//--------------------------------------------------------------------------
@@ -187,10 +187,7 @@
 	 */
 	override public function get_accRole(childID:uint):uint
 	{
-		if (childID == 0)
-			return role;
-
-		return ROLE_SYSTEM_PAGETAB;
+		return childID == 0 ? role : ROLE_SYSTEM_PAGETAB;
 	}

 	/**


Transferred from the Adobe Open Source Subversion Repository

Revision: 23247
Author:   cframpto@adobe.com
Date:     2011-12-20T19:21:13.134833Z

Log Message:
-----------
Remove ADOBE SYSTEMS license and replace with Apache license in headers - frameworks.  A 2nd pass will be needed to get the files not handled up by the scripts.

Modified Paths:
--------------
4959 paths were modified

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

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


Transferred from the Adobe Open Source Subversion Repository

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

--- frameworks/projects/mx/src/mx/styles/metadata/AlignStyles.as
+++ frameworks/projects/mx/src/mx/styles/metadata/AlignStyles.as
@@ -0,0 +1,31 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  ADOBE SYSTEMS INCORPORATED
+//  Copyright 2005-2006 Adobe Systems Incorporated
+//  All Rights Reserved.
+//
+//  NOTICE: Adobe permits you to use, modify, and distribute this file
+//  in accordance with the terms of the license agreement accompanying it.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+/**
+ *  Horizontal alignment of children in the container.
+ *  Possible values are "left", "center",
+ *  and "right".
+ *  The default value is "left", but some containers,
+ *  such as ButtonBar and ToggleButtonBar,
+ *  have different default values.
+ */
+[Style(name="horizontalAlign", type="String", enumeration="left,center,right", inherit="no")]
+
+/**
+ *  Vertical alignment of children in the container.
+ *  Possible values are "top", "middle",
+ *  and "bottom".
+ *  The default value is "top", but some containers,
+ *  such as ButtonBar, ControlBar, LinkBar,
+ *  and ToggleButtonBar, have different default values.
+ */
+[Style(name="verticalAlign", type="String", enumeration="bottom,middle,top", inherit="no")]
+


Transferred from the Adobe Open Source Subversion Repository

Revision: 8112
Author:   srahim@adobe.com
Date:     2009-06-23T20:27:46.429069Z

Log Message:
-----------
ASDoc updates
QE Notes: None
Doc Notes: None
Bugs: -
Checkintests: passed

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/VScrollBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/HScrollBar.as</path>

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

--- frameworks/projects/spark/src/spark/components/VScrollBar.as
+++ frameworks/projects/spark/src/spark/components/VScrollBar.as
@@ -36,7 +36,21 @@
  *
Although you can use the VScrollBar control as a stand-alone control,
  *  you usually combine it as part of another group of components to
  *  provide scrolling functionality.

+ *  @mxml
+ *
The <VScrollBar> tag inherits all of the tag
+ *  attributes of its superclass and adds the following tag attributes:

+ *
+ *

+ *  <VScrollBar
+ *
+ *    Properties
+ *    viewport=""
+ *  />
+ *

  *
+ *  @see spark.skins.spark.VScrollBarSkin
+ *  @see spark.skins.spark.VScrollBarThumbSkin
+ *  @see spark.skins.spark.VScrollBarTrackSkin
  *  @langversion 3.0
  *  @playerversion Flash 10
  *  @playerversion AIR 1.5
@@ -71,6 +85,37 @@
     //
     //--------------------------------------------------------------------------

+    /**
+     *  The viewport controlled by this scrollbar.
+     *  The viewport is the scrollable, rectangular subset of the area of a component
+     *  to display.
+     *
+     *  If a viewport is specified, then changes to its actual size, content
+     *  size, and scroll position cause the corresponding ScrollBar methods to
+     *  run:
+     *

+     *
viewportResizeHandler()

+     *
contentWidthChangeHandler()

+     *
contentHeightChangeHandler()

+     *
viewportVerticalScrollPositionChangeHandler()

+     *
viewportHorizontalScrollPositionChangeHandler()

+     *

+     *
+     *
The VScrollBar and HScrollBar classes override these methods to
+     *  keep their pageSize, maximum, and value properties in sync with the
+     *  viewport.   Similarly, they override their changeValueByPage() and
+     *  changeValueByStep() methods to
+     *  use the viewport's scrollPositionDelta methods to compute page and
+     *  and step offsets.

+     *
+     *  @default null
+     *  @see spark.core.IViewport
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
+     *
+     */
     override public function set viewport(newViewport:IViewport):void
     {
         super.viewport = newViewport;
@@ -132,11 +177,11 @@

     /**
-     *  Update the value property and, if viewport is non null, then set
-     *  its verticalScrollPosition to value.
+     *  Updates the value property and, if viewport is non null, then sets
+     *  its verticalScrollPosition to value.
      *
      *  @param value The new value of the value property.
-     *  @see viewport
+     *  @see #viewport
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
@@ -152,7 +197,8 @@

     /**
      *  If viewport is not null,
-     *  change the vertical scroll position for page up or page down by
+     *  changes the vertical scroll position for a page up or page down operation
+     *  by
      *  scrolling the viewport.
      *  This method calculates the amount to scroll by calling the
      *  IViewport.getVerticalScrollPositionDelta() method
@@ -163,14 +209,15 @@
      *  to the appropriate value.
      *
      *
If viewport is null,
-     *  change the vertical scroll position for page up or page down by calling
+     *  calling this method changes the vertical scroll position for
+     *  a page up or page down operation by calling
      *  the changeValueByPage() method.

      *
      *  @param increase Whether the page scroll is up (true) or
      *  down (false).
      *
-     *  @see mx.components.baseClasses.TrackBase#changeValueByPage()
-     *  @see mx.components.baseClasses.TrackBase#setValue()
+     *  @see spark.components.supportClasses.ScrollBar#changeValueByPage()
+     *  @see spark.components.supportClasses.Range#setValue()
      *  @see spark.core.IViewport
      *  @see spark.core.IViewport#verticalScrollPosition
      *  @see spark.core.IViewport#getVerticalScrollPositionDelta()
@@ -215,7 +262,7 @@

     /**
      *  If viewport is not null,
-     *  change the vertical scroll position for line up or line down by
+     *  changes the vertical scroll position for a line up or line down operation by
      *  scrolling the viewport.
      *  This method calculates the amount to scroll by calling the
      *  IViewport.getVerticalScrollPositionDelta() method
@@ -226,14 +273,15 @@
      *  to the appropriate value.
      *
      *
If viewport is null,
-     *  change the vertical scroll position for line up or line down by calling
+     *  calling this method changes the vertical scroll position for
+     *  a line up or line down operation by calling
      *  the changeValueByStep() method.

      *
      *  @param increase Whether the line scoll is up (true) or
      *  down (false).
      *
-     *  @see mx.components.baseClasses.TrackBase#changeValueByStep()
-     *  @see mx.components.baseClasses.TrackBase#setValue()
+     *  @see spark.components.supportClasses.Range#changeValueByStep()
+     *  @see spark.components.supportClasses.Range#setValue()
      *  @see spark.core.IViewport
      *  @see spark.core.IViewport#verticalScrollPosition
      *  @see spark.core.IViewport#getVerticalScrollPositionDelta()


Transferred from the Adobe Open Source Subversion Repository

Revision: 8031
Author:   egeorgie@adobe.com
Date:     2009-06-20T01:10:03.288554Z

Log Message:
-----------
Scrub the TODOs in the framework, convert to FIXMEs in the new convention and assigning an owner.

Doc Notes: N/A
Bugs: N/A
Reviewer: Deepa
tests: build, checkintests

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/supportClasses/StrokedElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/ProgressBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/development/eclipse/flex/flex4test/src/layouts/WheelLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/Group.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/DateChooser.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/Container.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/supportClasses/FadeInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/Slider.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/ScrollBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/Spinner.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/animation/Timeline.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/AddAction.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/Scale.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/supportClasses/AnimateInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/Rotate.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/mediaClasses/VolumeBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/DropDownController.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/HSlider.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/listClasses/ListBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/collections/ModifiedCollectionView.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/skins/spark/ErrorSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/Move.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/layouts/HorizontalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/SkinnableDataContainer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/AnimateTransform.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/SystemManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/StyleManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/List.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/DataGrid.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/supportClasses/MoveInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/effectClasses/SequenceInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/EffectTargetFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/SkinnableComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/supportClasses/AnimateTransformInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/RemoveAction.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/utils/BitmapUtil.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/DataGroup.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/skins/spark/FocusSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/supportClasses/GraphicElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/DropDownList.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/CompositeEffect.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/animation/MotionPath.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/utils/MatrixUtil.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/layouts/supportClasses/LayoutElementHelper.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/supportClasses/TextGraphicElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flash-integration/src/mx/flash/UIMovieClip.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/PopUpAnchor.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/mediaClasses/StreamingVideoSource.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/effectClasses/PropertyChanges.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/ToggleButtonBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/supportClasses/RemoveActionInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/Effect.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/layouts/VerticalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/pathSegments/LineSegment.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/spark/components/VideoPlayer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/animation/Animation.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/supportClasses/AnimateTransitionShaderInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/RichEditableText.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/geom/Transform.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/utils/ObjectUtil.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/effects/supportClasses/AddActionInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/ListBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/FocusManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/Path.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/Rect.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/SimpleText.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/StyleProtoChain.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/List.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/VSlider.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/SkinnableContainer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/GroupBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/CursorManagerImpl.as</path>

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

--- frameworks/projects/spark/src/spark/skins/spark/ErrorSkin.as
+++ frameworks/projects/spark/src/spark/skins/spark/ErrorSkin.as
@@ -50,7 +50,7 @@
     //
     //--------------------------------------------------------------------------

-    // TODO: Make this a style property?
+    // FIXME (gruehle): Make this a style property?
     private const ERROR_THICKNESS:int = 1;

     //--------------------------------------------------------------------------
@@ -161,7 +161,7 @@

         // Temporary solution for error drawing on CheckBox and RadioButton components.
         // Hide the label before drawing the focus.
-        // TODO: Figure out a better solution.
+        // FIXME (gruehle): Figure out a better solution.
         var hidLabelElement:Boolean = false;
         if ((weakIsCheck(errorObject, "spark.components::CheckBox") ||
              weakIsCheck(errorObject, "spark.components::RadioButton"))
@@ -184,7 +184,7 @@
             Object(errorObject).labelDisplay.displayObject.visible = true;

         // Special case for Scroller - fill the entire rect.
-        // TODO: Figure out a better solution.
+        // FIXME (gruehle): Figure out a better solution.
         if (weakIsCheck(errorObject, "spark.components::Scroller"))
         {
             rect.x = rect.y = ERROR_THICKNESS;


We must load content into our SecurityDomain if we want its
ApplicationDomain to be a child of ours.

git-svn-id: a1a4b28b82a3276cc491891159dd9963a0a72fae@4437 542714f4-19e9-0310-aa3c-eee0fc999fb1

--- src/as/com/threerings/util/MediaContainer.as
+++ src/as/com/threerings/util/MediaContainer.as
@@ -320,9 +320,9 @@
     protected function getContext (url :String) :LoaderContext
     {
         // We allow content to share but not overwrite our classes
-        return new LoaderContext(false,
+        return new LoaderContext(true,
             new ApplicationDomain(ApplicationDomain.currentDomain),
-            null);
+            SecurityDomain.currentDomain);
     }

     /**


fixed bugs handling column id 0 and empty csv data

Change-Id: I311b3ad5887950349af97b4bed869badb5bc7b7a

--- WeaveData/src/weave/data/DataSources/CSVDataSource.as
+++ WeaveData/src/weave/data/DataSources/CSVDataSource.as
@@ -120,13 +120,11 @@
 		{
 			// save parsedRows only if csvData has non-null session state
 			var rows:Array = csvData.getSessionState() as Array;
-			if (rows != null && rows.length)
-			{
-				// clear url value when we specify csvData session state
-				if (url.value)
-					url.value = null;
+			// clear url value when we specify csvData session state
+			if (url.value && rows != null && rows.length)
+				url.value = null;
+			if (!url.value)
 				handleParsedRows(rows);
-			}
 		}

 		/**
@@ -494,7 +492,7 @@

 			// get column id from metadata
 			var columnId:Object = metadata[METADATA_COLUMN_INDEX];
-			if (columnId)
+			if (columnId != null)
 			{
 				columnId = int(columnId);
 			}
@@ -709,6 +707,6 @@
 	public function getColumnMetadata():Object
 	{
 		var id:Object = source.getColumnIds()[columnIndex];
-		return id && source.generateMetadataForColumnId(id);
+		return id != null && source.generateMetadataForColumnId(id);
 	}
 }


added try/catch around retrieving cell value

--- WeaveData/src/weave/data/DataSources/XLSDataSource.as
+++ WeaveData/src/weave/data/DataSources/XLSDataSource.as
@@ -15,6 +15,7 @@

 package weave.data.DataSources
 {
+	import com.as3xls.xls.Cell;
 	import com.as3xls.xls.ExcelFile;

 	import flash.net.URLRequest;
@@ -184,10 +185,22 @@
 			values.length = xlsSheetsArray[0].values.length - 1;
 			for (var i:int = 0; i < values.length; i++)
 			{
-				if (columnIndex < 0)
-					values[i] = String(i + 1);
-				else
-					values[i] = xlsSheetsArray[0].values[i + 1][columnIndex];
+				try
+				{
+					if (columnIndex < 0)
+					{
+						values[i] = String(i + 1);
+					}
+					else
+					{
+						var cell:Cell = xlsSheetsArray[0].values[i + 1][columnIndex];
+						values[i] = cell.value;
+					}
+				}
+				catch (e:Error)
+				{
+					values[i] = e.toString();
+				}
 			}
 			return values;
 		}


Transferred from the Adobe Open Source Subversion Repository

Revision: 22712
Author:   ymachiya@adobe.com
Date:     2011-09-23T16:48:21.662770Z

Log Message:
-----------
Add ASDoc example for SplitViewNavigator.

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

Modified Paths:
--------------
<path kind="file" action="A">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/asdoc/en_US/spark/components/examples/views/MasterView.mxml</path>
<path kind="file" action="A">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/asdoc/en_US/spark/components/examples/views/DetailView.mxml</path>
<path kind="file" action="A">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/asdoc/en_US/spark/components/examples/SplitViewNavigatorExample.mxml</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/SplitViewNavigator.as</path>

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

--- frameworks/projects/mobilecomponents/src/spark/components/SplitViewNavigator.as
+++ frameworks/projects/mobilecomponents/src/spark/components/SplitViewNavigator.as
@@ -128,6 +128,10 @@
  *  @see spark.components.Application#aspectRatio
  *  @see spark.components.Callout
  *  @see spark.components.SkinnablePopUpContainer
+ *
+ *  @includeExample examples/SplitViewNavigatorExample.mxml -noswf
+ *  @includeExample examples/views/DetailView.mxml -noswf
+ *  @includeExample examples/views/MasterView.mxml -noswf
  *
  *  @langversion 3.0
  *  @playerversion AIR 3


Transferred from the Adobe Open Source Subversion Repository

Revision: 23247
Author:   cframpto@adobe.com
Date:     2011-12-20T19:21:13.134833Z

Log Message:
-----------
Remove ADOBE SYSTEMS license and replace with Apache license in headers - frameworks.  A 2nd pass will be needed to get the files not handled up by the scripts.

Modified Paths:
--------------
4959 paths were modified

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

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


Transferred from the Adobe Open Source Subversion Repository

Revision: 11321
Author:   clucier@adobe.com
Date:     2009-10-30T19:10:32.210636Z

Log Message:
-----------
State property overrides now share values when state groups are used.

QE notes: None
Doc notes: None
Bugs: SDK-23710
Reviewer: Glenn, Paul
Tests run: Checkin, States
Is noteworthy for integration: No

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

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

--- frameworks/projects/framework/src/mx/states/SetStyle.as
+++ frameworks/projects/framework/src/mx/states/SetStyle.as
@@ -15,6 +15,7 @@
 {

 import mx.core.UIComponent;
+import mx.core.IDeferredInstance;
 import mx.styles.IStyleClient;
 import mx.styles.StyleManager;
 import mx.core.IFlexModule;
@@ -89,6 +90,10 @@
      *  @param name The style to set.
      *
      *  @param value The value of the style in the view state.
+     *
+     *  @param valueFactory An optional write-only property from which to obtain
+     *  a shared value.  This is primarily used when this override's value is
+     *  shared by multiple states or state groups.
      *
      *  @langversion 3.0
      *  @playerversion Flash 9
@@ -98,13 +103,16 @@
     public function SetStyle(
             target:IStyleClient = null,
             name:String = null,
-            value:Object = null)
+            value:Object = null,
+            valueFactory:IDeferredInstance = null
+    )
     {
         super();

         this.target = target;
         this.name = name;
         this.value = value;
+        this.valueFactory = valueFactory;
     }

     //--------------------------------------------------------------------------
@@ -223,7 +231,32 @@
             apply(parentContext);
         }
     }
-
+
+    //----------------------------------
+    //  valueFactory
+    //----------------------------------
+
+    /**
+     *  An optional write-only property from which to obtain a shared value.  This
+     *  is primarily used when this override's value is shared by multiple states
+     *  or state groups.
+     *
+     *  @default undefined
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 4
+     */
+    public function set valueFactory(factory:IDeferredInstance):void
+    {
+        // We instantiate immediately in order to retain the instantiation
+        // behavior of a typical (unshared) value.  We may later enhance to
+        // allow for deferred instantiation.
+        if (factory)
+            value = factory.getInstance();
+    }
+
     //--------------------------------------------------------------------------
     //
     //  IOverride methods


Transferred from the Adobe Open Source Subversion Repository

Revision: 23246
Author:   cframpto@adobe.com
Date:     2011-12-20T17:40:08.069454Z

Log Message:
-----------
Rollback 23243.  If comment followed header it was stripped as well.

Modified Paths:
--------------
2361 paths were modified

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

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

 package mx.effects.easing
 {


Transferred from the Adobe Open Source Subversion Repository

Revision: 23246
Author:   cframpto@adobe.com
Date:     2011-12-20T17:40:08.069454Z

Log Message:
-----------
Rollback 23243.  If comment followed header it was stripped as well.

Modified Paths:
--------------
2361 paths were modified

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

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

 package mx.rpc.xml
 {


Transferred from the Adobe Open Source Subversion Repository

Revision: 10391
Author:   smgilson@adobe.com
Date:     2009-09-18T15:22:21.782689Z

Log Message:
-----------
Update ASDoc on new Spark control bars for Application.as and Panel.as

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

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

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

--- frameworks/projects/spark/src/spark/components/Panel.as
+++ frameworks/projects/spark/src/spark/components/Panel.as
@@ -109,7 +109,9 @@
  *

  *  <s:Panel
  *   Properties
- *   title=""
+ *    controlBarContent="null"
+ *    controlBarLayout="HorizontalLayout"
+ *    title=""
  *   >
  *      ...
  *      child tags
@@ -203,7 +205,9 @@

     /**
      *  The skin part that defines the appearance of the
-     *  control bar in the container.
+     *  control bar area of the container.
+     *  By default, the PanelSkin class defines the control bar area to appear at the bottom
+     *  of the content area of the Panel container with a grey background.
      *
      *  @see spark.skins.spark.PanelSkin
      *
@@ -221,8 +225,17 @@
     [ArrayElementType("mx.core.IVisualElement")]

     /**
-     *  The set of items that become the content of
-     *  the controlBarGroup
+     *  The set of components to include in the control bar area of the
+     *  Panel container.
+     *  The location and appearance of the control bar area of the Panel container
+     *  is determined by the spark.skins.spark.PanelSkin class.
+     *  By default, the PanelSkin class defines the control bar area to appear at the bottom
+     *  of the content area of the Panel container with a grey background.
+     *  Create a custom skin to change the default appearance of the control bar.
+     *
+     *  @default null
+     *
+     *  @see spark.skins.spark.PanelSkin
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
@@ -246,7 +259,9 @@
     //----------------------------------

     /**
-     *  An optional Layout assigned to the control bar.
+     *  Defines the layout of the control bar area of the container.
+     *
+     *  @default HorizontalLayout
      *
      *  @langversion 3.0
      *  @playerversion Flash 10


fix include in editor.as

fix include in editor.as

--- bin/Data/Scripts/Editor.as
+++ bin/Data/Scripts/Editor.as
@@ -17,6 +17,8 @@
 #include "Scripts/Editor/EditorResourceBrowser.as"
 #include "Scripts/Editor/EditorSpawn.as"
 #include "Scripts/Editor/EditorSoundType.as"
+#include "Scripts/Editor/EditorLayers.as"
+

 String configFileName;


Transferred from the Adobe Open Source Subversion Repository

Revision: 5099
Author:   gauravj@adobe.com
Date:     2009-02-27T03:43:02.639229Z

Log Message:
-----------
Update action script files with asdoc version tags.

QE Notes: None.
Doc Notes: Please review and update as necessary.
tests: checkintests

Modified Paths:
--------------
147 paths were modified

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

--- frameworks/projects/rpc/src/mx/messaging/Producer.as
+++ frameworks/projects/rpc/src/mx/messaging/Producer.as
@@ -36,6 +36,12 @@
  *    defaultHeaders="<i>No default.</i>"
  *  />
  *  </pre>
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion BlazeDS 4
+ *  @productversion LCDS 3
  */
 public class Producer extends AbstractProducer
 {
@@ -47,6 +53,12 @@

     /**
      *  The default message priority.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     public static const DEFAULT_PRIORITY:int = 4;

@@ -71,6 +83,12 @@
      *       producer.send(msg);
      *   }
      *   </pre>
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
 	public function Producer()
 	{
@@ -104,6 +122,12 @@

     /**
      *  Provides access to the subtopic for the remote destination that the MessageAgent uses.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion BlazeDS 4
+     *  @productversion LCDS 3
      */
     public function get subtopic():String
     {


removeChild()

removeChild()

--- frameworks/projects/XML/as/src/XML.as
+++ frameworks/projects/XML/as/src/XML.as
@@ -1114,14 +1114,73 @@
 				6. Let x.[[Length]] = x.[[Length]] - dp
 				7. Return true.
 			*/
-			if(child.nodeKind())
 			var removed:XML;
+			if(!child)
+				return false;
+			if(!_attributes)
+				return false;
+
+			if(!(child is XML))
+				return removeChildByName(child);
+
+			if(child.nodeKind() == "attribute")
+			{
+				for(i=0;i<_attributes.length;i++)
+				{
+					if(child.equals(_attributes[i]))
+					{
+						removed = _attributes[i];
+						removed.setParent(null);
+						_attributes.splice(i,1);
+						return true;
+					}
+				}
+			}
 			var idx:int = _children.indexOf(child);
+			if(idx < 0)
+				return false;
 			removed = _children.splice(idx,1);
 			child.setParent(null);
 			return removed;
 		}
-
+		private function removeChildByName(name:*):Boolean
+		{
+			var i:int;
+			name = toXMLName(name);
+			child = null;
+			var removedItem:Boolean = false;
+			if(name.isAttribute)
+			{
+				if(!_attributes)
+					return false;
+
+				for(i=_attributes.length-1;i>=0;i--)
+				{
+					if(_attributes[i].name().matches(name))
+					{
+						child = _attributes[i];
+						child.setParent(null);
+						_attributes.splice(i,1);
+						removedItem = true;
+					}
+				}
+				return removedItem;
+			}
+			//QUESTION am I handling non-elements correctly?
+			if(!_children)
+				return false;
+			for(i=_children.length-1;i>=0;i--)
+			{
+				if(_children[i].name().matches(name))
+				{
+					child = _children[i];
+					child.setParent(null);
+					_children.splice(i,1);
+					removedItem = true;
+				}
+			}
+			return removedItem;
+		}
 		public function removeChildAt(index:int):void
 		{
 			/*
@@ -1138,6 +1197,7 @@
 				  b. Return true
 				3. Else throw a TypeError exception
 			*/
+			//Do nothing for XML objects?
 		}

 		/**


variable to test for buffer on video as well

--- src/flash/htmlelements/VideoElement.as
+++ src/flash/htmlelements/VideoElement.as
@@ -37,6 +37,7 @@
 		private var _bytesTotal:Number = 0;
 		private var _bufferedTime:Number = 0;
 		private var _bufferEmpty:Boolean = false;
+		private var _bufferingChanged:Boolean = false;

 		private var _videoWidth:Number = -1;
 		private var _videoHeight:Number = -1;


guard against extra timeupdate event after video ended

--- src/flash/htmlelements/VideoElement.as
+++ src/flash/htmlelements/VideoElement.as
@@ -389,7 +389,9 @@

 			sendEvent(HtmlMediaEvent.SEEKING);
 			_stream.seek(pos);
-			sendEvent(HtmlMediaEvent.TIMEUPDATE);
+			if (!_isEnded) {
+				sendEvent(HtmlMediaEvent.TIMEUPDATE);
+			}
 		}

 		public function setVolume(volume:Number):void {


Rather than trying to fix the broken linear congruence algorithm, here is a Mersenne Twister instead. It should be a drop-in replacement to whatever degree that matters.

git-svn-id: a1a4b28b82a3276cc491891159dd9963a0a72fae@4540 542714f4-19e9-0310-aa3c-eee0fc999fb1

--- src/as/com/threerings/util/Random.as
+++ src/as/com/threerings/util/Random.as
@@ -1,6 +1,14 @@
-package com.threerings.util {
+package com.threerings.util
+{

-// A simple psuedo random number generator that allows seeding.
+/**
+ * A seedable pseudorandom generator of the Mersenne Twister variety, with an extremely
+ * long period. Note that this is not a cryptographically sound generator.
+ * This implementation is based on one found at --
+ *    http://onegame.bona.jp/tips/mersennetwister.html
+ * An explanation of the algorithm can be found at --
+ *    http://en.wikipedia.org/wiki/Mersenne_twister
+ */
 public class Random
 {
     /**
@@ -14,6 +22,7 @@
         if (seed == 0) {
             seed = uint(seedUniquifier++ + uint(Math.random() * 4294967295));
         }
+        x = new Array();
         setSeed(seed);
     }

@@ -23,7 +32,14 @@
      */
     public function setSeed (seed :uint) :void
     {
-        seed = uint(seed ^ multiplier);
+        x[0] = seed;
+        for (var i :int = 1; i < N; i++) {
+            x[i] = imul(1812433253, x[i - 1] ^ (x[i - 1] >>> 30)) + i;
+            x[i] &= 0xffffffff;
+        }
+        p = 0;
+        q = 1;
+        r = M;
     }

     /**
@@ -39,6 +55,8 @@

         if (n == 0) return int(next(32));

+        // Eyeball Sun's documenation of java.util.Random for an explanation
+        // of this while loop.
         var bits :int, val :int;
         do {
             bits = int(next(31));
@@ -60,18 +78,48 @@
      */
     public function nextNumber () :Number
     {
-        return Number(next(32) / (1 << 32));
+        return next(32) / 4294967296;
     }

-    protected function next (bits :int) :uint
+    protected function next (bits: int) :uint
     {
-        seed = uint(seed * multiplier + addend)
-        return uint(seed >>> (32 - bits));
+        var y :uint = (x[p] & UPPER_MASK) | (x[q] & LOWER_MASK);
+        x[p] = x[r] ^ (y >>> 1) ^ ((y & 1) * MATRIX_A);
+        y = x[p];
+
+        if (++p == N) { p = 0; }
+        if (++q == N) { q = 0; }
+        if (++r == N) { r = 0; }
+
+        y ^= (y >>> 11);
+        y ^= (y << 7) & 0x9d2c5680;
+        y ^= (y << 15) & 0xefc60000;
+        y ^= (y >>> 18);
+
+        return y >>> (32 - bits);
     }

-    protected var seed :uint;
+    protected function imul (a: Number, b: Number): Number {
+        var al :Number = a & 0xffff;
+        var ah :Number = a >>> 16;
+        var bl :Number = b & 0xffff;
+        var bh :Number = b >>> 16;
+        var ml :Number = al * bl;
+        var mh :Number = ((((ml >>> 16) + al * bh) & 0xffff) + ah * bl) & 0xffff;
+
+        return (mh << 16) | (ml & 0xffff);
+    }
+
+    protected const N :int = 624;
+    protected const M :int = 397;
+    protected const UPPER_MASK :uint = 0x80000000;
+    protected const LOWER_MASK :uint = 0x7fffffff;
+    protected const MATRIX_A :uint   = 0x9908b0df;
+    protected var x :Array;
+    protected var p :int;
+    protected var q :int;
+    protected var r :int;
+
     protected static var seedUniquifier :uint = 2812526361;
-    protected static const multiplier :uint = 452871439;
-    protected static const addend :uint = 11;
 }
 }


Transferred from the Adobe Open Source Subversion Repository

Revision: 23247
Author:   cframpto@adobe.com
Date:     2011-12-20T19:21:13.134833Z

Log Message:
-----------
Remove ADOBE SYSTEMS license and replace with Apache license in headers - frameworks.  A 2nd pass will be needed to get the files not handled up by the scripts.

Modified Paths:
--------------
4959 paths were modified

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

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


Widening.

Widening.

git-svn-id: a1a4b28b82a3276cc491891159dd9963a0a72fae@5718 542714f4-19e9-0310-aa3c-eee0fc999fb1

--- src/as/com/threerings/presents/util/SafeSubscriber.as
+++ src/as/com/threerings/presents/util/SafeSubscriber.as
@@ -29,28 +29,24 @@
 import com.threerings.presents.dobj.Subscriber;

 /**
- * A class that safely handles the asynchronous subscription to a
- * distributed object when it is not know if the subscription will
- * complete before the subscriber decides they no longer wish to be
+ * A class that safely handles the asynchronous subscription to a distributed object when it is not
+ * know if the subscription will complete before the subscriber decides they no longer wish to be
  * subscribed.
  */
 public class SafeSubscriber implements Subscriber
 {
-    private static const log :Log = Log.getLog(SafeSubscriber);
-    /**
-     * Creates a safe subscriber for the specified distributed object
-     * which will interact with the specified subscriber.
+    /**
+     * Creates a safe subscriber for the specified distributed object which will interact with the
+     * specified subscriber.
      */
     public function SafeSubscriber (oid :int, subscriber :Subscriber)
     {
         // make sure they're not fucking us around
         if (oid <= 0) {
-            throw new ArgumentError(
-                "Invalid oid provided to safesub [oid=" + oid + "]");
+            throw new ArgumentError("Invalid oid provided to safesub [oid=" + oid + "]");
         }
         if (subscriber == null) {
-            throw new ArgumentError(
-                "Null subscriber provided to safesub [oid=" + oid + "]");
+            throw new ArgumentError("Null subscriber provided to safesub [oid=" + oid + "]");
         }

         _oid = oid;
@@ -58,8 +54,8 @@
     }

     /**
-     * Returns true if we are currently subscribed to our object (or in
-     * the process of obtaining a subscription).
+     * Returns true if we are currently subscribed to our object (or in the process of obtaining a
+     * subscription).
      */
     public function isActive () :Boolean
     {
@@ -72,54 +68,50 @@
     public function subscribe (omgr :DObjectManager) :void
     {
         if (_active) {
-            log.warning("Active safesub asked to resubscribe " + this + ".");
+            log.warning("Active safesub asked to resubscribe " + this);
             return;
         }

         // note that we are now again in the "wishing to be subscribed" state
         _active = true;

-        // make sure we dont have an object reference (which should be
-        // logically impossible)
+        // make sure we dont have an object reference (which should be logically impossible)
         if (_object != null) {
-            log.warning("Incroyable! A safesub has an object and was " +
-                        "non-active!? " + this + ".");
+            log.warning("Incroyable! A safesub has an object and was non-active!? " + this);
             // make do in the face of insanity
             _subscriber.objectAvailable(_object);
             return;
         }

         if (_pending) {
-            // we were previously asked to subscribe, then they asked to
-            // unsubscribe and now they've asked to subscribe again, all
-            // before the original subscription even completed; we need do
-            // nothing here except as the original subscription request
-            // will eventually come through and all will be well
-            return;
-        }
-
-        // we're not pending and we just became active, that means we need
-        // to request to subscribe to our object
+            // we were previously asked to subscribe, then they asked to unsubscribe and now
+            // they've asked to subscribe again, all before the original subscription even
+            // completed; we need do nothing here except as the original subscription request will
+            // eventually come through and all will be well
+            return;
+        }
+
+        // we're not pending and we just became active, that means we need to request to subscribe
+        // to our object
         _pending = true;
         omgr.subscribeToObject(_oid, this);
     }

     /**
-     * Terminates the object subscription. If the initial subscription has
-     * not yet completed, the desire to terminate will be noted and the
-     * subscription will be terminated as soon as it completes.
+     * Terminates the object subscription. If the initial subscription has not yet completed, the
+     * desire to terminate will be noted and the subscription will be terminated as soon as it
+     * completes.
      */
     public function unsubscribe (omgr :DObjectManager) :void
     {
         if (!_active) {
-            // we may be non-active and have no object which could mean
-            // that subscription failed; in which case we don't want to
-            // complain about anything, just quietly ignore the
+            // we may be non-active and have no object which could mean that subscription failed;
+            // in which case we don't want to complain about anything, just quietly ignore the
             // unsubscribe request
             if (_object == null && !_pending) {
                 return;
             }
-            log.warning("Inactive safesub asked to unsubscribe " + this + ".");
+            log.warning("Inactive safesub asked to unsubscribe " + this);
             Log.dumpStack();
         }

@@ -129,21 +121,17 @@
         if (_pending) {
             // make sure we don't have an object reference
             if (_object != null) {
-                log.warning("Incroyable! A safesub has an object and is " +
-                            "pending!? " + this + ".");
-                Log.dumpStack();
+                log.warning("Have an object and am pending!? " + this, new Error());
             } else {
-                // nothing to do but wait for the subscription to complete
-                // at which point we'll pitch the object post-haste
+                // nothing to do but wait for the subscription to complete at which point we'll
+                // pitch the object post-haste
                 return;
             }
         }

         // make sure we have our object
         if (_object == null) {
-            log.warning("Zut alors! A safesub _was_ active and not " +
-                        "pending yet has no object!? " + this + ".");
-            Log.dumpStack();
+            log.warning("Was active and not pending yet have no object!? " + this, new Error());
             // nothing to do since we're apparently already unsubscribed
             return;
         }
@@ -158,14 +146,12 @@
     {
         // make sure life is not too cruel
         if (_object != null) {
-            log.warning("Madre de dios! Our object came available but " +
-                        "we've already got one!? " + this);
+            log.warning("Our object came available but we've already got one!? " + this);
             // go ahead and pitch the old one, God knows what's going on
             _object = null;
         }
         if (!_pending) {
-            log.warning("J.C. on a pogo stick! Our object came available " +
-                        "but we're not pending!? " + this);
+            log.warning("Our object came available but we're not pending!? " + this);
             // go with our badselves, it's the only way
         }

@@ -175,9 +161,8 @@
         // if we are no longer active, we don't want this damned thing
         if (!_active) {
             var omgr :DObjectManager = object.getManager();
-            // if the object's manager is null, that means the object is
-            // already destroyed and we need not trouble ourselves with
-            // unsubscription as it has already been pitched to the dogs
+            // if the object's manager is null, that means the object is already destroyed and we
+            // need not trouble ourselves with unsubscription as it has already been pitched
             if (omgr != null) {
                 omgr.unsubscribeFromObject(_oid, this);
             }
@@ -194,16 +179,15 @@
     {
         // do the right thing with our pending state
         if (!_pending) {
-            log.warning("Criminy creole! Our subscribe failed but we're " +
-                        "not pending!? " + this);
+            log.warning("Criminy creole! Our subscribe failed but we're not pending!? " + this);
             // go with our badselves, it's the only way
         }
         _pending = false;

         // if we're active, let our subscriber know that the shit hit the fan
         if (_active) {
-            // deactivate ourselves as we never got our object (and thus
-            // the real subscriber need not call unsubscribe())
+            // deactivate ourselves as we never got our object (and thus the real subscriber need
+            // not call unsubscribe())
             _active = false;
             _subscriber.requestFailed(oid, cause);
         }
@@ -222,5 +206,7 @@
     protected var _object :DObject;;
     protected var _active :Boolean;
     protected var _pending :Boolean;
+
+    private static const log :Log = Log.getLog(SafeSubscriber);
 }
 }


Fix a bug where we were finishing resolution of the entire scene multiple times if some blocks were basically already resolved.

git-svn-id: b675b909355d5cf946977f44a8ec5a6ceb3782e4@957 ed5b42cb-e716-0410-a449-f6a68f950b19

--- src/as/com/threerings/miso/client/MisoScenePanel.as
+++ src/as/com/threerings/miso/client/MisoScenePanel.as
@@ -206,12 +206,16 @@

     protected function refreshBaseBlockScenes () :void
     {
+        _resStartTime = getTimer();
+
         var blocks :Set = getBaseBlocks();

         // Keep this to use in our function...
         var thisRef :MisoScenePanel = this;

-        var resolving :Boolean = false;
+
+        // Postpone calling complete til they're all queued up.
+        _skipComplete = true;

         blocks.forEach(function(blockKey :int) :void {
             if (!_blocks.containsKey(blockKey)) {
@@ -219,11 +223,13 @@
                     new SceneBlock(blockKey, _objScene, _isoView, _metrics);
                 _pendingBlocks.add(sceneBlock);
                 sceneBlock.resolve(_ctx, _model, thisRef, blockResolved);
-                resolving = true;
             }
         });

-        if (!resolving) {
+        _skipComplete = false;
+
+
+        if (_pendingBlocks.size() == 0) {
             resolutionComplete();
         }
     }
@@ -236,8 +242,7 @@
         // Move that guy from pending to ready...
         _readyBlocks.add(resolved);
         _pendingBlocks.remove(resolved);
-
-        if (_pendingBlocks.size() == 0) {
+        if (_pendingBlocks.size() == 0 && !_skipComplete) {
             resolutionComplete();
         }
     }
@@ -257,22 +262,22 @@

         _objScene.render();

-        DelayUtil.delayFrame(function() :void {
-            // Then we let the scene finally move if it's trying to...
-            if (_pendingMoveBy != null) {
-                _isoView.centerOnPt(new Pt(_pendingMoveBy.x + _isoView.currentX,
-                    _pendingMoveBy.y + _isoView.currentY), false);
-                _pendingMoveBy = null;
+        // Then we let the scene finally move if it's trying to...
+        if (_pendingMoveBy != null) {
+            _isoView.centerOnPt(new Pt(_pendingMoveBy.x + _isoView.currentX,
+                _pendingMoveBy.y + _isoView.currentY), false);
+            _pendingMoveBy = null;
+        }
+
+        // Now, take out any old blocks no longer in our valid blocks.
+        var blocks :Set = getBaseBlocks();
+        for each (var baseKey :int in _blocks.keys()) {
+            if (!blocks.contains(baseKey)) {
+                _blocks.remove(baseKey).release();
             }
-
-            // Now, take out any old blocks no longer in our valid blocks.
-            var blocks :Set = getBaseBlocks();
-            for each (var baseKey :int in _blocks.keys()) {
-                if (!blocks.contains(baseKey)) {
-                    _blocks.remove(baseKey).release();
-                }
-            }
-        });
+        }
+
+        trace("Scene Block Resolution took: " + (getTimer() - _resStartTime) + "ms");
     }

     protected function refreshScene () :void
@@ -321,6 +326,10 @@
     protected var _masks :Map = Maps.newMapOf(int);
     protected var _fringes :Map = new WeakValueMap(Maps.newMapOf(FringeTile));

+    protected var _resStartTime :int;
+
+    protected var _skipComplete :Boolean
+
     protected const DEF_WIDTH :int = 985;
     protected const DEF_HEIGHT :int = 560;


Filtered out links to modules not in selection from selection

--- src/Displays/SelectionBox.as
+++ src/Displays/SelectionBox.as
@@ -1,6 +1,8 @@
 package Displays {
+	import Components.Port;
 	import flash.geom.Point;
 	import Components.Bloc;
+	import Layouts.PortLayout;
 	import org.flixel.*;

 	/**
@@ -45,18 +47,29 @@
 		private function createSelection():void {
 			var area:FlxBasic = new FlxObject(x - scale.x / 2, y - scale.y / 2, scale.x, scale.y);

-			var links:Vector.<DLink> = new Vector.<DLink>;
-			for each (var link:DLink in displayLinks)
-				if (link.link.mouseable && !link.link.FIXED && link.overlaps(area))
-					links.push(link);
-
 			var modules:Vector.<DModule> = new Vector.<DModule>;
 			for each (var module:DModule in displayModules)
 				if (module.module.exists && !module.module.FIXED && module.overlaps(area))
 					modules.push(module);

+			var links:Vector.<DLink> = new Vector.<DLink>;
+			for each (var link:DLink in displayLinks)
+				if (link.link.mouseable && !link.link.FIXED &&
+					(!modules.length || (portInDModules(link.link.source, modules) &&
+										 portInDModules(link.link.destination, modules))) &&
+					link.overlaps(area))
+					links.push(link);
+
 			if (modules.length || links.length)
 				displayBloc = DBloc.fromDisplays(links, modules);
+		}
+
+		private function portInDModules(port:Port, dModules:Vector.<DModule>):Boolean {
+			for each (var dModule:DModule in dModules)
+				for each (var portLayout:PortLayout in dModule.module.layout.ports)
+					if (portLayout.port == port)
+						return true;
+			return false;
 		}
 	}


Revising the LeaderBoard tests to match the intended goal, and avoids unintended accidental outputs from the "AroundTarget" style LeaderBoard calls.

--- targets/actionscript/source/PlayFabApiTests.as
+++ targets/actionscript/source/PlayFabApiTests.as
@@ -403,23 +403,22 @@
         /// </summary>
         private function LeaderBoard() : void
         {
-            var clientRequest:com.playfab.ClientModels.GetLeaderboardAroundCurrentUserRequest = new com.playfab.ClientModels.GetLeaderboardAroundCurrentUserRequest();
+            var clientRequest:com.playfab.ClientModels.GetLeaderboardRequest = new com.playfab.ClientModels.GetLeaderboardRequest();
             clientRequest.MaxResultsCount = 3;
             clientRequest.StatisticName = TEST_STAT_NAME;
-            PlayFabClientAPI.GetLeaderboardAroundCurrentUser(clientRequest, Wrap(GetClientLbCallback, "ClientLB"), Wrap(Shared_ApiCallFailure, "ClientLB_Fail"));
-        }
-        private function GetClientLbCallback(result:com.playfab.ClientModels.GetLeaderboardAroundCurrentUserResult) : void
+            PlayFabClientAPI.GetLeaderboard(clientRequest, Wrap(GetClientLbCallback, "ClientLB"), Wrap(Shared_ApiCallFailure, "ClientLB_Fail"));
+        }
+        private function GetClientLbCallback(result:com.playfab.ClientModels.GetLeaderboardResult) : void
         {
             if (result.Leaderboard.length == 0)
                 ASyncAssert.Fail("Client leaderboard results not found");

-            var serverRequest:com.playfab.ServerModels.GetLeaderboardAroundUserRequest = new com.playfab.ServerModels.GetLeaderboardAroundUserRequest();
+            var serverRequest:com.playfab.ServerModels.GetLeaderboardRequest = new com.playfab.ServerModels.GetLeaderboardRequest();
             serverRequest.MaxResultsCount = 3;
             serverRequest.StatisticName = TEST_STAT_NAME;
-            serverRequest.PlayFabId = playFabId;
-            PlayFabServerAPI.GetLeaderboardAroundUser(serverRequest, Wrap(GetServerLbCallback, "ServerLB"), Wrap(Shared_ApiCallFailure, "ServerLB_Fail"));
-        }
-        private function GetServerLbCallback(result:com.playfab.ServerModels.GetLeaderboardAroundUserResult) : void
+            PlayFabServerAPI.GetLeaderboard(serverRequest, Wrap(GetServerLbCallback, "ServerLB"), Wrap(Shared_ApiCallFailure, "ServerLB_Fail"));
+        }
+        private function GetServerLbCallback(result:com.playfab.ServerModels.GetLeaderboardResult) : void
         {
             if (result.Leaderboard.length == 0)
                 ASyncAssert.Fail("Server leaderboard results not found");


Revert last attempt

Revert last attempt

git-svn-id: 7d913817b0a978d84de757191e4bce372605a781@1395325 13f79535-47bb-0310-9956-ffa450edef68

--- mustella/as3/src/mustella/SendResultsToRunner.as
+++ mustella/as3/src/mustella/SendResultsToRunner.as
@@ -49,7 +49,7 @@

 	public static var regExp5:RegExp = /%3D/g;

-	public static var u:URLLoader;
+

 	/**
   	 * the way out for the result data
@@ -128,19 +128,7 @@
 		if (!noSend) {
 			trace ("sending: " + baseURL + midURL + final + " at: " + new Date());
 			// var u:String= baseURL + midURL + final;
-			if (u == null)
-			{
-				u = new URLLoader();
-				u.addEventListener("complete", completeHandler);
-				u.addEventListener("complete", httpEvents);
-				u.addEventListener("ioError", httpEvents);
-				u.addEventListener("open", httpEvents);
-				u.addEventListener("progress", httpEvents);
-				u.addEventListener("httpStatus", httpEvents);
-				u.addEventListener("securityError", httpEvents);
-			}
-			UnitTester.pendingOutput++;
-			u.load (new URLRequest (baseURL + midURL + final));
+			var u:URLLoader = new URLLoader (new URLRequest (baseURL + midURL + final));

 			/*
 			var sock:Socket = new Socket ("localhost",  UnitTester.runnerPort);
@@ -149,14 +137,28 @@
 			sock.flush();
 			*/

+			u.addEventListener("complete", completeHandler);
+			u.addEventListener("complete", httpEvents);
+			u.addEventListener("ioError", httpEvents);
+			u.addEventListener("open", httpEvents);
+			u.addEventListener("progress", httpEvents);
+			u.addEventListener("httpStatus", httpEvents);
+			u.addEventListener("securityError", httpEvents);
+			u.load (new URLRequest (baseURL + midURL + final));
+			UnitTester.pendingOutput++;
+			dict[u] = baseURL + midURL + final;
 		}

 	}

+	public static var dict:Dictionary = new Dictionary();
+
 	public static function completeHandler (e:Event):void  {
 		UnitTester.pendingOutput--;
+		//trace("received complete for", dict[e.target]);
+		delete dict[e.target];
 	}

 	public static function httpEvents (e:Event):void  {


added a loop : Boolean argument to the AnimationController constructor

--- src/aerys/minko/scene/controller/AnimationController.as
+++ src/aerys/minko/scene/controller/AnimationController.as
@@ -107,11 +107,13 @@
 			_currentTime = value;
 		}

-		public function AnimationController(timelines	: Vector.<ITimeline>)
+		public function AnimationController(timelines 	: Vector.<ITimeline>,
+											loop		: Boolean	= true)
 		{
 			super();

 			_timelines = timelines;
+			_looping = loop;

 			initialize();
 		}


Transferred from the Adobe Open Source Subversion Repository

Revision: 19081
Author:   chiedozi@adobe.com
Date:     2010-12-06T23:15:36.296927Z

Log Message:
-----------
Prevent ActionBar and TabBar hide and show animations from occurring when the device's orientation changes
Fixed an RTE that occurred when reseting the navigators property on TabbedViewNavigator

QE notes:
Doc notes:
Bugs:SDK-28541,SDK-28768
Reviewer: Ryan
Tests run: checkintests
Is noteworthy for integration: No

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/components/TabbedViewNavigator.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/components/supportClasses/ViewNavigatorBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/components/ViewNavigator.as</path>

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

--- frameworks/projects/mobilecomponents/src/spark/components/TabbedViewNavigator.as
+++ frameworks/projects/mobilecomponents/src/spark/components/TabbedViewNavigator.as
@@ -339,6 +339,10 @@
      *  Each navigator isrepresented as a tab in this components tab bar.
      *  Only one navigator can be active at a time, and can be referenced using
      *  the activeNavigator property.
+	 *
+	 *
Changing this property will cause all current navigators to be removed
+	 *  and the selected index will be reset to 0. This operation cannot be
+	 *  canceled and is committed immediately.

      *
      *  @langversion 3.0
      *  @playerversion Flash 10
@@ -389,10 +393,19 @@
         }

         if (value && value.length > 0)
-            selectedIndex = 0;
+		{
+            _selectedIndex = 0;
+		}
         else
-            selectedIndex = NO_PROPOSED_SELECTION;
-
+		{
+            _selectedIndex = NO_PROPOSED_SELECTION;
+		}
+
+		// The proposed selected index is reset because it is no longer valid
+		// since the array of navigators has changed.
+		_proposedSelectedIndex = NO_PROPOSED_SELECTION;
+		selectedIndexChanged = false;
+
         // Notify listeners that the collection changed
         internalDispatchEvent(CollectionEventKind.RESET);
     }
@@ -760,7 +773,7 @@
             // The animateTabBarVisibility flag is set to true if the
             // hideTabBar() or showTabBar() methods are called with the
             // animate flag set to true
-            if (transitionsEnabled && animateTabBarVisbility)
+            if (!disableNextControlAnimation && transitionsEnabled && animateTabBarVisbility)
             {
                 tabBarProps = {target:tabBar, showing:showingTabBar};
                 tabBarVisibilityEffect = showingTabBar ?
@@ -778,6 +791,10 @@

                 if (activeView)
                     activeView.setTabBarVisible(showingTabBar);
+
+				// When this flag is true, the animations should only be disabled for the
+				// current frame, so reset the flag so animations play on subsequent frames.
+				disableNextControlAnimation = false;
             }
         }


Transferred from the Adobe Open Source Subversion Repository

Revision: 11675
Author:   hmuller@adobe.com
Date:     2009-11-12T00:25:39.300334Z

Log Message:
-----------
Added minValue,maxValue,etc Style/Inspectable metadata tags for tools.

QE notes:
Doc notes:
Bugs: sdk-24100
Reviewer: Glenn
Tests run:
Is noteworthy for integration: yes

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/primitives/supportClasses/GraphicElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/easing/EaseInOutBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/styles/metadata/BasicInheritingTextStyles.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/Fade.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/ButtonBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/TextInput.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/Effect.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/Slider.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/ScrollBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/Spinner.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/AddAction.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/graphics/GradientStroke.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/VerticalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UIComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/primitives/VideoElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/animation/Animation.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/graphics/SolidColorStroke.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/SkinnableTextBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/HorizontalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/SkinnableDataContainer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/primitives/Rect.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/styles/metadata/BasicNonInheritingTextStyles.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/graphics/SolidColor.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/TileLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/TextBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/List.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/graphics/GradientEntry.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/animation/Keyframe.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/supportClasses/LayoutBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/styles/metadata/AdvancedInheritingTextStyles.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/GroupBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/Range.as</path>

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

--- frameworks/projects/spark/src/spark/styles/metadata/BasicInheritingTextStyles.as
+++ frameworks/projects/spark/src/spark/styles/metadata/BasicInheritingTextStyles.as
@@ -117,7 +117,7 @@
  *  @playerversion AIR 1.5
  *  @productversion Flex 4
  */
-[Style(name="fontSize", type="Number", format="Length", inherit="yes")]
+[Style(name="fontSize", type="Number", format="Length", inherit="yes", minValue="1.0", maxValue="720.0")]

 /**
  *  @copy flashx.textLayout.formats.ITextLayoutFormat#fontStyle
@@ -247,7 +247,7 @@
  *  @playerversion AIR 1.5
  *  @productversion Flex 4
  */
-[Style(name="textAlpha", type="Number", inherit="yes")]
+[Style(name="textAlpha", type="Number", inherit="yes", minValue="0.0", maxValue="1.0")]

 /**
  *  @copy flashx.textLayout.formats.ITextLayoutFormat#textDecoration


Transferred from the Adobe Open Source Subversion Repository

Revision: 11468
Author:   smgilson@adobe.com
Date:     2009-11-05T16:54:31.738281Z

Log Message:
-----------
Part 1 of ASDoc localization bug fixes

QE notes: -
Doc notes: -
Bugs: - FLEXDOCS-934, FLEXDOCS-909, FLEXDOCS-908, FLEXDOCS-906, FLEXDOCS-882, FLEXDOCS-883, FLEXDOCS-881
Reviewer: -
Tests run: - checkintests
Is noteworthy for integration: No

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/Pause.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/easing/Quartic.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/WipeLeft.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/easing/Linear.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/Tween.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/easing/Quintic.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/easing/Quadratic.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/easing/Cubic.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/WipeDown.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/utils/HSBColor.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/utils/ArrayUtil.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/TweenEffect.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/WipeRight.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/easing/Sine.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/DefaultListEffect.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/WipeUp.as</path>

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

--- frameworks/projects/framework/src/mx/effects/Pause.as
+++ frameworks/projects/framework/src/mx/effects/Pause.as
@@ -47,43 +47,43 @@
 {
     include "../core/Version.as";

-	//--------------------------------------------------------------------------
-	//
-	//  Constructor
-	//
-	//--------------------------------------------------------------------------
+    //--------------------------------------------------------------------------
+    //
+    //  Constructor
+    //
+    //--------------------------------------------------------------------------

-	/**
-	 * Constructor.
-	 *
-	 * @param target This argument is ignored by the Pause effect
-	 * if there is no eventName attribute assigned. If there
-	 * is an eventName, then the target must be an object
-	 * of type IEventDispatcher, because it is expected to dispatch
-	 * that named event. A null target is allowed for this effect since
-	 * a Pause effect with simply a duration property is
-	 * not acting on any specific target and therefore does not need one.
-	 *
-	 *  @langversion 3.0
-	 *  @playerversion Flash 9
-	 *  @playerversion AIR 1.1
-	 *  @productversion Flex 3
-	 */
-	public function Pause(target:Object = null)
-	{
-	    // Effect requires non-null targets, so if they didn't give us one
-	    // we will create a dummy object to serve in its place. If the effect
-	    // is being used to listen to events, then they will supply a real
-	    // target of type IEventDispatcher instead, either here or separately
-	    // in the target attribute
-	    if (!target)
-	       target = new Object();
-
-		super(target);
+    /**
+     * Constructor.
+     *
+     * @param target This argument is ignored by the Pause effect
+     * if there is no eventName attribute assigned. If there
+     * is an eventName, then the target must be an object
+     * of type IEventDispatcher, because it is expected to dispatch
+     * that named event. A null target is allowed for this effect since
+     * a Pause effect with simply a duration property is
+     * not acting on any specific target and therefore does not need one.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
+     */
+    public function Pause(target:Object = null)
+    {
+        // Effect requires non-null targets, so if they didn't give us one
+        // we will create a dummy object to serve in its place. If the effect
+        // is being used to listen to events, then they will supply a real
+        // target of type IEventDispatcher instead, either here or separately
+        // in the target attribute
+        if (!target)
+           target = new Object();
+
+        super(target);

-		instanceClass = PauseInstance;
-	}
-
+        instanceClass = PauseInstance;
+    }
+
     //--------------------------------------------------------------------------
     //
     //  Properties
@@ -98,7 +98,7 @@
      * Name of event that Pause is waiting on before ending.
      * This parameter must be used in conjunction with the
      * target property, which must be of type
-     * IEventDispather; all events must originate
+     * IEventDispatcher; all events must originate
      * from some dispatcher.
      *
      *
Listening for eventName is also related to the
@@ -157,15 +157,15 @@
         pauseInstance.eventName = eventName;
     }

-	/**
-	 *  @private
-	 */
-	override public function createInstances(targets:Array = null):Array
-	{
-		var newInstance:IEffectInstance = createInstance();
-
-		return newInstance ? [ newInstance ] : [];
-	}
+    /**
+     *  @private
+     */
+    override public function createInstances(targets:Array = null):Array
+    {
+        var newInstance:IEffectInstance = createInstance();
+
+        return newInstance ? [ newInstance ] : [];
+    }
 }

 }


Transferred from the Adobe Open Source Subversion Repository

Revision: 3257
Author:   jimurphy@adobe.com
Date:     2008-09-18T18:16:26.838722Z

Log Message:
-----------
-Merged 3.0.X revisions 3232,3236,3238,3244 -> trunk
-integrated:
 Player build d604
 flex-messaging-common.jar 4.0.0.3256

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/listClasses/TileListItemRenderer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/lib/flex-messaging-common.jar</path>
<path kind="file" action="M">/flex/sdk/trunk/in/player/10/win/Install Flash Player 10 Plugin.exe</path>
<path kind="file" action="M">/flex/sdk/trunk/in/player/10/mac/Install Flash Player 10 UB.dmg</path>
<path kind="file" action="M">/flex/sdk/trunk/in/player/10/win/Install Flash Player 10 ActiveX.exe</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/PopUpButton.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/Menu.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/TextInput.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/libs/player/10/playerglobal.swc</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/ComboBox.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/defaults-2.0.0.css</path>
<path kind="dir" action="M">/flex/sdk/trunk</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/defaults-2.0.1.css</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/listClasses/ListItemRenderer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/in/player/10/lnx/flashplayer.tar.gz</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/ColorPicker.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/TextArea.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/defaults.css</path>
<path kind="file" action="M">/flex/sdk/trunk/in/player/10/lnx/install_flash_player_10_linux.tar.gz</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/DateField.as</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/controls/treeClasses/TreeItemRenderer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/dataGridClasses/DataGridItemRenderer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/in/player/10/lnx/libflashplayer.so.tar.gz</path>
<path kind="file" action="M">/flex/sdk/trunk/in/player/10/win/FlashPlayer.exe</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/modules/ModuleManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/in/player/10/mac/Flash Player.app.zip</path>

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

--- frameworks/projects/mx/src/mx/controls/ColorPicker.as
+++ frameworks/projects/mx/src/mx/controls/ColorPicker.as
@@ -12,6 +12,7 @@
 package mx.controls
 {

+import flash.display.DisplayObject;
 import flash.events.Event;
 import flash.events.FocusEvent;
 import flash.events.KeyboardEvent;
@@ -31,6 +32,7 @@
 import mx.events.DropdownEvent;
 import mx.events.FlexEvent;
 import mx.events.FlexMouseEvent;
+import mx.events.InterManagerRequest;
 import mx.events.SandboxMouseEvent;
 import mx.managers.IFocusManager;
 import mx.managers.ISystemManager;
@@ -1166,35 +1168,49 @@
             dropdownSwatch.showTextField = showTextField;
             dropdownSwatch.selectedColor = selectedColor;
             dropdownSwatch.owner = this;
-            point = dropdownSwatch.parent.globalToLocal(point);

             // Position: top or bottom
-            var yOffset:Number = point.y;
-            var sm:ISystemManager = systemManager;
-            if (point.y + dropdownSwatch.height > sm.screen.height && point.y > (height + dropdownSwatch.height)) // Up
+            var sm:ISystemManager = systemManager.topLevelSystemManager;
+            var sbRoot:DisplayObject = sm.getSandboxRoot();
+            var screen:Rectangle;
+
+            if (sm != sbRoot)
+            {
+                var request:InterManagerRequest = new InterManagerRequest(InterManagerRequest.SYSTEM_MANAGER_REQUEST,
+                                        false, false,
+                                        "getVisibleApplicationRect");
+                sbRoot.dispatchEvent(request);
+                screen = Rectangle(request.value);
+            }
+            else
+                screen = sm.getVisibleApplicationRect();
+
+            if (point.y + height + dropdownGap + dropdownSwatch.height > screen.bottom &&
+                point.y > (screen.top + dropdownGap + dropdownSwatch.height)) // Up
             {
                 // Dropdown opens up instead of down
-                yOffset -= dropdownGap + dropdownSwatch.height;
+                point.y -= dropdownGap + dropdownSwatch.height;
                 initY = -dropdownSwatch.height/scaleY;
                 dropdownSwatch.tweenUp = true;
             }
             else // Down
             {
-                yOffset += dropdownGap + height;
+                point.y += dropdownGap + height;
                 initY = dropdownSwatch.height/scaleY;
                 dropdownSwatch.tweenUp = false;
             }

             // Position: left or right
-            var xOffset:Number = point.x;
-            if (point.x + dropdownSwatch.width > sm.screen.width && point.x > (width + dropdownSwatch.width))
+            if (point.x + width + dropdownSwatch.width > screen.right &&
+                point.x > (screen.left + dropdownSwatch.width))
             {
                 // Dropdown appears to the left instead of right
-                xOffset -= (dropdownSwatch.width - width);
+                point.x -= (dropdownSwatch.width - width);
             }

             // Position the dropdown
-            dropdownSwatch.move(xOffset, yOffset);
+            point = dropdownSwatch.parent.globalToLocal(point);
+            dropdownSwatch.move(point.x, point.y);

             //dropdownSwatch.setFocus();


Transferred from the Adobe Open Source Subversion Repository

Revision: 11471
Author:   hmuller@adobe.com
Date:     2009-11-05T18:49:37.088559Z

Log Message:
-----------
Wireframe skins for TabBar.

QE notes:
Doc notes:
Bugs:
Reviewer: Glenn
Tests run:
Is noteworthy for integration: The new TabBar component is now code complete

Modified Paths:
--------------
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/wireframe/src/spark/skins/wireframe/TabBarButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/wireframe/src/WireframeClasses.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/wireframe/src/spark/skins/wireframe/TabBarSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/wireframe/defaults.css</path>

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

--- frameworks/projects/wireframe/src/WireframeClasses.as
+++ frameworks/projects/wireframe/src/WireframeClasses.as
@@ -56,6 +56,8 @@
 	import spark.skins.wireframe.SpinnerDecrementButtonSkin; SpinnerDecrementButtonSkin;
 	import spark.skins.wireframe.SpinnerIncrementButtonSkin; SpinnerIncrementButtonSkin;
 	import spark.skins.wireframe.SpinnerSkin; SpinnerSkin;
+	import spark.skins.wireframe.TabBarSkin; TabBarSkin;
+	import spark.skins.wireframe.TabBarButtonSkin; TabBarButtonSkin;
 	import spark.skins.wireframe.TextAreaSkin; TextAreaSkin;
 	import spark.skins.wireframe.TextInputSkin; TextInputSkin;
 	import spark.skins.wireframe.TitleWindowCloseButtonSkin; TitleWindowCloseButtonSkin;


Bug 1170740 - Fix signatures of system.Security.allow(Insecure)Domain

--- src/flash/system/Security.as
+++ src/flash/system/Security.as
@@ -29,8 +29,8 @@
   public static native function set disableAVM1Loading(value:Boolean):void;
   public static native function get sandboxType():String;
   public static native function get pageDomain():String;
-  public static native function allowDomain():void;
-  public static native function allowInsecureDomain():void;
+  public static native function allowDomain(...domains):void;
+  public static native function allowInsecureDomain(...domains):void;
   public static native function loadPolicyFile(url:String):void;
   public static native function showSettings(panel:String = "default"):void;
   internal static native function duplicateSandboxBridgeInputArguments(toplevel:Object,