package body MSHTML.DispDOMMouseEvent_Object is

   function Get_bubbles
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_bubbles);
   end Get_bubbles;

   function Get_cancelable
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_cancelable);
   end Get_cancelable;

   function Get_currentTarget
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_currentTarget);
   end Get_currentTarget;

   function Get_defaultPrevented
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_defaultPrevented);
   end Get_defaultPrevented;

   function Get_eventPhase
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_eventPhase);
   end Get_eventPhase;

   function Get_target
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_target);
   end Get_target;

   function Get_timeStamp
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_timeStamp);
   end Get_timeStamp;

   function Get_type
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_type);
   end Get_type;

   procedure initEvent
     (This       : DispDOMMouseEvent_Type;
      eventType  : GNATCOM.Types.VARIANT;
      canBubble  : GNATCOM.Types.VARIANT;
      cancelable : GNATCOM.Types.VARIANT;
      Free       : Boolean := True)
   is
   begin
      Invoke
        (This,
         DispDOMMouseEvent_initEvent,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => cancelable,
          2 => canBubble,
          3 => eventType),
         Free);
   end initEvent;

   procedure preventDefault
     (This : DispDOMMouseEvent_Type)
   is
   begin
      Invoke (This, DispDOMMouseEvent_preventDefault);
   end preventDefault;

   procedure stopPropagation
     (This : DispDOMMouseEvent_Type)
   is
   begin
      Invoke (This, DispDOMMouseEvent_stopPropagation);
   end stopPropagation;

   procedure stopImmediatePropagation
     (This : DispDOMMouseEvent_Type)
   is
   begin
      Invoke (This, DispDOMMouseEvent_stopImmediatePropagation);
   end stopImmediatePropagation;

   function Get_isTrusted
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_isTrusted);
   end Get_isTrusted;

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

   function Get_cancelBubble
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_cancelBubble);
   end Get_cancelBubble;

   function Get_srcElement
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_srcElement);
   end Get_srcElement;

   function Get_view
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_view);
   end Get_view;

   function Get_detail
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_detail);
   end Get_detail;

   procedure initUIEvent
     (This       : DispDOMMouseEvent_Type;
      eventType  : GNATCOM.Types.VARIANT;
      canBubble  : GNATCOM.Types.VARIANT;
      cancelable : GNATCOM.Types.VARIANT;
      view       : GNATCOM.Types.VARIANT;
      detail     : GNATCOM.Types.VARIANT;
      Free       : Boolean := True)
   is
   begin
      Invoke
        (This,
         DispDOMMouseEvent_initUIEvent,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => detail,
          2 => view,
          3 => cancelable,
          4 => canBubble,
          5 => eventType),
         Free);
   end initUIEvent;

   function Get_screenX
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_screenX);
   end Get_screenX;

   function Get_screenY
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_screenY);
   end Get_screenY;

   function Get_clientX
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_clientX);
   end Get_clientX;

   function Get_clientY
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_clientY);
   end Get_clientY;

   function Get_ctrlKey
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_ctrlKey);
   end Get_ctrlKey;

   function Get_shiftKey
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_shiftKey);
   end Get_shiftKey;

   function Get_altKey
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_altKey);
   end Get_altKey;

   function Get_metaKey
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_metaKey);
   end Get_metaKey;

   function Get_button
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_button);
   end Get_button;

   function Get_relatedTarget
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_relatedTarget);
   end Get_relatedTarget;

   procedure initMouseEvent
     (This             : DispDOMMouseEvent_Type;
      eventType        : GNATCOM.Types.VARIANT;
      canBubble        : GNATCOM.Types.VARIANT;
      cancelable       : GNATCOM.Types.VARIANT;
      viewArg          : GNATCOM.Types.VARIANT;
      detailArg        : GNATCOM.Types.VARIANT;
      screenXArg       : GNATCOM.Types.VARIANT;
      screenYArg       : GNATCOM.Types.VARIANT;
      clientXArg       : GNATCOM.Types.VARIANT;
      clientYArg       : GNATCOM.Types.VARIANT;
      ctrlKeyArg       : GNATCOM.Types.VARIANT;
      altKeyArg        : GNATCOM.Types.VARIANT;
      shiftKeyArg      : GNATCOM.Types.VARIANT;
      metaKeyArg       : GNATCOM.Types.VARIANT;
      buttonArg        : GNATCOM.Types.VARIANT;
      relatedTargetArg : GNATCOM.Types.VARIANT;
      Free             : Boolean := True)
   is
   begin
      Invoke
        (This,
         DispDOMMouseEvent_initMouseEvent,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => relatedTargetArg,
          2 => buttonArg,
          3 => metaKeyArg,
          4 => shiftKeyArg,
          5 => altKeyArg,
          6 => ctrlKeyArg,
          7 => clientYArg,
          8 => clientXArg,
          9 => screenYArg,
          10 => screenXArg,
          11 => detailArg,
          12 => viewArg,
          13 => cancelable,
          14 => canBubble,
          15 => eventType),
         Free);
   end initMouseEvent;

   function getModifierState
     (This   : DispDOMMouseEvent_Type;
      keyArg : GNATCOM.Types.VARIANT;
      Free   : Boolean := True)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Invoke
        (This,
         DispDOMMouseEvent_getModifierState,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => keyArg),
         Free);
   end getModifierState;

   function Get_buttons
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_buttons);
   end Get_buttons;

   function Get_fromElement
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_fromElement);
   end Get_fromElement;

   function Get_toElement
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_toElement);
   end Get_toElement;

   function Get_x
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_x);
   end Get_x;

   function Get_y
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_y);
   end Get_y;

   function Get_offsetX
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_offsetX);
   end Get_offsetX;

   function Get_offsetY
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_offsetY);
   end Get_offsetY;

   function Get_pageX
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_pageX);
   end Get_pageX;

   function Get_pageY
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_pageY);
   end Get_pageY;

   function Get_layerX
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_layerX);
   end Get_layerX;

   function Get_layerY
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_layerY);
   end Get_layerY;

   function Get_which
     (This : DispDOMMouseEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispDOMMouseEvent_Get_which);
   end Get_which;

end MSHTML.DispDOMMouseEvent_Object;

