|
1 #ifndef _OLECTL_H |
|
2 #define _OLECTL_H |
|
3 #if __GNUC__ >= 3 |
|
4 #pragma GCC system_header |
|
5 #endif |
|
6 |
|
7 #ifdef __cplusplus |
|
8 extern "C" { |
|
9 #endif |
|
10 |
|
11 #include <ocidl.h> |
|
12 #include <olectlid.h> |
|
13 |
|
14 #define STD_CTL_SCODE(n) MAKE_SCODE(SEVERITY_ERROR,FACILITY_CONTROL,n) |
|
15 #define CTL_E_ILLEGALFUNCTIONCALL STD_CTL_SCODE(5) |
|
16 #define CTL_E_OVERFLOW STD_CTL_SCODE(6) |
|
17 #define CTL_E_OUTOFMEMORY STD_CTL_SCODE(7) |
|
18 #define CTL_E_DIVISIONBYZERO STD_CTL_SCODE(11) |
|
19 #define CTL_E_OUTOFSTRINGSPACE STD_CTL_SCODE(14) |
|
20 #define CTL_E_OUTOFSTACKSPACE STD_CTL_SCODE(28) |
|
21 #define CTL_E_BADFILENAMEORNUMBER STD_CTL_SCODE(52) |
|
22 #define CTL_E_FILENOTFOUND STD_CTL_SCODE(53) |
|
23 #define CTL_E_BADFILEMODE STD_CTL_SCODE(54) |
|
24 #define CTL_E_FILEALREADYOPEN STD_CTL_SCODE(55) |
|
25 #define CTL_E_DEVICEIOERROR STD_CTL_SCODE(57) |
|
26 #define CTL_E_FILEALREADYEXISTS STD_CTL_SCODE(58) |
|
27 #define CTL_E_BADRECORDLENGTH STD_CTL_SCODE(59) |
|
28 #define CTL_E_DISKFULL STD_CTL_SCODE(61) |
|
29 #define CTL_E_BADRECORDNUMBER STD_CTL_SCODE(63) |
|
30 #define CTL_E_BADFILENAME STD_CTL_SCODE(64) |
|
31 #define CTL_E_TOOMANYFILES STD_CTL_SCODE(67) |
|
32 #define CTL_E_DEVICEUNAVAILABLE STD_CTL_SCODE(68) |
|
33 #define CTL_E_PERMISSIONDENIED STD_CTL_SCODE(70) |
|
34 #define CTL_E_DISKNOTREADY STD_CTL_SCODE(71) |
|
35 #define CTL_E_PATHFILEACCESSERROR STD_CTL_SCODE(75) |
|
36 #define CTL_E_PATHNOTFOUND STD_CTL_SCODE(76) |
|
37 #define CTL_E_INVALIDPATTERNSTRING STD_CTL_SCODE(93) |
|
38 #define CTL_E_INVALIDUSEOFNULL STD_CTL_SCODE(94) |
|
39 #define CTL_E_INVALIDFILEFORMAT STD_CTL_SCODE(321) |
|
40 #define CTL_E_INVALIDPROPERTYVALUE STD_CTL_SCODE(380) |
|
41 #define CTL_E_INVALIDPROPERTYARRAYINDEX STD_CTL_SCODE(381) |
|
42 #define CTL_E_SETNOTSUPPORTEDATRUNTIME STD_CTL_SCODE(382) |
|
43 #define CTL_E_SETNOTSUPPORTED STD_CTL_SCODE(383) |
|
44 #define CTL_E_NEEDPROPERTYARRAYINDEX STD_CTL_SCODE(385) |
|
45 #define CTL_E_SETNOTPERMITTED STD_CTL_SCODE(387) |
|
46 #define CTL_E_GETNOTSUPPORTEDATRUNTIME STD_CTL_SCODE(393) |
|
47 #define CTL_E_GETNOTSUPPORTED STD_CTL_SCODE(394) |
|
48 #define CTL_E_PROPERTYNOTFOUND STD_CTL_SCODE(422) |
|
49 #define CTL_E_INVALIDCLIPBOARDFORMAT STD_CTL_SCODE(460) |
|
50 #define CTL_E_INVALIDPICTURE STD_CTL_SCODE(481) |
|
51 #define CTL_E_PRINTERERROR STD_CTL_SCODE(482) |
|
52 #define CTL_E_CANTSAVEFILETOTEMP STD_CTL_SCODE(735) |
|
53 #define CTL_E_SEARCHTEXTNOTFOUND STD_CTL_SCODE(744) |
|
54 #define CTL_E_REPLACEMENTSTOOLONG STD_CTL_SCODE(746) |
|
55 #define CUSTOM_CTL_SCODE(n) MAKE_SCODE(SEVERITY_ERROR,FACILITY_CONTROL,n) |
|
56 #define CTL_E_CUSTOM_FIRST CUSTOM_CTL_SCODE(600) |
|
57 #define CLASS_E_NOTLICENSED (CLASSFACTORY_E_FIRST+2) |
|
58 #define CONNECT_E_FIRST MAKE_SCODE(SEVERITY_ERROR,FACILITY_ITF,0x200) |
|
59 #define CONNECT_E_LAST MAKE_SCODE(SEVERITY_ERROR,FACILITY_ITF,0x20F) |
|
60 #define CONNECT_S_FIRST MAKE_SCODE(SEVERITY_SUCCESS,FACILITY_ITF,0x200) |
|
61 #define CONNECT_S_LAST MAKE_SCODE(SEVERITY_SUCCESS,FACILITY_ITF,0x20F) |
|
62 #define CONNECT_E_NOCONNECTION (CONNECT_E_FIRST+0) |
|
63 #define CONNECT_E_ADVISELIMIT (CONNECT_E_FIRST+1) |
|
64 #define CONNECT_E_CANNOTCONNECT (CONNECT_E_FIRST+2) |
|
65 #define CONNECT_E_OVERRIDDEN (CONNECT_E_FIRST+3) |
|
66 #define SELFREG_E_FIRST MAKE_SCODE(SEVERITY_ERROR,FACILITY_ITF,0x200) |
|
67 #define SELFREG_E_LAST MAKE_SCODE(SEVERITY_ERROR,FACILITY_ITF,0x20F) |
|
68 #define SELFREG_S_FIRST MAKE_SCODE(SEVERITY_SUCCESS,FACILITY_ITF,0x200) |
|
69 #define SELFREG_S_LAST MAKE_SCODE(SEVERITY_SUCCESS,FACILITY_ITF,0x20F) |
|
70 #define SELFREG_E_TYPELIB (SELFREG_E_FIRST+0) |
|
71 #define SELFREG_E_CLASS (SELFREG_E_FIRST+1) |
|
72 #define PERPROP_E_FIRST MAKE_SCODE(SEVERITY_ERROR,FACILITY_ITF,0x200) |
|
73 #define PERPROP_E_LAST MAKE_SCODE(SEVERITY_ERROR,FACILITY_ITF,0x20F) |
|
74 #define PERPROP_S_FIRST MAKE_SCODE(SEVERITY_SUCCESS,FACILITY_ITF,0x200) |
|
75 #define PERPROP_S_LAST MAKE_SCODE(SEVERITY_SUCCESS,FACILITY_ITF,0x20F) |
|
76 #define PERPROP_E_NOPAGEAVAILABLE PERPROP_E_FIRST |
|
77 #define OLEMISC_RECOMPOSEONRESIZE 0x1 |
|
78 #define OLEMISC_ONLYICONIC 0x2 |
|
79 #define OLEMISC_INSERTNOTREPLACE 0x4 |
|
80 #define OLEMISC_STATIC 0x8 |
|
81 #define OLEMISC_CANTLINKINSIDE 0x10 |
|
82 #define OLEMISC_CANLINKBYOLE1 0x20 |
|
83 #define OLEMISC_ISLINKOBJECT 0x40 |
|
84 #define OLEMISC_INSIDEOUT 0x80 |
|
85 #define OLEMISC_ACTIVATEWHENVISIBLE 0x100 |
|
86 #define OLEMISC_RENDERINGISDEVICEINDEPENDENT 0x200 |
|
87 #define OLEMISC_INVISIBLEATRUNTIME 0x400 |
|
88 #define OLEMISC_ALWAYSRUN 0x800 |
|
89 #define OLEMISC_ACTSLIKEBUTTON 0x1000 |
|
90 #define OLEMISC_ACTSLIKELABEL 0x2000 |
|
91 #define OLEMISC_NOUIACTIVATE 0x4000 |
|
92 #define OLEMISC_ALIGNABLE 0x8000 |
|
93 #define OLEMISC_SIMPLEFRAME 0x10000 |
|
94 #define OLEMISC_SETCLIENTSITEFIRST 0x20000 |
|
95 #define OLEMISC_IMEMODE 0x40000 |
|
96 #define OLEMISC_IGNOREACTIVATEWHENVISIBLE 0x80000 |
|
97 #define OLEMISC_WANTSTOMENUMERGE 0x100000 |
|
98 #define OLEMISC_SUPPORTSMULTILEVELUNDO 0x200000 |
|
99 #define OLEIVERB_PROPERTIES (-7) |
|
100 #define VT_STREAMED_PROPSET 73 |
|
101 #define VT_STORED_PROPSET 74 |
|
102 #define VT_BLOB_PROPSET 75 |
|
103 #define VT_VERBOSE_ENUM 76 |
|
104 #define VT_COLOR VT_I4 |
|
105 #define VT_XPOS_PIXELS VT_I4 |
|
106 #define VT_YPOS_PIXELS VT_I4 |
|
107 #define VT_XSIZE_PIXELS VT_I4 |
|
108 #define VT_YSIZE_PIXELS VT_I4 |
|
109 #define VT_XPOS_HIMETRIC VT_I4 |
|
110 #define VT_YPOS_HIMETRIC VT_I4 |
|
111 #define VT_XSIZE_HIMETRIC VT_I4 |
|
112 #define VT_YSIZE_HIMETRIC VT_I4 |
|
113 #define VT_TRISTATE VT_I2 |
|
114 #define VT_OPTEXCLUSIVE VT_BOOL |
|
115 #define VT_FONT VT_DISPATCH |
|
116 #define VT_PICTURE VT_DISPATCH |
|
117 #define VT_HANDLE VT_I4 |
|
118 #define OCM__BASE (WM_USER+0x1c00) |
|
119 #define OCM_COMMAND (OCM__BASE+WM_COMMAND) |
|
120 #define OCM_CTLCOLORBTN (OCM__BASE+WM_CTLCOLORBTN) |
|
121 #define OCM_CTLCOLOREDIT (OCM__BASE+WM_CTLCOLOREDIT) |
|
122 #define OCM_CTLCOLORDLG (OCM__BASE+WM_CTLCOLORDLG) |
|
123 #define OCM_CTLCOLORLISTBOX (OCM__BASE+WM_CTLCOLORLISTBOX) |
|
124 #define OCM_CTLCOLORMSGBOX (OCM__BASE+WM_CTLCOLORMSGBOX) |
|
125 #define OCM_CTLCOLORSCROLLBAR (OCM__BASE+WM_CTLCOLORSCROLLBAR) |
|
126 #define OCM_CTLCOLORSTATIC (OCM__BASE+WM_CTLCOLORSTATIC) |
|
127 #define OCM_DRAWITEM (OCM__BASE+WM_DRAWITEM) |
|
128 #define OCM_MEASUREITEM (OCM__BASE+WM_MEASUREITEM) |
|
129 #define OCM_DELETEITEM (OCM__BASE+WM_DELETEITEM) |
|
130 #define OCM_VKEYTOITEM (OCM__BASE+WM_VKEYTOITEM) |
|
131 #define OCM_CHARTOITEM (OCM__BASE+WM_CHARTOITEM) |
|
132 #define OCM_COMPAREITEM (OCM__BASE+WM_COMPAREITEM) |
|
133 #define OCM_HSCROLL (OCM__BASE+WM_HSCROLL) |
|
134 #define OCM_VSCROLL (OCM__BASE+WM_VSCROLL) |
|
135 #define OCM_PARENTNOTIFY (OCM__BASE+WM_PARENTNOTIFY) |
|
136 #define OCM_NOTIFY (OCM__BASE+WM_NOTIFY) |
|
137 #define CTRLINFO_EATS_RETURN 1 |
|
138 #define CTRLINFO_EATS_ESCAPE 2 |
|
139 #define XFORMCOORDS_POSITION 1 |
|
140 #define XFORMCOORDS_SIZE 2 |
|
141 #define XFORMCOORDS_HIMETRICTOCONTAINER 4 |
|
142 #define XFORMCOORDS_CONTAINERTOHIMETRIC 8 |
|
143 #define GUIDKIND_DEFAULT_SOURCE_DISP_IID 1 |
|
144 #define PROPPAGESTATUS_DIRTY 1 |
|
145 #define PROPPAGESTATUS_VALIDATE 2 |
|
146 #define FONTSIZE(n) {n##0000,0} |
|
147 #define PICTURE_SCALABLE 1 |
|
148 #define PICTURE_TRANSPARENT 2 |
|
149 #define PICTYPE_UNINITIALIZED (-1) |
|
150 #define PICTYPE_NONE 0 |
|
151 #define PICTYPE_BITMAP 1 |
|
152 #define PICTYPE_METAFILE 2 |
|
153 #define PICTYPE_ICON 3 |
|
154 #define PICTYPE_ENHMETAFILE 4 |
|
155 #define DISPID_AUTOSIZE (-500) |
|
156 #define DISPID_BACKCOLOR (-501) |
|
157 #define DISPID_BACKSTYLE (-502) |
|
158 #define DISPID_BORDERCOLOR (-503) |
|
159 #define DISPID_BORDERSTYLE (-504) |
|
160 #define DISPID_BORDERWIDTH (-505) |
|
161 #define DISPID_DRAWMODE (-507) |
|
162 #define DISPID_DRAWSTYLE (-508) |
|
163 #define DISPID_DRAWWIDTH (-509) |
|
164 #define DISPID_FILLCOLOR (-510) |
|
165 #define DISPID_FILLSTYLE (-511) |
|
166 #define DISPID_FONT (-512) |
|
167 #define DISPID_FORECOLOR (-513) |
|
168 #define DISPID_ENABLED (-514) |
|
169 #define DISPID_HWND (-515) |
|
170 #define DISPID_TABSTOP (-516) |
|
171 #define DISPID_TEXT (-517) |
|
172 #define DISPID_CAPTION (-518) |
|
173 #define DISPID_BORDERVISIBLE (-519) |
|
174 #define DISPID_APPEARANCE (-520) |
|
175 #define DISPID_MOUSEPOINTER (-521) |
|
176 #define DISPID_MOUSEICON (-522) |
|
177 #define DISPID_PICTURE (-523) |
|
178 #define DISPID_VALID (-524) |
|
179 #define DISPID_REFRESH (-550) |
|
180 #define DISPID_DOCLICK (-551) |
|
181 #define DISPID_ABOUTBOX (-552) |
|
182 #define DISPID_CLICK (-600) |
|
183 #define DISPID_DBLCLICK (-601) |
|
184 #define DISPID_KEYDOWN (-602) |
|
185 #define DISPID_KEYPRESS (-603) |
|
186 #define DISPID_KEYUP (-604) |
|
187 #define DISPID_MOUSEDOWN (-605) |
|
188 #define DISPID_MOUSEMOVE (-606) |
|
189 #define DISPID_MOUSEUP (-607) |
|
190 #define DISPID_ERROREVENT (-608) |
|
191 #define DISPID_AMBIENT_BACKCOLOR (-701) |
|
192 #define DISPID_AMBIENT_DISPLAYNAME (-702) |
|
193 #define DISPID_AMBIENT_FONT (-703) |
|
194 #define DISPID_AMBIENT_FORECOLOR (-704) |
|
195 #define DISPID_AMBIENT_LOCALEID (-705) |
|
196 #define DISPID_AMBIENT_MESSAGEREFLECT (-706) |
|
197 #define DISPID_AMBIENT_SCALEUNITS (-707) |
|
198 #define DISPID_AMBIENT_TEXTALIGN (-708) |
|
199 #define DISPID_AMBIENT_USERMODE (-709) |
|
200 #define DISPID_AMBIENT_UIDEAD (-710) |
|
201 #define DISPID_AMBIENT_SHOWGRABHANDLES (-711) |
|
202 #define DISPID_AMBIENT_SHOWHATCHING (-712) |
|
203 #define DISPID_AMBIENT_DISPLAYASDEFAULT (-713) |
|
204 #define DISPID_AMBIENT_SUPPORTSMNEMONICS (-714) |
|
205 #define DISPID_AMBIENT_AUTOCLIP (-715) |
|
206 #define DISPID_AMBIENT_APPEARANCE (-716) |
|
207 #define DISPID_AMBIENT_CODEPAGE (-725) |
|
208 #define DISPID_AMBIENT_PALETTE (-726) |
|
209 #define DISPID_AMBIENT_CHARSET (-727) |
|
210 #define DISPID_AMBIENT_RIGHTTOLEFT (-732) |
|
211 #define DISPID_AMBIENT_TOPTOBOTTOM (-733) |
|
212 |
|
213 #define DISPID_FONT_NAME 0 |
|
214 #define DISPID_FONT_SIZE 2 |
|
215 #define DISPID_FONT_BOLD 3 |
|
216 #define DISPID_FONT_ITALIC 4 |
|
217 #define DISPID_FONT_UNDER 5 |
|
218 #define DISPID_FONT_STRIKE 6 |
|
219 #define DISPID_FONT_WEIGHT 7 |
|
220 #define DISPID_FONT_CHARSET 8 |
|
221 #define DISPID_PICT_HANDLE 0 |
|
222 #define DISPID_PICT_HPAL 2 |
|
223 #define DISPID_PICT_TYPE 3 |
|
224 #define DISPID_PICT_WIDTH 4 |
|
225 #define DISPID_PICT_HEIGHT 5 |
|
226 #define DISPID_PICT_RENDER 6 |
|
227 |
|
228 typedef _COM_interface IOleControl *LPOLECONTROL; |
|
229 typedef _COM_interface IOleControlSite *LPOLECONTROLSITE; |
|
230 typedef _COM_interface ISimpleFrameSite *LPSIMPLEFRAMESITE; |
|
231 typedef _COM_interface IPersistPropertyBag *LPPERSISTPROPERTYBAG; |
|
232 typedef _COM_interface IPersistStreamInit *LPPERSISTSTREAMINIT; |
|
233 typedef _COM_interface IPersistMemory *LPPERSISTMEMORY; |
|
234 typedef _COM_interface IPropertyNotifySink* LPPROPERTYNOTIFYSINK; |
|
235 typedef _COM_interface IProvideClassInfo *LPPROVIDECLASSINFO; |
|
236 typedef _COM_interface IProvideClassInfo2 *LPPROVIDECLASSINFO2; |
|
237 typedef _COM_interface IConnectionPointContainer *LPCONNECTIONPOINTCONTAINER; |
|
238 typedef _COM_interface IClassFactory2 *LPCLASSFACTORY2; |
|
239 typedef _COM_interface ISpecifyPropertyPages *LPSPECIFYPROPERTYPAGES; |
|
240 typedef _COM_interface IPerPropertyBrowsing *LPPERPROPERTYBROWSING; |
|
241 typedef _COM_interface IPropertyPage *LPPROPERTYPAGE; |
|
242 typedef _COM_interface IPropertyPage2 *LPPROPERTYPAGE2; |
|
243 |
|
244 typedef _COM_interface IPicture *LPPICTURE; |
|
245 typedef _COM_interface IPictureDisp *LPPICTUREDISP; |
|
246 typedef long OLE_XPOS_PIXELS; |
|
247 typedef long OLE_YPOS_PIXELS; |
|
248 typedef long OLE_XSIZE_PIXELS; |
|
249 typedef long OLE_YSIZE_PIXELS; |
|
250 typedef float OLE_XPOS_CONTAINER; |
|
251 typedef float OLE_YPOS_CONTAINER; |
|
252 typedef float OLE_XSIZE_CONTAINER; |
|
253 |
|
254 typedef VARIANT_BOOL OLE_OPTEXCLUSIVE; |
|
255 typedef VARIANT_BOOL OLE_CANCELBOOL; |
|
256 typedef VARIANT_BOOL OLE_ENABLEDEFAULTBOOL; |
|
257 |
|
258 #pragma pack(push,8) |
|
259 typedef enum { triUnchecked,triChecked1,triGray } OLE_TRISTATE; |
|
260 typedef struct tagOCPFIPARAMS { |
|
261 ULONG cbStructSize; |
|
262 HWND hWndOwner; |
|
263 int x; |
|
264 int y; |
|
265 LPCOLESTR lpszCaption; |
|
266 ULONG cObjects; |
|
267 LPUNKNOWN *lplpUnk; |
|
268 ULONG cPages; |
|
269 CLSID *lpPages; |
|
270 LCID lcid; |
|
271 DISPID dispidInitialProperty; |
|
272 } OCPFIPARAMS,*LPOCPFIPARAMS; |
|
273 typedef struct tagFONTDESC { |
|
274 UINT cbSizeofstruct; |
|
275 LPOLESTR lpstrName; |
|
276 CY cySize; |
|
277 SHORT sWeight; |
|
278 SHORT sCharset; |
|
279 BOOL fItalic; |
|
280 BOOL fUnderline; |
|
281 BOOL fStrikethrough; |
|
282 } FONTDESC,*LPFONTDESC; |
|
283 typedef struct tagPICTDESC { |
|
284 UINT cbSizeofstruct; |
|
285 UINT picType; |
|
286 _ANONYMOUS_UNION union { |
|
287 struct { |
|
288 HBITMAP hbitmap; |
|
289 HPALETTE hpal; |
|
290 } bmp; |
|
291 struct { |
|
292 HMETAFILE hmeta; |
|
293 int xExt; |
|
294 int yExt; |
|
295 } wmf; |
|
296 struct { |
|
297 HICON hicon; |
|
298 } icon; |
|
299 struct { |
|
300 HENHMETAFILE hemf; |
|
301 } emf; |
|
302 } DUMMYUNIONNAME; |
|
303 } PICTDESC,*LPPICTDESC; |
|
304 #pragma pack(pop) |
|
305 |
|
306 STDAPI DllRegisterServer(void); |
|
307 STDAPI DllUnregisterServer(void); |
|
308 STDAPI OleCreateFontIndirect(LPFONTDESC,REFIID,PVOID*); |
|
309 STDAPI OleCreatePictureIndirect(LPPICTDESC,REFIID,BOOL,PVOID*); |
|
310 STDAPI OleCreatePropertyFrame(HWND,UINT,UINT,LPCOLESTR,ULONG,LPUNKNOWN*,ULONG,LPCLSID,LCID,DWORD,PVOID); |
|
311 STDAPI OleCreatePropertyFrameIndirect(LPOCPFIPARAMS); |
|
312 STDAPI_(HCURSOR) OleIconToCursor(HINSTANCE,HICON); |
|
313 STDAPI OleLoadPicture(LPSTREAM,LONG,BOOL,REFIID,PVOID*); |
|
314 STDAPI OleLoadPictureEx(LPSTREAM,LONG,BOOL,REFIID,DWORD,DWORD,DWORD,LPVOID*); |
|
315 STDAPI OleLoadPicturePath(LPOLESTR,LPUNKNOWN,DWORD,OLE_COLOR,REFIID,LPVOID*); |
|
316 STDAPI OleLoadPictureFile(VARIANT,LPDISPATCH*); |
|
317 STDAPI OleLoadPictureFileEx(VARIANT,DWORD,DWORD,DWORD,LPDISPATCH*); |
|
318 STDAPI OleSavePictureFile(LPDISPATCH,BSTR); |
|
319 STDAPI OleTranslateColor(OLE_COLOR,HPALETTE,COLORREF*); |
|
320 #ifdef __cplusplus |
|
321 } |
|
322 #endif |
|
323 #endif |