re-fix FLEX-34644.  Wasn't handling scrolling correctly

--- frameworks/projects/spark/src/spark/components/Grid.as
+++ frameworks/projects/spark/src/spark/components/Grid.as
@@ -5925,6 +5925,7 @@
         }
     }

+
     /**
      *  @private
      *  Renders a background for the container, if necessary.  It is used to fill in
@@ -5935,7 +5936,8 @@
      *
      *  This is mostly copied from GroupBase, but always chooses the virtualLayout path.  The Grid's
      *  layout has useVirtualLayout=false but the Grid's GridView always has useVirtualLayout=true
-     *  which causes the GroupBase logic to go down the wrong path.
+     *  which causes the GroupBase logic to go down the wrong path.  It also always positions at 0,0
+     *  because the grid itself doesn't scroll, it scrols the layers
      */
     override mx_internal function drawBackground():void
     {
@@ -5951,7 +5953,7 @@
         graphics.clear();
         graphics.beginFill(0xFFFFFF, 0);

-        graphics.drawRect(horizontalScrollPosition, verticalScrollPosition, w, h);
+        graphics.drawRect(0, 0, w, h);

         graphics.endFill();
     }


Transferred from the Adobe Open Source Subversion Repository

Revision: 6174
Author:   jszeto@adobe.com
Date:     2009-04-20T23:35:57.095896Z

Log Message:
-----------
Updated ASDoc comments for DropDownList.

- Updated comments in DropDownController and DropDownList
- Localized error messages for DropDownList

SDK-19874  Setting selectedIndex on Spark DropDownList control doesnt auto-scroll dropdown

Call ensureIndexIsVisible when opening the dropDown.

QE Notes:
Doc Notes: ASDoc comments need review
Bugs: SDK-19874
Reviewer: Deepa

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/bundles/en_US/components.properties</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/flex4/src/spark/components/supportClasses/DropDownController.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/spark/components/List.as</path>

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

--- frameworks/projects/spark/src/spark/components/List.as
+++ frameworks/projects/spark/src/spark/components/List.as
@@ -562,7 +562,7 @@
      *
      *  In the future, this method may animate the scroll.
      */
-    private function ensureIndexIsVisible(index:int):void
+    protected function ensureIndexIsVisible(index:int):void
     {
         if (!layout)
             return;


Change 20090305-bargull-qXd by bargull@dell--p4--2-53 on 2009-03-05 13:33:31
    in /home/Admin/src/svn/openlaszlo/trunk
    for http://svn.openlaszlo.org/openlaszlo/trunk

Summary: cachebitmap blocks mouse-events

New Features:

Bugs Fixed: LPP-7864 (partial) (SWF: cachebitmap interferes with mouse-events)

Technical Reviewer: max
QA Reviewer: (pending)
Doc Reviewer: (pending)

Documentation:

Release Notes:

Details:
Use the same workaround which is used for context-menus:
-> add an invisible background when a sprite is clickable and cacheAsBitmap is enabled
Refactored "invisible background" code from setContextMenu() into separate method updateBackground().
Update setDefaultContextMenu() to prevent null-ptr exception when setDefaultContextMenu(null) is called.

Tests:
testcase at bugreport in swf9
testcase from LPP-7842 still works in swf9

git-svn-id: d62bde4b5aa582fdf07c8d403e53e0399a7ed285@13217 fa20e4f9-1d0a-0410-b5f3-dc9c16b8b17c

--- WEB-INF/lps/lfc/kernel/swf9/LzSprite.as
+++ WEB-INF/lps/lfc/kernel/swf9/LzSprite.as
@@ -733,6 +733,7 @@
           this.clickable = c;
           this.buttonMode = c;
           this.tabEnabled = false;
+          this.updateBackground();
           var cb:SimpleButton = this.clickbutton;
           //trace('sprite setClickable' , c, 'cb',cb);
           if (this.clickable) {
@@ -932,7 +933,7 @@
       */
       public function setBGColor( c:* ):void {
           if (this.bgcolor == c && ! this.__bgcolorhidden) return;
-          if (c != null || this.__contextmenu == null) {
+          if (! (c == null && this.isBkgndRequired)) {
               this.__bgcolorhidden = false;
               this.bgcolor = c;
           } else {
@@ -1369,6 +1370,7 @@

       public function setBitmapCache(cache) {
           this.cacheAsBitmap = cache;
+          this.updateBackground();
       }

       /**
@@ -1379,53 +1381,55 @@
            return parent.getChildIndex(this);
       }

-      var __contextmenu;
+      var __contextmenu:LzContextMenu;
       var __bgcolorhidden:Boolean = false;
+
+      function get isBkgndRequired () :Boolean {
+          // background is required for:
+          // - LPP-7842 (SWF9: context-menu not shown for view without bgcolor/content)
+          // - LPP-7864 (SWF: cachebitmap interferes with mouse-events)
+          return this.__contextmenu != null || (this.clickable && this.cacheAsBitmap);
+      }
+
+      function updateBackground () :void {
+          if (this.__bgcolorhidden && ! this.isBkgndRequired) {
+              // remove invisible background
+              this.__bgcolorhidden = false;
+              this.bgcolor = null;
+              this.draw();
+          } else if (this.bgcolor == null && this.isBkgndRequired) {
+              // create an invisible background
+              this.__bgcolorhidden = true;
+              this.bgcolor = 0xffffff;
+              this.draw();
+          }
+      }

       /* LzSprite.setContextMenu
        * Install menu items for the right-mouse-button
        * @param LzContextMenu cmenu: LzContextMenu to install on this view
        */
-      function setContextMenu ( lzmenu ){
+      function setContextMenu (lzmenu:LzContextMenu) :void {
           this.__contextmenu = lzmenu;
-          if (lzmenu == null) {
-              if (this.__bgcolorhidden) {
-                  // remove invisible background
-                  this.__bgcolorhidden = false;
-                  this.bgcolor = null;
-                  this.draw();
-              }
-              this.contextMenu = null;
-          } else {
-              // TODO [hqm 2008-04] make this do the more complex stuff that swf8 LzSprite does now,
-              // where it checks for a resource or bgcolor sprite, in order to make the clickable region
-              // match what the user expects.
-              if (this.bgcolor == null) {
-                  // if not present, create an invisible background
-                  this.__bgcolorhidden = true;
-                  this.bgcolor = 0xffffff;
-                  this.draw();
-              }
-
-              var cmenu:ContextMenu = lzmenu.kernel.__LZcontextMenu();
-              // "contextMenu" is a swf9 property on flash.display.Sprite
-              this.contextMenu = cmenu;
-          }
-      }
-
-      function setDefaultContextMenu ( cmenu ){
+          this.updateBackground();
+          // FIXME [anba 20090305] LPP-7847 (no context-menu for bitmap resource)
+          // "contextMenu" is a swf9 property on flash.display.Sprite
+          this.contextMenu = (lzmenu != null ? lzmenu.kernel.__LZcontextMenu() : null);
+      }
+
+      function setDefaultContextMenu (lzmenu:LzContextMenu) :void {
           // TODO [hqm 2008-11] In SWF8, we can set the contextMenu
           // property of MovieClip.prototype, which puts the menu on
           // every MovieClip by default. Not sure if there's any way
           // to do that in swf9.
-          LzSprite.prototype.contextMenu = cmenu.kernel.__LZcontextMenu();
+          LzSprite.prototype.contextMenu = (lzmenu != null ? lzmenu.kernel.__LZcontextMenu() : null);
       }

       /**
        * LzView.getContextMenu
        * Return the current context menu
        */
-      function getContextMenu() {
+      function getContextMenu() :LzContextMenu {
           return this.__contextmenu;
       }


Skip physics collisionshape reloading, which causes crash at the moment.

--- Bin/CoreData/Scripts/EditorScene.as
+++ Bin/CoreData/Scripts/EditorScene.as
@@ -157,6 +157,11 @@
     uint numResources = sceneResources.size();
     for (uint i = 0; i < numResources; ++i)
     {
+        // For now, skip physics for safety
+        // (Rigidbodies would need to be informed of the ODE collisionshape being blown away from under their feet)
+        if (sceneResources[i].getTypeName() == "CollisionShape")
+            continue;
+
         // Material textures are not listed by getResourceRefs(), so have to handle them manually
         Material@ mat = cast<Material>(sceneResources[i]);
         if (mat !is null)


fix Mesh.computedVisibility getter to combine frustum culling and parent/self computed visibility properly using super.computedVisibility (github issue #77)

--- src/aerys/minko/scene/node/Mesh.as
+++ src/aerys/minko/scene/node/Mesh.as
@@ -161,7 +161,9 @@

         override public function get computedVisibility() : Boolean
         {
-            return scene ? _visibility.computedVisibility : super.computedVisibility;
+            return scene
+				? super.computedVisibility && _visibility.computedVisibility
+				: super.computedVisibility;
         }

 		public function get frustumCulling() : uint


added renderChild method to render phase

--- src/as3isolib/core/IsoContainer.as
+++ src/as3isolib/core/IsoContainer.as
@@ -260,7 +260,7 @@
 			{
 				var child:IIsoContainer;
 				for each (child in children)
-					child.render(recursive);
+					renderChild(child);
 			}
 		}

@@ -270,6 +270,11 @@
 		protected function postRenderLogic ():void
 		{
 			dispatchEvent(new IsoEvent(IsoEvent.RENDER_COMPLETE));
+		}
+
+		protected function renderChild (child:IIsoContainer):void
+		{
+			child.render(true);
 		}

 		////////////////////////////////////////////////////////////////////////


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

--- frameworks/projects/framework/src/mx/managers/marshalClasses/PopUpManagerMarshalMixin.as
+++ frameworks/projects/framework/src/mx/managers/marshalClasses/PopUpManagerMarshalMixin.as
@@ -1,11 +1,19 @@
 ////////////////////////////////////////////////////////////////////////////////
 //
-//  ADOBE SYSTEMS INCORPORATED
-//  Copyright 2005-2006 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.
 //
 ////////////////////////////////////////////////////////////////////////////////


- change: LabelButton now uses the CSS property change list to derive which values it has to propagate to the contained label
- change: Added text-decoration to the set of properties that LabelButton propagates to the contained label

git-svn-id: e38e7cdd6ace00d8230583a2d3b43e9a55f5c011@774 bc4816be-ef27-423a-9c4d-fc420be121a2

--- src/reprise/controls/LabelButton.as
+++ src/reprise/controls/LabelButton.as
@@ -11,6 +11,8 @@

 package reprise.controls
 {
+	import reprise.css.CSSPropertiesChangeList;
+
 	import flash.events.MouseEvent;

 	/**
@@ -29,8 +31,6 @@
 		protected var m_labelDisplay : Label;
 		protected var m_label : String = '';

-		protected var m_lastStyles : Object;
-

 		/***************************************************************************
 		*							public methods								   *
@@ -85,16 +85,19 @@
 		protected override function applyStyles() : void
 		{
 			super.applyStyles();
-			var oldStyles : Object = m_lastStyles || {};
-			if (m_currentStyles.selectable != oldStyles.selectable)
+
+			if (m_changedStyleProperties['selectable'])
 			{
 				m_labelDisplay.setStyle('selectable', String(m_currentStyles.selectable));
 			}
-			if (m_currentStyles.cursor != oldStyles.cursor)
+			if (m_changedStyleProperties['cursor'])
 			{
 				m_labelDisplay.setStyle('cursor', m_currentStyles.cursor);
 			}
-			m_lastStyles = m_currentStyles;
+			if (m_changedStyleProperties['textDecoration'])
+			{
+				m_labelDisplay.setStyle('textDecoration', m_currentStyles.textDecoration);
+			}
 		}

 		protected override function buttonDisplay_click(event : MouseEvent) : void


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

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

 package mx.automation.delegates.controls
 {


Try a different way of assessing the plainness of an object that doesn't rely on describeType(). This could potentially break games and such in somewhat non-obvious ways. I've tested a number of things locally but the next step is www.dev.whirled.com.

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

--- src/as/com/threerings/util/Util.as
+++ src/as/com/threerings/util/Util.as
@@ -22,8 +22,7 @@
 package com.threerings.util {

 import flash.utils.ByteArray;
-
-import flash.utils.describeType; // function import
+import flash.utils.getQualifiedClassName;

 public class Util
 {
@@ -65,7 +64,7 @@
      */
     public static function isPlainObject (obj :Object) :Boolean
     {
-        return (obj != null) && ("Object" == describeType(obj).@name.toString());
+        return getQualifiedClassName(obj) == "Object";
     }

     /**


Moved the mouseChildren false setting in Label to setTextFieldProperties function, fixes bug in extending TextInput class

--- src/org/openPyro/controls/Label.as
+++ src/org/openPyro/controls/Label.as
@@ -18,7 +18,6 @@

 		override protected function createChildren():void{
 			_textField = new TextField();
-			this.mouseChildren = false;
 			setTextFieldProperties()
 			addChild(_textField);
 			if(!_format){
@@ -32,8 +31,8 @@

 		protected function setTextFieldProperties():void{
 			_textField.selectable = false;
-			//_textField.border = true;
-            _textField.embedFonts = _embedFonts;
+			this.mouseChildren = false;
+			_textField.embedFonts = _embedFonts;
 		}

 		/**


renamed several helpers to helper_for, in order to remove potential confusion

--- vendor/ras3r/ras3r/ReactionView.as
+++ vendor/ras3r/ras3r/ReactionView.as
@@ -132,9 +132,9 @@
 			return button;
 		}

-		protected function combo_box (object_name:String, property:String, attributes:Object = null, styles:Object = null) :ComboBox
-		{
-			return (instance_sprite(ComboBox, 'dataProvider', object_name, property, attributes, styles) as ComboBox);
+		protected function combo_box_for (object_name:String, property:String, attributes:Object = null, styles:Object = null) :ComboBox
+		{
+			return (sprite_for(ComboBox, 'dataProvider', object_name, property, attributes, styles) as ComboBox);
 		}

 		// horizontal layout helper:
@@ -144,41 +144,19 @@
 			return box.apply(null, args);
 		}

-		protected function image (object_name:String, property:String, attributes:Object = null, styles:Object = null) :Image
-		{
-			return (instance_sprite(Image, 'source', object_name, property, attributes, styles) as Image);
-		}
-
-		protected function instance_sprite (name:*, assign_property:String, object_name:String, object_property:String, attributes:Object = null, styles:Object = null) :DisplayObject
-		{
-			// infer default instance id, but allow for manual override
-			attributes = new Hash({ id: (object_name + '_' + object_property) }).update(attributes);
-			// assignment via attributes hash
-			try
-			{
-				attributes[assign_property] = this[object_name][object_property];
-				//instance[assign_property] = this[object_name][object_property];
-			}
-			catch (exception:*)
-			{
-				// do nothing, just a sand trap
-				// to debug:
-				// Logger.info('ReactionView#instance_sprite exception: ' + exception);
-			}
-			// instantiation
-			var instance:* = sprite(name, attributes, styles);
-			// return
-			return instance;
-		}
-
-		protected function label (object_name:String, property:String, html:String, attributes:Object = null, styles:Object = null) :TextField
+		protected function image_for (object_name:String, property:String, attributes:Object = null, styles:Object = null) :Image
+		{
+			return (sprite_for(Image, 'source', object_name, property, attributes, styles) as Image);
+		}
+
+		protected function label_for (object_name:String, property:String, html:String, attributes:Object = null, styles:Object = null) :Text
 		{
 			// infer default instance id, but allow for manual override
 			attributes = new Hash({
 				id: 		(object_name + '_' + property + '_label'),
 				htmlText:	html
 			}).update(attributes);
-			return (sprite(TextField, attributes, styles) as TextField);
+			return (sprite(Text, attributes, styles) as Text);
 		}

 		// elem: Object. Visual element for whom the handler is being wired
@@ -265,14 +243,33 @@
 			return addChild(sprite);
 		}

-		protected function text_field (object_name:String, property:String, attributes:Object = null, styles:Object = null) :TextField
-		{
-			return (instance_sprite(TextField, 'htmlText', object_name, property, attributes, styles) as TextField);
-		}
-
-		protected function text_input (object_name:String, property:String, attributes:Object = null, styles:Object = null) :TextInput
-		{
-			return (instance_sprite(TextInput, 'text', object_name, property, attributes, styles) as TextInput);
+		protected function sprite_for (name:*, assign_property:String, object_name:String, object_property:String, attributes:Object = null, styles:Object = null) :DisplayObject
+		{
+			// infer default instance id, but allow for manual override
+			attributes = new Hash({ id: (object_name + '_' + object_property) }).update(attributes);
+			// assignment via attributes hash
+			try
+			{
+				attributes[assign_property] = this[object_name][object_property];
+			}
+			catch (exception:*)
+			{
+				// do nothing, just a sand trap
+				// to debug:
+				// Logger.info('ReactionView#sprite_for exception: ' + exception);
+			}
+
+			return sprite(name, attributes, styles);
+		}
+
+		protected function text_for (object_name:String, property:String, attributes:Object = null) :Text
+		{
+			return (sprite_for(Text, 'htmlText', object_name, property, attributes) as Text);
+		}
+
+		protected function text_input_for (object_name:String, property:String, attributes:Object = null, styles:Object = null) :TextInput
+		{
+			return (sprite_for(TextInput, 'text', object_name, property, attributes, styles) as TextInput);
 		}

 		protected function truncate (tf:TextField, suffix:String = '...') :void


rm console.time/timeEnd

rm console.time/timeEnd

--- src/org/hola/ZErr.as
+++ src/org/hola/ZErr.as
@@ -10,19 +10,5 @@
             ExternalInterface.call.apply(ExternalInterface,
                 ['console.log', msg].concat(rest))
         }
-
-        public static function time(label : String) : void {
-            CONFIG::LOGGING {
-            if (ZExternalInterface.avail())
-                ExternalInterface.call("console.time", label);
-            }
-        }
-
-        public static function timeEnd(label : String) : void {
-            CONFIG::LOGGING {
-            if (ZExternalInterface.avail())
-                ExternalInterface.call("console.timeEnd", label);
-            }
-        }
     }
 }


Fix jump animation bug.

Fix jump animation bug.


Fixed file selector button text.

Fixed file selector button text.

--- Bin/Data/Scripts/Editor/EditorUI.as
+++ Bin/Data/Scripts/Editor/EditorUI.as
@@ -237,7 +237,7 @@

         if (action == "Run script")
         {
-            CreateFileSelector("Run script", "Import", "Cancel", uiScriptPath, uiScriptFilter, 0);
+            CreateFileSelector("Run script", "Run", "Cancel", uiScriptPath, uiScriptFilter, 0);
             SubscribeToEvent(uiFileSelector, "FileSelected", "HandleRunScript");
         }


Prototype function which is fast but not yet perfect.

Change-Id: I68fd9faae6eb0eb7c8bb4666e505123363aea960

--- WeaveData/src/weave/utils/ComputationalGeometryUtils.as
+++ WeaveData/src/weave/utils/ComputationalGeometryUtils.as
@@ -20,11 +20,20 @@

 package weave.utils
 {
+	import flash.display.Bitmap;
+	import flash.display.BitmapData;
+	import flash.display.Graphics;
+	import flash.display.Shape;
+	import flash.geom.Matrix;
 	import flash.geom.Point;
+	import flash.utils.flash_proxy;

+	import mx.core.Application;
+	import mx.core.mx_internal;
 	import mx.utils.ObjectUtil;

 	import weave.api.primitives.IBounds2D;
+	import weave.core.StageUtils;
 	import weave.primitives.Bounds2D;

 	/**
@@ -228,8 +237,9 @@
 				return true;
 			a = polygon1[0];
 			return polygonOverlapsPoint(polygon2, a.x, a.y);
-		}
-
+
+		}
+
 		/**
 		 * polygonIntersectsLine
 		 * @param polygon An array of objects representing vertices, each having x and y properties.
@@ -280,6 +290,47 @@
 			return false;
 		}

+		private static const _tempShape:Shape = new Shape();
+		private static function polygonOverlapsPoint2(polygon:Object, x:Number, y:Number):Boolean
+		{
+			// render the polygon on the shape
+			var graphics:Graphics = _tempShape.graphics;
+			graphics.clear();
+			graphics.lineStyle(0, 0, 0, true);
+			graphics.beginFill(0, 1);
+			var numPoints:int = polygon.length;
+			var firstX:Number, firstY:Number;
+			for (var vIndex:int = 0; vIndex < numPoints; ++vIndex)
+			{
+				var vertex:Object = polygon[vIndex];
+				if (vIndex == 0)
+				{
+					firstX = vertex.x;
+					firstY = vertex.y;
+					graphics.moveTo(firstX, firstY);
+					continue;
+				}
+				graphics.lineTo(vertex.x, vertex.y);
+			}
+
+			graphics.lineTo(firstX, firstY);
+			graphics.endFill();
+			_tempMatrix.identity();
+			_tempMatrix.translate(180, 90);
+			//_tempMatrix.scale(4, -4);
+			_tempBitmap.bitmapData.fillRect(_tempBitmap.bitmapData.rect, 0x00000000);
+			_tempBitmap.bitmapData.draw(_tempShape, _tempMatrix);
+
+			x = (x + 180);
+			y = (y + 90);
+			var color:int = _tempBitmap.bitmapData.getPixel32(x, y);
+			if (color != 0x00000000)
+				return true;
+
+			return false;
+		}
+		private static const _tempBitmap:Bitmap = new Bitmap(new BitmapData(360, 180, true));
+		private static const _tempMatrix:Matrix = new Matrix();
 		/**
 		 * polygonOverlapsPoint
 		 * @param polygon An array of objects representing vertices, each having x and y properties.
@@ -291,6 +342,8 @@
 		{
 			if (polygon.length == 0)
 				return false;
+			//return polygonOverlapsPoint2(polygon, x, y);
+
 			var riCount:int = 0; // number of ray intersections
 			var riIndex:int; // ray intersection index
 			var segSide:int;


Transferred from the Adobe Open Source Subversion Repository

Revision: 23284
Author:   cframpto@adobe.com
Date:     2012-01-10T15:28:39.900752Z

Log Message:
-----------
Replace Macromedia copyright headers with Apache copyright headers.

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/apache/frameworks/projects/advancedgrids/data_management.css</path>
<path kind="file" action="M">/private/flex/sdk/branches/apache/frameworks/projects/charts/charts-3.0.0.css</path>
<path kind="file" action="M">/private/flex/sdk/branches/apache/frameworks/projects/charts/src/mx/charts/chartClasses/StackedSeries.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/apache/frameworks/projects/charts/charts.css</path>
<path kind="file" action="M">/private/flex/sdk/branches/apache/frameworks/projects/framework/src/mx/events/InvalidateRequestData.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/apache/frameworks/projects/rpc/src/mx/netmon/NetworkMonitor.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/apache/frameworks/projects/charts/MXCharts.css</path>
<path kind="file" action="M">/private/flex/sdk/branches/apache/frameworks/projects/charts/charts-4.X.0.css</path>
<path kind="file" action="M">/private/flex/sdk/branches/apache/frameworks/projects/advancedgrids/data_management-3.0.0.css</path>
<path kind="file" action="M">/private/flex/sdk/branches/apache/frameworks/projects/framework/src/mx/states/AddItems.as</path>

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

--- frameworks/projects/framework/src/mx/states/AddItems.as
+++ frameworks/projects/framework/src/mx/states/AddItems.as
@@ -1,9 +1,23 @@
 ////////////////////////////////////////////////////////////////////////////////
 //
-//  Copyright (C) 2003-2007 Adobe Systems Incorporated
-//  All Rights Reserved. The following is Source Code and is subject to all
-//  restrictions on such code as contained in the End User License Agreement
-//  accompanying this product.
+//  Licensed to the Apache Software Foundation (ASF) under one or more
+//  contributor license agreements.  See the NOTICE file distributed with
+//  this work for additional information regarding copyright ownership.
+//  The ASF licenses this file to You under the Apache License, Version 2.0
+//  (the "License"); you may not use this file except in compliance with
+//  the License.  You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+//  Unless required by applicable law or agreed to in writing, software
+//  distributed under the License is distributed on an "AS IS" BASIS,
+//  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+//  See the License for the specific language governing permissions and
+//  limitations under the License.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+////////////////////////////////////////////////////////////////////////////////
 //
 //  AdobePatentID="B770"
 //


add Mesh.insideFrustum and Mesh.computedVisibility properties

--- src/aerys/minko/scene/node/Mesh.as
+++ src/aerys/minko/scene/node/Mesh.as
@@ -8,8 +8,8 @@
 	import aerys.minko.type.Signal;
 	import aerys.minko.type.binding.DataBindings;
 	import aerys.minko.type.binding.DataProvider;
+	import aerys.minko.type.enum.DataProviderUsage;
 	import aerys.minko.type.enum.FrustumCulling;
-	import aerys.minko.type.enum.DataProviderUsage;
 	import aerys.minko.type.math.Ray;

 	use namespace minko_scene;
@@ -161,7 +161,22 @@
 		{
 			_visibility.visible = value;
 		}
-
+
+        /**
+         * Whether the mesh in inside the camera frustum or not.
+         * @return
+         *
+         */
+        public function get insideFrustum() : Boolean
+        {
+            return _visibility.insideFrustum;
+        }
+
+        public function get computedVisibility() : Boolean
+        {
+            return _visibility.computedVisibility;
+        }
+
 		public function get frustumCulling() : uint
 		{
 			return _visibility.frustumCulling;


#8 - Alphabetical order of speakers by surname

--- core/src/main/flex/org/dukecon/services/SpeakerService.as
+++ core/src/main/flex/org/dukecon/services/SpeakerService.as
@@ -21,13 +21,13 @@
         if(conference) {
             var speakers:ArrayCollection = conference.conference.speakers;

-            // Sort the locations by order.
-            var orderSortField:SortField = new SortField();
-            orderSortField.name = "name";
-            orderSortField.numeric = false;
-            var locationSort:Sort = new Sort();
-            locationSort.fields = [orderSortField];
-            speakers.sort = locationSort;
+            // Sort the speakers by last name.
+            var sortField:SortField = new SortField();
+            sortField.name = "lastname";
+            sortField.numeric = false;
+            var sort:Sort = new Sort();
+            sort.fields = [sortField];
+            speakers.sort = sort;
             speakers.refresh();

             return speakers;


AutomaticExporter: don't check Publisher.modified

Publisher.modified doesn't take into account FLA changes that don't make it into the SWF

--- exporter/src/main/as/flump/export/AutomaticExporter.as
+++ exporter/src/main/as/flump/export/AutomaticExporter.as
@@ -100,7 +100,9 @@
             var libs :Vector.<XflLibrary> = getLibs();
             // if we have one or more combined export format, publish them
             if (hasCombined) {
-                if (publisher.modified(libs)) {
+                // TODO: publisher.modified checks for SWF modifications, but ignores
+                // FLA modifications, which leads to false negatives.
+                if (true || publisher.modified(libs)) {
                     println("Exporting combined formats...");
                     var numPublished :int = publisher.publishCombined(libs);
                     if (numPublished == 0) {
@@ -116,7 +118,7 @@
             // now publish any appropriate single formats
             if (hasSingle) {
                 for each (var status :DocStatus in _statuses) {
-                    if (publisher.modified(new <XflLibrary>[status.lib], 0)) {
+                    if (true || publisher.modified(new <XflLibrary>[status.lib], 0)) {
                         println("Exporting '" + status.path + "'...");
                         numPublished = publisher.publishSingle(status.lib);
                         if (numPublished == 0) {


Added setMediaBytes().

Added setMediaBytes().

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

--- src/as/com/threerings/flash/MediaContainer.as
+++ src/as/com/threerings/flash/MediaContainer.as
@@ -45,6 +45,8 @@
 import flash.geom.Point;
 import flash.geom.Rectangle;

+import flash.net.URLRequest;
+
 import flash.text.TextField;
 import flash.text.TextFieldAutoSize;

@@ -53,7 +55,7 @@
 import flash.system.Security;
 import flash.system.SecurityDomain;

-import flash.net.URLRequest;
+import flash.utils.ByteArray;

 import com.threerings.util.Log;
 import com.threerings.util.StringUtil;
@@ -152,6 +154,22 @@
             showNewMedia(url);
             didShowNewMedia();
         }
+    }
+
+    /**
+     * Set the media to display as a ByteArray.
+     */
+    public function setMediaBytes (bytes :ByteArray) :void
+    {
+        if (_media != null) {
+            shutdown(false);
+        }
+        _url = null;
+
+        willShowNewMedia();
+        startedLoading();
+        initLoader().loadBytes(bytes, getContext(null));
+        didShowNewMedia();
     }

     /**
@@ -492,6 +510,10 @@
      */
     protected function isImage (url :String) :Boolean
     {
+        if (url == null) {
+            return false;
+        }
+
         // look at the last 4 characters in the lowercased url
         switch (url.toLowerCase().slice(-4)) {
         case ".png":


Transferred from the Adobe Open Source Subversion Repository

Revision: 2509
Author:   chaase@adobe.com
Date:     2008-07-16T17:27:37.792321Z

Log Message:
-----------
New Resize effect that works with Flex4 components as well as GraphicElement objects. Minor fixes to infrastructure classes (mostly the new effects classes, but also SetProperty) as necessary, plus a minor bugfix for the old Resize effect.
As with the other 'new effects', triggers are non-functional for now, but manual playing and transitions using the effects should work.
checkintests: passed
reviewer: Jason S.

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/Effect.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/manifest.xml</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/effects/effectClasses/ResizeInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/development/eclipse/flex/flex4test/src/NewEffects.mxml</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/effects/Resize.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/effects/effectClasses/ResizeInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/effects/effectClasses/AddActionInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/states/SetProperty.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/effects/AddAction.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/mxml-2009-manifest.xml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/effects/effectClasses/AnimatePropertiesInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/effects/effectClasses/RemoveActionInstance.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/gumbo-manifest.xml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/effects/AnimateProperties.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/flex/effects/RemoveAction.as</path>

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

--- frameworks/projects/framework/src/mx/effects/Effect.as
+++ frameworks/projects/framework/src/mx/effects/Effect.as
@@ -23,6 +23,7 @@
 import mx.effects.effectClasses.PropertyChanges;
 import mx.events.EffectEvent;
 import mx.managers.LayoutManager;
+import mx.styles.IStyleClient;

 use namespace mx_internal;

@@ -1146,6 +1147,9 @@
             for (i = 0; i < n; i++)
             {
                 target = propChanges[i].target;
+                if (!(target is IStyleClient))
+                    continue;
+
                 valueMap = setStartValues ? propChanges[i].start : propChanges[i].end;

                 // Walk the properties in the target.
@@ -1231,7 +1235,8 @@
                 m = relevantStyles.length;
                 for (j = 0; j < m; j++)
                 {
-                    if (relevantStyles[j] in propChanges[i].start)
+                    if (relevantStyles[j] in propChanges[i].start &&
+                        target is IStyleClient)
                         target.setStyle(relevantStyles[j], propChanges[i].start[relevantStyles[j]]);
                 }
             }


Transferred from the Adobe Open Source Subversion Repository

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

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

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

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

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

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

--- frameworks/projects/framework/src/mx/graphics/IFill.as
+++ frameworks/projects/framework/src/mx/graphics/IFill.as
@@ -0,0 +1,56 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  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.graphics
+{
+
+import flash.display.Graphics;
+import flash.geom.Rectangle;
+
+/**
+ *  Defines the interface that classes
+ *  that perform a fill must implement.
+ *
+ *  @see mx.graphics.LinearGradient
+ *  @see mx.graphics.RadialGradient
+ */
+public interface IFill
+{
+	//--------------------------------------------------------------------------
+	//
+	//  Methods
+	//
+	//--------------------------------------------------------------------------
+
+	/**
+	 *  Starts the fill.
+	 *
+	 *  @param target The target Graphics object that is being filled.
+	 *
+	 *  @param rc The Rectangle object that defines the size of the fill
+	 *  inside the target.
+	 *  If the dimensions of the Rectangle are larger than the dimensions
+	 *  of the target, the fill is clipped.
+	 *  If the dimensions of the Rectangle are smaller than the dimensions
+	 *  of the target, the fill expands to fill the entire
+	 *  target.
+	 */
+	function begin(target:Graphics, rc:Rectangle):void;
+
+	/**
+	 *  Ends the fill.
+	 *
+	 *  @param target The Graphics object that is being filled.
+	 */
+	function end(target:Graphics):void;
+}
+
+}


Transferred from the Adobe Open Source Subversion Repository

Revision: 5101
Author:   gauravj@adobe.com
Date:     2009-02-27T05:22:45.887116Z

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

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

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

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

--- frameworks/projects/framework/src/mx/utils/HSBColor.as
+++ frameworks/projects/framework/src/mx/utils/HSBColor.as
@@ -16,11 +16,21 @@
  * and Brightness) space. The main use of the class is simply as storage for
  * these values, but there are also some utility functions for converting
  * from and to RGB representations of colors.
+ *
+ *  @langversion 3.0
+ *  @playerversion Flash 9
+ *  @playerversion AIR 1.1
+ *  @productversion Flex 3
  */
 public final class HSBColor
 {
     /**
      * Constructs an HSVColor with optional parameters
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public function HSBColor(hue:Number = NaN, saturation:Number = NaN,
         brightness:Number = NaN)
@@ -35,6 +45,11 @@
      * The hue value for the HSV color. This represents an angle, in
      * degrees, around the HSV cone. The supplied value will be modulated
      * by 360 so that the stored value of hue will be in the range [0,360).
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public function get hue():Number
     {
@@ -50,6 +65,11 @@
      * The saturation parameter for this HSV color. This is a value between
      * 0 (black) and 1 (full saturation), which represents the distance
      * from the center in the HSV cone.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public function get saturation():Number
     {
@@ -65,6 +85,11 @@
      * The brightness parameter for this HSB color. This is a value between
      * 0 (black) and 1 (full brightness), which represents the distance
      * from the apex of the HSB cone.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public function get brightness():Number
     {
@@ -78,6 +103,11 @@
     /**
      * Converts and HSB color specified by the parameters to a
      * uint RGB color.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     public static function HSBtoRGB(hue:Number, saturation:Number,
         brightness:Number):uint
@@ -137,6 +167,11 @@

     /**
      * Converts a color from RGB format into an HSBColor
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 3
      */
     static public function RGBtoHSB(rgb:uint):HSBColor
     {


Transferred from the Adobe Open Source Subversion Repository

Revision: 11050
Author:   jimurphy@adobe.com
Date:     2009-10-21T16:12:53.014279Z

Log Message:
-----------
Merged 3.x revisions 10953,10964,10974,11007,11026 to Trunk

  r10953 | aharui@adobe.com | 2009-10-09 13:50:37 -0400 (Fri, 09 Oct 2009) | 11 lines

  Get rid of a try/catch block that was generating a lot of noise on the heap.

  QE Notes: None
  Doc Notes: None
  Bugs: SDK-23563
  Reviewer: Ryan
  API Change: no
  Is noteworthy for integration: No
  tests: checkintests mustella/Managers/DragManager
........

 r10964 | rfrishbe@adobe.com | 2009-10-09 19:23:26 -0400 (Fri, 09 Oct 2009) | 8 lines

  In DividedBox we mutate a childÆs percentWidth/percentHeight values.  This is so we can utilize the default BoxLayout algorithm.  However, after the algorithm has finished running, we should reset the values to what they were so when children get added it works correctly.

  QE notes: -
  Doc notes: -
  Bugs: SDK-15876
  Reviewer: Alex
  Tests run: checkintests, mustella DividedBox
  Is noteworthy for integration: no
........

  r10974 | pfarland@adobe.com | 2009-10-12 17:56:48 -0400 (Mon, 12 Oct 2009) | 9 lines

  Submitting customer patch for SDK-19188. Correcting XSD scope lookup while decoding wrapped style document literal responses.

  QE notes: Please add a regression test for this scenario.
  Doc notes: N/A
  Bugs: SDK-19188
  Reviewer: Pete
  Tests run: Checkintests, webtier mxunit, flexunit
  Is noteworthy for integration: No
........

  r11007 | pfarland@adobe.com | 2009-10-19 14:26:21 -0400 (Mon, 19 Oct 2009) | 17 lines

  Adding support for <xsd:any /> deserialization to include attributes as properties in addition to child elements.

  Just as with multiple child elements of the same name, an attribute and child element sharing the same name will be promoted to an Array of values (or ArrayCollection if makeObjectsBindable is true).

  Since dynamic ActionScript objects can only have public properties added at runtime, attribute namespaces will be ignored and only the localName will be used for the property name.

  Simple values that have attributes are supported - a special dynamic SimpleContent type is used to hold the value (the simple content value can be retrieved using toString() or valueOf()) and attributes become dynamic properties on this instance.

  Mixed content is still not supported and the cdata content is ignored.

  QE notes: Yes, please add a test case that uses attributes in the SOAP response data for <xsd:any> deserialization.
  Doc notes: We may want to add a release note that fixing this bug includes attributes during generic SOAP deserialization for the <xsd:any> scenario.
  Bugs: SDK-23140 - No data while using "Object" as "resultFormat" for Sharepoint WebService
  Reviewer: Svetlin, Tom J
  Tests run: Checkintests, bug test case
  Is noteworthy for integration: No
........

  r11026 | jimurphy@adobe.com | 2009-10-20 11:47:03 -0400 (Tue, 20 Oct 2009) | 8 lines

  update 3.x with most recent release of AIR: 1.5.2.8900

  QE notes:
  Doc notes:
  Bugs: no
  Reviewer: n/a
  Tests run: yes
  Is noteworthy for integration: no
........

Modified Paths:
--------------
<path kind="dir" action="M">/flex/sdk/trunk</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/xml/XMLDecoder.as</path>
<path kind="file" action="M">/flex/sdk/trunk/in/air/win/AIR Integration Kit.zip</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/soap/SOAPDecoder.as</path>
<path kind="file" action="M">/flex/sdk/trunk/in/air/mac/AIR Integration Kit.tbz2</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/containers/DividedBox.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/managers/dragClasses/DragProxy.as</path>

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

--- frameworks/projects/mx/src/mx/containers/DividedBox.as
+++ frameworks/projects/mx/src/mx/containers/DividedBox.as
@@ -681,6 +681,8 @@
 		// Let Box lay out the children.
 		super.updateDisplayList(unscaledWidth, unscaledHeight);

+        postLayoutAdjustment();
+
 		// Lay out the dividers.
         if (!dividerLayer)
            return;
@@ -1451,6 +1453,13 @@
 			}
 		}

+        // during preLayoutAdjustment, we make some changes to the children's
+        // widths and heights.  We keep track of the original values in postLayoutChanges
+        // so we can later go back and reset them so another layout pass is working
+        // with the correct values rather than these modified values.
+        postLayoutChanges = [];
+        var changeObject:Object;
+
 		// No flexible children, so we make the last one 100%.
 		if (totalPerc == 0 && percCount == 0)
 		{
@@ -1461,10 +1470,30 @@
                 child = UIComponent(getChildAt(i));
 				if (child.includeInLayout)
 				{
+                    // create a changeObject to keep track of the original values
+                    // that this child had for width and height
+                    changeObject = {child: child};
 					if (vertical)
+                    {
+                        // we know there's no percentHeight originally
+                        if (child.explicitHeight)
+                            changeObject.explicitHeight = child.explicitHeight;
+                        else
+                            changeObject.percentHeight = NaN;
+
 						child.percentHeight = 100;
+                    }
 					else
+                    {
+                        // we know there's no percentWidth originally
+                        if (child.explicitWidth)
+                            changeObject.explicitWidth = child.explicitWidth;
+                        else if (child.percentWidth)
+                            changeObject.percentWidth = NaN;
+
 						child.percentWidth = 100;
+                    }
+                    postLayoutChanges.push(changeObject);
                     break;
 				}
 			}
@@ -1485,20 +1514,32 @@
 				if (!child.includeInLayout)
 					continue;

+                changeObject = {child: child};
+
 				if (vertical)
 				{
 					perc = child.percentHeight;
 					if (!isNaN(perc))
+                    {
+                        changeObject.percentHeight = child.percentHeight;
+                        postLayoutChanges.push(changeObject);
+
 						child.percentHeight = (perc + delta) * unscaledHeight;
+				}
 				}
 				else
 				{
 					perc = child.percentWidth;
 					if (!isNaN(perc))
+                    {
+                        changeObject.percentWidth = child.percentWidth;
+                        postLayoutChanges.push(changeObject);
+
 						child.percentWidth = (perc + delta) * unscaledWidth;
 				}
 			}
 		}
+        }

 		// OK after all this magic we still can't guarantee that the space is
 		// entirely filled. For example, all percent components hit their max
@@ -1518,6 +1559,46 @@
 		// as being stretchable.
 	}

+    /**
+     *  @private
+     *  During preLayoutAdjustment, we make some changes to the children's
+     *  widths and heights.  We keep track of the original values in postLayoutChanges
+     *  so we can later go back and reset them so another layout pass is working
+     *  with the correct values rather than these modified values.
+     */
+    private var postLayoutChanges:Array;
+
+    /**
+     *  @private
+     *  Post layout work.  In preLayoutAdjustment()
+     *  sometimes we set a child's percentWidth/percentHeight.
+     *  postLayoutAdjustment() will reset the child's width or height
+     *  back to what it was.
+     */
+    private function postLayoutAdjustment():void
+    {
+        // each object has a child property and may have a set of width/height
+        // properties that it would like to be set
+        var len:int = postLayoutChanges.length;
+        for (var i:int = 0; i < len; i++)
+        {
+            var changeObject:Object = postLayoutChanges[i];
+
+            if (changeObject.percentWidth !== undefined)
+                changeObject.child.percentWidth = changeObject.percentWidth;
+
+            if (changeObject.percentHeight !== undefined)
+                changeObject.child.percentHeight = changeObject.percentHeight;
+
+            if (changeObject.explicitWidth !== undefined)
+                changeObject.child.explicitWidth = changeObject.explicitWidth;
+
+            if (changeObject.explicitHeight !== undefined)
+                changeObject.child.explicitHeight = changeObject.explicitHeight;
+        }
+        postLayoutChanges = null;
+    }
+
 	//--------------------------------------------------------------------------
 	//
 	//  Event handlers


Transferred from the Adobe Open Source Subversion Repository

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

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

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

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

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

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

--- frameworks/projects/rpc/src/mx/rpc/mxml/Concurrency.as
+++ frameworks/projects/rpc/src/mx/rpc/mxml/Concurrency.as
@@ -0,0 +1,39 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  ADOBE SYSTEMS INCORPORATED
+//  Copyright 2005-2007 Adobe Systems Incorporated
+//  All Rights Reserved.
+//
+//  NOTICE: Adobe permits you to use, modify, and distribute this file
+//  in accordance with the terms of the license agreement accompanying it.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+package mx.rpc.mxml
+{
+
+/**
+ * Concurrency is set via MXML based access to RPC services to indicate how to handle multiple
+ * calls to the same service. The default concurrency value is multiple.
+ */
+public final class Concurrency
+{
+    /**
+     * Making a request cancels any existing request.
+     */
+    public static const LAST:String = "last";
+
+    /**
+     * Existing requests are not cancelled, and the developer is responsible for ensuring
+     * the consistency of returned data by carefully managing the event stream.
+     */
+    public static const MULTIPLE:String = "multiple";
+
+
+    /**
+     * Only a single request at a time is allowed on the operation; multiple requests generate a fault.
+     */
+    public static const SINGLE:String = "single";
+}
+
+}


Transferred from the Adobe Open Source Subversion Repository

Revision: 19444
Author:   klin@adobe.com
Date:     2010-12-17T01:12:03.325656Z

Log Message:
-----------
Enable easier styling and customization of DataGrid skin parts. Replaced IGridRowBackground with IGridVisualElement. A DataGrid skin part that implements IGridVisualElement will have its prepareGridVisualElement() method called before its layed out. This allows us create skin parts that can pull styles from DataGrid when created. Users can also have their skin parts implement IGridVisualElement to customize their skin part before beign layed out.

Also added the following styles to DataGrid: caretColor, rollOverColor, selectionColor, and symbolColor. Many of the skin parts in the default skin implement IGridVisualElement to enable these styles. Added default caretColor to defaults.css of #0167FF.

QE notes: Will break custom skin tests
Doc notes: No
Bugs: SDK-28491
Reviewer: Hans
Tests run: cyclone, checkintests
Is noteworthy for integration: Yes

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/Grid.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/gridClasses/GridLayout.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/skins/spark/DefaultGridHeaderRenderer.mxml</path>
<path kind="file" action="D">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/gridClasses/IGridRowBackground.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/defaults.css</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/DataGrid.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/gridClasses/IGridVisualElement.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/skins/spark/DataGridSkin.mxml</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/wireframe/src/spark/skins/wireframe/DataGridSkin.mxml</path>

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

--- frameworks/projects/spark/src/spark/components/Grid.as
+++ frameworks/projects/spark/src/spark/components/Grid.as
@@ -181,7 +181,7 @@
  *  row index and column index properties, such as
  *  hoverRowIndex and columnRowIndex.
  *  An indicator can be any visual element.
- *  Indicators that implement IGridElement can configure themselves
+ *  Indicators that implement IGridVisualElement can configure themselves
  *  according to the row and column in which they are used.

  *
  *
The Grid control supports smooth scrolling.


Transferred from the Adobe Open Source Subversion Repository

Revision: 17342
Author:   cframpto@adobe.com
Date:     2010-08-17T01:20:45.252725Z

Log Message:
-----------
- When scrolling the hover goes away until you move the mouse over the grid or you mouse up over the grid.
- The typicalItem is now measured with wordWrap=false.
- Default requestedRowCount is now 10.
- Fixed several alternatingRowColorsBackground issues.
- If singleCell or singleRow selection and you shift-<key>, the caret will move to the new position as before, and the selection will now move to the new position as well since it can’t extend to the new position.

QE notes: 2 of these fixes will change the geometry of the grid - excluded DG tests have to be updated
Doc notes:
Bugs: SDK-27322, SDK-27440, SDK-27419, SDK-27412, SDK-26845, SDK-27409, SDK-27408,  SDK-27402, SDK-27229
Reviewer: Hans
Tests run: checkintests, 2 cyclones and 2 runs of DataGrid tests locally, all of which produced different results with the same code!
Is noteworthy for integration: no

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/Grid.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/supportClasses/GridLayout.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/DataGrid.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/skins/spark/DataGridSkin.mxml</path>

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

--- frameworks/projects/spark/src/spark/components/Grid.as
+++ frameworks/projects/spark/src/spark/components/Grid.as
@@ -71,8 +71,10 @@
     [Event(name="gridMouseDrag", type="spark.events.GridEvent")]

     /**
-     *  Dispatched after a GRID_MOUSE_DOWN event when the mouse button is released, even
-     *  if the mouse is no longer within the Grid.
+     *  Dispatched when the mouse button is released over a Grid cell, or,
+     *  during a drag operation, it is dispatched after a GRID_MOUSE_DOWN event
+     *  when the mouse button is released, even if the mouse is no longer
+     *  within the Grid.
      *
      *  @eventType spark.events.GridEvent.GRID_MOUSE_UP
      *
@@ -198,6 +200,12 @@
     {
         include "../core/Version.as";

+        //--------------------------------------------------------------------------
+        //
+        //  Variables
+        //
+        //--------------------------------------------------------------------------
+
         /**
          *  @private
          *  A list of functions to be called at commitProperties() time, after the dataProvider
@@ -214,6 +222,12 @@
          */
         mx_internal var inUpdateDisplayList:Boolean = false;

+        /**
+         *  @private
+         *  True while doing a drag operation with the mouse.
+         */
+        private var dragInProgress:Boolean = false;
+

         // TODO(hmuller): the following public variables are temporary

@@ -223,6 +237,20 @@
         public var overlayGroup:Group;

+        //--------------------------------------------------------------------------
+        //
+        //  Constructor
+        //
+        //--------------------------------------------------------------------------
+
+        /**
+         *  Constructor.
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10
+         *  @playerversion AIR 2.4
+         *  @productversion Flex 4.5
+         */
         public function Grid()
         {
             super();
@@ -243,6 +271,8 @@
                 grid_mouseDownDragUpHandler,
                 grid_mouseDownDragUpHandler,
                 grid_mouseDownDragUpHandler);
+
+            addEventListener(MouseEvent.MOUSE_UP, grid_mouseUpHandler);
             addEventListener(MouseEvent.MOUSE_MOVE, grid_mouseMoveHandler);
             addEventListener(MouseEvent.ROLL_OUT, grid_mouseRollOutHandler);
             addEventListener(MouseEvent.CLICK, grid_clickHandler);
@@ -1034,7 +1064,7 @@
         //  requestedRowCount
         //----------------------------------

-        private var _requestedRowCount:int = -1;
+        private var _requestedRowCount:int = 10;

         [Inspectable(category="General", minValue="-1")]

@@ -2863,12 +2893,17 @@
             var gridEventType:String;
             switch(event.type)
             {
-                case MouseEvent.MOUSE_MOVE: gridEventType = GridEvent.GRID_MOUSE_DRAG; break;
-                case MouseEvent.MOUSE_UP:   gridEventType = GridEvent.GRID_MOUSE_UP; break;
+                case MouseEvent.MOUSE_MOVE:
+                    gridEventType = GridEvent.GRID_MOUSE_DRAG;
+                    break;
+                case MouseEvent.MOUSE_UP:
+                    gridEventType = GridEvent.GRID_MOUSE_UP;
+                    break;
                 case MouseEvent.MOUSE_DOWN:
                     gridEventType = GridEvent.GRID_MOUSE_DOWN;
                     mouseDownRowIndex = eventRowIndex;
                     mouseDownColumnIndex = eventColumnIndex;
+                    dragInProgress = true;
                     break;
             }

@@ -2921,6 +2956,9 @@
          */
         protected function grid_mouseRollOutHandler(event:MouseEvent):void
         {
+            // Handle the case where the mouse up happens outside the data grid.
+            dragInProgress = false
+
             if ((rollRowIndex != -1) || (rollColumnIndex != -1))
             {
                 const eventStageXY:Point = new Point(event.stageX, event.stageY);
@@ -2931,6 +2969,36 @@
             }
         }

+        /**
+         *  This method is called whenever a GRID_MOUSE_UP occurs on the grid.
+         *  By default it dispatches a GRID_MOUSE_UP event.
+         *
+         *  @param event A GRID_MOUSE_UP MouseEvent from the grid.
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10
+         *  @playerversion AIR 2.0
+         *  @productversion Flex 4.5
+         */
+        protected function grid_mouseUpHandler(event:MouseEvent):void
+        {
+            // If in a drag, the drag handler already dispatched a mouse up
+            // event so don't do it again here.
+            if (dragInProgress)
+            {
+                dragInProgress = false;
+                return;
+            }
+
+            const eventStageXY:Point = new Point(event.stageX, event.stageY);
+            const eventGridXY:Point = globalToLocal(eventStageXY);
+            const gridDimensions:GridDimensions = GridLayout(layout).gridDimensions;
+            const eventRowIndex:int = gridDimensions.getRowIndexAt(eventGridXY.x, eventGridXY.y);
+            const eventColumnIndex:int = gridDimensions.getColumnIndexAt(eventGridXY.x, eventGridXY.y);
+
+            dispatchGridEvent(event, GridEvent.GRID_MOUSE_UP, eventGridXY, eventRowIndex, eventColumnIndex);
+        }
+
         /**
          *  This method is called whenever a CLICK MouseEvent occurs on the grid if both
          *  the corresponding down and up events occur within the same grid cell.
@@ -3033,14 +3101,14 @@
             const shiftKey:Boolean = mouseEvent.shiftKey;
             const buttonDown:Boolean = mouseEvent.buttonDown;
             const delta:int = mouseEvent.delta;
-
+
             const event:GridEvent = new GridEvent(
                 type, bubbles, cancelable,
                 gridXY.x, gridXY.y, rowIndex, columnIndex, column, item, itemRenderer,
                 relatedObject, ctrlKey, altKey, shiftKey, buttonDown, delta);
             dispatchEvent(event);
         }
-
+
         //--------------------------------------------------------------------------
         //
         //  IList listeners: columns, dataProvider


Transferred from the Adobe Open Source Subversion Repository

Revision: 11056
Author:   egeorgie@adobe.com
Date:     2009-10-21T18:57:18.687123Z

Log Message:
-----------
Drag and Drop - various small fixes

- TileLayout now reports the correct number of actual columns/rows along the minor axis
- Fix to List - the mouse down and drag on unselected item used to stop working after the first few times as I didn't clear a flag properly before.
- Make the ListItemDragProxy inherit styles from the drag initiator.

QE notes: None
Doc notes: None
Bugs: None
Reviewer: Deepa
Tests run: checkintests, mustella (ListDragDrop, List)
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/components/supportClasses/ListItemDragProxy.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/TileLayout.as</path>

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

--- frameworks/projects/spark/src/spark/components/List.as
+++ frameworks/projects/spark/src/spark/components/List.as
@@ -1343,8 +1343,10 @@
         if (pendingSelectionOnMouseUp && !DragManager.isDragging)
         {
             selectedIndices = calculateSelectedIndicesInterval(mouseDownIndex, pendingSelectionShiftKey, pendingSelectionCtrlKey);
-            pendingSelectionOnMouseUp = false;
-        }
+        }
+
+		// Always clean up the flag, even if currently dragging.
+		pendingSelectionOnMouseUp = false;

         mouseDownPoint = null;
         mouseDownIndex = -1;


plaey movement pro

plaey movement pro

--- src/heartattacks/doodads/Player.as
+++ src/heartattacks/doodads/Player.as
@@ -10,7 +10,8 @@
 	public class Player extends FlxSprite
 	{
 		[Embed(source = "../../../res/spritesheets/Sheet.png")] protected var playerImage:Class;
-
+		private var heading = 0;
+		private var speed = 0.4;

 		public function Player(x:Number, y:Number )
 		{
@@ -18,27 +19,32 @@
 			this.loadGraphic(playerImage, true, true, 25, 29, true);

 			addAnimation("walk", [0, 1, 0], 8, false );
-
+			FlxG.mouse.show();
 		}

 		override public function update():void
 		{
-			this.y -= 0.9;
 			play("walk");

-
-
-			if (FlxG.keys.D || FlxG.keys.RIGHT)
-			{
-				this.x += 0.9
-				play("walk");
-			}

-			if (FlxG.keys.A || FlxG.keys.LEFT)
-			{
-				this.x -= 0.9
-				play("walk");
-			}
+			 this.x += Math.sin(heading) * speed ;
+			 this.y -= Math.cos(heading) * speed ;
+
+		if (FlxG.mouse.pressed())
+		{
+
+		  if (FlxG.mouse.screenX <= this.x )
+		  {
+			  this.heading -= Math.PI / 128;
+
+			  }
+
+		  if (FlxG.mouse.screenX >= this.x)
+		  {
+			  this.heading += Math.PI / 128;
+
+			  }
+	    }

 		}


fixed bug in check for non-primitive objects

--- WeaveJS/src/weavejs/util/JS.as
+++ WeaveJS/src/weavejs/util/JS.as
@@ -241,7 +241,7 @@

 			if (object is Array)
 				copy = [];
-			else if (Object['getPrototypeOf'](object))
+			else if (Object['getPrototypeOf'](Object['getPrototypeOf'](object)))
 				throw new Error("copyObject() cannot copy non-primitive Objects");
 			else
 				copy = {};


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

--- frameworks/projects/framework/src/mx/core/IUIComponent.as
+++ frameworks/projects/framework/src/mx/core/IUIComponent.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: 695
Author:   smgilson@adobe.com
Date:     2008-02-29T19:28:33.314028Z

Log Message:
-----------
Add WSDLLoadEvent.as and XMLLoadEvent.as to ASDoc

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

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/events/XMLLoadEvent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/rpc/src/mx/rpc/events/WSDLLoadEvent.as</path>

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

--- frameworks/projects/rpc/src/mx/rpc/events/XMLLoadEvent.as
+++ frameworks/projects/rpc/src/mx/rpc/events/XMLLoadEvent.as
@@ -17,18 +17,22 @@
 [ExcludeClass]

 /**
- * This is a base class for events that are dispatched when an RPC service
+ * The XMLLoadEvent class is a base class for events that are dispatched when an RPC service
  * successfully loaded an XML document.
- * @private
  */
 public class XMLLoadEvent extends Event
 {
     /**
-     * Creates a new XMLLoadEvent.
+     * Constructor.
+     *
      * @param type The event type; indicates the action that triggered the event.
+     *
      * @param bubbles Specifies whether the event can bubble up the display list hierarchy.
+     *
      * @param cancelable Specifies whether the behavior associated with the event can be prevented.
+     *
      * @param xml The XML document loaded.
+     *
      * @param location The path used to load the document.
      */
     public function XMLLoadEvent(type:String, bubbles:Boolean = false,
@@ -53,7 +57,7 @@
     public var location:String;

     /**
-     * Returns a copy of this XMLLoadEvent.
+     * Returns a copy of this XMLLoadEvent object.
      */
     override public function clone():Event
     {
@@ -61,7 +65,7 @@
     }

     /**
-     * Returns a String representation of this XMLLoadEvent.
+     * Returns a String representation of this XMLLoadEvent object.
      */
     override public function toString():String
     {
@@ -79,21 +83,24 @@
     }

     /**
-     * The xmlLoad event type.
+     * The LOAD constant defines the value of the type property of the event object
+     * for a xmlLoad event.
      *
      *
The properties of the event object have the following values:

      *

      *
Property	Value

-     *
bubbles	false

-     *
cancelable	true

+     *
bubbles	false

+     *
cancelable	true

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

+     *
location	The location from which the document was loaded.

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

+     *
xml	The raw XML document.

      *

      *
      * @eventType result


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

--- frameworks/projects/spark/src/spark/components/Spinner.as
+++ frameworks/projects/spark/src/spark/components/Spinner.as
@@ -131,7 +131,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")]


Transferred from the Adobe Open Source Subversion Repository

Revision: 11574
Author:   egeorgie@adobe.com
Date:     2009-11-09T18:53:35.299310Z

Log Message:
-----------
Drag and Drop - Bug fixes:
- Added slight delay before drag-scrolling start.
- Single selection ctrl+drag fixed.
- Default drop indicator for List that doesn't have drop indicator specified in its skin. The default DI is specified through the new dropIndicatorSkin List style.
- Memory leak for the drop indicator dynamic skin part.
- ListItemDragProxy incorrectly listed in spark-manifest.xml moved to SparkClassess.

QE notes: None
Doc notes: None
Bugs: SDK-24047, SDK-23999, SDK-23871
Reviewer: Glenn, Deepa
Tests run: checkintests, mustella (List, ListDragDrop)
Is noteworthy for integration: No

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/SparkClasses.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/List.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/spark-manifest.xml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/supportClasses/LayoutBase.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/spark/src/spark/skins/spark/ListDropIndicator.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/defaults.css</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/HorizontalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/VerticalLayout.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/supportClasses/DropLocation.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/layouts/TileLayout.as</path>

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

--- frameworks/projects/spark/src/spark/layouts/TileLayout.as
+++ frameworks/projects/spark/src/spark/layouts/TileLayout.as
@@ -2047,18 +2047,19 @@
             if (_horizontalGap < 0 && (column == _columnCount || count == dropLocation.dropIndex))
                 emptySpaceLeft -= _horizontalGap;

+			width = emptySpace;
+			height = _rowHeight;
+			// Special case - if we have negative gap and we're not the last
+			// row, adjust the height
+			if (_verticalGap < 0 && row < _rowCount - 1)
+				height += _verticalGap + 1;
+
             if (dropIndicator is IVisualElement)
             {
                 dropIndicatorElement = IVisualElement(dropIndicator);
-                width = Math.max(Math.min(emptySpace,
+                width = Math.max(Math.min(width,
                                           dropIndicatorElement.getMaxBoundsWidth(false)),
                                           dropIndicatorElement.getMinBoundsWidth(false));
-                height = _rowHeight;
-
-                // Special case - if we have negative gap and we're not the last
-                // row, adjust the height
-                if (_verticalGap < 0 && row < _rowCount - 1)
-                    height += _verticalGap + 1;
             }

             x = emptySpaceLeft + Math.round((emptySpace - width) / 2);
@@ -2076,21 +2077,22 @@
             // adjust the emptySpaceLeft
             if (_verticalGap < 0 && (row == _rowCount || count == dropLocation.dropIndex))
                 emptySpaceTop -= _verticalGap;
-
+
+			width = _columnWidth;
+			height = emptySpace;
+			// Special case - if we have negative gap and we're not the last
+			// column, adjust the width
+			if (_horizontalGap < 0 && column < _columnCount - 1)
+				width += _horizontalGap + 1;
+
             if (dropIndicator is IVisualElement)
             {
                 dropIndicatorElement = IVisualElement(dropIndicator);
-                width = _columnWidth;
                 height = Math.max(Math.min(emptySpace,
                                            dropIndicatorElement.getMaxBoundsWidth(false)),
                                            dropIndicatorElement.getMinBoundsWidth(false));
-
-                // Special case - if we have negative gap and we're not the last
-                // column, adjust the width
-                if (_horizontalGap < 0 && column < _columnCount - 1)
-                    width += _horizontalGap + 1;
             }
-
+
             x = column * (_columnWidth + _horizontalGap);

 			y = emptySpaceTop + Math.round((emptySpace - height) / 2);


ps: update getEntryId() to return media url and return "url" on sourceType.

git-svn-id: 3f608e5a9a704dd448217c0a64c508e7f145cfa1@86810 6b8eccd3-e8c5-4e7d-8186-e12b5326b719

--- plugins/doubleclickPlugin/src/doubleclickPluginCode.as
+++ plugins/doubleclickPlugin/src/doubleclickPluginCode.as
@@ -181,8 +181,6 @@
 		*/
 		private function onDoPause(e:Event):void{
 			//(_facade.retrieveMediator("kMediaPlayerMediator") as KMediaPlayerMediator).player;
-
-			trace("AM I IN SEQUENCE:::::"+(_facade.retrieveProxy("sequenceProxy") as SequenceProxy).vo.isInSequence);
 			for each (var ns:NetStream in _netStreams){
 				ns.pause();
 			}
@@ -195,7 +193,9 @@

 		private function onAdLoaded(event:AdLoadedEvent):void {
 			if(event.ad.type	== AdsManagerTypes.VIDEO || event.ad.type == "VAST"){
+			//	trace("MY AD EVENT::::: :	"+event.);
 				//retain reference to each netstream
+				//trace("MY AD URL:::: 	"+(event.currentTarget as VideoAdsManager).ads);
 				_adNetStream				= event.netStream;

 				var vidClientObject:Object	= new Object();
@@ -219,6 +219,7 @@

 		private function onAdMetaData(data:Object):void{
 			_videoMetadata		= data;
+
 			resizeVideo();
 		}

@@ -829,9 +830,16 @@
 			}
 		}

+		private var _mediaUrl:String;

 		private function onAdStarted(event:AdEvent):void {
 			log("[DOUBLECLICK]#onAdStarted : db adsManager sent "+event.type);
+			trace("MY ADS MANAGER::: 	"+(event.currentTarget as VideoAdsManager).ads[0].mediaUrl);
+			if((event.currentTarget as VideoAdsManager).ads[0].mediaUrl){
+				_mediaUrl		= (event.currentTarget as VideoAdsManager).ads[0].mediaUrl;
+			}else{
+				_mediaUrl		= "unknown media url";
+			}
 		}

 		public var wasAdSkipped:Boolean	= false;
@@ -1016,7 +1024,7 @@
 		 * @return The function returns the entry id of the plugin media. If the plugin does not play
 		 * 			a kaltura-based entry, the return value is the URL of the media of the plugin.
 		 */
-		public function get entryId () : String{log("[DOUBLECLICK] plugin: entryId()");return "0_kjvoet76";}
+		public function get entryId () : String{log("[DOUBLECLICK] plugin: entryId()");return _mediaUrl;}

 		/**
 		 * Function for retrieving the source type of the plugin media (url or entryId)
@@ -1024,7 +1032,7 @@
 		 * Otherwise the return value is <code>url</script>
 		 *
 		 */
-		public function get sourceType () : String{log("[DOUBLECLICK] plugin: sourceType()");return "entryId";}
+		public function get sourceType () : String{log("[DOUBLECLICK] plugin: sourceType()");return "url";}
 		/**
 		 * Function to retrieve the MediaElement the plugin will play in the KDP.
 		 * @return returns the MediaElement that the plugin will play in the KDP.


I'm afraid we really do need a hashcode method...

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

--- src/as/com/threerings/util/Util.as
+++ src/as/com/threerings/util/Util.as
@@ -84,6 +84,19 @@
     }

     /**
+     * Compute a hash code for a string. This is pretty expensive, so only compute
+     * it once if that's at all an option. This is the JDK algorithm...
+     */
+    public static function hashCode (str :String) :int
+    {
+        var h :int = 0;
+        for (var i :int = str.length-1; i >= 0; i--) {
+            h = int(int(31*h) + str.charCodeAt(i));
+        }
+        return h;
+    }
+
+    /**
      * If you call a varargs method by passing it an array, the array
      * will end up being arg 1.
      */


Changed Lantern script

Changed Lantern script

Removed the update from Lantern script as it was superfluous.


Changed FrameCommandExecutor not to need a reprise Application to function anymore

--- src/reprise/commands/FrameCommandExecutor.as
+++ src/reprise/commands/FrameCommandExecutor.as
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2006-2010 the original author or authors
+* Copyright (c) 2006-2011 the original author or authors
 *
 * Permission is hereby granted to use, modify, and distribute this file
 * in accordance with the terms of the license agreement accompanying it.
@@ -7,10 +7,11 @@

 package reprise.commands
 {
-	import reprise.core.ApplicationRegistry;
+	import flash.display.Shape;
+	import flash.events.Event;
+
 	import reprise.data.collection.HashMap;
-
-	import flash.events.Event;
+
 	public class FrameCommandExecutor
 	{

@@ -20,6 +21,7 @@
 		protected static var g_instance : FrameCommandExecutor;
 		private	var m_commands : HashMap;
 		protected var m_nextKeyIndex : int;
+		private var m_enterFrameDispatcher : Shape;

@@ -49,8 +51,7 @@

 			if (!m_commands.size())
 			{
-				ApplicationRegistry.instance().applicationForURL('').stage.
-					addEventListener(Event.ENTER_FRAME, enterFrame);
+				m_enterFrameDispatcher.addEventListener(Event.ENTER_FRAME, enterFrame);
 			}

 			var wrapper : Object =
@@ -65,8 +66,7 @@
 			m_commands.removeObject(wrapperForCommand(cmd));
 			if (!m_commands.size())
 			{
-				ApplicationRegistry.instance().applicationForURL('').stage.
-					removeEventListener(Event.ENTER_FRAME, enterFrame);
+				m_enterFrameDispatcher.removeEventListener(Event.ENTER_FRAME, enterFrame);
 			}
 		}

@@ -75,8 +75,7 @@
 			m_commands.removeObject(wrapperForName(key));
 			if (!m_commands.size())
 			{
-				ApplicationRegistry.instance().applicationForURL('').stage.
-					removeEventListener(Event.ENTER_FRAME, enterFrame);
+				m_enterFrameDispatcher.removeEventListener(Event.ENTER_FRAME, enterFrame);
 			}
 		}

@@ -89,8 +88,7 @@

 			if (!m_commands.size())
 			{
-				ApplicationRegistry.instance().applicationForURL('').stage.
-					addEventListener(Event.ENTER_FRAME, enterFrame);
+				m_enterFrameDispatcher.addEventListener(Event.ENTER_FRAME, enterFrame);
 			}

 			var wrapper : Object =
@@ -127,6 +125,7 @@
 		{
 			m_commands = new HashMap();
 			m_nextKeyIndex = 0;
+			m_enterFrameDispatcher = new Shape();
 		}

 		protected function containsCommand(cmd : ICommand) : Boolean


Fixed memory leak in DTNavMesh::init.

Fixed memory leak in DTNavMesh::init.

--- as3_lib/src/recastnavigation/detour/navmesh/DTNavMesh.as
+++ as3_lib/src/recastnavigation/detour/navmesh/DTNavMesh.as
@@ -19,12 +19,15 @@
         /** The maximum number of user defined area ids. */
         public static const DT_MAX_AREAS:int = 64;

+        private var _data_ptr:int = -1;
+        private var _dataSize:int;
+
         /** Initializes the navigation mesh for single tile use. */
         public function init(data:Vector.<int>, flags:int):int
         {
-            var data_ptr:int = mallocInt8Vector(data);
-            var dataSize:int = data.length;
-            var result:int = internal_dtNavMesh_init(ptr, data_ptr, dataSize, flags);
+            _data_ptr = mallocInt8Vector(data);
+            _dataSize = data.length;
+            var result:int = internal_dtNavMesh_init(ptr, _data_ptr, _dataSize, flags);
             return result;
         }

@@ -53,6 +56,9 @@

         public override function free():void
         {
+            if (_data_ptr != -1)
+                CModule.free(_data_ptr);
+            _dataSize = 0;
             internal_dtFreeNavMesh(ptr);
             ptr = 0;
         }


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

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

 package mx.automation.codec
 {


Transferred from the Adobe Open Source Subversion Repository

Revision: 19678
Author:   chiedozi@adobe.com
Date:     2011-01-10T22:45:03.607947Z

Log Message:
-----------
Resolved some FIXMEs

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

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/components/supportClasses/NavigationStack.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/ViewNavigatorSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/ViewNavigatorApplicationSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/components/ViewNavigator.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobilecomponents/src/spark/events/ViewNavigatorEvent.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mobiletheme/src/spark/skins/mobile/TabbedViewNavigatorApplicationSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/Application.as</path>

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

--- frameworks/projects/mobilecomponents/src/spark/components/supportClasses/NavigationStack.as
+++ frameworks/projects/mobilecomponents/src/spark/components/supportClasses/NavigationStack.as
@@ -143,7 +143,6 @@
         _source.length = 0;
     }

-    // FIXME (chiedozi): Should return things...
     /**
      *  Adds a view to the top of the navigation stack.
      *  Pushing a view changes the display of the application to
@@ -171,6 +170,7 @@
         _source.push(viewData);
     }

+    // TODO (chiedozi): Consider returning the object when pop is called.
     /**
      *  Removes the top view off the stack.
      *  Returns control from the current view back to


- bugfix: Fixed bug in the way alien elements were ignored in TooltipManager

git-svn-id: e38e7cdd6ace00d8230583a2d3b43e9a55f5c011@812 bc4816be-ef27-423a-9c4d-fc420be121a2

--- src/reprise/core/TooltipManager.as
+++ src/reprise/core/TooltipManager.as
@@ -79,9 +79,9 @@
 		{
 			var element:UIObject = findTooltipDataProviderForElement(mousedElement);
 			//ignore children of nested documents
-			if (element.document != m_rootView)
-			{
-				return;
+			if (element && element.document != m_rootView)
+			{
+				element = null;
 			}

 			var currentTooltipData:Object = m_tooltip ? m_tooltip.data() : null;