      */
     protected function getCurrentRendererState():String
     {
+		if (dragging && hasState("dragging"))
+			return "dragging";
+
         if (selected && showsCaret && hasState("selectedAndShowsCaret"))
-           return "selectedAndShowsCaret";
+			return "selectedAndShowsCaret";
             
         if (hovered && showsCaret && hasState("hoveredAndShowsCaret"))
             return "hoveredAndShowsCaret";


import mx.core.mx_internal;
import mx.events.FlexEvent;
import mx.styles.StyleManager;

import spark.components.DataGroup;
import spark.components.Group;
import spark.components.IItemRenderer;
import spark.components.DataRenderer; 
import spark.components.supportClasses.TextBase;

use namespace mx_internal; 


        }
    }
       
	//----------------------------------
	//  dragging
	//----------------------------------
	
	/**
	 *  @private
	 *  Storage for the dragging property. 
	 */
	private var _dragging:Boolean = false;

	/**
	 *  @inheritDoc  
	 */
	public function get dragging():Boolean
	{
		return _dragging;
	}

	/**
	 *  @private  
	 */
	public function set dragging(value:Boolean):void
	{
		if (value != _dragging)
		{
			_dragging = value;
			setCurrentState(getCurrentRendererState(), playTransitions);
		}
	}

	//----------------------------------
    //  label
    //----------------------------------

	[Bindable("textChanged")]
    
    /**
     *  @private 
