package body MSHTML.DispHTMLCSSMediaRule_Object is

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

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

   function Get_cssText
     (This : DispHTMLCSSMediaRule_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispHTMLCSSMediaRule_Get_cssText);
   end Get_cssText;

   function Get_parentRule
     (This : DispHTMLCSSMediaRule_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispHTMLCSSMediaRule_Get_parentRule);
   end Get_parentRule;

   function Get_parentStyleSheet
     (This : DispHTMLCSSMediaRule_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispHTMLCSSMediaRule_Get_parentStyleSheet);
   end Get_parentStyleSheet;

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

   function Get_media
     (This : DispHTMLCSSMediaRule_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispHTMLCSSMediaRule_Get_media);
   end Get_media;

   function Get_cssRules
     (This : DispHTMLCSSMediaRule_Type)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Get (This, DispHTMLCSSMediaRule_Get_cssRules);
   end Get_cssRules;

   function insertRule
     (This     : DispHTMLCSSMediaRule_Type;
      bstrRule : GNATCOM.Types.VARIANT;
      lIndex   : GNATCOM.Types.VARIANT
        := GNATCOM.Types.VARIANT_MISSING;
      Free     : Boolean := True)
     return GNATCOM.Types.VARIANT
   is
   begin
      return Invoke
        (This,
         DispHTMLCSSMediaRule_insertRule,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => lIndex,
          2 => bstrRule),
         Free);
   end insertRule;

   procedure deleteRule
     (This   : DispHTMLCSSMediaRule_Type;
      lIndex : GNATCOM.Types.VARIANT
        := GNATCOM.Types.VARIANT_MISSING;
      Free   : Boolean := True)
   is
   begin
      Invoke
        (This,
         DispHTMLCSSMediaRule_deleteRule,
         GNATCOM.Dispinterface.Parameter_Array'
         (1 => lIndex),
         Free);
   end deleteRule;

end MSHTML.DispHTMLCSSMediaRule_Object;

