aboutsummaryrefslogtreecommitdiff
path: root/x86_64-w64-mingw32/include/richole.h
blob: df505c6730bf9b73a37150c2fd8b542513dac766 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
/**
 * This file is part of the mingw-w64 runtime package.
 * No warranty is given; refer to the file DISCLAIMER within this package.
 */

#ifndef _RICHOLE_
#define _RICHOLE_

#include "richedit.h"

typedef struct _reobject {
  DWORD cbStruct;
  LONG cp;
  CLSID clsid;
  LPOLEOBJECT poleobj;
  LPSTORAGE pstg;
  LPOLECLIENTSITE polesite;
  SIZEL sizel;
  DWORD dvaspect;
  DWORD dwFlags;
  DWORD dwUser;
} REOBJECT;

#define REO_GETOBJ_NO_INTERFACES (__MSABI_LONG(0x00000000))
#define REO_GETOBJ_POLEOBJ (__MSABI_LONG(0x00000001))
#define REO_GETOBJ_PSTG (__MSABI_LONG(0x00000002))
#define REO_GETOBJ_POLESITE (__MSABI_LONG(0x00000004))
#define REO_GETOBJ_ALL_INTERFACES (__MSABI_LONG(0x00000007))

#define REO_CP_SELECTION ((ULONG) -1)

#define REO_IOB_SELECTION ((ULONG) -1)
#define REO_IOB_USE_CP ((ULONG) -2)

#define REO_NULL (__MSABI_LONG(0x00000000))
#define REO_READWRITEMASK (__MSABI_LONG(0x000007ff))
#define REO_CANROTATE (__MSABI_LONG(0x00000080))
#define REO_OWNERDRAWSELECT (__MSABI_LONG(0x00000040))
#define REO_DONTNEEDPALETTE (__MSABI_LONG(0x00000020))
#define REO_BLANK (__MSABI_LONG(0x00000010))
#define REO_DYNAMICSIZE (__MSABI_LONG(0x00000008))
#define REO_INVERTEDSELECT (__MSABI_LONG(0x00000004))
#define REO_BELOWBASELINE (__MSABI_LONG(0x00000002))
#define REO_RESIZABLE (__MSABI_LONG(0x00000001))
#define REO_USEASBACKGROUND (__MSABI_LONG(0x00000400))
#define REO_WRAPTEXTAROUND (__MSABI_LONG(0x00000200))
#define REO_ALIGNTORIGHT (__MSABI_LONG(0x00000100))
#define REO_LINK (__MSABI_LONG(0x80000000))
#define REO_STATIC (__MSABI_LONG(0x40000000))
#define REO_SELECTED (__MSABI_LONG(0x08000000))
#define REO_OPEN (__MSABI_LONG(0x04000000))
#define REO_INPLACEACTIVE (__MSABI_LONG(0x02000000))
#define REO_HILITED (__MSABI_LONG(0x01000000))
#define REO_LINKAVAILABLE (__MSABI_LONG(0x00800000))
#define REO_GETMETAFILE (__MSABI_LONG(0x00400000))

#define RECO_PASTE (__MSABI_LONG(0x00000000))
#define RECO_DROP (__MSABI_LONG(0x00000001))
#define RECO_COPY (__MSABI_LONG(0x00000002))
#define RECO_CUT (__MSABI_LONG(0x00000003))
#define RECO_DRAG (__MSABI_LONG(0x00000004))

#undef INTERFACE
#define INTERFACE IRichEditOle

DECLARE_INTERFACE_ (IRichEditOle, IUnknown) {
#ifndef __cplusplus
  STDMETHOD (QueryInterface) (THIS_ REFIID riid, LPVOID *lplpObj) PURE;
  STDMETHOD_ (ULONG, AddRef) (THIS) PURE;
  STDMETHOD_ (ULONG, Release) (THIS) PURE;
#endif
  STDMETHOD (GetClientSite) (THIS_ LPOLECLIENTSITE *lplpolesite) PURE;
  STDMETHOD_ (LONG, GetObjectCount) (THIS) PURE;
  STDMETHOD_ (LONG, GetLinkCount) (THIS) PURE;
  STDMETHOD (GetObject) (THIS_ LONG iob, REOBJECT *lpreobject, DWORD dwFlags) PURE;
  STDMETHOD (InsertObject) (THIS_ REOBJECT *lpreobject) PURE;
  STDMETHOD (ConvertObject) (THIS_ LONG iob, REFCLSID rclsidNew, LPCSTR lpstrUserTypeNew) PURE;
  STDMETHOD (ActivateAs) (THIS_ REFCLSID rclsid, REFCLSID rclsidAs) PURE;
  STDMETHOD (SetHostNames) (THIS_ LPCSTR lpstrContainerApp, LPCSTR lpstrContainerObj) PURE;
  STDMETHOD (SetLinkAvailable) (THIS_ LONG iob, WINBOOL fAvailable) PURE;
  STDMETHOD (SetDvaspect) (THIS_ LONG iob, DWORD dvaspect) PURE;
  STDMETHOD (HandsOffStorage) (THIS_ LONG iob) PURE;
  STDMETHOD (SaveCompleted) (THIS_ LONG iob, LPSTORAGE lpstg) PURE;
  STDMETHOD (InPlaceDeactivate) (THIS) PURE;
  STDMETHOD (ContextSensitiveHelp) (THIS_ WINBOOL fEnterMode) PURE;
  STDMETHOD (GetClipboardData) (THIS_ CHARRANGE *lpchrg, DWORD reco, LPDATAOBJECT *lplpdataobj) PURE;
  STDMETHOD (ImportDataObject) (THIS_ LPDATAOBJECT lpdataobj, CLIPFORMAT cf, HGLOBAL hMetaPict) PURE;
};
typedef IRichEditOle *LPRICHEDITOLE;

#undef INTERFACE
#define INTERFACE IRichEditOleCallback
DECLARE_INTERFACE_ (IRichEditOleCallback, IUnknown) {
#ifndef __cplusplus
  STDMETHOD (QueryInterface) (THIS_ REFIID riid, LPVOID *lplpObj) PURE;
  STDMETHOD_ (ULONG, AddRef) (THIS) PURE;
  STDMETHOD_ (ULONG, Release) (THIS) PURE;
#endif
  STDMETHOD (GetNewStorage) (THIS_ LPSTORAGE *lplpstg) PURE;
  STDMETHOD (GetInPlaceContext) (THIS_ LPOLEINPLACEFRAME *lplpFrame, LPOLEINPLACEUIWINDOW *lplpDoc, LPOLEINPLACEFRAMEINFO lpFrameInfo) PURE;
  STDMETHOD (ShowContainerUI) (THIS_ WINBOOL fShow) PURE;
  STDMETHOD (QueryInsertObject) (THIS_ LPCLSID lpclsid, LPSTORAGE lpstg, LONG cp) PURE;
  STDMETHOD (DeleteObject) (THIS_ LPOLEOBJECT lpoleobj) PURE;
  STDMETHOD (QueryAcceptData) (THIS_ LPDATAOBJECT lpdataobj, CLIPFORMAT *lpcfFormat, DWORD reco, WINBOOL fReally, HGLOBAL hMetaPict) PURE;
  STDMETHOD (ContextSensitiveHelp) (THIS_ WINBOOL fEnterMode) PURE;
  STDMETHOD (GetClipboardData) (THIS_ CHARRANGE *lpchrg, DWORD reco, LPDATAOBJECT *lplpdataobj) PURE;
  STDMETHOD (GetDragDropEffect) (THIS_ WINBOOL fDrag, DWORD grfKeyState, LPDWORD pdwEffect) PURE;
  STDMETHOD (GetContextMenu) (THIS_ WORD seltype, LPOLEOBJECT lpoleobj, CHARRANGE *lpchrg, HMENU *lphmenu) PURE;
};
typedef IRichEditOleCallback *LPRICHEDITOLECALLBACK;

DEFINE_GUID (IID_IRichEditOle,0x00020D00,0,0,0xC0,0,0,0,0,0,0,0x46);
DEFINE_GUID (IID_IRichEditOleCallback,0x00020D03,0,0,0xC0,0,0,0,0,0,0,0x46);
#endif