 }
 }
 
-import flash.utils.getQualifiedClassName;
-
-import mx.core.ClassFactory;
-import mx.core.IFactory;
-import mx.core.IFlexModuleFactory;
-
-import spark.components.Grid;
-
-
-/**
- *  @private
- *  A wrapper class for item renderers that creates the renderer instance with the grid's
- *  module factory.  
- * 
- *  This is necessary for applications that use embedded fonts.   The module factory creates
- *  the renderer instance in the correct "font context" in the same way as ContextualClassFactory
- *  does.   More about this in the  ContextualClassFactory  ASDoc.
- */
-class GridItemRendererClassFactory extends ClassFactory
-{
-    public var grid:Grid;
-    public var factory:ClassFactory;
-    
-    public function GridItemRendererClassFactory(grid:Grid, factory:ClassFactory)
-    {
-        super(factory.generator);
-        this.grid = grid;
-        this.factory = factory;
-    }
-    
-    override public function newInstance():*
-    {
-        const factoryGenerator:Class = factory.generator;
-        const moduleFactory:IFlexModuleFactory = grid.moduleFactory;
-        const instance:Object = 
-            (moduleFactory) ? moduleFactory.create(getQualifiedClassName(factoryGenerator)) : new factoryGenerator();
-        
-        const factoryProperties:Object = factory.properties;
-        if (factoryProperties)
-        {
-            for (var p:String in factoryProperties)
-                instance[p] = factoryProperties[p];
-        }
-        
-        return instance;
-    }
-}

    //----------------------------------

    private var _itemRenderer:IFactory = null;
    private var rendererClassFactory:GridItemRendererClassFactory = null;
    
    [Bindable("itemRendererChanged")]
    
    /**
     *  A factory for IGridItemRenderers used to render invidual grid cells.  If not specified, 
     *  the grid's <code>defaultItemRenderer</code> is return.
     * 
     *  <p>The default item renderer just displays the value of its <code>label</code> property, 
     *  which is based on the dataProvider item for the cell's row, and on the column's dataField 
     *  property.  Custom item renderers that derive more values from the data item and include 
     *  more complex visuals are easily created by subclassing <code>GridItemRenderer</code>.</p>
     * 
     *  @default The value of the grid's defaultItemRenderer, or null.
     *
     *  @see #dataField 
     *  @see GridItemRenderer

    }
    
    /**
     *  Convert the specified dataProvider item to a column-specific item renderer factory.
     *  By default this method calls the <code>itemRendererFunction</code> if it's 
     *  non-null, otherwise it just returns the value of the column's <code>itemRenderer</code> 
