         {
             backgroundColor = getStyle("rollOverColor");
         }
-        else if (showsCaret)
-        {
-            // FIXME (rfrishbe): should probably be its own distinct color and style
-            // Also, this is touch-specific...should it be called LabelItemRenderer
-            // if it has touch-specific logic in here?  Should we gate it based 
-            // on interactionMode?
-            backgroundColor = getStyle("selectionColor");
-        }
-        else
-        {
+		else if (showsCaret)
+		{
+			// FIXME (rfrishbe): should probably be its own distinct color and style
+			// Also, this is touch-specific...should it be called LabelItemRenderer
+			// if it has touch-specific logic in here?  Should we gate it based 
+			// on interactionMode?
+			backgroundColor = getStyle("selectionColor");
+		}
+		else
+		{
             var alternatingColors:Array = getStyle("alternatingItemColors");
             
             if (alternatingColors && alternatingColors.length > 0)

			graphics.beginGradientFill(GradientType.LINEAR, colors, alphas, ratios, matrix);
			graphics.drawRect(0, 0, unscaledWidth, unscaledHeight);
			graphics.endFill();
			
			// separator props - dark lines on the top and the bottom
			topSeparatorColor = 0x000000;
			topSeparatorAlpha = .3;
			bottomSeparatorColor = 0x000000;
			bottomSeparatorAlpha = .3;
		}
		else
		{
			// default look:  separators are a highlight on the top and 
			// shadow on the bottom
			topSeparatorColor = 0xFFFFFF;
			topSeparatorAlpha = .25;
			bottomSeparatorColor = 0x000000;
			bottomSeparatorAlpha = .2;
		}
		
		var dataGroup:DataGroup = parent as DataGroup;
		var isLast:Boolean = (dataGroup && (itemIndex == dataGroup.numElements - 1));

			
		// draw separators
		graphics.beginFill(topSeparatorColor, topSeparatorAlpha);
		graphics.drawRect(0, 0, unscaledWidth, 1);
		graphics.endFill();
		
		graphics.beginFill(bottomSeparatorColor, bottomSeparatorAlpha);
		graphics.drawRect(0, unscaledHeight - (isLast ? 0 : 1), unscaledWidth, 1);

                backgroundColor = alternatingColors[itemIndex % alternatingColors.length];
            }
			else
			{
				drawBackground = false;
			}

        } 
        
        // draw backgroundColor
        // the reason why we draw it in the case of drawBackground == 0 is for
