package body MSHTML.HTMLDocumentEvents_Events is

   procedure Invoke
     (dispidMember : in Interfaces.C.long;
      wFlags       : in Interfaces.C.unsigned_short;
      pdispparams  : in GNATCOM.Types.Pointer_To_DISPPARAMS;
      Event_Object : in GNATCOM.Events.Event_Object.Event_Pointer)
   is
      use type Interfaces.C.long;
   begin
      case dispidMember is
         when HTMLDocumentEvents_onhelp=>
            onhelp
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_onclick=>
            onclick
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_ondblclick=>
            ondblclick
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_onkeydown=>
            onkeydown
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_onkeyup=>
            onkeyup
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_onkeypress=>
            onkeypress
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_onmousedown=>
            onmousedown
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_onmousemove=>
            onmousemove
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_onmouseup=>
            onmouseup
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_onmouseout=>
            onmouseout
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_onmouseover=>
            onmouseover
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_onreadystatechange=>
            onreadystatechange
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_onbeforeupdate=>
            onbeforeupdate
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_onafterupdate=>
            onafterupdate
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_onrowexit=>
            onrowexit
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_onrowenter=>
            onrowenter
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_ondragstart=>
            ondragstart
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_onselectstart=>
            onselectstart
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_onerrorupdate=>
            onerrorupdate
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_oncontextmenu=>
            oncontextmenu
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_onstop=>
            onstop
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_onrowsdelete=>
            onrowsdelete
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_onrowsinserted=>
            onrowsinserted
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_oncellchange=>
            oncellchange
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_onpropertychange=>
            onpropertychange
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_ondatasetchanged=>
            ondatasetchanged
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_ondataavailable=>
            ondataavailable
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_ondatasetcomplete=>
            ondatasetcomplete
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_onbeforeeditfocus=>
            onbeforeeditfocus
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_onselectionchange=>
            onselectionchange
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_oncontrolselect=>
            oncontrolselect
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_onmousewheel=>
            onmousewheel
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_onfocusin=>
            onfocusin
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_onfocusout=>
            onfocusout
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_onactivate=>
            onactivate
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_ondeactivate=>
            ondeactivate
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_onbeforeactivate=>
            onbeforeactivate
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when HTMLDocumentEvents_onbeforedeactivate=>
            onbeforedeactivate
              (HTMLDocumentEvents_Event'Class (Event_Object.all));
         when others =>
            null;
      end case;
   end Invoke;

   function Create (From : in GNATCOM.Events.Event_Object.Event_Pointer)
     return GNATCOM.Create.COM_Interface.Pointer_To_COM_Interface_Type
   is
   begin
      return GNATCOM.Events.Event_Object.Create
        (Invoke'Access,
         IID_HTMLDocumentEvents,
         From);
   end Create;

   procedure Set_Events
     (This            : in out GNATCOM.Events.IConnectionPoint_Type;
      For_Object      : in     GNATCOM.IInterface.Interface_Type'Class;
      Event_Interface :
        access GNATCOM.Create.COM_Interface.COM_Interface_Type;
      Free            : Boolean := True)
   is
   begin
      GNATCOM.Events.Set_Events
        (This,
         For_Object,
         IID_HTMLDocumentEvents,
         Event_Interface,
         Free);
   end Set_Events;

   procedure onhelp
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end onhelp;

   procedure onclick
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end onclick;

   procedure ondblclick
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end ondblclick;

   procedure onkeydown
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end onkeydown;

   procedure onkeyup
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end onkeyup;

   procedure onkeypress
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end onkeypress;

   procedure onmousedown
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end onmousedown;

   procedure onmousemove
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end onmousemove;

   procedure onmouseup
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end onmouseup;

   procedure onmouseout
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end onmouseout;

   procedure onmouseover
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end onmouseover;

   procedure onreadystatechange
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end onreadystatechange;

   procedure onbeforeupdate
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end onbeforeupdate;

   procedure onafterupdate
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end onafterupdate;

   procedure onrowexit
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end onrowexit;

   procedure onrowenter
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end onrowenter;

   procedure ondragstart
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end ondragstart;

   procedure onselectstart
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end onselectstart;

   procedure onerrorupdate
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end onerrorupdate;

   procedure oncontextmenu
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end oncontextmenu;

   procedure onstop
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end onstop;

   procedure onrowsdelete
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end onrowsdelete;

   procedure onrowsinserted
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end onrowsinserted;

   procedure oncellchange
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end oncellchange;

   procedure onpropertychange
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end onpropertychange;

   procedure ondatasetchanged
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end ondatasetchanged;

   procedure ondataavailable
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end ondataavailable;

   procedure ondatasetcomplete
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end ondatasetcomplete;

   procedure onbeforeeditfocus
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end onbeforeeditfocus;

   procedure onselectionchange
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end onselectionchange;

   procedure oncontrolselect
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end oncontrolselect;

   procedure onmousewheel
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end onmousewheel;

   procedure onfocusin
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end onfocusin;

   procedure onfocusout
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end onfocusout;

   procedure onactivate
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end onactivate;

   procedure ondeactivate
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end ondeactivate;

   procedure onbeforeactivate
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end onbeforeactivate;

   procedure onbeforedeactivate
     (This : HTMLDocumentEvents_Event)
   is
   begin
      null;
   end onbeforedeactivate;

end MSHTML.HTMLDocumentEvents_Events;

