             caretIndicator.visible = _showCaret;
     }
     
+    private function layoutEditorIndicator(layer:GridLayer):void
+    {
+        const rowIndex:int = grid.dataGrid.editorRowIndex;
+        const columnIndex:int = grid.dataGrid.editorColumnIndex;
+        var indicatorFactory:IFactory = grid.dataGrid.editorIndicator;
+        
+        // If the indicatorFactory has changed for the specified non-null indicator, 
+        // then free the old indicator.
+        
+        if (editorIndicator && (indicatorFactory != elementToFactoryMap[editorIndicator]))
+        {
+            removeGridElement(editorIndicator);
+            editorIndicator = null;
+            if (indicatorFactory == null)
+                return;
+        }
+        
+        if (rowIndex == -1 || columnIndex == -1)
+        {
+            if (editorIndicator)
+                editorIndicator.visible = false;
+            return;
+        }
+        
+        if (!editorIndicator && indicatorFactory)
+            editorIndicator = createGridElement(indicatorFactory);
+        
+        if (editorIndicator)
+        {
+            const bounds:Rectangle = gridDimensions.getCellBounds(rowIndex, columnIndex);
+            
+            layoutGridElementR(editorIndicator, bounds);
+            layer.addGridElement(editorIndicator);
+            editorIndicator.visible = true;
+        }
+        
+    }
+    
     //--------------------------------------------------------------------------
     //
     //  CollectionEvent handling: dataProvider, columns

        layoutHoverIndicator(grid.backgroundLayer);
        layoutSelectionIndicators(grid.selectionLayer);
        layoutCaretIndicator(grid.overlayLayer);
        
        // To avoid flashing, force all of the layers to render now
        

        freeGridElement(caretIndicator);
        caretIndicator = null;
        
        freeGridElement(editorIndicator);
        editorIndicator = null;
        
        visibleItemRenderersBounds.setEmpty();
        visibleGridBounds.setEmpty();
    }      
