      */
     static mx_internal var _imageCache:ContentCache;
     
+    /**
+     *  @private
+     *  Time to wait before setting the source on the iconDisplay and causing a load()
+     */
+    private static const ICON_DELAY_TIME:int = 500;
+    
     //--------------------------------------------------------------------------
     //
     //  Constructor

     *  its display object
     */
    private var iconNeedsDisplayObjectAssignment:Boolean = false;
    
    //--------------------------------------------------------------------------
    //

        {
            iconChanged = false;
            
            // we set the icon after a delay for performance benefits and 
            // so we can cancel the load if we're scrolling fast
            // we still grab the source here so we can make sure we don't
            // cancel a load when the data is reset (if the source is the same)
            // if icon, try setting that
            
            if (iconFunction != null)
            {
                setIconDisplaySource(iconFunction(data));
            }
            else if (iconField)
            {
