Added support for single digit dates and months

--- frameworks/projects/framework/src/mx/validators/DateValidator.as
+++ frameworks/projects/framework/src/mx/validators/DateValidator.as
@@ -146,10 +146,16 @@
 		var dateObj:Object = {day:"", month:"", year:""};

 		var dayProp:String = baseField;
+		var monthProp:String = baseField;
 		var yearProp:String = baseField;
-		var monthProp:String = baseField;
-
-		var advanceValueCounter:Boolean = true;
+
+		var dateParts:Array = [];
+		var formatParts:Array = [];
+
+		var dayPart:String = "";
+		var monthPart:String = "";
+		var yearPart:String = "";
+
 		var monthRequired:Boolean = false;
 		var dayRequired:Boolean = false
 		var yearRequired:Boolean = false;
@@ -164,18 +170,48 @@
 		var i:int;
 		var temp:String;

-
-		if (allowedFormatChars != null)
-			n = allowedFormatChars.length;
-
+		var part:int = -1;
+		var lastFormatChar:String = "";
+
+		n = inputFormat.length;
 		for (i = 0; i < n; i++)
 		{
-			if (DECIMAL_DIGITS.indexOf(allowedFormatChars.charAt(i)) != -1)
+			var formatChar:String = inputFormat.charAt(i);
+
+			if (lastFormatChar != formatChar)
 			{
-				var message:String = resourceManager.getString(
-					"validators", "invalidFormatChars");
-				throw new Error(message);
+				part++;
+				formatParts[part] = "";
 			}
+
+			if (formatChar == "D" || formatChar == "d")
+			{
+				dayRequired = true;
+				formatParts[part] += "D"
+			}
+			else if (formatChar == "M" || formatChar == "m")
+			{
+				monthRequired = true;
+				formatParts[part] += "M"
+			}
+			else if (formatChar == "Y" || formatChar == "y")
+			{
+				yearRequired = true;
+				formatParts[part] += "Y"
+			}
+			else if (allowedFormatChars.indexOf(formatChar) == -1)
+			{
+				results.push(new ValidationResult(
+					true, baseField, "invalidChar",
+					validator.invalidCharError));
+				return results;
+			}
+			else
+			{
+				formatParts[part] = formatChar;
+			}
+
+			lastFormatChar = formatChar;
 		}

 		if (value is String)
@@ -280,79 +316,95 @@
 			}
 			else
 			{
-				var len:Number = stringValue.length;
-				if (len < inputFormat.length - 2 || len > inputFormat.length + 2)
-				{
-					results.push(new ValidationResult(
-						true, baseField, "wrongLength",
-						validator.wrongLengthError + " " + inputFormat));
-					return results;
-				}
-
- 				var j:int = 0;
-				n = inputFormat.length;
+				var lastStringChar:String = "";
+				n = stringValue.length;
+				part = -1;
 				for (i = 0; i < n; i++)
 				{
-					temp = "" + stringValue.substring(j, j + 1);
-					var mask:String = "" + inputFormat.substring(i, i + 1);
+					var stringChar:String = stringValue.charAt(i);
+					var lastIsDigit:Boolean = (DECIMAL_DIGITS.indexOf(lastStringChar) >= 0)
+						&& (lastStringChar != "");
+					var curentIsDigit:Boolean = (DECIMAL_DIGITS.indexOf(stringChar) >= 0);

-					// Check each character to see if it is allowed.
-					if (validInput.indexOf(temp) == -1)
+					if (lastIsDigit != curentIsDigit)
 					{
-						results.push(new ValidationResult(
-							true, baseField, "invalidChar",
-							validator.invalidCharError));
-						return results;
+						part++;
+						dateParts[part] = stringChar;
 					}
-					if (mask == "m" || mask == "M")
-					{
-						monthRequired = true;
-						if (isNaN(Number(temp)))
-							advanceValueCounter = false;
-						else
-							dateObj.month += temp;
-					}
-					else if (mask == "d" || mask == "D")
-					{
-						dayRequired = true;
-						if (isNaN(Number(temp)))
-							advanceValueCounter = false;
-						else
-							dateObj.day += temp;
-					}
-					else if (mask == "y" || mask == "Y")
-					{
-						yearRequired = true;
-						if (isNaN(Number(temp)))
-						{
-							results.push(new ValidationResult(
-								true, baseField, "wrongLength",
-								validator.wrongLengthError + " " +
-								inputFormat));
-							return results;
-						}
-						else
-						{
-							dateObj.year += temp;
-						}
-					}
-					else if (allowedFormatChars.indexOf(temp) == -1)
+					else if (validInput.indexOf(stringChar) == -1)
 					{
 						results.push(new ValidationResult(
 							true, baseField, "invalidChar",
 							validator.invalidCharError));
 						return results;
 					}
-
-					if (advanceValueCounter)
-						j++;
-					advanceValueCounter = true;
+					else
+					{
+						dateParts[part] += stringChar;
+					}
+
+					lastStringChar = stringChar;
 				}

+				if (formatParts.length != dateParts.length)
+				{
+					results.push(new ValidationResult(
+						true, baseField, "wrongLength",
+						validator.wrongLengthError + " " + inputFormat));
+					return results;
+				}
+
+				var j:int = 0;
+				n = formatParts.length;
+				for (part = 0; part < n; part++)
+				{
+					var mask:String = formatParts[part].charAt(0);
+
+					if ( mask == "D")
+					{
+						dateObj.day = dateParts[part];
+						dayPart = formatParts[part];
+					}
+					else if (mask == "M")
+					{
+						dateObj.month = dateParts[part];
+						monthPart = formatParts[part];
+					}
+					else if (mask == "Y")
+					{
+						dateObj.year = dateParts[part];
+						yearPart = formatParts[part];
+					}
+				}
+
+				// DD or D format
+				if ((dayRequired && dayPart.length == 2 && dateObj.day.length != 2)
+					|| (dayRequired && dayPart.length == 1 && dateObj.day.length > 2))
+				{
+					results.push(new ValidationResult(
+						true, baseField, "wrongLength",
+						validator.wrongLengthError + " " + inputFormat));
+				}
+				// MM or M format
+				if ((monthRequired && monthPart.length == 2 && dateObj.month.length != 2)
+					|| (monthRequired && monthPart.length == 1 && dateObj.month.length > 2))
+				{
+					results.push(new ValidationResult(
+						true, baseField, "wrongLength",
+						validator.wrongLengthError + " " + inputFormat));
+				}
+				// YY or YYYY format
+				if ((yearRequired && yearPart.length == 2 && dateObj.year.length != 2)
+					|| (yearRequired && yearPart.length == 4 && dateObj.year.length != 4))
+				{
+					results.push(new ValidationResult(
+						true, baseField, "wrongLength",
+						validator.wrongLengthError + " " + inputFormat));
+				}
+
 				if ((monthRequired && dateObj.month == "") ||
 					(dayRequired && dateObj.day == "") ||
-					(yearRequired && dateObj.year == "") ||
-					(j != len))
+					(yearRequired && dateObj.year == ""))
 				 {
 				 	results.push(new ValidationResult(
 						true, baseField, "wrongLength",
@@ -363,47 +415,12 @@
 			}
 		}

-		// Now, validate the sub-elements, which may have been set directly.
-		n = dateObj.month.length;
-		for (i = 0; i < n; i++)
-		{
-			temp = "" + dateObj.month.substring(i, i + 1);
-			if (DECIMAL_DIGITS.indexOf(temp) == -1)
-			{
-				results.push(new ValidationResult(
-					true, monthProp, "invalidChar",
-					validator.invalidCharError));
-			}
-		}
-		n = dateObj.day.length;
-		for (i = 0; i < n; i++)
-		{
-			temp = "" + dateObj.day.substring(i, i + 1);
-			if (DECIMAL_DIGITS.indexOf(temp) == -1)
-			{
-				results.push(new ValidationResult(
-					true, dayProp, "invalidChar",
-					validator.invalidCharError));
-			}
-		}
-		n = dateObj.year.length;
-		for (i = 0; i < n; i++)
-		{
-			temp = "" + dateObj.year.substring(i, i + 1);
-			if (DECIMAL_DIGITS.indexOf(temp) == -1)
-			{
-				results.push(new ValidationResult(
-					true, yearProp, "invalidChar",
-					validator.invalidCharError));
-			}
-		}
-
 		if (results.length > 0)
 			return results;

 		var monthNum:Number = Number(dateObj.month);
 		var dayNum:Number = Number(dateObj.day);
-		var yearNum:Number = Number(dateObj.year).valueOf();
+		var yearNum:Number = Number(dateObj.year);

 		if (monthNum > 12 || monthNum < 1)
 		{


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

--- frameworks/projects/mx/src/mx/controls/alertClasses/AlertForm.as
+++ frameworks/projects/mx/src/mx/controls/alertClasses/AlertForm.as
@@ -0,0 +1,545 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  ADOBE SYSTEMS INCORPORATED
+//  Copyright 2003-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.controls.alertClasses
+{
+
+import flash.display.DisplayObject;
+import flash.events.KeyboardEvent;
+import flash.events.MouseEvent;
+import flash.text.TextLineMetrics;
+import flash.ui.Keyboard;
+import mx.controls.Alert;
+import mx.controls.Button;
+import mx.core.IFlexModuleFactory;
+import mx.core.IFontContextComponent;
+import mx.core.mx_internal;
+import mx.core.IUITextField;
+import mx.core.UIComponent;
+import mx.core.UITextField;
+import mx.events.CloseEvent;
+import mx.managers.IFocusManagerContainer;
+import mx.managers.ISystemManager;
+import mx.managers.PopUpManager;
+
+use namespace mx_internal;
+
+include "../../styles/metadata/LeadingStyle.as"
+include "../../styles/metadata/TextStyles.as"
+
+[ExcludeClass]
+
+/**
+ *  @private
+ *  The AlertForm control exists within the Alert control, and contains
+ *  messages, buttons, and, optionally, an icon. It is not intended for
+ *  direct use by application developers.
+ *
+ *  @see mx.controls.TextArea
+ *  @see mx.controls.Alert
+ *  @see mx.controls.Button
+ */
+public class AlertForm extends UIComponent implements IFontContextComponent
+{
+    include "../../core/Version.as";
+
+	//--------------------------------------------------------------------------
+	//
+	//  Constructor
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  Constructor.
+	 */
+	public function AlertForm()
+	{
+		super();
+
+		tabChildren = true;
+	}
+
+	//--------------------------------------------------------------------------
+	//
+	//  Variables
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  The UITextField that displays the text of the Alert control.
+	 */
+	mx_internal var textField:IUITextField;
+
+	/**
+	 *  @private
+	 *  Width of the text object.
+	 */
+	private var textWidth:Number;
+
+	/**
+	 *  @private
+	 *  Height of the text object.
+	 */
+	private var textHeight:Number;
+
+	/**
+	 *  The DisplayObject that displays the icon.
+	 */
+	private var icon:DisplayObject;
+
+    /**
+     *  An Array that contains any Buttons appearing in the Alert control.
+     */
+	mx_internal var buttons:Array = [];
+
+	/**
+	 *  @private
+	 */
+	mx_internal var defaultButton:Button;
+
+	/**
+	 *  @private
+	 */
+	private var defaultButtonChanged:Boolean = false;
+
+    //--------------------------------------------------------------------------
+    //
+    //  Properties
+    //
+    //--------------------------------------------------------------------------
+
+    //----------------------------------
+    //  fontContext
+    //----------------------------------
+
+    /**
+     *  @private
+     */
+    public function get fontContext():IFlexModuleFactory
+    {
+        return moduleFactory;
+    }
+
+    /**
+     *  @private
+     */
+    public function set fontContext(moduleFactory:IFlexModuleFactory):void
+    {
+        this.moduleFactory = moduleFactory;
+    }
+
+	//--------------------------------------------------------------------------
+	//
+	//  Overridden methods
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+ 	 *  @private
+	 */
+	override protected function createChildren():void
+	{
+		super.createChildren();
+
+		// Create the UITextField to display the message.
+		createTextField(-1);
+
+		// Create the icon object, if any.
+		var iconClass:Class = Alert(parent).iconClass;
+		if (iconClass && !icon)
+		{
+			icon = new iconClass();
+			addChild(icon);
+		}
+
+		// Create the button objects
+
+		var alert:Alert = Alert(parent);
+
+		var buttonFlags:uint = alert.buttonFlags;
+		var defaultButtonFlag:uint = alert.defaultButtonFlag;
+
+		var label:String;
+		var button:Button;
+
+		if (buttonFlags & Alert.OK)
+		{
+			label = String(Alert.okLabel);
+			button = createButton(label, "OK");
+			if (defaultButtonFlag == Alert.OK)
+				defaultButton = button;
+		}
+
+		if (buttonFlags & Alert.YES)
+		{
+			label = String(Alert.yesLabel);
+			button = createButton(label, "YES");
+			if (defaultButtonFlag == Alert.YES)
+				defaultButton = button;
+		}
+
+		if (buttonFlags & Alert.NO)
+		{
+			label = String(Alert.noLabel);
+			button = createButton(label, "NO");
+			if (defaultButtonFlag == Alert.NO)
+				defaultButton = button;
+		}
+
+		if (buttonFlags & Alert.CANCEL)
+		{
+			label = String(Alert.cancelLabel);
+			button = createButton(label, "CANCEL");
+			if (defaultButtonFlag == Alert.CANCEL)
+				defaultButton = button;
+		}
+
+		if (!defaultButton && buttons.length)
+			defaultButton = buttons[0];
+
+		// Set the default button to have focus.
+		if (defaultButton)
+		{
+			defaultButtonChanged = true;
+			invalidateProperties();
+		}
+	}
+
+	/**
+	 *  @private
+	 */
+	override protected function commitProperties():void
+	{
+		super.commitProperties();
+
+        // if the font changed and we already created the label, we will need to
+        // destory it so it can be re-created, possibly in a different swf context.
+        if (hasFontContextChanged() && textField != null)
+        {
+        	var index:int = getChildIndex(DisplayObject(textField));
+			removeTextField();
+			createTextField(index);
+        }
+
+		if (defaultButtonChanged && defaultButton)
+		{
+			defaultButtonChanged = false;
+
+			Alert(parent).defaultButton = defaultButton;
+
+			if (parent is IFocusManagerContainer)
+			{
+				var sm:ISystemManager = Alert(parent).systemManager;
+				sm.activate(IFocusManagerContainer(parent));
+			}
+			defaultButton.setFocus();
+		}
+	}
+
+	/**
+	 *  @private
+	 */
+	override protected function measure():void
+	{
+		super.measure();
+
+		// Get the width of the title text
+		var title:String = Alert(parent).title;
+		var lineMetrics:TextLineMetrics =
+			Alert(parent).getTitleTextField().
+			getUITextFormat().measureText(title);
+
+		// Calculate the width based solely on the title and the buttons
+		var numButtons:int = Math.max(buttons.length, 2);
+		var buttonWidth:Number = numButtons * buttons[0].width +
+								 (numButtons - 1) * 8;
+		var buttonAndTitleWidth:Number = Math.max(buttonWidth,
+												  lineMetrics.width);
+		// Set the textField to word-wrap if the text is more
+		// than twice as wide as the buttons and title
+		textField.width = 2 * buttonAndTitleWidth;
+		textWidth = textField.textWidth + UITextField.TEXT_WIDTH_PADDING;
+
+		// Window is wider of buttons or text, but not more than twice as
+		// wide as buttons.
+		var prefWidth:Number = Math.max(buttonAndTitleWidth, textWidth);
+		prefWidth = Math.min(prefWidth, 2 * buttonAndTitleWidth);
+
+		// Need this because TextField likes to use multiple lines
+		// even for single words.
+		if (textWidth < prefWidth && textField.multiline == true)
+		{
+			textField.multiline = false;
+			textField.wordWrap = false;
+		}
+		else if (textField.multiline == false)
+		{
+			textField.wordWrap = true;
+			textField.multiline = true;
+		}
+
+		// Add space for 8-pixel padding along the left/right.
+		prefWidth += 16;
+		// Add space for icon, if any.
+		if (icon)
+			prefWidth += icon.width + 8;
+
+		// Make height tall enough for text and icon.
+		textHeight = textField.textHeight + UITextField.TEXT_HEIGHT_PADDING;
+		var prefHeight:Number = textHeight;
+
+		if (icon)
+			prefHeight = Math.max(prefHeight, icon.height);
+
+		// Limit the height if it exceeds the height of the Stage.
+		prefHeight = Math.min(prefHeight, screen.height * 0.75);
+		// Add space for buttons, spacing between buttons and text,
+		// and top/bottom margins
+		prefHeight += buttons[0].height + (3 * 8);
+
+		measuredWidth = prefWidth;
+		measuredHeight = prefHeight;
+	}
+
+	/**
+	 *  @private
+	 */
+	override protected function updateDisplayList(unscaledWidth:Number,
+												  unscaledHeight:Number):void
+	{
+		super.updateDisplayList(unscaledWidth, unscaledHeight);
+
+		var newX:Number;
+		var newY:Number;
+		var newWidth:Number;
+
+		// Layout buttons first.
+		newY = unscaledHeight - buttons[0].height;
+		newWidth = buttons.length * (buttons[0].width + 8) - 8;
+
+		// Center the buttons.
+		newX = (unscaledWidth - newWidth) / 2;
+		for (var i:int = 0; i < buttons.length; i++)
+		{
+			buttons[i].move(newX, newY);
+			buttons[i].tabIndex = i + 1;
+			newX += buttons[i].width + 8;
+		}
+
+		// Get the width of the text and icon together.
+		newWidth = textWidth;
+		if (icon)
+			newWidth += icon.width + 8;
+
+		// Center the text and icon horizontally and vertically.
+		newX = (unscaledWidth - newWidth) / 2;
+		if (icon)
+		{
+			icon.x = newX;
+			icon.y = (newY - icon.height) / 2;
+			newX += icon.width + 8;
+		}
+
+		var newHeight:Number = textField.getExplicitOrMeasuredHeight();
+		textField.move(newX, (newY - newHeight) / 2);
+		textField.setActualSize(textWidth+5, newHeight);
+	}
+
+    /**
+     *  @private
+     */
+	override public function styleChanged(styleProp:String):void
+	{
+		super.styleChanged(styleProp);
+
+		if (!styleProp ||
+			styleProp == "styleName" ||
+			styleProp == "buttonStyleName")
+		{
+			if (buttons)
+			{
+				var buttonStyleName:String = getStyle("buttonStyleName");
+
+				var n:int = buttons.length;
+				for (var i:int = 0; i < n; i++)
+				{
+					buttons[i].styleName = buttonStyleName;
+				}
+			}
+		}
+	}
+
+	/**
+	 *  @private
+	 *  Updates the button labels.
+	 */
+	override protected function resourcesChanged():void
+	{
+		super.resourcesChanged();
+
+		var b:Button;
+
+		b = Button(getChildByName("OK"));
+		if (b)
+			b.label = String(Alert.okLabel);
+
+		b = Button(getChildByName("CANCEL"));
+		if (b)
+			b.label = String(Alert.cancelLabel);
+
+		b = Button(getChildByName("YES"));
+		if (b)
+			b.label = String(Alert.yesLabel);
+
+		b = Button(getChildByName("NO"));
+		if (b)
+			b.label = String(Alert.noLabel);
+	}
+
+	//--------------------------------------------------------------------------
+	//
+	//  Methods
+	//
+	//--------------------------------------------------------------------------
+
+    /**
+     *  @private
+     *  Creates the title text field child
+	 *  and adds it as a child of this component.
+     *
+     *  @param childIndex The index of where to add the child.
+	 *  If -1, the text field isappended to the end of the list.
+     */
+    mx_internal function createTextField(childIndex:int):void
+    {
+        if (!textField)
+        {
+			textField = IUITextField(createInFontContext(UITextField));
+
+			textField.styleName = this;
+			textField.text = Alert(parent).text;
+			textField.multiline = true;
+			textField.wordWrap = true;
+			textField.selectable = true;
+
+            if (childIndex == -1)
+                addChild(DisplayObject(textField));
+            else
+                addChildAt(DisplayObject(textField), childIndex);
+        }
+    }
+
+    /**
+     *  @private
+     *  Removes the title text field from this component.
+     */
+    mx_internal function removeTextField():void
+    {
+        if (textField)
+        {
+            removeChild(DisplayObject(textField));
+            textField = null;
+        }
+    }
+
+    /**
+     *  @private
+     */
+	private function createButton(label:String, name:String):Button
+	{
+		var button:Button = new Button();
+
+		button.label = label;
+
+		// The name is "YES", "NO", "OK", or "CANCEL".
+		button.name = name;
+
+		var buttonStyleName:String = getStyle("buttonStyleName");
+		if (buttonStyleName)
+			button.styleName = buttonStyleName;
+
+		button.addEventListener(MouseEvent.CLICK, clickHandler);
+		button.addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler);
+        button.owner = parent;
+		addChild(button);
+
+		button.setActualSize(Alert.buttonWidth, Alert.buttonHeight);
+
+		buttons.push(button);
+
+		return button;
+	}
+
+    /**
+     *  @private
+     *  Remove the popup and dispatch Click event corresponding to the Button Pressed.
+     */
+	private function removeAlert(buttonPressed:String):void
+	{
+		var alert:Alert = Alert(parent);
+
+		alert.visible = false;
+
+		var closeEvent:CloseEvent = new CloseEvent(CloseEvent.CLOSE);
+		if (buttonPressed == "YES")
+			closeEvent.detail = Alert.YES;
+		else if (buttonPressed == "NO")
+			closeEvent.detail = Alert.NO;
+		else if (buttonPressed == "OK")
+			closeEvent.detail = Alert.OK;
+		else if (buttonPressed == "CANCEL")
+			closeEvent.detail = Alert.CANCEL;
+		alert.dispatchEvent(closeEvent);
+
+		mx.managers.PopUpManager.removePopUp(alert);
+
+	}
+
+	//--------------------------------------------------------------------------
+	//
+	//  Overridden event handlers: UIComponent
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  @private
+	 */
+	override protected function keyDownHandler(event:KeyboardEvent):void
+	{
+		var buttonFlags:uint = Alert(parent).buttonFlags;
+
+		if (event.keyCode == Keyboard.ESCAPE)
+		{
+			if ((buttonFlags & Alert.CANCEL) || !(buttonFlags & Alert.NO))
+				removeAlert("CANCEL");
+			else if (buttonFlags & Alert.NO)
+				removeAlert("NO");
+		}
+	}
+
+	//--------------------------------------------------------------------------
+	//
+	//  Event handlers
+	//
+	//--------------------------------------------------------------------------
+
+    /**
+     *  @private
+     *  On a button click, dismiss the popup and send notification.
+     */
+	private function clickHandler(event:MouseEvent):void
+	{
+		var name:String = Button(event.currentTarget).name;
+		removeAlert(name);
+	}
+}
+
+}


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

--- frameworks/projects/spark/src/spark/effects/SharedObjectDepot.as
+++ frameworks/projects/spark/src/spark/effects/SharedObjectDepot.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 spark.effects
 {


Transferred from the Adobe Open Source Subversion Repository

Revision: 12850
Author:   jimurphy@adobe.com
Date:     2009-12-11T14:57:14.623098Z

Log Message:
-----------
add 6 new DMV projects to the SDK:
automation
automation_air
automation_dmv
automation_flashflexkit
automation_spark
datavisualization

These projects are setup to build in an ant main call.  There are currently several warnings in the datavisualization project that will be cleaned up.  No checkintests exist for these projects as of yet.

I also modified the exisitng projects build files for easier management of the localization targets, bundle and fat-swc. If the projects that I updated:airframework,airspark,framework,playerglobal,rpc,and spark.  All the new projects have been implemented this same way.

QE notes: DMV folks should run through their tests
Doc notes: probably
Bugs: nope
Reviewer:
Tests run: ran the following targets: compile,checkintests,other.locales and doc
Is noteworthy for integration: no

Modified Paths:
--------------
1404 paths were modified

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

--- frameworks/projects/advancedgrids/src/mx/controls/advancedDataGridClasses/AdvancedDataGridBaseSelectionPending.as
+++ frameworks/projects/advancedgrids/src/mx/controls/advancedDataGridClasses/AdvancedDataGridBaseSelectionPending.as
@@ -0,0 +1,198 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  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.controls.advancedDataGridClasses
+{
+
+import mx.collections.CursorBookmark;
+
+[ExcludeClass]
+
+/**
+ *  @private
+ *  The object that we use to store seek data
+ *  that was interrupted by an ItemPendingError.
+ *  Used when trying to match a selectedIndex to a selectedItem
+ */
+public class AdvancedDataGridBaseSelectionPending
+{
+	include "../../core/Version.as";
+
+	//--------------------------------------------------------------------------
+	//
+	//  Constructor
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  Constructor.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
+	 */
+	public function AdvancedDataGridBaseSelectionPending(index:int,
+                                            anchorIndex:int,
+                                            columnIndex:int,
+                                            anchorColumnIndex:int,
+											stopData:Object,
+											transition:Boolean,
+											placeHolder:CursorBookmark,
+											bookmark:CursorBookmark,
+											offset:int)
+	{
+		super();
+
+		this.index       = index;
+		this.anchorIndex = anchorIndex;
+		this.columnIndex = columnIndex;
+		this.stopData    = stopData;
+		this.transition  = transition;
+		this.placeHolder = placeHolder;
+		this.bookmark    = bookmark;
+		this.offset      = offset;
+	}
+
+	//--------------------------------------------------------------------------
+	//
+	//  Properties
+	//
+	//--------------------------------------------------------------------------
+
+	//----------------------------------
+	//  bookmark
+	//----------------------------------
+
+	/**
+	 *  The bookmark we have to seek to
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
+	 */
+	public var bookmark:CursorBookmark;
+
+	//----------------------------------
+	//  index
+	//----------------------------------
+
+	/**
+	 *  The index into the iterator when we hit the page fault
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
+	 */
+	public var index:int;
+
+	//----------------------------------
+	//  anchorIndex
+	//----------------------------------
+
+	/**
+	 *  The row position of the anchor
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
+	 */
+	public var anchorIndex:int;
+
+	//----------------------------------
+	//  columnIndex
+	//----------------------------------
+
+	/**
+	 *  The current column
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
+	 */
+	public var columnIndex:int;
+
+	//----------------------------------
+	//  anchorColumnIndex
+	//----------------------------------
+
+	/**
+	 *  The column position of the anchor
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
+	 */
+	public var anchorColumnIndex:int;
+
+	//----------------------------------
+	//  offset
+	//----------------------------------
+
+	/**
+	 *  The offset from the bookmark we have to seek to
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
+	 */
+	public var offset:int;
+
+	//----------------------------------
+	//  placeHolder
+	//----------------------------------
+
+	/**
+	 *  The bookmark we have to restore after we're done
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
+	 */
+	public var placeHolder:CursorBookmark;
+
+	//----------------------------------
+	//  stopData
+	//----------------------------------
+
+	/**
+	 *  The data of the current item, which is the thing we are looking for.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
+	 */
+	public var stopData:Object;
+
+	//----------------------------------
+	//  transition
+	//----------------------------------
+
+	/**
+	 *  Whether to tween in the visuals
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
+	 */
+	public var transition:Boolean;
+}
+
+}


fix compile error for missing import

fix compile error for missing import

--- doc/tutorials/examples/actionscript/guestbook/flex/src/org/pyamf/examples/guestbook/GuestbookExample.as
+++ doc/tutorials/examples/actionscript/guestbook/flex/src/org/pyamf/examples/guestbook/GuestbookExample.as
@@ -13,6 +13,7 @@
 	import mx.collections.ArrayCollection;
 	import mx.core.Application;
 	import mx.events.FlexEvent;
+	import mx.utils.ObjectProxy;

 	import org.pyamf.examples.guestbook.components.SubmitBox;
 	import org.pyamf.examples.guestbook.events.SubmitEvent;


Made equals() compare arrays by value.

Made equals() compare arrays by value.

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

--- src/as/com/threerings/util/Util.as
+++ src/as/com/threerings/util/Util.as
@@ -7,14 +7,49 @@
 public class Util
 {
     /**
-     * A nicer test for equals that works if the objects implement Equalable
+     * 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
+     * elements that are equals (deeply).
      */
     public static function equals (obj1 :Object, obj2 :Object) :Boolean
     {
         // catch various common cases (both primitive or null)
-        return (obj1 === obj2) ||
-            // otherwise, they're only possibly still equal if Equalable
-            ((obj1 is Equalable) && (obj1 as Equalable).equals(obj2));
+        if (obj1 === obj2) {
+            return true;
+
+        } else if (obj1 is Equalable) {
+            // if obj1 is Equalable, then that decides it
+            return (obj1 as Equalable).equals(obj2);
+
+        } else if ((obj1 is Array) && (obj2 is Array)) {
+            var ar1 :Array = (obj1 as Array);
+            var ar2 :Array = (obj2 as Array);
+            if (ar1.length != ar2.length) {
+                return false;
+            }
+            for (var jj :int = 0; jj < ar1.length; jj++) {
+                if (!equals(ar1[jj], ar2[jj])) {
+                    return false;
+                }
+            }
+            return true;
+
+        } else if ((obj1 is ByteArray) && (obj2 is ByteArray)) {
+            var ba1 :ByteArray = (obj1 as ByteArray);
+            var ba2 :ByteArray = (obj2 as ByteArray);
+            if (ba1.length != ba2.length) {
+                return false;
+            }
+            for (var ii :int = 0; ii < ba1.length; ii++) {
+                if (ba1[ii] != ba2[ii]) {
+                    return false;
+                }
+            }
+            return true;
+        }
+
+        return false;
     }

     public static function cast (obj :Object, clazz :Class) :Object


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

--- frameworks/projects/mobilecomponents/src/spark/events/ViewNavigatorEvent.as
+++ frameworks/projects/mobilecomponents/src/spark/events/ViewNavigatorEvent.as
@@ -1,11 +1,19 @@
 ////////////////////////////////////////////////////////////////////////////////
 //
-//  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.
+//  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
+//
+//      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: 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@1290339 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/advancedgrids/src/mx/controls/AdvancedDataGridBaseEx.as
+++ frameworks/projects/advancedgrids/src/mx/controls/AdvancedDataGridBaseEx.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 mx.controls
 {
@@ -8231,4 +8241,4 @@
     }
 }

-}
+}


Transferred from the Adobe Open Source Subversion Repository

Revision: 14881
Author:   dloverin@adobe.com
Date:     2010-03-19T17:25:21.009262Z

Log Message:
-----------
Merge revision 14827 from 4.x to the trunk.

QE notes: None.
Doc notes: None.
Bugs: SDK-25875
Reviewer:
Tests run: checkintests
Is noteworthy for integration: No.

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

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

--- frameworks/projects/airspark/src/spark/components/windowClasses/TitleBar.as
+++ frameworks/projects/airspark/src/spark/components/windowClasses/TitleBar.as
@@ -25,6 +25,7 @@
 import spark.components.Button;
 import spark.components.supportClasses.SkinnableComponent;
 import spark.components.supportClasses.TextBase;
+import spark.events.SkinPartEvent;
 import spark.primitives.BitmapImage;
 import spark.skins.*;
 import spark.skins.spark.windowChrome.MacTitleBarSkin;
@@ -127,7 +128,7 @@
      *  This is the actual object created from the _titleIcon class
      */
     mx_internal var titleIconObject:Object;
-
+
     //--------------------------------------------------------------------------
     //
     //  Skin Parts
@@ -382,9 +383,17 @@
                                             button_mouseDownHandler);
             maximizeButton.addEventListener(MouseEvent.CLICK,
                                             maximizeButton_clickHandler);
-            DisplayObject(window).addEventListener(
+
+            var targetWindow:DisplayObject = DisplayObject(window);
+            targetWindow.addEventListener(
                 NativeWindowDisplayStateEvent.DISPLAY_STATE_CHANGE,
                 window_displayStateChangeHandler, false, 0, true);
+
+            // Add this listener so we can remove the display state change handler
+            // if our window is reskinned. This fixes an RTE when the titleBar
+            // display state handler ran without a window after being reskinned.
+            targetWindow.addEventListener(SkinPartEvent.PART_REMOVED, partRemovedHandler,
+                false, 0, true);
         }
     }

@@ -412,9 +421,12 @@
                                             button_mouseDownHandler);
             maximizeButton.removeEventListener(MouseEvent.CLICK,
                                             maximizeButton_clickHandler);
-            DisplayObject(window).removeEventListener(
+
+            var targetWindow:DisplayObject = DisplayObject(window);
+            targetWindow.removeEventListener(
                 NativeWindowDisplayStateEvent.DISPLAY_STATE_CHANGE,
                 window_displayStateChangeHandler);
+            targetWindow.removeEventListener(SkinPartEvent.PART_REMOVED, partRemovedHandler);
         }

     }
@@ -450,8 +462,6 @@

     }

-
-
     //--------------------------------------------------------------------------
     //
     //  Methods
@@ -590,6 +600,21 @@
         }
     }

+    /**
+     *  @private
+     */
+    private function partRemovedHandler(event:SkinPartEvent):void
+    {
+        if (event.instance == this)
+        {
+            var targetWindow:DisplayObject = DisplayObject(window);
+            targetWindow.removeEventListener(
+                NativeWindowDisplayStateEvent.DISPLAY_STATE_CHANGE,
+                window_displayStateChangeHandler);
+            targetWindow.removeEventListener(SkinPartEvent.PART_REMOVED, partRemovedHandler);
+        }
+    }
+
 }

 }


Transferred from the Adobe Open Source Subversion Repository

Revision: 16785
Author:   cframpto@adobe.com
Date:     2010-07-02T00:56:55.730045Z

Log Message:
-----------
The following changes apply to Spark DataGrid only.   Code reviews have been deferred until the implementation is closer to completion.

If the selectionMode is set in the mxml for the DG component, the gridSelection object is constructed before the grid part is loaded.  The connection between the GridSelection and the Grid can't be done in the GridSelection constructor.

Modified Paths:
--------------
<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/spark/components/GridContainerBase.as</path>

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

--- frameworks/projects/spark/src/spark/components/gridClasses/GridSelection.as
+++ frameworks/projects/spark/src/spark/components/gridClasses/GridSelection.as
@@ -20,6 +20,8 @@
 import mx.events.CollectionEventKind;
 import mx.events.PropertyChangeEvent;

+import spark.components.DataGrid;
+import spark.components.GridContainerBase;
 import spark.components.Grid;

 use namespace mx_internal;
@@ -65,10 +67,12 @@

     /**
      *  @private
-     *  Selected rows.  Vector of rowIndexes that map to the dataProvider items.
-     */
-    private var grid:Grid;
-
+     *  The owner of the grid.  This class might come into being before
+     *  the grid part is loaded.  This is the connection between this class
+     *  and its grid.
+     */
+    private var gridOwner:GridContainerBase;
+
     /**
      *  @private
      *  Vector of rowIndexes that map to the dataProvider items.  If
@@ -123,11 +127,11 @@
     /**
      *  @private
      */
-    public function GridSelection(grid:Grid)
+    public function GridSelection(owner:GridContainerBase)
     {
         super();

-        this.grid = grid;
+        gridOwner = owner;
     }

     //--------------------------------------------------------------------------
@@ -966,6 +970,16 @@

     /**
      *  @private
+     *  To connect the selection with its grid.  Can't be in the constructor
+     *  since the selectionMode might be set before the grid part is added.
+     */
+    private function get grid():Grid
+    {
+        return gridOwner.grid;
+    }
+
+    /**
+     *  @private
      */
     private function isRowSelectionMode():Boolean
     {
@@ -989,6 +1003,9 @@
      */
     private function getGridColumnsLength():uint
     {
+        if (grid == null)
+            return 0;
+
         const columns:IList = grid.columns;
         return (columns) ? columns.length : 0;
     }
@@ -998,6 +1015,9 @@
      */
     private function getGridDataProviderLength():uint
     {
+        if (grid == null)
+            return 0;
+
         const dataProvider:IList = grid.dataProvider;
         return (dataProvider) ? dataProvider.length : 0;
     }


Transferred from the Adobe Open Source Subversion Repository

Revision: 7743
Author:   clucier@adobe.com
Date:     2009-06-11T13:53:10.203664Z

Log Message:
-----------
Moving away from using namespace qualifiers in most cases in the SDK.  We've run into a few cases now where the use of qualifiers in code that is called excessively can slow things down.
Bugs: SDK-21337
Reviewer: Ryan, Paul
QE Notes: None
Tests: Ran several random Mustella test groups, checkintests.

Modified Paths:
--------------
106 paths were modified

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

--- frameworks/projects/spark/src/spark/components/supportClasses/SliderBase.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/SliderBase.as
@@ -34,6 +34,8 @@
 import spark.effects.easing.IEaser;
 import spark.effects.easing.Sine;
 import spark.events.TrackBaseEvent;
+
+use namespace mx_internal;

 include "../../styles/metadata/BasicTextLayoutFormatStyles.as"

@@ -251,7 +253,7 @@
         // otherwise, draw it on the whole component
         if (thumb)
         {
-            thumb.mx_internal::drawFocusAnyway = true;
+            thumb.drawFocusAnyway = true;
             thumb.drawFocus(isFocused);
         }
         else


Implement as3 part of DisplayObject

Implement as3 part of DisplayObject

--- src/flash/display/DisplayObject.as
+++ src/flash/display/DisplayObject.as
@@ -1,85 +1,111 @@
+/*
+ * Copyright 2014 Mozilla Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
 package flash.display {
-  import flash.events.EventDispatcher;
-  import flash.display.IBitmapDrawable;
-  import String;
-  import flash.accessibility.AccessibilityProperties;
-  import flash.geom.Point;
-  import Object;
-  import flash.display.LoaderInfo;
-  import flash.geom.Rectangle;
-  import Array;
-  import flash.display.Shader;
-  import Boolean;
-  import flash.geom.Vector3D;
-  import Number;
-  import flash.display.DisplayObjectContainer;
-  import flash.display.Stage;
-  import flash.geom.Transform;
-  import flash.events.Event;
-  public class DisplayObject extends EventDispatcher implements IBitmapDrawable {
-    public function DisplayObject() {}
-    public native function get root():DisplayObject;
-    public native function get stage():Stage;
-    public native function get name():String;
-    public native function set name(value:String):void;
-    public native function get parent():DisplayObjectContainer;
-    public native function get mask():DisplayObject;
-    public native function set mask(value:DisplayObject):void;
-    public native function get visible():Boolean;
-    public native function set visible(value:Boolean):void;
-    public native function get x():Number;
-    public native function set x(value:Number):void;
-    public native function get y():Number;
-    public native function set y(value:Number):void;
-    public native function get z():Number;
-    public native function set z(value:Number):void;
-    public native function get scaleX():Number;
-    public native function set scaleX(value:Number):void;
-    public native function get scaleY():Number;
-    public native function set scaleY(value:Number):void;
-    public native function get scaleZ():Number;
-    public native function set scaleZ(value:Number):void;
-    public native function get mouseX():Number;
-    public native function get mouseY():Number;
-    public native function get rotation():Number;
-    public native function set rotation(value:Number):void;
-    public native function get rotationX():Number;
-    public native function set rotationX(value:Number):void;
-    public native function get rotationY():Number;
-    public native function set rotationY(value:Number):void;
-    public native function get rotationZ():Number;
-    public native function set rotationZ(value:Number):void;
-    public native function get alpha():Number;
-    public native function set alpha(value:Number):void;
-    public native function get width():Number;
-    public native function set width(value:Number):void;
-    public native function get height():Number;
-    public native function set height(value:Number):void;
-    public native function get cacheAsBitmap():Boolean;
-    public native function set cacheAsBitmap(value:Boolean):void;
-    public native function get opaqueBackground():Object;
-    public native function set opaqueBackground(value:Object):void;
-    public native function get scrollRect():Rectangle;
-    public native function set scrollRect(value:Rectangle):void;
-    public native function get filters():Array;
-    public native function set filters(value:Array):void;
-    public native function get blendMode():String;
-    public native function set blendMode(value:String):void;
-    public native function get transform():Transform;
-    public native function set transform(value:Transform):void;
-    public native function get scale9Grid():Rectangle;
-    public native function set scale9Grid(innerRectangle:Rectangle):void;
-    public native function globalToLocal(point:Point):Point;
-    public native function localToGlobal(point:Point):Point;
-    public native function getBounds(targetCoordinateSpace:DisplayObject):Rectangle;
-    public native function getRect(targetCoordinateSpace:DisplayObject):Rectangle;
-    public native function get loaderInfo():LoaderInfo;
-    public function hitTestObject(obj:DisplayObject):Boolean { notImplemented("hitTestObject"); }
-    public function hitTestPoint(x:Number, y:Number, shapeFlag:Boolean = false):Boolean { notImplemented("hitTestPoint"); }
-    public native function get accessibilityProperties():AccessibilityProperties;
-    public native function set accessibilityProperties(value:AccessibilityProperties):void;
-    public native function globalToLocal3D(point:Point):Vector3D;
-    public native function local3DToGlobal(point3d:Vector3D):Point;
-    public native function set blendShader(value:Shader):void;
+import flash.accessibility.AccessibilityProperties;
+import flash.events.EventDispatcher;
+import flash.geom.Point;
+import flash.geom.Rectangle;
+import flash.geom.Transform;
+import flash.geom.Vector3D;
+
+[native(cls='DisplayObjectClass')]
+public class DisplayObject extends EventDispatcher implements IBitmapDrawable {
+  public function DisplayObject() {}
+  public native function get root():DisplayObject;
+  public native function get stage():Stage;
+  public native function get name():String;
+  public native function set name(value:String):void;
+  public native function get parent():DisplayObjectContainer;
+  public native function get mask():DisplayObject;
+  public native function set mask(value:DisplayObject):void;
+  public native function get visible():Boolean;
+  public native function set visible(value:Boolean):void;
+  public native function get x():Number;
+  public native function set x(value:Number):void;
+  public native function get y():Number;
+  public native function set y(value:Number):void;
+  public native function get z():Number;
+  public native function set z(value:Number):void;
+  public native function get scaleX():Number;
+  public native function set scaleX(value:Number):void;
+  public native function get scaleY():Number;
+  public native function set scaleY(value:Number):void;
+  public native function get scaleZ():Number;
+  public native function set scaleZ(value:Number):void;
+  public native function get mouseX():Number;
+  public native function get mouseY():Number;
+  public native function get rotation():Number;
+  public native function set rotation(value:Number):void;
+  public native function get rotationX():Number;
+  public native function set rotationX(value:Number):void;
+  public native function get rotationY():Number;
+  public native function set rotationY(value:Number):void;
+  public native function get rotationZ():Number;
+  public native function set rotationZ(value:Number):void;
+  public native function get alpha():Number;
+  public native function set alpha(value:Number):void;
+  public native function get width():Number;
+  public native function set width(value:Number):void;
+  public native function get height():Number;
+  public native function set height(value:Number):void;
+  public native function get cacheAsBitmap():Boolean;
+  public native function set cacheAsBitmap(value:Boolean):void;
+  public native function get opaqueBackground():Object;
+  public native function set opaqueBackground(value:Object):void;
+  public native function get scrollRect():Rectangle;
+  public native function set scrollRect(value:Rectangle):void;
+  public native function get filters():Array;
+  public native function set filters(value:Array):void;
+  public native function get blendMode():String;
+  public native function set blendMode(value:String):void;
+  public native function get transform():Transform;
+  public native function set transform(value:Transform):void;
+  public native function get scale9Grid():Rectangle;
+  public native function set scale9Grid(innerRectangle:Rectangle):void;
+
+  public native function get loaderInfo():LoaderInfo;
+
+  public native function get accessibilityProperties():AccessibilityProperties;
+
+  public native function set accessibilityProperties(value:AccessibilityProperties):void;
+
+  public native function set blendShader(value:Shader):void;
+
+  public native function globalToLocal(point:Point):Point;
+
+  public native function localToGlobal(point:Point):Point;
+
+  public native function getBounds(targetCoordinateSpace:DisplayObject):Rectangle;
+
+  public native function getRect(targetCoordinateSpace:DisplayObject):Rectangle;
+
+  public function hitTestObject(obj:DisplayObject):Boolean {
+    return _hitTest(false, 0, 0, false, obj);
   }
+
+  public function hitTestPoint(x:Number, y:Number, shapeFlag:Boolean = false):Boolean {
+    return _hitTest(true, x, y, shapeFlag, null);
+  }
+
+  public native function globalToLocal3D(point:Point):Vector3D;
+
+  public native function local3DToGlobal(point3d:Vector3D):Point;
+
+  private native function _hitTest(use_xy: Boolean, x: Number, y: Number, useShape: Boolean,
+                                   hitTestObject: DisplayObject): Boolean;
 }
+}


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

--- frameworks/projects/mx/src/mx/modules/Module.as
+++ frameworks/projects/mx/src/mx/modules/Module.as
@@ -0,0 +1,68 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  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.modules
+{
+
+import mx.core.LayoutContainer;
+
+[Frame(factoryClass="mx.core.FlexModuleFactory")]
+
+/**
+ *  The base class for MXML-based dynamically-loadable modules. You extend this
+ *  class in MXML by using the <mx:Module> tag in an MXML file, as the
+ *  following example shows:
+ *
+ *

+ *  <?xml version="1.0"?>
+ *  <!-- This module loads an image. -->
+ *  <mx:Module  width="100%" height="100%" xmlns:mx="http://www.adobe.com/2006/mxml">
+ *
+ *    <mx:Image source="trinity.gif"/>
+ *
+ *  </mx:Module>
+ *

+ *
+ *
Extending the Module class in ActionScript is the same as using the <mx:Module> tag
+ *  in an MXML file. You extend this class if your module interacts with the framework.
+ *  To see an example of an ActionScript class that extends the Module class, create an MXML
+ *  file with the root tag of <mx:Module>. When you compile this file,
+ *  set the value of the keep-generated-actionscript compiler option to true.
+ *  The Flex compiler stores the generated ActionScript class in a directory called generated, which
+ *  you can look at.

+ *
+ *
If your module does not include any framework code, you can create a class that extends
+ *  the ModuleBase class. If you use the ModuleBase class, your module will typically be smaller than
+ *  if you create a module that is based on the Module class because it does not have any framework
+ *  class dependencies.

+ *
+ *  @see mx.modules.ModuleBase
+ */
+public class Module extends LayoutContainer
+{
+    include "../core/Version.as";
+
+    //--------------------------------------------------------------------------
+    //
+    //  Constructor
+    //
+    //--------------------------------------------------------------------------
+
+    /**
+     *  Constructor.
+     */
+    public function Module()
+    {
+        super();
+    }
+}
+
+}


:memo:

:memo:


drag function was missing another "parent". dunno how creeped in

--- Arguments/src/classes/ArgumentPanel.as
+++ Arguments/src/classes/ArgumentPanel.as
@@ -114,7 +114,7 @@
 		{
 			try{
 				var	dinitiator:UIComponent = UIComponent(mouseEvent.currentTarget);
-				var dPInitiator:ArgumentPanel = ArgumentPanel(dinitiator.parent.parent.parent.parent.parent);
+				var dPInitiator:ArgumentPanel = ArgumentPanel(dinitiator.parent.parent.parent.parent.parent.parent);
 				var ds:DragSource = new DragSource();
 				var tmpx:int = int(dPInitiator.mouseX);
 				var tmpy:int = int(dPInitiator.mouseY);


Transferred from the Adobe Open Source Subversion Repository

Revision: 20469
Author:   deeptika@adobe.com
Date:     2011-02-25T08:24:20.831658Z

Log Message:
-----------
Adding delegate for PopUpAnchor component.

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

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/automation_spark/manifest_automation_spark.xml</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/automation_spark/src/AutomationSparkClasses.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/automation_spark/src/spark/automation/delegates/components/SparkPopUpAnchorAutomationImpl.as</path>

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

--- frameworks/projects/automation_spark/src/spark/automation/delegates/components/SparkPopUpAnchorAutomationImpl.as
+++ frameworks/projects/automation_spark/src/spark/automation/delegates/components/SparkPopUpAnchorAutomationImpl.as
@@ -0,0 +1,124 @@
+package spark.automation.delegates.components
+{
+	import flash.display.DisplayObject;
+
+	import mx.automation.Automation;
+	import mx.automation.IAutomationObject;
+	import mx.automation.IAutomationObjectHelper;
+	import mx.automation.delegates.core.UIComponentAutomationImpl;
+	import mx.core.UIComponent;
+	import mx.core.mx_internal;
+
+	import spark.components.PopUpAnchor;
+
+	use namespace mx_internal;
+
+	[Mixin]
+	public class SparkPopUpAnchorAutomationImpl extends UIComponentAutomationImpl
+	{
+
+		include "../../../core/Version.as";
+
+		//--------------------------------------------------------------------------
+		//
+		//  Class methods
+		//
+		//--------------------------------------------------------------------------
+
+		/**
+		 *  Registers the delegate class for a component class with automation manager.
+		 *
+		 *  @param root DisplayObject object representing the application root.
+		 *
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10
+		 *  @playerversion AIR 2.5
+		 *  @productversion Flex 4.5
+		 */
+		public static function init(root:DisplayObject):void
+		{
+			Automation.registerDelegateClass(PopUpAnchor, SparkPopUpAnchorAutomationImpl);
+		}
+
+		//--------------------------------------------------------------------------
+		//
+		//  Constructor
+		//
+		//--------------------------------------------------------------------------
+
+		/**
+		 *  Constructor.
+		 *
+		 *  @param obj PopUpAnchor object to be automated.
+		 *
+		 *  @langversion 3.0
+		 *  @playerversion Flash 10
+		 *  @playerversion AIR 2.5
+		 *  @productversion Flex 4.5
+		 */
+		public function SparkPopUpAnchorAutomationImpl(obj:PopUpAnchor)
+		{
+			super(obj);
+		}
+
+		public function get popUpAnchor():PopUpAnchor
+		{
+			return uiComponent as PopUpAnchor;
+		}
+
+		/**
+		 *  @private
+		 */
+		override public function createAutomationIDPart(child:IAutomationObject):Object
+		{
+			var help:IAutomationObjectHelper = Automation.automationObjectHelper;
+			return help.helpCreateIDPart(popUpAnchor, child);
+		}
+
+		/**
+		 *  @private
+		 */
+		override public function createAutomationIDPartWithRequiredProperties(child:IAutomationObject, properties:Array):Object
+		{
+			var help:IAutomationObjectHelper = Automation.automationObjectHelper;
+			return help.helpCreateIDPartWithRequiredProperties(popUpAnchor, child,properties);
+		}
+
+		/**
+		 *  @private
+		 */
+		override public function resolveAutomationIDPart(criteria:Object):Array
+		{
+			var help:IAutomationObjectHelper = Automation.automationObjectHelper;
+			return help.helpResolveIDPart(popUpAnchor, criteria);
+		}
+
+		/**
+		 *  @private
+		 */
+		override public function getAutomationChildren():Array
+		{
+			var childList:Array = new Array();
+			childList.push(popUpAnchor.popUp as IAutomationObject);
+			return childList;
+		}
+
+		/**
+		 *  @private
+		 */
+		override public function get numAutomationChildren():int
+		{
+			return 1;
+		}
+
+		/**
+		 *  @private
+		 */
+		override public function getAutomationChildAt(index:int):IAutomationObject
+		{
+			if(index == 0)
+				return popUpAnchor.popUp as IAutomationObject;
+			return null;
+		}
+	}
+}


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

--- frameworks/projects/automation/src/mx/automation/codec/ArrayPropertyCodec.as
+++ frameworks/projects/automation/src/mx/automation/codec/ArrayPropertyCodec.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.automation.codec
 {


Transferred from the Adobe Open Source Subversion Repository

Revision: 17183
Author:   smgilson@adobe.com
Date:     2010-08-04T17:23:07.884355Z

Log Message:
-----------
Fix broken <code> tags in ASDoc comment

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

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

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

--- frameworks/projects/mobilecomponents/src/spark/components/View.as
+++ frameworks/projects/mobilecomponents/src/spark/components/View.as
@@ -125,7 +125,7 @@
      *  Flag indicating whether the current screen is active.  The
      *  view's navigator will automatically set this flag to true
      *  or false as its state changes.  This getter will dispatch
-     *  FlexEvent.VIEW_ACTIVATE and FlexEvent.VIEW_DEACTIVATE
+     *  FlexEvent.VIEW_ACTIVATE and FlexEvent.VIEW_DEACTIVATE
      *  as the value changes.
      *
      *  @default false
@@ -253,7 +253,7 @@
      */
     public function set destructionPolicy(value:String):void
     {
-        _destructionPolicy = value;
+        _destructionPolicy = value;
     }

     //----------------------------------
@@ -450,86 +450,86 @@
         _navigationGroupLayout = value;
         dispatchEvent(changeEvent);
     }
-
-	//----------------------------------
-	//  showActionBar
-	//----------------------------------
-	private var _showActionBar:Boolean = true;
-
-	/**
-	 *  Flag indicating whether a view should show the action bar or not.
-	 *  This doesn't necessarily correlate to the visible property of the
-	 *  navigator's ActionBar.  In the end, ViewNavigator and the developer
-	 *  have the last say as to what's visible.
-	 *
-	 *  @default true
-     *
-     *  @langversion 3.0
-     *  @playerversion Flash 10.1
-     *  @playerversion AIR 2.5
-     *  @productversion Flex 4.5
-	 */
-	public function get showActionBar():Boolean
-	{
-		return _showActionBar;
-	}
+
+    //----------------------------------
+    //  showActionBar
+    //----------------------------------
+    private var _showActionBar:Boolean = true;
+
+    /**
+     *  Flag indicating whether a view should show the action bar or not.
+     *  This doesn't necessarily correlate to the visible property of the
+     *  navigator's ActionBar.  In the end, ViewNavigator and the developer
+     *  have the last say as to what's visible.
+     *
+     *  @default true
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10.1
+     *  @playerversion AIR 2.5
+     *  @productversion Flex 4.5
+     */
+    public function get showActionBar():Boolean
+    {
+        return _showActionBar;
+    }

     /**
      *  @private
      */
-	public function set showActionBar(value:Boolean):void
-	{
-		_showActionBar = value;
-
-		// Immediately request actionBar's visibility be toggled
-		if (active && navigator)
-		{
-			if (_showActionBar)
-				navigator.showActionBar();
-			else
-				navigator.hideActionBar();
-		}
-	}
-	//----------------------------------
-	//  showTabBar
-	//----------------------------------
-	private var _showTabBar:Boolean = true;
-
-	/**
-	 *  Flag indicating whether a view should show the action bar or not.
-	 *  This doesn't necessarily correlate to the visible property of the
-	 *  navigator's ActionBar.  In the end, ViewNavigator and the developer
-	 *  have the last say as to what's visible.
-	 *
-	 *  @default true
-     *
-     *  @langversion 3.0
-     *  @playerversion Flash 10.1
-     *  @playerversion AIR 2.5
-     *  @productversion Flex 4.5
-	 */
-	public function get showTabBar():Boolean
-	{
-		return _showTabBar;
-	}
-
-    /**
-     *  @private
-     */
-	public function set showTabBar(value:Boolean):void
-	{
-		_showTabBar = value;
-
-		// Immediately request actionBar's visibility be toggled
-		if (active && navigator)
-		{
-			if (_showTabBar)
-				navigator.showTabBar();
-			else
-				navigator.hideTabBar();
-		}
-	}
-
+    public function set showActionBar(value:Boolean):void
+    {
+        _showActionBar = value;
+
+        // Immediately request actionBar's visibility be toggled
+        if (active && navigator)
+        {
+            if (_showActionBar)
+                navigator.showActionBar();
+            else
+                navigator.hideActionBar();
+        }
+    }
+    //----------------------------------
+    //  showTabBar
+    //----------------------------------
+    private var _showTabBar:Boolean = true;
+
+    /**
+     *  Flag indicating whether a view should show the action bar or not.
+     *  This doesn't necessarily correlate to the visible property of the
+     *  navigator's ActionBar.  In the end, ViewNavigator and the developer
+     *  have the last say as to what's visible.
+     *
+     *  @default true
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10.1
+     *  @playerversion AIR 2.5
+     *  @productversion Flex 4.5
+     */
+    public function get showTabBar():Boolean
+    {
+        return _showTabBar;
+    }
+
+    /**
+     *  @private
+     */
+    public function set showTabBar(value:Boolean):void
+    {
+        _showTabBar = value;
+
+        // Immediately request actionBar's visibility be toggled
+        if (active && navigator)
+        {
+            if (_showTabBar)
+                navigator.showTabBar();
+            else
+                navigator.hideTabBar();
+        }
+    }
+
     //----------------------------------
     //  title
     //----------------------------------


Implemented FLVResource#doCancel

Implemented FLVResource#doCancel

--- src/reprise/external/FLVResource.as
+++ src/reprise/external/FLVResource.as
@@ -60,6 +60,11 @@
 		{
 			m_stream.play(url());
 		}
+
+		override protected function doCancel() : void
+		{
+			m_connection && m_connection.close();
+		}

 		protected override function checkProgress(...rest : Array) : void
 		{


Renamed Parameters as requested by alexander dean

--- snowplow-as3-tracker/src/com/snowplowanalytics/snowplow/tracker/Parameter.as
+++ snowplow-as3-tracker/src/com/snowplowanalytics/snowplow/tracker/Parameter.as
@@ -76,12 +76,12 @@
 		public static const SV_NAME:String = "name";

 		// Flash Context
-		public static const FLASH_PLAYER_TYPE:String = "fl_pt";
-		public static const FLASH_VERSION:String = "fl_v";
-		public static const FLASH_STAGE_SIZE:String = "fl_sz";
-		public static const FLASH_IS_DEBUGGER:String = "fl_dbg";
-		public static const FLASH_HAS_LOCAL_STORAGE:String = "fl_ls";
-		public static const FLASH_HAS_SCRIPT_ACCESS:String = "fl_sa";
+		public static const FLASH_PLAYER_TYPE:String = "playerType";
+		public static const FLASH_VERSION:String = "version";
+		public static const FLASH_STAGE_SIZE:String = "stageSize";
+		public static const FLASH_IS_DEBUGGER:String = "isDebugger";
+		public static const FLASH_HAS_LOCAL_STORAGE:String = "hasLocalStorage";
+		public static const FLASH_HAS_SCRIPT_ACCESS:String = "hasScriptAccess";

 	}
 }


当methodFullName找不到时不抛出异常

当methodFullName找不到时不抛出异常

--- as3/com/netease/protobuf/CustomOption.as
+++ as3/com/netease/protobuf/CustomOption.as
@@ -20,16 +20,21 @@
 			if (m == null) {
 				return null
 			}
-			const serviceClass:Class = Class(getDefinitionByName(m[1]));
-			var optionsBytesByMethodName:Object
+			const serviceClass:Class = Class(getDefinitionByName(m[1]))
+			var optionsBytes:ByteArray
 			try {
-				optionsBytesByMethodName = serviceClass.OPTIONS_BYTES_BY_METHOD_NAME
+				optionsBytes =
+					serviceClass.OPTIONS_BYTES_BY_METHOD_NAME[methodFullName]
 			} catch (e:ReferenceError) {
 				return null
 			}
-			const result:MethodOptions = new MethodOptions
-			result.mergeFrom(optionsBytesByMethodName[methodFullName])
-			return result
+			if (optionsBytes) {
+				const result:MethodOptions = new MethodOptions
+				result.mergeFrom(optionsBytes)
+				return result
+			} else {
+				return null
+			}
 		}

 		public static function getServiceOptions(serviceClass:Class):ServiceOptions {


commit flash

commit flash

--- media/flash/src/grid/square/Square.as
+++ media/flash/src/grid/square/Square.as
@@ -4,6 +4,9 @@

 	public class Square extends Shape
 	{
+		// scale : 26px, 78px, 182px, 416px, 800px (max 1024 Square pour écran 840*840px)
+		// pos : le premier (0, 0)
+
 		public function Square(px:int, py:int, w:int = 800, h:int = 800)
 		{
 			graphics.beginFill(Math.random() * 0xFFFFFF);


Transferred from the Adobe Open Source Subversion Repository

Revision: 18034
Author:   smgilson@adobe.com
Date:     2010-10-06T18:57:34.121269Z

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/mobilecomponents/src/spark/components/supportClasses/MobileTextField.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/components/MobileItemRenderer.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/components/MobileIconItemRenderer.as</path>

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

--- frameworks/projects/mobilecomponents/src/spark/components/IconItemRenderer.as
+++ frameworks/projects/mobilecomponents/src/spark/components/IconItemRenderer.as
@@ -227,7 +227,7 @@
     }

     /**
-     *
If no labelFunction = labelField = null,
+     *
If labelFunction = labelField = null,
      *  then use the label property that gets
      *  pushed in from the list control.
      *  However if labelField is explicitly set to


Worked on secured passwords

Worked on secured passwords

git-svn-id: 27326a786375daad9d33dc990c6f272e4c8f567c@1568 fda5f131-174c-0410-8613-e0905860106b

--- org.openwms/trunk/org.openwms.core/org.openwms.core.domain.as/src/main/flex/org/openwms/core/domain/system/usermanagement/User.as
+++ org.openwms/trunk/org.openwms.core/org.openwms.core.domain.as/src/main/flex/org/openwms/core/domain/system/usermanagement/User.as
@@ -58,6 +58,15 @@
         }

         /**
+         * Do NOT allow to change the password this way.
+         *
+         * @param value The password
+         */
+        override public function set password(value : String) : void {
+            ;
+        }
+
+        /**
          * Check whether the User has UserDetails.
          *
          * @param userData The User to check


Transferred from the Adobe Open Source Subversion Repository

Revision: 2805
Author:   chaase@adobe.com
Date:     2008-08-11T20:37:18.700675Z

Log Message:
-----------
First checkin for the "Arbitrary Type Interpolation" feature. This feature has a rewritten Tween class (now named flex.effects.Animation). This class supports the old Tween capabilities, but adds functionality such as the ability to supply alternate interpolation objects (to allow animation of non-Number types), a new Easing API, and new 'repeat behavior' that will allow terser looping or reversing animations. The existing new effects were slightly changed to use the new Animation class (instead of Tween), and the superclass of the new effects, AnimateProperties (renamed 'Animate'), is now a subclass of Effect (not TweenEffect).

Added various new interpolation and easing classes, along with the new packages flex.effects.interpolation and flex.effects.easing. Also added new color-interpolation effect, 'Tint'.

Expect slight tweaks to the API during i7, but the bulk of the functionality and API changes are being checked in now.

Reviewed by Jason S.
Testing: checkintests & mustella tests/Effects (passed)

Modified Paths:
--------------
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/effects/Animation.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/effects/easing/Linear.as</path>
<path kind="file" action="M">/flex/sdk/trunk/development/eclipse/flex/flex4test/.actionScriptProperties</path>
<path kind="file" action="A">/flex/sdk/trunk/development/eclipse/flex/flex4test/src/EffectsProperties.mxml</path>
<path kind="dir" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/effects/interpolation</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/mxml-2009-manifest.xml</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/effects/effectClasses/AnimatePropertiesInstance.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/effects/AnimateProperties.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/gumbo-manifest.xml</path>
<path kind="file" action="A">/flex/sdk/trunk/development/eclipse/flex/flex4test/src/components/AnimationPropertiesForm.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/Effect.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/effects/effectClasses/FadeInstance.as</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/flex/effects/Fade.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/effects/easing/Constant.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/effects/easing/Power.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/effects/interpolation/ColorInterpolator.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/effects/effectClasses/AnimateInstance.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/effects/effectClasses/TintInstance.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/effects/easing/IEaser.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/effects/Tint.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/effects/Animate.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/effects/interpolation/NumberArrayInterpolator.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/EffectInstance.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/effects/interpolation/IInterpolator.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/effects/interpolation/NumberInterpolator.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/effects/IAnimationTarget.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/effects/effectClasses/ResizeInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/effects/Resize.as</path>
<path kind="dir" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/effects/easing</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/effects/easing/Sine.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/effects/effectClasses/MoveInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/effects/Move.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/events/AnimationEvent.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/effects/interpolation/ArrayInterpolator.as</path>

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

--- frameworks/projects/spark/src/spark/effects/Fade.as
+++ frameworks/projects/spark/src/spark/effects/Fade.as
@@ -15,7 +15,7 @@

 import mx.effects.IEffectInstance;

-public class Fade extends AnimateProperties
+public class Fade extends Animate
 {
     public function Fade(target:Object=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@1268597 13f79535-47bb-0310-9956-ffa450edef68

--- frameworks/projects/mx/src/mx/controls/VScrollBar.as
+++ frameworks/projects/mx/src/mx/controls/VScrollBar.as
@@ -1,11 +1,19 @@
 ////////////////////////////////////////////////////////////////////////////////
 //
-//  ADOBE SYSTEMS INCORPORATED
-//  Copyright 2003-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.
+//  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
+//
+//      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.
 //
 ////////////////////////////////////////////////////////////////////////////////


Player: Do not resize on FULLSCREEN event

A fullscreen event does not say whether we need to resize
the video or not. A resize-event on the other hand does.
Only resize the video when we get a resize event.

Solves #93

--- src/Player.as
+++ src/Player.as
@@ -92,7 +92,6 @@
       this.stage.doubleClickEnabled = true;
       this.stage.addEventListener(MouseEvent.DOUBLE_CLICK, fullscreen);
       this.stage.addEventListener(Event.FULLSCREEN, function(event:Event):void {
-        videoResize();
         (StageDisplayState.NORMAL === stage.displayState) ? callAPI(EVENT_FULLSCREEN_EXITED) : callAPI(EVENT_FULLSCREEN_ENTERED);
       });
       this.stage.addEventListener(Event.RESIZE, function(event:Event):void {


Fixed error exporting species and sampling point data

--- collect-client/src/main/flex/org/openforis/collect/util/ApplicationConstants.as
+++ collect-client/src/main/flex/org/openforis/collect/util/ApplicationConstants.as
@@ -19,10 +19,10 @@
 		public static const DOWNLOAD_LOGO_URL:String = "downloadLogo.htm";

 		private static const SPECIES_IMPORT_EXAMPLE_DOWNLOAD_SERVLET_NAME:String = "species/import/example.htm";
-		private static const _SPECIES_EXPORT_URL:String = "api/survey/{0}/taxonomy/{1}/export.csv";
+		private static const SPECIES_EXPORT_API_ENDPOINT:String = "api/survey/{0}/taxonomy/{1}/export.csv";

-		private static const _SAMPLING_DESIGN_EXPORT_URL:String = "api/survey/{0}/sampling_point_data.csv";
 		private static const SAMPLING_DESIGN_IMPORT_EXAMPLE_DOWNLOAD_SERVLET_NAME:String = "samplingdesign/import/example.htm";
+		private static const SAMPLING_DESIGN_EXPORT_API_ENDPOINT:String = "api/survey/{0}/sampling_point_data.csv";

 		private static const CODE_LIST_IMPORT_EXAMPLE_DOWNLOAD_SERVLET_NAME:String = "codelist/import/example.htm";

@@ -74,12 +74,11 @@
 		}

 		public static function getSpeciesExportUrl(surveyId:int, taxonomyId:int):String {
-			return mx.utils.StringUtil.substitute(_SPECIES_EXPORT_URL, surveyId, taxonomyId);
+			return mx.utils.StringUtil.substitute( _URL + SPECIES_EXPORT_API_ENDPOINT, surveyId, taxonomyId);
 		}

 		public static function getSamplingDesignExportUrl(surveyId:int, work:Boolean = false):String {
-			var baseUrl:String = _SAMPLING_DESIGN_EXPORT_URL;
-			return mx.utils.StringUtil.substitute(baseUrl, surveyId);
+			return mx.utils.StringUtil.substitute(_URL + SAMPLING_DESIGN_EXPORT_API_ENDPOINT, surveyId);
 		}

 		public static function getSurveyDataRestoreUrl():String {


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

--- frameworks/projects/framework/src/mx/graphics/shaderClasses/LuminosityShader.as
+++ frameworks/projects/framework/src/mx/graphics/shaderClasses/LuminosityShader.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.graphics.shaderClasses
 {