Transferred from the Adobe Open Source Subversion Repository

Revision: 18161
Author:   chiedozi@adobe.com
Date:     2010-10-14T23:15:44.404213Z

Log Message:
-----------
The ViewNavigator components now manage their orientation internally based on the stage width and height.  The landscapeOrientation property has been removed from all the components.

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

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/components/TabbedViewNavigator.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/components/View.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/components/supportClasses/ViewNavigatorBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/components/MobileApplication.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/components/TabbedMobileApplication.as</path>
<path kind="file" action="M">/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/mobilecomponents/src/spark/components/ViewNavigator.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/Application.as</path>

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

--- frameworks/projects/mobilecomponents/src/spark/components/View.as
+++ frameworks/projects/mobilecomponents/src/spark/components/View.as
@@ -11,11 +11,15 @@

 package spark.components
 {
+import flash.events.StageOrientationEvent;
+
+import mx.core.FlexGlobals;
 import mx.core.IDataRenderer;
 import mx.core.IVisualElement;
 import mx.core.mx_internal;
 import mx.events.FlexEvent;
 import mx.events.PropertyChangeEvent;
+import mx.managers.SystemManager;

 import spark.core.ContainerDestructionPolicy;
 import spark.events.ViewNavigatorEvent;
@@ -767,17 +771,49 @@
      *  @playerversion AIR 2.5
      *  @productversion Flex 4.5
      */
-    public function getCurrentViewState(landscape:Boolean):String
-    {
-        if (!landscape && hasState("portrait"))
-            return "portrait";
-
-        if (landscape && hasState("landscape"))
-            return "landscape";
+    public function getCurrentViewState():String
+    {
+        var aspectRatio:String = FlexGlobals.topLevelApplication.aspectRatio;
+
+        if (hasState(aspectRatio))
+            return aspectRatio;

         // If the appropriate state for the orientation of the device
         // isn't defined, return the current state
         return currentState;
+    }
+
+    //--------------------------------------------------------------------------
+    //
+    //  Private Methods
+    //
+    //--------------------------------------------------------------------------
+    /**
+     *  @private
+     */
+    private function stage_orientationChangeHandler(event:StageOrientationEvent):void
+    {
+        setCurrentState(getCurrentViewState(), false);
+    }
+
+
+    //--------------------------------------------------------------------------
+    //
+    //  Overridden methods: UIComponent
+    //
+    //--------------------------------------------------------------------------
+
+    /**
+     *  @private
+     */
+    override public function initialize():void
+    {
+    	super.initialize();
+
+        systemManager.stage.addEventListener(StageOrientationEvent.ORIENTATION_CHANGE,
+            stage_orientationChangeHandler);
+
+        setCurrentState(getCurrentViewState(), false);
     }

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


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

--- frameworks/projects/spark/src/spark/validators/NumberValidator.as
+++ frameworks/projects/spark/src/spark/validators/NumberValidator.as
@@ -32,29 +32,32 @@

 /**
  *  The NumberValidator class ensures that a String represents a valid number
- *  according to the conventions of a locale.  It can validate int,
- *  uint, and Number objects.
- *  This class uses the locale style for specifying the
- *  requested locale ID.
- *
+ *  according to the conventions of a locale.  It can validate strings that
+ *  represent  int,uint, and Number
+ *  objects.
+ *
+ *
This class uses the locale style for specifying the
+ *  requested locale ID.

+ *
  *
The validator can ensure that the input falls within a given range
- *  (specified by minValue and maxValue  properties),
+ *  (specified by minValue and maxValue properties),
  *  is an integer (specified by domain  property),
  *  is non-negative (specified by allowNegative  property),
- *  has the grouping of digits correct per the locale conventions,
- *  has the correct way of specifying negative numbers,
- *  and does not exceed the specified fractionalDigits.
- *  The validator sets default property values from the operating system supplied
- *  locale data but they can be customized for specific needs.

- *
- *
The flash.globalization.NumberFormatter class uses the underlying
- *  operating system for acquiring locale-specific data and parsing
- *  functionality. In case the operating system does not provide number
- *  formatting, this class provides fallback functionality.

- *
+ *  correctly specifies negative and positive numbers,
+ *  and does not exceed the specified number offractionalDigits.
+ *  The validator sets default property values by making use of the
+ *  flash.globalization.NumberFormatter and therefore the locale
+ *  specific values are supplied by the operating system.

+ *
+ *
The NumberValidator class can be used in MXML declarations
+ *  or in ActionScript code. This class uses the locale style for specifying the
+ *  requested Locale ID required by the
+ *  flash.globalization.NumberFormatter class, and has methods and
+ *  properties that are bindable.

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

  *
@@ -100,13 +103,13 @@
      *  Constructs a new NumberValidator object to validate numbers according
      *  to the conventions of a given locale.
      *

-     *  The locale for this class is supplied by the locale style property.
+     *  The locale for this class is supplied by the locale style.
      *  The locale style can be set in several ways:
      *

      *

-     *

-     *  Inheriting the style from a UIComponent by calling the UIComponent's
-     *  addStyleClient() method.
+     *
         *
+     *  Inheriting the style from a UIComponent by calling
+     *  the UIComponent's addStyleClient method.
      *

      *

      *  By using the class in an MXML declaration and inheriting the
@@ -127,14 +130,20 @@
      *

      *

      *

-     *  Calling the setStyle() method.
-     *  For example: nv.setStyle("locale", "fr-FR");
+     *  Calling the setStyle method.
+     *  For example:
+     *  nv.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 throw an 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.
+     *

      *
      *  @langversion 3.0
      *  @playerversion Flash 10.1
@@ -220,7 +229,8 @@
      *

      *
      *
-     *  @default dependent on the locale and operating system.
+     *  The default value is dependent on the actual locale and
+     *  operating system.
      *
      *  @throws ArgumentError if the assigned value is not a number
      *  between 0 and 4.
@@ -326,8 +336,9 @@
      *
      *  @param value Object to validate.
      *
-     *  @return An Array of ValidationResult objects, with one ValidationResult
-     *  object for each field examined by the validator.
+     *  @return An Array of ValidationResult objects,
+     *  with one ValidationResult object for each field examined
+     *  by the validator.
      *
      *  @langversion 3.0
      *  @playerversion Flash 10.1
@@ -350,7 +361,6 @@

     /**
      *  @private
-     *
      *  Load the error messages from the resource bundle.
      */
     override protected function resourcesChanged():void
@@ -371,8 +381,8 @@
     /**
      *  Convenience method for calling a validator from within a custom
      *  validation function. Each of the standard Flex validators has a similar
-     *  convenience method. Caller must check the ValidationResult objects in
-     *  the returned array for validation status.
+     *  convenience method. Caller must check the ValidationResult
+     *  objects in the returned array for validation status.
      *
      *  @param value A number string to validate.
      *
@@ -381,8 +391,9 @@
      *  For example, if the value parameter specifies value.number,
      *  the baseField value is "number".
      *
-     *  @return An Array of ValidationResult objects, with one ValidationResult
-     *  object for each field examined by the validator.
+     *  @return An Array of ValidationResult objects,
+     *  with one ValidationResult object for each field examined
+     *  by the validator.
      *
      *  @see mx.validators.ValidationResult
      *


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

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


Transferred from the Adobe Open Source Subversion Repository

Revision: 18453
Author:   cframpto@adobe.com
Date:     2010-11-04T21:15:40.237635Z

Log Message:
-----------
Fix to allow displayAsPassword fields to autoSize.  Fix code so it matches the existing docs and the TextField behavior - displayAsPassword fields can not be cut or copied.

QE notes:
Doc notes:
Bugs: SDK-28255
Reviewer: Corey
Tests run: cyclone
Is noteworthy for integration:

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

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

--- frameworks/projects/spark/src/spark/components/RichEditableText.as
+++ frameworks/projects/spark/src/spark/components/RichEditableText.as
@@ -56,6 +56,7 @@
     import flashx.textLayout.formats.Category;
     import flashx.textLayout.formats.ITextLayoutFormat;
     import flashx.textLayout.formats.TextLayoutFormat;
+    import flashx.textLayout.operations.CopyOperation;
     import flashx.textLayout.operations.CutOperation;
     import flashx.textLayout.operations.DeleteTextOperation;
     import flashx.textLayout.operations.FlowOperation;
@@ -1336,7 +1337,7 @@

         /**
          *  @copy flash.text.TextField#displayAsPassword
-         *
+         *
          *  @langversion 3.0
          *  @playerversion Flash 10
          *  @playerversion AIR 1.5
@@ -4463,11 +4464,9 @@
             // In this case we always maintain _text with the underlying text and
             // display the appropriate number of passwordChars.  If there are any
             // interactive editing operations _text is updated during the operation.
-            if (displayAsPassword)
-                return;
-
-            // Invalidate _text and _content.
-            _text = null;
+            if (!displayAsPassword)
+                _text = null;
+
             _content = null;
             _textFlow = _textContainerManager.getTextFlow();

@@ -4632,6 +4631,15 @@

                 insertTextOperation.text = textToInsert;
             }
+            else if (op is CopyOperation)
+            {
+                if (_displayAsPassword)
+                {
+                    // For security, don't allow passwords to be copied.
+                    event.preventDefault();
+                    return;
+                }
+            }
             else if (op is PasteOperation)
             {
                 // Paste is implemented in operationEnd.  The basic idea is to allow
@@ -4657,8 +4665,17 @@

                 if (_displayAsPassword)
                 {
-                    _text = splice(_text, flowTextOperation.absoluteStart,
-                        flowTextOperation.absoluteEnd, "");
+                    if (op is DeleteTextOperation)
+                    {
+                        _text = splice(_text, flowTextOperation.absoluteStart,
+                            flowTextOperation.absoluteEnd, "");
+                    }
+                    else
+                    {
+                        // For security, don't allow passwords to be cut.
+                        event.preventDefault();
+                        return;
+                    }
                 }
             }


Transferred from the Adobe Open Source Subversion Repository

Revision: 12529
Author:   cframpto@adobe.com
Date:     2009-12-04T13:41:09.259946Z

Log Message:
-----------
Fix broken build.  TLF build 565 changed GlobalSettings.getResourceStringFunction to GlobalSettings.resourceStringFunction getter.

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

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/RichText.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/mx/core/UIFTETextField.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/RichEditableText.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/utils/TextFlowUtil.as</path>

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

--- frameworks/projects/spark/src/spark/components/RichEditableText.as
+++ frameworks/projects/spark/src/spark/components/RichEditableText.as
@@ -426,7 +426,7 @@
 		 *  TLF itself has English-only messages,
 		 *  but higher layers like Flex can provide localized versions.
 		 */
-		GlobalSettings.getResourceStringFunction = TextUtil.getResourceString;
+		GlobalSettings.resourceStringFunction = TextUtil.getResourceString;

         staticConfiguration =
             Configuration(TextContainerManager.defaultConfiguration).clone();


Transferred from the Adobe Open Source Subversion Repository

Revision: 2749
Author:   gosmith@adobe.com
Date:     2008-08-05T22:47:39.363785Z

Log Message:
-----------
A TextGraphic now keeps track of which text attributes were originally specified on its TextFlow, and pushes its own attributes down onto the TextFlow if they weren't set there.

Reviewer: Deepa
Bug: SDK-16346
QA: No
Doc: No

Modified Paths:
--------------
<path kind="dir" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/utils</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/component/TextView.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/graphics/TextGraphic.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/utils/TextUtil.as</path>

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

--- frameworks/projects/spark/src/spark/components/RichEditableText.as
+++ frameworks/projects/spark/src/spark/components/RichEditableText.as
@@ -22,9 +22,9 @@
 import flash.text.engine.TextBlock;
 import flash.text.engine.TextElement;
 import flash.text.engine.TextLine;
-import flash.utils.describeType;

 import flex.events.TextOperationEvent;
+import flex.utils.TextUtil;

 import mx.core.UIComponent;

@@ -100,116 +100,6 @@

     //--------------------------------------------------------------------------
     //
-    //  Class constants
-    //
-    //--------------------------------------------------------------------------
-
-    /**
-     *  @private
-     *  An Array of the names of all text attributes, in no particular order.
-     */
-    private static var ALL_ATTRIBUTE_NAMES:Array = [];
-
-    /**
-     *  @private
-     *  Maps the name of a text attribute to what kind of attribute it is.
-     *  For example,
-     *  paddingLeft -> container
-     *  marginLeft -> paragraph
-     *  fontSize -> character
-     */
-    private static var ATTRIBUTE_MAP:Object = {};
-
-    /**
-     *  @private
-     */
-    private static const CONTAINER:String = "container";
-
-    /**
-     *  @private
-     */
-    private static const PARAGRAPH:String = "paragraph";
-
-    /**
-     *  @private
-     */
-    private static const CHARACTER:String = "character";
-
-    //--------------------------------------------------------------------------
-    //
-    //  Class initialization
-    //
-    //--------------------------------------------------------------------------
-
-    /**
-     *  @private
-     *  Initializes the ATTRIBUTE_MAP by using describeType()
-     *  to enumerate the properties of the IContainerAttribues,
-     *  IParagraphAttributes, and ICharacterAttributes interfaces.
-     */
-    private static function initClass():void
-    {
-        var type:XML;
-        var name:String;
-
-        type = describeType(IContainerAttributes);
-        for each (name in type.factory.accessor.@name)
-        {
-            ALL_ATTRIBUTE_NAMES.push(name);
-            ATTRIBUTE_MAP[name] = CONTAINER;
-        }
-
-        type = describeType(IParagraphAttributes);
-        for each (name in type.factory.accessor.@name)
-        {
-            ALL_ATTRIBUTE_NAMES.push(name);
-            ATTRIBUTE_MAP[name] = PARAGRAPH;
-        }
-
-        type = describeType(ICharacterAttributes);
-        for each (name in type.factory.accessor.@name)
-        {
-            ALL_ATTRIBUTE_NAMES.push(name);
-            ATTRIBUTE_MAP[name] = CHARACTER;
-        }
-    }
-
-    initClass();
-
-    //--------------------------------------------------------------------------
-    //
-    //  Class methods
-    //
-    //--------------------------------------------------------------------------
-
-    /**
-     *  @private
-     */
-    private static function extractText(textFlow:TextFlow):String
-    {
-        var text:String = "";
-
-        var leaf:LeafElement = textFlow.getFirstLeaf();
-        while (leaf)
-        {
-            var p:Paragraph = leaf.getParagraph();
-            for (;;)
-            {
-                text += leaf.text;
-                leaf = leaf.getNextLeaf(p);
-                if (!leaf)
-                    break;
-            }
-            leaf = p.getLastLeaf().getNextLeaf(null);
-            if (leaf)
-                text += "\n";
-        }
-
-        return text;
-    }
-
-    //--------------------------------------------------------------------------
-    //
     //  Constructor
     //
     //--------------------------------------------------------------------------
@@ -1415,7 +1305,7 @@
     {
         if (textInvalid)
         {
-            _text = extractText(textFlow);
+            _text = TextUtil.extractText(textFlow);
             textInvalid = false;
         }

@@ -1856,7 +1746,7 @@

         if (!names)
         {
-            names = ALL_ATTRIBUTE_NAMES;
+            names = TextUtil.ALL_ATTRIBUTE_NAMES;

             needContainerAttributes = true;
             needParagraphAttributes = true;
@@ -1864,15 +1754,15 @@
         }
         else
         {
-           for each (p in names)
+            for each (p in names)
             {
-                kind = ATTRIBUTE_MAP[p];
-
-                if (kind == CONTAINER)
+                kind = TextUtil.ATTRIBUTE_MAP[p];
+
+                if (kind == TextUtil.CONTAINER)
                     needContainerAttributes = true;
-                else if (kind == PARAGRAPH)
+                else if (kind == TextUtil.PARAGRAPH)
                     needParagraphAttributes = true;
-                else if (kind == CHARACTER)
+                else if (kind == TextUtil.CHARACTER)
                     needCharacterAttributes = true;
             }
         }
@@ -1903,13 +1793,13 @@

         for each (p in names)
         {
-            kind = ATTRIBUTE_MAP[p];
+            kind = TextUtil.ATTRIBUTE_MAP[p];

-            if (kind == CONTAINER)
+            if (kind == TextUtil.CONTAINER)
                 attributes[p] = containerAttributes[p];
-            else if (kind == PARAGRAPH)
+            else if (kind == TextUtil.PARAGRAPH)
                 attributes[p] = paragraphAttributes[p];
-            else if (kind == CHARACTER)
+            else if (kind == TextUtil.CHARACTER)
                 attributes[p] = characterAttributes[p];
         }

@@ -1935,21 +1825,21 @@

         for (var p:String in attributes)
         {
-            var kind:String = ATTRIBUTE_MAP[p];
+            var kind:String = TextUtil.ATTRIBUTE_MAP[p];

-            if (kind == CONTAINER)
+            if (kind == TextUtil.CONTAINER)
             {
                 if (!containerAttributes)
                    containerAttributes =  new ContainerAttributes();
                 containerAttributes[p] = attributes[p];
             }
-            else if (kind == PARAGRAPH)
+            else if (kind == TextUtil.PARAGRAPH)
             {
                 if (!paragraphAttributes)
                    paragraphAttributes =  new ParagraphAttributes();
                 paragraphAttributes[p] = attributes[p];
             }
-            else if (kind == CHARACTER)
+            else if (kind == TextUtil.CHARACTER)
             {
                 if (!characterAttributes)
                    characterAttributes =  new CharacterAttributes();


Transferred from the Adobe Open Source Subversion Repository

Revision: 7224
Author:   cframpto@adobe.com
Date:     2009-05-22T18:23:36.070500Z

Log Message:
-----------
Mistakenly declared a local variable with the same name as a member variable and the selection kept disappearing.

QA Notes:
Doc Notes:
Bugs: found it myself
Reviewers: Gordon

Modified Paths:
--------------
/flex/sdk/trunk/frameworks/projects/flex4/src/spark/primitives/RichEditableText.as

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

--- frameworks/projects/spark/src/spark/components/RichEditableText.as
+++ frameworks/projects/spark/src/spark/components/RichEditableText.as
@@ -2970,7 +2970,7 @@
         }
         textFlowChanged = false;

-        var contentChanged:Boolean = false;
+        var dimensionChanged:Boolean = false;
         var oldContentWidth:Number = _contentWidth;

         var newContentBounds:Rectangle = _inputManager.getContentBounds();
@@ -2994,7 +2994,7 @@
             dispatchPropertyChangeEvent(
                 "contentWidth", oldContentWidth, newContentWidth);

-            contentChanged = true;
+            dimensionChanged = true;
         }

         var oldContentHeight:Number = _contentHeight;
@@ -3018,11 +3018,11 @@
             dispatchPropertyChangeEvent(
                 "contentHeight", oldContentHeight, newContentHeight);

-            contentChanged = true;
+            dimensionChanged = true;
         }

         // If autoSize and text size changed, need to remeasure.
-        if (contentChanged && actuallyAutoSizing)
+        if (dimensionChanged && actuallyAutoSizing)
         {
             invalidateSize();
             invalidateDisplayList();


Transferred from the Adobe Open Source Subversion Repository

Revision: 19973
Author:   cframpto@adobe.com
Date:     2011-01-27T14:45:03.950539Z

Log Message:
-----------
Text bugs.  Fix mustella failure from integration with TLF build 232 related to the EditManager delayedUpdates flag.  FIx RTE when setting text to null when there is a prompt.  Fix bug in getFormatOfRange if a selection was explicitly specified, rather than using the current selection.

QE notes:
Doc notes:
Bugs: SDK-29274, SDK-29257, SDK-29243
Reviewer: Alex
Tests run: cyclone
Is noteworthy for integration:

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/RichEditableText.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/RichEditableTextContainerManager.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@1280254 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/spark/src/spark/components/RichEditableText.as
+++ frameworks/projects/spark/src/spark/components/RichEditableText.as
@@ -1965,6 +1965,9 @@
          *  it will be a TextFlow containing a single ParagraphElement
          *  with a single SpanElement.

          *
+         *
If you set the text to null, it will be
+         *  set to the default value which is an empty string.

+         *
          *
If the text contains explicit line breaks --
          *  CR ("\r"), LF ("\n"), or CR+LF ("\r\n") --
          *  then the content will be set to a TextFlow


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

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

 package mx.messaging.management
 {


Transferred from the Adobe Open Source Subversion Repository

Revision: 8723
Author:   chaase@adobe.com
Date:     2009-07-21T23:19:39.441122Z

Log Message:
-----------
Fixed 2 areas of effects bugs (playheadTime and transform effects shared instances). Also fixed bug in GraphicElement.localToGlobal(). Fixes remaining transform effects bugs prior to feature signoff.

QE Notes: None
Doc Notes: None
Bugs: SDK-22315, sdk-22304, sdk-22302, sdk-21931, sdk-21068, sdk-20179, sdk-21069
Reviewer: Hans, Jason (GraphicElement), Glenn (SharedObjectDepot)
API Change: None
Is noteworthy for integration: No
tests: checkintests mustella spark/effects,mx/effects (run locally and in cyclone by Matt)

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/Effect.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/supportClasses/AnimateInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/primitives/supportClasses/GraphicElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/animation/Animation.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/effectClasses/CompositeEffectInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/Fade.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/EffectInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/interpolation/NumberInterpolator.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/interpolation/RGBInterpolator.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/interpolation/HSBInterpolator.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/SharedObjectDepot.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/supportClasses/AnimateTransformInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/AnimateTransform.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/effectClasses/ParallelInstance.as</path>

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

--- frameworks/projects/spark/src/spark/effects/SharedObjectDepot.as
+++ frameworks/projects/spark/src/spark/effects/SharedObjectDepot.as
@@ -0,0 +1,132 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  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
+{
+import flash.utils.Dictionary;
+
+/**
+ * This internal class is a utility used by AnimateTransform to
+ * store, retrieve, and remove shared objects. The class uses a
+ * Dictionary of Dictionaries internally to store the shared
+ * objects and keeps a reference count for the entries to know
+ * when it is okay to remove the top level dictionary entry.
+ *
+ * The reason this is needed by AnimateTransform is that we want
+ * to share transform instances per top-level Parallel effect.
+ * But rather than keep the Dictionary-of-Dictionaries at that level,
+ * we keep it in this utility class. We add the reference count
+ * to the upper-level dictionary to know when we can delete it
+ * (Dictionary lacks any useful isEmpty() capability).
+ *
+ * The top level Dictionary elements are stored in sharedObjectMaps
+ * by the mapKey passed into storeSharedObject(). The items in
+ * sharedObjectMaps are Dictionaries using the target argument passed
+ * into storeSharedObject() to store their entries.
+ */
+internal class SharedObjectDepot
+{
+    /**
+     * The upper level Dictionary object. This will store our
+     * lower level Dictionaries that we create on the fly
+     */
+    private var sharedObjectMaps:Dictionary = new Dictionary(true);
+
+    /**
+     * The refcount per key in sharedObjectMaps. When the refcount
+     * for any map dips to zero, we delete it from sharedObjectMaps.
+     */
+    private var sharedObjectRefcounts:Dictionary = new Dictionary(true);
+
+    public function SharedObjectDepot()
+    {
+    }
+
+    /**
+     * Returns a shared object if it exists. The top level map is
+     * searched to see if there is an entry (another map) for the key
+     * 'mapKey'. If that exists, that map is searched to see if there
+     * is an entry with the key 'target'. mapKey must be non-null.
+     *
+     * @return Object the shared object, if it exists, or null otherwise.
+     */
+    public function getSharedObject(mapKey:Object, target:Object):Object
+    {
+        if (mapKey != null)
+        {
+            var sharedObjectMap:Dictionary =
+                Dictionary(sharedObjectMaps[mapKey]);
+            if (sharedObjectMap != null)
+                return sharedObjectMap[target];
+        }
+        return null;
+    }
+
+    /**
+     * Stores a new entry in the shared object map. First, the
+     * top level map is searched to see if there is an existing
+     * map entry (also a map) with the key 'mapKey'. If not, a
+     * new map is created and stored with this key in the top level
+     * map. Then the lower level map is queried to see if there
+     * is an entry with the key 'target'. If not, the refcount for
+     * mapKey is incremented. Finally, an entry is stored in the lower
+     * level map with the key 'target'. mapKey must be non-null.
+     *
+     */
+    public function storeSharedObject(mapKey:Object, target:Object,
+        instance:Object):void
+    {
+        if (mapKey != null)
+        {
+            var sharedObjectMap:Dictionary = sharedObjectMaps[mapKey];
+            if (!sharedObjectMap)
+            {
+                sharedObjectMap = new Dictionary();
+                sharedObjectMaps[mapKey] = sharedObjectMap;
+            }
+            if (!sharedObjectMap[target])
+            {
+                if (!sharedObjectRefcounts[mapKey])
+                    sharedObjectRefcounts[mapKey] = 1;
+                else
+                    sharedObjectRefcounts[mapKey] += 1;
+            }
+            sharedObjectMap[target] = instance;
+        }
+    }
+
+    /**
+     * Removes the entry accessed with the upper level key of mapKey and
+     * lower level key of target. If the refcount for mapKey reaches zero,
+     * that entry is deleted from the upper level map. mapKey must be
+     * non-null
+     */
+    public function removeSharedObject(mapKey:Object, target:Object):void
+    {
+        if (mapKey != null)
+        {
+            var sharedObjectMap:Dictionary = sharedObjectMaps[mapKey];
+            if (!sharedObjectMap)
+                return;
+            if (sharedObjectMap[target])
+            {
+                delete sharedObjectMap[target];
+                sharedObjectRefcounts[mapKey] -= 1;
+                if (sharedObjectRefcounts[mapKey] <= 0)
+                {
+                    delete sharedObjectMaps[mapKey];
+                    delete sharedObjectRefcounts[mapKey];
+                }
+            }
+        }
+    }
+}
+}


Transferred from the Adobe Open Source Subversion Repository

Revision: 7093
Author:   srahim@adobe.com
Date:     2009-05-19T22:29:04.235821Z

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

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/filters/ConvolutionFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/filters/DisplacementMapFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/filters/GlowFilter.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/filters/DropShadowFilter.as</path>

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

--- frameworks/projects/spark/src/spark/filters/ConvolutionFilter.as
+++ frameworks/projects/spark/src/spark/filters/ConvolutionFilter.as
@@ -5,8 +5,75 @@
 import mx.filters.BaseFilter;
 import mx.filters.IBitmapFilter;

+/**
+* The ConvolutionFilter class applies a matrix convolution filter effect. A convolution combines pixels
+* in the input image with neighboring pixels to produce an image. A wide variety of image
+* effects can be achieved through convolutions, including blurring, edge detection, sharpening,
+* embossing, and beveling. You can apply the filter to any display object (that is, objects that
+* inherit from the DisplayObject class),
+* such as MovieClip, SimpleButton, TextField, and Video objects, as well as to BitmapData objects.
+*
+*
To create a convolution filter, use the syntax new ConvolutionFilter().
+* The use of filters depends on the object to which you apply the filter:

+*

To apply filters to movie clips, text fields, buttons, and video, use the
+* filters property (inherited from DisplayObject). Setting the filters
+* property of an object does not modify the object, and you can remove the filter by clearing the
+* filters property.

+*
+*
To apply filters to BitmapData objects, use the BitmapData.applyFilter() method.
+* Calling applyFilter() on a BitmapData object takes the source BitmapData object
+* and the filter object and generates a filtered image as a result.

+*

+*
+*
If you apply a filter to a display object, the value of the cacheAsBitmap property of the
+* object is set to true. If you clear all filters, the original value of
+* cacheAsBitmap is restored.

+*
+*
A filter is not applied if the resulting image exceeds the maximum dimensions.
+* In  AIR 1.5 and Flash Player 10, the maximum is 8,191 pixels in width or height,
+* and the total number of pixels cannot exceed 16,777,215 pixels. (So, if an image is 8,191 pixels
+* wide, it can only be 2,048 pixels high.)
+* For example, if you zoom in on a large movie clip with a filter applied, the filter is
+* turned off if the resulting image exceeds maximum dimensions.

+*
+* @langversion 3.0
+* @playerversion Flash 10
+* @playerversion AIR 1.5
+* @productversion Flex 4
+*/
+
 public class ConvolutionFilter extends BaseFilter implements IBitmapFilter
 {
+	/**
+	 * Constructor.
+	 *
+	 * @param matrixX The x dimension of the matrix (the number of columns in the matrix). The
+	 * default value is 0.
+	 * @param matrixY The y dimension of the matrix (the number of rows in the matrix). The
+	 * default value is 0.
+	 * @param matrix The array of values used for matrix transformation. The number of
+	 * items in the array must equal matrixX ~~ matrixY.
+	 * @param divisor The divisor used during matrix transformation. The default value is 1.
+	 * A divisor that is the sum of all the matrix values evens out the overall color intensity of the
+	 * result. A value of 0 is ignored and the default is used instead.
+	 * @param bias The bias to add to the result of the matrix transformation. The default value is 0.
+	 * @param preserveAlpha A value of false indicates that the alpha value is not
+	 * preserved and that the convolution applies to all
+	 * channels, including the alpha channel. A value of true indicates that
+	 * the convolution applies only to the color channels. The default value is true.
+	 * @param clamp For pixels that are off the source image, a value of true indicates that the
+	 * input image is extended along each of its borders as necessary by duplicating the color values
+	 * at the given edge of the input image. A value of false indicates that another
+	 * color should be used, as specified in the color and alpha properties.
+	 * The default is true.
+	 * @param color The hexadecimal color to substitute for pixels that are off the source image.
+	 * @param alpha The alpha of the substitute color.
+	 *
+	 * @langversion 3.0
+	 * @playerversion Flash 10
+	 * @playerversion AIR 1.5
+	 * @productversion Flex 4
+	 */
 	public function ConvolutionFilter(matrixX:Number = 0, matrixY:Number = 0,
 	                                  matrix:Array = null, divisor:Number = 1.0,
 	                                  bias:Number = 0.0,
@@ -306,6 +373,17 @@
 		}
 	}

+	/**
+	 * Returns a copy of this filter object.
+	 *
+	 * @return BitmapFilter A new ConvolutionFilter instance with all the same properties as the original
+	 * ConvolutionMatrixFilter instance.
+	 *
+	 * @langversion 3.0
+	 * @playerversion Flash 10
+	 * @playerversion AIR 1.5
+	 * @productversion Flex 4
+	 */
 	public function clone():BitmapFilter
 	{
 		return new flash.filters.ConvolutionFilter(matrixX, matrixY, matrix, divisor,


Fixed the Parser so that it no longer explodes on null / non-string attribute values

--- src/laml/xml/LAMLParser.as
+++ src/laml/xml/LAMLParser.as
@@ -170,13 +170,13 @@
 			else if(value == "false") {
 				return false;
 			}
-			else if(value.indexOf('#') == 0) {
+			else if(value && value.indexOf('#') == 0) {
 				return parseHexString(value);
 			}
 			else if(!isNaN(value)) {
 				return Number(value);
 			}
-			else if(value.indexOf("{") == 0) {
+			else if(value && value.indexOf("{") == 0) {
 				//instance.pendingAttributes[name] = value;
 			}
 			else {


Fix alpha threshold on multi pass phong effect

--- src/aerys/minko/render/material/phong/multipass/ZPrepassShader.as
+++ src/aerys/minko/render/material/phong/multipass/ZPrepassShader.as
@@ -1,20 +1,25 @@
 package aerys.minko.render.material.phong.multipass
 {
     import aerys.minko.render.RenderTarget;
+    import aerys.minko.render.material.basic.BasicProperties;
     import aerys.minko.render.shader.SFloat;
     import aerys.minko.render.shader.Shader;
     import aerys.minko.render.shader.ShaderSettings;
+    import aerys.minko.render.shader.part.DiffuseShaderPart;
     import aerys.minko.render.shader.part.animation.VertexAnimationShaderPart;
     import aerys.minko.type.enum.ColorMask;

     public class ZPrepassShader extends Shader
     {
 		private var _vertexAnimationPart	: VertexAnimationShaderPart;
+		private var _diffuseShaderPart 		: DiffuseShaderPart;

         public function ZPrepassShader(renderTarget : RenderTarget  = null,
                                        priority     : Number        = 0.0)
         {
             super(renderTarget, priority);
+
+			_diffuseShaderPart 		= new DiffuseShaderPart(this);
 			_vertexAnimationPart	= new VertexAnimationShaderPart(this);
         }

@@ -31,7 +36,18 @@
         }

         override protected function getPixelColor():SFloat
-        {
+        {
+			if (meshBindings.propertyExists(BasicProperties.ALPHA_THRESHOLD))
+			{
+				var diffuseColor : SFloat = _diffuseShaderPart.getDiffuseColor(false);
+
+				var alphaThreshold : SFloat = meshBindings.getParameter(
+					BasicProperties.ALPHA_THRESHOLD, 1
+				);
+
+				kill(subtract(0.5, lessThan(diffuseColor.w, alphaThreshold)));
+			}
+
             return float4(0, 0, 0, 0);
         }
     }


Transferred from the Adobe Open Source Subversion Repository

Revision: 1451
Author:   jimurphy@adobe.com
Date:     2008-04-29T14:19:59.414928Z

Log Message:
-----------
Merge 3.0.x [1412,1415-1417,1444] -> Trunk

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/channels/AMFChannel.as</path>
<path kind="dir" action="M">/flex/sdk/trunk</path>
<path kind="file" action="M">/flex/sdk/trunk/lib/flex-messaging-common.jar</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/channels/NetConnectionChannel.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/channels/StreamingHTTPChannel.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/airframework/src/mx/controls/HTML.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/channels/StreamingAMFChannel.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/channels/StreamingConnectionHandler.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/messaging/channels/HTTPChannel.as</path>

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

--- frameworks/projects/airframework/src/mx/controls/HTML.as
+++ frameworks/projects/airframework/src/mx/controls/HTML.as
@@ -620,6 +620,13 @@
      *
Setting this property has the side effect of setting
      *  the location property to null,
      *  and vice versa.

+	 *
+	 *
Content added via the htmlText property is put in the
+	 *  application security sandbox. If an AIR application includes an HTML
+	 *  control located in the application sandbox, and remote HTML code is
+	 *  directly added into the control by setting the  htmlText
+	 *  property, any script contained in the HTML text is executed in the
+	 *  application sandbox.

      *
      *  @default ""
      *


Revert r1423863

Revert r1423863

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

--- frameworks/projects/charts/src/mx/charts/DateTimeAxis.as
+++ frameworks/projects/charts/src/mx/charts/DateTimeAxis.as
@@ -1415,7 +1415,6 @@
     override public function formatForScreen(v:Object):String
     {
         var d:Date = tmpDate;
-        var parseFunction:Function = this.parseFunction;

         if (parseFunction != null)
         {


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

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


Transferred from the Adobe Open Source Subversion Repository

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

--- frameworks/projects/mx/src/mx/containers/BoxDirection.as
+++ frameworks/projects/mx/src/mx/containers/BoxDirection.as
@@ -17,6 +17,11 @@
  *  for the direction property of the Box container.
  *
  *  @see mx.containers.Box
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 public final class BoxDirection
 {
@@ -30,11 +35,21 @@

 	/**
 	 *  Specifies that children of the Box container are laid out horizontally.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public static const HORIZONTAL:String = "horizontal";

 	/**
 	 *  Specifies that children of the Box container are laid out vertically.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
 	 */
 	public static const VERTICAL:String = "vertical";
 }


Fix further confusion in code about date ranges being off by one and rewrote removeRangeFromSelection so it actually works for all cases.

--- frameworks/projects/mx/src/mx/controls/CalendarLayout.as
+++ frameworks/projects/mx/src/mx/controls/CalendarLayout.as
@@ -299,7 +299,7 @@
     /**
      *  @private
      */
-    mx_internal var selRangeMode:int = 1;
+    mx_internal var selRangeMode:int = START_END;

     //--------------------------------------------------------------------------
     //
@@ -834,7 +834,7 @@
                 else if (todaysDate < _selectableRange.rangeStart)
                 {
                     callMonth = _selectableRange.rangeStart.getMonth();
-                    callYear = _selectableRange. rangeStart.getFullYear();
+                    callYear = _selectableRange.rangeStart.getFullYear();
                 }
                 else if (todaysDate > _selectableRange.rangeEnd)
                 {
@@ -877,23 +877,22 @@
             {
                 case START_END:
                 {
-                    removeRangeFromSelection(null, _selectableRange.rangeStart);
-                    removeRangeFromSelection(_selectableRange.rangeEnd, null);
+                    removeRangeFromSelection(null, addSubtractDays(_selectableRange.rangeStart, -1));
+                    removeRangeFromSelection(addSubtractDays(_selectableRange.rangeEnd, +1), null);
                     break;
                 }

                 case START_ONLY:
                 case END_ONLY:
                 {
-                    removeRangeFromSelection(_selectableRange.rangeEnd,
-                                             _selectableRange.rangeStart);
+                    removeRangeFromSelection(addSubtractDays(_selectableRange.rangeStart, -1),
+												addSubtractDays(_selectableRange.rangeEnd, +1));
                     break;
                 }

                 case SINGLE_DATE:
                 {
-                    removeRangeFromSelection(null, _selectableRange as Date);
-                    removeRangeFromSelection(_selectableRange as Date, null);
+                    removeDayFromSelection(_selectableRange as Date);
                     break;
                 }
             }
@@ -909,15 +908,13 @@
                 case START_ONLY:
                 case END_ONLY:
                 {
-                    removeRangeFromSelection(addSubtractDays(_disabledRanges[i].rangeStart, -1),
-								addSubtractDays(_disabledRanges[i].rangeEnd, +1));
+                    removeRangeFromSelection(_disabledRanges[i].rangeStart, _disabledRanges[i].rangeEnd);
                     break;
                 }

                 case SINGLE_DATE:
                 {
-                    removeRangeFromSelection(addSubtractDays(_disabledRanges[i], -1),
-								_disabledRanges[i]);
+                    removeDayFromSelection(_disabledRanges[i]);
                     break;
                 }
             }
@@ -950,7 +947,7 @@

                 while (tempDate < maxDate)
                 {
-                    removeRangeFromSelection(tempDate, tempDate);
+                    removeDayFromSelection(tempDate);
                     tempDate = addSubtractDays(tempDate, 7);
                 }
             }
@@ -1927,7 +1924,7 @@
     mx_internal function addToSelected(newDate:Date, range:Boolean = false):void
     {

-        if (!selectedRangeCount)
+        if (selectedRangeCount == 0)
             rangeStartDate = null;

         lastSelectedDate = newDate;
@@ -2018,48 +2015,61 @@
 		for (var n:int = 0; n < selectedRangeCount; n++)
 		{
 			rangeStart = _selectedRanges[n].rangeStart;
+			rangeEnd = _selectedRanges[n].rangeEnd;

-			if (endDate < rangeStart)
+			// ignore selection range outsie of date range
+			if (endDate < rangeStart || startDate > rangeEnd)
 				continue;

-			rangeEnd = _selectedRanges[n].rangeEnd;
-
-			if (startDate <= rangeStart)
+			// remove selection range inside of date range
+			if (startDate <= rangeStart && endDate >= rangeEnd)
 			{
-				if (endDate < rangeEnd)
-				{
-					_selectedRanges[n].rangeStart = endDate;
-				}
-				else
-				{
-					_selectedRanges[n] = _selectedRanges[selectedRangeCount - 1];
-					_selectedRanges[selectedRangeCount - 1] = null;
-
-					selectedRangeCount -= 1;
-				}
+				_selectedRanges[n] = null;
 			}
+			// split selection range if date range inside selection range
+			else if (startDate > rangeStart && endDate < rangeEnd)
+			{
+				var temp:Date = _selectedRanges[n].rangeEnd;
+
+				_selectedRanges[n].rangeEnd = addSubtractDays(startDate, -1);
+
+				_selectedRanges[selectedRangeCount] = {};
+				_selectedRanges[selectedRangeCount].rangeStart = addSubtractDays(endDate, +1);
+				_selectedRanges[selectedRangeCount].rangeEnd = temp;
+
+				selectedRangeCount++;
+			}
+			// move selection start date if end overlaps
+			else if (endDate >= rangeStart)
+			{
+				_selectedRanges[n].rangeStart = addSubtractDays(endDate, +1);
+			}
+			// move selection end date if start overlaps
 			else if (startDate <= rangeEnd)
 			{
-				if (endDate < rangeEnd)
-				{
-					var temp:Date = _selectedRanges[n].rangeEnd;
-
-					_selectedRanges[n].rangeEnd = startDate;
-
-					_selectedRanges[selectedRangeCount] = {};
-					_selectedRanges[selectedRangeCount].rangeStart = endDate;
-					_selectedRanges[selectedRangeCount].rangeEnd = temp;
-
-					selectedRangeCount += 1;
-				}
-				else
-				{
-					_selectedRanges[n].rangeEnd = startDate;
-				}
+				_selectedRanges[n].rangeEnd = addSubtractDays(startDate, -1);
+			}
+		}
+
+		// clean up any removed selections
+		for (n = selectedRangeCount -1; n > 0; n--)
+		{
+			if (_selectedRanges[n] == null)
+			{
+				_selectedRanges.splice(n,1);
+				selectedRangeCount--;
 			}
 		}
 	}
-
+
+	/**
+	 *  @private
+	 *  Removes a single date specified by singleDate from the selected dates.
+	 */
+	mx_internal function removeDayFromSelection(singleDate:Date):void
+	{
+		removeRangeFromSelection(singleDate, singleDate);
+	}

     /**
      *  @private
@@ -2458,7 +2468,7 @@
                     if (alreadySelected)
                     {
                         removeSelectionIndicator(colIndex, rowIndex);
-                        removeRangeFromSelection(newDate, newDate);
+                        removeDayFromSelection(newDate);
                     }
                     else
                     {
@@ -2482,15 +2492,15 @@
                         else if (event.ctrlKey)
                         {
                             removeSelectionIndicator(colIndex, rowIndex);
-                            removeRangeFromSelection(newDate, newDate);
+                            removeDayFromSelection(newDate);
                         }
                     }
                     else
                     {
-                            selectedRangeCount = 0;
-                            addSelectionIndicator(colIndex, rowIndex);
-                            addToSelected(newDate);
-                            setSelectedIndicators();
+                        selectedRangeCount = 0;
+                        addSelectionIndicator(colIndex, rowIndex);
+                        addToSelected(newDate);
+                        setSelectedIndicators();
                     }
                 }
             }


Transferred from the Adobe Open Source Subversion Repository

Revision: 8
Author:   open-source-svn-admin@adobe.com
Date:     2007-12-15T01:49:31.087529Z

Log Message:
-----------
The beginning of the open-source Flex SDK.

Populated the flex/sdk/trunk directory with an open-source subset of files from //depot/flex/sdk/...@191097 in the Faramir Perforce server. This changelist is a bit past the 3.0rc0 build.

The Ant scripts will not successfully build yet. They need to be adapted to the open-source subset.

Modified Paths:
--------------
2532 paths were modified

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

--- frameworks/projects/mx/src/mx/events/DateChooserEvent.as
+++ frameworks/projects/mx/src/mx/events/DateChooserEvent.as
@@ -0,0 +1,148 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  ADOBE SYSTEMS INCORPORATED
+//  Copyright 2005-2006 Adobe Systems Incorporated
+//  All Rights Reserved.
+//
+//  NOTICE: Adobe permits you to use, modify, and distribute this file
+//  in accordance with the terms of the license agreement accompanying it.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+package mx.events
+{
+
+import flash.events.Event;
+
+/**
+ *  The DateChooserEvent class represents the event object passed to
+ *  the event listener for the scroll event for
+ *  the DateChooser and DateField controls.
+ *
+ *  @see mx.controls.DateChooser
+ *  @see mx.controls.DateField
+ *  @see mx.events.DateChooserEventDetail
+ */
+public class DateChooserEvent extends Event
+{
+    include "../core/Version.as";
+
+	//--------------------------------------------------------------------------
+	//
+	//  Class constants
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  The DateChooserEvent.SCROLL constant defines the value of the
+	 *  type property of the event object for a scrollevent.
+	 *
+	 *
The properties of the event object have the following values:

+	 *

+	 *
Property	Value

+     *
bubbles	false

+     *
cancelable	false

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

+     *
detail	The scroll direction.

+     *
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.

+     *
triggerEvent	The event that triggered this change event;
+	 *       usually a scroll.

+	 *

+	 *
+     *  @eventType scroll
+	 */
+	public static const SCROLL:String = "scroll";
+
+	//--------------------------------------------------------------------------
+	//
+	//  Constructor
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  Constructor.
+	 *  Normally called by the DateChooser object and not used in application code.
+	 *
+	 *  @param type The event type; indicates the action that triggered the event.
+	 *
+	 *  @param bubbles Specifies whether the event can bubble up the display list hierarchy.
+	 *
+	 *  @param cancelable Specifies whether the behavior associated with the event can be prevented.
+	 *
+	 *  @param detail Indicates the unit and direction of scrolling.
+	 *  The possible values are
+	 *  DateChooserEventDetail.NEXT_MONTH,
+	 *  DateChooserEventDetail.NEXT_YEAR,
+	 *  DateChooserEventDetail.PREVIOUS_MONTH, or
+	 *  DateChooserEventDetail.PREVIOUS_YEAR.
+	 *
+	 *  @param triggerEvent The event that triggered this change event;
+	 *   usually a scroll.
+	 */
+	public function DateChooserEvent(type:String, bubbles:Boolean = false,
+									 cancelable:Boolean = false,
+									 detail:String = null,
+                                     triggerEvent:Event = null)
+	{
+		super(type, bubbles, cancelable);
+
+		this.detail = detail;
+		this.triggerEvent = triggerEvent;
+	}
+
+	//--------------------------------------------------------------------------
+	//
+	//  Properties
+	//
+	//--------------------------------------------------------------------------
+
+	//----------------------------------
+	//  detail
+	//----------------------------------
+
+	/**
+     *  Indicates the direction of scrolling. The values are defined by
+     *  the DateChooserEventDetail class.
+	 *  The possible values are
+	 *  DateChooserEventDetail.NEXT_MONTH,
+	 *  DateChooserEventDetail.NEXT_YEAR,
+	 *  DateChooserEventDetail.PREVIOUS_MONTH, or
+	 *  DateChooserEventDetail.PREVIOUS_YEAR.
+	 *
+	 *  @see mx.events.DateChooserEventDetail
+	 */
+	public var detail:String;
+
+	//----------------------------------
+	//  triggerEvent
+	//----------------------------------
+
+	/**
+	 *  The event that triggered this change;
+	 *  usually a scroll.
+	 */
+	public var triggerEvent:Event;
+
+	//--------------------------------------------------------------------------
+	//
+	//  Overridden methods: Event
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  @private
+	 */
+	override public function clone():Event
+	{
+		return new DateChooserEvent(type, bubbles, cancelable,
+									detail, triggerEvent);
+	}
+}
+
+}


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

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

 package mx.rpc.soap.types
 {


fixed display bug (bold style wasn't getting cleared)

--- WeaveUI/src/weave/ui/CustomDataGrid/DataGridCellRenderer.as
+++ WeaveUI/src/weave/ui/CustomDataGrid/DataGridCellRenderer.as
@@ -109,7 +109,7 @@
 			}
 			else
 			{
-				setStyle("fontWeight", "normal");
+				lbl.setStyle("fontWeight", "normal");
 				alpha = 1.0;
 			}


Fix for buffering to mitigate FEC-3316.

Fix for buffering to mitigate FEC-3316.

--- HLSPlugin/src/org/osmf/net/httpstreaming/HLSHTTPNetStream.as
+++ HLSPlugin/src/org/osmf/net/httpstreaming/HLSHTTPNetStream.as
@@ -820,8 +820,6 @@
 				maxFPS = currentFPS;
 			}

-			//trace("HLSHTTPNetStream is in " + _state);
-
 			if(_state == HTTPStreamingState.WAIT || _state == HTTPStreamingState.PLAY)
 			{
 				bufferTime = 99999; // Sanity to ensure we never allow this to work. Also forces us to recalculate it.
@@ -837,7 +835,7 @@
 					// if we are getting dry then go back into
 					// active play mode and get more bytes
 					// from the stream provider
-					if (!_waitForDRM && (this.bufferLength < _desiredBufferTime_Min || checkIfExtraBufferingNeeded()))
+					if (!_waitForDRM && (this.bufferLength < _desiredBufferTime_Max || checkIfExtraBufferingNeeded()))
 					{
 						setState(HTTPStreamingState.PLAY);
 					}


Fixed error with incorrect destroying of completed uploads.

--- flex_src/src/com/nathancolgate/s3_swf_upload/S3Upload.as
+++ flex_src/src/com/nathancolgate/s3_swf_upload/S3Upload.as
@@ -76,12 +76,25 @@
 		}

 		private function completeHandler(event:Event):void{
+            // prepare to destroy
+            removeListeners();
+            removeEventListener(Event.OPEN, openHandler);
+            removeEventListener(ProgressEvent.PROGRESS, progressHandler);
+            removeEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
+            removeEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
+            removeEventListener(HTTPStatusEvent.HTTP_STATUS, httpStatusHandler);
+            removeEventListener(DataEvent.UPLOAD_COMPLETE_DATA, completeHandler);
+
+            // callback
 			// ExternalInterface.call('s3_swf.jsLog','completeHandler');
 			// ExternalInterface.call('s3_swf.jsLog','Calling onUploadComplete...');
 			ExternalInterface.call('s3_swf.onUploadComplete',_upload_options,event);
 			// ExternalInterface.call('s3_swf.jsLog','onUploadComplete called');
 			// ExternalInterface.call('s3_swf.jsLog','Removing item from global queue...');
-			Globals.queue.removeItemAt(0);
+
+            // destroy
+            Globals.queue.removeItemAt(0);
+
 			// ExternalInterface.call('s3_swf.jsLog','Item removed from global queue');
 			if (Globals.queue.length > 0){
 				// ExternalInterface.call('s3_swf.jsLog','Uploading next item in global queue...');


Transferred from the Adobe Open Source Subversion Repository

Revision: 15066
Author:   cframpto@adobe.com
Date:     2010-03-26T13:15:27.024240Z

Log Message:
-----------
Merge performance change 15065 from 4.x to trunk.  SDK-25810.

Modified Paths:
--------------
<path kind="dir" action="M">/flex/sdk/trunk</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/mx/core/FTETextField.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UIComponent.as</path>

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

--- frameworks/projects/framework/src/mx/core/UIComponent.as
+++ frameworks/projects/framework/src/mx/core/UIComponent.as
@@ -7604,9 +7604,12 @@
         // set the _layoutFeatures.mirror flag.  Similarly, if mirroring isn't
         // required, then clear the _layoutFeatures.mirror flag.

+        // Use "ltr" string here rather than LayoutDirection.LTR because the
+        // string is inlined and the constant is like a variable reference.
+
         const mirror:Boolean = (parentElt)
             ? (parentElt.layoutDirection != thisLayoutDirection)
-            : (LayoutDirection.LTR != thisLayoutDirection);
+            : ("ltr" != thisLayoutDirection);

         if ((_layoutFeatures) ? (mirror != _layoutFeatures.mirror) : mirror)
         {


Transferred from the Adobe Open Source Subversion Repository

Revision: 20846
Author:   smgilson@adobe.com
Date:     2011-03-14T15:46:32.470057Z

Log Message:
-----------
Merge 20813 - ASDoc edits

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

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/trunk/frameworks/projects/framework/src/mx/utils/StringUtil.as</path>
<path kind="file" action="M">/private/flex/sdk/trunk/frameworks/projects/spark/src/spark/utils/MultiDPIBitmapSource.as</path>
<path kind="file" action="M">/private/flex/sdk/trunk/frameworks/projects/framework/src/mx/utils/ObjectProxy.as</path>
<path kind="file" action="M">/private/flex/sdk/trunk/frameworks/projects/spark/src/spark/utils/BitmapUtil.as</path>
<path kind="dir" action="M">/private/flex/sdk/trunk</path>
<path kind="file" action="M">/private/flex/sdk/trunk/frameworks/projects/framework/src/mx/utils/OnDemandEventDispatcher.as</path>

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

--- frameworks/projects/framework/src/mx/utils/StringUtil.as
+++ frameworks/projects/framework/src/mx/utils/StringUtil.as
@@ -206,7 +206,7 @@
      *
      *  @param n The repeat count.
      *
-     *  @result The repeated string.
+     *  @return The repeated string.
      *
      *  @langversion 3.0
      *  @playerversion Flash 9
@@ -237,7 +237,7 @@
      *
      *  @param restrict The restriction string.
      *
-     *  @result The input string, minus any characters
+     *  @return The input string, minus any characters
      *  that are not allowed by the restriction string.
      *
      *  @langversion 3.0


Transferred from the Adobe Open Source Subversion Repository

Revision: 4922
Author:   gosmith@adobe.com
Date:     2009-02-10T22:19:49.510252Z

Log Message:
-----------
Renamed mx.graphics.graphicsClasses to mx.graphics.baseClasses, based on PARB review.

QE Notes: None
Doc Notes: None
Bugs: None
Reviewer: Jason

Modified Paths:
--------------
<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/graphics/BitmapGraphic.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/effects/effectClasses/FxFadeInstance.as</path>
<path kind="dir" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/graphicsClasses</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/baseClasses/TextFlowComposer.as</path>
<path kind="file" copyfrom-path="/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/graphicsClasses/GraphicElement.as" copyfrom-rev="4920" action="R">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/baseClasses/GraphicElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/Group.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxPanel.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/TextGraphic.as</path>
<path kind="file" copyfrom-path="/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/graphicsClasses/TextGraphicElement.as" copyfrom-rev="4920" action="R">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/baseClasses/TextGraphicElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/StrokedElement.as</path>
<path kind="dir" copyfrom-path="/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/graphicsClasses" copyfrom-rev="4916" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/baseClasses</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/effects/FxAnimateShaderTransition.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/TextBox.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxButton.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/baseClasses/TextBlockComposer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/baseClasses/GroupBase.as</path>

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

--- frameworks/projects/spark/src/spark/components/Button.as
+++ frameworks/projects/spark/src/spark/components/Button.as
@@ -24,7 +24,7 @@
 import mx.events.FlexEvent;
 import mx.events.SandboxMouseEvent;
 import mx.core.IDataRenderer;
-import mx.graphics.graphicsClasses.TextGraphicElement;
+import mx.graphics.baseClasses.TextGraphicElement;
 import mx.managers.IFocusManagerComponent;
 import mx.utils.BitFlagUtil;


Transferred from the Adobe Open Source Subversion Repository

Revision: 17198
Author:   jszeto@adobe.com
Date:     2010-08-05T04:16:36.133208Z

Log Message:
-----------
Mobile Button Skin

Added icon support:
- Added iconClass and labelPlacement styles to Button

Reworked ButtonSkin.as:
- Switched from creating TextFields to using createInFontContext to create UITextFields
- Removed all of the TextFormat and style code. UITextField uses the style protochain to get the proper text styles.
- Replaced measure with the measure code from mx Button.
- Replaced updateDisplayList with the layoutContents code from mx Button.
- Added states in constructor
- Fixed up the formatting to follow the framework conventions
- Added copyright and asdoc comments

Temporarily added ButtonLabelPlacement into the mobilecomponents swc. I more permanent solution is to move ButtonLabelPlacement.as from the mx to frameworks rsl.

This should fix the text style and sizing issues. LabelPlacement supports left, right, top and bottom.

The button icon support API is not final.

QE notes: This change along with revision 17195 will require new mobile Button mustella baselines
Doc notes: n/a
Bugs:
Reviewer: Ryan
Tests run: checkintests
Is noteworthy for integration: no

Modified Paths:
--------------
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/components/supportClasses/ButtonLabelPlacement.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/Button.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mx/src/mx/controls/Button.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/MobileComponentsClasses.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/ButtonSkin.as</path>

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

--- frameworks/projects/spark/src/spark/components/Button.as
+++ frameworks/projects/spark/src/spark/components/Button.as
@@ -28,6 +28,12 @@
  *  @productversion Flex 4
  */
 [Style(name="accentColor", type="uint", format="Color", inherit="yes", theme="spark")]
+
+// TODO (jszeto) set to mobile theme only
+[Style(name="iconClass", type="Class", inherit="no", theme="spark")]
+
+// TODO (jszeto) set to mobile theme only
+[Style(name="labelPlacement", type="String", enumeration="left,right,top,bottom", inherit="no", theme="spark")]

 [Exclude(name="textAlign", kind="style")]


Somehow, stepSize went missing.  Restored

--- frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/staticControls/Slider.as
+++ frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/staticControls/Slider.as
@@ -73,5 +73,15 @@
 		{
 			IRangeModel(model).snapInterval = value;
 		}
-	}
+
+        public function get stepSize():Number
+        {
+            return IRangeModel(model).stepSize;
+        }
+        public function set stepSize(value:Number):void
+        {
+            IRangeModel(model).stepSize = value;
+        }
+
+    }
 }


Transferred from the Adobe Open Source Subversion Repository

Revision: 3633
Author:   smgilson@adobe.com
Date:     2008-10-14T19:56:42.919445Z

Log Message:
-----------
ASDoc edits

Checkin Test Passed: Yes
QA: No
Bug:
Doc: No

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

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

--- frameworks/projects/spark/src/spark/components/ResizeMode.as
+++ frameworks/projects/spark/src/spark/components/ResizeMode.as
@@ -13,39 +13,51 @@
 {

 /**
- *  An enum of the modes a component fills in the dimensions
+ *  The ResizeMode class defines an enumeration of the modes
+ *  a component uses to resize its children in the dimensions
  *  specified by the layout system.
  *
- *  For a given size the component may change it's own dimensions (width and height)
- *  and re-layout its children appropriately (this is the default resize mode).
+ *
The component can change it's own dimensions (width and height)
+ *  and relayout its children appropriately (this is the default resize mode).

  *
- *  Alternative option for the component is to change its scale, in which case
- *  the children don't need to change at all. This is supported by Group.
+ *
Alternative option for the component is to change its scale, in which case
+ *  the children don't need to change at all. This is supported by Group.

  */
 public final class ResizeMode
 {
     /**
-     *  Resize by changing width and height.
-     *
-     *  Component always sizes itself and lays out its children at the actual
-     *  size specified by the layout or the user.
+     *  @private
      */
     public static const _NORMAL_UINT:uint = 0;
+    /**
+     *  Resize by changing width and height.
+     *
+     *
The component always sizes itself, and then lays out
+     *  its children at the actual size specified by the layout or the user.

+     */
     public static const NORMAL:String = "Normal";

     /**
-     *  Resize by setting scaleX and scaleY.
-     *
-     *  Component always sizes itself and lays out children at at its measured
-     *  size. Scale is adjusted to match the specified size by the layout or
-     *  the user.
+     *  @private
      */
     public static const _SCALE_UINT:uint = 1;
+    /**
+     *  Resize by setting the scaleX
+     *  and scaleY properties.
+     *
+     *
The component always sizes itself, and then lays out
+     *  Its children at its measured size.
+     *  The scale is adjusted to match the specified size by the layout or the user.

+     */
     public static const SCALE:String = "Scale";

     /**
      *  Converts from the String to the uint
-     *  representation of the enum values.
+     *  representation of the enumeration value.
+     *
+     *  @param value The String representation of the enumeration.
+     *
+     *  @return The uint value corresponding to the String.
      */
     public static function toUINT(value:String):uint
     {
@@ -56,7 +68,11 @@

     /**
      *  Converts from the uint to the String
-     *  representation of the enum values.
+     *  representation of the enumeration values.
+     *
+     *  @param value The uint value of the enumeration.
+     *
+     *  @return The String corresponding to the uint value.
      */
     public static function toString(value:uint):String
     {


handle having dp set after selectedIndex

--- frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/models/ArraySelectionModel.as
+++ frameworks/as/projects/FlexJSUI/src/org/apache/flex/html/beads/models/ArraySelectionModel.as
@@ -86,6 +86,9 @@
 		public function set dataProvider(value:Object):void
 		{
             _dataProvider = value;
+            if (_selectedIndex != -1)
+                _selectedItem = (_dataProvider == null || _selectedIndex >= _dataProvider.length) ? null :
+                    _dataProvider[value];
 			dispatchEvent(new Event("dataProviderChanged"));
 		}

@@ -136,7 +139,7 @@
 		public function set selectedIndex(value:int):void
 		{
 			_selectedIndex = value;
-			_selectedItem = (value == -1) ? null : (value < _dataProvider.length) ? _dataProvider[value] : null;
+			_selectedItem = (value == -1 || _dataProvider == null) ? null : (value < _dataProvider.length) ? _dataProvider[value] : null;
 			dispatchEvent(new Event("selectedIndexChanged"));
 		}


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

--- frameworks/projects/mx/src/mx/skins/halo/ProgressBarSkin.as
+++ frameworks/projects/mx/src/mx/skins/halo/ProgressBarSkin.as
@@ -18,6 +18,11 @@

 /**
  *  The skin for a ProgressBar.
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 public class ProgressBarSkin extends Border
 {
@@ -31,6 +36,11 @@

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


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

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