package body MSHTML.IHTMLTable_Object is

   procedure Put_cols
     (This : IHTMLTable_Type;
      P1   : GNATCOM.Types.VARIANT;
      Free : Boolean := True)
   is
   begin
      Put
        (This,
         IHTMLTable_Put_cols,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => P1),
         Free);
   end Put_cols;

   function Get_cols
     (This : IHTMLTable_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, IHTMLTable_Get_cols);
   end Get_cols;

   procedure Put_border
     (This : IHTMLTable_Type;
      P1   : GNATCOM.Types.VARIANT;
      Free : Boolean := True)
   is
   begin
      Put
        (This,
         IHTMLTable_Put_border,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => P1),
         Free);
   end Put_border;

   function Get_border
     (This : IHTMLTable_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, IHTMLTable_Get_border);
   end Get_border;

   procedure Put_frame
     (This : IHTMLTable_Type;
      P1   : GNATCOM.Types.VARIANT;
      Free : Boolean := True)
   is
   begin
      Put
        (This,
         IHTMLTable_Put_frame,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => P1),
         Free);
   end Put_frame;

   function Get_frame
     (This : IHTMLTable_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, IHTMLTable_Get_frame);
   end Get_frame;

   procedure Put_rules
     (This : IHTMLTable_Type;
      P1   : GNATCOM.Types.VARIANT;
      Free : Boolean := True)
   is
   begin
      Put
        (This,
         IHTMLTable_Put_rules,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => P1),
         Free);
   end Put_rules;

   function Get_rules
     (This : IHTMLTable_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, IHTMLTable_Get_rules);
   end Get_rules;

   procedure Put_cellSpacing
     (This : IHTMLTable_Type;
      P1   : GNATCOM.Types.VARIANT;
      Free : Boolean := True)
   is
   begin
      Put
        (This,
         IHTMLTable_Put_cellSpacing,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => P1),
         Free);
   end Put_cellSpacing;

   function Get_cellSpacing
     (This : IHTMLTable_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, IHTMLTable_Get_cellSpacing);
   end Get_cellSpacing;

   procedure Put_cellPadding
     (This : IHTMLTable_Type;
      P1   : GNATCOM.Types.VARIANT;
      Free : Boolean := True)
   is
   begin
      Put
        (This,
         IHTMLTable_Put_cellPadding,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => P1),
         Free);
   end Put_cellPadding;

   function Get_cellPadding
     (This : IHTMLTable_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, IHTMLTable_Get_cellPadding);
   end Get_cellPadding;

   procedure Put_background
     (This : IHTMLTable_Type;
      P1   : GNATCOM.Types.VARIANT;
      Free : Boolean := True)
   is
   begin
      Put
        (This,
         IHTMLTable_Put_background,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => P1),
         Free);
   end Put_background;

   function Get_background
     (This : IHTMLTable_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, IHTMLTable_Get_background);
   end Get_background;

   procedure Put_bgColor
     (This : IHTMLTable_Type;
      P1   : GNATCOM.Types.VARIANT;
      Free : Boolean := True)
   is
   begin
      Put
        (This,
         IHTMLTable_Put_bgColor,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => P1),
         Free);
   end Put_bgColor;

   function Get_bgColor
     (This : IHTMLTable_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, IHTMLTable_Get_bgColor);
   end Get_bgColor;

   procedure Put_borderColor
     (This : IHTMLTable_Type;
      P1   : GNATCOM.Types.VARIANT;
      Free : Boolean := True)
   is
   begin
      Put
        (This,
         IHTMLTable_Put_borderColor,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => P1),
         Free);
   end Put_borderColor;

   function Get_borderColor
     (This : IHTMLTable_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, IHTMLTable_Get_borderColor);
   end Get_borderColor;

   procedure Put_borderColorLight
     (This : IHTMLTable_Type;
      P1   : GNATCOM.Types.VARIANT;
      Free : Boolean := True)
   is
   begin
      Put
        (This,
         IHTMLTable_Put_borderColorLight,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => P1),
         Free);
   end Put_borderColorLight;

   function Get_borderColorLight
     (This : IHTMLTable_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, IHTMLTable_Get_borderColorLight);
   end Get_borderColorLight;

   procedure Put_borderColorDark
     (This : IHTMLTable_Type;
      P1   : GNATCOM.Types.VARIANT;
      Free : Boolean := True)
   is
   begin
      Put
        (This,
         IHTMLTable_Put_borderColorDark,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => P1),
         Free);
   end Put_borderColorDark;

   function Get_borderColorDark
     (This : IHTMLTable_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, IHTMLTable_Get_borderColorDark);
   end Get_borderColorDark;

   procedure Put_align
     (This : IHTMLTable_Type;
      P1   : GNATCOM.Types.VARIANT;
      Free : Boolean := True)
   is
   begin
      Put
        (This,
         IHTMLTable_Put_align,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => P1),
         Free);
   end Put_align;

   function Get_align
     (This : IHTMLTable_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, IHTMLTable_Get_align);
   end Get_align;

   procedure refresh
     (This : IHTMLTable_Type)
   is
   begin
      Invoke (This, IHTMLTable_refresh);
   end refresh;

   function Get_rows
     (This : IHTMLTable_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, IHTMLTable_Get_rows);
   end Get_rows;

   procedure Put_width
     (This : IHTMLTable_Type;
      P1   : GNATCOM.Types.VARIANT;
      Free : Boolean := True)
   is
   begin
      Put
        (This,
         IHTMLTable_Put_width,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => P1),
         Free);
   end Put_width;

   function Get_width
     (This : IHTMLTable_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, IHTMLTable_Get_width);
   end Get_width;

   procedure Put_height
     (This : IHTMLTable_Type;
      P1   : GNATCOM.Types.VARIANT;
      Free : Boolean := True)
   is
   begin
      Put
        (This,
         IHTMLTable_Put_height,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => P1),
         Free);
   end Put_height;

   function Get_height
     (This : IHTMLTable_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, IHTMLTable_Get_height);
   end Get_height;

   procedure Put_dataPageSize
     (This : IHTMLTable_Type;
      P1   : GNATCOM.Types.VARIANT;
      Free : Boolean := True)
   is
   begin
      Put
        (This,
         IHTMLTable_Put_dataPageSize,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => P1),
         Free);
   end Put_dataPageSize;

   function Get_dataPageSize
     (This : IHTMLTable_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, IHTMLTable_Get_dataPageSize);
   end Get_dataPageSize;

   procedure nextPage
     (This : IHTMLTable_Type)
   is
   begin
      Invoke (This, IHTMLTable_nextPage);
   end nextPage;

   procedure previousPage
     (This : IHTMLTable_Type)
   is
   begin
      Invoke (This, IHTMLTable_previousPage);
   end previousPage;

   function Get_tHead
     (This : IHTMLTable_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, IHTMLTable_Get_tHead);
   end Get_tHead;

   function Get_tFoot
     (This : IHTMLTable_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, IHTMLTable_Get_tFoot);
   end Get_tFoot;

   function Get_tBodies
     (This : IHTMLTable_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, IHTMLTable_Get_tBodies);
   end Get_tBodies;

   function Get_caption
     (This : IHTMLTable_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, IHTMLTable_Get_caption);
   end Get_caption;

   function createTHead
     (This : IHTMLTable_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Invoke (This, IHTMLTable_createTHead);
   end createTHead;

   procedure deleteTHead
     (This : IHTMLTable_Type)
   is
   begin
      Invoke (This, IHTMLTable_deleteTHead);
   end deleteTHead;

   function createTFoot
     (This : IHTMLTable_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Invoke (This, IHTMLTable_createTFoot);
   end createTFoot;

   procedure deleteTFoot
     (This : IHTMLTable_Type)
   is
   begin
      Invoke (This, IHTMLTable_deleteTFoot);
   end deleteTFoot;

   function createCaption
     (This : IHTMLTable_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Invoke (This, IHTMLTable_createCaption);
   end createCaption;

   procedure deleteCaption
     (This : IHTMLTable_Type)
   is
   begin
      Invoke (This, IHTMLTable_deleteCaption);
   end deleteCaption;

   function insertRow
     (This  : IHTMLTable_Type;
      index : GNATCOM.Types.VARIANT
        := GNATCOM.Types.VARIANT_MISSING;
      Free  : Boolean := True)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Invoke
        (This,
         IHTMLTable_insertRow,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => index),
         Free);
   end insertRow;

   procedure deleteRow
     (This  : IHTMLTable_Type;
      index : GNATCOM.Types.VARIANT
        := GNATCOM.Types.VARIANT_MISSING;
      Free  : Boolean := True)
   is
   begin
      Invoke
        (This,
         IHTMLTable_deleteRow,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => index),
         Free);
   end deleteRow;

   function Get_readyState
     (This : IHTMLTable_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, IHTMLTable_Get_readyState);
   end Get_readyState;

   procedure Put_onreadystatechange
     (This : IHTMLTable_Type;
      P1   : GNATCOM.Types.VARIANT;
      Free : Boolean := True)
   is
   begin
      Put
        (This,
         IHTMLTable_Put_onreadystatechange,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => P1),
         Free);
   end Put_onreadystatechange;

   function Get_onreadystatechange
     (This : IHTMLTable_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, IHTMLTable_Get_onreadystatechange);
   end Get_onreadystatechange;

end MSHTML.IHTMLTable_Object;

