anchor.diff:    PaintPanel.OnMouseDown := HTMLMouseDown;
     PaintPanel.OnMouseMove := HTMLMouseMove;
     PaintPanel.OnMouseUp := HTMLMouseUp;
  +  PaintPanel.OnMouseWheel := HtmlMouseWheel; // BG, 25.09.2012: issue 174. Thanks to Alan Chate
   
     VScrollBar := TScrollBar.Create(Self);
     VScrollBar.Kind := sbVertical;
  
positive.code:     procedure HTMLMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); virtual;
      procedure HTMLMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); virtual;
      procedure HTMLMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); virtual;
      procedure HTMLMouseWheel(Sender: TObject; Shift: TShiftState; WheelDelta: Integer; MousePos: TPoint);
      procedure HTMLPaint(ACanvas: TCanvas; const ARect: TRect);
      procedure InitLoad; virtual;
      procedure LoadDocument(Document: TBuffer; const DocName: ThtString; DocType: THtmlFileType);
  
negative.code:       VScrollBarPosition := VScrollBarPosition + (Lines * 16)
    else
      VScrollBarPosition := VScrollBarPosition - WheelDelta div 2;
    Handled := True;
  end;
  
  function THtmlViewer.DoMouseWheel(Shift: TShiftState; WheelDelta: Integer;
    MousePos: TPoint): Boolean;
  begin
    Result := inherited DoMouseWheel(shift, wheelDelta, mousePos);
    if not Result and not (htNoWheelMouse in htOptions) then
      HTMLMouseWheel(Self, Shift, WheelDelta, MousePos, Result);
  end;
  
   {----------------THtmlViewer.XYToDisplayPos}
  