package body MSHTML.IPrintManagerTemplatePrinter2_Object is

   procedure startPrint
     (This : IPrintManagerTemplatePrinter2_Type)
   is
   begin
      Invoke (This, IPrintManagerTemplatePrinter2_startPrint);
   end startPrint;

   procedure drawPreviewPage
     (This      : IPrintManagerTemplatePrinter2_Type;
      pElemDisp : GNATCOM.Types.VARIANT;
      nPage     : GNATCOM.Types.VARIANT;
      Free      : Boolean := True)
   is
   begin
      Invoke
        (This,
         IPrintManagerTemplatePrinter2_drawPreviewPage,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => nPage,
          2 => pElemDisp),
         Free);
   end drawPreviewPage;

   procedure setPageCount
     (This  : IPrintManagerTemplatePrinter2_Type;
      nPage : GNATCOM.Types.VARIANT;
      Free  : Boolean := True)
   is
   begin
      Invoke
        (This,
         IPrintManagerTemplatePrinter2_setPageCount,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => nPage),
         Free);
   end setPageCount;

   procedure invalidatePreview
     (This : IPrintManagerTemplatePrinter2_Type)
   is
   begin
      Invoke (This, IPrintManagerTemplatePrinter2_invalidatePreview);
   end invalidatePreview;

   function getPrintTaskOptionValue
     (This    : IPrintManagerTemplatePrinter2_Type;
      bstrKey : GNATCOM.Types.VARIANT;
      Free    : Boolean := True)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Invoke
        (This,
         IPrintManagerTemplatePrinter2_getPrintTaskOptionValue,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => bstrKey),
         Free);
   end getPrintTaskOptionValue;

   procedure endPrint
     (This : IPrintManagerTemplatePrinter2_Type)
   is
   begin
      Invoke (This, IPrintManagerTemplatePrinter2_endPrint);
   end endPrint;

   function Get_showHeaderFooter
     (This : IPrintManagerTemplatePrinter2_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, IPrintManagerTemplatePrinter2_Get_showHeaderFooter);
   end Get_showHeaderFooter;

   function Get_shrinkToFit
     (This : IPrintManagerTemplatePrinter2_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, IPrintManagerTemplatePrinter2_Get_shrinkToFit);
   end Get_shrinkToFit;

   function Get_percentScale
     (This : IPrintManagerTemplatePrinter2_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, IPrintManagerTemplatePrinter2_Get_percentScale);
   end Get_percentScale;

end MSHTML.IPrintManagerTemplatePrinter2_Object;

