OSDN Git Service

Avoid an implication that the API is exclusively 32-bit.
[mingw/mingw-org-wsl.git] / wslapi / include / richole.h
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