     
     /**
      *  @private
-     *  ToDo(cframpto): what is the proper way to get at this?
      */
     private function getColumnHeaderBar():ColumnHeaderBar
     {

        // TBD(hmuller)
        return new Vector.<Object>;
    }

    
    /**
     *  Returns a reference to the item renderer currently displayed at the 
     *  specified cell.  If the requested item renderer is not visible then 
     *  (each time this method is called) a new item renderer is created.  If 
     *  the specified is invalid, e.g. if <code>rowIndex == -1</code>, 
     *  then null is returned.
     * 
     *  @param rowIndex The 0-based row index of the item renderer's cell.
     *  @param columnIndex The 0-based column index of the item renderer's cell.
     *  @return The item renderer
     * 
     *  @langversion 3.0
     *  @playerversion Flash 10

        const visibleItemRenderer:IVisualElement = getVisibleItemRenderer(rowIndex, columnIndex);
        if (visibleItemRenderer)
            return visibleItemRenderer;
        
        // Create an item renderer.
        var dataItem:Object = getDataProviderItem(rowIndex);
        var column:GridColumn = getGridColumn(columnIndex);
        
        // Invalid row or column.
        if (dataItem == null || column == null)
            return null;
                
        const factory:IFactory = column.itemToRenderer(dataItem);
        const renderer:IVisualElement = factory.newInstance() as IVisualElement;
        
        grid.itemRendererGroup.addElement(renderer);
        
        initializeItemRenderer(renderer, rowIndex, columnIndex, dataItem, false);

        // The width/height may change later if the cell becomes visible.
        var bounds:Rectangle = gridDimensions.getCellBounds(rowIndex, columnIndex);
        layoutItemRenderer(renderer, bounds.x, bounds.y, bounds.width, bounds.height);
        
        grid.itemRendererGroup.removeElement(renderer);
        renderer.visible = false;
        
        return renderer;
    }
    
    /**
