package body MSHTML.IDOMMutationEvent_Object is

   function Get_relatedNode
     (This : IDOMMutationEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, IDOMMutationEvent_Get_relatedNode);
   end Get_relatedNode;

   function Get_prevValue
     (This : IDOMMutationEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, IDOMMutationEvent_Get_prevValue);
   end Get_prevValue;

   function Get_newValue
     (This : IDOMMutationEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, IDOMMutationEvent_Get_newValue);
   end Get_newValue;

   function Get_attrName
     (This : IDOMMutationEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, IDOMMutationEvent_Get_attrName);
   end Get_attrName;

   function Get_attrChange
     (This : IDOMMutationEvent_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, IDOMMutationEvent_Get_attrChange);
   end Get_attrChange;

   procedure initMutationEvent
     (This           : IDOMMutationEvent_Type;
      eventType      : GNATCOM.Types.VARIANT;
      canBubble      : GNATCOM.Types.VARIANT;
      cancelable     : GNATCOM.Types.VARIANT;
      relatedNodeArg : GNATCOM.Types.VARIANT;
      prevValueArg   : GNATCOM.Types.VARIANT;
      newValueArg    : GNATCOM.Types.VARIANT;
      attrNameArg    : GNATCOM.Types.VARIANT;
      attrChangeArg  : GNATCOM.Types.VARIANT;
      Free           : Boolean := True)
   is
   begin
      Invoke
        (This,
         IDOMMutationEvent_initMutationEvent,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => attrChangeArg,
          2 => attrNameArg,
          3 => newValueArg,
          4 => prevValueArg,
          5 => relatedNodeArg,
          6 => cancelable,
          7 => canBubble,
          8 => eventType),
         Free);
   end initMutationEvent;

end MSHTML.IDOMMutationEvent_Object;

