         addEventListener(MouseEvent.MOUSE_UP, grid_mouseUpHandler);
         addEventListener(MouseEvent.MOUSE_MOVE, grid_mouseMoveHandler);
         addEventListener(MouseEvent.ROLL_OUT, grid_mouseRollOutHandler);
-        addEventListener(MouseEvent.CLICK, grid_clickHandler);
         addEventListener(MouseEvent.DOUBLE_CLICK, grid_doubleClickHandler);        
     }
     

        const eventColumnIndex:int = gridDimensions.getColumnIndexAt(eventGridXY.x, eventGridXY.y);
        
        var gridEventType:String;
        switch(event.type)
        {
            case MouseEvent.MOUSE_MOVE: 
                gridEventType = GridEvent.GRID_MOUSE_DRAG; 
                break;
            case MouseEvent.MOUSE_UP: 
                gridEventType = GridEvent.GRID_MOUSE_UP;
                break;
            case MouseEvent.MOUSE_DOWN: 
                gridEventType = GridEvent.GRID_MOUSE_DOWN;
                mouseDownRowIndex = eventRowIndex;
                mouseDownColumnIndex = eventColumnIndex;
                dragInProgress = true;
                break;
        }
        
        dispatchGridEvent(event, gridEventType, eventGridXY, eventRowIndex, eventColumnIndex);        
    }
    
    /**

     */       
    protected function grid_mouseRollOutHandler(event:MouseEvent):void
    {
        if ((rollRowIndex != -1) || (rollColumnIndex != -1))
        {
            const eventStageXY:Point = new Point(event.stageX, event.stageY);
