Updated Branches:
  refs/heads/develop 31b19d086 -> 3d95631fa

selectedItem should return Object, not String.


Project: http://git-wip-us.apache.org/repos/asf/flex-asjs/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-asjs/commit/7056ba5d
Tree: http://git-wip-us.apache.org/repos/asf/flex-asjs/tree/7056ba5d
Diff: http://git-wip-us.apache.org/repos/asf/flex-asjs/diff/7056ba5d

Branch: refs/heads/develop
Commit: 7056ba5d7f5acf81d16839d6593d3ac1f53d659b
Parents: 31b19d0
Author: Peter Ent <[email protected]>
Authored: Fri Sep 13 16:52:52 2013 -0400
Committer: Peter Ent <[email protected]>
Committed: Fri Sep 13 16:52:52 2013 -0400

----------------------------------------------------------------------
 .../beads/models/ArraySelectionModel.as         | 29 +++++++++++++++-----
 1 file changed, 22 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-asjs/blob/7056ba5d/frameworks/as/src/org/apache/flex/html/staticControls/beads/models/ArraySelectionModel.as
----------------------------------------------------------------------
diff --git 
a/frameworks/as/src/org/apache/flex/html/staticControls/beads/models/ArraySelectionModel.as
 
b/frameworks/as/src/org/apache/flex/html/staticControls/beads/models/ArraySelectionModel.as
index 1e1aade..3ca7f94 100644
--- 
a/frameworks/as/src/org/apache/flex/html/staticControls/beads/models/ArraySelectionModel.as
+++ 
b/frameworks/as/src/org/apache/flex/html/staticControls/beads/models/ArraySelectionModel.as
@@ -20,7 +20,7 @@ package org.apache.flex.html.staticControls.beads.models
 {
        import org.apache.flex.core.ISelectionModel;
        import org.apache.flex.core.IStrand;
-       import org.apache.flex.events.Event;    
+       import org.apache.flex.events.Event;
        import org.apache.flex.events.EventDispatcher;
                        
        public class ArraySelectionModel extends EventDispatcher implements 
ISelectionModel
@@ -57,22 +57,37 @@ package org.apache.flex.html.staticControls.beads.models
                public function set selectedIndex(value:int):void
                {
                        _selectedIndex = value;
-                       _selectedString = (value == -1) ? null : (value < 
_dataProvider.length) ? _dataProvider[value] : null;
+                       _selectedItem = (value == -1) ? null : (value < 
_dataProvider.length) ? _dataProvider[value] : null;
                        dispatchEvent(new Event("selectedIndexChanged"));       
                
                }
-               private var _selectedString:String;
+               
+               private var _selectedItem:Object;
                
                public function get selectedItem():Object
                {
-                       return _selectedString;
+                       return _selectedItem;
                }
                public function set selectedItem(value:Object):void
                {
-                       selectedString = String(value); 
+                       _selectedItem = value;  
+                       var n:int = _dataProvider.length;
+                       for (var i:int = 0; i < n; i++)
+                       {
+                               if (_dataProvider[i] == value)
+                               {
+                                       _selectedIndex = i;
+                                       break;
+                               }
+                       }
+                       dispatchEvent(new Event("selectedItemChanged"));        
                
+                       dispatchEvent(new Event("selectedIndexChanged"));
                }
+               
+               private var _selectedString:String;
+               
                public function get selectedString():String
                {
-                       return _selectedString;
+                       return String(_selectedItem);
                }
                public function set selectedString(value:String):void
                {
@@ -80,7 +95,7 @@ package org.apache.flex.html.staticControls.beads.models
                        var n:int = _dataProvider.length;
                        for (var i:int = 0; i < n; i++)
                        {
-                               if (_dataProvider[i] == value)
+                               if (String(_dataProvider[i]) == value)
                                {
                                        _selectedIndex = i;
                                        break;

Reply via email to