anchor.diff:    mTimeruler, mGanttDataProvider, mGanttHead;
   
   type
  +
  +  TmGanttRowDrawingAction = procedure (aCanvas : TCanvas; const aDrawingRect : TRect) of object;
   
     { TmGantt }
   
  
positive.code: 
      PaintVerticalLines(aCanvas, aRect);
      PaintHorizontalLines(aCanvas, aRect);
    finally
      aCanvas.Unlock;
    end;
  end;
  
  procedure TmGantt.Paint;
  
negative.code:     procedure PaintHorizontalLines (aCanvas : TCanvas; const aDrawingRect : TRect);
      procedure SetTopRow(AValue: integer);
      procedure DoPaintTo(aCanvas: TCanvas; aRect: TRect);
      procedure DoForEveryRow(aCanvas: TCanvas; const aDrawingRect : TRect; aDrawingAction : TmGanttRowDrawingAction);
      procedure DrawRowBottomLine(aCanvas : TCanvas; const aDrawingRect : TRect);
    protected
      procedure Paint; override;
    public
  