 import mx.events.IndexChangedEvent;
 import mx.events.CollectionEvent;
 import mx.events.CollectionEventKind;
-	
+    
 /**
- *  Dispatched when the selection is going to change. Calling preventDefault()
+ *  Dispatched when the selection is going to change. 
+ *  Calling the <code>preventDefault()</code> method
  *  on the event will prevent the selection from changing.
+ *
+ *  @eventType mx.events.IndexChangedEvent.ITEM_ADD
  */
 [Event(name="selectionChanging", type="mx.events.IndexChangedEvent")]
 
 /**
  *  Dispatched after the selection has changed. 
+ *
+ *  @eventType mx.events.IndexChangedEvent.ITEM_ADD
  */
 [Event(name="selectionChanged", type="mx.events.IndexChangedEvent")]
 
 /**
- *  The Selector class is the base class for all components that support
+ *  The FxListBase class is the base class for all components that support
  *  selection.
  */
 public class FxListBase extends FxDataContainer

            selectedIndexAdjusted = false;
            if (!changedSelection)
            {
	            var e:IndexChangedEvent = new IndexChangedEvent("selectionChanged");
	            e.oldIndex = selectedIndex;
	            e.newIndex = selectedIndex;
	            dispatchEvent(e);
            }
        }
    }

    //  Properties
    //
    //--------------------------------------------------------------------------
    
    /**
     *  @private
     */
    private var doingWholesaleChanges:Boolean = false;
    
    //----------------------------------
    //  dataProvider
    //----------------------------------
    
    private var dataProviderChanged:Boolean;
    
    /**
     *  @inheritDoc
     */
    override public function set dataProvider(value:IList):void
    {
        if (dataProvider)
