|
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 |