      */
     private var dispatchChangeEventPending:Boolean = false;
 
+    /**
+     *  @private
+     *  If we're in the middle of adding a child
+     */
+    private var addingChildren:Boolean = false;
+    
     //--------------------------------------------------------------------------
     //
     //  Overridden properties

            }
            else
            {
                selectedIndex--;
            }
        }
        else if (index == currentSelectedIndex)

        var index:int = getChildIndex(item);
        var obj:DisplayObject = super.removeChild(item);
        internalDispatchEvent(CollectionEventKind.REMOVE, obj, index);
        childRemoveHandler(item, index);
        return obj;
    }

