root/trunk/win32/richole.d

Revision 377, 3.3 kB (checked in by CyberShadow, 3 months ago)

Undo Zone's clobbering of my fixes

Line 
1 /***********************************************************************\
2 *                               richole.d                               *
3 *                                                                       *
4 *                       Windows API header module                       *
5 *                                                                       *
6 *                 Translated from MinGW Windows headers                 *
7 *                                                                       *
8 *                       Placed into public domain                       *
9 \***********************************************************************/
10 module win32.richole;
11
12 private import win32.objfwd, win32.objidl, win32.ole2, win32.unknwn,
13   win32.windef;
14 private import win32.richedit; // for CHARRANGE
15
16 align(4):
17
18 const ULONG
19     REO_GETOBJ_NO_INTERFACES = 0,
20     REO_GETOBJ_POLEOBJ = 1,
21     REO_GETOBJ_PSTG = 2,
22     REO_GETOBJ_POLESITE = 4,
23     REO_GETOBJ_ALL_INTERFACES = 7,
24     REO_CP_SELECTION = -1,
25     REO_IOB_SELECTION = -1,
26     REO_IOB_USE_CP = -2,
27     REO_NULL = 0,
28     REO_READWRITEMASK = 0x3F,
29     REO_DONTNEEDPALETTE = 32,
30     REO_BLANK = 16,
31     REO_DYNAMICSIZE = 8,
32     REO_INVERTEDSELECT = 4,
33     REO_BELOWBASELINE = 2,
34     REO_RESIZABLE = 1,
35     REO_LINK = 0x80000000,
36     REO_STATIC = 0x40000000,
37     REO_SELECTED = 0x08000000,
38     REO_OPEN = 0x4000000,
39     REO_INPLACEACTIVE = 0x2000000,
40     REO_HILITED = 0x1000000,
41     REO_LINKAVAILABLE = 0x800000,
42     REO_GETMETAFILE = 0x400000;
43
44 enum {
45     RECO_PASTE = 0,
46     RECO_DROP,
47     RECO_COPY,
48     RECO_CUT,
49     RECO_DRAG // = 4
50 }
51
52 extern (C) extern const GUID
53     IID_IRichEditOle,
54     IID_IRichEditOleCallback;
55
56 struct REOBJECT {
57     DWORD           cbStruct = REOBJECT.sizeof;
58     LONG            cp;
59     CLSID           clsid;
60     LPOLEOBJECT     poleobj;
61     LPSTORAGE       pstg;
62     LPOLECLIENTSITE polesite;
63     SIZEL           sizel;
64     DWORD           dvaspect;
65     DWORD           dwFlags;
66     DWORD           dwUser;
67 }
68
69 interface IRichEditOle : IUnknown {
70     HRESULT GetClientSite(LPOLECLIENTSITE*);
71     LONG GetObjectCount();
72     LONG GetLinkCount();
73     HRESULT GetObject(LONG, REOBJECT*, DWORD);
74     HRESULT InsertObject(REOBJECT*);
75     HRESULT ConvertObject(LONG, REFCLSID, LPCSTR);
76     HRESULT ActivateAs(REFCLSID, REFCLSID);
77     HRESULT SetHostNames(LPCSTR, LPCSTR);
78     HRESULT SetLinkAvailable(LONG, BOOL);
79     HRESULT SetDvaspect(LONG, DWORD);
80     HRESULT HandsOffStorage(LONG);
81     HRESULT SaveCompleted(LONG, LPSTORAGE);
82     HRESULT InPlaceDeactivate();
83     HRESULT ContextSensitiveHelp(BOOL);
84     HRESULT GetClipboardData(CHARRANGE*, DWORD, LPDATAOBJECT*);
85     HRESULT ImportDataObject(LPDATAOBJECT, CLIPFORMAT, HGLOBAL);
86 };
87 alias IRichEditOle* LPRICHEDITOLE;
88
89 interface IRichEditOleCallback : IUnknown {
90     HRESULT GetNewStorage(LPSTORAGE*);
91     HRESULT GetInPlaceContext(LPOLEINPLACEFRAME*, LPOLEINPLACEUIWINDOW*, LPOLEINPLACEFRAMEINFO);
92     HRESULT ShowContainerUI(BOOL);
93     HRESULT QueryInsertObject(LPCLSID, LPSTORAGE, LONG);
94     HRESULT DeleteObject(LPOLEOBJECT);
95     HRESULT QueryAcceptData(LPDATAOBJECT, CLIPFORMAT*, DWORD, BOOL, HGLOBAL);
96     HRESULT ContextSensitiveHelp(BOOL);
97     HRESULT GetClipboardData(CHARRANGE*, DWORD, LPDATAOBJECT*);
98     HRESULT GetDragDropEffect(BOOL, DWORD, PDWORD);
99     HRESULT GetContextMenu(WORD, LPOLEOBJECT, CHARRANGE*, HMENU*);
100 };
101 alias IRichEditOleCallback* LPRICHEDITOLECALLBACK;
Note: See TracBrowser for help on using the browser.