| 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 | #define INTERFACE IRichEditOle | 
 
 
 
 
 | 58 | DECLARE_INTERFACE_(IRichEditOle, IUnknown) | 
 
 
 
 
 | 59 | { | 
 
 
 
 
 | 60 | STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE; | 
 
 
 
 
 | 61 | STDMETHOD_(ULONG,AddRef)(THIS) PURE; | 
 
 
 
 
 | 62 | STDMETHOD_(ULONG,Release)(THIS) PURE; | 
 
 
 
 
 | 63 | STDMETHOD(GetClientSite)(THIS_ LPOLECLIENTSITE*) PURE; | 
 
 
 
 
 | 64 | STDMETHOD_(LONG,GetObjectCount)(THIS) PURE; | 
 
 
 
 
 | 65 | STDMETHOD_(LONG,GetLinkCount)(THIS) PURE; | 
 
 
 
 
 | 66 | STDMETHOD(GetObject)(THIS_ LONG, REOBJECT*,DWORD) PURE; | 
 
 
 
 
 | 67 | STDMETHOD(InsertObject)(THIS_ REOBJECT*) PURE; | 
 
 
 
 
 | 68 | STDMETHOD(ConvertObject)(THIS_ LONG,REFCLSID,LPCSTR) PURE; | 
 
 
 
 
 | 69 | STDMETHOD(ActivateAs)(THIS_ REFCLSID,REFCLSID) PURE; | 
 
 
 
 
 | 70 | STDMETHOD(SetHostNames)(THIS_ LPCSTR,LPCSTR) PURE; | 
 
 
 
 
 | 71 | STDMETHOD(SetLinkAvailable)(THIS_ LONG,BOOL) PURE; | 
 
 
 
 
 | 72 | STDMETHOD(SetDvaspect)(THIS_ LONG,DWORD) PURE; | 
 
 
 
 
 | 73 | STDMETHOD(HandsOffStorage)(THIS_ LONG) PURE; | 
 
 
 
 
 | 74 | STDMETHOD(SaveCompleted)(THIS_ LONG,LPSTORAGE) PURE; | 
 
 
 
 
 | 75 | STDMETHOD(InPlaceDeactivate)(THIS) PURE; | 
 
 
 
 
 | 76 | STDMETHOD(ContextSensitiveHelp)(THIS_ BOOL) PURE; | 
 
 
 
 
 | 77 | STDMETHOD(GetClipboardData)(THIS_ CHARRANGE*,DWORD,LPDATAOBJECT*) PURE; | 
 
 
 
 
 | 78 | STDMETHOD(ImportDataObject)(THIS_ LPDATAOBJECT,CLIPFORMAT,HGLOBAL) PURE; | 
 
 
 
 
 | 79 | }; | 
 
 
 
 
 | 80 | #undef INTERFACE | 
 
 
 
 
 | 81 | typedef IRichEditOle *LPRICHEDITOLE; | 
 
 
 
 
 | 82 |  | 
 
 
 
 
 | 83 | #define INTERFACE IRichEditOleCallback | 
 
 
 
 
 | 84 | DECLARE_INTERFACE_(IRichEditOleCallback, IUnknown) | 
 
 
 
 
 | 85 | { | 
 
 
 
 
 | 86 | STDMETHOD(QueryInterface)(THIS_ REFIID,PVOID*) PURE; | 
 
 
 
 
 | 87 | STDMETHOD_(ULONG,AddRef)(THIS) PURE; | 
 
 
 
 
 | 88 | STDMETHOD_(ULONG,Release)(THIS) PURE; | 
 
 
 
 
 | 89 | STDMETHOD(GetNewStorage)(THIS_ LPSTORAGE*) PURE; | 
 
 
 
 
 | 90 | STDMETHOD(GetInPlaceContext)(THIS_ LPOLEINPLACEFRAME*,LPOLEINPLACEUIWINDOW*,LPOLEINPLACEFRAMEINFO) PURE; | 
 
 
 
 
 | 91 | STDMETHOD(ShowContainerUI)(THIS_ BOOL) PURE; | 
 
 
 
 
 | 92 | STDMETHOD(QueryInsertObject)(THIS_ LPCLSID,LPSTORAGE,LONG) PURE; | 
 
 
 
 
 | 93 | STDMETHOD(DeleteObject)(THIS_ LPOLEOBJECT) PURE; | 
 
 
 
 
 | 94 | STDMETHOD(QueryAcceptData) (THIS_ LPDATAOBJECT,CLIPFORMAT*,DWORD,BOOL,HGLOBAL) PURE; | 
 
 
 
 
 | 95 | STDMETHOD(ContextSensitiveHelp) (THIS_ BOOL) PURE; | 
 
 
 
 
 | 96 | STDMETHOD(GetClipboardData) (THIS_ CHARRANGE*,DWORD,LPDATAOBJECT*) PURE; | 
 
 
 
 
 | 97 | STDMETHOD(GetDragDropEffect) (THIS_ BOOL,DWORD,PDWORD) PURE; | 
 
 
 
 
 | 98 | STDMETHOD(GetContextMenu) (THIS_ WORD,LPOLEOBJECT,CHARRANGE*,HMENU*) PURE; | 
 
 
 
 
 | 99 | }; | 
 
 
 
 
 | 100 | #undef INTERFACE | 
 
 
 
 
 | 101 | typedef IRichEditOleCallback FAR * LPRICHEDITOLECALLBACK; | 
 
 
 
 
 | 102 | #endif | 
 
 
 
 
 | 103 | #pragma pack(pop) | 
 
 
 
 
 | 104 | #ifdef __cplusplus | 
 
 
 
 
 | 105 | } | 
 
 
 
 
 | 106 | #endif | 
 
 
 
 
 | 107 | #endif |