Apply autoformating to the code.

Apply autoformating to the code.

--- asn_visualization/asn_visualization.as
+++ asn_visualization/asn_visualization.as
@@ -15,7 +15,7 @@
     import flare.vis.events.SelectionEvent;
     import flare.vis.operator.layout.BundledEdgeRouter;
     import flare.vis.operator.layout.CircleLayout;
-
+
     import flash.display.Sprite;
     import flash.events.MouseEvent;
     import flash.filters.DropShadowFilter;
@@ -24,7 +24,7 @@
     import flash.net.URLRequest;
     import flash.utils.Dictionary;
     import flash.utils.getDefinitionByName;
-
+
     import mx.core.*;
     import mx.formatters.NumberBase;
     import mx.formatters.NumberBaseRoundType;
@@ -34,7 +34,7 @@
     [SWF(backgroundColor="#ffffff",width="600",height="490",frameRate="30")]
     public class asn_visualization extends Sprite
     {
-    	private static const VISUALIZATION_BOUNDS:uint=475;
+        private static const VISUALIZATION_BOUNDS:uint=475;

         private static const CIRCLE_LAYOUT:uint=1;

@@ -46,7 +46,7 @@

         public function asn_visualization()
         {
-			initFlexFrameworkSpecifics();
+            initFlexFrameworkSpecifics();
             // create progress bar
             addChild(_bar=new ProgressBar());
             _bar.bar.filters=[new DropShadowFilter(1)];
@@ -81,24 +81,24 @@
         private var _default_node_fill_color:uint=0XFFCCCCCC;
         private var _default_node_line_color:uint=0XFF000000;
         private var _node_point_of_control_line_color:uint=0XFFFF00FF;
-
+
         private var _detail:TextSprite;
-
-
+
+

         private var _edges_toogle:TextSprite;
         private var _edges_toogle_container:Sprite
         private var _layout_format_toggle_container:Sprite;
-   //     private var _layout_format_toogle:TextSprite;
+        //     private var _layout_format_toogle:TextSprite;
         private var _node_click_behavior_toggle:TextSprite;
         private var _path_type_toogle:TextSprite;
-
+
         private var _below_vis:TextSprite;

         private var layout_format:uint=CIRCLE_LAYOUT;

         private var node_click_behavior:uint=ON_CLICK_SHOW_PATH_TO_REST_OF_THE_WORLD;
-
+
         private var previously_clicked_node:NodeSprite=null;

         private var rest_of_world_node:NodeSprite=null;
@@ -170,7 +170,7 @@

             // add mouse-over details
             vis.controls.add(new HoverControl(NodeSprite, HoverControl.MOVE_TO_FRONT, function(evt:SelectionEvent):void
-                {
+                {
                     _detail.htmlText=get_asn_summary_string(evt.node);
                     layout();
                 }, function(evt:SelectionEvent):void
@@ -189,41 +189,40 @@
             addChild(vis);
             vis.update();
             layout();
-           // updateLayoutFormatText();
+            // updateLayoutFormatText();
             vis.update();
         }

-		private function create_toggle_sprite(true_text:String, false_text:String,
-			true_function:Function, false_function:Function,toggle_start:Boolean):Sprite
-		{
-			var ret:Sprite = new Sprite();
-			ret.buttonMode = true;
-
-			var toggle_state:Boolean = toggle_start;
-
-			var _edges_show_text:TextSprite = new TextSprite(true_text, null, TextSprite.DEVICE);
-
-			_edges_show_text.name = "true_text";
-
-			var _edges_hide_text:TextSprite = new TextSprite(false_text, null, TextSprite.DEVICE);
-
-			_edges_hide_text.name = "false_text";
-
-			var _edges_slash_text:TextSprite = new TextSprite("/", null, TextSprite.DEVICE);
-			ret.mouseChildren = false;
+        private function create_toggle_sprite(true_text:String, false_text:String, true_function:Function, false_function:Function, toggle_start:Boolean):Sprite
+        {
+            var ret:Sprite=new Sprite();
+            ret.buttonMode=true;
+
+            var toggle_state:Boolean=toggle_start;
+
+            var _edges_show_text:TextSprite=new TextSprite(true_text, null, TextSprite.DEVICE);
+
+            _edges_show_text.name="true_text";
+
+            var _edges_hide_text:TextSprite=new TextSprite(false_text, null, TextSprite.DEVICE);
+
+            _edges_hide_text.name="false_text";
+
+            var _edges_slash_text:TextSprite=new TextSprite("/", null, TextSprite.DEVICE);
+            ret.mouseChildren=false;

             ret.addChild(_edges_show_text);
             ret.addChild(_edges_slash_text);
             ret.addChild(_edges_hide_text);
-
-
-			_edges_slash_text.x = _edges_show_text.x + _edges_show_text.width;
-			_edges_hide_text.x = _edges_slash_text.x + _edges_slash_text.width;
-
-           ret.addEventListener(MouseEvent.CLICK, function(evt:MouseEvent):void
+
+
+            _edges_slash_text.x=_edges_show_text.x + _edges_show_text.width;
+            _edges_hide_text.x=_edges_slash_text.x + _edges_slash_text.width;
+
+            ret.addEventListener(MouseEvent.CLICK, function(evt:MouseEvent):void
                 {
                     toggle_state=!toggle_state;
-
+
                     if (toggle_state)
                     {
                         true_function();
@@ -237,67 +236,71 @@
                     layout();
                 });

-			updateEdgeToogleText(ret, toggle_state);
-			return ret;
-		}
-
-		private function create_edges_toogle():void
-		{
-			_edges_toogle_container = create_toggle_sprite("SHOW EDGES", "HIDE EDGES", showEdges,hideEdges, show_edges);
-
+            updateEdgeToogleText(ret, toggle_state);
+            return ret;
+        }
+
+        private function create_edges_toogle():void
+        {
+            _edges_toogle_container=create_toggle_sprite("SHOW EDGES", "HIDE EDGES", showEdges, hideEdges, show_edges);
+
             addChild(_edges_toogle_container);
-		}
-
-		private function create_layout_format_toogle(layout_format:uint):void
-		{
-			var layout_is_circle:Boolean = (layout_format == CIRCLE_LAYOUT);
-			_layout_format_toggle_container = create_toggle_sprite("CIRCLE LAYOUT", "RADIAL LAYOUT",
-				function():void {updateOperators(CIRCLE_LAYOUT)},
-				function():void{updateOperators(RADIAL_LAYOUT)}, layout_is_circle);
-
+        }
+
+        private function create_layout_format_toogle(layout_format:uint):void
+        {
+            var layout_is_circle:Boolean=(layout_format == CIRCLE_LAYOUT);
+            _layout_format_toggle_container=create_toggle_sprite("CIRCLE LAYOUT", "RADIAL LAYOUT", function():void
+                {
+                    updateOperators(CIRCLE_LAYOUT)
+                }, function():void
+                {
+                    updateOperators(RADIAL_LAYOUT)
+                }, layout_is_circle);
+
             addChild(_layout_format_toggle_container);
-		}
-
+        }
+
         private function addButtons():void
         {
-			create_edges_toogle();
+            create_edges_toogle();
             _node_click_behavior_toggle=new TextSprite("", null, TextSprite.DEVICE);
             _node_click_behavior_toggle.textField.multiline=true;
             _node_click_behavior_toggle.buttonMode=false;
-
+
             updateNodeClickBehaviorText();
             addChild(_node_click_behavior_toggle);
-
-			create_layout_format_toogle(CIRCLE_LAYOUT);
-			/*
-            _layout_format_toogle=new TextSprite("", null, TextSprite.DEVICE);
-            _layout_format_toogle.textField.multiline=true;
-            _layout_format_toogle.buttonMode=true;
-            _layout_format_toogle.useHandCursor = true;
-
-            _layout_format_toogle.addEventListener(MouseEvent.CLICK, function(evt:MouseEvent):void
-                {
-                    if (layout_format == CIRCLE_LAYOUT)
-                    {
-                        layout_format=RADIAL_LAYOUT;
-                    }
-                    else if (node_click_behavior == RADIAL_LAYOUT)
-                    {
-                        layout_format=CIRCLE_LAYOUT;
-                    }
-
-                    updateOperators();
-                    updateLayoutFormatText();
-                    vis.update();
-                    layout();
-                });
-            updateLayoutFormatText();
-
-            addChild(_layout_format_toogle);
-            */
-
-            _below_vis = new TextSprite("XXX", null, TextSprite.DEVICE);
-            addChild(_below_vis);
+
+            create_layout_format_toogle(CIRCLE_LAYOUT);
+            /*
+               _layout_format_toogle=new TextSprite("", null, TextSprite.DEVICE);
+               _layout_format_toogle.textField.multiline=true;
+               _layout_format_toogle.buttonMode=true;
+               _layout_format_toogle.useHandCursor = true;
+
+               _layout_format_toogle.addEventListener(MouseEvent.CLICK, function(evt:MouseEvent):void
+               {
+               if (layout_format == CIRCLE_LAYOUT)
+               {
+               layout_format=RADIAL_LAYOUT;
+               }
+               else if (node_click_behavior == RADIAL_LAYOUT)
+               {
+               layout_format=CIRCLE_LAYOUT;
+               }
+
+               updateOperators();
+               updateLayoutFormatText();
+               vis.update();
+               layout();
+               });
+               updateLayoutFormatText();
+
+               addChild(_layout_format_toogle);
+             */
+
+            _below_vis=new TextSprite("XXX", null, TextSprite.DEVICE);
+            addChild(_below_vis);
         }

         private function addDetail():void
@@ -311,12 +314,12 @@
             addChild(_detail);
         }

-		private function asn_type_to_string(asn_type:String):String
-		{
-			var ret:String;
-
-		     return ret;
-		}
+        private function asn_type_to_string(asn_type:String):String
+        {
+            var ret:String;
+
+            return ret;
+        }

         private function buildData(arr:Array):Data
         {
@@ -326,7 +329,7 @@

             var total_ips:int=0;

-			var o:Object;
+            var o:Object;
             for each (o in arr)
             {
                 var nodeSprite:NodeSprite=data.addNode(o);
@@ -344,7 +347,7 @@

                 var effective_monitorable_ips:int=o['total_monitorable'];
                 var direct_ips:int=o['direct_ips'];
-				var percentage_monitorable = o['percent_monitorable'];
+                var percentage_monitorable=o['percent_monitorable'];
                 var node_size:Number;

                 node_size=1 * Math.log(effective_monitorable_ips) / Math.log(average_ips);
@@ -352,13 +355,13 @@
                 node_size=Math.log(effective_monitorable_ips / average_ips);
                 node_size/=Math.LN10;
                 node_size=Math.max(node_size, 0.3);
-
-                node_size = percentage_monitorable
-
-                node_size /= 10;
-                node_size=Math.max(node_size, 0.3);
-                nodeSprite.size = node_size;
-
+
+                node_size=percentage_monitorable
+
+                node_size/=10;
+                node_size=Math.max(node_size, 0.3);
+                nodeSprite.size=node_size;
+
                 //nodeSprite.size = node_size;
                 if (o['asn'] == 'REST_OF_WORLD')
                 {
@@ -428,47 +431,47 @@

             source_node.getOutEdge(1);
         }
-
-		private function word_wrap(string:String, line_width:int):String
-		{
-			var substrings:Array = string.split(/\s+/);
-			var ret:String = "";
-
-			var line_length:int = 0;
-			for each (var substring:String in substrings)
-			{
-				var substring_length:int = substring.length;
-
-				if (substring_length == 0)
-				{
-					continue;
-				}
-
-				if ((line_length+substring_length) > line_width)
-				{
-					ret += '\n ';
-					line_length = 1;
-				}
-				else if (ret != "")
-				{
-					ret += ' ';
-					line_length += 1;
-				}
-
-				ret += substring;
-				line_length += substring_length;
-			}
-
-			return ret;
-		}
-
-		private function word_wrap_to_default(string:String):String
-		{
-			const line_length_limit:int = 20;
-			var ret:String = word_wrap(string, line_length_limit);
-			return ret;
-		}
-
+
+        private function word_wrap(string:String, line_width:int):String
+        {
+            var substrings:Array=string.split(/\s+/);
+            var ret:String="";
+
+            var line_length:int=0;
+            for each (var substring:String in substrings)
+            {
+                var substring_length:int=substring.length;
+
+                if (substring_length == 0)
+                {
+                    continue;
+                }
+
+                if ((line_length + substring_length) > line_width)
+                {
+                    ret+='\n ';
+                    line_length=1;
+                }
+                else if (ret != "")
+                {
+                    ret+=' ';
+                    line_length+=1;
+                }
+
+                ret+=substring;
+                line_length+=substring_length;
+            }
+
+            return ret;
+        }
+
+        private function word_wrap_to_default(string:String):String
+        {
+            const line_length_limit:int=20;
+            var ret:String=word_wrap(string, line_length_limit);
+            return ret;
+        }
+
         private function get_asn_summary_string(node:NodeSprite):String
         {
             var ret:String="";
@@ -478,7 +481,7 @@
             if (node == rest_of_world_node)
             {
                 ret="This node represents the" + " wider Internet community " + "outside the country.";
-                ret = word_wrap_to_default(ret);
+                ret=word_wrap_to_default(ret);
                 return ret;
             }

@@ -491,15 +494,15 @@
                 asn_name=asn_name.replace(/^([A-Z-])* /, '');
             }

-			//ret += "'" + asn_name + "'\n";
-
-           	/*asn_name = asn_name.replace(/\s+/gm, " ");
-            var pattern:RegExp = /(.{1,25}\S)\s+/g;
-            asn_name = asn_name.replace(pattern, "|$&|$1|\n");
-*/
-
-			asn_name = word_wrap_to_default(asn_name);
-			ret +="";
+            //ret += "'" + asn_name + "'\n";
+
+            /*asn_name = asn_name.replace(/\s+/gm, " ");
+               var pattern:RegExp = /(.{1,25}\S)\s+/g;
+               asn_name = asn_name.replace(pattern, "|$&|$1|\n");
+             */
+
+            asn_name=word_wrap_to_default(asn_name);
+            ret+="";
             ret+=asn_name;

             /* Uncomment to show the full organziation_name for debugging
@@ -510,32 +513,33 @@
              */

             ret+="\n (AS " + data.asn + "#)"
-            ret +="";
+            ret+="";
             ret+="\n";
             ret+="\n" + "Parent of " + number_base.formatRoundingWithPrecision(data.percent_monitorable, NumberBaseRoundType.UP, 3) + "%" + "\n of country IPs";
-			ret+="\n";
+            ret+="\n";
             ret+="\n" + number_base.formatThousands(number_base.formatRounding(data.total_monitorable, NumberBaseRoundType.UP)) + " child Ips"
-            ret += "\n" + number_base.formatThousands(data.direct_ips) + " direct ips";
+            ret+="\n" + number_base.formatThousands(data.direct_ips) + " direct ips";

             ret+="\n" + number_base.formatThousands(node.outDegree + "");
-            if (node.outDegree == 1)
-            	{ ret += " parent";
-
-            	}
+            if (node.outDegree == 1)
+            {
+                ret+=" parent";
+
+            }
             else
             {
-            	ret += " parents";
-            }
-
-            ret+= "\n" + number_base.formatThousands(node.inDegree + "");
-
+                ret+=" parents";
+            }
+
+            ret+="\n" + number_base.formatThousands(node.inDegree + "");
+
             if (node.inDegree == 1)
             {
-            	ret += " child";
+                ret+=" child";
             }
             else
             {
-            	ret += " children ";
+                ret+=" children ";
             }

             //ret += "\n Sprite_size: " + node.size;
@@ -612,47 +616,48 @@
         }

-		private function highlight_immediate_connections(node:NodeSprite, edges_visted:uint, alpha:uint, color:uint):void
-		{
+        private function highlight_immediate_connections(node:NodeSprite, edges_visted:uint, alpha:uint, color:uint):void
+        {
             node.visitEdges(function(e:EdgeSprite):void
                 {
                     e.alpha=0.5;
                     e.lineColor=color;
-                    e.lineColor &= alpha;
-                    //e.source.props.label.color = 0x00cc00;
-                  //  vis.marks.setChildIndex(e, vis.marks.numChildren - 1);
+                    e.lineColor&=alpha;
+                //e.source.props.label.color = 0x00cc00;
+                //  vis.marks.setChildIndex(e, vis.marks.numChildren - 1);
                 }, edges_visted);

             node.visitNodes(function(n:NodeSprite):void
                 {
-                    n.fillColor =color;
-                    n.fillColor &= alpha;
+                    n.fillColor=color;
+                    n.fillColor&=alpha;
                     if (n.fillColor != color)
                     {
-                    	trace("FillColor: " + n.fillColor + " Expected color = " + color);
-                    }
-                }, edges_visted);
-		}
-		private function highlight_recursively(node:NodeSprite, edges_visted:uint, alpha:uint, color:uint):void
-		{
-			if (node.data.hightlighted)
-        		return;
-
-        	node.data.highlighted = true;
-
-        	highlight_immediate_connections(node, edges_visted, alpha, color);
-
-        	alpha &= 0X55FFFFFF;
-        	node.visitNodes(function(n:NodeSprite):void
-                {
-                    highlight_recursively(n,edges_visted, alpha, color);
-                }, edges_visted);
-		}
-
+                        trace("FillColor: " + n.fillColor + " Expected color = " + color);
+                    }
+                }, edges_visted);
+        }
+
+        private function highlight_recursively(node:NodeSprite, edges_visted:uint, alpha:uint, color:uint):void
+        {
+            if (node.data.hightlighted)
+                return;
+
+            node.data.highlighted=true;
+
+            highlight_immediate_connections(node, edges_visted, alpha, color);
+
+            alpha&=0X55FFFFFF;
+            node.visitNodes(function(n:NodeSprite):void
+                {
+                    highlight_recursively(n, edges_visted, alpha, color);
+                }, edges_visted);
+        }
+
         private function highlightNode(node:NodeSprite, alpha:uint=0XFFFFFFFF):void
         {
-        	highlight_recursively(node, NodeSprite.IN_LINKS, alpha, 0xff00ff00);
-        	highlight_recursively(node, NodeSprite.OUT_LINKS, alpha,0xffff0000);
+            highlight_recursively(node, NodeSprite.IN_LINKS, alpha, 0xff00ff00);
+            highlight_recursively(node, NodeSprite.OUT_LINKS, alpha, 0xffff0000);

             vis.update();
         }
@@ -700,46 +705,46 @@
                     //vis.graphics.beginFill(0XFF000000);
             }

-			var button_y_pos:int =   10; // vis.bounds.height + 5;
-
+            var button_y_pos:int=10; // vis.bounds.height + 5;
+
             if (_edges_toogle_container)
             {
                 _edges_toogle_container.y=button_y_pos;
-                //_edges_toogle.y=0;
+                    //_edges_toogle.y=0;
             }

             if (_layout_format_toggle_container)
             {
                 //_layout_format_toogle.y= _edges_toogle.y + _edges_toogle.height + 10;
-                _layout_format_toggle_container.y = _edges_toogle_container.y;
-                _layout_format_toggle_container.x = _edges_toogle_container.x + _edges_toogle_container.width + 15;
-            }
-
-            var vis_y_pos:int    =  _layout_format_toggle_container.y + 10;
+                _layout_format_toggle_container.y=_edges_toogle_container.y;
+                _layout_format_toggle_container.x=_edges_toogle_container.x + _edges_toogle_container.width + 15;
+            }
+
+            var vis_y_pos:int=_layout_format_toggle_container.y + 10;
             vis.update();
-
+
             if (_detail)
             {
                 _detail.x=vis.bounds.width + 1;
-                _detail.y=vis.bounds.y + vis.bounds.height/5;
+                _detail.y=vis.bounds.y + vis.bounds.height / 5;
             }

             if (_node_click_behavior_toggle)
             {
                 //_node_click_behavior_toggle.y=_edges_toogle.y + _edges_toogle.height + 10;
-                _node_click_behavior_toggle.y= _detail.y + _detail.height + 10;
-                _node_click_behavior_toggle.x= _detail.x;
+                _node_click_behavior_toggle.y=_detail.y + _detail.height + 10;
+                _node_click_behavior_toggle.x=_detail.x;
             }

             vis.y=vis_y_pos;
-
-            _below_vis.text = "";
-            _below_vis.text+= "vis bounds  " +vis.bounds;
-            _below_vis.text+= " vis.x " + vis.x;
-            _below_vis.text+= " vis.y " + vis.y;
-            _below_vis.y=vis.y+vis.bounds.height;
-            _below_vis.x=vis.y+vis.bounds.width/2;
-            _below_vis.text+= "under vis " +_below_vis.y
+
+            _below_vis.text="";
+            _below_vis.text+="vis bounds  " + vis.bounds;
+            _below_vis.text+=" vis.x " + vis.x;
+            _below_vis.text+=" vis.y " + vis.y;
+            _below_vis.y=vis.y + vis.bounds.height;
+            _below_vis.x=vis.y + vis.bounds.width / 2;
+            _below_vis.text+="under vis " + _below_vis.y
         }

         private function restore_edges_color():void
@@ -753,24 +758,24 @@
             dim_edges_color();
         }

-		private function isPointOfControl(node:NodeSprite):Boolean
-		{
-			return node.data.is_point_of_control;
-		}
-
+        private function isPointOfControl(node:NodeSprite):Boolean
+        {
+            return node.data.is_point_of_control;
+        }
+
         private function restore_nodes_color():void
         {
             for each (var _node:NodeSprite in vis.data.nodes)
             {
-            	_node.data.highlighted = false;
+                _node.data.highlighted=false;
                 _node.fillColor=_default_node_fill_color;
-                if (isPointOfControl(_node) )
-                {
-    				_node.lineColor = _node_point_of_control_line_color;
+                if (isPointOfControl(_node))
+                {
+                    _node.lineColor=_node_point_of_control_line_color;
                 }
                 else
                 {
-	                _node.lineColor=_default_node_line_color;
+                    _node.lineColor=_default_node_line_color;
                 }
                 _node.focusRect=true;
                 _node.dirty();
@@ -823,36 +828,36 @@

         private function updateEdgeToogleText(toggle_sprite:Sprite, toggle_var:Boolean):void
         {
-        	var show_text:TextSprite  = (TextSprite) (toggle_sprite.getChildByName("true_text"));
-        	var hide_text:TextSprite  = (TextSprite) (toggle_sprite.getChildByName("false_text"));
-
+            var show_text:TextSprite=(TextSprite)(toggle_sprite.getChildByName("true_text"));
+            var hide_text:TextSprite=(TextSprite)(toggle_sprite.getChildByName("false_text"));
+
             if (toggle_var)
             {
-                hide_text.color= 0XFF0000FF;
-                show_text.color= 0XFF666666;
-            }
-			else
-            {
-                show_text.color= 0XFF0000FF;
-                hide_text.color= 0XFF666666;
-            }
-
-             update();
-        }
-
-/*
-        private function updateLayoutFormatText():void
-        {
-            if (layout_format == CIRCLE_LAYOUT)
-            {
-                _layout_format_toogle.text="CIRCLE LAYOUT / radial layout";
-            }
-            else if (layout_format == RADIAL_LAYOUT)
-            {
-            	_layout_format_toogle.text="circle layout / RADIAL LAYOUT";
-            }
-        }
-*/
+                hide_text.color=0XFF0000FF;
+                show_text.color=0XFF666666;
+            }
+            else
+            {
+                show_text.color=0XFF0000FF;
+                hide_text.color=0XFF666666;
+            }
+
+            update();
+        }
+
+        /*
+           private function updateLayoutFormatText():void
+           {
+           if (layout_format == CIRCLE_LAYOUT)
+           {
+           _layout_format_toogle.text="CIRCLE LAYOUT / radial layout";
+           }
+           else if (layout_format == RADIAL_LAYOUT)
+           {
+           _layout_format_toogle.text="circle layout / RADIAL LAYOUT";
+           }
+           }
+         */
         private function updateNodeClickBehaviorText(node_click_behavior:uint=0):void
         {
             switch (node_click_behavior)
@@ -868,8 +873,8 @@
                     _node_click_behavior_toggle.text="Showing node's parent and child link. Click node again to see its path to the wider Internet.";
                     break;
             }
-
-            _node_click_behavior_toggle.text = word_wrap_to_default(_node_click_behavior_toggle.text);
+
+            _node_click_behavior_toggle.text=word_wrap_to_default(_node_click_behavior_toggle.text);
         }

         private function updateOperators(layout_format:uint):void
@@ -880,10 +885,10 @@
             vis.scaleY=1;
             //vis.bounds.height=1000;
             //vis.bounds.width=1000;
-
-            const CIRCLE_LAYOUT_BOUNDS:int = 1000;
-
-
+
+            const CIRCLE_LAYOUT_BOUNDS:int=1000;
+
+
             if (layout_format == CIRCLE_LAYOUT)
             {
                 var circle_layout:CircleLayout=new CircleLayout(null, null, true);
@@ -897,7 +902,7 @@
                             //vis.scaleY = 0.5;
                     }
                 }
-                circle_layout.layoutBounds= new Rectangle(0,0,CIRCLE_LAYOUT_BOUNDS,CIRCLE_LAYOUT_BOUNDS);
+                circle_layout.layoutBounds=new Rectangle(0, 0, CIRCLE_LAYOUT_BOUNDS, CIRCLE_LAYOUT_BOUNDS);
                 //circle_layout.startRadiusFraction = 1/5;
                 vis.operators.add(circle_layout);
                 if (scale_graph)
@@ -909,7 +914,7 @@
             else if (layout_format == RADIAL_LAYOUT)
             {
                 var circle_layout:CircleLayout=new CircleLayout(null, null, true);
-                circle_layout.layoutBounds= new Rectangle(0,0,CIRCLE_LAYOUT_BOUNDS,CIRCLE_LAYOUT_BOUNDS);
+                circle_layout.layoutBounds=new Rectangle(0, 0, CIRCLE_LAYOUT_BOUNDS, CIRCLE_LAYOUT_BOUNDS);
                 vis.operators.add(circle_layout);
                 CircleLayout(vis.operators.last).startRadiusFraction=3 / 5;
                 // bundle edges to route along the tree structure
@@ -920,9 +925,9 @@

             vis.bounds.x=0;
             vis.bounds.y=0;
-            vis.scaleX = VISUALIZATION_BOUNDS/CIRCLE_LAYOUT_BOUNDS;
-            vis.scaleY = VISUALIZATION_BOUNDS/CIRCLE_LAYOUT_BOUNDS;
-            vis.cacheAsBitmap = true;
+            vis.scaleX=VISUALIZATION_BOUNDS / CIRCLE_LAYOUT_BOUNDS;
+            vis.scaleY=VISUALIZATION_BOUNDS / CIRCLE_LAYOUT_BOUNDS;
+            vis.cacheAsBitmap=true;
         }

     }


Transferred from the Adobe Open Source Subversion Repository

Revision: 19060
Author:   harishs@adobe.com
Date:     2010-12-06T17:34:15.020965Z

Log Message:
-----------
QE notes: Did checkintests, performed full cyclone run. There were 19 failures in mustella report. QE Judy (Mingzhou Gao and Joann Chung Anderson) confirmed that they are known problems.
Doc notes: As part of Sort and Sortfield updates, the asdoc comments were updated to reflect globalization changes.
Bugs: Fixed sdk-28493, 28691,28494, 28345, 28320, 28387, 28314, 28145
Reviewer: Gordon Smith
Tests run: cyclone, checkintests, bugs testfiles
Is noteworthy for integration: Sort and Sortfield updated with globalization support using the new spark globalization sort classes.
Number and CurrencyValidators support national digits and unicode minus symbols.
groupingPattern property dropped for Number and Currency Validators.

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/tests/basicTests/BasicTests-config.xml</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/collections/SortField.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mx/src/mx/controls/DataGrid.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/validators/supportClasses/NumberValidatorBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/collections/ICollectionView.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/collections/ISort.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/spark-manifest.xml</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/collections/ISortField.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/tests/basicTests/BasicTests.mxml</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/collections/Sort.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/validators/NumberValidator.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/advancedgrids/src/mx/olap/OLAPCube.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/validators/CurrencyValidator.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/collections/SortField.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/core/UIComponent.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/bundles/en_US/validators.properties</path>
<path kind="dir" action="A">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/collections</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/mx/src/mx/controls/treeClasses/HierarchicalCollectionView.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/collections/ListCollectionView.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/components/Group.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/spark/src/spark/validators/supportClasses/GlobalizationUtils.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/advancedgrids/src/mx/olap/DefaultCubeImpl.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/advancedgrids/src/mx/controls/AdvancedDataGridBaseEx.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/tests/basicTests/spark/scripts/SortTestScript.mxml</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/advancedgrids/src/mx/collections/HierarchicalCollectionView.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/collections/Sort.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/hero_private/frameworks/projects/framework/src/mx/collections/ModifiedCollectionView.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/hero_private/frameworks/tests/basicTests/spark/views/SortTests.mxml</path>

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

--- frameworks/projects/framework/src/mx/collections/ISort.as
+++ frameworks/projects/framework/src/mx/collections/ISort.as
@@ -0,0 +1,290 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+//  ADOBE SYSTEMS INCORPORATED
+//  Copyright 2005-2010 Adobe Systems Incorporated
+//  All Rights Reserved.
+//
+//  NOTICE: Adobe permits you to use, modify, and distribute this file
+//  in accordance with the terms of the license agreement accompanying it.
+//
+////////////////////////////////////////////////////////////////////////////////
+
+package mx.collections
+{
+
+    /**
+     *  The ISort interface defines the interface for classes that
+     *  provide the sorting information required to sort the
+     *  data of a collection view.
+     *
+     *  @see mx.collections.ICollectionView
+     *  @see mx.collections.ISortField
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 4.5
+     */
+public interface ISort
+{
+    //--------------------------------------------------------------------------
+    //
+    //  Properties
+    //
+    //--------------------------------------------------------------------------
+
+    /**
+     *  The method used to compare items when sorting.
+     *  If you specify this property, Flex ignores any
+     *  compareFunction properties that you specify in the
+     *  ISortField objects that you use in this class.
+     *
+     *
The compare function must have the following signature:

+     *
+     *

+     *
+     *     function [name](a:Object, b:Object, fields:Array = null):int
+     *
+     *

+     *
+     *
This function must return the following
+     *

+     *
-1, if a should appear before b in
+     *        the sorted sequence

+     *
0, if a equals b

+     *
1, if a should appear after b in the
+     *        sorted sequence

+     *

+     *
To return to the internal comparision function set this value to
+     *  null.

+     *

+     *  The fields array specifies the object fields
+     *  to compare.
+     *  Typically the algorithm will compare properties until the field list is
+     *  exhausted or a non zero value can be returned.
+     *  For example:

+     *
+     *

+     *    function myCompare(a:Object, b:Object, fields:Array = null):int
+     *    {
+     *        var result:int = 0;
+     *        var i:int = 0;
+     *        var propList:Array = fields ? fields : internalPropList;
+     *        var len:int = propList.length;
+     *        var propName:String;
+     *        while (result == 0 && (i < len))
+     *        {
+     *            propName = propList[i];
+     *            result = compareValues(a[propName], b[propName]);
+     *            i++;
+     *        }
+     *        return result;
+     *    }
+     *
+     *    function compareValues(a:Object, b:Object):int
+     *    {
+     *        if (a == null && b == null)
+     *            return 0;
+     *
+     *        if (a == null)
+     *          return 1;
+     *
+     *        if (b == null)
+     *           return -1;
+     *
+     *        if (a < b)
+     *            return -1;
+     *
+     *        if (a > b)
+     *            return 1;
+     *
+     *        return 0;
+     *    }
+     *

+     *
+     *
The default value is an internal compare function that can perform
+     *  a string, numeric, or date comparison in ascending or descending order.
+     *  Specify your own function only if you need a need a custom
+     *  comparison algorithm. This is normally only the case if a calculated
+     *  field is used in a display.

+     *
+     *
Alternatively you can specify separate compare functions for each
+     *  sort field by using the ISortField class compareFunction
+     *  property; This way you can use the default comparison for some
+     *  fields and a custom comparison for others.

+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 4.5
+     */
+    function get compareFunction():Function;
+    function set compareFunction(value:Function):void;
+
+    /**
+     *  An Array of ISortField objects that specifies the fields to compare.
+     *  The order of the ISortField objects in the array determines
+     *  field priority order when sorting.
+     *  The default sort comparator checks the sort fields in array
+     *  order until it determinines a sort order for the two
+     *  fields being compared.
+     *
+     *  @default null
+     *
+     *  @see ISortField
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 4.5
+     */
+    function get fields():Array;
+    function set fields(value:Array):void;
+
+    /**
+     *  Indicates if the sort should be unique.
+     *  Unique sorts fail if any value or combined value specified by the
+     *  fields listed in the fields property result in an indeterminate or
+     *  non-unique sort order; that is, if two or more items have identical
+     *  sort field values. An error is thrown if the sort is not unique.
+     *
+     *  @default false
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 4.5
+     */
+    function get unique():Boolean;
+    function set unique(value:Boolean):void;
+
+    //--------------------------------------------------------------------------
+    //
+    //  Methods
+    //
+    //--------------------------------------------------------------------------
+
+    /**
+     *  Finds the specified object within the specified array (or the insertion
+     *  point if asked for), returning the index if found or -1 if not.
+     *  The ListCollectionView class findxxx() methods use
+     *  this method to find the requested item; as a general rule, it is
+     *  easier to use these functions, and not findItem() to find
+     *  data in ListCollectionView-based objects.
+     *  You call the findItem() method directly when writing a
+     *  class that supports sorting, such as a new ICollectionView
+     *  implementation.
+     *
+     *  @param items the Array within which to search.
+     *  @param values Object containing the properties to look for (or
+     *                the object to search for, itself).
+     *                The object must consist of field name/value pairs, where
+     *                the field names are names of fields specified by the
+     *                fields property, in the same order they
+     *                are used in that property.
+     *                You do not have to specify all of the fields from the
+     *                fields property, but you
+     *                cannot skip any in the order.
+     *                Therefore, if the fields
+     *                properity lists three fields, you can specify its first
+     *                and second fields in this parameter, but you cannot
+     *                specify  only the first and third fields.
+     *  @param mode String containing the type of find to perform.
+     *           Valid values are
+     *

+     *
ANY_INDEX_MODE
 Return any position that
+     *                   is valid for the values.
+     *
FIRST_INDEX_MODE
 Return the position
+     *                   where the first occurrance of the values is found.
+     *
LAST_INDEX_MODE
 Return the position
+     *                   where the
+     *                   last ocurrance of the specified values is found.
+     *

+     *  @param returnInsertionIndex If the method does not find an item
+     *                     identified by the values parameter,
+     *                     and this parameter is true the
+     *                     findItem()
+     *                     method returns the insertion point for the values,
+     *                     that is the point in the sorted order where you
+     *                     should insert the item.
+     *  @param compareFunction a comparator function to use to find the item.
+     *                 If you do not specify this parameter, the function uses
+     *                 the function determined by the ISort instance's
+     *                 compareFunction property,
+     *                 passing in the array of fields determined
+     *                 by the values object and the current SortFields.
+     *  @return int The index in the array of the found item.
+     *                If the returnInsertionIndex parameter is
+     *              false and the item is not found, returns -1.
+     *                If the returnInsertionIndex parameter is
+     *              true and the item is not found, returns
+     *                the index of the point in the sorted array where the
+     *                values would be inserted.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 4.5
+     */
+    function findItem(
+                items:Array,
+                values:Object,
+                mode:String,
+                returnInsertionIndex:Boolean = false,
+                compareFunction:Function = null):int;
+
+    /**
+     *  Return whether the specified property is used to control the sort.
+     *  The function cannot determine a definitive answer if the sort uses a
+     *  custom comparator; it always returns true in this case.
+     *
+     *  @param property The name of the field that to test.
+     *  @return Whether the property value might affect the sort outcome.
+     *  If the sort uses the default compareFunction, returns
+     *  true if the
+     *  property parameter specifies a sort field.
+     *  If the sort or any ISortField uses a custom comparator,
+     *  there's no way to know, so return true.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 4.5
+     */
+    function propertyAffectsSort(property:String):Boolean;
+
+    /**
+     *  Goes through the fields array and calls reverse() on
+     *  each of the ISortField objects in the array.
+     *  If the field was descending now it is ascending, and vice versa.
+     *
+     *
Note: an ICollectionView does not automatically update when the
+     *  objects in the fields array are modified; call
+     *  its refresh() method to update the view.

+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 4.5
+     */
+    function reverse():void;
+
+    /**
+     *  Apply the current sort to the specified array (not a copy).
+     *  To prevent the array from being modified, create a copy
+     *  use the copy in the items parameter.
+     *
+     *
Flex ICollectionView implementations call the sort
+     *  method automatically and ensure that the sort is performed on a
+     *  copy of the underlying data.

+     *
+     *  @param items Array of items to sort.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 9
+     *  @playerversion AIR 1.1
+     *  @productversion Flex 4.5
+     */
+   function sort(items:Array):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@1260095 13f79535-47bb-0310-9956-ffa450edef68

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


Revert "Fix for Callout positioning on rotate FLEX-34712"

This reverts commit b5e1c0b1ba007709194cd61e2cf117959b467828.

--- frameworks/projects/spark/src/spark/components/Callout.as
+++ frameworks/projects/spark/src/spark/components/Callout.as
@@ -244,8 +244,6 @@
     //--------------------------------------------------------------------------

     private var invalidatePositionFlag:Boolean = false;
-
-    private var stageOrientationChangedFlag:Boolean = false;

     //--------------------------------------------------------------------------
     //
@@ -766,7 +764,6 @@
         // reset state
         invalidatePositionFlag = false;
         arrowDirectionAdjusted = false;
-        stageOrientationChangedFlag = false;

         // Add to PopUpManager, calls updatePopUpPosition(), and change state
         super.open(owner, modal);
@@ -776,10 +773,6 @@

         if (systemManagerParent)
             systemManagerParent.addEventListener(Event.RESIZE, systemManager_resizeHandler);
-
-        // Detect stage orientation change and set flag
-        if (stage)
-	    stage.addEventListener(StageOrientationEvent.ORIENTATION_CHANGE, stage_orientationChangeHandler);
     }

     /**
@@ -794,9 +787,6 @@

         if (systemManagerParent)
             systemManagerParent.removeEventListener(Event.RESIZE, systemManager_resizeHandler);
-
-        if (stage)
-            stage.removeEventListener(StageOrientationEvent.ORIENTATION_CHANGE, stage_orientationChangeHandler);

         super.close(commit, data);
     }
@@ -812,17 +802,8 @@
         // explicit changes to horizontalPostion and verticalPosition.
         if (isOpen && invalidatePositionFlag)
         {
-            //check if stage orientation changed
-            if (stageOrientationChangedFlag)
-            {
-                //queue call to updatePopUpPosition
-                callLater(updatePopUpPosition);
-                stageOrientationChangedFlag = false;
-            }
-            else
-            {
-                updatePopUpPosition();
-            }
+            updatePopUpPosition();
+            invalidatePositionFlag = false;
         }

         // Position the arrow
@@ -1702,29 +1683,19 @@
      */
     private function systemManager_resizeHandler(event:Event):void
     {
-       	// Remove explicit settings if due to Resize effect
-       	softKeyboardEffectResetExplicitSize();
+        // Remove explicit settings if due to Resize effect
+        softKeyboardEffectResetExplicitSize();

         // Screen resize might require a new arrow direction and callout position
         invalidatePosition();

-      	if (!isSoftKeyboardEffectActive)
+        if (!isSoftKeyboardEffectActive)
         {
             // Force validation and use new screen size only if the keyboard
             // effect is not active. The stage dimensions may be invalid while
             // the soft keyboard is active. See SDK-31860.
             validateNow();
         }
-     }
-
-    /**
-    *  @private
-    */
-    private function stage_orientationChangeHandler(event:StageOrientationEvent):void
-    {
-        //set flag to use in updateDisplayList
-        //for queuing call to updatePopUpPosition
-        stageOrientationChangedFlag = true;
-    }
-  }
+    }
 }
+}


Transferred from the Adobe Open Source Subversion Repository

Revision: 11095
Author:   eitan@ascender.com
Date:     2009-10-22T23:34:03.596935Z

Log Message:
-----------
Added changes in spark components to use AccImpl.

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/RadioButton.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/projects/spark/src/spark/components/supportClasses/Slider.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/TextArea.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/Spinner.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/Panel.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/ButtonBar.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/ButtonBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/ListBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/SkinnableTextBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/TextInput.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/NumericStepper.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/CheckBox.as</path>

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

--- frameworks/projects/spark/src/spark/components/Spinner.as
+++ frameworks/projects/spark/src/spark/components/Spinner.as
@@ -18,11 +18,14 @@
 import flash.events.MouseEvent;
 import flash.ui.Keyboard;

+import mx.core.mx_internal;
 import mx.events.FlexEvent;
 import mx.managers.IFocusManagerComponent;

 import spark.components.supportClasses.Range;

+use namespace mx_internal;
+
 /**
  *  Dispatched when the value of the Spinner control changes
  *  as a result of user interaction.
@@ -98,6 +101,7 @@

 [IconFile("Spinner.png")]

+[AccessibilityClass(implementation="spark.accessibility.SpinnerAccImpl")]
 /**
  *  A Spinner component selects a value from an
  *  ordered set. It uses two buttons that increase or
@@ -189,6 +193,18 @@

     //--------------------------------------------------------------------------
     //
+    //  Class mixins
+    //
+    //--------------------------------------------------------------------------
+
+    /**
+     *  @private
+     *  Placeholder for mixin by SpinnerAccImpl.
+     */
+    mx_internal static var createAccessibilityImplementation:Function;
+
+    //--------------------------------------------------------------------------
+    //
     //  Constructor
     //
     //--------------------------------------------------------------------------
@@ -280,6 +296,22 @@
     {
         _allowValueWrap = value;
     }
+
+    //--------------------------------------------------------------------------
+    //
+    //  Overridden methods
+    //
+    //--------------------------------------------------------------------------
+
+     /**
+     *  @private
+     */
+    override protected function initializeAccessibility():void
+    {
+        if (Spinner.createAccessibilityImplementation != null)
+            Spinner.createAccessibilityImplementation(this);
+    }
+

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


Transferred from the Adobe Open Source Subversion Repository

Revision: 3756
Author:   gruehle@adobe.com
Date:     2008-10-20T21:38:18.681299Z

Log Message:
-----------
Adding placeholder icons for the Gumbo components that appear in the FB components panel. Where possible, these are simply copies of the Halo icons. There were some that didn't have a direct Halo counterpart, so the closest match was chosen.

QE Notes: None
Doc Notes: None
Bugs: SDK-17668
Reviewer: -

Modified Paths:
--------------
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxTextInput.png</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxScroller.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/HGroup.png</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/DataGroup.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxVScrollBar.png</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/TextBox.png</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxList.png</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxDataContainer.png</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/Group.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxSpinner.png</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/TextGraphic.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxContainer.png</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxTextInput.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxNumericStepper.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/VGroup.png</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/HGroup.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxScroller.png</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxCheckBox.png</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/TextBox.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxHSlider.png</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxButton.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxRadioButton.png</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxDataContainer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxTextArea.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxToggleButton.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxSpinner.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/graphics/TextGraphic.png</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/TextView.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxContainer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/VGroup.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxCheckBox.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxNumericStepper.png</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxVSlider.png</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxRadioButton.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxHSlider.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxHScrollBar.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxButton.png</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxToggleButton.png</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxTextArea.png</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/TextView.png</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxVSlider.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxVScrollBar.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/DataGroup.png</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxList.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/FxHScrollBar.png</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/flex4/src/mx/components/Group.png</path>

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

--- frameworks/projects/spark/src/spark/components/VSlider.as
+++ frameworks/projects/spark/src/spark/components/VSlider.as
@@ -17,6 +17,8 @@
 import mx.layout.ILayoutItem;
 import mx.layout.LayoutItemFactory;
 import mx.components.baseClasses.FxSlider;
+
+[IconFile("FxVSlider.png")]

 /**
  *  The FxVSlider class defines a vertical slider component.


Transferred from the Adobe Open Source Subversion Repository

Revision: 15614
Author:   jszeto@adobe.com
Date:     2010-04-20T23:14:52.697983Z

Log Message:
-----------
Initial implementations of Form classes

- uses mx Canvas instead of FormItemLayout

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/flex4_5/frameworks/projects/spark/src/SparkClasses.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/flex4_5/frameworks/projects/spark/src/spark/components/IFormItem.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/flex4_5/frameworks/projects/spark/src/spark/layouts/FormLayout.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/flex4_5/frameworks/projects/spark/defaults.css</path>
<path kind="file" action="A">/private/flex/sdk/branches/flex4_5/frameworks/projects/spark/src/spark/components/FormItem.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/flex4_5/frameworks/projects/spark/src/spark/skins/spark/StackedFormItemSkin.mxml</path>
<path kind="file" action="A">/private/flex/sdk/branches/flex4_5/frameworks/projects/spark/src/spark/components/Form.as</path>
<path kind="file" action="A">/private/flex/sdk/branches/flex4_5/frameworks/projects/spark/src/spark/skins/spark/FormItemSkin.mxml</path>

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

--- frameworks/projects/spark/src/spark/layouts/FormLayout.as
+++ frameworks/projects/spark/src/spark/layouts/FormLayout.as
@@ -0,0 +1,241 @@
+package spark.layouts
+{
+    ////////////////////////////////////////////////////////////////////////////////
+    //
+    //  ADOBE SYSTEMS INCORPORATED
+    //  Copyright 2008 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.
+    //
+    ////////////////////////////////////////////////////////////////////////////////
+
+    import mx.containers.utilityClasses.ConstraintColumn;
+    import mx.core.IVisualElement;
+    import mx.core.UIComponent;
+
+    import spark.components.IFormItem;
+    import spark.components.supportClasses.GroupBase;
+
+    /**
+     *  The default layout for Spark Form skins.
+     *
+     *  @langversion 3.0
+     *  @playerversion Flash 10
+     *  @playerversion AIR 1.5
+     *  @productversion Flex 4
+     */
+    public class FormLayout extends VerticalLayout
+    {
+
+        public function FormLayout()
+        {
+            super();
+        }
+
+        private var columnMaxWidths:Vector.<Number>;
+
+        //----------------------------------
+        //  constraintColumns
+        //----------------------------------
+
+        private var _constraintColumns:Array;
+        private var constraintColumnsChanged:Boolean = false;
+
+        [Bindable("constraintColumnsChanged")]
+        [Inspectable(category="General", defaultValue="")]
+
+        /**
+         *
+         *
+         *  @langversion 3.0
+         *  @playerversion Flash 10
+         *  @playerversion AIR 1.5
+         *  @productversion Flex 3
+         */
+        public function get constraintColumns():Array
+        {
+            return _constraintColumns;
+        }
+
+        /**
+         *  @private
+         */
+        public function set constraintColumns(value:Array):void
+        {
+            if (_constraintColumns == value)
+                return;
+
+            _constraintColumns = value;
+            constraintColumnsChanged = true;
+            invalidateTargetSizeAndDisplayList();
+        }
+
+        /**
+         *  @private
+         *  If the style's value is undefined or NaN for the layout target, return 0.
+         */
+        private static function getStyleNumericValue(c:UIComponent, styleName:String):Number
+        {
+            const n:Number =  Number(c.getStyle(styleName));  // Number(undefined) => NaN
+            return (isNaN(n)) ? 0 : n;
+        }
+
+        private function invalidateTargetSizeAndDisplayList():void
+        {
+            var g:GroupBase = target;
+            if (!g)
+                return;
+
+            g.invalidateSize();
+            g.invalidateDisplayList();
+        }
+
+        /**
+         *  @private
+         *  The layoutTarget is assumed to be the contentGroup, it's owner is the skin,
+         *  and the skin's hostComponent is the Form.
+         */
+        /*private static function getForm(layoutTarget:GroupBase):Form
+        {
+            const skin:Skin = layoutTarget.owner as Skin;
+            return (skin) ? Object(skin).hostComponent as Form : null;
+
+        }*/
+
+        /**
+         *  @private
+         */
+        override public function measure():void
+        {
+
+            var colsMaxWidth:Vector.<Number>;
+
+
+
+            // Apply constraint columns before measuring
+            const layoutTarget:GroupBase = target;
+            if (!layoutTarget)
+                return;
+
+            const nElts:int = layoutTarget.numElements;
+            var formItem:IFormItem
+            var elt:IVisualElement
+
+            for(var i:int = 0; i < nElts; i++)
+            {
+                elt = layoutTarget.getElementAt(i);
+                if (elt is IFormItem)
+                {
+                    formItem = IFormItem(elt);
+                    var cols:Vector.<Number> = formItem.measuredColumnWidths;
+
+                    if (colsMaxWidth == null)
+                    {
+                        colsMaxWidth = new Vector.<Number>();
+                        for (var j:int = 0; j < cols.length; j++)
+                            colsMaxWidth[j] = 0;
+                    }
+
+                    for (var k:int = 0; k < cols.length; k++)
+                    {
+                        colsMaxWidth[k] = Math.max(colsMaxWidth[k], cols[k]);
+                    }
+
+                    //formItem.constraintColumns = constraintColumns;
+                }
+            }
+
+            columnMaxWidths = colsMaxWidth.slice(0);
+
+            for(i = 0; i < nElts; i++)
+            {
+                elt = layoutTarget.getElementAt(i);
+                if (elt is IFormItem)
+                {
+                    formItem = IFormItem(elt);
+                    formItem.layoutColumnWidths = columnMaxWidths;
+                }
+            }
+            super.measure();
+
+            /*const layoutTarget:GroupBase = target;
+            if (!layoutTarget)
+                return;
+
+            var maxLabelColumnW:Number = 0;
+            var maxIndicatorColumnW:Number = 0;
+            var maxContentColumnW:Number = 0;
+
+            const nElts:int = layoutTarget.numElements;
+            for(var i:int = 0; i < nElts; i++)
+            {
+                var elt:IVisualElement = layoutTarget.getElementAt(i);
+                if (elt is FormItem)
+                {
+                    var formItem:FormItem = FormItem(elt);
+                    var paddingLeft:Number = getStyleNumericValue(formItem, "paddingLeft");
+                    var labelColumnW:Number = formItem.labelColumnWidth + paddingLeft;
+                    var indicatorColumnW:Number = formItem.indicatorColumnWidth;
+                    var totalW:Number = formItem.getPreferredBoundsWidth();
+
+                    maxLabelColumnW = Math.max(maxLabelColumnW, labelColumnW);
+                    maxIndicatorColumnW = Math.max(maxIndicatorColumnW, indicatorColumnW);
+                    maxContentColumnW = Math.max(maxContentColumnW, totalW - indicatorColumnW - labelColumnW);
+                }
+                else if (elt is FormHeading)
+                    maxContentColumnW = Math.max(maxContentColumnW, elt.getPreferredBoundsWidth());
+            }
+
+            maxLabelColumnW = Math.ceil(maxLabelColumnW);
+            maxIndicatorColumnW = Math.ceil(maxIndicatorColumnW);
+            maxContentColumnW = Math.ceil(maxContentColumnW);
+
+            var superMeasuredW:Number = layoutTarget.measuredWidth;
+            var formMeasuredW:Number = maxLabelColumnW + maxIndicatorColumnW + maxContentColumnW;
+            layoutTarget.measuredWidth = Math.max(superMeasuredW, formMeasuredW);
+            layoutTarget.measuredMinWidth = layoutTarget.measuredWidth;
+
+            const form:Form = getForm(layoutTarget);
+            if (form)
+            {
+                form.labelColumnWidth = maxLabelColumnW;
+                form.indicatorColumnWidth = maxIndicatorColumnW;
+            }*/
+        }
+
+        /**
+         *  @private
+         */
+        override public function updateDisplayList(width:Number, height:Number):void
+        {
+            super.updateDisplayList(width, height);
+
+            /*const layoutTarget:GroupBase = target;
+            if (!layoutTarget)
+                return;
+
+            const form:Form = getForm(layoutTarget);
+            if (!form)
+                return;
+
+            const nElts:int = layoutTarget.numElements;
+            const contentColumnLeft:Number = form.labelColumnWidth + form.indicatorColumnWidth;
+            for(var i:int = 0; i < nElts; i++)
+            {
+                var formHeading:FormHeading = layoutTarget.getElementAt(i) as FormHeading;
+                if (!formHeading)
+                    continue;
+
+                var labelDisplay:IVisualElement = formHeading.labelDisplay;
+                if (labelDisplay)
+                {
+                    labelDisplay.setLayoutBoundsSize(NaN, NaN);  // preferred size
+                    labelDisplay.setLayoutBoundsPosition(contentColumnLeft, labelDisplay.getLayoutBoundsY());
+                }
+            }*/
+        }
+    }
+}
+


Transferred from the Adobe Open Source Subversion Repository

Revision: 21350
Author:   deeptika@adobe.com
Date:     2011-06-08T05:47:57.060811Z

Log Message:
-----------
For Area Charts, we should not filter 0 values.

QE notes:
Doc notes:
Bugs: FLEXDMV-2580 (Chart Points not calculated/rendered correctly in Stacked Chart)
Reviewer:
Tests run: Checkintests
Is noteworthy for integration:

Modified Paths:
--------------
/private/flex/sdk/branches/4.y/frameworks/projects/charts/src/mx/charts/series/AreaSeries.as

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

--- frameworks/projects/charts/src/mx/charts/series/AreaSeries.as
+++ frameworks/projects/charts/src/mx/charts/series/AreaSeries.as
@@ -1856,16 +1856,8 @@
                 {
                     stackedValue = 0;
                 }
-                if (yValue == 0)
-                {
-                	chartItem.yValue = 0;
-                	chartItem.minValue = 0;
-                }
-                else
-                {
-                	chartItem.yValue = yValue + stackedValue;
-                	chartItem.minValue = stackedValue;
-                }
+				chartItem.yValue = yValue + stackedValue;
+                chartItem.minValue = stackedValue;
                 yValue += stackedValue;
                 //chartItem.minValue = stackedValue;
                 stackedXValueDictionary[xValue] = yValue;
@@ -1955,17 +1947,8 @@
                     stackedValue = 0;
                 }

-                if (yValue == 0)
-                {
-                	chartItem.yValue = 0;
-                	chartItem.minValue = 0;
-                }
-                else
-                {
-                	chartItem.yValue = yValue + stackedValue;
-                	chartItem.minValue = stackedValue;
-                }
-
+                chartItem.yValue = yValue + stackedValue;
+                chartItem.minValue = stackedValue;
                 yValue += stackedValue;
                 //chartItem.minValue = stackedValue;
                 if (yValue >= 0)


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

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

 package mx.charts.series
 {


Transferred from the Adobe Open Source Subversion Repository

Revision: 3257
Author:   jimurphy@adobe.com
Date:     2008-09-18T18:16:26.838722Z

Log Message:
-----------
-Merged 3.0.X revisions 3232,3236,3238,3244 -> trunk
-integrated:
 Player build d604
 flex-messaging-common.jar 4.0.0.3256

Modified Paths:
--------------
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/listClasses/TileListItemRenderer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/lib/flex-messaging-common.jar</path>
<path kind="file" action="M">/flex/sdk/trunk/in/player/10/win/Install Flash Player 10 Plugin.exe</path>
<path kind="file" action="M">/flex/sdk/trunk/in/player/10/mac/Install Flash Player 10 UB.dmg</path>
<path kind="file" action="M">/flex/sdk/trunk/in/player/10/win/Install Flash Player 10 ActiveX.exe</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/PopUpButton.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/Menu.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/TextInput.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/libs/player/10/playerglobal.swc</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/ComboBox.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/defaults-2.0.0.css</path>
<path kind="dir" action="M">/flex/sdk/trunk</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/defaults-2.0.1.css</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/listClasses/ListItemRenderer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/in/player/10/lnx/flashplayer.tar.gz</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/ColorPicker.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/TextArea.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/defaults.css</path>
<path kind="file" action="M">/flex/sdk/trunk/in/player/10/lnx/install_flash_player_10_linux.tar.gz</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/DateField.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/FlexModuleFactory.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/treeClasses/TreeItemRenderer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/dataGridClasses/DataGridItemRenderer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/in/player/10/lnx/libflashplayer.so.tar.gz</path>
<path kind="file" action="M">/flex/sdk/trunk/in/player/10/win/FlashPlayer.exe</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/modules/ModuleManager.as</path>
<path kind="file" action="M">/flex/sdk/trunk/in/player/10/mac/Flash Player.app.zip</path>

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

--- frameworks/projects/framework/src/mx/modules/ModuleManager.as
+++ frameworks/projects/framework/src/mx/modules/ModuleManager.as
@@ -507,7 +507,10 @@
             try
             {
                 if (loader.content)
+                {
                     loader.content.removeEventListener("ready", readyHandler);
+                    loader.content.removeEventListener("error", moduleErrorHandler);
+                }
             }
             catch(error:Error)
             {
@@ -633,6 +636,7 @@
         }

         loader.content.addEventListener("ready", readyHandler);
+        loader.content.addEventListener("error", moduleErrorHandler);

         try
         {
@@ -705,6 +709,29 @@

         dispatchEvent(new ModuleEvent(ModuleEvent.READY));
     }
+
+    /**
+     *  @private
+     */
+    public function moduleErrorHandler(event:Event):void
+    {
+        //trace("Error: child load of " + _url + ");
+
+        _ready = true;
+
+        factoryInfo.bytesTotal = loader.contentLoaderInfo.bytesTotal;
+
+        clearLoader();
+
+        var errorEvent:ModuleEvent;
+
+        if (event is ModuleEvent)
+            errorEvent = ModuleEvent(event);
+        else
+            errorEvent = new ModuleEvent(ModuleEvent.ERROR);
+
+        dispatchEvent(errorEvent);
+    }
 }

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


Transferred from the Adobe Open Source Subversion Repository

Revision: 15836
Author:   jszeto@adobe.com
Date:     2010-04-30T00:49:32.357339Z

Log Message:
-----------
Form Feature

- Changed showErrorTip and showErrorSkin from properties to inheriting styles
- Cleanup and organize code
- Add proper skin states

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

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/flex4_5/frameworks/projects/spark/src/spark/skins/spark/FocusSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/flex4_5/frameworks/projects/spark/src/spark/layouts/FormLayout.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/flex4_5/frameworks/projects/framework/defaults.css</path>
<path kind="file" action="M">/private/flex/sdk/branches/flex4_5/frameworks/projects/spark/defaults.css</path>
<path kind="file" action="M">/private/flex/sdk/branches/flex4_5/frameworks/projects/spark/src/spark/components/FormItem.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/flex4_5/frameworks/projects/spark/src/spark/components/FormHeading.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/flex4_5/frameworks/projects/spark/src/spark/components/supportClasses/SkinnableComponent.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/flex4_5/frameworks/projects/spark/src/spark/skins/spark/FormItemSkin.mxml</path>
<path kind="file" action="M">/private/flex/sdk/branches/flex4_5/frameworks/projects/framework/src/mx/core/UIComponent.as</path>

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

--- frameworks/projects/spark/src/spark/components/FormHeading.as
+++ frameworks/projects/spark/src/spark/components/FormHeading.as
@@ -9,13 +9,15 @@

     /**
      *  TODO
-     *  -
-     *
+     *  - Remove implements IFormItem
+     *  - Remove canvasLayout skin part once FormItemLayout is ready
+     *  - Remove measuredColumnWidths and layoutColumnWidths once
+     *    FormItemLayout and FormLayout are ready
      *
      *
      *  ISSUES:
      *  - Ideally this would subclass Label, but Label is not a SkinnableComponent
-     *  - Should we use text or label property?
+     *  - Should we use text or label property? (PARB says label)
      *  - What if we don't implement column spanning?
      *
      */
@@ -40,13 +42,13 @@
         //--------------------------------------------------------------------------

         /**
-         *  Displays this FormItem's label.
-         */
-        [Bindable] // compatability with Halo FormHeading itemLabel property
+         *   A reference to the visual element that displays this FormItem's label.
+         */
+        [Bindable]
         [SkinPart(required="false")]
         public var labelDisplay:TextBase;

-        // TODO Remove once we have a proper FormItemLayout
+
         [SkinPart(required="false")]
         public var canvasLayout:Canvas;

@@ -98,35 +100,65 @@
             return _layoutColumnWidths;
         }

-        private var _label:String;
+        //--------------------------------------------------------------------------
+        //
+        //  Properties
+        //
+        //--------------------------------------------------------------------------
+
+        //----------------------------------
+        //  label
+        //----------------------------------
+
+        private var _label:String = "";
         private var labelChanged:Boolean = false;
-
+
+        [Bindable("labelChanged")]
+        [Inspectable(category="General", defaultValue="")]
+
+        /**
+         *  Text to display in the FormHeading
+         *
+         *  @default ""
+         */
         public function get label():String
         {
             return _label;
         }

+        /**
+         *  @private
+         */
         public function set label(value:String):void
         {
-            if (value == _label)
+            if (_label == value)
                 return;

             _label = value;
             labelChanged = true;
             invalidateProperties();
-
-        }
-
+        }
+
+        //--------------------------------------------------------------------------
+        //
+        //  Overridden Methods
+        //
+        //--------------------------------------------------------------------------
+
+        /**
+         *  @private
+         */
         override protected function partAdded(partName:String, instance:Object):void
         {
             super.partAdded(partName, instance);

             if (instance == labelDisplay)
-            {
                 labelDisplay.text = label;
-            }
-        }
-
+        }
+
+        /**
+         *  @private
+         */
         override protected function commitProperties():void
         {
             super.commitProperties();


Transferred from the Adobe Open Source Subversion Repository

Revision: 13693
Author:   hmuller@adobe.com
Date:     2010-01-21T20:25:54.403160Z

Log Message:
-----------
Initial version of the mirroring layout code.  Only Spark is supported.  API revisions for this feature are very likely to follow.

QE notes:
Doc notes:
Bugs:
Reviewer: Evtim
Tests run: All Mustella tests pass
Is noteworthy for integration: yes

Modified Paths:
--------------
<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/components/HSlider.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/spark/src/spark/components/PopUpAnchor.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/spark/defaults.css</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/spark/src/spark/skins/spark/CheckBoxSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/core/SpriteVisualElement.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/TextBase.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/IVisualElement.as</path>
<path kind="file" action="A">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/ILayoutDirection.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/skins/spark/DefaultItemRenderer.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/defaults.css</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/Label.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/skins/spark/PanelSkin.mxml</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/UIComponent.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/spark/src/spark/utils/BitmapUtil.as</path>
<path kind="file" action="M">/flex/sdk/trunk/frameworks/projects/framework/src/mx/core/AdvancedLayoutFeatures.as</path>

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

--- frameworks/projects/spark/src/spark/components/PopUpAnchor.as
+++ frameworks/projects/spark/src/spark/components/PopUpAnchor.as
@@ -514,7 +514,8 @@
         if (matrix)
         {
             matrix.invert();
-            matrix.concat(MatrixUtil.getConcatenatedMatrix(this));
+            //matrix.concat(MatrixUtil.getConcatenatedMatrix(this));
+            matrix.concat(MatrixUtil.getConcatenatedComputedMatrix(this));
         }

         return matrix;


I think we used to do this way back, let's try it again.
Smooth our bitmaps.

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

--- src/as/com/threerings/flash/MediaContainer.as
+++ src/as/com/threerings/flash/MediaContainer.as
@@ -600,10 +600,14 @@
         var info :LoaderInfo = (event.target as LoaderInfo);
         removeListeners(info);

-//        trace("Loading complete: " + info.url +
-//            ", childAllowsParent=" + info.childAllowsParent +
-//            ", parentAllowsChild=" + info.parentAllowsChild +
-//            ", sameDomain=" + info.sameDomain);
+        // attempt to make bitmaps look good
+        try {
+            if (info.loader.content is Bitmap) {
+                Bitmap(info.loader.content).smoothing = true;
+            }
+        } catch (err :Error) {
+            // cope
+        }

         updateContentDimensions(info.width, info.height);
         updateLoadingProgress(1, 1);


Transferred from the Adobe Open Source Subversion Repository

Revision: 14199
Author:   jszeto@adobe.com
Date:     2010-02-16T21:59:53.916001Z

Log Message:
-----------
ToolTip border skin bug fix

http://bugs.adobe.com/jira/browse/SDK-24282 - SliderDataTip instantiates it’s border class before it’s style can be set by Slider

Modified a patch submission to follow the pattern in TextInput. When the borderSkin style changes, the border was not recreated with the new border class.

Thanks go to David Spanton for the original submission

QE notes: yes, need tests for this use case
Doc notes: n/a
Bugs: SDK-24282
Reviewer: Kevin
Tests run: checkintests
Is noteworthy for integration: no

Modified Paths:
--------------
/flex/sdk/trunk/frameworks/projects/framework/src/mx/controls/ToolTip.as

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

--- frameworks/projects/framework/src/mx/controls/ToolTip.as
+++ frameworks/projects/framework/src/mx/controls/ToolTip.as
@@ -286,14 +286,7 @@
         super.createChildren();

         // Create the border/background.
-        if (!border)
-        {
-            var borderClass:Class = getStyle("borderSkin");
-            border = new borderClass();
-            if (border is ISimpleStyleClient)
-                ISimpleStyleClient(border).styleName = this;
-            addChild(DisplayObject(border));
-        }
+        createBorder();

         // Create the TextField that displays the tooltip text.
         createTextField(-1);
@@ -405,9 +398,20 @@
         // won't call updateDisplayList() because the size hasn't changed.
         // But the TextField has to be repositioned, so we need to
         // invalidate the layout as well as the size.
-        if (styleProp == "borderStyle" ||
-            styleProp == "styleName" ||
+        if (styleProp == "styleName" ||
+            styleProp == "borderSkin" ||
             styleProp == null)
+        {
+            //if the border skin has changed then rebuild it.
+            if(border)
+            {
+                removeChild(DisplayObject(border));
+                border = null;
+            }
+
+            createBorder();
+        }
+        else if (styleProp == "borderStyle")
         {
             invalidateDisplayList();
         }
@@ -467,6 +471,30 @@
     {
         return textField;
     }
+
+    /**
+     *  @private
+     */
+    private function createBorder():void
+    {
+        if (!border)
+        {
+            var borderClass:Class = getStyle("borderSkin");
+
+            if (borderClass != null)
+            {
+                border = new borderClass();
+
+                if (border is ISimpleStyleClient)
+                    ISimpleStyleClient(border).styleName = this;
+
+                // Add the border behind all the children.
+                addChildAt(DisplayObject(border), 0);
+
+                invalidateDisplayList();
+            }
+        }
+    }
 }

 }


Transferred from the Adobe Open Source Subversion Repository

Revision: 22564
Author:   tkraikit@adobe.com
Date:     2011-09-14T19:50:07.656843Z

Log Message:
-----------
Update ASDoc "@productversion Flex 4.5.2" => "@productversion Flex 4.6"

Modified Paths:
--------------
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobiletheme/src/spark/skins/mobile/SpinnerListSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/LabelItemRenderer.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/collections/OnDemandDataProvider.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobiletheme/src/spark/skins/mobile/DateSpinnerSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/TabbedViewNavigator.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/framework/src/mx/graphics/BitmapScaleMode.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/ContentBackgroundAppearance.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/framework/src/mx/core/FlexVersion.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/ArrowDirection.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/globalization/supportClasses/FormatPattern.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobiletheme/src/spark/skins/mobile/DefaultTransparentNavigationButtonSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/components/supportClasses/DropDownController.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/core/ISoftKeyboardHintClient.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/CalloutArrow.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/CalloutButton.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobiletheme/src/spark/skins/mobile/CalloutActionBarSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/calendarClasses/YearProvider.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/components/supportClasses/SkinnableTextBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/components/calendarClasses/DateSelectorDisplayMode.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/ToggleSwitch.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobiletheme/src/spark/skins/mobile/DefaultBeveledBackButtonSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobiletheme/src/spark/skins/mobile/SpinnerListScrollerSkin.mxml</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/components/ScrollSnappingMode.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobiletheme/src/spark/skins/mobile/supportClasses/StageTextSkinBase.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobiletheme/src/spark/skins/mobile/DefaultTransparentActionButtonSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobiletheme/src/spark/skins/mobile/StageTextAreaSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/SpinnerListContainer.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/components/List.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobiletheme/src/spark/skins/mobile/ToggleSwitchSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/calendarClasses/DateAndTimeProvider.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobiletheme/src/spark/skins/mobile/CalloutViewNavigatorSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobiletheme/src/spark/skins/mobile/SpinnerListContainerSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/CalloutPosition.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/components/Scroller.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/preloaders/SplashScreenImageSource.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/components/DataGroup.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/components/SkinnablePopUpContainer.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/SplitViewNavigator.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/Callout.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobiletheme/src/spark/skins/mobile/StageTextInputSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/collections/NumericDataProvider.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/supportClasses/StyleableStageText.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/preloaders/SplashScreenImage.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/calendarClasses/DateSpinnerItemRenderer.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/SpinnerList.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/DateSpinner.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/globalization/supportClasses/CalendarDate.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobiletheme/src/spark/skins/mobile/CalloutSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobiletheme/src/spark/skins/mobile/DefaultBeveledActionButtonSkin.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/mobilecomponents/src/spark/components/SpinnerListItemRenderer.as</path>
<path kind="file" action="M">/private/flex/sdk/branches/4.y/frameworks/projects/spark/src/spark/globalization/supportClasses/DateTimeFormatterEx.as</path>

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

--- frameworks/projects/framework/src/mx/core/FlexVersion.as
+++ frameworks/projects/framework/src/mx/core/FlexVersion.as
@@ -60,7 +60,7 @@
      *  @langversion 3.0
      *  @playerversion Flash 11
      *  @playerversion AIR 3
-     *  @productversion Flex 4.5.2
+     *  @productversion Flex 4.6
      */
     public static const VERSION_4_6:uint = 0x04060000;


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

--- frameworks/projects/framework/src/mx/core/UIComponent.as
+++ frameworks/projects/framework/src/mx/core/UIComponent.as
@@ -11980,11 +11980,20 @@
         }
         if (_layoutFeatures != null)
         {
+            var prevX:Number = _layoutFeatures.layoutX;
+            var prevY:Number = _layoutFeatures.layoutY;
+            var prevZ:Number = _layoutFeatures.layoutZ;
             _layoutFeatures.transformAround(transformCenter, scale, rotation,
                 translation, postLayoutScale, postLayoutRotation,
                 postLayoutTranslation);
             invalidateTransform();
             invalidateParentSizeAndDisplayList();
+            if (prevX != _layoutFeatures.layoutX)
+                dispatchEvent(new Event("xChanged"));
+            if (prevY != _layoutFeatures.layoutY)
+                dispatchEvent(new Event("yChanged"));
+            if (prevZ != _layoutFeatures.layoutZ)
+                dispatchEvent(new Event("zChanged"));
         }
         else
         {