home *** CD-ROM | disk | FTP | other *** search
/ Beginning C++ Through Gam…rogramming (2nd Edition) / BCGP2E.ISO / bloodshed / devcpp-4.9.9.2_setup.exe / richole.h < prev    next >
C/C++ Source or Header  |  2005-01-29  |  3KB  |  108 lines

  1. #ifndef _RICHOLE_H
  2. #define    _RICHOLE_H
  3. #if __GNUC__ >=3
  4. #pragma GCC system_header
  5. #endif
  6.  
  7. #ifdef __cplusplus
  8. extern "C" {
  9. #endif
  10. #pragma pack(push,4)
  11. #define REO_GETOBJ_NO_INTERFACES    0
  12. #define REO_GETOBJ_POLEOBJ    1
  13. #define REO_GETOBJ_PSTG    2
  14. #define REO_GETOBJ_POLESITE    4
  15. #define REO_GETOBJ_ALL_INTERFACES    7
  16. #define REO_CP_SELECTION ((ULONG)-1)
  17. #define REO_IOB_SELECTION ((ULONG)-1)
  18. #define REO_IOB_USE_CP ((ULONG)-2)
  19. #define REO_NULL    0
  20. #define REO_READWRITEMASK    0x3FL
  21. #define REO_DONTNEEDPALETTE    32
  22. #define REO_BLANK    16
  23. #define REO_DYNAMICSIZE        8
  24. #define REO_INVERTEDSELECT    4
  25. #define REO_BELOWBASELINE    2
  26. #define REO_RESIZABLE    1
  27. #define REO_LINK    0x80000000
  28. #define REO_STATIC    0x40000000
  29. #define REO_SELECTED    0x08000000
  30. #define REO_OPEN    0x4000000
  31. #define REO_INPLACEACTIVE    0x2000000
  32. #define REO_HILITED    0x1000000
  33. #define REO_LINKAVAILABLE    0x800000
  34. #define REO_GETMETAFILE    0x400000
  35. #define RECO_PASTE    0
  36. #define RECO_DROP    1
  37. #define RECO_COPY    2
  38. #define RECO_CUT    3
  39. #define RECO_DRAG    4
  40.  
  41. extern const GUID IID_IRichEditOle;
  42. extern const GUID IID_IRichEditOleCallback;
  43. #ifndef INITGUID
  44. typedef struct _reobject {
  45.     DWORD cbStruct;
  46.     LONG    cp;
  47.     CLSID    clsid;
  48.     LPOLEOBJECT    poleobj;
  49.     LPSTORAGE    pstg;
  50.     LPOLECLIENTSITE    polesite;
  51.     SIZEL    sizel;
  52.     DWORD    dvaspect;
  53.     DWORD    dwFlags;
  54.     DWORD    dwUser;
  55. } REOBJECT;
  56.  
  57. #undef INTERFACE
  58. #define INTERFACE IRichEditOle
  59. DECLARE_INTERFACE_(IRichEditOle, IUnknown)
  60. {
  61.     STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
  62.     STDMETHOD_(ULONG,AddRef)(THIS) PURE;
  63.     STDMETHOD_(ULONG,Release)(THIS) PURE;
  64.     STDMETHOD(GetClientSite)(THIS_ LPOLECLIENTSITE*) PURE;
  65.     STDMETHOD_(LONG,GetObjectCount)(THIS) PURE;
  66.     STDMETHOD_(LONG,GetLinkCount)(THIS) PURE;
  67.     STDMETHOD(GetObject)(THIS_ LONG, REOBJECT*,DWORD) PURE;
  68.     STDMETHOD(InsertObject)(THIS_ REOBJECT*) PURE;
  69.     STDMETHOD(ConvertObject)(THIS_ LONG,REFCLSID,LPCSTR) PURE;
  70.     STDMETHOD(ActivateAs)(THIS_ REFCLSID,REFCLSID) PURE;
  71.     STDMETHOD(SetHostNames)(THIS_ LPCSTR,LPCSTR) PURE;
  72.     STDMETHOD(SetLinkAvailable)(THIS_ LONG,BOOL) PURE;
  73.     STDMETHOD(SetDvaspect)(THIS_ LONG,DWORD) PURE;
  74.     STDMETHOD(HandsOffStorage)(THIS_ LONG) PURE;
  75.     STDMETHOD(SaveCompleted)(THIS_ LONG,LPSTORAGE) PURE;
  76.     STDMETHOD(InPlaceDeactivate)(THIS) PURE;
  77.     STDMETHOD(ContextSensitiveHelp)(THIS_ BOOL) PURE;
  78.     STDMETHOD(GetClipboardData)(THIS_ CHARRANGE*,DWORD,LPDATAOBJECT*) PURE;
  79.     STDMETHOD(ImportDataObject)(THIS_ LPDATAOBJECT,CLIPFORMAT,HGLOBAL) PURE;
  80. };
  81. typedef IRichEditOle *LPRICHEDITOLE;
  82.  
  83. #undef INTERFACE
  84. #define INTERFACE IRichEditOleCallback
  85. DECLARE_INTERFACE_(IRichEditOleCallback, IUnknown)
  86. {
  87.     STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE;
  88.     STDMETHOD_(ULONG,AddRef)(THIS) PURE;
  89.     STDMETHOD_(ULONG,Release)(THIS) PURE;
  90.     STDMETHOD(GetNewStorage)(THIS_ LPSTORAGE*) PURE;
  91.     STDMETHOD(GetInPlaceContext)(THIS_ LPOLEINPLACEFRAME*,LPOLEINPLACEUIWINDOW*,LPOLEINPLACEFRAMEINFO) PURE;
  92.     STDMETHOD(ShowContainerUI)(THIS_ BOOL) PURE;
  93.     STDMETHOD(QueryInsertObject)(THIS_ LPCLSID,LPSTORAGE,LONG) PURE;
  94.     STDMETHOD(DeleteObject)(THIS_ LPOLEOBJECT) PURE;
  95.     STDMETHOD(QueryAcceptData) (THIS_ LPDATAOBJECT,CLIPFORMAT*,DWORD,BOOL,HGLOBAL) PURE;
  96.     STDMETHOD(ContextSensitiveHelp) (THIS_ BOOL) PURE;
  97.     STDMETHOD(GetClipboardData) (THIS_ CHARRANGE*,DWORD,LPDATAOBJECT*) PURE;
  98.     STDMETHOD(GetDragDropEffect) (THIS_ BOOL,DWORD,PDWORD) PURE;
  99.     STDMETHOD(GetContextMenu) (THIS_ WORD,LPOLEOBJECT,CHARRANGE*,HMENU*) PURE;
  100. };
  101. typedef IRichEditOleCallback FAR * LPRICHEDITOLECALLBACK;
  102. #endif
  103. #pragma pack(pop)
  104. #ifdef __cplusplus
  105. }
  106. #endif
  107. #endif
  108.