with GNATCOM.Dispinterface;

package MSHTML.IHTMLLocation_Object is

   type IHTMLLocation_Type is
     new GNATCOM.Dispinterface.Dispinterface_Type with null record;

   procedure Put_href
     (This : IHTMLLocation_Type;
      P1   : GNATCOM.Types.VARIANT;
      Free : Boolean := True);

   function Get_href
     (This : IHTMLLocation_Type)
     return GNATCOM.Types.VARIANT;

   procedure Put_protocol
     (This : IHTMLLocation_Type;
      P1   : GNATCOM.Types.VARIANT;
      Free : Boolean := True);

   function Get_protocol
     (This : IHTMLLocation_Type)
     return GNATCOM.Types.VARIANT;

   procedure Put_host
     (This : IHTMLLocation_Type;
      P1   : GNATCOM.Types.VARIANT;
      Free : Boolean := True);

   function Get_host
     (This : IHTMLLocation_Type)
     return GNATCOM.Types.VARIANT;

   procedure Put_hostname
     (This : IHTMLLocation_Type;
      P1   : GNATCOM.Types.VARIANT;
      Free : Boolean := True);

   function Get_hostname
     (This : IHTMLLocation_Type)
     return GNATCOM.Types.VARIANT;

   procedure Put_port
     (This : IHTMLLocation_Type;
      P1   : GNATCOM.Types.VARIANT;
      Free : Boolean := True);

   function Get_port
     (This : IHTMLLocation_Type)
     return GNATCOM.Types.VARIANT;

   procedure Put_pathname
     (This : IHTMLLocation_Type;
      P1   : GNATCOM.Types.VARIANT;
      Free : Boolean := True);

   function Get_pathname
     (This : IHTMLLocation_Type)
     return GNATCOM.Types.VARIANT;

   procedure Put_search
     (This : IHTMLLocation_Type;
      P1   : GNATCOM.Types.VARIANT;
      Free : Boolean := True);

   function Get_search
     (This : IHTMLLocation_Type)
     return GNATCOM.Types.VARIANT;

   procedure Put_hash
     (This : IHTMLLocation_Type;
      P1   : GNATCOM.Types.VARIANT;
      Free : Boolean := True);

   function Get_hash
     (This : IHTMLLocation_Type)
     return GNATCOM.Types.VARIANT;

   procedure reload
     (This : IHTMLLocation_Type;
      flag : GNATCOM.Types.VARIANT
        := GNATCOM.Types.VARIANT_MISSING;
      Free : Boolean := True);

   procedure replace
     (This : IHTMLLocation_Type;
      bstr : GNATCOM.Types.VARIANT;
      Free : Boolean := True);

   procedure assign
     (This : IHTMLLocation_Type;
      bstr : GNATCOM.Types.VARIANT;
      Free : Boolean := True);

   function toString
     (This : IHTMLLocation_Type)
     return GNATCOM.Types.VARIANT;

end MSHTML.IHTMLLocation_Object;

