     private var visibleRowSeparators:Vector.<IVisualElement> = new Vector.<IVisualElement>(0);
     private var visibleColumnSeparators:Vector.<IVisualElement> = new Vector.<IVisualElement>(0);
     
+    /**
+     *  @private
+     *  Common code for laying out the rowBackround, rowSeparator, columnSeparator visual elements.
+     * 
+     *  For row,columnSeparators, lastIndex identifies the element in the new layout for which 
+     *  no separator is drawn.  If the previous layout - oldVisibleIndices - included the lastIndex,
+     *  it needs to be freed, even though it exists in the new layout (newVisibleIndices).   See
+     *  freeLinearElements().
+     */
     private function layoutLinearElements (
         factory:IFactory,
         container:IVisualElementContainer,

        
        // Free and clear oldVisibleElements that are no long visible
        
        freeLinearElements(oldVisibleElements, oldVisibleIndices, newVisibleIndices);
        
        // Create, layout, and return newVisibleElements
        
        const newVisibleElementCount:uint = newVisibleIndices.length;

     */
    private function dataProviderCollectionReset(event:CollectionEvent):Boolean
    {
        clearVirtualLayoutCache();
        return true;
    }
    
