1 | /*
|
---|
2 | * Copyright (C) 2002 Andriy Palamarchuk
|
---|
3 | * Copyright (C) 2004 Mike McCormack
|
---|
4 | *
|
---|
5 | * This library is free software; you can redistribute it and/or
|
---|
6 | * modify it under the terms of the GNU Lesser General Public
|
---|
7 | * License as published by the Free Software Foundation; either
|
---|
8 | * version 2.1 of the License, or (at your option) any later version.
|
---|
9 | *
|
---|
10 | * This library is distributed in the hope that it will be useful,
|
---|
11 | * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
---|
12 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
---|
13 | * Lesser General Public License for more details.
|
---|
14 | *
|
---|
15 | * You should have received a copy of the GNU Lesser General Public
|
---|
16 | * License along with this library; if not, write to the Free Software
|
---|
17 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
---|
18 | */
|
---|
19 |
|
---|
20 | /*
|
---|
21 | * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
|
---|
22 | * other than GPL or LGPL is available it will apply instead, Sun elects to use only
|
---|
23 | * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
|
---|
24 | * a choice of LGPL license versions is made available with the language indicating
|
---|
25 | * that LGPLv2 or any later version may be used, or where a choice of which version
|
---|
26 | * of the LGPL is applied is otherwise unspecified.
|
---|
27 | */
|
---|
28 |
|
---|
29 | cpp_quote("#if 0") /* not included on Windows */
|
---|
30 | import "oleidl.idl";
|
---|
31 | cpp_quote("#endif")
|
---|
32 |
|
---|
33 | /* REOBJECT structure flags */
|
---|
34 | cpp_quote("#define REO_GETOBJ_NO_INTERFACES 0x00000000")
|
---|
35 | cpp_quote("#define REO_GETOBJ_POLEOBJ 0x00000001")
|
---|
36 | cpp_quote("#define REO_GETOBJ_PSTG 0x00000002")
|
---|
37 | cpp_quote("#define REO_GETOBJ_POLESITE 0x00000004")
|
---|
38 | cpp_quote("#define REO_GETOBJ_ALL_INTERFACES 0x00000007")
|
---|
39 | cpp_quote("#define REO_CP_SELECTION 0xFFFFFFFF")
|
---|
40 | cpp_quote("#define REO_IOB_SELECTION 0xFFFFFFFF")
|
---|
41 | cpp_quote("#define REO_IOB_USE_CP 0xFFFFFFFE")
|
---|
42 | cpp_quote("#define REO_NULL 0x00000000")
|
---|
43 | cpp_quote("#define REO_READWRITEMASK 0x0000003F")
|
---|
44 | cpp_quote("#define REO_DONTNEEDPALETTE 0x00000020")
|
---|
45 | cpp_quote("#define REO_BLANK 0x00000010")
|
---|
46 | cpp_quote("#define REO_DYNAMICSIZE 0x00000008")
|
---|
47 | cpp_quote("#define REO_INVERTEDSELECT 0x00000004")
|
---|
48 | cpp_quote("#define REO_BELOWBASELINE 0x00000002")
|
---|
49 | cpp_quote("#define REO_RESIZABLE 0x00000001")
|
---|
50 | cpp_quote("#define REO_LINK 0x80000000")
|
---|
51 | cpp_quote("#define REO_STATIC 0x40000000")
|
---|
52 | cpp_quote("#define REO_SELECTED 0x08000000")
|
---|
53 | cpp_quote("#define REO_OPEN 0x04000000")
|
---|
54 | cpp_quote("#define REO_INPLACEACTIVE 0x02000000")
|
---|
55 | cpp_quote("#define REO_HILITED 0x01000000")
|
---|
56 | cpp_quote("#define REO_LINKAVAILABLE 0x00800000")
|
---|
57 | cpp_quote("#define REO_GETMETAFILE 0x00400000")
|
---|
58 |
|
---|
59 | /* clipboard operation flags */
|
---|
60 | cpp_quote("#define RECO_PASTE 0x00000000")
|
---|
61 | cpp_quote("#define RECO_DROP 0x00000001")
|
---|
62 | cpp_quote("#define RECO_COPY 0x00000002")
|
---|
63 | cpp_quote("#define RECO_CUT 0x00000003")
|
---|
64 | cpp_quote("#define RECO_DRAG 0x00000004")
|
---|
65 |
|
---|
66 | typedef struct _reobject {
|
---|
67 | DWORD cbStruct;
|
---|
68 | LONG cp;
|
---|
69 | CLSID clsid;
|
---|
70 | LPOLEOBJECT poleobj;
|
---|
71 | LPSTORAGE pstg;
|
---|
72 | LPOLECLIENTSITE polesite;
|
---|
73 | SIZEL sizel;
|
---|
74 | DWORD dvaspect;
|
---|
75 | DWORD dwFlags;
|
---|
76 | DWORD dwUser;
|
---|
77 | } REOBJECT;
|
---|
78 |
|
---|
79 | cpp_quote("#ifndef __RICHEDIT_CHARRANGE_DEFINED")
|
---|
80 | cpp_quote("#define __RICHEDIT_CHARRANGE_DEFINED")
|
---|
81 |
|
---|
82 | typedef struct _charrange
|
---|
83 | {
|
---|
84 | LONG cpMin;
|
---|
85 | LONG cpMax;
|
---|
86 | } CHARRANGE;
|
---|
87 |
|
---|
88 | cpp_quote("#endif /* __RICHEDIT_CHARRANGE_DEFINED */")
|
---|
89 |
|
---|
90 | /*****************************************************************************
|
---|
91 | * IRichEditOle
|
---|
92 | */
|
---|
93 | [
|
---|
94 | object,
|
---|
95 | uuid(00020d00-0000-0000-c000-000000000046),
|
---|
96 | pointer_default(unique)
|
---|
97 | ]
|
---|
98 | interface IRichEditOle : IUnknown
|
---|
99 | {
|
---|
100 | typedef [unique] IRichEditOle *LPRICHEDITOLE;
|
---|
101 |
|
---|
102 | HRESULT GetClientSite(LPOLECLIENTSITE *lplpolesite);
|
---|
103 | HRESULT GetObjectCount();
|
---|
104 | HRESULT GetLinkCount();
|
---|
105 | HRESULT GetObject(LONG iob, REOBJECT *lpreobject, DWORD dwFlags);
|
---|
106 | HRESULT InsertObject(REOBJECT *lpreobject);
|
---|
107 | HRESULT ConvertObject(LONG iob, REFCLSID rclsidNew, LPCSTR lpstrUserTypeNew);
|
---|
108 | HRESULT ActivateAs(REFCLSID rclsid, REFCLSID rclsidAs);
|
---|
109 | HRESULT SetHostNames(LPCSTR lpstrContainerApp, LPCSTR lpstrContainerObj);
|
---|
110 | HRESULT SetLinkAvailable(LONG iob, BOOL fAvailable);
|
---|
111 | HRESULT SetDvaspect(LONG iob, DWORD dvaspect);
|
---|
112 | HRESULT HandsOffStorage(LONG iob);
|
---|
113 | HRESULT SaveCompleted(LONG iob, LPSTORAGE lpstg);
|
---|
114 | HRESULT InPlaceDeactivate();
|
---|
115 | HRESULT ContextSensitiveHelp(BOOL fEnterMode);
|
---|
116 | HRESULT GetClipboardData(CHARRANGE* lpchrg, DWORD reco, LPDATAOBJECT *lplpdataobj);
|
---|
117 | HRESULT ImportDataObject(LPDATAOBJECT lpdataobj, CLIPFORMAT cf, HGLOBAL hMetaPict);
|
---|
118 | }
|
---|
119 |
|
---|
120 | /*****************************************************************************
|
---|
121 | * IRichEditOleCallback
|
---|
122 | */
|
---|
123 | [
|
---|
124 | object,
|
---|
125 | uuid(00020d03-0000-0000-c000-000000000046),
|
---|
126 | pointer_default(unique)
|
---|
127 | ]
|
---|
128 | interface IRichEditOleCallback : IUnknown
|
---|
129 | {
|
---|
130 | typedef [unique] IRichEditOleCallback *LPRICHEDITOLECALLBACK;
|
---|
131 |
|
---|
132 | HRESULT GetNewStorage(LPSTORAGE *lplpstg);
|
---|
133 | HRESULT GetInPlaceContext(LPOLEINPLACEFRAME *lplpFrame, LPOLEINPLACEUIWINDOW *lplpDoc, LPOLEINPLACEFRAMEINFO lpFrameInfo);
|
---|
134 | HRESULT ShowContainerUI(BOOL fShow);
|
---|
135 | HRESULT QueryInsertObject(LPCLSID lpclsid, LPSTORAGE lpstg, LONG cp);
|
---|
136 | HRESULT DeleteObject(LPOLEOBJECT lpoleobj);
|
---|
137 | HRESULT QueryAcceptData(LPDATAOBJECT lpdataobj, CLIPFORMAT *lpcfFormat, DWORD reco, BOOL fReally, HGLOBAL hMetaPict);
|
---|
138 | HRESULT ContextSensitiveHelp(BOOL fEnterMode);
|
---|
139 | HRESULT GetClipboardData(CHARRANGE *lpchrg, DWORD reco, LPDATAOBJECT *lplpdataobj);
|
---|
140 | HRESULT GetDragDropEffect(BOOL fDrag, DWORD grfKeyState, LPDWORD pdwEffect);
|
---|
141 | HRESULT GetContextMenu(WORD seltype, LPOLEOBJECT lpoleobj, CHARRANGE *lpchrg, HMENU *lphmenu);
|
---|
142 | }
|
---|