VirtualBox

source: vbox/trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/oledlg.h@ 41283

Last change on this file since 41283 was 33656, checked in by vboxsync, 14 years ago

*: rebrand Sun (L)GPL disclaimers

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

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette