Updated ASDoc comments for DataList

Updated ASDoc comments for DataList

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

--- flare.vis/flare/vis/data/DataList.as
+++ flare.vis/flare/vis/data/DataList.as
@@ -14,16 +14,19 @@
 	import flare.util.Sort;
 	import flare.util.Sort;

+	/**
+	 * A list of nodes or edges maintained by a Data instance.
+	 */
 	public class DataList extends Proxy
 	{
 		/** Hashed set of items in the data list. */
-		protected var _map:Dictionary = new Dictionary();
+		private var _map:Dictionary = new Dictionary();
 		/** Array of items in the data set. */
-		protected var _list:Array = [];
+		private var _list:Array = [];
 		/** Default property values to be applied to new items. */
-		protected var _defs:Object = null;
+		private var _defs:Object = null;
 		/** Cache of Stats objects for item properties. */
-		protected var _stats:Object = {};
+		private var _stats:Object = {};
 		/** The underlying array storing the list. */
 		internal function get list():Array { return _list; }

@@ -44,11 +47,23 @@

 		// -- Basic Operations: Contains, Add, Remove, Clear ------------------

+		/**
+		 * Indicates if the given object is contained in this list.
+		 * @param o the object to check for containment
+		 * @return true if the list contains the object, false otherwise.
+		 */
 		public function contains(o:Object):Boolean
 		{
 			return (_map[o] != undefined);
 		}

+		/**
+		 * Internal method for adding an object to the list. This method should
+		 * be used by the Data class only.
+		 * @param o the object to add
+		 * @return the added object
+		 * @private
+		 */
 		internal function add(o:Object):Object
 		{
 			_map[o] = _list.length;
@@ -62,6 +77,13 @@
 			return o;
 		}

+		/**
+		 * Internal method for removing an object from the list. This method
+		 * should be used by the Data class only.
+		 * @param o the object to remove
+		 * @return true if the object was found and removed, false otherwise
+		 * @private
+		 */
 		internal function remove(o:Object):Boolean
 		{
 			if (_map[o] == undefined) return false;
@@ -76,6 +98,13 @@
 			return true;
 		}

+		/**
+		 * Internal method for removing an object from the list. This method
+		 * should be used by the Data class only.
+		 * @param idx the index of the object to remove
+		 * @return the removed object
+		 * @private
+		 */
 		internal function removeAt(idx:int):Object
 		{
 			var o:Object = Arrays.removeAt(_list, idx);
@@ -86,6 +115,10 @@
 			return o;
 		}

+		/**
+		 * Internal method for removing all objects from ths list.
+		 * @private
+		 */
 		internal function clear():void
 		{
 			_map = new Dictionary();
@@ -121,6 +154,19 @@

 		// -- Visitation ------------------------------------------------------

+		/**
+		 * Iterates over the contents of the list, invoking a visitor function
+		 * on each element of the list. The visitor function should return a
+		 * Boolean value: if true the iteration will continue, if false the
+		 * iteration will stop with an early exit.
+		 * @param visitor the visitor function to be invoked on each item
+		 * @param reverse optional flag indicating if the list should be
+		 *  visited in reverse order
+		 * @param filter an optional boolean-valued function indicating which
+		 *  items should be visited
+		 * @return true if the visitation completed, false if an early exit
+		 *  occurred
+		 */
 		public function visit(visitor:Function, reverse:Boolean=false,
 			filter:Function=null):Boolean
 		{
@@ -286,21 +332,25 @@

 		// -- Proxy Methods ---------------------------------------------------

+		/** @private */
 		flash_proxy override function getProperty(name:*):*
 		{
         	return _list[name];
     	}

+		/** @private */
 		flash_proxy override function nextNameIndex(idx:int):int
 		{
 			return (idx < _list.length ? idx + 1 : 0);
 		}

+		/** @private */
 		flash_proxy override function nextName(idx:int):String
 		{
 			return String(idx-1);
 		}

+		/** @private */
 		flash_proxy override function nextValue(idx:int):*
 		{
 			return _list[idx-1];


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

--- frameworks/projects/advancedgrids/src/mx/accessibility/AdvancedDataGridAccImpl.as
+++ frameworks/projects/advancedgrids/src/mx/accessibility/AdvancedDataGridAccImpl.as
@@ -0,0 +1,1313 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  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.accessibility
+{
+
+import flash.accessibility.Accessibility;
+import flash.events.Event;
+
+import mx.collections.CursorBookmark;
+import mx.collections.ICollectionView;
+import mx.collections.IHierarchicalCollectionView;
+import mx.collections.IViewCursor;
+import mx.controls.AdvancedDataGrid;
+import mx.controls.advancedDataGridClasses.AdvancedDataGridColumn;
+import mx.controls.advancedDataGridClasses.AdvancedDataGridHeaderInfo;
+import mx.controls.advancedDataGridClasses.SortInfo;
+import mx.controls.listClasses.IListItemRenderer;
+import mx.core.UIComponent;
+import mx.events.AdvancedDataGridEvent;
+
+import mx.core.mx_internal;
+
+use namespace mx_internal;
+
+/**
+ *  The AdvancedDataGridAccImpl class is the accessibility class for AdvancedDataGrid.
+ *
+ *  @helpid 3009
+ *  @tiptext This is the AdvancedDataGrid Accessibility Class.
+ *  @review
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
+ */
+public class AdvancedDataGridAccImpl extends ListBaseAccImpl
+{
+    include "../core/Version.as";
+
+	//--------------------------------------------------------------------------
+	//
+	//  Class initialization
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  @private
+	 *  Static variable triggering the hookAccessibility() method.
+	 *  This is used for initializing AdvancedDataGridAccImpl class to hook its
+	 *  createAccessibilityImplementation() method to AdvancedDataGrid class
+	 *  before it gets called from UIComponent.
+	 */
+	private static var accessibilityHooked:Boolean = hookAccessibility();
+
+	/**
+	 *  @private
+	 *  Static method for swapping the createAccessibilityImplementation()
+	 *  method of AdvancedDataGrid with the AdvancedDataGridAccImpl class.
+	 */
+	private static function hookAccessibility():Boolean
+	{
+		AdvancedDataGrid.createAccessibilityImplementation =
+			createAccessibilityImplementation;
+
+		return true;
+	}
+
+	//--------------------------------------------------------------------------
+	//
+	//  Class constants
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  @private
+	 */
+	private static const ROLE_SYSTEM_LISTITEM:uint = 0x22;
+
+	/**
+	 *  @private
+	 *  Role of treeItem.
+	 */
+	private static const ROLE_SYSTEM_OUTLINEITEM:uint = 0x24;
+
+	/**
+	 *  @private
+	 */
+	private static const STATE_SYSTEM_COLLAPSED:uint = 0x00000400;
+
+	/**
+	 *  @private
+	 */
+	private static const STATE_SYSTEM_EXPANDED:uint = 0x00000200;
+
+	/**
+	 *  @private
+	 */
+	private static const STATE_SYSTEM_FOCUSED:uint = 0x00000004;
+
+	/**
+	 *  @private
+	 */
+	private static const STATE_SYSTEM_INVISIBLE:uint = 0x00008000;
+
+	/**
+	 *  @private
+	 */
+	private static const STATE_SYSTEM_OFFSCREEN:uint = 0x00010000;
+
+	/**
+	 *  @private
+	 */
+	private static const STATE_SYSTEM_SELECTABLE:uint = 0x00200000;
+
+	/**
+	 *  @private
+	 */
+	private static const STATE_SYSTEM_SELECTED:uint = 0x00000002;
+
+	/**
+	 *  @private
+	 *  Event emitted if 1 item is selected.
+	 */
+	private static const EVENT_OBJECT_FOCUS:uint = 0x8005;
+
+	/**
+	 *  @private
+	 *  Event emitted if 1 item is selected.
+	 */
+	private static const EVENT_OBJECT_SELECTION:uint = 0x8006;
+
+	/**
+	 *  @private
+	 */
+	private static const EVENT_OBJECT_STATECHANGE:uint = 0x800A;
+
+	//--------------------------------------------------------------------------
+	//
+	//  Class methods
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  @private
+	 *  Method for creating the Accessibility class.
+	 *  This method is called from UIComponent.
+	 *  @review
+	 */
+	mx_internal static function createAccessibilityImplementation(
+								component:UIComponent):void
+	{
+		component.accessibilityImplementation =
+			new AdvancedDataGridAccImpl(component);
+	}
+
+	/**
+	 *  Method call for enabling accessibility for a component.
+	 *  This method is required for the compiler to activate
+	 *  the accessibility classes for a component.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
+	 */
+	public static function enableAccessibility():void
+	{
+	}
+
+	//--------------------------------------------------------------------------
+	//
+	//  Constructor
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  Constructor.
+	 *
+	 *  @param master The UIComponent instance that this AccImpl instance
+	 *  is making accessible.
+	 *
+	 *  @langversion 3.0
+	 *  @playerversion Flash 9
+	 *  @playerversion AIR 1.1
+	 *  @productversion Flex 3
+	 */
+	public function AdvancedDataGridAccImpl(master:UIComponent)
+	{
+		super(master);
+
+		var advancedDataGrid:AdvancedDataGrid = AdvancedDataGrid(master);
+
+		role = getRole(advancedDataGrid);
+	}
+
+	//--------------------------------------------------------------------------
+	//
+	//  Overridden properties: AccImpl
+	//
+	//--------------------------------------------------------------------------
+
+	//----------------------------------
+	//  eventsToHandle
+	//----------------------------------
+
+	/**
+	 *  @private
+	 *	Array of events that we should listen for from the master component.
+	 *  @review
+	 */
+	override protected function get eventsToHandle():Array
+	{
+		return super.eventsToHandle.concat([ "change",
+											AdvancedDataGridEvent.ITEM_OPEN,
+											AdvancedDataGridEvent.ITEM_CLOSE,
+											AdvancedDataGridEvent.ITEM_FOCUS_IN ]);
+	}
+
+	//--------------------------------------------------------------------------
+	//
+	//  Overridden methods: AccessibilityImplementation
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  @private
+	 *  Gets the role for the component.
+	 *
+	 *  @param childID Children of the component
+	 */
+	override public function get_accRole(childID:uint):uint
+	{
+		var advancedDataGrid:AdvancedDataGrid = AdvancedDataGrid(master);
+
+		if (childID == 0)
+		{
+			role = getRole(advancedDataGrid);
+			return role;
+		}
+
+		// if header is selected
+		if (advancedDataGrid.headerIndex != -1)
+			return 0x19; // ROLE_SYSTEM_COLUMNHEADER
+
+		if (advancedDataGrid.selectionMode == "singleCell")
+		{
+			var coord:Object = advancedDataGrid.selectedCells[0];
+			if (coord)
+			{
+				// if data is hierarchical and column is the first showing the tree view
+				if (advancedDataGrid.dataProvider is IHierarchicalCollectionView && coord.columnIndex == advancedDataGrid.treeColumn.colNum)
+					return ROLE_SYSTEM_OUTLINEITEM;
+
+				return ROLE_SYSTEM_LISTITEM;
+			}
+		}
+
+		if (advancedDataGrid.dataProvider is IHierarchicalCollectionView)
+			return ROLE_SYSTEM_OUTLINEITEM;
+
+		return ROLE_SYSTEM_LISTITEM;
+	}
+
+	/**
+	 *  @private
+	 *  IAccessible method for returning the value of the ListItem/AdvancedDataGrid
+	 *  which is spoken out by the screen reader
+	 *  The AdvancedDataGrid should return the name of the currently selected item
+	 *  with m of n string (with level info if the data is hierarchical) as value
+	 *  when focus moves to AdvancedDataGrid.
+	 *
+	 *  @param childID uint
+	 *
+	 *  @return Name String
+	 *  @review
+	 */
+	override public function get_accValue(childID:uint):String
+	{
+		var accValue:String = "";
+
+		var item:Object;
+		var i:int;
+		var advancedDataGrid:AdvancedDataGrid = AdvancedDataGrid(master);
+		var coord:Object;
+
+		if (childID != 0 && advancedDataGrid.dataProvider is IHierarchicalCollectionView)
+		{
+			// Assuming childID is always ItemID + 1
+			// because getChildIDArray is not always invoked.
+			i = childID - 1;
+			if (advancedDataGrid.selectionMode == "singleCell" || advancedDataGrid.editable.length != 0)
+				i = Math.floor(i / advancedDataGrid.columns.length);
+
+			item = getItemAt(i);
+			if (item == null)
+				return accValue;
+
+			accValue = advancedDataGrid.getItemDepth(item, i - advancedDataGrid.verticalScrollPosition) + "";
+		}
+
+		return accValue;
+	}
+
+	/**
+	 *  @private
+	 *  IAccessible method for returning the state of the GridItem.
+	 *  States are predefined for all the components in MSAA.
+	 *  Values are assigned to each state.
+	 *  Depending upon the GridItem being Selected, Selectable, Invisible,
+	 *  Offscreen, a value is returned.
+	 *
+	 *  @param childID uint
+	 *
+	 *  @return State uint
+	 */
+	override public function get_accState(childID:uint):uint
+	{
+		var advancedDataGrid:AdvancedDataGrid = AdvancedDataGrid(master);
+
+		var accState:uint = getState(childID);
+
+		var row:int;
+		var col:int;
+
+		// 1 to columnCount * Rows -> ItemRenderers
+		if (childID > 0)
+		{
+			if (advancedDataGrid.headerIndex != -1) // header selected
+			{
+				accState |= STATE_SYSTEM_SELECTABLE | STATE_SYSTEM_SELECTED | STATE_SYSTEM_FOCUSED;
+				return accState;
+			}
+
+			var index:int = childID - 1;
+			var coord:Object;
+			var view:IHierarchicalCollectionView;
+			var item:Object;
+
+			if (advancedDataGrid.editable.length == 0 || advancedDataGrid.editedItemPosition == null)
+			{
+				row = index;
+				if (advancedDataGrid.selectionMode == "singleCell")
+				{
+					coord = advancedDataGrid.selectedCells[0];
+					if (coord)
+					{
+						row = coord.rowIndex;
+					}
+				}
+
+				if (row < advancedDataGrid.verticalScrollPosition ||
+					row >= advancedDataGrid.verticalScrollPosition
+						+ advancedDataGrid.rowCount)
+				{
+					accState |= (STATE_SYSTEM_OFFSCREEN | STATE_SYSTEM_INVISIBLE);
+				}
+				else
+				{
+					accState |= STATE_SYSTEM_SELECTABLE;
+
+					var renderer:IListItemRenderer = advancedDataGrid.itemToItemRenderer(
+						getItemAt(row));
+
+					if (advancedDataGrid.dataProvider is IHierarchicalCollectionView)
+					{
+						view = IHierarchicalCollectionView(advancedDataGrid.dataProvider);
+						//item = getItemAt(index);
+						item = getItemAt(row);
+
+						if (item && view.source.canHaveChildren(item))
+						{
+							if(advancedDataGrid.selectionMode != "singleCell" || (coord && coord.columnIndex == advancedDataGrid.treeColumn.colNum))
+							{
+								if (advancedDataGrid.isItemOpen(item))
+									accState |= STATE_SYSTEM_EXPANDED;
+								else
+									accState |= STATE_SYSTEM_COLLAPSED;
+							}
+						}
+					}
+
+					if (advancedDataGrid.selectionMode == "singleCell")
+					{
+						row = Math.floor(index / advancedDataGrid.columns.length);
+						col = index % advancedDataGrid.columns.length;
+
+						if (coord &&
+							coord.rowIndex == row &&
+							coord.columnIndex == col)
+						{
+							accState |= STATE_SYSTEM_SELECTED | STATE_SYSTEM_FOCUSED;
+						}
+					}
+					else if (renderer && advancedDataGrid.isItemSelected(renderer.data))
+					{
+						accState |= STATE_SYSTEM_SELECTED | STATE_SYSTEM_FOCUSED;
+					}
+				}
+			}
+			else
+			{
+				row = Math.floor(index / advancedDataGrid.columns.length);
+				col = index % advancedDataGrid.columns.length;
+
+				if (row < 0 || col < 0)
+				{
+					coord = advancedDataGrid.editedItemPosition;
+					if (coord)
+					{
+						row = coord.rowIndex;
+						col = coord.columnIndex;
+					}
+					else
+					{
+						row = 0;
+						col = 0;
+					}
+				}
+
+				if (advancedDataGrid.selectionMode == "singleCell")
+					coord = advancedDataGrid.selectedCells[0];
+
+				if (row < advancedDataGrid.verticalScrollPosition ||
+					row >= advancedDataGrid.verticalScrollPosition
+						+ advancedDataGrid.rowCount)
+				{
+					accState |= (STATE_SYSTEM_OFFSCREEN | STATE_SYSTEM_INVISIBLE);
+				}
+				else if (advancedDataGrid.columns[col].editable)
+				{
+					accState |= STATE_SYSTEM_SELECTABLE;
+
+					coord = advancedDataGrid.editedItemPosition;
+
+					if (advancedDataGrid.dataProvider is IHierarchicalCollectionView)
+					{
+						view = IHierarchicalCollectionView(advancedDataGrid.dataProvider);
+						item = getItemAt(index);
+
+						if (item && view.source.canHaveChildren(item))
+						{
+							if(advancedDataGrid.selectionMode != "singleCell" || (coord && coord.columnIndex == 0))
+							{
+								if (advancedDataGrid.isItemOpen(item))
+									accState |= STATE_SYSTEM_EXPANDED;
+								else
+									accState |= STATE_SYSTEM_COLLAPSED;
+							}
+						}
+					}
+
+					if (coord &&
+						coord.rowIndex == row &&
+						coord.columnIndex == col)
+					{
+						accState |= STATE_SYSTEM_SELECTED | STATE_SYSTEM_FOCUSED;
+					}
+				}
+			}
+		}
+
+		return accState;
+	}
+
+	/**
+	 *  @private
+	 *  IAccessible method for returning the Default Action.
+	 *
+	 *  @param childID uint
+	 *
+	 *  @return name of default action.
+	 */
+	override public function get_accDefaultAction(childID:uint):String
+	{
+		var advancedDataGrid:AdvancedDataGrid = AdvancedDataGrid(master);
+
+		var index:int = childID - 1;
+		// index is the (0 based) index of the elements after the headers
+
+		var row:int = index;
+		var col:int = 0;
+
+		if (advancedDataGrid.selectionMode == "singleCell")
+		{
+			row = Math.floor(index / advancedDataGrid.columns.length);
+			col = index % advancedDataGrid.columns.length;
+		}
+
+		if (childID == 0)
+			return null;
+
+		if (advancedDataGrid.headerIndex != -1)
+			return "Click";
+
+		if (!(advancedDataGrid.dataProvider is IHierarchicalCollectionView) || col != advancedDataGrid.treeColumn.colNum)
+			return super.get_accDefaultAction(childID);
+
+		var item:Object = getItemAt(row);
+		if (!item)
+			return null;
+
+		var view:IHierarchicalCollectionView = IHierarchicalCollectionView(advancedDataGrid.dataProvider);
+
+		// for hierarchical data
+		if (view.source.canHaveChildren(item))
+			return advancedDataGrid.isItemOpen(item) ? "Collapse" : "Expand";
+		else
+			return "Double Click";
+
+		return null;
+	}
+
+	/**
+	 *  @private
+	 *  IAccessible method for executing the Default Action.
+	 *
+	 *  @param childID uint
+	 */
+	override public function accDoDefaultAction(childID:uint):void
+	{
+		var advancedDataGrid:AdvancedDataGrid = AdvancedDataGrid(master);
+
+		if (childID > 0) // see if this check needs to be given
+		{
+			// Assuming childID is always ItemID + 1
+			// because getChildIDArray may not always be invoked.
+			var index:int = childID - 1;
+			// index is the (0 based) index of the elements after the headers
+
+			var row:int = index;
+			var col:int = 0;
+
+			if (advancedDataGrid.selectionMode == "singleCell")
+			{
+				row = Math.floor(index / advancedDataGrid.columns.length);
+				col = index % advancedDataGrid.columns.length;
+			}
+
+			// if header is selected, dispatch the sort event to trigger sorting
+			if (advancedDataGrid.headerIndex != -1)
+			{
+				var advancedDataGridEvent:AdvancedDataGridEvent =
+	                new AdvancedDataGridEvent(AdvancedDataGridEvent.SORT, false, true);
+
+	            advancedDataGridEvent.columnIndex     = advancedDataGrid.headerIndex;
+	            advancedDataGridEvent.dataField       = advancedDataGrid.columns[advancedDataGrid.headerIndex].dataField;
+	            advancedDataGridEvent.multiColumnSort      = false;
+	            advancedDataGridEvent.removeColumnFromSort = false;
+
+	            advancedDataGrid.dispatchEvent(advancedDataGridEvent);
+
+	            return ;
+   			}
+
+			if (advancedDataGrid.dataProvider is IHierarchicalCollectionView && col == 0)
+			{
+				if (advancedDataGrid.selectionMode == "singleCell")
+					index = row;
+				var item:Object = getItemAt(index);
+				if (item == null)
+					return;
+
+				var view:IHierarchicalCollectionView = IHierarchicalCollectionView(advancedDataGrid.dataProvider);
+
+				if (view.source.canHaveChildren(item))
+				{
+					advancedDataGrid.expandItem(item, !advancedDataGrid.isItemOpen(item));
+					return;
+				}
+			}
+
+			if (advancedDataGrid.editable.length == 0)
+			{
+				if (advancedDataGrid.selectionMode == "singleCell")
+				{
+					advancedDataGrid.selectedCells = [{ rowIndex: row, columnIndex: col }];
+				}
+				else
+				{
+					// index is the row id
+					advancedDataGrid.selectedIndex = index;
+				}
+			}
+			else
+			{
+				advancedDataGrid.editedItemPosition = { rowIndex: row, columnIndex: col };
+			}
+		}
+	}
+
+	/**
+	 *  @private
+	 *  Method to return an array of childIDs.
+	 *
+	 *  @return Array
+	 */
+	override public function getChildIDArray():Array
+	{
+		var childIDs:Array = [];
+
+		var advancedDataGrid:AdvancedDataGrid = AdvancedDataGrid(master);
+
+		if (advancedDataGrid.dataProvider)
+		{
+			// 0 is AdvancedDataGrid, 1 to columnCount * Rows -> ItemRenderers
+			var n:int = 0;
+			if ((advancedDataGrid.editedItemPosition == null || advancedDataGrid.editable.length == 0) &&
+					advancedDataGrid.selectionMode != "singleCell") // non editable case (itemRenderers)
+				n = advancedDataGrid.dataProvider.length;
+			else // editable case (rows) or selection mode is single cell
+				n = advancedDataGrid.columns.length * advancedDataGrid.dataProvider.length;
+
+			for (var i:int = 0; i < n; i++)
+			{
+				childIDs[i] = i + 1;
+			}
+		}
+		return childIDs;
+	}
+
+	/**
+	 *  @private
+	 *  IAccessible method for returning the bounding box of the GridItem.
+	 *
+	 *  @param childID uint
+	 *
+	 *  @return Location Object
+	 */
+	override public function accLocation(childID:uint):*
+	{
+		var advancedDataGrid:AdvancedDataGrid = AdvancedDataGrid(master);
+
+		var index:int = childID - 1;
+		var row:int;
+		var col:int;
+		var coord:Object;
+
+		// return the location of the header selected
+		if (advancedDataGrid.headerIndex !=-1)
+		{
+			return advancedDataGrid.selectedHeaderInfo.headerItem;
+		}
+
+		if (advancedDataGrid.editable.length == 0 || advancedDataGrid.editedItemPosition == null)
+		{
+			if (advancedDataGrid.selectionMode == "singleCell" && advancedDataGrid.selectedCells.length > 0)
+			{
+				coord = advancedDataGrid.selectedCells[0];
+				if (coord)
+				{
+					row = coord.rowIndex;
+					col = coord.columnIndex;
+				}
+			}
+			else
+			{
+				row = index;
+				col = 0;
+			}
+
+			if (row < advancedDataGrid.verticalScrollPosition ||
+				row >= advancedDataGrid.verticalScrollPosition + advancedDataGrid.rowCount)
+			{
+				return null;
+			}
+
+			return advancedDataGrid.indicesToItemRenderer(row - advancedDataGrid.verticalScrollPosition, col);
+		}
+		else
+		{
+			row = Math.floor(index / advancedDataGrid.columns.length);
+			col = index % advancedDataGrid.columns.length;
+			if (row < advancedDataGrid.verticalScrollPosition ||
+				row >= advancedDataGrid.verticalScrollPosition + advancedDataGrid.rowCount)
+			{
+				return null;
+			}
+
+			return advancedDataGrid.indicesToItemRenderer(row - advancedDataGrid.verticalScrollPosition, col);
+		}
+	}
+
+	/**
+	 *  @private
+	 *  IAccessible method for returning the child Selections in the List.
+	 *
+	 *  @param childID uint
+	 *
+	 *  @return focused childID.
+	 */
+	override public function get_accSelection():Array
+	{
+		var advancedDataGrid:AdvancedDataGrid = AdvancedDataGrid(master);
+		var accSelection:Array = [];
+
+		var n:int;
+		var i:int;
+		var coord:Object;
+		if (advancedDataGrid.editable.length > 0 && advancedDataGrid.editedItemPosition != null)
+		{
+			coord = advancedDataGrid.editedItemPosition;
+			if (!coord)
+				return accSelection;
+
+			accSelection[0] = advancedDataGrid.columns.length * coord.rowIndex + coord.columnIndex + 1;
+		}
+		else if (advancedDataGrid.selectionMode == "singleCell")
+		{
+			n = advancedDataGrid.selectedCells.length;
+			for (i = 0; i < n; i++)
+			{
+				coord = advancedDataGrid.selectedCells[i];
+				accSelection[i] = advancedDataGrid.columns.length * coord.rowIndex + coord.columnIndex + 1;
+			}
+		}
+		else
+		{
+			var selectedIndices:Array = AdvancedDataGrid(master).selectedIndices;
+
+			n = selectedIndices.length;
+			for (i = 0; i < n; i++)
+			{
+				accSelection[i] = selectedIndices[i] + 1;
+			}
+		}
+
+		return accSelection;
+	}
+
+	/**
+	 *  @private
+	 *  IAccessible method for returning the childFocus of the AdvancedDataGrid.
+	 *
+	 *  @param childID uint
+	 *
+	 *  @return focused childID.
+	 */
+	override public function get_accFocus():uint
+	{
+		var advancedDataGrid:AdvancedDataGrid = AdvancedDataGrid(master);
+
+		var index:uint;
+		if (advancedDataGrid.headerIndex != -1)
+		{
+			if (advancedDataGrid.selectionMode == "singleCell")
+				index = advancedDataGrid.columns.length * advancedDataGrid.dataProvider.length
+			 		+ advancedDataGrid.headerIndex + 1;
+			 else
+			 	index = advancedDataGrid.dataProvider.length
+			 		+ advancedDataGrid.headerIndex + 1;
+
+			return index;
+		}
+
+		var coord:Object;
+		if (advancedDataGrid.editable.length == 0)
+		{
+			if (advancedDataGrid.selectionMode == "singleCell" && advancedDataGrid.selectedCells.length > 0)
+			{
+				coord = advancedDataGrid.selectedCells[0];
+				if (coord)
+				{
+					index = advancedDataGrid.columns.length * coord.rowIndex + coord.columnIndex + 1;
+				}
+			}
+			else
+			{
+				index = advancedDataGrid.selectedIndex;
+			}
+
+			return index >= 0 ? index + 1 : 0;
+		}
+		else
+		{
+			coord = advancedDataGrid.editedItemPosition;
+			if (coord == null)
+				return 0;
+
+			var row:int = coord.rowIndex;
+			var col:int = coord.columnIndex;
+
+			return advancedDataGrid.columns.length * row + col + 1;
+		}
+	}
+
+	/**
+	 *  @private
+	 *  IAccessible method for selecting an item.
+	 *
+	 *  @param childID uint
+	 */
+	override public function accSelect(selFlag:uint, childID:uint):void
+	{
+		var advancedDataGrid:AdvancedDataGrid = AdvancedDataGrid(master);
+
+		var index:uint = childID - 1;
+
+		if (index >= 0 && index < advancedDataGrid.dataProvider.length)
+			advancedDataGrid.selectedIndex = index;
+	}
+
+	//--------------------------------------------------------------------------
+	//
+	//  Overridden methods: AccImpl
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  @private
+	 *  method for returning the name of the ListItem/AdvancedDataGrid
+	 *  which is spoken out by the screen reader
+	 *  The ListItem should return the label as the name with m of n string
+	 * (with level info if the data is hierarchical) and
+	 *  AdvancedDataGrid should return the name specified in the AccessibilityProperties.
+	 *
+	 *  @param childID uint
+	 *
+	 *  @return Name String
+	 *  @review
+	 */
+	override protected function getName(childID:uint):String
+	{
+		var advancedDataGrid:AdvancedDataGrid = AdvancedDataGrid(master);
+		// 0 -> AdvancedDataGrid
+
+		if(childID != 0 && advancedDataGrid.headerIndex != -1)
+		{
+			name = getValueForHeader(advancedDataGrid);
+			return name;
+		}
+
+		if (childID == 0 || childID > 100000)
+			return "";
+
+		var len:int = 0;
+
+		// cases - 3 rows, 3 cols
+		// 1. row selection, len = 3
+		// 2. cell selection, len = 9
+		// 3. editable row/cell selection, len = 9
+		// 4. un-editable row selection, len = 3
+		// 5. un-editable cell selection, len = 9
+
+		if (advancedDataGrid.editable.length == 0 || advancedDataGrid.editedItemPosition == null)
+		{
+			if (advancedDataGrid.selectionMode == "singleCell")
+				len = advancedDataGrid.dataProvider.length * advancedDataGrid.columns.length;
+			else
+				len = advancedDataGrid.dataProvider.length;
+		}
+		else if (advancedDataGrid.editable.length != 0)
+		{
+			len = advancedDataGrid.dataProvider.length * advancedDataGrid.columns.length;
+		}
+
+		if (childID > len)
+			return "";
+
+		var name:String;
+
+		//1 to columnCount * Rows -> ItemRenderers
+		if (childID > 0) // see if this check needs to be given
+		{
+			// assuming childID is always ItemID + 1
+			// because getChildIDArray may not always be invoked.
+			var index:int = childID - 1;
+
+			// index is the (0 based) index of the elements after the headers
+			var row:int;
+			var col:int;
+			var item:Object;
+			var columns:Array;
+			var n:int;
+			var i:int;
+
+			var firstColumn:Boolean = true;
+
+			var rowStr:String;
+
+			if (advancedDataGrid.editable.length == 0 || advancedDataGrid.editedItemPosition == null)
+			{
+				// index is the row id
+				row = index;
+				rowStr = ", Row " + (row + 1);
+				item = getItemAt(index);
+				if (item is String)
+				{
+					name = " " + item;
+				}
+				else
+				{
+					name = "";
+					columns = advancedDataGrid.columns;
+
+					if (advancedDataGrid.selectionMode == "singleCell")
+					{
+						row = Math.floor(index / advancedDataGrid.columns.length);
+						col = index % advancedDataGrid.columns.length;
+
+						if (row < 0 || col < 0)
+						{
+							var coord:Object = advancedDataGrid.selectedCells[0];
+							if (coord)
+							{
+								row = coord.rowIndex;
+								col = coord.columnIndex;
+							}
+							else
+								return "";
+						}
+						rowStr = ", Row " + (row + 1);
+
+						item = getItemAt(row);
+
+						if (col != 0)
+						{
+							firstColumn = false;
+							rowStr = "";
+						}
+						name += columns[col].headerText + ": " + columns[col].itemToLabel(item);
+					}
+					else
+					{
+						n = columns.length;
+						for (i = 0; i < n; i++)
+						{
+							if (i > 0)
+								name += ",";
+							name += " " + columns[i].headerText + ": " + columns[i].itemToLabel(item);
+						}
+					}
+				}
+			}
+			else
+			{
+				row = Math.floor(index / advancedDataGrid.columns.length);
+				col = index % advancedDataGrid.columns.length;
+
+				if (row < 0 || col < 0)
+				{
+					coord = advancedDataGrid.editedItemPosition;
+					if (coord)
+					{
+						row = coord.rowIndex;
+						col = coord.columnIndex;
+					}
+					else
+					{
+						return "";
+					}
+				}
+				rowStr = ", Row " + (row + 1);
+
+				if (col != 0)
+				{
+					firstColumn = false;
+					rowStr = "";
+				}
+
+				item = getItemAt(row);
+
+				// sometimes item may be an object.
+				if (item is String)
+				{
+					name = " " + item;
+				}
+				else
+				{
+					columns = advancedDataGrid.columns;
+
+					var itemName:String = columns[col].itemToLabel(item);
+
+					var headerText:String = columns[col].headerText;
+
+					name = "";
+
+					//if (AdvancedDataGrid.selectable == true && AdvancedDataGrid.isItemSelected(row.data))
+					{
+						n = columns.length;
+						for (i = 0; i < n; i++)
+						{
+							if (i > 0)
+								name += ",";
+							name += " " + columns[i].headerText + ": " + columns[i].itemToLabel(item);
+						}
+					}
+
+					name += ", Editing " + headerText + ": " +
+							itemName;
+				}
+			}
+
+			if (advancedDataGrid.dataProvider is IHierarchicalCollectionView)
+			{
+				var view:IHierarchicalCollectionView = IHierarchicalCollectionView(advancedDataGrid.dataProvider);
+
+				var str:String = "";
+				var strMOfN:String = getMOfN(item);
+				if (item && view.source.canHaveChildren(item))
+				{
+					if (firstColumn)
+					{
+						str = ". Press control shift right arrow to open, control shift left arrow to close";
+
+						if (advancedDataGrid.editable.length == 0)
+							name +=  strMOfN + str;
+						else
+							name += strMOfN ;
+					}
+					else
+					{
+						name = name + rowStr;
+					}
+				}
+				else if(firstColumn)
+				{
+					name += strMOfN;
+				}
+
+			}
+			else
+			{
+				name = name + rowStr;
+			}
+		}
+		return name;
+	}
+
+	//--------------------------------------------------------------------------
+	//
+	//  Overridden event handlers: AccImpl
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  @private
+	 *  Override the generic event handler.
+	 *  All AccImpl must implement this to listen
+	 *  for events from its master component.
+	 */
+	override protected function eventHandler(event:Event):void
+	{
+		// Let AccImpl class handle the events
+		// that all accessible UIComponents understand.
+		$eventHandler(event);
+
+		var advancedDataGrid:AdvancedDataGrid = AdvancedDataGrid(master);
+
+		var coord:Object;
+		var index:int;
+
+		var childID:uint;
+
+		switch (event.type)
+		{
+			case "change":
+			{
+				var sendEvent:Boolean = false;
+				if (advancedDataGrid.headerIndex != -1)
+				{
+					if (advancedDataGrid.selectionMode == "singleCell")
+						childID = advancedDataGrid.columns.length * advancedDataGrid.dataProvider.length
+					 		+ advancedDataGrid.headerIndex + 1;
+					 else
+					 	childID = advancedDataGrid.dataProvider.length
+					 		+ advancedDataGrid.headerIndex + 1;
+
+					 sendEvent = true;
+				}
+
+				if (!sendEvent && (advancedDataGrid.editable.length == 0 || advancedDataGrid.editedItemPosition == null))
+				{
+					index = advancedDataGrid.selectedIndex;
+
+					if (advancedDataGrid.selectionMode == "singleCell")
+					{
+						coord = advancedDataGrid.selectedCells[0];
+						if (coord)
+						{
+							childID = advancedDataGrid.columns.length * coord.rowIndex + coord.columnIndex + 1;
+							sendEvent = true;
+						}
+					}
+					else if (index >= 0)
+					{
+						childID = index + 1;
+						sendEvent = true;
+					}
+				}
+
+				if (sendEvent)
+				{
+					Accessibility.sendEvent(advancedDataGrid, childID,
+												EVENT_OBJECT_FOCUS);
+
+					Accessibility.sendEvent(advancedDataGrid, childID,
+												EVENT_OBJECT_SELECTION);
+				}
+				break;
+			}
+
+			case AdvancedDataGridEvent.ITEM_FOCUS_IN:
+			{
+				if (advancedDataGrid.editable.length != 0 && advancedDataGrid.editedItemPosition != null)
+				{
+					var row:int = AdvancedDataGridEvent(event).rowIndex;
+					var col:int = AdvancedDataGridEvent(event).columnIndex;
+
+					Accessibility.sendEvent(advancedDataGrid,
+									advancedDataGrid.columns.length * row + col + 1,
+									EVENT_OBJECT_FOCUS);
+
+					Accessibility.sendEvent(advancedDataGrid,
+									advancedDataGrid.columns.length * row + col + 1,
+									EVENT_OBJECT_SELECTION);
+				}
+				break;
+			}
+
+			case AdvancedDataGridEvent.ITEM_OPEN:
+			case AdvancedDataGridEvent.ITEM_CLOSE:
+			{
+				if (advancedDataGrid.selectionMode == "singleCell")
+				{
+					coord = advancedDataGrid.selectedCells[0];
+					if (coord)
+					{
+						index = coord.rowIndex;
+					}
+				}
+				else
+				{
+					index = advancedDataGrid.selectedIndex;
+				}
+
+				if (index >= 0)
+				{
+					Accessibility.sendEvent(master, index + 1,
+											EVENT_OBJECT_STATECHANGE);
+				}
+				break;
+			}
+		}
+	}
+
+	//--------------------------------------------------------------------------
+	//
+	//  Methods
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  @private
+	 */
+	private function getItemAt(index:int):Object
+	{
+		var iterator:IViewCursor = AdvancedDataGrid(master).collectionIterator;
+		iterator.seek(CursorBookmark.FIRST, index);
+		return iterator.current;
+	}
+
+	/**
+	 *  @private
+	 *  Local method to return m of n String.
+	 *
+	 *  @param item Object
+	 *
+	 *  @return string.
+	 */
+	private function getMOfN(item:Object):String
+	{
+		if (!item)
+			return "";
+		var advancedDataGrid:AdvancedDataGrid = AdvancedDataGrid(master);
+		var i:int = 0;
+		var n:int = 0;
+
+		var view:IHierarchicalCollectionView = IHierarchicalCollectionView(advancedDataGrid.dataProvider);
+
+		var parent:Object = advancedDataGrid.getParentItem(item);
+		if (parent != null)
+		{
+			var childNodes:ICollectionView =
+				view.getChildren(parent);
+
+			if (childNodes)
+			{
+				n = childNodes.length;
+				for (i = 0; i < n; i++)
+				{
+					if (item == childNodes[i])
+						break;
+				}
+			}
+		}
+		else
+		{
+			var cursor:IViewCursor = ICollectionView(advancedDataGrid.collectionIterator.view).createCursor();
+			while (!cursor.afterLast)
+			{
+				if (item == cursor.current)
+					i = n;
+				n++;
+				cursor.moveNext();
+			}
+		}
+
+		if (i == n)
+			i = 0;
+
+		// Make it 1-based.
+		if (n > 0)
+			i++;
+
+		return ", " + i + " of " + n;
+	}
+
+	/**
+	 *  @private
+	 *  Local method to return the header value.
+	 *  Includes the sort information also.
+	 *
+	 *  @param advancedDataGrid AdvancedDataGrid
+	 *
+	 *  @return string.
+	 */
+	private function getValueForHeader(advancedDataGrid:AdvancedDataGrid):String
+	{
+		var accValue:String;
+		var headerInfo:AdvancedDataGridHeaderInfo = advancedDataGrid.selectedHeaderInfo;
+		var column:AdvancedDataGridColumn = headerInfo.column;
+
+		// Whether the current column is sorted or not, and if so what info to
+        // read
+        var sortInfo:SortInfo = advancedDataGrid.getFieldSortInfo(column);
+
+        var str:String;
+        var str1:String = "ascending";
+        var sortOrder:String;
+        if (sortInfo)
+        {
+        	sortOrder = sortInfo.sequenceNumber == -1 ? null : (", sort order " + sortInfo.sequenceNumber);
+        	if (sortInfo.descending)
+        	{
+        		str = "descending";
+        	}
+        	else
+        	{
+        		str = "ascending";
+        		str1 = "descending";
+        	}
+        }
+
+        var sortStr:String = (str ? (" sorted " + str) : "") +
+							(sortOrder ? sortOrder : "") +
+							" Press space to sort " + str1 +
+							" on this field. " +
+							" Press control space to add this field to sort";
+
+		accValue = column.headerText + ": Column " +
+						(advancedDataGrid.headerIndex + 1);
+
+		if (advancedDataGrid.columnGrouping)
+		{
+			var colGrpStr:String = "";
+			if (headerInfo.children)
+			{
+				colGrpStr = ", spans " + headerInfo.columnSpan + " columns";
+				accValue += colGrpStr;
+			}
+			else
+			{
+				accValue += sortStr;
+			}
+		}
+		else
+		{
+			accValue += sortStr;
+		}
+
+		return accValue;
+	}
+
+	/**
+	 *  @private
+	 *  Local method to return the role of the
+	 *  AdvancedDataGrid depending on its dataProvider.
+	 *
+	 *  @param advancedDataGrid AdvancedDataGrid
+	 *
+	 *  @return uint.
+	 */
+	private function getRole(advancedDataGrid:AdvancedDataGrid):uint
+	{
+		if (advancedDataGrid.dataProvider is IHierarchicalCollectionView)
+			return 0x23; // ROLE_SYSTEM_OUTLINE
+		else
+			return 0x21; // ROLE_SYSTEM_LIST
+	}
+
+}
+
+}


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

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

 package mx.charts
 {


Transferred from the Adobe Open Source Subversion Repository

Revision: 10131
Author:   chaase@adobe.com
Date:     2009-09-10T21:25:42.980194Z

Log Message:
-----------
Fixes to several effects bugs and one styles-related bug.

QE notes: Fixes to all filed auto-center feature bugs.
Doc notes: None
Bugs: sdk-22994, sdk-22992, sdk-22990, sdk-21850, sdk-22973
Reviewer: Jason (+Glenn for RadioButton/CheckBox changes, 21850)
Tests run: checkintests, Mustella (transform effects, Slider, DataGrid - all passed last week, prior to skin/test changes)
Is noteworthy for integration: No

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/Move3D.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/Rotate.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/Scale3D.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/RadioButton.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/effectClasses/SoundEffectInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/Rotate3D.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/Move.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/effects/Scale.as</path>
<path kind="file" action="M">/flex/sdk/trunk/tools/dependencychecker/frameworkSwcExceptionsList.txt</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/framework/src/mx/core/UIComponent.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/controls/CheckBox.as</path>

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

--- frameworks/projects/spark/src/spark/effects/Move3D.as
+++ frameworks/projects/spark/src/spark/effects/Move3D.as
@@ -329,9 +329,9 @@
         }
         else
         {
-            addPostLayoutMotionPath("postLayoutTranslationX", xFrom, xTo, xBy);
-            addPostLayoutMotionPath("postLayoutTranslationY", yFrom, yTo, yBy);
-            addPostLayoutMotionPath("postLayoutTranslationZ", zFrom, zTo, zBy);
+            addMotionPath("postLayoutTranslationX", xFrom, xTo, xBy);
+            addMotionPath("postLayoutTranslationY", yFrom, yTo, yBy);
+            addMotionPath("postLayoutTranslationZ", zFrom, zTo, zBy);
         }
         super.initInstance(instance);
     }


Transferred from the Adobe Open Source Subversion Repository

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

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

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

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

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

--- frameworks/projects/spark/src/spark/effects/Rotate.as
+++ frameworks/projects/spark/src/spark/effects/Rotate.as
@@ -161,7 +161,7 @@
     //
     //--------------------------------------------------------------------------

-    // TODO: Can we remove this override? It exists only to create motionPaths,
+    // FIXME (chaase): Can we remove this override? It exists only to create motionPaths,
     // which we should be able to do somewhere else
     /**
      * @private


ComboBox#selectedItem getter error fixed

--- src/metafas3/reaction_view/helpers/ComboBoxHelper.as
+++ src/metafas3/reaction_view/helpers/ComboBoxHelper.as
@@ -84,7 +84,7 @@

 		public function get selectedItem () :String
 		{
-			return proxied_object.selectedItem.data.toString();
+			return ((proxied_object.selectedItem && proxied_object.selectedItem.data) ? proxied_object.selectedItem.data.toString() : proxied_object.selectedItem);
 		}


Remove the package name from the name getter in AbstractLeaf

--- src/aerys/minko/render/shader/node/leaf/AbstractLeaf.as
+++ src/aerys/minko/render/shader/node/leaf/AbstractLeaf.as
@@ -9,7 +9,8 @@
 	{
 		public function get name() : String
 		{
-			return getQualifiedClassName(this);
+			var className : String = getQualifiedClassName(this);
+			return className.substr(className.lastIndexOf(":") + 1);
 		}

 		public function get size() : uint


Fix bug on bounding boxes. (0, 0, 0) was always in every box.

--- src/aerys/minko/render/geometry/Geometry.as
+++ src/aerys/minko/render/geometry/Geometry.as
@@ -625,12 +625,12 @@
 				return ;

 			var numStreams	: int		= _vertexStreams.length;
-			var minX		: Number	= 0.;
-			var minY		: Number	= 0.;
-			var minZ		: Number	= 0.;
-			var maxX		: Number	= 0.;
-			var maxY		: Number	= 0.;
-			var maxZ		: Number	= 0.;
+			var minX		: Number	= Number.MAX_VALUE;
+			var minY		: Number	= Number.MAX_VALUE;
+			var minZ		: Number	= Number.MAX_VALUE;
+			var maxX		: Number	= -Number.MAX_VALUE;
+			var maxY		: Number	= -Number.MAX_VALUE;
+			var maxZ		: Number	= -Number.MAX_VALUE;

 			for (var i : int = 0; i < numStreams; ++i)
 			{


Transferred from the Adobe Open Source Subversion Repository

Revision: 13046
Author:   hneelu@adobe.com
Date:     2009-12-17T12:34:07.695337Z

Log Message:
-----------
Updating automation sources..

Modified Paths:
--------------
451 paths were modified

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

--- frameworks/projects/automation/src/mx/automation/tabularData/MenuBarTabularData.as
+++ frameworks/projects/automation/src/mx/automation/tabularData/MenuBarTabularData.as
@@ -122,8 +122,7 @@

 			// code modified to avoid the usage of numAutomationChildren and
 			// getAutomationChildAt in a loop
-			//var childList:Array  = delegate.getAutomationChildren();
-			var childList:Array  =  Automation.automationManager2.getAutomationChildrenArray(delegate);
+			var childList:Array  = delegate.getAutomationChildren();
 			if (childList)
 			{
 				end  = end > childList.length ? childList.length : end;


Transferred from the Adobe Open Source Subversion Repository

Revision: 11181
Author:   smgilson@adobe.com
Date:     2009-10-27T15:58:59.190040Z

Log Message:
-----------
ASDoc updates for Spark List D&D

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

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/List.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/skins/spark/ListSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/supportClasses/LayoutBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/listClasses/ListItemDragProxy.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/supportClasses/DropLocation.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/ListItemDragProxy.as</path>

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

--- frameworks/projects/spark/src/spark/components/supportClasses/ListItemDragProxy.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/ListItemDragProxy.as
@@ -43,6 +43,11 @@

     /**
      *  Constructor.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
      */
     public function ListItemDragProxy()
     {
@@ -69,10 +74,10 @@
         var dataGroup:DataGroup = list.dataGroup;
         if (!dataGroup)
             return;
-
-		// Make sure we inherit styles from the drag initiator, as those styles
-		// may be affecting the appearance of the item renderers.
-		this.styleName = list;
+
+        // Make sure we inherit styles from the drag initiator, as those styles
+        // may be affecting the appearance of the item renderers.
+        this.styleName = list;

         // Generate a dragImage
         // FIXME (egeorgie): do we need to set the image size here?


Transferred from the Adobe Open Source Subversion Repository

Revision: 4106
Author:   rfrishbe@adobe.com
Date:     2008-11-14T01:56:47.949068Z

Log Message:
-----------
Mostly rename changes.  IVisualItem -> IVisualElement.  IVisualContainer -> IVisualElementContainer.  Also changed the APIs so that it's addElement, removeElement, etc.. instead of addItem, removeItem, etc...  Moreover, all of these APIs have been added to IVisualElementContainer (not just the read-only ones).  Now there's a common interface for all containers (even Halo's Container class implements it).  There's no more need to do:

if (x is Group || x is FxContainer)

Just use the IVisualElementContainer interface.

Some classes, like FxScroller (and perhaps DataGroup/FxDataContainer), will only implement the "getter" part of the API.  For now, if you call the mutation methods, we will throw an exception.  Perhaps later we'll add a separate interface for the read-only portion and the mutator interface will extend that one.

There might be a few more places in the code that need to be updated to use the new names for the methods.  I know Mustella needs cleaning up so it doesn't use getItem and uses getElement instead.  I've left the old APIs in there exactly for this purpose, so we can gradually move over to the new names (esp. QA).

At some point soon, we will remove the old methods as well as type them more strictly to only accept IVisualElements, for example addElement(element:IVisualElement).  Part of this work is dependent on updating the Flash Component Kit so that it implements IVisualElement (and perhaps IVisualElementContainer for containers).

Ran checkintests and all gumbo mustella tests.

QE Notes: Please update your tests to use addElement, removeElement, etc... along with the new IVisualElementContainer interface.  The old APIs (addItem, removeItem, etc...) will be removed soon.
Doc Notes: None
Bugs: -
Reviewer: Hans (he patiently sat through all these files...)

Modified Paths:
--------------
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/core/IVisualContainer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxScroller.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/effects/effectClasses/RemoveActionInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/layout/LayoutItemHelper.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/layout/LayoutItemUIC.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/effects/RemoveAction.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/DataGroup.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/effects/effectClasses/FxFadeInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/IUIComponent.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/effects/effectClasses/FxAnimate3DInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/layout/ILayoutItem.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/styles/StyleProtoChain.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/Container.as</path>
<path kind="file" copyfrom-path="/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/IVisualItem.as" copyfrom-rev="4083" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/IVisualElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/effects/effectClasses/FxAnimateInstance.as</path>
<path kind="file" copyfrom-path="/flex/sdk/trunk/frameworks/projects/flex4/src/mx/core/IVisualContainer.as" copyfrom-rev="4083" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/IVisualElementContainer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/states/AddItems.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxList.as</path>
<path kind="file" action="D">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/IVisualItem.as</path>
<path kind="file" action="M">/flex/sdk/trunk/tools/dependencychecker/flex/tools/dependencychecker/FrameworkSwcDependencyRules.java</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UIComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/effects/effectClasses/AddActionInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/graphicsClasses/GraphicElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/effects/AddAction.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxContainer.as</path>

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

--- frameworks/projects/spark/src/spark/effects/supportClasses/RemoveActionInstance.as
+++ frameworks/projects/spark/src/spark/effects/supportClasses/RemoveActionInstance.as
@@ -20,6 +20,7 @@

 import mx.core.mx_internal;
 import mx.effects.effectClasses.ActionEffectInstance;
+import mx.core.IVisualElementContainer;

 /**
  *  The RemoveChildActionInstance class implements the instance class
@@ -86,32 +87,34 @@

     private function addChild(container:*, child:*):void
     {
-        if (container is Group)
-           container.addItem(child);
+        // TODO: can remove once we're sure all parents are
+        // IVisualElementContainers (Flash Component Kit)
+        if (container is IVisualElementContainer)
+           IVisualElementContainer(container).addElement(child);
         else
            container.addChild(child);
     }

     private function removeChild(container:*, child:*):void
     {
-        if (container is Group)
-           container.removeItem(child);
+        if (container is IVisualElementContainer)
+           IVisualElementContainer(container).removeElement(child);
         else
            container.removeChild(child);
     }

     private function addChildAt(container:*, child:*, index:int):void
     {
-        if (container is Group)
-           container.addItemAt(child, index);
+        if (container is IVisualElementContainer)
+           IVisualElementContainer(container).addElementAt(child, index);
         else
            container.addChildAt(child, index);
     }

     private function getChildIndex(container:*, child:*):int
     {
-        if (container is Group)
-           return container.getItemIndex(child);
+        if (container is IVisualElementContainer)
+           return IVisualElementContainer(container).getElementIndex(child);
         else
            return container.getChildIndex(child);
     }


Transferred from the Adobe Open Source Subversion Repository

Revision: 7170
Author:   smgilson@adobe.com
Date:     2009-05-21T13:05:27.223044Z

Log Message:
-----------
ASDoc edits for DDList

QE Notes: None
Doc Notes: None
Bugs: -
Checkintests: passed

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/DropDownList.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/skins/default/DropDownListButtonSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/supportClasses/DropDownController.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/Button.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/skins/default/DropDownListSkin.mxml</path>

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

--- frameworks/projects/spark/src/spark/components/supportClasses/DropDownController.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/DropDownController.as
@@ -30,11 +30,13 @@
 import spark.events.DropDownEvent;

 /**
- *  DropDownController handles the mouse, keyboard, and focus
- *  interactions for an anchor button and its dropDown. This helper class
- *  should be used by other dropDown components to handle the opening
- *  and closing of the dropDown due to user interactions.
- *
+ *  The DropDownController class handles the mouse, keyboard, and focus
+ *  interactions for an anchor button and its associated drop down.
+ *  This class is used by the drop-down components, such as DropDownList,
+ *  to handle the opening and closing of the drop down due to user interactions.
+ *
+ *  @see spark.components.DropDownList
+ *
  *  @langversion 3.0
  *  @playerversion Flash 10
  *  @playerversion AIR 1.5
@@ -42,91 +44,92 @@
  */
 public class DropDownController extends EventDispatcher
 {
-	/**
-	 *  Constructor
-	 *
-	 *  @langversion 3.0
-     *  @playerversion Flash 10
-     *  @playerversion AIR 1.5
-     *  @productversion Flex 4
-	 */
-	public function DropDownController()
-	{
-		super();
-	}
-
-	//--------------------------------------------------------------------------
+    /**
+     *  Constructor.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
+     */
+    public function DropDownController()
+    {
+        super();
+    }
+
+    //--------------------------------------------------------------------------
     //
     //  Properties
     //
     //--------------------------------------------------------------------------
-
-	//----------------------------------
+
+    //----------------------------------
     //  openButton
     //----------------------------------
-
-	private var _openButton:ButtonBase;
-
-	/**
-     *  Reference to the openButton skin part of the dropDown component.
+
+    private var _openButton:ButtonBase;
+
+    /**
+     *  A reference to the openButton skin part
+     *  of the drop-down component.
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
      *  @playerversion AIR 1.5
      *  @productversion Flex 4
      */
-	public function set openButton(value:ButtonBase):void
-	{
-		if (_openButton === value)
-			return;
-
-		removeOpenTriggers();
-
-		_openButton = value;
-
+    public function set openButton(value:ButtonBase):void
+    {
+        if (_openButton === value)
+            return;
+
+        removeOpenTriggers();
+
+        _openButton = value;
+
         addOpenTriggers();
-
-	}
-
-	/**
-     *  @private
-     */
-	public function get openButton():ButtonBase
-	{
-		return _openButton;
-	}
-
-	//----------------------------------
+
+    }
+
+    /**
+     *  @private
+     */
+    public function get openButton():ButtonBase
+    {
+        return _openButton;
+    }
+
+    //----------------------------------
     //  dropDown
     //----------------------------------
-
-	private var _dropDown:DisplayObject;
-
-	/**
-     *  @private
-     *
-     *  @langversion 3.0
-     *  @playerversion Flash 10
-     *  @playerversion AIR 1.5
-     *  @productversion Flex 4
-     */
-	public function set dropDown(value:DisplayObject):void
-	{
-		if (_dropDown === value)
-			return;
-
-		_dropDown = value;
-	}
-
-	/**
-     *  @private
-     */
-	public function get dropDown():DisplayObject
-	{
-		return _dropDown;
-	}
-
-	//----------------------------------
+
+    private var _dropDown:DisplayObject;
+
+    /**
+     *  @private
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
+     */
+    public function set dropDown(value:DisplayObject):void
+    {
+        if (_dropDown === value)
+            return;
+
+        _dropDown = value;
+    }
+
+    /**
+     *  @private
+     */
+    public function get dropDown():DisplayObject
+    {
+        return _dropDown;
+    }
+
+    //----------------------------------
     //  isOpen
     //----------------------------------

@@ -136,7 +139,7 @@
     private var _isOpen:Boolean = false;

     /**
-     *  Whether the dropDown is open or not.
+     *  Contains true if the drop down is open.
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
@@ -145,9 +148,9 @@
      */
     public function get isOpen():Boolean
     {
-    	return _isOpen;
-    }
-
+        return _isOpen;
+    }
+
     //----------------------------------
     //  rolloverOpenDelay
     //----------------------------------
@@ -156,11 +159,11 @@
     private var rollOverOpenDelayTimer:Timer;

     /**
-     *  If set, this is the delay to wait for opening the drop down
-     *  when the openButton is rolled over.  If set to NaN, then the drop
-     *  down will open on click, not rollover.
-     *
-     *  @default Number.NaN
+     *  Specifies the delay, in milliseconds, to wait for opening the drop down
+     *  when the anchor button is rolled over.
+     *  If set to NaN, then the drop down opens on a click, not a rollover.
+     *
+     *  @default NaN
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
@@ -186,14 +189,14 @@

         addOpenTriggers();
     }
-
-	//--------------------------------------------------------------------------
+
+    //--------------------------------------------------------------------------
     //
     //  Methods
     //
     //--------------------------------------------------------------------------

-	/**
+    /**
      *  @private
      *  Adds event triggers to the openButton to open the popup.
      *
@@ -245,8 +248,8 @@
             if (isNaN(rollOverOpenDelay))
             {
                 openButton.systemManager.getSandboxRoot().addEventListener(MouseEvent.MOUSE_DOWN, systemManager_mouseDownHandler);
-    			openButton.systemManager.getSandboxRoot().addEventListener(SandboxMouseEvent.MOUSE_DOWN_SOMEWHERE, systemManager_mouseDownHandler);
-    			openButton.systemManager.getSandboxRoot().addEventListener(Event.RESIZE, systemManager_resizeHandler, false, 0, true);
+                openButton.systemManager.getSandboxRoot().addEventListener(SandboxMouseEvent.MOUSE_DOWN_SOMEWHERE, systemManager_mouseDownHandler);
+                openButton.systemManager.getSandboxRoot().addEventListener(Event.RESIZE, systemManager_resizeHandler, false, 0, true);
             }
             else
             {
@@ -271,8 +274,8 @@
             if (isNaN(rollOverOpenDelay))
             {
                 openButton.systemManager.getSandboxRoot().removeEventListener(MouseEvent.MOUSE_DOWN, systemManager_mouseDownHandler);
-    			openButton.systemManager.getSandboxRoot().removeEventListener(SandboxMouseEvent.MOUSE_DOWN_SOMEWHERE, systemManager_mouseDownHandler);
-    			openButton.systemManager.getSandboxRoot().removeEventListener(Event.RESIZE, systemManager_resizeHandler, false);
+                openButton.systemManager.getSandboxRoot().removeEventListener(SandboxMouseEvent.MOUSE_DOWN_SOMEWHERE, systemManager_mouseDownHandler);
+                openButton.systemManager.getSandboxRoot().removeEventListener(Event.RESIZE, systemManager_resizeHandler, false);
             }
             else
             {
@@ -283,8 +286,8 @@
         }
     }

-	/**
-     *  Opens the dropDown and dispatches a DropdownEvent.OPEN event.
+    /**
+     *  Open the drop down and dispatch a DropdownEvent.OPEN event.
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
@@ -293,22 +296,22 @@
      */
     public function openDropDown():void
     {
-    	if (!isOpen)
-    	{
-    	    addCloseTriggers();
-
-    		_isOpen = true;
-    		openButton.mx_internal::keepDown = true; // Force the button to stay in the down state
-
-    		dispatchEvent(new DropDownEvent(DropDownEvent.OPEN));
-    	}
-    }
-
-    /**
-     *  Closes the dropDown and dispatches a DropDownEvent.CLOSE event.
+        if (!isOpen)
+        {
+            addCloseTriggers();
+
+            _isOpen = true;
+            openButton.mx_internal::keepDown = true; // Force the button to stay in the down state
+
+            dispatchEvent(new DropDownEvent(DropDownEvent.OPEN));
+        }
+    }
+
+    /**
+     *  Close the drop down and dispatch a DropDownEvent.CLOSE event.
      *
-     *  @param commit Flag indicating if the component should commit the selected
-     *  data from the dropDown.
+     *  @param commit If true, commit the selected
+     *  data item.
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
@@ -317,37 +320,38 @@
      */
     public function closeDropDown(commit:Boolean):void
     {
-    	if (isOpen)
-    	{
-			_isOpen = false;
-			openButton.mx_internal::keepDown = false;
-
-        	var dde:DropDownEvent = new DropDownEvent(DropDownEvent.CLOSE, false, true);
-
-        	if (!commit)
-        		dde.preventDefault();
-
-        	dispatchEvent(dde);
-
-        	removeCloseTriggers();
-    	}
-    }
-
+        if (isOpen)
+        {
+            _isOpen = false;
+            openButton.mx_internal::keepDown = false;
+
+            var dde:DropDownEvent = new DropDownEvent(DropDownEvent.CLOSE, false, true);
+
+            if (!commit)
+                dde.preventDefault();
+
+            dispatchEvent(dde);
+
+            removeCloseTriggers();
+        }
+    }
+
     //--------------------------------------------------------------------------
     //
     //  Event handling
     //
     //--------------------------------------------------------------------------

-	 /**
- 	 *  Called when the buttonDown event is dispatched. This function opens or closes
- 	 *  the dropDown depending upon the dropDown state.
- 	 *
- 	 *  @langversion 3.0
- 	 *  @playerversion Flash 10
- 	 *  @playerversion AIR 1.5
- 	 *  @productversion Flex 4
- 	 */
+     /**
+     *  @private
+     *  Called when the buttonDown event is dispatched. This function opens or closes
+     *  the dropDown depending upon the dropDown state.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
+     */
     protected function openButton_buttonDownHandler(event:Event):void
     {
         if (isOpen)
@@ -355,8 +359,9 @@
         else
             openDropDown();
     }
-
-	/**
+
+    /**
+     *  @private
      *  Called when the openButton's rollOver event is dispatched. This function opens
      *  the dropDown, or opens the drop down after the rollOverOpenDelay.
      *
@@ -406,8 +411,9 @@

          openDropDown();
      }
-
-	/**
+
+    /**
+     *  @private
      *  Called when the systemManager receives a mouseDown event. This closes
      *  the dropDown if the target is outside of the dropDown.
      *
@@ -418,17 +424,18 @@
      */
     protected function systemManager_mouseDownHandler(event:Event):void
     {
-    	if (!dropDown ||
-    		(dropDown &&
-    		 (event.target == dropDown
-    		 || (dropDown is DisplayObjectContainer &&
-    		 	 !DisplayObjectContainer(dropDown).contains(DisplayObject(event.target))))))
-    	{
-    		closeDropDown(true);
-    	}
-    }
-
-    /**
+        if (!dropDown ||
+            (dropDown &&
+             (event.target == dropDown
+             || (dropDown is DisplayObjectContainer &&
+                 !DisplayObjectContainer(dropDown).contains(DisplayObject(event.target))))))
+        {
+            closeDropDown(true);
+        }
+    }
+
+    /**
+     *  @private
      *  Called when the dropdown is popped up from a rollover and the mouse moves
      *  anywhere on the screen.  If the mouse moves over the openButton or the dropdown,
      *  the popup will stay open.  Otherwise, the popup will close.
@@ -472,6 +479,7 @@
     }

     /**
+     *  @private
      *  Close the dropDown if the stage has been resized.
      *
      *  @langversion 3.0
@@ -481,11 +489,13 @@
      */
     protected function systemManager_resizeHandler(event:Event):void
     {
-    	closeDropDown(true);
-    }
-
-    /**
-     *  Closes the dropDown if focus it is no longer in focus.
+        closeDropDown(true);
+    }
+
+    /**
+     *  Close the drop down if it is no longer in focus.
+     *
+     *  @param event The event object for the FOCUS_OUT event.
      *
      *  @langversion 3.0
      *  @playerversion Flash 10
@@ -504,8 +514,8 @@
             // If focus is moving outside the dropdown...
             if (!event.relatedObject ||
                 (!dropDown ||
-                	(dropDown is DisplayObjectContainer &&
-                	 !DisplayObjectContainer(dropDown).contains(event.relatedObject))))
+                    (dropDown is DisplayObjectContainer &&
+                     !DisplayObjectContainer(dropDown).contains(event.relatedObject))))
             {
                 // Close the dropdown.
                 closeDropDown(true);
@@ -514,18 +524,20 @@
     }

     /**
-	 *  Handles the keyboard user interactions.
-	 *
-	 *  @return Returns true if the keyCode was
-	 *  recognized and handled.
-	 *
+     *  Handles the keyboard user interactions.
+     *
+     *  @param event The event object from the keyboard event.
+     *
+     *  @return Returns true if the keyCode was
+     *  recognized and handled.
+     *
      *  @langversion 3.0
      *  @playerversion Flash 10
      *  @playerversion AIR 1.5
      *  @productversion Flex 4
-	 */
-	public function processKeyDown(event:KeyboardEvent):Boolean
-	{
+     */
+    public function processKeyDown(event:KeyboardEvent):Boolean
+    {

         if (event.ctrlKey && event.keyCode == Keyboard.DOWN)
         {
@@ -557,11 +569,11 @@
         }
         else
         {
-        	return false;
-        }
-
-        return true;
-	}
-
+            return false;
+        }
+
+        return true;
+    }
+
 }
 }


Transferred from the Adobe Open Source Subversion Repository

Revision: 10140
Author:   jszeto@adobe.com
Date:     2009-09-11T00:29:24.552855Z

Log Message:
-----------
DropDownList mouseWheel and arrow navigation bug fixes

http://bugs.adobe.com/jira/browse/SDK-22604 - awkward mouse wheel behavior on Spark DropDownList

Added code to DropDownController to close the dropDown on a mouseWheel scroll unless the mouseWheel scrolling occurred over the dropDown and the dropDown handled the event. For example, if an opened dropDown had a Scroller and the user uses the mouseWheel scroller while over the dropDown, the list should scroll and the dropDown should remain open. But if the user scrolls outside of the dropDown, then the controller should close the dropDown.

Also discovered that using the keyboard navigation keys was changing the dropDown selection and scrolling the DropDownList's parent container. The fix is to call event.preventDefault if we have handled the navigation key event.

QE notes: None
Doc notes: None
Bugs: SDK-22604
Reviewer: Hans
Tests run: DropDownList
Is noteworthy for integration: No

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

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

--- frameworks/projects/spark/src/spark/components/supportClasses/DropDownController.as
+++ frameworks/projects/spark/src/spark/components/supportClasses/DropDownController.as
@@ -257,6 +257,8 @@
                 openButton.systemManager.getSandboxRoot().addEventListener(SandboxMouseEvent.MOUSE_MOVE_SOMEWHERE, systemManager_mouseMoveHandler);
                 openButton.systemManager.getSandboxRoot().addEventListener(Event.RESIZE, systemManager_resizeHandler, false, 0, true);
             }
+
+            openButton.systemManager.getSandboxRoot().addEventListener(MouseEvent.MOUSE_WHEEL, systemManager_mouseWheelHandler);
         }
     }

@@ -282,6 +284,8 @@
                 openButton.systemManager.getSandboxRoot().removeEventListener(SandboxMouseEvent.MOUSE_MOVE_SOMEWHERE, systemManager_mouseMoveHandler);
                 openButton.systemManager.getSandboxRoot().removeEventListener(Event.RESIZE, systemManager_resizeHandler);
             }
+
+            openButton.systemManager.getSandboxRoot().removeEventListener(MouseEvent.MOUSE_WHEEL, systemManager_mouseWheelHandler);
         }
     }

@@ -504,6 +508,17 @@
     }

     /**
+     *  @private
+     *  Called when the mouseWheel is used
+     */
+    private function systemManager_mouseWheelHandler(event:MouseEvent):void
+    {
+        // Close the dropDown unless we scrolled over the dropdown and the dropdown handled the event
+        if (!(DisplayObjectContainer(dropDown).contains(DisplayObject(event.target)) && event.isDefaultPrevented()))
+            closeDropDown(false);
+    }
+
+    /**
      *  Close the drop down if it is no longer in focus.
      *
      *  @param event The event object for the FOCUS_OUT event.


Update Alert.as

Update Alert.as

This typo causes an error when assigning a skinClass at runtime. This is my first time using git. Forgive me if I have done this incorrectly.

--- frameworks/projects/experimental/src/spark/components/Alert.as
+++ frameworks/projects/experimental/src/spark/components/Alert.as
@@ -640,7 +640,7 @@
         }

         override protected function partRemoved(partName:String, instance:Object):void {
-            super.partAdded(partName, instance);
+            super.partRemoved(partName, instance);
             if (partName == "buttonGroup") {
                 destroyButtons(Group(instance));
             }


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

--- frameworks/projects/framework/src/mx/core/IDeferredInstance.as
+++ frameworks/projects/framework/src/mx/core/IDeferredInstance.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: 4927
Author:   dloverin@adobe.com
Date:     2009-02-11T13:03:26.271104Z

Log Message:
-----------
Fix RTE when a sub-application displays an alert.

QE Notes: Regression introduced in revision 4866, in the trunk.
Doc Notes: None
Bugs: SDK-19228
Reviewer: Hans, Alex
tests: checkintests

Modified Paths:
--------------
/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/SystemManager.as

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

--- frameworks/projects/framework/src/mx/managers/SystemManager.as
+++ frameworks/projects/framework/src/mx/managers/SystemManager.as
@@ -289,10 +289,6 @@
 			compiledLocales[0] :
 			"en_US";

-        // This listener is intended to run before any other KeyboardEvent listeners
-        // so that it can redispatch a cancelable=true copy of the event.
-        addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler, true, 1000);
-
 		executeCallbacks();

 		// Make sure to stop the playhead on the current frame.
@@ -2937,6 +2933,10 @@
 			addEventListener(SWFBridgeRequest.HIDE_MOUSE_CURSOR_REQUEST, hideMouseCursorRequestHandler);
 			addEventListener(SWFBridgeRequest.SHOW_MOUSE_CURSOR_REQUEST, showMouseCursorRequestHandler);
 			addEventListener(SWFBridgeRequest.RESET_MOUSE_CURSOR_REQUEST, resetMouseCursorRequestHandler);
+
+            // This listener is intended to run before any other KeyboardEvent listeners
+            // so that it can redispatch a cancelable=true copy of the event.
+            addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler, true, 1000);
 		}

 	    var docFrame:int = (totalFrames == 1)? 0 : 1;


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

--- frameworks/projects/framework/src/mx/managers/SystemManager.as
+++ frameworks/projects/framework/src/mx/managers/SystemManager.as
@@ -1,3 +1,13 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  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.managers
 {


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

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

 package mx.controls.sliderClasses
 {


Transferred from the Adobe Open Source Subversion Repository

Revision: 18323
Author:   smgilson@adobe.com
Date:     2010-10-26T17:50:12.524532Z

Log Message:
-----------
Fix invalid HTML in ASDoc comments for the [DiscouragedForProfile] metadata tag

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

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/NumericStepper.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/ComboBox.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/VSlider.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/TitleWindow.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/ToggleButton.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/Spinner.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/BorderContainer.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/FormHeading.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/VideoPlayer.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/DropDownList.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/controls/ProgressBar.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/controls/ToolTip.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/HSlider.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/TabBar.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/VideoDisplay.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/ButtonBarButton.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/Panel.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/ButtonBar.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/Form.as</path>

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

--- frameworks/projects/spark/src/spark/components/VideoDisplay.as
+++ frameworks/projects/spark/src/spark/components/VideoDisplay.as
@@ -154,7 +154,7 @@
  * Because this component does not define a skin for the mobile theme, Adobe
  * recommends that you not use it in a mobile application. Alternatively, you
  * can define your own mobile skin for the component. For more information,
- * see Spark Skinning.
+ * see Spark Skinning.
  */
 [DiscouragedForProfile("mobileDevice")]

@@ -281,8 +281,8 @@
                 = (intrinsicWidth || availableWidth)
                 / (intrinsicHeight || availableHeight);

-                if 	(	(scaleMode == ScaleMode.ZOOM && componentRatio < availableRatio)
-                    ||	(scaleMode == ScaleMode.LETTERBOX && componentRatio > availableRatio)
+                if  (   (scaleMode == ScaleMode.ZOOM && componentRatio < availableRatio)
+                    ||  (scaleMode == ScaleMode.LETTERBOX && componentRatio > availableRatio)
                 )
                 {
                     result
@@ -315,8 +315,8 @@

                 result
                 = new Point
-                ( intrinsicWidth	|| availableWidth
-                    , intrinsicHeight	|| availableHeight
+                ( intrinsicWidth    || availableWidth
+                    , intrinsicHeight   || availableHeight
                 );

                 break;
@@ -1689,12 +1689,12 @@
                 layout.percentWidth = 100;
                 layout.percentHeight = 100;
                 videoElement.addMetadata(LayoutMetadata.LAYOUT_NAMESPACE, layout);
-            }
+            }

             if (videoElement && !videoContainer.containsMediaElement(videoElement) )
             {
                 videoContainer.addMediaElement(videoElement);
-            }
+            }
         }
         else
         {


very little-little fix

very little-little fix

--- HLSPlugin/src/org/denivip/osmf/net/httpstreaming/hls/HTTPStreamingHLSIndexHandler.as
+++ HLSPlugin/src/org/denivip/osmf/net/httpstreaming/hls/HTTPStreamingHLSIndexHandler.as
@@ -432,7 +432,7 @@
 			);
 		}

-		private var _prevChunkIndex:int;
+		private var _prevChunkIndex:int = -1;
 		CONFIG::LOGGING
 		{
 			protected var logger:Logger = Log.getLogger("org.denivip.osmf.plugins.hls.HTTPStreamingM3U8IndexHandler") as Logger;