package body MSHTML.IHTMLDOMTextNode3_Object is

   function substringData
     (This   : IHTMLDOMTextNode3_Type;
      offset : GNATCOM.Types.VARIANT;
      Count  : GNATCOM.Types.VARIANT;
      Free   : Boolean := True)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Invoke
        (This,
         IHTMLDOMTextNode3_substringData,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => Count,
          2 => offset),
         Free);
   end substringData;

   procedure insertData
     (This       : IHTMLDOMTextNode3_Type;
      offset     : GNATCOM.Types.VARIANT;
      bstrstring : GNATCOM.Types.VARIANT;
      Free       : Boolean := True)
   is
   begin
      Invoke
        (This,
         IHTMLDOMTextNode3_insertData,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => bstrstring,
          2 => offset),
         Free);
   end insertData;

   procedure deleteData
     (This   : IHTMLDOMTextNode3_Type;
      offset : GNATCOM.Types.VARIANT;
      Count  : GNATCOM.Types.VARIANT;
      Free   : Boolean := True)
   is
   begin
      Invoke
        (This,
         IHTMLDOMTextNode3_deleteData,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => Count,
          2 => offset),
         Free);
   end deleteData;

   procedure replaceData
     (This       : IHTMLDOMTextNode3_Type;
      offset     : GNATCOM.Types.VARIANT;
      Count      : GNATCOM.Types.VARIANT;
      bstrstring : GNATCOM.Types.VARIANT;
      Free       : Boolean := True)
   is
   begin
      Invoke
        (This,
         IHTMLDOMTextNode3_replaceData,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => bstrstring,
          2 => Count,
          3 => offset),
         Free);
   end replaceData;

   function splitText
     (This   : IHTMLDOMTextNode3_Type;
      offset : GNATCOM.Types.VARIANT;
      Free   : Boolean := True)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Invoke
        (This,
         IHTMLDOMTextNode3_splitText,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => offset),
         Free);
   end splitText;

   function Get_wholeText
     (This : IHTMLDOMTextNode3_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, IHTMLDOMTextNode3_Get_wholeText);
   end Get_wholeText;

   function replaceWholeText
     (This     : IHTMLDOMTextNode3_Type;
      bstrText : GNATCOM.Types.VARIANT;
      Free     : Boolean := True)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Invoke
        (This,
         IHTMLDOMTextNode3_replaceWholeText,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => bstrText),
         Free);
   end replaceWholeText;

   function hasAttributes
     (This : IHTMLDOMTextNode3_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Invoke (This, IHTMLDOMTextNode3_hasAttributes);
   end hasAttributes;

   procedure normalize
     (This : IHTMLDOMTextNode3_Type)
   is
   begin
      Invoke (This, IHTMLDOMTextNode3_normalize);
   end normalize;

end MSHTML.IHTMLDOMTextNode3_Object;

