with GNATCOM.Errors;

package body MSHTML.ISelectionServicesListener_Interface is

   procedure Initialize (This : in out ISelectionServicesListener_Type) is
   begin
      Set_IID (This, IID_ISelectionServicesListener);
   end Initialize;

   function Pointer (This : ISelectionServicesListener_Type)
     return Pointer_To_ISelectionServicesListener
   is
   begin
      return To_Pointer_To_ISelectionServicesListener (Address (This));
   end Pointer;

   procedure Attach (This    : in out ISelectionServicesListener_Type;
                     Pointer : in     Pointer_To_ISelectionServicesListener)
   is
   begin
      Attach (This, GNATCOM.IInterface.To_Pointer_To_IUnknown
              (Pointer.all'Address));
   end Attach;

   procedure BeginSelectionUndo
     (This : ISelectionServicesListener_Type)
   is
   begin
      GNATCOM.Errors.Error_Check
        (Pointer (This).Vtbl.BeginSelectionUndo
         (Pointer (This)));

   end BeginSelectionUndo;

   procedure EndSelectionUndo
     (This : ISelectionServicesListener_Type)
   is
   begin
      GNATCOM.Errors.Error_Check
        (Pointer (This).Vtbl.EndSelectionUndo
         (Pointer (This)));

   end EndSelectionUndo;

   procedure OnSelectedElementExit
     (This                  : ISelectionServicesListener_Type;
      pIElementStart        : Pointer_To_IMarkupPointer;
      pIElementEnd          : Pointer_To_IMarkupPointer;
      pIElementContentStart : Pointer_To_IMarkupPointer;
      pIElementContentEnd   : Pointer_To_IMarkupPointer)
   is
   begin
      GNATCOM.Errors.Error_Check
        (Pointer (This).Vtbl.OnSelectedElementExit
         (Pointer (This),
          pIElementStart,
          pIElementEnd,
          pIElementContentStart,
          pIElementContentEnd));

   end OnSelectedElementExit;

   procedure OnChangeType
     (This       : ISelectionServicesListener_Type;
      eType      : uSELECTION_TYPE;
      pIListener : Pointer_To_ISelectionServicesListener)
   is
   begin
      GNATCOM.Errors.Error_Check
        (Pointer (This).Vtbl.OnChangeType
         (Pointer (This),
          eType,
          pIListener));

   end OnChangeType;

   procedure GetTypeDetail
     (This        : ISelectionServicesListener_Type;
      pTypeDetail : GNATCOM.Types.Pointer_To_BSTR)
   is
   begin
      GNATCOM.Errors.Error_Check
        (Pointer (This).Vtbl.GetTypeDetail
         (Pointer (This),
          pTypeDetail));

   end GetTypeDetail;

end MSHTML.ISelectionServicesListener_Interface;

