with GNATCOM.IInterface;

package MSHTML.IHTMLPainter_Interface is

   type IHTMLPainter_Type is
     new GNATCOM.IInterface.Interface_Type with null record;

   procedure Initialize (This : in out IHTMLPainter_Type);

   function Pointer (This : IHTMLPainter_Type)
     return Pointer_To_IHTMLPainter;

   procedure Attach (This    : in out IHTMLPainter_Type;
                     Pointer : in     Pointer_To_IHTMLPainter);

   procedure Draw
     (This         : IHTMLPainter_Type;
      rcBounds     : tagRECT;
      rcUpdate     : tagRECT;
      lDrawFlags   : Interfaces.C.long;
      hdc          : wireHDC;
      pvDrawObject : GNATCOM.Types.Pointer_To_Void);

   procedure onresize
     (This : IHTMLPainter_Type;
      size : tagSIZE);

   procedure GetPainterInfo
     (This  : IHTMLPainter_Type;
      pInfo : Pointer_To_uHTML_PAINTER_INFO);

   procedure HitTestPoint
     (This     : IHTMLPainter_Type;
      pt       : tagPOINT;
      pbHit    : GNATCOM.Types.Pointer_To_long;
      plPartID : GNATCOM.Types.Pointer_To_long);

end MSHTML.IHTMLPainter_Interface;

