atl: Implement AtlPixelToHiMetric and AtlHiMetricToPixel.
[wine/wine64.git] / include / oledlg.h
blob9cc00f7a6d020eab0c6069a504124276c7f4b7c9
1 /*
2 * Declarations for OLEDLG
4 * Copyright (C) the Wine project
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
21 #ifndef __WINE_OLEDLG_H
22 #define __WINE_OLEDLG_H
24 #include <commdlg.h>
25 #include <prsht.h>
26 #include <ole2.h>
28 #ifdef __cplusplus
29 extern "C" {
30 #endif
33 typedef struct IOleUILinkContainerA *POLEUILINKCONTAINERA, *LPOLEUILINKCONTAINERA;
34 typedef struct IOleUILinkContainerW *POLEUILINKCONTAINERW, *LPOLEUILINKCONTAINERW;
36 typedef struct IOleUILinkInfoA *POLEUILINKINFOA, *LPOLEUILINKINFOA;
37 typedef struct IOleUILinkInfoW *POLEUILINKINFOW, *LPOLEUILINKINFOW;
39 typedef struct IOleUIObjInfoA *POLEUIOBJINFOA, *LPOLEUIOBJINFOA;
40 typedef struct IOleUIObjInfoW *POLEUIOBJINFOW, *LPOLEUIOBJINFOW;
42 #define IDC_OLEUIHELP 99
45 #define OLEUI_ERR_STANDARDMAX 116
47 #define OLEUI_BZERR_HTASKINVALID (OLEUI_ERR_STANDARDMAX+0)
48 #define OLEUI_BZ_SWITCHTOSELECTED (OLEUI_ERR_STANDARDMAX+1)
49 #define OLEUI_BZ_RETRYSELECTED (OLEUI_ERR_STANDARDMAX+2)
50 #define OLEUI_BZ_CALLUNBLOCKED (OLEUI_ERR_STANDARDMAX+3)
52 #define OLEUI_FALSE 0
53 #define OLEUI_SUCCESS 1 /* Same as OLEUI_OK */
54 #define OLEUI_OK 1 /* OK button pressed */
55 #define OLEUI_CANCEL 2 /* Cancel button pressed */
57 #define OLEUI_ERR_STANDARDMIN 100
58 #define OLEUI_ERR_OLEMEMALLOC 100
59 #define OLEUI_ERR_STRUCTURENULL 101
60 #define OLEUI_ERR_STRUCTUREINVALID 102
61 #define OLEUI_ERR_CBSTRUCTINCORRECT 103
62 #define OLEUI_ERR_HWNDOWNERINVALID 104
63 #define OLEUI_ERR_LPSZCAPTIONINVALID 105
64 #define OLEUI_ERR_LPFNHOOKINVALID 106
65 #define OLEUI_ERR_HINSTANCEINVALID 107
66 #define OLEUI_ERR_LPSZTEMPLATEINVALID 108
67 #define OLEUI_ERR_HRESOURCEINVALID 109
68 #define OLEUI_ERR_FINDTEMPLATEFAILURE 110
69 #define OLEUI_ERR_LOADTEMPLATEFAILURE 111
70 #define OLEUI_ERR_DIALOGFAILURE 112
71 #define OLEUI_ERR_LOCALMEMALLOC 113
72 #define OLEUI_ERR_GLOBALMEMALLOC 114
73 #define OLEUI_ERR_LOADSTRING 115
74 #define OLEUI_ERR_STANDARDMAX 116
76 typedef UINT (CALLBACK *LPFNOLEUIHOOK)(HWND, UINT, WPARAM, LPARAM);
78 /*****************************************************************************
79 * Registered Message Names
81 #define SZOLEUI_MSG_HELPA "OLEUI_MSG_HELP"
82 #define SZOLEUI_MSG_ENDDIALOGA "OLEUI_MSG_ENDDIALOG"
83 #define SZOLEUI_MSG_BROWSEA "OLEUI_MSG_BROWSE"
84 #define SZOLEUI_MSG_CHANGEICONA "OLEUI_MSG_CHANGEICON"
85 #define SZOLEUI_MSG_CLOSEBUSYDIALOGA "OLEUI_MSG_CLOSEBUSYDIALOG"
86 #define SZOLEUI_MSG_CONVERTA "OLEUI_MSG_CONVERT"
87 #define SZOLEUI_MSG_CHANGESOURCEA "OLEUI_MSG_CHANGESOURCE"
88 #define SZOLEUI_MSG_ADDCONTROLA "OLEUI_MSG_ADDCONTROL"
89 #define SZOLEUI_MSG_BROWSE_OFNA "OLEUI_MSG_BROWSE_OFN"
90 #if defined(__GNUC__)
91 # define SZOLEUI_MSG_HELPW (const WCHAR []){ 'O','L','E','U','I','_','M','S','G','_','H','E','L','P',0 }
92 # define SZOLEUI_MSG_ENDDIALOGW (const WCHAR []){ 'O','L','E','U','I','_','M','S','G','_','E','N','D','D','I','A','L','O','G',0 }
93 # define SZOLEUI_MSG_BROWSEW (const WCHAR []){ 'O','L','E','U','I','_','M','S','G','_','B','R','O','W','S','E',0 }
94 # define SZOLEUI_MSG_CHANGEICONW (const WCHAR []){ 'O','L','E','U','I','_','M','S','G','_','C','H','A','N','G','E','I','C','O','N',0 }
95 # define SZOLEUI_MSG_CLOSEBUSYDIALOGW (const WCHAR []){ 'O','L','E','U','I','_','M','S','G','_','C','L','O','S','E','B','U','S','Y','D','I','A','L','O','G',0 }
96 # define SZOLEUI_MSG_CONVERTW (const WCHAR []){ 'O','L','E','U','I','_','M','S','G','_','C','O','N','V','E','R','T',0 }
97 # define SZOLEUI_MSG_CHANGESOURCEW (const WCHAR []){ 'O','L','E','U','I','_','M','S','G','_','C','H','A','N','G','E','S','O','U','R','C','E',0 }
98 # define SZOLEUI_MSG_ADDCONTROLW (const WCHAR []){ 'O','L','E','U','I','_','M','S','G','_','A','D','D','C','O','N','T','R','O','L',0 }
99 # define SZOLEUI_MSG_BROWSE_OFNW (const WCHAR []){ 'O','L','E','U','I','_','M','S','G','_','B','R','O','W','S','E','_','O','F','N',0 }
100 #elif defined(_MSC_VER)
101 # define SZOLEUI_MSG_HELPW L"OLEUI_MSG_HELP"
102 # define SZOLEUI_MSG_ENDDIALOGW L"OLEUI_MSG_ENDDIALOG"
103 # define SZOLEUI_MSG_BROWSEW L"OLEUI_MSG_BROWSE"
104 # define SZOLEUI_MSG_CHANGEICONW L"OLEUI_MSG_CHANGEICON"
105 # define SZOLEUI_MSG_CLOSEBUSYDIALOGW L"OLEUI_MSG_CLOSEBUSYDIALOG"
106 # define SZOLEUI_MSG_CONVERTW L"OLEUI_MSG_CONVERT"
107 # define SZOLEUI_MSG_CHANGESOURCEW L"OLEUI_MSG_CHANGESOURCE"
108 # define SZOLEUI_MSG_ADDCONTROLW L"OLEUI_MSG_ADDCONTROL"
109 # define SZOLEUI_MSG_BROWSE_OFNW L"OLEUI_MSG_BROWSE_OFN"
110 #else
111 static const WCHAR SZOLEUI_MSG_HELPW[] = { 'O','L','E','U','I','_','M','S','G','_','H','E','L','P',0 };
112 static const WCHAR SZOLEUI_MSG_ENDDIALOGW[] = { 'O','L','E','U','I','_','M','S','G','_','E','N','D','D','I','A','L','O','G',0 };
113 static const WCHAR SZOLEUI_MSG_BROWSEW[] = { 'O','L','E','U','I','_','M','S','G','_','B','R','O','W','S','E',0 };
114 static const WCHAR SZOLEUI_MSG_CHANGEICONW[] = { 'O','L','E','U','I','_','M','S','G','_','C','H','A','N','G','E','I','C','O','N',0 };
115 static const WCHAR SZOLEUI_MSG_CLOSEBUSYDIALOGW[] = { 'O','L','E','U','I','_','M','S','G','_','C','L','O','S','E','B','U','S','Y','D','I','A','L','O','G',0 };
116 static const WCHAR SZOLEUI_MSG_CONVERTW[] = { 'O','L','E','U','I','_','M','S','G','_','C','O','N','V','E','R','T',0 };
117 static const WCHAR SZOLEUI_MSG_CHANGESOURCEW[] = { 'O','L','E','U','I','_','M','S','G','_','C','H','A','N','G','E','S','O','U','R','C','E',0 };
118 static const WCHAR SZOLEUI_MSG_ADDCONTROLW[] = { 'O','L','E','U','I','_','M','S','G','_','A','D','D','C','O','N','T','R','O','L',0 };
119 static const WCHAR SZOLEUI_MSG_BROWSE_OFNW[] = { 'O','L','E','U','I','_','M','S','G','_','B','R','O','W','S','E','_','O','F','N',0 };
120 #endif
121 #define SZOLEUI_MSG_HELP WINELIB_NAME_AW(SZOLEUI_MSG_HELP)
122 #define SZOLEUI_MSG_ENDDIALOG WINELIB_NAME_AW(SZOLEUI_MSG_ENDDIALOG)
123 #define SZOLEUI_MSG_BROWSE WINELIB_NAME_AW(SZOLEUI_MSG_BROWSE)
124 #define SZOLEUI_MSG_CHANGEICON WINELIB_NAME_AW(SZOLEUI_MSG_CHANGEICON)
125 #define SZOLEUI_MSG_CLOSEBUSYDIALOG WINELIB_NAME_AW(SZOLEUI_MSG_CLOSEBUSYDIALOG)
126 #define SZOLEUI_MSG_CONVERT WINELIB_NAME_AW(SZOLEUI_MSG_CONVERT)
127 #define SZOLEUI_MSG_CHANGESOURCE WINELIB_NAME_AW(SZOLEUI_MSG_CHANGESOURCE)
128 #define SZOLEUI_MSG_ADDCONTROL WINELIB_NAME_AW(SZOLEUI_MSG_ADDCONTROL)
129 #define SZOLEUI_MSG_BROWSE_OFN WINELIB_NAME_AW(SZOLEUI_MSG_BROWSE_OFN)
132 /*****************************************************************************
133 * INSERT OBJECT DIALOG
135 typedef struct tagOLEUIINSERTOBJECTA
137 DWORD cbStruct;
138 DWORD dwFlags;
139 HWND hWndOwner;
140 LPCSTR lpszCaption;
141 LPFNOLEUIHOOK lpfnHook;
142 LPARAM lCustData;
143 HINSTANCE hInstance;
144 LPCSTR lpszTemplate;
145 HRSRC hResource;
146 CLSID clsid;
147 LPSTR lpszFile;
148 UINT cchFile;
149 UINT cClsidExclude;
150 LPCLSID lpClsidExclude;
151 IID iid;
152 DWORD oleRender;
153 LPFORMATETC lpFormatEtc;
154 LPOLECLIENTSITE lpIOleClientSite;
155 LPSTORAGE lpIStorage;
156 LPVOID *ppvObj;
157 SCODE sc;
158 HGLOBAL hMetaPict;
159 } OLEUIINSERTOBJECTA, *POLEUIINSERTOBJECTA, *LPOLEUIINSERTOBJECTA;
161 typedef struct tagOLEUIINSERTOBJECTW
163 DWORD cbStruct;
164 DWORD dwFlags;
165 HWND hWndOwner;
166 LPCWSTR lpszCaption;
167 LPFNOLEUIHOOK lpfnHook;
168 LPARAM lCustData;
169 HINSTANCE hInstance;
170 LPCWSTR lpszTemplate;
171 HRSRC hResource;
172 CLSID clsid;
173 LPWSTR lpszFile;
174 UINT cchFile;
175 UINT cClsidExclude;
176 LPCLSID lpClsidExclude;
177 IID iid;
178 DWORD oleRender;
179 LPFORMATETC lpFormatEtc;
180 LPOLECLIENTSITE lpIOleClientSite;
181 LPSTORAGE lpIStorage;
182 LPVOID *ppvObj;
183 SCODE sc;
184 HGLOBAL hMetaPict;
185 } OLEUIINSERTOBJECTW, *POLEUIINSERTOBJECTW, *LPOLEUIINSERTOBJECTW;
187 DECL_WINELIB_TYPE_AW(OLEUIINSERTOBJECT)
188 DECL_WINELIB_TYPE_AW(POLEUIINSERTOBJECT)
189 DECL_WINELIB_TYPE_AW(LPOLEUIINSERTOBJECT)
191 #define IOF_SHOWHELP 0x00000001L
192 #define IOF_SELECTCREATENEW 0x00000002L
193 #define IOF_SELECTCREATEFROMFILE 0x00000004L
194 #define IOF_CHECKLINK 0x00000008L
195 #define IOF_CHECKDISPLAYASICON 0x00000010L
196 #define IOF_CREATENEWOBJECT 0x00000020L
197 #define IOF_CREATEFILEOBJECT 0x00000040L
198 #define IOF_CREATELINKOBJECT 0x00000080L
199 #define IOF_DISABLELINK 0x00000100L
200 #define IOF_VERIFYSERVERSEXIST 0x00000200L
201 #define IOF_DISABLEDISPLAYASICON 0x00000400L
202 #define IOF_HIDECHANGEICON 0x00000800L
203 #define IOF_SHOWINSERTCONTROL 0x00001000L
204 #define IOF_SELECTCREATECONTROL 0x00002000L
206 /*****************************************************************************
207 * CONVERT DIALOG
209 typedef struct tagOLEUICONVERTA
211 DWORD cbStruct;
212 DWORD dwFlags;
213 HWND hWndOwner;
214 LPCSTR lpszCaption;
215 LPFNOLEUIHOOK lpfnHook;
216 LPARAM lCustData;
217 HINSTANCE hInstance;
218 LPCSTR lpszTemplate;
219 HRSRC hResource;
220 CLSID clsid;
221 CLSID clsidConvertDefault;
222 CLSID clsidActivateDefault;
223 CLSID clsidNew;
224 DWORD dvAspect;
225 WORD wFormat;
226 BOOL fIsLinkedObject;
227 HGLOBAL hMetaPict;
228 LPSTR lpszUserType;
229 BOOL fObjectsIconChanged;
230 LPSTR lpszDefLabel;
231 UINT cClsidExclude;
232 LPCLSID lpClsidExclude;
233 } OLEUICONVERTA, *POLEUICONVERTA, *LPOLEUICONVERTA;
235 typedef struct tagOLEUICONVERTW
237 DWORD cbStruct;
238 DWORD dwFlags;
239 HWND hWndOwner;
240 LPCWSTR lpszCaption;
241 LPFNOLEUIHOOK lpfnHook;
242 LPARAM lCustData;
243 HINSTANCE hInstance;
244 LPCWSTR lpszTemplate;
245 HRSRC hResource;
246 CLSID clsid;
247 CLSID clsidConvertDefault;
248 CLSID clsidActivateDefault;
249 CLSID clsidNew;
250 DWORD dvAspect;
251 WORD wFormat;
252 BOOL fIsLinkedObject;
253 HGLOBAL hMetaPict;
254 LPWSTR lpszUserType;
255 BOOL fObjectsIconChanged;
256 LPWSTR lpszDefLabel;
257 UINT cClsidExclude;
258 LPCLSID lpClsidExclude;
259 } OLEUICONVERTW, *POLEUICONVERTW, *LPOLEUICONVERTW;
261 DECL_WINELIB_TYPE_AW(OLEUICONVERT)
262 DECL_WINELIB_TYPE_AW(POLEUICONVERT)
263 DECL_WINELIB_TYPE_AW(LPOLEUICONVERT)
265 #define CF_SHOWHELPBUTTON 0x00000001L
266 #define CF_SETCONVERTDEFAULT 0x00000002L
267 #define CF_SETACTIVATEDEFAULT 0x00000004L
268 #define CF_SELECTCONVERTTO 0x00000008L
269 #define CF_SELECTACTIVATEAS 0x00000010L
270 #define CF_DISABLEDISPLAYASICON 0x00000020L
271 #define CF_DISABLEACTIVATEAS 0x00000040L
272 #define CF_HIDECHANGEICON 0x00000080L
273 #define CF_CONVERTONLY 0x00000100L
275 /*****************************************************************************
276 * CHANGE ICON DIALOG
278 typedef struct tagOLEUICHANGEICONA
280 DWORD cbStruct;
281 DWORD dwFlags;
282 HWND hWndOwner;
283 LPCSTR lpszCaption;
284 LPFNOLEUIHOOK lpfnHook;
285 LPARAM lCustData;
286 HINSTANCE hInstance;
287 LPCSTR lpszTemplate;
288 HRSRC hResource;
289 HGLOBAL hMetaPict;
290 CLSID clsid;
291 CHAR szIconExe[MAX_PATH];
292 INT cchIconExe;
293 } OLEUICHANGEICONA, *POLEUICHANGEICONA, *LPOLEUICHANGEICONA;
295 typedef struct tagOLEUICHANGEICONW
297 DWORD cbStruct;
298 DWORD dwFlags;
299 HWND hWndOwner;
300 LPCWSTR lpszCaption;
301 LPFNOLEUIHOOK lpfnHook;
302 LPARAM lCustData;
303 HINSTANCE hInstance;
304 LPCWSTR lpszTemplate;
305 HRSRC hResource;
306 HGLOBAL hMetaPict;
307 CLSID clsid;
308 WCHAR szIconExe[MAX_PATH];
309 INT cchIconExe;
310 } OLEUICHANGEICONW, *POLEUICHANGEICONW, *LPOLEUICHANGEICONW;
312 DECL_WINELIB_TYPE_AW(OLEUICHANGEICON)
313 DECL_WINELIB_TYPE_AW(POLEUICHANGEICON)
314 DECL_WINELIB_TYPE_AW(LPOLEUICHANGEICON)
317 #define CIF_SHOWHELP 0x00000001L
318 #define CIF_SELECTCURRENT 0x00000002L
319 #define CIF_SELECTDEFAULT 0x00000004L
320 #define CIF_SELECTFROMFILE 0x00000008L
321 #define CIF_USEICONEXE 0x00000010L
323 /*****************************************************************************
324 * PASTE SPECIAL DIALOG
327 typedef enum tagOLEUIPASTEFLAG
329 OLEUIPASTE_ENABLEICON = 2048,
330 OLEUIPASTE_PASTEONLY = 0,
331 OLEUIPASTE_PASTE = 512,
332 OLEUIPASTE_LINKANYTYPE = 1024,
333 OLEUIPASTE_LINKTYPE1 = 1,
334 OLEUIPASTE_LINKTYPE2 = 2,
335 OLEUIPASTE_LINKTYPE3 = 4,
336 OLEUIPASTE_LINKTYPE4 = 8,
337 OLEUIPASTE_LINKTYPE5 = 16,
338 OLEUIPASTE_LINKTYPE6 = 32,
339 OLEUIPASTE_LINKTYPE7 = 64,
340 OLEUIPASTE_LINKTYPE8 = 128
341 } OLEUIPASTEFLAG;
343 typedef struct tagOLEUIPASTEENTRYA
345 FORMATETC fmtetc;
346 LPCSTR lpstrFormatName;
347 LPCSTR lpstrResultText;
348 DWORD dwFlags;
349 DWORD dwScratchSpace;
350 } OLEUIPASTEENTRYA, *POLEUIPASTEENTRYA, *LPOLEUIPASTEENTRYA;
352 typedef struct tagOLEUIPASTEENTRYW
354 FORMATETC fmtetc;
355 LPCWSTR lpstrFormatName;
356 LPCWSTR lpstrResultText;
357 DWORD dwFlags;
358 DWORD dwScratchSpace;
359 } OLEUIPASTEENTRYW, *POLEUIPASTEENTRYW, *LPOLEUIPASTEENTRYW;
361 DECL_WINELIB_TYPE_AW(OLEUIPASTEENTRY)
362 DECL_WINELIB_TYPE_AW(POLEUIPASTEENTRY)
363 DECL_WINELIB_TYPE_AW(LPOLEUIPASTEENTRY)
365 typedef struct tagOLEUIPASTESPECIALA
367 DWORD cbStruct;
368 DWORD dwFlags;
369 HWND hWndOwner;
370 LPCSTR lpszCaption;
371 LPFNOLEUIHOOK lpfnHook;
372 LPARAM lCustData;
373 HINSTANCE hInstance;
374 LPCSTR lpszTemplate;
375 HRSRC hResource;
376 LPDATAOBJECT lpSrcDataObj;
377 LPOLEUIPASTEENTRYA arrPasteEntries;
378 INT cPasteEntries;
379 UINT* arrLinkTypes;
380 INT cLinkTypes;
381 UINT cClsidExclude;
382 LPCLSID lpClsidExclude;
383 INT nSelectedIndex;
384 BOOL fLink;
385 HGLOBAL hMetaPict;
386 SIZEL sizel;
387 } OLEUIPASTESPECIALA, *POLEUIPASTESPECIALA, *LPOLEUIPASTESPECIALA;
389 typedef struct tagOLEUIPASTESPECIALW
391 DWORD cbStruct;
392 DWORD dwFlags;
393 HWND hWndOwner;
394 LPCWSTR lpszCaption;
395 LPFNOLEUIHOOK lpfnHook;
396 LPARAM lCustData;
397 HINSTANCE hInstance;
398 LPCWSTR lpszTemplate;
399 HRSRC hResource;
400 LPDATAOBJECT lpSrcDataObj;
401 LPOLEUIPASTEENTRYW arrPasteEntries;
402 INT cPasteEntries;
403 UINT* arrLinkTypes;
404 INT cLinkTypes;
405 UINT cClsidExclude;
406 LPCLSID lpClsidExclude;
407 INT nSelectedIndex;
408 BOOL fLink;
409 HGLOBAL hMetaPict;
410 SIZEL sizel;
411 } OLEUIPASTESPECIALW, *POLEUIPASTESPECIALW, *LPOLEUIPASTESPECIALW;
413 DECL_WINELIB_TYPE_AW(OLEUIPASTESPECIAL)
414 DECL_WINELIB_TYPE_AW(POLEUIPASTESPECIAL)
415 DECL_WINELIB_TYPE_AW(LPOLEUIPASTESPECIAL)
417 #define PS_MAXLINKTYPES 8
419 #define PSF_SHOWHELP 0x00000001L
420 #define PSF_SELECTPASTE 0x00000002L
421 #define PSF_SELECTPASTELINK 0x00000004L
423 #define PSF_CHECKDISPLAYASICON 0x00000008L
424 #define PSF_DISABLEDISPLAYASICON 0x00000010L
425 #define PSF_HIDECHANGEICON 0x00000020L
426 #define PSF_STAYONCLIPBOARDCHANGE 0x00000040L
427 #define PSF_NOREFRESHDATAOBJECT 0x00000080L
429 #define OLEUI_IOERR_SRCDATAOBJECTINVALID (OLEUI_ERR_STANDARDMAX+0)
430 #define OLEUI_IOERR_ARRPASTEENTRIESINVALID (OLEUI_ERR_STANDARDMAX+1)
431 #define OLEUI_IOERR_ARRLINKTYPESINVALID (OLEUI_ERR_STANDARDMAX+2)
432 #define OLEUI_PSERR_CLIPBOARDCHANGED (OLEUI_ERR_STANDARDMAX+3)
433 #define OLEUI_PSERR_GETCLIPBOARDFAILED (OLEUI_ERR_STANDARDMAX+4)
435 /* Paste Special dialog resource ids */
436 #define IDD_PASTESPECIAL 1003
437 #define IDD_PASTESPECIAL4 1108
439 /* Paste Special dialog control ids */
440 #define IDC_PS_PASTE 500
441 #define IDC_PS_PASTELINK 501
442 #define IDC_PS_SOURCETEXT 502
443 #define IDC_PS_PASTELIST 503
444 #define IDC_PS_PASTELINKLIST 504
445 #define IDC_PS_DISPLAYLIST 505
446 #define IDC_PS_DISPLAYASICON 506
447 #define IDC_PS_ICONDISPLAY 507
448 #define IDC_PS_CHANGEICON 508
449 #define IDC_PS_RESULTIMAGE 509
450 #define IDC_PS_RESULTTEXT 510
452 /*****************************************************************************
453 * EDIT LINKS DIALOG
456 #define ELF_SHOWHELP 0x00000001L
457 #define ELF_DISABLEUPDATENOW 0x00000002L
458 #define ELF_DISABLEOPENSOURCE 0x00000004L
459 #define ELF_DISABLECHANGESOURCE 0x00000008L
460 #define ELF_DISABLECANCELLINK 0x00000010L
462 typedef struct tagOLEUIEDITLINKSW
464 DWORD cbStruct;
465 DWORD dwFlags;
466 HWND hWndOwner;
467 LPCWSTR lpszCaption;
468 LPFNOLEUIHOOK lpfnHook;
469 LPARAM lCustData;
470 HINSTANCE hInstance;
471 LPCWSTR lpszTemplate;
472 HRSRC hResource;
473 LPOLEUILINKCONTAINERW lpOleUILinkContainer;
474 } OLEUIEDITLINKSW, *POLEUIEDITLINKSW, *LPOLEUIEDITLINKSW;
476 typedef struct tagOLEUIEDITLINKSA
478 DWORD cbStruct;
479 DWORD dwFlags;
480 HWND hWndOwner;
481 LPCSTR lpszCaption;
482 LPFNOLEUIHOOK lpfnHook;
483 LPARAM lCustData;
484 HINSTANCE hInstance;
485 LPCSTR lpszTemplate;
486 HRSRC hResource;
487 LPOLEUILINKCONTAINERA lpOleUILinkContainer;
488 } OLEUIEDITLINKSA, *POLEUIEDITLINKSA, *LPOLEUIEDITLINKSA;
490 DECL_WINELIB_TYPE_AW(OLEUIEDITLINKS)
491 DECL_WINELIB_TYPE_AW(POLEUIEDITLINKS)
492 DECL_WINELIB_TYPE_AW(LPOLEUIEDITLINKS)
495 /***********************************************************************************
496 * BUSY DIALOG
498 typedef struct tagOLEUIBUSYA
500 DWORD cbStruct;
501 DWORD dwFlags;
502 HWND hWndOwner;
503 LPCSTR lpszCaption;
504 LPFNOLEUIHOOK lpfnHook;
505 LPARAM lCustData;
506 HINSTANCE hInstance;
507 LPCSTR lpszTemplate;
508 HRSRC hResource;
509 HTASK hTask;
510 HWND* lphWndDialog;
511 } OLEUIBUSYA, *POLEUIBUSYA, *LPOLEUIBUSYA;
513 typedef struct tagOLEUIBUSYW
515 DWORD cbStruct;
516 DWORD dwFlags;
517 HWND hWndOwner;
518 LPCWSTR lpszCaption;
519 LPFNOLEUIHOOK lpfnHook;
520 LPARAM lCustData;
521 HINSTANCE hInstance;
522 LPCWSTR lpszTemplate;
523 HRSRC hResource;
524 HTASK hTask;
525 HWND* lphWndDialog;
526 } OLEUIBUSYW, *POLEUIBUSYW, *LPOLEUIBUSYW;
528 DECL_WINELIB_TYPE_AW(OLEUIBUSY)
529 DECL_WINELIB_TYPE_AW(POLEUIBUSY)
530 DECL_WINELIB_TYPE_AW(LPOLEUIBUSY)
533 #define BZ_DISABLECANCELBUTTON 0x00000001L
534 #define BZ_DISABLESWITCHTOBUTTON 0x00000002L
535 #define BZ_DISABLERETRYBUTTON 0x00000004L
536 #define BZ_NOTRESPONDINGDIALOG 0x00000008L
538 /***********************************************************************************
539 * OBJECT PROPERTIES DIALOG
542 struct tagOLEUIOBJECTPROPSW;
543 struct tagOLEUIOBJECTPROPSA;
545 typedef struct tagOLEUIGNRLPROPSA
547 DWORD cbStruct;
548 DWORD dwFlags;
549 DWORD dwReserved1[2];
550 LPFNOLEUIHOOK lpfnHook;
551 LPARAM lCustData;
552 DWORD dwReserved2[3];
553 struct tagOLEUIOBJECTPROPSA* lpOP;
555 } OLEUIGNRLPROPSA, *POLEUIGNRLPROPSA, *LPOLEUIGNRLPROPSA;
557 typedef struct tagOLEUIGNRLPROPSW
559 DWORD cbStruct;
560 DWORD dwFlags;
561 DWORD dwReserved1[2];
562 LPFNOLEUIHOOK lpfnHook;
563 LPARAM lCustData;
564 DWORD dwReserved2[3];
565 struct tagOLEUIOBJECTPROPSW* lpOP;
566 } OLEUIGNRLPROPSW, *POLEUIGNRLPROPSW, *LPOLEUIGNRLPROPSW;
568 DECL_WINELIB_TYPE_AW(OLEUIGNRLPROPS)
569 DECL_WINELIB_TYPE_AW(POLEUIGNRLPROPS)
570 DECL_WINELIB_TYPE_AW(LPOLEUIGNRLPROPS)
572 typedef struct tagOLEUIVIEWPROPSA
574 DWORD cbStruct;
575 DWORD dwFlags;
576 DWORD dwReserved1[2];
577 LPFNOLEUIHOOK lpfnHook;
578 LPARAM lCustData;
579 DWORD dwReserved2[3];
580 struct tagOLEUIOBJECTPROPSA* lpOP;
581 INT nScaleMin;
582 INT nScaleMax;
583 } OLEUIVIEWPROPSA, *POLEUIVIEWPROPSA, *LPOLEUIVIEWPROPSA;
585 typedef struct tagOLEUIVIEWPROPSW
587 DWORD cbStruct;
588 DWORD dwFlags;
589 DWORD dwReserved1[2];
590 LPFNOLEUIHOOK lpfnHook;
591 LPARAM lCustData;
592 DWORD dwReserved2[3];
593 struct tagOLEUIOBJECTPROPSW* lpOP;
594 INT nScaleMin;
595 INT nScaleMax;
596 } OLEUIVIEWPROPSW, *POLEUIVIEWPROPSW, *LPOLEUIVIEWPROPSW;
598 DECL_WINELIB_TYPE_AW(OLEUIVIEWPROPS)
599 DECL_WINELIB_TYPE_AW(POLEUIVIEWPROPS)
600 DECL_WINELIB_TYPE_AW(LPOLEUIVIEWPROPS)
603 #define VPF_SELECTRELATIVE 0x00000001L
604 #define VPF_DISABLERELATIVE 0x00000002L
605 #define VPF_DISABLESCALE 0x00000004L
607 typedef struct tagOLEUILINKPROPSA
609 DWORD cbStruct;
610 DWORD dwFlags;
611 DWORD dwReserved1[2];
612 LPFNOLEUIHOOK lpfnHook;
613 LPARAM lCustData;
614 DWORD dwReserved2[3];
615 struct tagOLEUIOBJECTPROPSA* lpOP;
616 } OLEUILINKPROPSA, *POLEUILINKPROPSA, *LPOLEUILINKPROPSA;
618 typedef struct tagOLEUILINKPROPSW
620 DWORD cbStruct;
621 DWORD dwFlags;
622 DWORD dwReserved1[2];
623 LPFNOLEUIHOOK lpfnHook;
624 LPARAM lCustData;
625 DWORD dwReserved2[3];
626 struct tagOLEUIOBJECTPROPSW* lpOP;
627 } OLEUILINKPROPSW, *POLEUILINKPROPSW, *LPOLEUILINKPROPSW;
629 DECL_WINELIB_TYPE_AW(OLEUILINKPROPS)
630 DECL_WINELIB_TYPE_AW(POLEUILINKPROPS)
631 DECL_WINELIB_TYPE_AW(LPOLEUILINKPROPS)
633 typedef struct tagOLEUIOBJECTPROPSA
635 DWORD cbStruct;
636 DWORD dwFlags;
637 LPPROPSHEETHEADERA lpPS;
638 DWORD dwObject;
639 LPOLEUIOBJINFOA lpObjInfo;
640 DWORD dwLink;
641 LPOLEUILINKINFOA lpLinkInfo;
642 LPOLEUIGNRLPROPSA lpGP;
643 LPOLEUIVIEWPROPSA lpVP;
644 LPOLEUILINKPROPSA lpLP;
645 } OLEUIOBJECTPROPSA, *POLEUIOBJECTPROPSA, *LPOLEUIOBJECTPROPSA;
647 typedef struct tagOLEUIOBJECTPROPSW
649 DWORD cbStruct;
650 DWORD dwFlags;
651 LPPROPSHEETHEADERW lpPS;
652 DWORD dwObject;
653 LPOLEUIOBJINFOW lpObjInfo;
654 DWORD dwLink;
655 LPOLEUILINKINFOW lpLinkInfo;
656 LPOLEUIGNRLPROPSW lpGP;
657 LPOLEUIVIEWPROPSW lpVP;
658 LPOLEUILINKPROPSW lpLP;
659 } OLEUIOBJECTPROPSW, *POLEUIOBJECTPROPSW, *LPOLEUIOBJECTPROPSW;
661 DECL_WINELIB_TYPE_AW(OLEUIOBJECTPROPS)
662 DECL_WINELIB_TYPE_AW(POLEUIOBJECTPROPS)
663 DECL_WINELIB_TYPE_AW(LPOLEUIOBJECTPROPS)
665 #define OPF_OBJECTISLINK 0x00000001L
666 #define OPF_NOFILLDEFAULT 0x00000002L
667 #define OPF_SHOWHELP 0x00000004L
668 #define OPF_DISABLECONVERT 0x00000008L
671 /************************************************************************************
672 * CHANGE SOURCE DIALOG
676 typedef struct tagOLEUICHANGESOURCEW
678 DWORD cbStruct;
679 DWORD dwFlags;
680 HWND hWndOwner;
681 LPCWSTR lpszCaption;
682 LPFNOLEUIHOOK lpfnHook;
683 LPARAM lCustData;
684 HINSTANCE hInstance;
685 LPCWSTR lpszTemplate;
686 HRSRC hResource;
687 OPENFILENAMEW*lpOFN;
688 DWORD dwReserved1[4];
689 LPOLEUILINKCONTAINERW lpOleUILinkContainer;
690 DWORD dwLink;
691 LPWSTR lpszDisplayName;
692 ULONG nFileLength;
693 LPWSTR lpszFrom;
694 LPWSTR lpszTo;
695 } OLEUICHANGESOURCEW, *POLEUICHANGESOURCEW, *LPOLEUICHANGESOURCEW;
698 typedef struct tagOLEUICHANGESOURCEA
700 DWORD cbStruct;
701 DWORD dwFlags;
702 HWND hWndOwner;
703 LPCSTR lpszCaption;
704 LPFNOLEUIHOOK lpfnHook;
705 LPARAM lCustData;
706 HINSTANCE hInstance;
707 LPCSTR lpszTemplate;
708 HRSRC hResource;
709 OPENFILENAMEA* lpOFN;
710 DWORD dwReserved1[4];
711 LPOLEUILINKCONTAINERA lpOleUILinkContainer;
712 DWORD dwLink;
713 LPSTR lpszDisplayName;
714 ULONG nFileLength;
715 LPSTR lpszFrom;
716 LPSTR lpszTo;
717 } OLEUICHANGESOURCEA, *POLEUICHANGESOURCEA, *LPOLEUICHANGESOURCEA;
720 DECL_WINELIB_TYPE_AW(OLEUICHANGESOURCE)
721 DECL_WINELIB_TYPE_AW(POLEUICHANGESOURCE)
722 DECL_WINELIB_TYPE_AW(LPOLEUICHANGESOURCE)
724 /* Change Source Dialog flags */
725 #define CSF_SHOWHELP 0x00000001L
726 #define CSF_VALIDSOURCE 0x00000002L
727 #define CSF_ONLYGETSOURCE 0x00000004L
728 #define CSF_EXPLORER 0x00000008L
731 /*****************************************************************************
732 * IOleUILinkContainer interface
734 #define INTERFACE IOleUILinkContainerA
735 DECLARE_INTERFACE_(IOleUILinkContainerA,IUnknown)
737 /*** IUnknown methods ***/
738 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE;
739 STDMETHOD_(ULONG,AddRef)(THIS) PURE;
740 STDMETHOD_(ULONG,Release)(THIS) PURE;
741 /*** IOleUILinkContainerA methods ***/
742 STDMETHOD_(DWORD,GetNextLink)(THIS_ DWORD dwLink) PURE;
743 STDMETHOD(SetLinkUpdateOptions)(THIS_ DWORD dwLink, DWORD dwUpdateOpt) PURE;
744 STDMETHOD(GetLinkUpdateOptions)(THIS_ DWORD dwLink, DWORD *lpdwUpdateOpt) PURE;
745 STDMETHOD(SetLinkSource)(THIS_ DWORD dwLink, LPSTR lpszDisplayName,
746 ULONG lenFileName, ULONG *pchEaten, BOOL fValidateSource) PURE;
747 STDMETHOD(GetLinkSource)(THIS_ DWORD dwLink, LPSTR *lplpszDisplayName, ULONG *lplenFileName,
748 LPSTR *lplpszFullLinkType, LPSTR *lplpszShortLinkType,
749 BOOL *lpfSourceAvailable, BOOL *lpfIsSelected) PURE;
750 STDMETHOD(OpenLinkSource)(THIS_ DWORD dwLink) PURE;
751 STDMETHOD(UpdateLink)(THIS_ DWORD dwLink, BOOL fErrorMessage, BOOL fReserved) PURE;
752 STDMETHOD(CancelLink)(THIS_ DWORD dwLink) PURE;
754 #undef INTERFACE
756 #define INTERFACE IOleUILinkContainerW
757 DECLARE_INTERFACE_(IOleUILinkContainerW,IUnknown)
759 /*** IUnknown methods ***/
760 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE;
761 STDMETHOD_(ULONG,AddRef)(THIS) PURE;
762 STDMETHOD_(ULONG,Release)(THIS) PURE;
763 /*** IOleUILinkContainerW methods ***/
764 STDMETHOD_(DWORD,GetNextLink)(THIS_ DWORD dwLink) PURE;
765 STDMETHOD(SetLinkUpdateOptions)(THIS_ DWORD dwLink, DWORD dwUpdateOpt) PURE;
766 STDMETHOD(GetLinkUpdateOptions)(THIS_ DWORD dwLink, DWORD *lpdwUpdateOpt) PURE;
767 STDMETHOD(SetLinkSource)(THIS_ DWORD dwLink, LPWSTR lpszDisplayName,
768 ULONG lenFileName, ULONG *pchEaten, BOOL fValidateSource) PURE;
769 STDMETHOD(GetLinkSource)(THIS_ DWORD dwLink, LPWSTR *lplpszDisplayName, ULONG *lplenFileName,
770 LPWSTR *lplpszFullLinkType, LPWSTR *lplpszShortLinkType,
771 BOOL *lpfSourceAvailable, BOOL *lpfIsSelected) PURE;
772 STDMETHOD(OpenLinkSource)(THIS_ DWORD dwLink) PURE;
773 STDMETHOD(UpdateLink)(THIS_ DWORD dwLink, BOOL fErrorMessage, BOOL fReserved) PURE;
774 STDMETHOD(CancelLink)(THIS_ DWORD dwLink) PURE;
776 #undef INTERFACE
778 DECL_WINELIB_TYPE_AW(IOleUILinkContainer)
779 DECL_WINELIB_TYPE_AW(POLEUILINKCONTAINER)
780 DECL_WINELIB_TYPE_AW(LPOLEUILINKCONTAINER)
782 #if !defined(__cplusplus) || defined(CINTERFACE)
783 /*** IUnknown methods ***/
784 #define IOleUILinkContainer_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
785 #define IOleUILinkContainer_AddRef(p) (p)->lpVtbl->AddRef(p)
786 #define IOleUILinkContainer_Release(p) (p)->lpVtbl->Release(p)
787 /*** IOleUILinkContainer methods ***/
788 #define IOleUILinkContainer_GetNextLink(p,a) (p)->lpVtbl->GetNextLink(p,a)
789 #define IOleUILinkContainer_SetLinkUpdateOptions(p,a,b) (p)->lpVtbl->SetLinkUpdateOptions(p,a,b)
790 #define IOleUILinkContainer_GetLinkUpdateOptions(p,a,b) (p)->lpVtbl->GetLinkUpdateOptions(p,a,b)
791 #define IOleUILinkContainer_SetLinkSource(p,a,b,c,d,e) (p)->lpVtbl->SetLinkSource(p,a,b,c,d,e)
792 #define IOleUILinkContainer_GetLinkSource(p,a,b,c,d,e,f,g) (p)->lpVtbl->GetLinkSource(p,a,b,c,d,e,f,g)
793 #define IOleUILinkContainer_OpenLinkSource(p,a) (p)->lpVtbl->OpenLinkSource(p,a)
794 #define IOleUILinkContainer_UpdateLink(p,a,b,c) (p)->lpVtbl->UpdateLink(p,a,b,c)
795 #define IOleUILinkContainer_CancelLink(p,a) (p)->lpVtbl->CancelLink(p,a)
796 #endif
799 /*****************************************************************************
800 * IOleUILinkInfo interface
802 #define INTERFACE IOleUILinkInfoA
803 DECLARE_INTERFACE_(IOleUILinkInfoA,IOleUILinkContainerA)
805 /*** IUnknown methods ***/
806 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE;
807 STDMETHOD_(ULONG,AddRef)(THIS) PURE;
808 STDMETHOD_(ULONG,Release)(THIS) PURE;
809 /*** IOleUILinkContainerA methods ***/
810 STDMETHOD_(DWORD,GetNextLink)(THIS_ DWORD dwLink) PURE;
811 STDMETHOD(SetLinkUpdateOptions)(THIS_ DWORD dwLink, DWORD dwUpdateOpt) PURE;
812 STDMETHOD(GetLinkUpdateOptions)(THIS_ DWORD dwLink, DWORD *lpdwUpdateOpt) PURE;
813 STDMETHOD(SetLinkSource)(THIS_ DWORD dwLink, LPSTR lpszDisplayName,
814 ULONG lenFileName, ULONG *pchEaten, BOOL fValidateSource) PURE;
815 STDMETHOD(GetLinkSource)(THIS_ DWORD dwLink, LPSTR *lplpszDisplayName, ULONG *lplenFileName,
816 LPSTR *lplpszFullLinkType, LPSTR *lplpszShortLinkType,
817 BOOL *lpfSourceAvailable, BOOL *lpfIsSelected) PURE;
818 STDMETHOD(OpenLinkSource)(THIS_ DWORD dwLink) PURE;
819 STDMETHOD(UpdateLink)(THIS_ DWORD dwLink, BOOL fErrorMessage, BOOL fReserved) PURE;
820 STDMETHOD(CancelLink)(THIS_ DWORD dwLink) PURE;
821 /*** IOleUILinkInfoA methods ***/
822 STDMETHOD(GetLastUpdate)(THIS_ DWORD dwLink, FILETIME *lpLastUpdate) PURE;
824 #undef INTERFACE
826 #define INTERFACE IOleUILinkInfoW
827 DECLARE_INTERFACE_(IOleUILinkInfoW,IOleUILinkContainerW)
829 /*** IUnknown methods ***/
830 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE;
831 STDMETHOD_(ULONG,AddRef)(THIS) PURE;
832 STDMETHOD_(ULONG,Release)(THIS) PURE;
833 /*** IOleUILinkContainerW methods ***/
834 STDMETHOD_(DWORD,GetNextLink)(THIS_ DWORD dwLink) PURE;
835 STDMETHOD(SetLinkUpdateOptions)(THIS_ DWORD dwLink, DWORD dwUpdateOpt) PURE;
836 STDMETHOD(GetLinkUpdateOptions)(THIS_ DWORD dwLink, DWORD *lpdwUpdateOpt) PURE;
837 STDMETHOD(SetLinkSource)(THIS_ DWORD dwLink, LPWSTR lpszDisplayName,
838 ULONG lenFileName, ULONG *pchEaten, BOOL fValidateSource) PURE;
839 STDMETHOD(GetLinkSource)(THIS_ DWORD dwLink, LPWSTR *lplpszDisplayName, ULONG *lplenFileName,
840 LPWSTR *lplpszFullLinkType, LPWSTR *lplpszShortLinkType,
841 BOOL *lpfSourceAvailable, BOOL *lpfIsSelected) PURE;
842 STDMETHOD(OpenLinkSource)(THIS_ DWORD dwLink) PURE;
843 STDMETHOD(UpdateLink)(THIS_ DWORD dwLink, BOOL fErrorMessage, BOOL fReserved) PURE;
844 STDMETHOD(CancelLink)(THIS_ DWORD dwLink) PURE;
845 /*** IOleUILinkInfoW methods ***/
846 STDMETHOD(GetLastUpdate)(THIS_ DWORD dwLink, FILETIME *lpLastUpdate) PURE;
848 #undef INTERFACE
850 DECL_WINELIB_TYPE_AW(IOleUILinkInfo)
851 DECL_WINELIB_TYPE_AW(POLEUILINKINFO)
852 DECL_WINELIB_TYPE_AW(LPOLEUILINKINFO)
854 #if !defined(__cplusplus) || defined(CINTERFACE)
855 /*** IUnknown methods ***/
856 #define IOleUILinkInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
857 #define IOleUILinkInfo_AddRef(p) (p)->lpVtbl->AddRef(p)
858 #define IOleUILinkInfo_Release(p) (p)->lpVtbl->Release(p)
859 /*** IOleUILinkContainer methods ***/
860 #define IOleUILinkInfo_GetNextLink(p,a) (p)->lpVtbl->GetNextLink(p,a)
861 #define IOleUILinkInfo_SetLinkUpdateOptions(p,a,b) (p)->lpVtbl->SetLinkUpdateOptions(p,a,b)
862 #define IOleUILinkInfo_GetLinkUpdateOptions(p,a,b) (p)->lpVtbl->GetLinkUpdateOptions(p,a,b)
863 #define IOleUILinkInfo_SetLinkSource(p,a,b,c,d,e) (p)->lpVtbl->SetLinkSource(p,a,b,c,d,e)
864 #define IOleUILinkInfo_GetLinkSource(p,a,b,c,d,e,f,g) (p)->lpVtbl->GetLinkSource(p,a,b,c,d,e,f,g)
865 #define IOleUILinkInfo_OpenLinkSource(p,a) (p)->lpVtbl->OpenLinkSource(p,a)
866 #define IOleUILinkInfo_UpdateLink(p,a,b,c) (p)->lpVtbl->UpdateLink(p,a,b,c)
867 #define IOleUILinkInfo_CancelLink(p,a) (p)->lpVtbl->CancelLink(p,a)
868 /*** IOleUILinkInfo methods ***/
869 #define IOleUILinkInfo_GetLastUpdate(p,a,b) (p)->lpVtbl->GetLastUpdate(p,a,b)
870 #endif
873 /*****************************************************************************
874 * IOleUIObjInfo interface
876 #define INTERFACE IOleUIObjInfoA
877 DECLARE_INTERFACE_(IOleUIObjInfoA,IUnknown)
879 /*** IUnknown methods ***/
880 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE;
881 STDMETHOD_(ULONG,AddRef)(THIS) PURE;
882 STDMETHOD_(ULONG,Release)(THIS) PURE;
883 /*** IOleUIObjInfoA methods ***/
884 STDMETHOD(GetObjectInfo)(THIS_ DWORD dwObject, DWORD *lpdwObjSize, LPSTR *lplpszLabel,
885 LPSTR *lplpszType, LPSTR *lplpszShortType, LPSTR *lplpszLocation) PURE;
886 STDMETHOD(GetConvertInfo)(THIS_ DWORD dwObject, CLSID *lpClassID, WORD *lpwFormat,
887 CLSID *lpConvertDefaultClassID, LPCLSID *lplpClsidExclude, UINT *lpcClsidExclude) PURE;
888 STDMETHOD(ConvertObject)(THIS_ DWORD dwObject, REFCLSID clsidNew) PURE;
889 STDMETHOD(GetViewInfo)(THIS_ DWORD dwObject, HGLOBAL *phMetaPict, DWORD *pdvAspect, INT *pnCurrentScale) PURE;
890 STDMETHOD(SetViewInfo)(THIS_ DWORD dwObject, HGLOBAL hMetaPict, DWORD dvAspect,
891 INT nCurrentScale, BOOL bRelativeToOrig) PURE;
893 #undef INTERFACE
895 #define INTERFACE IOleUIObjInfoW
896 DECLARE_INTERFACE_(IOleUIObjInfoW,IUnknown)
898 /*** IUnknown methods ***/
899 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE;
900 STDMETHOD_(ULONG,AddRef)(THIS) PURE;
901 STDMETHOD_(ULONG,Release)(THIS) PURE;
902 /*** IOleUIObjInfoW methods ***/
903 STDMETHOD(GetObjectInfo)(THIS_ DWORD dwObject, DWORD *lpdwObjSize, LPWSTR *lplpszLabel,
904 LPWSTR *lplpszType, LPWSTR *lplpszShortType, LPWSTR *lplpszLocation) PURE;
905 STDMETHOD(GetConvertInfo)(THIS_ DWORD dwObject, CLSID *lpClassID, WORD *lpwFormat,
906 CLSID *lpConvertDefaultClassID, LPCLSID *lplpClsidExclude, UINT *lpcClsidExclude) PURE;
907 STDMETHOD(ConvertObject)(THIS_ DWORD dwObject, REFCLSID clsidNew) PURE;
908 STDMETHOD(GetViewInfo)(THIS_ DWORD dwObject, HGLOBAL *phMetaPict, DWORD *pdvAspect, INT *pnCurrentScale) PURE;
909 STDMETHOD(SetViewInfo)(THIS_ DWORD dwObject, HGLOBAL hMetaPict, DWORD dvAspect,
910 INT nCurrentScale, BOOL bRelativeToOrig) PURE;
912 #undef INTERFACE
914 DECL_WINELIB_TYPE_AW(IOleUIObjInfo)
915 DECL_WINELIB_TYPE_AW(POLEUIOBJINFO)
916 DECL_WINELIB_TYPE_AW(LPOLEUIOBJINFO)
918 #if !defined(__cplusplus) || defined(CINTERFACE)
919 /*** IUnknown methods ***/
920 #define IOleUIObjInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
921 #define IOleUIObjInfo_AddRef(p) (p)->lpVtbl->AddRef(p)
922 #define IOleUIObjInfo_Release(p) (p)->lpVtbl->Release(p)
923 /*** IOleUIObjInfo methods ***/
924 #define IOleUIObjInfo_GetObjectInfo(p,a,b,c,d,e,f) (p)->lpVtbl->GetObjectInfo(p,a,b,c,d,e,f)
925 #define IOleUIObjInfo_GetConvertInfo(p,a,b,c,d,e,f) (p)->lpVtbl->GetConvertInfo(p,a,b,c,d,e,f)
926 #define IOleUIObjInfo_ConvertObject(p,a,b) (p)->lpVtbl->ConvertObject(p,a,b)
927 #define IOleUIObjInfo_GetViewInfo(p,a,b,c,d) (p)->lpVtbl->GetViewInfo(p,a,b,c,d)
928 #define IOleUIObjInfo_SetViewInfo(p,a,b,c,d,e) (p)->lpVtbl->SetViewInfo(p,a,b,c,d,e)
929 #endif
931 UINT WINAPI OleUIInsertObjectW(LPOLEUIINSERTOBJECTW);
932 UINT WINAPI OleUIInsertObjectA(LPOLEUIINSERTOBJECTA);
933 #define OleUIInsertObject WINELIB_NAME_AW(OleUIInsertObject)
934 UINT WINAPI OleUIConvertA(LPOLEUICONVERTA);
935 UINT WINAPI OleUIConvertW(LPOLEUICONVERTW);
936 #define OleUIConvert WINELIB_NAME_AW(OleUIConvert)
937 UINT WINAPI OleUIChangeIconA(LPOLEUICHANGEICONA);
938 UINT WINAPI OleUIChangeIconW(LPOLEUICHANGEICONW);
939 #define OleUIChangeIcon WINELIB_NAME_AW(OleUIChangeIcon)
940 UINT WINAPI OleUIBusyA(LPOLEUIBUSYA);
941 UINT WINAPI OleUIBusyW(LPOLEUIBUSYW);
942 #define OleUIBusy WINELIB_NAME_AW(OleUIBusy)
943 UINT WINAPI OleUIObjectPropertiesA(LPOLEUIOBJECTPROPSA);
944 UINT WINAPI OleUIObjectPropertiesW(LPOLEUIOBJECTPROPSW);
945 #define OleUIObjectProperties WINELIB_NAME_AW(OleUIObjectProperties)
946 UINT WINAPI OleUIChangeSourceW(LPOLEUICHANGESOURCEW);
947 UINT WINAPI OleUIChangeSourceA(LPOLEUICHANGESOURCEA);
948 #define OleUIChangeSource WINELIB_NAME_AW(OleUIChangeSource)
949 UINT WINAPI OleUIEditLinksA(LPOLEUIEDITLINKSA lpOleUIEditLinks);
950 UINT WINAPI OleUIEditLinksW(LPOLEUIEDITLINKSW lpOleUIEditLinks);
951 #define OleUIEditLinks WINELIB_NAME_AW(OleUIEditLinks)
952 BOOL WINAPI OleUIUpdateLinksA(LPOLEUILINKCONTAINERA lpOleUILinkCntr, HWND hwndParent, LPSTR lpszTitle, INT cLinks);
953 BOOL WINAPI OleUIUpdateLinksW(LPOLEUILINKCONTAINERW lpOleUILinkCntr, HWND hwndParent, LPWSTR lpszTitle, INT cLinks);
954 #define OleUIUpdateLinks WINELIB_NAME_AW(OleUIUpdateLinks)
955 BOOL WINAPI OleUIAddVerbMenuA(LPOLEOBJECT lpOleObj, LPCSTR lpszShortType, HMENU hMenu, UINT uPos, UINT uIDVerbMin, UINT uIDVerbMax,
956 BOOL bAddConvert, UINT idConvert, HMENU *lphMenu);
957 BOOL WINAPI OleUIAddVerbMenuW(LPOLEOBJECT lpOleObj, LPCWSTR lpszShortType, HMENU hMenu, UINT uPos, UINT uIDVerbMin, UINT uIDVerbMax,
958 BOOL bAddConvert, UINT idConvert, HMENU *lphMenu);
959 #define OleUIAddVerbMenu WINELIB_NAME_AW(OleUIAddVerbMenu)
960 UINT WINAPI OleUIPasteSpecialA(LPOLEUIPASTESPECIALA lpOleUIPasteSpecial);
961 UINT WINAPI OleUIPasteSpecialW(LPOLEUIPASTESPECIALW lpOleUIPasteSpecial);
962 #define OleUIPasteSpecial WINELIB_NAME_AW(OleUIPasteSpecial)
963 INT __cdecl OleUIPromptUserA(INT,HWND, ...);
964 INT __cdecl OleUIPromptUserW(INT,HWND, ...);
965 #define OleUIPromptUser WINELIB_NAME_AW(OleUIPromptUser)
967 #ifdef __cplusplus
968 } /* Extern "C" */
969 #endif
972 #endif /* __WINE_OLEDLG_H */