with GNATCOM.IInterface;

package MSHTML.IHTMLEditServices2_Interface is

   type IHTMLEditServices2_Type is
     new GNATCOM.IInterface.Interface_Type with null record;

   procedure Initialize (This : in out IHTMLEditServices2_Type);

   function Pointer (This : IHTMLEditServices2_Type)
     return Pointer_To_IHTMLEditServices2;

   procedure Attach (This    : in out IHTMLEditServices2_Type;
                     Pointer : in     Pointer_To_IHTMLEditServices2);

   procedure AddDesigner
     (This       : IHTMLEditServices2_Type;
      pIDesigner : Pointer_To_IHTMLEditDesigner);

   procedure RemoveDesigner
     (This       : IHTMLEditServices2_Type;
      pIDesigner : Pointer_To_IHTMLEditDesigner);

   procedure GetSelectionServices
     (This        : IHTMLEditServices2_Type;
      pIContainer : Pointer_To_IMarkupContainer;
      ppSelSvc    : Pointer_To_Pointer_To_ISelectionServices);

   procedure MoveToSelectionAnchor
     (This          : IHTMLEditServices2_Type;
      pIStartAnchor : Pointer_To_IMarkupPointer);

   procedure MoveToSelectionEnd
     (This        : IHTMLEditServices2_Type;
      pIEndAnchor : Pointer_To_IMarkupPointer);

   procedure SelectRange
     (This   : IHTMLEditServices2_Type;
      pStart : Pointer_To_IMarkupPointer;
      pEnd   : Pointer_To_IMarkupPointer;
      eType  : uSELECTION_TYPE);

   procedure MoveToSelectionAnchorEx
     (This          : IHTMLEditServices2_Type;
      pIStartAnchor : Pointer_To_IDisplayPointer);

   procedure MoveToSelectionEndEx
     (This        : IHTMLEditServices2_Type;
      pIEndAnchor : Pointer_To_IDisplayPointer);

   procedure FreezeVirtualCaretPos
     (This       : IHTMLEditServices2_Type;
      fReCompute : Interfaces.C.long);

   procedure UnFreezeVirtualCaretPos
     (This   : IHTMLEditServices2_Type;
      fReset : Interfaces.C.long);

end MSHTML.IHTMLEditServices2_Interface;

