 
         const visibleColumnIndices:Vector.<int> = grid.getVisibleColumnIndices();
         const oldRenderers:Dictionary = new Dictionary();
-
-        const overlayGroup:Group = this.overlayGroup;
+        const rendererLayer:Group = this.rendererLayer;
+        const overlayLayer:Group = this.overlayLayer;
         const columnSeparatorFactory:IFactory = columnHeaderGroup.columnSeparator;
+        
         var renderer:IGridItemRenderer;
+        var separator:IVisualElement;
         var column:GridColumn;
         
         // Add all of the renderers whose column is still visible to oldRenderers and free the rest
         
-        for (var eltIndex:int = 0; eltIndex < columnHeaderGroup.numElements; eltIndex++)
-        {
-            renderer = columnHeaderGroup.getElementAt(eltIndex) as IGridItemRenderer;
-            if (!renderer || !renderer.visible)
-                continue;
-            
+        for each (renderer in visibleHeaderRenderers)
+        {
             column = renderer.column;
             if (column && (visibleColumnIndices.indexOf(column.columnIndex) != -1))
             {

        }
        chg.visibleSortIndicatorIndices = indices;
    }
    
    //----------------------------------
    //  overlayGroup
    //----------------------------------
 
    private var _overlayGroup:Group = null;
    
    /**
     *  @private
     *  The container for columnSeparator visual elements.  By default it's an 
     *  element of the GridColumnHeaderGroup's overlay.
     */
    private function get overlayGroup():Group
    {
        if (!_overlayGroup)
        {
            _overlayGroup = new Group();
            _overlayGroup.layout = new LayoutBase(); // no layout
            target.overlay.addDisplayObject(overlayGroup);            
        }
        
        return _overlayGroup;
    }
}
}
            factory = columnHeaderGroup.headerRenderer;
        const renderer:IGridItemRenderer = allocateVisualElement(factory) as IGridItemRenderer;
        
        rendererLayer.addElement(renderer);

        // initialize the renderer
        
