Transferred from the Adobe Open Source Subversion Repository

Revision: 10006
Author:   gruehle@adobe.com
Date:     2009-09-03T22:04:47.081899Z

Log Message:
-----------
Initial checkin of the "More styles for Spark skins" feature. Details here:
http://opensource.adobe.com/wiki/display/flexsdk/More+Styles+for+Spark+Skins

There are some known issues:
* Panel bottom corners not rounded correctly when the panel has a control bar
* cornerRadius on Tab and DateChooser non functional
* cornerRadius values > 4 have drawing artifacts in the "down" state of Button and button-like components
* TextInput/TextArea incorrectly list lineBreak and verticalAlign as valid styles

This checkin also includes a couple minor unrelated bug fixes:
* Remove MiniDebugTarget. This is a logging target that used MiniDebug, which hasn't worked since Flex 1.5
* Fix RTEs when setting focusSkin to null
* Optimization: don't measure skins if the host component has explicit sizes

QE notes: Yes, many baseline images will need to be regenerated
Doc notes: New ASDoc comments should be scrubbed
Bugs: SDK-22931, SDK-22798, SDK-22217, SDK-19358
Reviewer: Jason
Tests run: checkintests, cyclone
Is noteworthy for integration: Yes

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/sparkskins/src/mx/skins/spark/StepperIncrButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/DropDownList.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/sparkskins/src/mx/skins/spark/PopUpButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/spark/skins/spark/SparkChromeWindowedApplicationSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/spark/skins/spark/WindowedApplicationSkin.mxml</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/spark/src/spark/skins/spark/ButtonBarLastButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/skins/spark/DefaultButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/NumericStepper.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/framework/src/mx/logging/targets/MiniDebugTarget.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/airframework/defaults.css</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/skins/spark/DropDownListSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/sparkskins/src/mx/skins/spark/StepperDecrButtonSkin.mxml</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/Spinner.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/skins/spark/SpinnerDecrementButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/INavigatorContent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/IDeferredContentOwner.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/skins/spark/TextInputSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/tests/basicTests/BasicTests.css</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/skins/spark/ButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/skins/spark/ToggleButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/skins/spark/TextAreaSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/Skin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/sparkskins/src/mx/skins/spark/EditableComboBoxSkin.mxml</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/defaults.css</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/projects/spark/src/spark/components/SkinnableContainer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/sparkskins/src/mx/skins/spark/DefaultButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/sparkskins/src/mx/skins/spark/ButtonBarLastButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/defaults.css</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/sparkskins/src/mx/skins/spark/SparkSkinForHalo.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/SkinnableComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/skins/spark/ButtonBarFirstButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/skins/spark/ListSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/sparkskins/src/mx/skins/spark/TextInputBorderSkin.mxml</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/skins/spark/SpinnerIncrementButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/NumericStepper.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/sparkskins/src/mx/skins/spark/ButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/spark/components/WindowedApplication.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/halo-manifest.xml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/metadata/BorderStyles.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/spark/components/Window.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UIComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/ComboBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/sparkskins/src/mx/skins/spark/PanelBorderSkin.mxml</path>
<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/sparkskins/src/mx/skins/spark/ButtonBarFirstButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/Application.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/skins/spark/DropDownListButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/sparkskins/src/mx/skins/spark/ComboBoxSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/skins/SparkSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/primitives/RectangularDropShadow.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/mxml-manifest.xml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/sparkskins/src/mx/skins/spark/BorderSkin.mxml</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/spark/src/spark/skins/spark/NumericStepperTextInputSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/ScrollControlBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/skins/spark/PanelSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/skins/spark/ApplicationSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/tests/basicTests/spark/scripts/BorderTestScript.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/Scroller.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/skins/spark/FocusSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/wireframe/src/spark/skins/wireframe/ApplicationSkin.mxml</path>

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

--- frameworks/projects/framework/src/mx/styles/metadata/BorderStyles.as
+++ frameworks/projects/framework/src/mx/styles/metadata/BorderStyles.as
@@ -113,6 +113,17 @@
 [Style(name="backgroundSize", type="String", inherit="no", theme="halo")]

 /**
+ *  Alpha of the border.
+ *  @default 1
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 10
+ *  @playerversion AIR 1.5
+ *  @productversion Flex 4
+ */
+[Style(name="borderAlpha", type="Number", inherit="no", theme="spark")]
+
+/**
  *  Color of the border.
  *  The default value depends on the component class;
  *  if not overridden for the class, the default value is 0xB7BABC.
@@ -122,7 +133,7 @@
  *  @playerversion AIR 1.1
  *  @productversion Flex 3
  */
-[Style(name="borderColor", type="uint", format="Color", inherit="no", theme="halo")]
+[Style(name="borderColor", type="uint", format="Color", inherit="no", theme="halo, spark")]

 /**
  *  Bounding box sides.
@@ -186,6 +197,18 @@
 [Style(name="borderThickness", type="Number", format="Length", inherit="no", theme="halo")]

 /**
+ *  Visibility of the border.
+ *
+ *  @default 1
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 10
+ *  @playerversion AIR 1.5
+ *  @productversion Flex 4
+ */
+[Style(name="borderVisible", type="Boolean", inherit="no", theme="spark")]
+
+/**
  *  Radius of component corners.
  *  The default value depends on the component class;
  *  if not overriden for the class, the default value is 0.
@@ -196,7 +219,7 @@
  *  @playerversion AIR 1.1
  *  @productversion Flex 3
  */
-[Style(name="cornerRadius", type="Number", format="Length", inherit="no", theme="halo")]
+[Style(name="cornerRadius", type="Number", format="Length", inherit="no", theme="halo, spark")]

 /**
  *  Boolean property that specifies whether the component has a visible


Transferred from the Adobe Open Source Subversion Repository

Revision: 6439
Author:   dsubrama@adobe.com
Date:     2009-04-30T21:19:14.460041Z

Log Message:
-----------
Bugfixes: SDK-20853, SDK-20506, SDK-20855

We now use the bottleneck method, updateRenderer() to let the DataGroup have first crack at setting a renderer's data, owner and labelText properties. Then the "true" owners like a List or ButtonBar which father a renderer, get a chance to come in and clean out stale properties and set new properties on the renderer (which was either created anew or recycled).

I also cleaned up some comments in LayoutBase.

Reviewer: Ryan
Checkintests: Pass
Mustella: Steve and Ella ok'ed a cyclone I gave them against List, ButtonBar, DataGroup and SkinnableDataContainer.

Modified Paths:
--------------
<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/components/IItemRendererOwner.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/List.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/layouts/supportClasses/LayoutBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/ButtonBar.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/flex4/src/spark/components/SkinnableDataContainer.as</path>

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

--- frameworks/projects/spark/src/spark/components/IItemRendererOwner.as
+++ frameworks/projects/spark/src/spark/components/IItemRendererOwner.as
@@ -51,21 +51,18 @@
     function itemToLabel(item:Object):String;

     /**
-     *  Updates renderer-specific properties of the item renderer, such as
-     *  data, labelText and owner.
-     *  This is a convenience method that you can implement to
-     *  update all of the renderer properties from the host component.
+     *  Updates the renderer for re-use. This first prepares the item
+     *  renderer for re-use by clearning out any stale properties
+     *  as well as updating it with new properties.
      *
      *  @param renderer The item renderer.
-     *
-     *  @param data The date item to display.
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
      *  @playerversion AIR 1.5
      *  @productversion Flex 4
      */
-    function updateRendererInformation(renderer:IVisualElement, data:Object=null):void;
+    function updateRenderer(renderer:IVisualElement):void;

 }
 }


Transferred from the Adobe Open Source Subversion Repository

Revision: 20013
Author:   harishs@adobe.com
Date:     2011-01-31T15:32:09.255609Z

Log Message:
-----------
QE notes: Globalization changes. Full cyclone run has been done. Default locale changes and sort bug fixes since Dec 14 2010
Doc notes: ASDOC comments for all classes have been updated.
Bugs: SDK-29132 SDK-29127 SDK-28163  SDK-29075 SDK-28600 SDK-28492 SDK-28856

Reviewer: Gordon Smith, Xie Fang, Zhigang Qi
Tests run: cyclone and checkintests
Is noteworthy for integration:

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/styles/AdvancedStyleClient.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/collections/SortField.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/validators/supportClasses/NumberValidatorBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/collections/ISort.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/validators/supportClasses/GlobalizationValidatorBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/globalization/supportClasses/CollatorBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/formatters/NumberFormatter.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/collections/ISortField.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/formatters/CurrencyFormatter.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/collections/Sort.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/validators/NumberValidator.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/formatters/DateTimeFormatter.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/validators/CurrencyValidator.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/core/UIComponent.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/collections/SortField.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/Group.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/globalization/supportClasses/GlobalizationBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/validators/supportClasses/GlobalizationUtils.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/globalization/SortingCollator.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/globalization/StringTools.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/globalization/LastOperationStatus.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/collections/Sort.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/formatters/supportClasses/NumberFormatterBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/globalization/MatchingCollator.as</path>

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

--- frameworks/projects/spark/src/spark/globalization/SortingCollator.as
+++ frameworks/projects/spark/src/spark/globalization/SortingCollator.as
@@ -82,32 +82,35 @@
      *          UIComponent's addStyleClient method.

      *
By using the class in an MXML declaration and inheriting the
      *          locale from the document that contains the declaration.
-     *  <listing version="3.0">
+     *

      *  Example:
      *  <fx:Declarations>
      *         <s:SortingCollator id="sc" />
      *  </fx:Declarations>
-     *  </listing>
+     *

      *

      *
By using an MXML declaration and specifying the locale value
      *              in the list of assignments.
-     *  <listing version="3.0">
+     *

      *  Example:
      *  <fx:Declarations>
      *      <s:SortingCollator id="sc_France" locale="fr-FR" />
      *  </fx:Declarations>
-     *  </listing>
+     *

      *

      *
Calling the setStyle method, e.g.
      *              sc.setStyle("locale", "fr-FR")

      *

      *
-     *
If the locale style is not set by one of the above techniques, the
-     *  methods of this class that depend on the locale will return 0, false,
-     *  or null depending on the return type and the lastOperationStatus
-     *  property will be set to
-     *  spark.globalization.LastOperationStatus.LOCALE_UNDEFINED_ERROR.
-     *

+     *

+     *  If the locale style is not set by one of the above
+     *  techniques, the instance of this class will be added as a
+     *  StyleClient to the topLevelApplication and
+     *  will therefore inherit the locale style from the
+     *  topLevelApplication object when the locale
+     *  dependent property getter or locale dependent method is
+     *  called.
+     *

      *
      *  @see flash.globalization.Collator
      *  @langversion 3.0


Transferred from the Adobe Open Source Subversion Repository

Revision: 12864
Author:   mhorn@adobe.com
Date:     2009-12-11T21:35:24.243046Z

Log Message:
-----------
asdoc minor fixes

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/Button.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/SpriteAsset.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/MovieClipAsset.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/src/mx/controls/Label.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/BitmapAsset.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/TabNavigator.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/projects/framework/src/mx/core/UIComponent.as</path>

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

--- frameworks/projects/framework/src/mx/core/MovieClipAsset.as
+++ frameworks/projects/framework/src/mx/core/MovieClipAsset.as
@@ -38,12 +38,12 @@
  *
or

  *
  *

- *  <mx:Style>
- *      Application
- *      {
+ *  <fx:Style>
+ *      @namespace mx "library://ns.adobe.com/flex/mx"
+ *      mx|Application {
  *          backgroundImage: Embed(source="Assets.swf", symbol="BackgroundAnimation")
  *      }
- *  <mx:Style/>

+ *  <fx:Style/>

  *
  *
without having to understand that the MXML compiler has created
  *  a subclass of MovieClipAsset for you.


Transferred from the Adobe Open Source Subversion Repository

Revision: 5135
Author:   egeorgie@adobe.com
Date:     2009-03-02T18:07:53.499277Z

Log Message:
-----------
PARB changes to FxButton
- FxButton is no longer IDataRenderer
- FxToggleButton is no longer ISelectableRenderer
- FxButtonBar's default skin now uses a subclass of FxToggleButton that implements both IDataRenderer and ISelectableRenderer
- "labelField" name of skin parts changed to "labelElement" for all Spark skins.
- Some minor tweaks, renames

QE Notes: None
Doc Notes:
Bugs: None
Reviewer: Glenn
tests: checkintests, mustella (QA ran a cyclone and failing tests are excluded)

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxButtonBarFirstButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxFocusSkin.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxDefaultItemRenderer.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/ItemRenderer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxVSliderSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxRadioButton.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxButtonBarMiddleButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/mxml-2009-manifest.xml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxToggleButtonSkin.mxml</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/ButtonBarButton.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxButtonBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxButtonBarLastButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/manifest.xml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxRadioButtonGroup.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxCheckBoxSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxButton.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxHSliderSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxRadioButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxToggleButton.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/skins/spark/FxButtonBarSkin.mxml</path>

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

--- frameworks/projects/spark/src/spark/components/ButtonBar.as
+++ frameworks/projects/spark/src/spark/components/ButtonBar.as
@@ -96,7 +96,7 @@
     //  firstButton
     //----------------------------------

-    [SkinPart(required="false", type="mx.components.FxButton")]
+    [SkinPart(required="false", type="mx.core.IDataRenerer")]

     /**
      * A skin part that defines the first button.
@@ -112,7 +112,7 @@
     //  lastButton
     //----------------------------------

-    [SkinPart(required="false", type="mx.components.FxButton")]
+    [SkinPart(required="false", type="mx.core.IDataRenerer")]

     /**
      * A skin part that defines the last button.
@@ -128,7 +128,7 @@
     //  middleButton
     //----------------------------------

-    [SkinPart(required="true", type="mx.components.FxButton")]
+    [SkinPart(required="true", type="mx.core.IDataRenerer")]

     /**
      * A skin part that defines the middle button(s).


Transferred from the Adobe Open Source Subversion Repository

Revision: 3509
Author:   jimurphy@adobe.com
Date:     2008-10-07T18:19:17.646255Z

Log Message:
-----------
Rename of flex -> mx.

For compatibility reasons it was decided that the new functionality remain integrated with the old framework, although we will continue to build two separate SWCs, one with primarily existing framework classes, and one with new Flex 4 classes. This change removes duplicate names from the Flex 4 framework to avoid class name overlapping with the old framework code.  The naming overlap consists of two major areas:  New Components, and New Effects

Modified Paths:
--------------
386 paths were modified

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

--- frameworks/projects/spark/src/spark/core/IGraphicElement.as
+++ frameworks/projects/spark/src/spark/core/IGraphicElement.as
@@ -8,7 +8,7 @@
 //  in accordance with the terms of the license agreement accompanying it.
 //
 ////////////////////////////////////////////////////////////////////////////////
-package flex.graphics
+package mx.graphics
 {
 import flash.display.DisplayObject;
 import flash.display.Graphics;


Added createLabel().

Added createLabel().

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

--- src/as/com/threerings/flex/FlexUtil.as
+++ src/as/com/threerings/flex/FlexUtil.as
@@ -21,13 +21,27 @@

 package com.threerings.flex {

+import mx.controls.Label;
 import mx.controls.Spacer;

 /**
- * Wraps a non-Flex component for use in Flex.
+ * Flex-related utility methods.
  */
 public class FlexUtil
 {
+    /**
+     * How hard would it have been for them to make Label accept an optional text argument?
+     */
+    public static function createLabel (text :String, style :String = null) :Label
+    {
+        var label :Label = new Label();
+        label.text = text;
+        if (style != null) {
+            label.styleName = style;
+        }
+        return label;
+    }
+
     /**
      * How hard would it have been for them make Spacer accept two optional arguments?
      */


Transferred from the Adobe Open Source Subversion Repository

Revision: 17700
Author:   gruehle@adobe.com
Date:     2010-09-14T19:08:06.078213Z

Log Message:
-----------
Mobile text bug fixes:
* added disabled state to TextInputSkin and TextAreaSkin
* changed implementation of insertText(), the player replaceSelectedText() method only works when the textfield has focus.
* dispatch VALUE_COMMIT events in appendText() and insertText()
* During the text skin part refactoring, I didn't realize that textDisplayProperties was an object until we had a textDisplay, at which time it becomes a bitfield. This caused RTEs in SkinnableTextBase.

QE notes:
Doc notes:
Bugs:  SDK-27635, SDK-27626, SDK-27605, SDK-27598, SDK-27615
Reviewer: Ryan
Tests run: checkin
Is noteworthy for integration: no

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/TextAreaSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/components/supportClasses/MobileTextField.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/TextInputSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/SkinnableTextBase.as</path>

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

--- frameworks/projects/mobiletheme/src/spark/skins/mobile/TextInputSkin.as
+++ frameworks/projects/mobiletheme/src/spark/skins/mobile/TextInputSkin.as
@@ -158,5 +158,18 @@
             textDisplay.styleChanged(styleProp);
         super.styleChanged(styleProp);
     }
+
+	/**
+	 *  @private
+	 */
+	override protected function commitCurrentState():void
+	{
+		super.commitCurrentState();
+
+		if (currentState == "normal")
+			alpha = 1;
+		else
+			alpha = 0.5;
+	}
 }
 }


Transferred from the Adobe Open Source Subversion Repository

Revision: 20931
Author:   cframpto@adobe.com
Date:     2011-03-21T14:21:57.979092Z

Log Message:
-----------
ASdoc changes that missed Flex 4.5 - mostly the mxml syntax sections for the new DataGrid and Image components but also some other errors I noticed in various classes.

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/gridClasses/GridItemEditor.as</path>
<path kind="file" action="M">/private/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/DataGrid.as</path>
<path kind="file" action="M">/private/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/Label.as</path>
<path kind="file" action="M">/private/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/ButtonBase.as</path>
<path kind="file" action="M">/private/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/Image.as</path>
<path kind="file" action="M">/private/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/SkinnableDataContainer.as</path>
<path kind="file" action="M">/private/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/NumericStepper.as</path>
<path kind="file" action="M">/private/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/Scroller.as</path>
<path kind="file" action="M">/private/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/gridClasses/GridColumn.as</path>
<path kind="file" action="M">/private/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/GridColumnHeaderGroup.as</path>
<path kind="file" action="M">/private/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/SkinnableContainer.as</path>

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

--- frameworks/projects/spark/src/spark/components/GridColumnHeaderGroup.as
+++ frameworks/projects/spark/src/spark/components/GridColumnHeaderGroup.as
@@ -123,18 +123,6 @@
 [Event(name="gridDoubleClick", type="spark.events.GridEvent")]

 /**
- *  Dispatched when the mouse button is pressed over a column header.
- *
- *  @eventType spark.events.GridEvent.GRID_MOUSE_DOWN
- *
- *  @langversion 3.0
- *  @playerversion Flash 10
- *  @playerversion AIR 2.0
- *  @productversion Flex 4.5
- */
-[Event(name="gridMouseDown", type="spark.events.GridEvent")]
-
-/**
  *  Dispatched after a separatorMouseDown event
  *  if the mouse moves before the button is released.
  *
@@ -296,6 +284,43 @@
  *  Separators are rendered by the class specified by the columnSeparator property.
  *  The layout, which cannot be changed, is virtual; that means renderers and separators that have been
  *  scrolled out of view are reused.

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

+ *
+ *

+ *  <s:GridColumnHeaderGroup
+ *    Properties
+ *    columnSeperator="null"
+ *    dataGrid="null"
+ *    downColumnIndex="-1"
+ *    headerRenderer="null"
+ *    hoverColumnIndex="-1"
+ *    visibleSortIndicatorIndices="empty Vector.<int&gt"
+ *
+ *    Styles
+ *    paddingBottom="0"
+ *    paddingLeft="0"
+ *    paddingRight="0"
+ *    paddingTop="0"
+ *    separatorAffordance="5"
+ *
+ *    Events
+ *    gridClick="No default"
+ *    gridDoubleClick="No default"
+ *    gridMouseDown="No default"
+ *    gridMouseDrag="No default"
+ *    gridMouseUp="No default"
+ *    gridMouseRollOut="No default"
+ *    gridMouseRollOver="No default"
+ *    separatorClick="No default"
+ *    separatorDoubleClick="No default"
+ *    separatorMouseDrag="No default"
+ *    separatorMouseUp="No default"
+ *    separatorMouseRollOut="No default"
+ *    separatorMouseRollOver="No default"
+ *  />
+ *

  *
  *  @see Grid
  *
@@ -497,6 +522,8 @@
     /**
      *  The IGridItemRenderer class used to renderer each column header.
      *
+     *  @default null
+     *
      *  @langversion 3.0
      *  @playerversion Flash 10
      *  @playerversion AIR 2.0
@@ -577,7 +604,7 @@
      *  A vector of column indices corresponding to the header renderers
      *  which currently have their sort indicators visible.
      *
-     *  @default An empty Vector.<int>
+     *  @default an empty Vector.<int>
      *
      *  @langversion 3.0
      *  @playerversion Flash 10


Read function feature

Read function feature

M The reader function use to transform ByteArray into VertexStream is now a collection indexed by the components name

--- src/aerys/minko/type/stream/VertexStream.as
+++ src/aerys/minko/type/stream/VertexStream.as
@@ -6,7 +6,7 @@
 	import aerys.minko.type.stream.format.VertexComponent;
 	import aerys.minko.type.stream.format.VertexComponentType;
 	import aerys.minko.type.stream.format.VertexFormat;
-
+
 	import flash.utils.ByteArray;
 	import flash.utils.Dictionary;

@@ -232,16 +232,15 @@
 			return stream;
 		}

-		public static function fromByteArray(bytes 		: ByteArray,
-											 count		: int,
-											 formatIn	: VertexFormat,
-											 formatOut	: VertexFormat	= null,
-											 isDynamic	: Boolean		= false,
-											 reader 	: Function 		= null,
-											 dwordSize	: uint			= 4) : VertexStream
+		public static function fromByteArray(bytes 			: ByteArray,
+											 count			: int,
+											 formatIn		: VertexFormat,
+											 formatOut		: VertexFormat	= null,
+											 isDynamic		: Boolean		= false,
+											 functionReader : Dictionary	= null,
+											 dwordSize		: uint			= 4) : VertexStream
 		{
 			formatOut ||= formatIn;
-			reader ||= bytes.readFloat;

 			var dataLength		: int						= 0;
 			var data			: Vector.<Number>			= null;
@@ -261,7 +260,16 @@
 				{
 					bytes.position = start + formatIn.dwordsPerVertex * vertexId * dwordSize
 									+ formatIn.getOffsetForComponent(componentsOut[componentId]) * dwordSize;
-
+
+					var reader : Function = null;
+
+					if (functionReader[componentsOut[componentId].nativeFormatString])
+						reader = functionReader[componentsOut[componentId].nativeFormatString];
+					else if (functionReader["defaut"])
+						reader = functionReader["defaut"];
+					else
+						reader = bytes.readFloat;
+
 					switch (nativeFormats[componentId])
 					{
 						case VertexComponentType.FLOAT_4 :


Fixed production with-one

Fixed production with-one

--- src/Testing/Types/ArithmeticType.as
+++ src/Testing/Types/ArithmeticType.as
@@ -29,11 +29,11 @@
 		}

 		override public function can_produce_with_one(value:int, arg:int):Boolean {
-			var b:int = produceArgB(value, arg);
+			var b:int = produceArgB(arg, value);
 			if (b <= U.MAX_INT && b >= U.MIN_INT && produceValue(arg, b) == value)
 				return true;

-			if (!symmetric)
+			if (symmetric)
 				return false;

 			b = produceValue(arg, value);


Transferred from the Adobe Open Source Subversion Repository

Revision: 15045
Author:   jszeto@adobe.com
Date:     2010-03-26T00:36:05.852496Z

Log Message:
-----------
Merging revision 15044 from 4.x to trunk

Mirroring Window Gripper and DateField bug fixes

http://bugs.adobe.com/jira/browse/SDK-25719 - The gripper does not show up in an MX Window that is mirrored and using flex chrome

Added an mx_internal property to Button to track if the Button should modify the layoutDirection of its skins. MX Window and MX WindowedApplication both set this property to undefined. This is the only skin/icon in the halo and spark framework that inherits its layoutDirection from its parent. All others have layoutDirection of LTR.

http://bugs.adobe.com/jira/browse/SDK-25995 - DateField opens drop down on wrong side when layoutDirection = rtl

Added check if left edge of the dropDown exceeds the left screen bounds.

QE notes: n/a
Doc notes: n/a
Bugs: SDK-25719, SDK-25995
Reviewer: Kevin
Tests run: checkintests, DateField
Is noteworthy for integration: no

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/core/Window.as</path>
<path kind="dir" action="M">/flex/sdk/trunk</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/Button.as</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/airframework/src/mx/core/WindowedApplication.as</path>

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

--- frameworks/projects/mx/src/mx/controls/DateField.as
+++ frameworks/projects/mx/src/mx/controls/DateField.as
@@ -2335,6 +2335,8 @@
                 //downArrowButton.enabled = false;
                 openPos = 0;

+            xVal = Math.max(screen.left, xVal);
+
             point.x = xVal;
             point.y = yVal;
             point = dd.parent.globalToLocal(point);


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

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

 package spark.effects
 {


when last seqnum is found on new level, reset PTS analysis flag related to https://github.com/mangui/flashls/issues/172

--- src/org/mangui/hls/loader/FragmentLoader.as
+++ src/org/mangui/hls/loader/FragmentLoader.as
@@ -611,6 +611,9 @@
                         new_seqnum = Math.max(new_seqnum, _levels[level].getFirstSeqNumfromContinuity(frag_previous.continuity));
                         _pts_analyzing = true;
                         log_prefix = "analyzing PTS ";
+                    } else {
+                        // last seqnum found on new level, reset PTS analysis flag
+                        _pts_analyzing = false;
                     }
                 }
             }


Transferred from the Adobe Open Source Subversion Repository

Revision: 17943
Author:   jszeto@adobe.com
Date:     2010-09-29T22:22:15.975011Z

Log Message:
-----------
ViewMenu initial checkin

Implemented ViewMenu, ViewMenuItem, ViewMenuLayout and all relevant skins.
Integrated into MobileApplicationBase and MobileApplication
Includes PARB review changes
Appearance will change once the visual design has been completed

QE notes: Ready to test!
Doc notes: Needs an ASDoc pass
Bugs: none
Reviewer: Glenn
Tests run: checkintests
Is noteworthy for integration: no

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/manifest.xml</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/layouts/ViewMenuLayout.as</path>
<path kind="dir" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/layouts</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/ViewMenuItemSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/components/View.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/components/MobileApplication.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/defaults.css</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/components/ViewMenuItem.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/components/ViewMenu.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/components/supportClasses/MobileApplicationBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/MobileThemeClasses.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/ViewMenuSkin.mxml</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/MobileApplicationSkin.as</path>

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

--- frameworks/projects/mobiletheme/src/MobileThemeClasses.as
+++ frameworks/projects/mobiletheme/src/MobileThemeClasses.as
@@ -33,6 +33,8 @@
 import spark.skins.mobile.TabbedMobileApplicationSkin; TabbedMobileApplicationSkin;
 import spark.skins.mobile.TextAreaSkin; TextAreaSkin;
 import spark.skins.mobile.TextInputSkin; TextInputSkin;
+import spark.skins.mobile.ViewMenuItemSkin; ViewMenuItemSkin;
+import spark.skins.mobile.ViewMenuSkin; ViewMenuSkin;
 import spark.skins.mobile.ViewNavigatorSkin; ViewNavigatorSkin;
 import spark.skins.mobile.TabbedViewNavigatorSkin; TabbedViewNavigatorSkin;
 import spark.skins.mobile.VScrollBarSkin; spark.skins.mobile.VScrollBarSkin;


Transferred from the Adobe Open Source Subversion Repository

Revision: 23243
Author:   cframpto@adobe.com
Date:     2011-12-20T00:59:57.384047Z

Log Message:
-----------
In frameworks, remove Adobe headers from all files except xml/mxml file types.  There are also a few .txt files that are license files that I didn't touch yet.

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

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

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

 package spark.layouts
 {


added correct test for backslash escaping requirement

--- WeaveAPI/src/weave/api/WeaveAPI.as
+++ WeaveAPI/src/weave/api/WeaveAPI.as
@@ -345,7 +345,7 @@

 			// if there are no parameters, just run the code
 			if (pNames.length == 0)
-				return ExternalMethod.fixed_ExternalInterface_call(code);
+				return ExternalInterface.call(code);

 			// call the function with the specified parameters
 			pValues.unshift(code);
@@ -546,27 +546,15 @@
 import mx.utils.UIDUtil;

 import weave.api.WeaveAPI;
-import weave.api.reportError;

 internal class ExternalMethod
 {
-	/**
-	 * A wrapper for ExternalInterface.call() that properly escapes backslashes.
-	 */
-	public static function fixed_ExternalInterface_call(code:String):*
-	{
-		if (!initialized)
-			initialize();
-		if (codeBackslashNeedsEscaping)
-			code = code.split('\\').join('\\\\');
-		return ExternalInterface.call(code);
-	}
-
 	private static function initialize():void
 	{
 		// one-time initialization attempt
 		initialized = true;
-		codeBackslashNeedsEscaping = (ExternalInterface.call('function(){ return "\\\\\\\\"; }') == "\\");
+		var slashes:String = "\\\\";
+		backslashNeedsEscaping = (ExternalInterface.call('function(slashes){ return slashes; }', slashes) != slashes);
 		try
 		{
 			json = getDefinitionByName("JSON");
@@ -616,14 +604,9 @@
 	private static var initialized:Boolean = false;

 	/**
-	 * If this is true, then ExternalInterface.call() does not properly quote backslashes in the code.
-	 */
-	private static var codeBackslashNeedsEscaping:Boolean = false;
-
-	/**
-	 * If this is true, backslashes are not properly escaped in results from external ActionScript invocations.
-	 */
-	private static var resultBackslashNeedsEscaping:Boolean = true;
+	 * If this is true, backslashes need to be escaped when returning a String to JavaScript.
+	 */
+	private static var backslashNeedsEscaping:Boolean = true;

 	/**
 	 * A pointer to JSON.
@@ -675,8 +658,8 @@
 		var result:* = em.method.apply(null, params);
 		var resultJson:String = json.stringify(result, _jsonReplacer);

-		// work around bug where ExternalInterface does not escape backslash.
-		if (resultBackslashNeedsEscaping)
+		// work around flash player bug
+		if (backslashNeedsEscaping)
 			resultJson = resultJson.split('\\').join('\\\\');

 		return resultJson;
@@ -717,15 +700,16 @@
 		if (!initialized)
 			initialize();

+		var methodName:String = methodInfo.name;
+		method = host[methodName];
+
 		// backwards compatibility
 		if (!json)
 		{
-			ExternalInterface.addCallback(methodInfo.name, host[methodInfo.name]);
+			ExternalInterface.addCallback(methodName, method);
 			return;
 		}

-		var methodName:String = methodInfo.name;
-		method = host[methodName];
 		// find the number of required parameters
 		paramCount = 0;
 		while (paramCount < method.length && !methodInfo.parameters[paramCount].optional)


Transferred from the Adobe Open Source Subversion Repository

Revision: 23243
Author:   cframpto@adobe.com
Date:     2011-12-20T00:59:57.384047Z

Log Message:
-----------
In frameworks, remove Adobe headers from all files except xml/mxml file types.  There are also a few .txt files that are license files that I didn't touch yet.

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

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

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

 package mx.collections
 {


Transferred from the Adobe Open Source Subversion Repository

Revision: 23243
Author:   cframpto@adobe.com
Date:     2011-12-20T00:59:57.384047Z

Log Message:
-----------
In frameworks, remove Adobe headers from all files except xml/mxml file types.  There are also a few .txt files that are license files that I didn't touch yet.

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

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

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

 package mx.utils
 {


Transferred from the Adobe Open Source Subversion Repository

Revision: 9285
Author:   aharui@adobe.com
Date:     2009-08-13T22:51:21.017484Z

Log Message:
-----------
Fix an injection from frame1 cleanup.  Resources in loaded swfs weren't being added to the ResourceManager

QE Notes: None
Doc Notes: None
Bugs: SDK-21962
Reviewer: Darrell
API Change: No
Is noteworthy for integration: No
tests: checkintests

Modified Paths:
--------------
<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/resources/ResourceManagerImpl.as</path>

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

--- frameworks/projects/framework/src/mx/resources/ResourceManagerImpl.as
+++ frameworks/projects/framework/src/mx/resources/ResourceManagerImpl.as
@@ -14,6 +14,7 @@

 import flash.events.Event;
 import flash.events.EventDispatcher;
+import flash.events.FocusEvent;
 import flash.events.IEventDispatcher;
 import flash.events.TimerEvent;
 import flash.system.ApplicationDomain;
@@ -122,7 +123,7 @@

         if (SystemManagerGlobals.topLevelSystemManagers.length)
 		    SystemManagerGlobals.topLevelSystemManagers[0].
-			    addEventListener(FlexEvent.NEW_CHILD_APPLICATION, newChildApplicationHandler, true);
+			    addEventListener(FlexEvent.NEW_CHILD_APPLICATION, newChildApplicationHandler);
     }

     //--------------------------------------------------------------------------
@@ -353,15 +354,11 @@
         addResourceBundle(resourceBundle);
     }

-    // parameter is Event because we can get FlexEvents from other applicationDomains
-	private function newChildApplicationHandler(event:Event):void
+    // FocusEvent is used just so we can add a relatedObject
+	private function newChildApplicationHandler(event:FocusEvent):void
 	{
-        // ignore if from some other ApplicationDomain
-        if (event is FlexEvent)
-        {
-		    var info:Object = event.target.info();
-            processInfo(info);
-        }
+		var info:Object = event.relatedObject["info"]();
+        processInfo(info);
     }

     private function processInfo(info:Object):void


Transferred from the Adobe Open Source Subversion Repository

Revision: 20675
Author:   smgilson@adobe.com
Date:     2011-03-08T14:47:24.323678Z

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

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

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/events/GridEvent.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/events/LoaderInvalidationEvent.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/events/ListEvent.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/events/GridSortEvent.as</path>

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

--- frameworks/projects/spark/src/spark/events/LoaderInvalidationEvent.as
+++ frameworks/projects/spark/src/spark/events/LoaderInvalidationEvent.as
@@ -16,7 +16,8 @@
 import flash.display.LoaderInfo;

 /**
- *  Used to notify ContentRequest instances that their original request
+ *  The LoaderInvalidationEvent class represents events that are dispatched
+ *  to notify ContentRequest instances that their original request
  *  has been invalidated.
  *
  *  @langversion 3.0
@@ -33,6 +34,27 @@
     //--------------------------------------------------------------------------

     /**
+     *  The LoaderInvalidationEvent.INVALIDATE_LOADER constant defines
+     *  the value of the type property of the event object for a
+     *  invalidateLoader event.
+     *
+     *
The properties of the event object have the following values:

+     *

+     *
Property	Value

+     *
bubbles	false

+     *
cancelable	false

+     *
content	The content for which to
+     *       invalidate the content request.

+     *
currentTarget	The Object that defines the
+     *       event listener that handles the event. For example, if you use
+     *       myDataGrid.addEventListener() to register an event listener,
+     *       myDataGrid is the value of the currentTarget.

+     *
target	The Object that dispatched the event;
+     *       it is not always the Object listening for the event.
+     *       Use the currentTarget property to always access the
+     *       Object listening for the event.

+     *
type	LoaderInvalidationEvent.INVALIDATE_LOADER

+     *

      *
      *  @eventType invalidateLoader
      *
@@ -78,7 +100,7 @@
     //----------------------------------

     /**
-     *  The content for which we are invalidating the content request for.
+     *  The content for which to invalidate the content request.
      *
      *  @langversion 3.0
      *  @playerversion Flash 10


Transferred from the Adobe Open Source Subversion Repository

Revision: 23243
Author:   cframpto@adobe.com
Date:     2011-12-20T00:59:57.384047Z

Log Message:
-----------
In frameworks, remove Adobe headers from all files except xml/mxml file types.  There are also a few .txt files that are license files that I didn't touch yet.

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

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

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

 package mx.events
 {


- Proper casting.
- Handle the common case first.

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

--- src/as/com/threerings/presents/client/ClientDObjectMgr.as
+++ src/as/com/threerings/presents/client/ClientDObjectMgr.as
@@ -181,19 +181,19 @@

         var obj :Object = _actions.shift();
         // do the proper thing depending on the object
-        if (obj is BootstrapNotification) {
-            _client.gotBootstrap(obj.getData(), this);
-
-        } else if (obj is EventNotification) {
-            var evt :DEvent = obj.getEvent();
+        if (obj is EventNotification) {
+            var evt :DEvent = (obj as EventNotification).getEvent();
 //             log.info("Dispatch event: " + evt);
             dispatchEvent(evt);

+        } else if (obj is BootstrapNotification) {
+            _client.gotBootstrap((obj as BootstrapNotification).getData(), this);
+
         } else if (obj is ObjectResponse) {
             registerObjectAndNotify((obj as ObjectResponse).getObject());

         } else if (obj is UnsubscribeResponse) {
-            var oid :int = obj.getOid();
+            var oid :int = (obj as UnsubscribeResponse).getOid();
             if (_dead.remove(oid) == null) {
                 log.warning("Received unsub ACK from unknown object [oid=" + oid + "].");
             }


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

--- frameworks/projects/framework/src/mx/styles/CSSMergedStyleDeclaration.as
+++ frameworks/projects/framework/src/mx/styles/CSSMergedStyleDeclaration.as
@@ -1,11 +1,19 @@
 ////////////////////////////////////////////////////////////////////////////////
 //
-//  ADOBE SYSTEMS INCORPORATED
-//  Copyright 2009 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: 5101
Author:   gauravj@adobe.com
Date:     2009-02-27T05:22:45.887116Z

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

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

Modified Paths:
--------------
663 paths were modified

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

--- frameworks/projects/mx/src/mx/containers/dividedBoxClasses/BoxDivider.as
+++ frameworks/projects/mx/src/mx/containers/dividedBoxClasses/BoxDivider.as
@@ -32,21 +32,41 @@

 /**
  *  @copy mx.containers.DividedBox#style:dividerAffordance
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 [Style(name="dividerAffordance", type="Number", format="Length", inherit="no")]

 /**
  *  @copy mx.containers.DividedBox#style:dividerAlpha
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 [Style(name="dividerAlpha", type="Number", inherit="no")]

 /**
  *  @copy mx.containers.DividedBox#style:dividerColor
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 [Style(name="dividerColor", type="uint", format="Color", inherit="yes")]

 /**
  *  @copy mx.containers.DividedBox#style:dividerThickness
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 [Style(name="dividerThickness", type="Number", format="Length", inherit="no")]

@@ -58,6 +78,11 @@
  *  The BoxDivider class represents the divider between children of a DividedBox container.
  *
  *  @see mx.containers.DividedBox
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 public class BoxDivider extends UIComponent
 {
@@ -71,6 +96,11 @@

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


FLEX-34850 forgot import.

FLEX-34850 forgot import.

--- frameworks/projects/spark/src/spark/components/gridClasses/GridColumn.as
+++ frameworks/projects/spark/src/spark/components/gridClasses/GridColumn.as
@@ -24,6 +24,7 @@

     import mx.core.ClassFactory;
     import mx.core.IFactory;
+    import mx.core.mx_internal;
     import mx.events.CollectionEvent;
     import mx.events.CollectionEventKind;
     import mx.events.PropertyChangeEvent;
@@ -165,7 +166,7 @@
     //  Constructor
     //
     //--------------------------------------------------------------------------
-
+
     /**
      *  Constructor.
      *


Transferred from the Adobe Open Source Subversion Repository

Revision: 17042
Author:   cframpto@adobe.com
Date:     2010-07-23T16:04:29.868893Z

Log Message:
-----------
PARB changes for DataGrid selection

removed from DG and/or Grid:
allSelectedCells()
allSelectedIndices()
selectionContainsOnlyCell()
selectionContainsOnlyCellRegion()
selectionContainsOnlyIndex()
selectionContainsOnlyIndices()

these read-only properties have been added to Grid:
selectedCell
selectedCells
selectedIndex
selectedIndices
selectedItem
selectedItems
selectionLength

new CellRegion and CellPosition classes.  Return Vector.<CellPosition> rather than Vector.<Object> for cell selection.

Signature of getCellsAt changed to return Vector.<CellPosition>
Signature of GridSelectionEvent changed to have one arg, selectionChange:CellRegion.

QE notes: API changes so expect some test breakage
Doc notes:
Bugs:
Reviewer: Hans
Tests run: none
Is noteworthy for integration: no

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/Grid.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/GridSelection.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/SparkClasses.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/events/GridSelectionEvent.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/CellRegion.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/GridLayout.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/CellPosition.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/DataGrid.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/Tree.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/GridContainerBase.as</path>

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

--- frameworks/projects/spark/src/spark/components/gridClasses/GridLayout.as
+++ frameworks/projects/spark/src/spark/components/gridClasses/GridLayout.as
@@ -1304,10 +1304,10 @@
             var bounds:Rectangle = isRowSelectionMode() ?
                 gridDimensions.getRowBounds(rowIndex) :
                 gridDimensions.getCellBounds(rowIndex, columnIndex);
-            layoutGridElementR(indicator, bounds);
-            container.addElement(indicator);  // add or move to the top
-            indicator.visible = true;
-        }
+                layoutGridElementR(indicator, bounds);
+                container.addElement(indicator);  // add or move to the top
+                indicator.visible = true;
+            }

         return indicator;
     }
@@ -1836,7 +1836,7 @@
     }

     /**
-     *  Returns a vector of objects whose "rowIndex" and "columnIndex" properties specify the
+     *  Returns a vector of CellPosition objects whose "rowIndex" and "columnIndex" properties specify the
      *  row and column indices of the cells that overlap the specified grid region.  If no
      *  such cells exist, an empty vector is returned.
      *
@@ -1849,7 +1849,7 @@
      *  @playerversion AIR 2.0
      *  @productversion Flex 4.5
      */
-    public function getCellsAt(x:Number, y:Number, w:Number, h:Number):Vector.<Object>
+    public function getCellsAt(x:Number, y:Number, w:Number, h:Number):Vector.<CellPosition>
     {
         // TBD(hmuller)
         return new Vector.<Object>;


set default value of ParserOptions.material to be a BasicMaterial

--- src/aerys/minko/type/loader/parser/ParserOptions.as
+++ src/aerys/minko/type/loader/parser/ParserOptions.as
@@ -2,6 +2,7 @@
 {
 	import aerys.minko.render.Effect;
 	import aerys.minko.render.material.Material;
+	import aerys.minko.render.material.basic.BasicMaterial;
 	import aerys.minko.scene.node.Mesh;
 	import aerys.minko.type.animation.SkinningMethod;
 	import aerys.minko.type.loader.ILoader;
@@ -137,7 +138,7 @@
             _loadSkin                   = loadSkin;
 			_skinningMethod				= skinningMethod;
 			_mipmapTextures				= mipmapTextures;
-			_material					= _material || new Material();
+			_material					= _material || new BasicMaterial();
 			_vertexStreamUsage			= vertexStreamUsage;
 			_indexStreamUsage			= indexStreamUsage;
 			_parser						= parser;


Changed adRef property to optional for backwards compatibility.

--- src/org/openvv/OVVAsset.as
+++ src/org/openvv/OVVAsset.as
@@ -221,10 +221,11 @@
          * be unavailable.
          * @param id The unique identifier of this OVVAsset. If not supplied,
          * it will be randomly generated.
-         * @param interval The number of milliseconds between polls to
-         * JavaScript for viewability information. Defaults to 250.
-         */
-        public function OVVAsset(adRef:*, beaconSwfUrl:String = null, id:String = null) {
+         * @param adRef A reference to the top DisplayObject of the ad; used
+         * to determine full-screen status when player's stage is not available.
+         * Optional only for backwards compatibility.
+         */
+        public function OVVAsset( beaconSwfUrl:String = null, id:String = null, adRef:* = null ) {
             if (!externalInterfaceIsAvailable()) {
                 dispatchEvent(new OVVEvent(OVVEvent.OVVError, {
                     "message": "ExternalInterface unavailable"
@@ -233,7 +234,9 @@
             }

             _id = (id !== null) ? id : "ovv" + Math.floor(Math.random() * 1000000000).toString();
-            _ad = adRef as DisplayObject;
+            if ( !!adRef ) {
+                _ad = adRef as DisplayObject;
+            }
             setStage();
             ExternalInterface.addCallback(_id, flashProbe);
             ExternalInterface.addCallback("onJsReady" + _id, onJsReady);
@@ -418,18 +421,18 @@

         private function setStage(evt:Event = null):void
         {
-            var ad:DisplayObject = _ad as DisplayObject;
-            if(!ad) return;
-
-            ad.removeEventListener(Event.ADDED_TO_STAGE, setStage);
+
+            if(!_ad) return;
+
+            _ad.removeEventListener(Event.ADDED_TO_STAGE, setStage);
             try{
-                _stage = ad.stage;
+                _stage = _ad.stage;
             }
             catch(ignore:Error){
                 //stage is inaccessible
             }
             if(!_stage)
-                ad.addEventListener(Event.ADDED_TO_STAGE, setStage);
+                _ad.addEventListener(Event.ADDED_TO_STAGE, setStage);
         }

         private function getDisplayState(results:OVVCheck):String


Added utility methods for safe XML operations.

So broken! The XML class is not specified in the ECMA-262 standard.
Now I know why they needed the guidelines of ECMAscript: when left
to their own devices they design broken-ass shit.
Adobe needs a cork on their fork.

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

--- src/as/com/threerings/util/Util.as
+++ src/as/com/threerings/util/Util.as
@@ -79,6 +79,83 @@
     }

     /**
+     * Parse the 'value' object into XML safely. This is equivalent to new XML(value)
+     * but offers protection from other code that may have changing the default settings
+     * used for parsing XML. Also, if you would like to use non-standard parsing settings
+     * this method will protect other code from being broken by you.
+     *
+     * @param value the value to parse into XML.
+     * @param settings an Object containing your desired non-standard XML parsing settings.
+     * @see XML#setSettings()
+     */
+    public static function newXML (value :Object, settings :Object = null) :XML
+    {
+        return safeXMLOp(function () :* {
+            return new XML(value);
+        }, settings) as XML;
+    }
+
+    /**
+     * Call toString() on the specified XML object safely. This is equivalent to
+     * xml.toString() but offers protection from other code that may have changed
+     * the default settings used for stringing XML. Also, if you would like to use the
+     * non-standard printing settings this method will protect other code from being
+     * broken by you.
+     *
+     * @param xml the xml value to Stringify.
+     * @param settings an Object containing
+     * @see XML#toString()
+     * @see XML#setSettings()
+     */
+    public static function XMLtoString (xml :XML, settings :Object = null) :String
+    {
+        return safeXMLOp(function () :* {
+            return xml.toString();
+        }, settings) as String;
+    }
+
+    /**
+     * Call toXMLString() on the specified XML object safely. This is equivalent to
+     * xml.toXMLString() but offers protection from other code that may have changed
+     * the default settings used for stringing XML. Also, if you would like to use the
+     * non-standard printing settings this method will protect other code from being
+     * broken by you.
+     *
+     * @param xml the xml value to Stringify.
+     * @param settings an Object containing
+     * @see XML#toXMLString()
+     * @see XML#setSettings()
+     */
+    public static function XMLtoXMLString (xml :XML, settings :Object = null) :String
+    {
+        return safeXMLOp(function () :* {
+            return xml.toXMLString();
+        }, settings) as String;
+    }
+
+    /**
+     * Perform an operation on XML that takes place using the specified settings, and
+     * restores the XML settings to their previous values.
+     *
+     * @param fn a function to be called with no arguments.
+     * @param settings any custom XML settings, or null to use the defaults.
+     *
+     * @return the return value of your function, if any.
+     * @see XML#setSettings()
+     * @see XML#settings()
+     */
+    public static function safeXMLOp (fn :Function, settings :Object = null) :*
+    {
+        var oldSettings :Object = XML.settings();
+        try {
+            XML.setSettings(settings);
+            return fn();
+        } finally {
+            XML.setSettings(oldSettings);
+        }
+    }
+
+    /**
      * A nice utility method for testing equality in a better way.
      * If the objects are Equalable, then that will be tested. Arrays
      * and ByteArrays are also compared and are equal if they have


cleanup

cleanup

Change-Id: Iee151e3c4fe64a125e36ef49e13c6f472e309cc2

--- WeaveAPI/src/JavaScript.as
+++ WeaveAPI/src/JavaScript.as
@@ -73,18 +73,12 @@
 		private static const JSON_CALL:String = "_jsonCall";

 		/**
-		 * The name of a JavaScript property of this flash instance which contains an Array of JSON replacer/reviver extensions.
-		 * Each object in the Array can contain "replacer" and "reviver" properties containing the extension functions.
-		 */
-		public static const JSON_EXTENSIONS:String = "_jsonExtensions";
-
-		/**
-		 * Used as the second parameter to JSON.stringify
+		 * The name of the property used to store a replacer function for the second parameter of JSON.stringify
 		 */
 		private static const JSON_REPLACER:String = "_jsonReplacer";

 		/**
-		 * Used as the second parameter to JSON.parse
+		 * The name of the property used to store a reviver function for the second parameter of JSON.parse
 		 */
 		private static const JSON_REVIVER:String = "_jsonReviver";

@@ -130,6 +124,12 @@
 		 * Extensions to _jsonReplacer/_jsonReviver.
 		 */
 		private static const _jsonExtensions:Array = [];
+
+		/**
+		 * The name of a JavaScript property of this flash instance which contains an Array of JSON replacer/reviver extensions.
+		 * Each object in the Array can contain "replacer" and "reviver" properties containing the extension functions.
+		 */
+		public static const JSON_EXTENSIONS:String = "_jsonExtensions";

 		/**
 		 * Alias for ExternalInterface.available
@@ -174,14 +174,16 @@
 				ExternalInterface.addCallback(JSON_SUFFIX, trace);
 				// find the element with the unique property name and get its ID (or set the ID if it doesn't have one)
 				_objectID = ExternalInterface.call(
-					"function(uid, newId){\
-						while (document.getElementById(newId))\
-							newId += '_';\
-						var elements = document.getElementsByTagName('*');\
-						for (var i in elements)\
-							if (elements[i][uid])\
-								return elements[i].id || (elements[i].id = newId);\
-					}",
+					<![CDATA[
+						function(uid, newId) {
+							while (document.getElementById(newId))
+								newId += '_';
+							var elements = document.getElementsByTagName('*');
+							for (var i in elements)
+								if (elements[i][uid])
+									return elements[i].id || (elements[i].id = newId);
+						}
+					]]>,
 					JSON_SUFFIX,
 					desiredId
 				);
@@ -233,18 +235,18 @@
 				<![CDATA[
 					var flash = this;

-					var replace, revive;
+					var toJson, fromJson;
 					if (useJson)
 					{
-						replace = function(value) { return JSON.stringify(value, flash[JSON_REPLACER]); };
-						revive = function(value) { return JSON.parse(value, flash[JSON_REVIVER]); };
+						toJson = function(value) { return JSON.stringify(value, flash[JSON_REPLACER]); };
+						fromJson = function(value) { return JSON.parse(value, flash[JSON_REVIVER]); };
 					}
 					else
 					{
-						var mapReplace = function(value){ return flash[JSON_REPLACER]('', value); };
-						var mapRevive = function(value){ return flash[JSON_REVIVER]('', value); };
-						replace = function(value) { return Array.isArray(value) ? value.map(mapReplace) : mapReplace(value); };
-						revive = function(value) { return Array.isArray(value) ? value.map(mapRevive) : mapRevive(value); };
+						var mapReplace = function(value) { return flash[JSON_REPLACER]('', value); };
+						var mapRevive = function(value) { return flash[JSON_REVIVER]('', value); };
+						toJson = function(value) { return Array.isArray(value) ? value.map(mapReplace) : mapReplace(value); };
+						fromJson = function(value) { return Array.isArray(value) ? value.map(mapRevive) : mapRevive(value); };
 					}

 					var functionCounter = 0;
@@ -257,7 +259,7 @@
 					function cacheProxyFunction(id) {
 						var func = function() {
 							var params = Array.prototype.slice.call(arguments);
-							var paramsJson = replace(params);
+							var paramsJson = toJson(params);
 							try {
 								var resultJson = flash[JSON_CALL](id, paramsJson);
 							} catch (e) {
@@ -266,7 +268,7 @@
 								e2.message = e.message;
 								throw e2;
 							}
-							return revive(resultJson);
+							return fromJson(resultJson);
 						};
 						func[JSON_FUNCTION_PREFIX] = id;
 						return lookup[id] = func;
@@ -321,6 +323,7 @@
 			if (method == null)
 				throw new Error('No method with id="' + methodId + '"');

+			// json to object
 			var params:Array;
 			if (json)
 				params = json.parse(paramsJson, _jsonReviver);
@@ -329,11 +332,12 @@

 			var result:* = method.apply(null, params);

+			// object to json
 			var resultJson:*;
 			if (json)
-				resultJson = json.stringify(result, _jsonReplacer) || 'undefined';
+				resultJson = json.stringify(result, _jsonReplacer) || 'null';
 			else
-				resultJson = _jsonReplacer('', result);
+				resultJson = result is Array ? (result as Array).map(_mapJsonReplacer) : _jsonReplacer('', result);

 			// work around unescaped backslash bug
 			if (resultJson is String && backslashNeedsEscaping && (resultJson as String).indexOf('\\') >= 0)
@@ -342,6 +346,7 @@
 			return resultJson;
 		}

+		private static function _mapJsonReplacer(value:*, i:*, a:*):* { return _jsonReplacer('', value); }
 		private static function _mapJsonReviver(value:*, i:*, a:*):* { return _jsonReviver('', value); }

 		/**
@@ -664,7 +669,6 @@
 							mappedValue = callback.call(T, kValue, k, O);
 							A[k] = mappedValue;
 						}
-						// d. Increase k by 1.
 						k++;
 					}
 					return A;
@@ -687,36 +691,27 @@
 					dontEnumsLength = dontEnums.length;

 					return function (obj) {
-						if (typeof obj !== 'object' && (typeof obj !== 'function' || obj === null)) {
+						if (typeof obj !== 'object' && (typeof obj !== 'function' || obj === null))
 							throw new TypeError('Object.keys called on non-object');
-						}

 						var result = [], prop, i;

-						for (prop in obj) {
-							if (hasOwnProperty.call(obj, prop)) {
+						for (prop in obj)
+							if (hasOwnProperty.call(obj, prop))
 								result.push(prop);
-							}
-						}

-						if (hasDontEnumBug) {
-							for (i = 0; i < dontEnumsLength; i++) {
-								if (hasOwnProperty.call(obj, dontEnums[i])) {
+						if (hasDontEnumBug)
+							for (i = 0; i < dontEnumsLength; i++)
+								if (hasOwnProperty.call(obj, dontEnums[i]))
 									result.push(dontEnums[i]);
-								}
-							}
-						}
 						return result;
 					};
 				}());

 			if (!Function.prototype.bind)
 				Function.prototype.bind = function (oThis) {
-					if (typeof this !== "function") {
-						// closest thing possible to the ECMAScript 5
-						// internal IsCallable function
+					if (typeof this !== "function")
 						throw new TypeError("Function.prototype.bind - what is trying to be bound is not callable");
-					}

 					var aArgs = Array.prototype.slice.call(arguments, 1),
 						fToBind = this,


Fixed false negative in bloc placement validity check

--- src/Components/Bloc.as
+++ src/Components/Bloc.as
@@ -102,7 +102,7 @@

 		public function moveTo(p:Point):Boolean {
 			if (origin.equals(p) || (lastLoc && lastLoc.equals(p)))
-				return false;
+				return true;
 			lastLoc = p;

 			//shift modules/wires


Source ports no longer attempt to cleanup their connections to themselves

--- src/Components/Port.as
+++ src/Components/Port.as
@@ -18,7 +18,6 @@
 		public var isOutput:Boolean;
 		public var offset:Point;
 		public var connections:Vector.<Carrier>;
-		public var newLink:Link;
 		protected var _source:Port;

 		private var cachedValue:Value;
@@ -37,7 +36,7 @@
 			if (isSource()) {
 				for each (var module:Module in U.state.modules)
 					for each (var port:PortLayout in module.layout.ports)
-						if (port.port.source == this)
+						if (port.port != this && port.port.source == this)
 							port.port.source = null;
 			} else
 				source = null;


Transferred from the Adobe Open Source Subversion Repository

Revision: 3057
Author:   jimurphy@adobe.com
Date:     2008-09-02T15:18:38.819662Z

Log Message:
-----------
Merged 3.0.x revisions [2966,2969,2995,3004,3018-3019,3023,3029-3030,3046,3049,3052] -> trunk

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/listClasses/TileListItemRenderer.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/ModalWindowRequest.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/managers/dragClasses/DragProxy.as</path>
<path kind="dir" action="M">/flex/sdk/trunk</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/PopUpManagerImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/Button.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/ColorPicker.as</path>
<path kind="file" copyfrom-path="/flex/sdk/branches/3.0.x/frameworks/projects/framework/src/mx/events/InterDragManagerEvent.as" copyfrom-rev="3052" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/InterDragManagerEvent.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/PopUpRequest.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/SystemManagerGlobals.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/SWFBridgeEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/systemClasses/EventProxy.as</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/managers/ISystemManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/tools/dependencychecker/flex/tools/dependencychecker/FrameworkSwcDependencyRules.java</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/sliderClasses/SliderThumb.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/containers/DividedBox.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/DragManagerImpl.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/SizeRequest.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/dataGridClasses/DataGridHeader.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/SWFLoader.as</path>
<path kind="file" copyfrom-path="/flex/sdk/branches/3.0.x/frameworks/projects/framework/src/mx/events/InterManagerRequest.as" copyfrom-rev="3052" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/InterManagerRequest.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/managers/NativeDragManagerImpl.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/FocusRequest.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/wsdl/WSDL.as</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/listClasses/ListBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/scrollClasses/ScrollBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/dividedBoxClasses/BoxDivider.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/Panel.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/ToolTipManagerImpl.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/SandboxRootDragEvent.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/airframework/src/mx/managers/WindowedSystemManager.as</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/src/mx/managers/SystemManager.as</path>
<path kind="file" copyfrom-path="/flex/sdk/branches/3.0.x/frameworks/projects/framework/src/mx/events/SandboxMouseEvent.as" copyfrom-rev="3052" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/SandboxMouseEvent.as</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/frameworks/projects/framework/src/mx/controls/List.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/SystemManagerProxy.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/SandboxRootRequest.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/utils/EventUtil.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/SandboxRootMouseEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/ScrollControlBase.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/framework/src/mx/controls/sliderClasses/Slider.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/frameworks/projects/framework/src/mx/managers/CursorManagerImpl.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/SWFBridgeRequest.as</path>

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

--- frameworks/projects/airframework/src/mx/managers/NativeDragManagerImpl.as
+++ frameworks/projects/airframework/src/mx/managers/NativeDragManagerImpl.as
@@ -33,8 +33,8 @@
 import mx.core.mx_internal;
 import mx.events.DragEvent;
 import mx.events.FlexEvent;
-import mx.events.SandboxRootRequest;
-import mx.events.SandboxRootDragEvent;
+import mx.events.InterManagerRequest;
+import mx.events.InterDragManagerEvent;
 import mx.managers.dragClasses.DragProxy;
 import mx.styles.CSSStyleDeclaration;
 import mx.styles.StyleManager;
@@ -105,11 +105,11 @@

 		registerSystemManager(sm);
 		sandboxRoot = sm.getSandboxRoot();
-		sandboxRoot.addEventListener(SandboxRootDragEvent.DISPATCH_DRAG_EVENT, marshalDispatchEventHandler, false, 0, true);
+		sandboxRoot.addEventListener(InterDragManagerEvent.DISPATCH_DRAG_EVENT, marshalDispatchEventHandler, false, 0, true);

 		// trace("creating DragManagerImpl", sm);
-		sandboxRoot.addEventListener(SandboxRootRequest.DRAG_MANAGER_REQUEST, marshalDragManagerHandler, false, 0, true);
-		var me:SandboxRootRequest = new SandboxRootRequest(SandboxRootRequest.DRAG_MANAGER_REQUEST);
+		sandboxRoot.addEventListener(InterManagerRequest.DRAG_MANAGER_REQUEST, marshalDragManagerHandler, false, 0, true);
+		var me:InterManagerRequest = new InterManagerRequest(InterManagerRequest.DRAG_MANAGER_REQUEST);
 		me.name = "update";
 		// trace("--->update request for DragManagerImpl", sm);
 		sandboxRoot.dispatchEvent(me);
@@ -246,14 +246,14 @@
 			return;
 		}

-		var me:SandboxRootRequest = new SandboxRootRequest(SandboxRootRequest.DRAG_MANAGER_REQUEST);
+		var me:InterManagerRequest = new InterManagerRequest(InterManagerRequest.DRAG_MANAGER_REQUEST);
 		me.name = "isDragging";
 		me.value = true;
 		// trace("-->dispatch isDragging for DragManagerImpl", sm, true);
 		sandboxRoot.dispatchEvent(me);
 		// trace("<--dispatch isDragging for DragManagerImpl", sm, true);

-		me = new SandboxRootRequest(SandboxRootRequest.DRAG_MANAGER_REQUEST);
+		me = new InterManagerRequest(InterManagerRequest.DRAG_MANAGER_REQUEST);
 		me.name = "mouseShield";
 		me.value = true;
 		// trace("-->dispatch add mouseShield.for DragManagerImpl", sm);
@@ -382,7 +382,7 @@
 		}
 		else
 		{
-			var me:SandboxRootRequest = new SandboxRootRequest(SandboxRootRequest.DRAG_MANAGER_REQUEST);
+			var me:InterManagerRequest = new InterManagerRequest(InterManagerRequest.DRAG_MANAGER_REQUEST);
 			me.name = "acceptDragDrop";
 			me.value = target;
 			// trace("-->dispatch acceptDragDrop for DragManagerImpl", sm, target);
@@ -412,7 +412,7 @@
 		}
 		else
 		{
-			var me:SandboxRootRequest = new SandboxRootRequest(SandboxRootRequest.DRAG_MANAGER_REQUEST);
+			var me:InterManagerRequest = new InterManagerRequest(InterManagerRequest.DRAG_MANAGER_REQUEST);
 			me.name = "showFeedback";
 			me.value = feedback;
 			// trace("-->dispatch showFeedback for DragManagerImpl", sm, feedback);
@@ -432,7 +432,7 @@
 	{
 		if (!isDragging)
 		{
-			var me:SandboxRootRequest = new SandboxRootRequest(SandboxRootRequest.DRAG_MANAGER_REQUEST);
+			var me:InterManagerRequest = new InterManagerRequest(InterManagerRequest.DRAG_MANAGER_REQUEST);
 			me.name = "getFeedback";
 			// trace("-->dispatch getFeedback for DragManagerImpl", sm);
 			sandboxRoot.dispatchEvent(me);
@@ -449,15 +449,15 @@
 	 */
 	public function endDrag():void
 	{
-		var me:SandboxRootRequest;
-
-		me = new SandboxRootRequest(SandboxRootRequest.DRAG_MANAGER_REQUEST);
+		var me:InterManagerRequest;
+
+		me = new InterManagerRequest(InterManagerRequest.DRAG_MANAGER_REQUEST);
 		me.name = "mouseShield";
 		me.value = false;
 		// trace("-->dispatch remove mouseShield.for DragManagerImpl", sm);
 		sandboxRoot.dispatchEvent(me);

-		me = new SandboxRootRequest(SandboxRootRequest.DRAG_MANAGER_REQUEST);
+		me = new InterManagerRequest(InterManagerRequest.DRAG_MANAGER_REQUEST);
 		me.name = "isDragging";
 		me.value = false;
 		// trace("-->dispatch isDragging for DragManagerImpl", sm, false);
@@ -537,7 +537,7 @@
 		var len:int = origFormats.length;
 		var format:String;
 		var data:Object;
-		var me:SandboxRootRequest;
+		var me:InterManagerRequest;

 		_allowedActions = event.allowedActions;

@@ -587,7 +587,7 @@

 		if (newType == DragEvent.DRAG_COMPLETE)
 		{
-			me = new SandboxRootRequest(SandboxRootRequest.DRAG_MANAGER_REQUEST);
+			me = new InterManagerRequest(InterManagerRequest.DRAG_MANAGER_REQUEST);
 			me.name = "endDrag";
 			// trace("-->dispatch endDrag for DragManagerImpl", sm);
 			sandboxRoot.dispatchEvent(me);
@@ -609,12 +609,12 @@
 		else
 		{
 			// wake up all the other DragManagers
-			var me:SandboxRootRequest = new SandboxRootRequest(SandboxRootRequest.INIT_MANAGER_REQUEST);
+			var me:InterManagerRequest = new InterManagerRequest(InterManagerRequest.INIT_MANAGER_REQUEST);
 			me.name = "mx.managers.IDragManagerImpl";
 			sandboxRoot.dispatchEvent(me);
 			// bounce this message off the sandbox root and hope
 			// another DragManager picks it up
-			var mde:SandboxRootDragEvent = new SandboxRootDragEvent(SandboxRootDragEvent.DISPATCH_DRAG_EVENT, false, false,
+			var mde:InterDragManagerEvent = new InterDragManagerEvent(InterDragManagerEvent.DISPATCH_DRAG_EVENT, false, false,
 													event.localX,
 													event.localY,
 													event.relatedObject,
@@ -645,16 +645,16 @@
 	 */
 	private function marshalDispatchEventHandler(event:Event):void
 	{
-		if (event is SandboxRootDragEvent)
+		if (event is InterDragManagerEvent)
 			return;

 		var marshalEvent:Object = event;

-		var swfRoot:DisplayObject = SystemManager.getSWFRoot(marshalEvent.dragTarget);
+		var swfRoot:DisplayObject = SystemManager.getSWFRoot(marshalEvent.dropTarget);
 		if (!swfRoot)
 			return;	// doesn't belong to this appdomain

-		var dragEvent:DragEvent = new DragEvent(marshalEvent.eventType, marshalEvent.bubbles, marshalEvent.cancelable);
+		var dragEvent:DragEvent = new DragEvent(marshalEvent.dragEventType, marshalEvent.bubbles, marshalEvent.cancelable);
 		dragEvent.localX = marshalEvent.localX;
 		dragEvent.localY = marshalEvent.localY;
 		dragEvent.action = marshalEvent.action;
@@ -670,7 +670,7 @@
 			// this will call handlers right away, so deferred clipboard will be costly
 			dragEvent.dragSource.addData(marshalEvent.dragSource.dataForFormat(formats[i]), formats[i]);
 		}
-		if (!marshalEvent.dragTarget.dispatchEvent(dragEvent))
+		if (!marshalEvent.dropTarget.dispatchEvent(dragEvent))
 		{
 			event.preventDefault();
 		}
@@ -681,7 +681,7 @@
 	 */
 	private function marshalDragManagerHandler(event:Event):void
 	{
-		if (event is SandboxRootRequest)
+		if (event is InterManagerRequest)
 			return;

 		var marshalEvent:Object = event;
@@ -723,7 +723,7 @@
 			if (isDragging)
 			{
 				// trace("-->marshaled update for DragManagerImpl", sm);
-				var me:SandboxRootRequest = new SandboxRootRequest(SandboxRootRequest.DRAG_MANAGER_REQUEST);
+				var me:InterManagerRequest = new InterManagerRequest(InterManagerRequest.DRAG_MANAGER_REQUEST);
 				me.name = "isDragging";
 				me.value = true;
 				// trace("-->dispatched isDragging for DragManagerImpl", sm, true);


Transferred from the Adobe Open Source Subversion Repository

Revision: 22608
Author:   smgilson@adobe.com
Date:     2011-09-16T17:19:03.985309Z

Log Message:
-----------
- Add ViewMenu example, add image to ViewMenu.as

- fix typos in ASDoc comments

QE notes:
Doc notes:
Bugs:
Reviewer:
Tests run: checkintests
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/ViewMenuExampleHome.mxml</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/TabbedViewNavigator.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/View.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/asdoc/en_US/spark/components/examples/ViewMenuExample.mxml</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/ViewMenuItem.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/BusyIndicator.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/CalloutButton.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/ViewMenu.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/SplitViewNavigator.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/ActionBar.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/Callout.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/ToggleSwitch.as</path>

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

--- frameworks/projects/mobilecomponents/src/spark/components/ViewMenuItem.as
+++ frameworks/projects/mobilecomponents/src/spark/components/ViewMenuItem.as
@@ -34,6 +34,13 @@
  *  for a menu item in the ViewMenu container.
  *  Write an event handler for the click event
  *  to perform an operation when the menu item is selected.
+ *
+ *
The following image shows a ViewMenu container with five
+ *  ViewMenuItem controls:

+ *
+ *

+ *
+ *

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

@@ -46,6 +53,9 @@
  *  @see spark.layouts.ViewMenuLayout
  *  @see spark.components.supportClasses.ViewNavigatorApplicationBase
  *  @see spark.skins.mobile.ViewMenuItemSkin
+ *
+ *  @includeExample examples/ViewMenuExampleHome.mxml -noswf
+ *  @includeExample examples/ViewMenuExample.mxml -noswf
  *
  *  @langversion 3.0
  *  @playerversion AIR 2.5