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 |