Artifact Content

Not logged in

Artifact 6d620068807bb293d4c25ecab0f4de6b0d5746dd


     1  module win32.commdlg;
     2  
     3  // Translated from Microsoft Platform SDK August 2001 Edition
     4  // by Y.Tomino
     5  
     6  import win32.windef;
     7  import win32.winuser;
     8  // inline #include <cderr.h>
     9  // ----
    10  
    11  // #ifndef _INC_CDERR
    12  // #define _INC_CDERR
    13  
    14  // #if _MSC_VER > 1000
    15  // #pragma once
    16  // #endif
    17  
    18  enum : uint { CDERR_DIALOGFAILURE = 0xFFFF }
    19  
    20  enum : uint { CDERR_GENERALCODES = 0x0000 }
    21  enum : uint { CDERR_STRUCTSIZE = 0x0001 }
    22  enum : uint { CDERR_INITIALIZATION = 0x0002 }
    23  enum : uint { CDERR_NOTEMPLATE = 0x0003 }
    24  enum : uint { CDERR_NOHINSTANCE = 0x0004 }
    25  enum : uint { CDERR_LOADSTRFAILURE = 0x0005 }
    26  enum : uint { CDERR_FINDRESFAILURE = 0x0006 }
    27  enum : uint { CDERR_LOADRESFAILURE = 0x0007 }
    28  enum : uint { CDERR_LOCKRESFAILURE = 0x0008 }
    29  enum : uint { CDERR_MEMALLOCFAILURE = 0x0009 }
    30  enum : uint { CDERR_MEMLOCKFAILURE = 0x000A }
    31  enum : uint { CDERR_NOHOOK = 0x000B }
    32  enum : uint { CDERR_REGISTERMSGFAIL = 0x000C }
    33  
    34  enum : uint { PDERR_PRINTERCODES = 0x1000 }
    35  enum : uint { PDERR_SETUPFAILURE = 0x1001 }
    36  enum : uint { PDERR_PARSEFAILURE = 0x1002 }
    37  enum : uint { PDERR_RETDEFFAILURE = 0x1003 }
    38  enum : uint { PDERR_LOADDRVFAILURE = 0x1004 }
    39  enum : uint { PDERR_GETDEVMODEFAIL = 0x1005 }
    40  enum : uint { PDERR_INITFAILURE = 0x1006 }
    41  enum : uint { PDERR_NODEVICES = 0x1007 }
    42  enum : uint { PDERR_NODEFAULTPRN = 0x1008 }
    43  enum : uint { PDERR_DNDMMISMATCH = 0x1009 }
    44  enum : uint { PDERR_CREATEICFAILURE = 0x100A }
    45  enum : uint { PDERR_PRINTERNOTFOUND = 0x100B }
    46  enum : uint { PDERR_DEFAULTDIFFERENT = 0x100C }
    47  
    48  enum : uint { CFERR_CHOOSEFONTCODES = 0x2000 }
    49  enum : uint { CFERR_NOFONTS = 0x2001 }
    50  enum : uint { CFERR_MAXLESSTHANMIN = 0x2002 }
    51  
    52  enum : uint { FNERR_FILENAMECODES = 0x3000 }
    53  enum : uint { FNERR_SUBCLASSFAILURE = 0x3001 }
    54  enum : uint { FNERR_INVALIDFILENAME = 0x3002 }
    55  enum : uint { FNERR_BUFFERTOOSMALL = 0x3003 }
    56  
    57  enum : uint { FRERR_FINDREPLACECODES = 0x4000 }
    58  enum : uint { FRERR_BUFFERLENGTHZERO = 0x4001 }
    59  
    60  enum : uint { CCERR_CHOOSECOLORCODES = 0x5000 }
    61  
    62  // #endif  /* !_INC_CDERR */
    63  // ----
    64  
    65  // #ifndef _INC_COMMDLG
    66  // #define _INC_COMMDLG
    67  
    68  // #if(WINVER >= 0x0500)
    69  
    70  // #ifdef DEFINE_GUID
    71  
    72  // ...
    73  
    74  // ...
    75  
    76  // #endif
    77  
    78  // #endif /* WINVER >= 0x0500 */
    79  
    80  // #ifndef GUID_DEFS_ONLY
    81  
    82  // #include <prsht.h>
    83  
    84  // #if !defined(_WIN64)
    85  align(1):
    86  // #endif
    87  
    88  // #ifdef __cplusplus
    89  // extern "C" {            /* Assume C declarations for C++ */
    90  // #endif  /* __cplusplus */
    91  
    92  // #ifndef WINCOMMDLGAPI
    93  // #if !defined(_COMDLG32_)
    94  // #define WINCOMMDLGAPI DECLSPEC_IMPORT
    95  // #else
    96  // #...
    97  // #endif
    98  // #endif // WINCOMMDLGAPI
    99  
   100  // #if(WINVER >= 0x0400)
   101  // #ifndef SNDMSG
   102  // #ifdef __cplusplus
   103  // #ifndef _MAC
   104  // #define SNDMSG ::SendMessage
   105  // #else
   106  // #...
   107  // #endif
   108  // #else   /* __cplusplus */
   109  // #ifndef _MAC
   110  // #...
   111  // #else
   112  // #...
   113  // #endif
   114  // #endif  /* __cplusplus */
   115  // #endif  // ifndef SNDMSG
   116  // #endif /* WINVER >= 0x0400 */
   117  
   118  // #ifdef _MAC
   119  // ...
   120  // #endif
   121  
   122  extern(Windows) alias UINT_PTR function(HWND, UINT, WPARAM, LPARAM) LPOFNHOOKPROC;
   123  
   124  // #ifndef CDSIZEOF_STRUCT
   125  // #define CDSIZEOF_STRUCT(structname, member) (((int)((LPBYTE)(&((structname*)0)->member) - ((LPBYTE)((structname*)0)))) + sizeof(((structname*)0)->member))
   126  // #endif
   127  
   128  // #ifndef DUMMYUNIONNAME
   129  // #ifdef NONAMELESSUNION
   130  // #...
   131  // #endif // NONAMELESSUNION
   132  // #endif // DUMMYUNIONNAME
   133  
   134  struct tagOFN_NT4A {
   135    DWORD lStructSize;
   136    HWND hwndOwner;
   137    HINSTANCE hInstance;
   138    LPCSTR lpstrFilter;
   139    LPSTR lpstrCustomFilter;
   140    DWORD nMaxCustFilter;
   141    DWORD nFilterIndex;
   142    LPSTR lpstrFile;
   143    DWORD nMaxFile;
   144    LPSTR lpstrFileTitle;
   145    DWORD nMaxFileTitle;
   146    LPCSTR lpstrInitialDir;
   147    LPCSTR lpstrTitle;
   148    DWORD Flags;
   149    WORD nFileOffset;
   150    WORD nFileExtension;
   151    LPCSTR lpstrDefExt;
   152    LPARAM lCustData;
   153    LPOFNHOOKPROC lpfnHook;
   154    LPCSTR lpTemplateName;
   155  }
   156  alias tagOFN_NT4A OPENFILENAME_NT4A;
   157  alias tagOFN_NT4A* LPOPENFILENAME_NT4A;
   158  
   159  struct tagOFN_NT4W {
   160    DWORD lStructSize;
   161    HWND hwndOwner;
   162    HINSTANCE hInstance;
   163    LPCWSTR lpstrFilter;
   164    LPWSTR lpstrCustomFilter;
   165    DWORD nMaxCustFilter;
   166    DWORD nFilterIndex;
   167    LPWSTR lpstrFile;
   168    DWORD nMaxFile;
   169    LPWSTR lpstrFileTitle;
   170    DWORD nMaxFileTitle;
   171    LPCWSTR lpstrInitialDir;
   172    LPCWSTR lpstrTitle;
   173    DWORD Flags;
   174    WORD nFileOffset;
   175    WORD nFileExtension;
   176    LPCWSTR lpstrDefExt;
   177    LPARAM lCustData;
   178    LPOFNHOOKPROC lpfnHook;
   179    LPCWSTR lpTemplateName;
   180  }
   181  alias tagOFN_NT4W OPENFILENAME_NT4W;
   182  alias tagOFN_NT4W* LPOPENFILENAME_NT4W;
   183  
   184  // #ifdef UNICODE
   185  alias OPENFILENAME_NT4W OPENFILENAME_NT4;
   186  alias LPOPENFILENAME_NT4W LPOPENFILENAME_NT4;
   187  // #else
   188  // ...
   189  // #endif // UNICODE
   190  
   191  struct tagOFNA {
   192    DWORD lStructSize;
   193    HWND hwndOwner;
   194    HINSTANCE hInstance;
   195    LPCSTR lpstrFilter;
   196    LPSTR lpstrCustomFilter;
   197    DWORD nMaxCustFilter;
   198    DWORD nFilterIndex;
   199    LPSTR lpstrFile;
   200    DWORD nMaxFile;
   201    LPSTR lpstrFileTitle;
   202    DWORD nMaxFileTitle;
   203    LPCSTR lpstrInitialDir;
   204    LPCSTR lpstrTitle;
   205    DWORD Flags;
   206    WORD nFileOffset;
   207    WORD nFileExtension;
   208    LPCSTR lpstrDefExt;
   209    LPARAM lCustData;
   210    LPOFNHOOKPROC lpfnHook;
   211    LPCSTR lpTemplateName;
   212  // #ifdef _MAC
   213  // ...
   214  // #endif
   215  // #if (_WIN32_WINNT >= 0x0500)
   216    void *		pvReserved;
   217    DWORD dwReserved;
   218    DWORD FlagsEx;
   219  // #endif // (_WIN32_WINNT >= 0x0500)
   220  }
   221  alias tagOFNA OPENFILENAMEA;
   222  alias tagOFNA* LPOPENFILENAMEA;
   223  
   224  struct tagOFNW {
   225    DWORD lStructSize;
   226    HWND hwndOwner;
   227    HINSTANCE hInstance;
   228    LPCWSTR lpstrFilter;
   229    LPWSTR lpstrCustomFilter;
   230    DWORD nMaxCustFilter;
   231    DWORD nFilterIndex;
   232    LPWSTR lpstrFile;
   233    DWORD nMaxFile;
   234    LPWSTR lpstrFileTitle;
   235    DWORD nMaxFileTitle;
   236    LPCWSTR lpstrInitialDir;
   237    LPCWSTR lpstrTitle;
   238    DWORD Flags;
   239    WORD nFileOffset;
   240    WORD nFileExtension;
   241    LPCWSTR lpstrDefExt;
   242    LPARAM lCustData;
   243    LPOFNHOOKPROC lpfnHook;
   244    LPCWSTR lpTemplateName;
   245  // #ifdef _MAC
   246  // ...
   247  // #endif
   248  // #if (_WIN32_WINNT >= 0x0500)
   249    void *		pvReserved;
   250    DWORD dwReserved;
   251    DWORD FlagsEx;
   252  // #endif // (_WIN32_WINNT >= 0x0500)
   253  }
   254  alias tagOFNW OPENFILENAMEW;
   255  alias tagOFNW* LPOPENFILENAMEW;
   256  
   257  // #ifdef UNICODE
   258  alias OPENFILENAMEW OPENFILENAME;
   259  alias LPOPENFILENAMEW LPOPENFILENAME;
   260  // #else
   261  // ...
   262  // #endif // UNICODE
   263  
   264  // #if (_WIN32_WINNT >= 0x0500)
   265  // #define OPENFILENAME_SIZE_VERSION_400A CDSIZEOF_STRUCT(OPENFILENAMEA,lpTemplateName)
   266  // #define OPENFILENAME_SIZE_VERSION_400W CDSIZEOF_STRUCT(OPENFILENAMEW,lpTemplateName)
   267  // #ifdef UNICODE
   268  // #define OPENFILENAME_SIZE_VERSION_400 OPENFILENAME_SIZE_VERSION_400W
   269  // #else
   270  // #...
   271  // #endif // !UNICODE
   272  // #endif // (_WIN32_WINNT >= 0x0500)
   273  
   274  extern(Windows) export BOOL GetOpenFileNameA(LPOPENFILENAMEA);
   275  extern(Windows) export BOOL GetOpenFileNameW(LPOPENFILENAMEW);
   276  // #ifdef UNICODE
   277  alias GetOpenFileNameW GetOpenFileName;
   278  // #else
   279  // #...
   280  // #endif // !UNICODE
   281  extern(Windows) export BOOL GetSaveFileNameA(LPOPENFILENAMEA);
   282  extern(Windows) export BOOL GetSaveFileNameW(LPOPENFILENAMEW);
   283  // #ifdef UNICODE
   284  alias GetSaveFileNameW GetSaveFileName;
   285  // #else
   286  // #...
   287  // #endif // !UNICODE
   288  
   289  extern(Windows) export short GetFileTitleA(LPCSTR, LPSTR, WORD);
   290  extern(Windows) export short GetFileTitleW(LPCWSTR, LPWSTR, WORD);
   291  // #ifdef UNICODE
   292  alias GetFileTitleW GetFileTitle;
   293  // #else
   294  // #...
   295  // #endif // !UNICODE
   296  
   297  enum : uint { OFN_READONLY = 0x00000001 }
   298  enum : uint { OFN_OVERWRITEPROMPT = 0x00000002 }
   299  enum : uint { OFN_HIDEREADONLY = 0x00000004 }
   300  enum : uint { OFN_NOCHANGEDIR = 0x00000008 }
   301  enum : uint { OFN_SHOWHELP = 0x00000010 }
   302  enum : uint { OFN_ENABLEHOOK = 0x00000020 }
   303  enum : uint { OFN_ENABLETEMPLATE = 0x00000040 }
   304  enum : uint { OFN_ENABLETEMPLATEHANDLE = 0x00000080 }
   305  enum : uint { OFN_NOVALIDATE = 0x00000100 }
   306  enum : uint { OFN_ALLOWMULTISELECT = 0x00000200 }
   307  enum : uint { OFN_EXTENSIONDIFFERENT = 0x00000400 }
   308  enum : uint { OFN_PATHMUSTEXIST = 0x00000800 }
   309  enum : uint { OFN_FILEMUSTEXIST = 0x00001000 }
   310  enum : uint { OFN_CREATEPROMPT = 0x00002000 }
   311  enum : uint { OFN_SHAREAWARE = 0x00004000 }
   312  enum : uint { OFN_NOREADONLYRETURN = 0x00008000 }
   313  enum : uint { OFN_NOTESTFILECREATE = 0x00010000 }
   314  enum : uint { OFN_NONETWORKBUTTON = 0x00020000 }
   315  enum : uint { OFN_NOLONGNAMES = 0x00040000 }
   316  // #if(WINVER >= 0x0400)
   317  enum : uint { OFN_EXPLORER = 0x00080000 }
   318  enum : uint { OFN_NODEREFERENCELINKS = 0x00100000 }
   319  enum : uint { OFN_LONGNAMES = 0x00200000 }
   320  enum : uint { OFN_ENABLEINCLUDENOTIFY = 0x00400000 }
   321  enum : uint { OFN_ENABLESIZING = 0x00800000 }
   322  // #endif /* WINVER >= 0x0400 */
   323  // #if (_WIN32_WINNT >= 0x0500)
   324  enum : uint { OFN_DONTADDTORECENT = 0x02000000 }
   325  enum : uint { OFN_FORCESHOWHIDDEN = 0x10000000 }
   326  // #endif // (_WIN32_WINNT >= 0x0500)
   327  
   328  // #if (_WIN32_WINNT >= 0x0500)
   329  enum : uint { OFN_EX_NOPLACESBAR = 0x00000001 }
   330  // #endif // (_WIN32_WINNT >= 0x0500)
   331  
   332  enum : uint { OFN_SHAREFALLTHROUGH = 2 }
   333  enum : uint { OFN_SHARENOWARN = 1 }
   334  enum : uint { OFN_SHAREWARN = 0 }
   335  
   336  extern(Windows) alias UINT_PTR function(HWND, UINT, WPARAM, LPARAM) LPCCHOOKPROC;
   337  
   338  // #if(WINVER >= 0x0400)
   339  
   340  struct _OFNOTIFYA {
   341    NMHDR hdr;
   342    LPOPENFILENAMEA lpOFN;
   343    LPSTR pszFile;
   344  }
   345  alias _OFNOTIFYA OFNOTIFYA;
   346  alias _OFNOTIFYA* LPOFNOTIFYA;
   347  
   348  struct _OFNOTIFYW {
   349    NMHDR hdr;
   350    LPOPENFILENAMEW lpOFN;
   351    LPWSTR pszFile;
   352  }
   353  alias _OFNOTIFYW OFNOTIFYW;
   354  alias _OFNOTIFYW* LPOFNOTIFYW;
   355  
   356  // #ifdef UNICODE
   357  alias OFNOTIFYW OFNOTIFY;
   358  alias LPOFNOTIFYW LPOFNOTIFY;
   359  // #else
   360  // ...
   361  // #endif // UNICODE
   362  
   363  struct _OFNOTIFYEXA {
   364    NMHDR hdr;
   365    LPOPENFILENAMEA lpOFN;
   366    LPVOID psf;
   367    LPVOID pidl;
   368  }
   369  alias _OFNOTIFYEXA OFNOTIFYEXA;
   370  alias _OFNOTIFYEXA* LPOFNOTIFYEXA;
   371  
   372  struct _OFNOTIFYEXW {
   373    NMHDR hdr;
   374    LPOPENFILENAMEW lpOFN;
   375    LPVOID psf;
   376    LPVOID pidl;
   377  }
   378  alias _OFNOTIFYEXW OFNOTIFYEXW;
   379  alias _OFNOTIFYEXW* LPOFNOTIFYEXW;
   380  
   381  // #ifdef UNICODE
   382  alias OFNOTIFYEXW OFNOTIFYEX;
   383  alias LPOFNOTIFYEXW LPOFNOTIFYEX;
   384  // #else
   385  // ...
   386  // #endif // UNICODE
   387  
   388  const uint CDN_FIRST = 0U-601U;
   389  const uint CDN_LAST = 0U-699U;
   390  
   391  const uint CDN_INITDONE = CDN_FIRST - 0x0000;
   392  const uint CDN_SELCHANGE = CDN_FIRST - 0x0001;
   393  const uint CDN_FOLDERCHANGE = CDN_FIRST - 0x0002;
   394  const uint CDN_SHAREVIOLATION = CDN_FIRST - 0x0003;
   395  const uint CDN_HELP = CDN_FIRST - 0x0004;
   396  const uint CDN_FILEOK = CDN_FIRST - 0x0005;
   397  const uint CDN_TYPECHANGE = CDN_FIRST - 0x0006;
   398  const uint CDN_INCLUDEITEM = CDN_FIRST - 0x0007;
   399  
   400  const uint CDM_FIRST = WM_USER + 100;
   401  const uint CDM_LAST = WM_USER + 200;
   402  
   403  const uint CDM_GETSPEC = CDM_FIRST + 0x0000;
   404  // #define CommDlg_OpenSave_GetSpecA(_hdlg, _psz, _cbmax) (int)SNDMSG(_hdlg, CDM_GETSPEC, (WPARAM)_cbmax, (LPARAM)(LPSTR)_psz)
   405  // #define CommDlg_OpenSave_GetSpecW(_hdlg, _psz, _cbmax) (int)SNDMSG(_hdlg, CDM_GETSPEC, (WPARAM)_cbmax, (LPARAM)(LPWSTR)_psz)
   406  // #ifdef UNICODE
   407  // #define CommDlg_OpenSave_GetSpec CommDlg_OpenSave_GetSpecW
   408  // #else
   409  // #...
   410  // #endif // !UNICODE
   411  
   412  const uint CDM_GETFILEPATH = CDM_FIRST + 0x0001;
   413  // #define CommDlg_OpenSave_GetFilePathA(_hdlg, _psz, _cbmax) (int)SNDMSG(_hdlg, CDM_GETFILEPATH, (WPARAM)_cbmax, (LPARAM)(LPSTR)_psz)
   414  // #define CommDlg_OpenSave_GetFilePathW(_hdlg, _psz, _cbmax) (int)SNDMSG(_hdlg, CDM_GETFILEPATH, (WPARAM)_cbmax, (LPARAM)(LPWSTR)_psz)
   415  // #ifdef UNICODE
   416  // #define CommDlg_OpenSave_GetFilePath CommDlg_OpenSave_GetFilePathW
   417  // #else
   418  // #...
   419  // #endif // !UNICODE
   420  
   421  const uint CDM_GETFOLDERPATH = CDM_FIRST + 0x0002;
   422  // #define CommDlg_OpenSave_GetFolderPathA(_hdlg, _psz, _cbmax) (int)SNDMSG(_hdlg, CDM_GETFOLDERPATH, (WPARAM)_cbmax, (LPARAM)(LPSTR)_psz)
   423  // #define CommDlg_OpenSave_GetFolderPathW(_hdlg, _psz, _cbmax) (int)SNDMSG(_hdlg, CDM_GETFOLDERPATH, (WPARAM)_cbmax, (LPARAM)(LPWSTR)_psz)
   424  // #ifdef UNICODE
   425  // #define CommDlg_OpenSave_GetFolderPath CommDlg_OpenSave_GetFolderPathW
   426  // #else
   427  // #...
   428  // #endif // !UNICODE
   429  
   430  const uint CDM_GETFOLDERIDLIST = CDM_FIRST + 0x0003;
   431  // #define CommDlg_OpenSave_GetFolderIDList(_hdlg, _pidl, _cbmax) (int)SNDMSG(_hdlg, CDM_GETFOLDERIDLIST, (WPARAM)_cbmax, (LPARAM)(LPVOID)_pidl)
   432  
   433  const uint CDM_SETCONTROLTEXT = CDM_FIRST + 0x0004;
   434  // #define CommDlg_OpenSave_SetControlText(_hdlg, _id, _text) (void)SNDMSG(_hdlg, CDM_SETCONTROLTEXT, (WPARAM)_id, (LPARAM)(LPSTR)_text)
   435  
   436  const uint CDM_HIDECONTROL = CDM_FIRST + 0x0005;
   437  // #define CommDlg_OpenSave_HideControl(_hdlg, _id) (void)SNDMSG(_hdlg, CDM_HIDECONTROL, (WPARAM)_id, 0)
   438  
   439  const uint CDM_SETDEFEXT = CDM_FIRST + 0x0006;
   440  // #define CommDlg_OpenSave_SetDefExt(_hdlg, _pszext) (void)SNDMSG(_hdlg, CDM_SETDEFEXT, 0, (LPARAM)(LPSTR)_pszext)
   441  // #endif /* WINVER >= 0x0400 */
   442  
   443  // #ifndef _MAC
   444  struct tagCHOOSECOLORA {
   445    DWORD lStructSize;
   446    HWND hwndOwner;
   447    HWND hInstance;
   448    COLORREF rgbResult;
   449    COLORREF *    lpCustColors;
   450    DWORD Flags;
   451    LPARAM lCustData;
   452    LPCCHOOKPROC lpfnHook;
   453    LPCSTR lpTemplateName;
   454  }
   455  alias tagCHOOSECOLORA CHOOSECOLORA;
   456  alias tagCHOOSECOLORA* LPCHOOSECOLORA;
   457  
   458  struct tagCHOOSECOLORW {
   459    DWORD lStructSize;
   460    HWND hwndOwner;
   461    HWND hInstance;
   462    COLORREF rgbResult;
   463    COLORREF *    lpCustColors;
   464    DWORD Flags;
   465    LPARAM lCustData;
   466    LPCCHOOKPROC lpfnHook;
   467    LPCWSTR lpTemplateName;
   468  }
   469  alias tagCHOOSECOLORW CHOOSECOLORW;
   470  alias tagCHOOSECOLORW* LPCHOOSECOLORW;
   471  
   472  // #ifdef UNICODE
   473  alias CHOOSECOLORW CHOOSECOLOR;
   474  alias LPCHOOSECOLORW LPCHOOSECOLOR;
   475  // #else
   476  // ...
   477  // #endif // UNICODE
   478  // #else
   479  // ...
   480  // #ifdef UNICODE
   481  // ...
   482  // #else
   483  // ...
   484  // #endif // UNICODE
   485  // #endif //_MAC
   486  
   487  extern(Windows) export BOOL ChooseColorA(LPCHOOSECOLORA);
   488  extern(Windows) export BOOL ChooseColorW(LPCHOOSECOLORW);
   489  // #ifdef UNICODE
   490  alias ChooseColorW ChooseColor;
   491  // #else
   492  // #...
   493  // #endif // !UNICODE
   494  
   495  enum : uint { CC_RGBINIT = 0x00000001 }
   496  enum : uint { CC_FULLOPEN = 0x00000002 }
   497  enum : uint { CC_PREVENTFULLOPEN = 0x00000004 }
   498  enum : uint { CC_SHOWHELP = 0x00000008 }
   499  enum : uint { CC_ENABLEHOOK = 0x00000010 }
   500  enum : uint { CC_ENABLETEMPLATE = 0x00000020 }
   501  enum : uint { CC_ENABLETEMPLATEHANDLE = 0x00000040 }
   502  // #if(WINVER >= 0x0400)
   503  enum : uint { CC_SOLIDCOLOR = 0x00000080 }
   504  enum : uint { CC_ANYCOLOR = 0x00000100 }
   505  // #endif /* WINVER >= 0x0400 */
   506  
   507  extern(Windows) alias UINT_PTR function(HWND, UINT, WPARAM, LPARAM) LPFRHOOKPROC;
   508  
   509  struct tagFINDREPLACEA {
   510    DWORD lStructSize;
   511    HWND hwndOwner;
   512    HINSTANCE hInstance;
   513  
   514    DWORD Flags;
   515    LPSTR lpstrFindWhat;
   516    LPSTR lpstrReplaceWith;
   517    WORD wFindWhatLen;
   518    WORD wReplaceWithLen;
   519    LPARAM lCustData;
   520    LPFRHOOKPROC lpfnHook;
   521    LPCSTR lpTemplateName;
   522  }
   523  alias tagFINDREPLACEA FINDREPLACEA;
   524  alias tagFINDREPLACEA* LPFINDREPLACEA;
   525  
   526  struct tagFINDREPLACEW {
   527    DWORD lStructSize;
   528    HWND hwndOwner;
   529    HINSTANCE hInstance;
   530  
   531    DWORD Flags;
   532    LPWSTR lpstrFindWhat;
   533    LPWSTR lpstrReplaceWith;
   534    WORD wFindWhatLen;
   535    WORD wReplaceWithLen;
   536    LPARAM lCustData;
   537    LPFRHOOKPROC lpfnHook;
   538    LPCWSTR lpTemplateName;
   539  }
   540  alias tagFINDREPLACEW FINDREPLACEW;
   541  alias tagFINDREPLACEW* LPFINDREPLACEW;
   542  
   543  // #ifdef UNICODE
   544  alias FINDREPLACEW FINDREPLACE;
   545  alias LPFINDREPLACEW LPFINDREPLACE;
   546  // #else
   547  // ...
   548  // #endif // UNICODE
   549  
   550  enum : uint { FR_DOWN = 0x00000001 }
   551  enum : uint { FR_WHOLEWORD = 0x00000002 }
   552  enum : uint { FR_MATCHCASE = 0x00000004 }
   553  enum : uint { FR_FINDNEXT = 0x00000008 }
   554  enum : uint { FR_REPLACE = 0x00000010 }
   555  enum : uint { FR_REPLACEALL = 0x00000020 }
   556  enum : uint { FR_DIALOGTERM = 0x00000040 }
   557  enum : uint { FR_SHOWHELP = 0x00000080 }
   558  enum : uint { FR_ENABLEHOOK = 0x00000100 }
   559  enum : uint { FR_ENABLETEMPLATE = 0x00000200 }
   560  enum : uint { FR_NOUPDOWN = 0x00000400 }
   561  enum : uint { FR_NOMATCHCASE = 0x00000800 }
   562  enum : uint { FR_NOWHOLEWORD = 0x00001000 }
   563  enum : uint { FR_ENABLETEMPLATEHANDLE = 0x00002000 }
   564  enum : uint { FR_HIDEUPDOWN = 0x00004000 }
   565  enum : uint { FR_HIDEMATCHCASE = 0x00008000 }
   566  enum : uint { FR_HIDEWHOLEWORD = 0x00010000 }
   567  enum : uint { FR_RAW = 0x00020000 }
   568  enum : uint { FR_MATCHDIAC = 0x20000000 }
   569  enum : uint { FR_MATCHKASHIDA = 0x40000000 }
   570  enum : uint { FR_MATCHALEFHAMZA = 0x80000000 }
   571  
   572  extern(Windows) export HWND FindTextA(LPFINDREPLACEA);
   573  extern(Windows) export HWND FindTextW(LPFINDREPLACEW);
   574  // #ifdef UNICODE
   575  alias FindTextW FindText;
   576  // #else
   577  // #...
   578  // #endif // !UNICODE
   579  // #ifndef _MAC
   580  extern(Windows) export HWND ReplaceTextA(LPFINDREPLACEA);
   581  extern(Windows) export HWND ReplaceTextW(LPFINDREPLACEW);
   582  // #ifdef UNICODE
   583  alias ReplaceTextW ReplaceText;
   584  // #else
   585  // #...
   586  // #endif // !UNICODE
   587  // #else
   588  // ...
   589  // #ifdef UNICODE
   590  // #...
   591  // #else
   592  // #...
   593  // #endif // !UNICODE
   594  // #endif
   595  
   596  extern(Windows) alias UINT_PTR function(HWND, UINT, WPARAM, LPARAM) LPCFHOOKPROC;
   597  
   598  struct tagCHOOSEFONTA {
   599    DWORD lStructSize;
   600    HWND hwndOwner;
   601    HDC hDC;
   602    LPLOGFONTA lpLogFont;
   603    INT iPointSize;
   604    DWORD Flags;
   605    COLORREF rgbColors;
   606    LPARAM lCustData;
   607    LPCFHOOKPROC lpfnHook;
   608    LPCSTR lpTemplateName;
   609    HINSTANCE hInstance;
   610  
   611    LPSTR lpszStyle;
   612  
   613    WORD nFontType;
   614  
   615    WORD ___MISSING_ALIGNMENT__;
   616    INT nSizeMin;
   617    INT nSizeMax;
   618  
   619  }
   620  alias tagCHOOSEFONTA CHOOSEFONTA;
   621  alias tagCHOOSEFONTA* LPCHOOSEFONTA;
   622  
   623  struct tagCHOOSEFONTW {
   624    DWORD lStructSize;
   625    HWND hwndOwner;
   626    HDC hDC;
   627    LPLOGFONTW lpLogFont;
   628    INT iPointSize;
   629    DWORD Flags;
   630    COLORREF rgbColors;
   631    LPARAM lCustData;
   632    LPCFHOOKPROC lpfnHook;
   633    LPCWSTR lpTemplateName;
   634    HINSTANCE hInstance;
   635  
   636    LPWSTR lpszStyle;
   637  
   638    WORD nFontType;
   639  
   640    WORD ___MISSING_ALIGNMENT__;
   641    INT nSizeMin;
   642    INT nSizeMax;
   643  
   644  }
   645  alias tagCHOOSEFONTW CHOOSEFONTW;
   646  alias tagCHOOSEFONTW* LPCHOOSEFONTW;
   647  
   648  // #ifdef UNICODE
   649  alias CHOOSEFONTW CHOOSEFONT;
   650  alias LPCHOOSEFONTW LPCHOOSEFONT;
   651  // #else
   652  // ...
   653  // #endif // UNICODE
   654  
   655  extern(Windows) export BOOL ChooseFontA(LPCHOOSEFONTA);
   656  extern(Windows) export BOOL ChooseFontW(LPCHOOSEFONTW);
   657  // #ifdef UNICODE
   658  alias ChooseFontW ChooseFont;
   659  // #else
   660  // #...
   661  // #endif // !UNICODE
   662  
   663  enum : uint { CF_SCREENFONTS = 0x00000001 }
   664  enum : uint { CF_PRINTERFONTS = 0x00000002 }
   665  const uint CF_BOTH = CF_SCREENFONTS | CF_PRINTERFONTS;
   666  enum : uint { CF_SHOWHELP = 0x00000004 }
   667  enum : uint { CF_ENABLEHOOK = 0x00000008 }
   668  enum : uint { CF_ENABLETEMPLATE = 0x00000010 }
   669  enum : uint { CF_ENABLETEMPLATEHANDLE = 0x00000020 }
   670  enum : uint { CF_INITTOLOGFONTSTRUCT = 0x00000040 }
   671  enum : uint { CF_USESTYLE = 0x00000080 }
   672  enum : uint { CF_EFFECTS = 0x00000100 }
   673  enum : uint { CF_APPLY = 0x00000200 }
   674  enum : uint { CF_ANSIONLY = 0x00000400 }
   675  // #if(WINVER >= 0x0400)
   676  alias CF_ANSIONLY CF_SCRIPTSONLY;
   677  // #endif /* WINVER >= 0x0400 */
   678  enum : uint { CF_NOVECTORFONTS = 0x00000800 }
   679  alias CF_NOVECTORFONTS CF_NOOEMFONTS;
   680  enum : uint { CF_NOSIMULATIONS = 0x00001000 }
   681  enum : uint { CF_LIMITSIZE = 0x00002000 }
   682  enum : uint { CF_FIXEDPITCHONLY = 0x00004000 }
   683  enum : uint { CF_WYSIWYG = 0x00008000 }
   684  enum : uint { CF_FORCEFONTEXIST = 0x00010000 }
   685  enum : uint { CF_SCALABLEONLY = 0x00020000 }
   686  enum : uint { CF_TTONLY = 0x00040000 }
   687  enum : uint { CF_NOFACESEL = 0x00080000 }
   688  enum : uint { CF_NOSTYLESEL = 0x00100000 }
   689  enum : uint { CF_NOSIZESEL = 0x00200000 }
   690  // #if(WINVER >= 0x0400)
   691  enum : uint { CF_SELECTSCRIPT = 0x00400000 }
   692  enum : uint { CF_NOSCRIPTSEL = 0x00800000 }
   693  enum : uint { CF_NOVERTFONTS = 0x01000000 }
   694  // #endif /* WINVER >= 0x0400 */
   695  
   696  enum : uint { SIMULATED_FONTTYPE = 0x8000 }
   697  enum : uint { PRINTER_FONTTYPE = 0x4000 }
   698  enum : uint { SCREEN_FONTTYPE = 0x2000 }
   699  enum : uint { BOLD_FONTTYPE = 0x0100 }
   700  enum : uint { ITALIC_FONTTYPE = 0x0200 }
   701  enum : uint { REGULAR_FONTTYPE = 0x0400 }
   702  
   703  // #ifdef WINNT
   704  // #...
   705  // #...
   706  // #...
   707  // #endif
   708  
   709  const uint WM_CHOOSEFONT_GETLOGFONT = WM_USER + 1;
   710  const uint WM_CHOOSEFONT_SETLOGFONT = WM_USER + 101;
   711  const uint WM_CHOOSEFONT_SETFLAGS = WM_USER + 102;
   712  
   713  const char[] LBSELCHSTRINGA = "commdlg_LBSelChangedNotify";
   714  const char[] SHAREVISTRINGA = "commdlg_ShareViolation";
   715  const char[] FILEOKSTRINGA = "commdlg_FileNameOK";
   716  const char[] COLOROKSTRINGA = "commdlg_ColorOK";
   717  const char[] SETRGBSTRINGA = "commdlg_SetRGBColor";
   718  const char[] HELPMSGSTRINGA = "commdlg_help";
   719  const char[] FINDMSGSTRINGA = "commdlg_FindReplace";
   720  
   721  const wchar[] LBSELCHSTRINGW = "commdlg_LBSelChangedNotify";
   722  const wchar[] SHAREVISTRINGW = "commdlg_ShareViolation";
   723  const wchar[] FILEOKSTRINGW = "commdlg_FileNameOK";
   724  const wchar[] COLOROKSTRINGW = "commdlg_ColorOK";
   725  const wchar[] SETRGBSTRINGW = "commdlg_SetRGBColor";
   726  const wchar[] HELPMSGSTRINGW = "commdlg_help";
   727  const wchar[] FINDMSGSTRINGW = "commdlg_FindReplace";
   728  
   729  // #ifdef UNICODE
   730  alias LBSELCHSTRINGW LBSELCHSTRING;
   731  alias SHAREVISTRINGW SHAREVISTRING;
   732  alias FILEOKSTRINGW FILEOKSTRING;
   733  alias COLOROKSTRINGW COLOROKSTRING;
   734  alias SETRGBSTRINGW SETRGBSTRING;
   735  alias HELPMSGSTRINGW HELPMSGSTRING;
   736  alias FINDMSGSTRINGW FINDMSGSTRING;
   737  // #else
   738  // #...
   739  // #...
   740  // #...
   741  // #...
   742  // #...
   743  // #...
   744  // #...
   745  // #endif
   746  
   747  enum { CD_LBSELNOITEMS = -1 }
   748  enum : uint { CD_LBSELCHANGE = 0 }
   749  enum : uint { CD_LBSELSUB = 1 }
   750  enum : uint { CD_LBSELADD = 2 }
   751  
   752  extern(Windows) alias UINT_PTR function(HWND, UINT, WPARAM, LPARAM) LPPRINTHOOKPROC;
   753  extern(Windows) alias UINT_PTR function(HWND, UINT, WPARAM, LPARAM) LPSETUPHOOKPROC;
   754  
   755  struct tagPDA {
   756    DWORD lStructSize;
   757    HWND hwndOwner;
   758    HGLOBAL hDevMode;
   759    HGLOBAL hDevNames;
   760    HDC hDC;
   761    DWORD Flags;
   762    WORD nFromPage;
   763    WORD nToPage;
   764    WORD nMinPage;
   765    WORD nMaxPage;
   766    WORD nCopies;
   767    HINSTANCE hInstance;
   768    LPARAM lCustData;
   769    LPPRINTHOOKPROC lpfnPrintHook;
   770    LPSETUPHOOKPROC lpfnSetupHook;
   771    LPCSTR lpPrintTemplateName;
   772    LPCSTR lpSetupTemplateName;
   773    HGLOBAL hPrintTemplate;
   774    HGLOBAL hSetupTemplate;
   775  }
   776  alias tagPDA PRINTDLGA;
   777  alias tagPDA* LPPRINTDLGA;
   778  
   779  struct tagPDW {
   780    DWORD lStructSize;
   781    HWND hwndOwner;
   782    HGLOBAL hDevMode;
   783    HGLOBAL hDevNames;
   784    HDC hDC;
   785    DWORD Flags;
   786    WORD nFromPage;
   787    WORD nToPage;
   788    WORD nMinPage;
   789    WORD nMaxPage;
   790    WORD nCopies;
   791    HINSTANCE hInstance;
   792    LPARAM lCustData;
   793    LPPRINTHOOKPROC lpfnPrintHook;
   794    LPSETUPHOOKPROC lpfnSetupHook;
   795    LPCWSTR lpPrintTemplateName;
   796    LPCWSTR lpSetupTemplateName;
   797    HGLOBAL hPrintTemplate;
   798    HGLOBAL hSetupTemplate;
   799  }
   800  alias tagPDW PRINTDLGW;
   801  alias tagPDW* LPPRINTDLGW;
   802  
   803  // #ifdef UNICODE
   804  alias PRINTDLGW PRINTDLG;
   805  alias LPPRINTDLGW LPPRINTDLG;
   806  // #else
   807  // ...
   808  // #endif // UNICODE
   809  
   810  extern(Windows) export BOOL PrintDlgA(LPPRINTDLGA);
   811  extern(Windows) export BOOL PrintDlgW(LPPRINTDLGW);
   812  // #ifdef UNICODE
   813  alias PrintDlgW PrintDlg;
   814  // #else
   815  // #...
   816  // #endif // !UNICODE
   817  
   818  // #if(WINVER >= 0x0500)
   819  
   820  // #ifdef STDMETHOD
   821  
   822  // #...
   823  // #...
   824  
   825  // ...
   826  
   827  // ...
   828  
   829  // #...
   830  // #...
   831  
   832  // ...
   833  
   834  // ...
   835  
   836  // ...
   837  
   838  // ...
   839  // #ifdef UNICODE
   840  // ...
   841  // #else
   842  // ...
   843  // #endif // UNICODE
   844  
   845  // ...
   846  // #ifdef UNICODE
   847  // #...
   848  // #else
   849  // #...
   850  // #endif // !UNICODE
   851  
   852  // #endif
   853  
   854  // #endif /* WINVER >= 0x0500 */
   855  
   856  enum : uint { PD_ALLPAGES = 0x00000000 }
   857  enum : uint { PD_SELECTION = 0x00000001 }
   858  enum : uint { PD_PAGENUMS = 0x00000002 }
   859  enum : uint { PD_NOSELECTION = 0x00000004 }
   860  enum : uint { PD_NOPAGENUMS = 0x00000008 }
   861  enum : uint { PD_COLLATE = 0x00000010 }
   862  enum : uint { PD_PRINTTOFILE = 0x00000020 }
   863  enum : uint { PD_PRINTSETUP = 0x00000040 }
   864  enum : uint { PD_NOWARNING = 0x00000080 }
   865  enum : uint { PD_RETURNDC = 0x00000100 }
   866  enum : uint { PD_RETURNIC = 0x00000200 }
   867  enum : uint { PD_RETURNDEFAULT = 0x00000400 }
   868  enum : uint { PD_SHOWHELP = 0x00000800 }
   869  enum : uint { PD_ENABLEPRINTHOOK = 0x00001000 }
   870  enum : uint { PD_ENABLESETUPHOOK = 0x00002000 }
   871  enum : uint { PD_ENABLEPRINTTEMPLATE = 0x00004000 }
   872  enum : uint { PD_ENABLESETUPTEMPLATE = 0x00008000 }
   873  enum : uint { PD_ENABLEPRINTTEMPLATEHANDLE = 0x00010000 }
   874  enum : uint { PD_ENABLESETUPTEMPLATEHANDLE = 0x00020000 }
   875  enum : uint { PD_USEDEVMODECOPIES = 0x00040000 }
   876  enum : uint { PD_USEDEVMODECOPIESANDCOLLATE = 0x00040000 }
   877  enum : uint { PD_DISABLEPRINTTOFILE = 0x00080000 }
   878  enum : uint { PD_HIDEPRINTTOFILE = 0x00100000 }
   879  enum : uint { PD_NONETWORKBUTTON = 0x00200000 }
   880  // #if(WINVER >= 0x0500)
   881  enum : uint { PD_CURRENTPAGE = 0x00400000 }
   882  enum : uint { PD_NOCURRENTPAGE = 0x00800000 }
   883  enum : uint { PD_EXCLUSIONFLAGS = 0x01000000 }
   884  enum : uint { PD_USELARGETEMPLATE = 0x10000000 }
   885  // #endif /* WINVER >= 0x0500 */
   886  
   887  // #if(WINVER >= 0x0500)
   888  
   889  const uint PD_EXCL_COPIESANDCOLLATE = DM_COPIES | DM_COLLATE;
   890  
   891  enum : uint { START_PAGE_GENERAL = 0xffffffff }
   892  
   893  enum : uint { PD_RESULT_CANCEL = 0 }
   894  enum : uint { PD_RESULT_PRINT = 1 }
   895  enum : uint { PD_RESULT_APPLY = 2 }
   896  
   897  // #endif /* WINVER >= 0x0500 */
   898  
   899  struct tagDEVNAMES {
   900    WORD wDriverOffset;
   901    WORD wDeviceOffset;
   902    WORD wOutputOffset;
   903    WORD wDefault;
   904  }
   905  alias tagDEVNAMES DEVNAMES;
   906  alias tagDEVNAMES* LPDEVNAMES;
   907  
   908  enum : uint { DN_DEFAULTPRN = 0x0001 }
   909  
   910  extern(Windows) export DWORD CommDlgExtendedError();
   911  
   912  // #if(WINVER >= 0x0400)
   913  const uint WM_PSD_PAGESETUPDLG = WM_USER ;
   914  const uint WM_PSD_FULLPAGERECT = WM_USER+1;
   915  const uint WM_PSD_MINMARGINRECT = WM_USER+2;
   916  const uint WM_PSD_MARGINRECT = WM_USER+3;
   917  const uint WM_PSD_GREEKTEXTRECT = WM_USER+4;
   918  const uint WM_PSD_ENVSTAMPRECT = WM_USER+5;
   919  const uint WM_PSD_YAFULLPAGERECT = WM_USER+6;
   920  
   921  extern(Windows) alias UINT_PTR function( HWND, UINT, WPARAM, LPARAM ) LPPAGEPAINTHOOK;
   922  extern(Windows) alias UINT_PTR function( HWND, UINT, WPARAM, LPARAM ) LPPAGESETUPHOOK;
   923  
   924  struct tagPSDA {
   925    DWORD lStructSize;
   926    HWND hwndOwner;
   927    HGLOBAL hDevMode;
   928    HGLOBAL hDevNames;
   929    DWORD Flags;
   930    POINT ptPaperSize;
   931    RECT rtMinMargin;
   932    RECT rtMargin;
   933    HINSTANCE hInstance;
   934    LPARAM lCustData;
   935    LPPAGESETUPHOOK lpfnPageSetupHook;
   936    LPPAGEPAINTHOOK lpfnPagePaintHook;
   937    LPCSTR lpPageSetupTemplateName;
   938    HGLOBAL hPageSetupTemplate;
   939  }
   940  alias tagPSDA PAGESETUPDLGA;
   941  alias tagPSDA* LPPAGESETUPDLGA;
   942  
   943  struct tagPSDW {
   944    DWORD lStructSize;
   945    HWND hwndOwner;
   946    HGLOBAL hDevMode;
   947    HGLOBAL hDevNames;
   948    DWORD Flags;
   949    POINT ptPaperSize;
   950    RECT rtMinMargin;
   951    RECT rtMargin;
   952    HINSTANCE hInstance;
   953    LPARAM lCustData;
   954    LPPAGESETUPHOOK lpfnPageSetupHook;
   955    LPPAGEPAINTHOOK lpfnPagePaintHook;
   956    LPCWSTR lpPageSetupTemplateName;
   957    HGLOBAL hPageSetupTemplate;
   958  }
   959  alias tagPSDW PAGESETUPDLGW;
   960  alias tagPSDW* LPPAGESETUPDLGW;
   961  
   962  // #ifdef UNICODE
   963  alias PAGESETUPDLGW PAGESETUPDLG;
   964  alias LPPAGESETUPDLGW LPPAGESETUPDLG;
   965  // #else
   966  // ...
   967  // #endif // UNICODE
   968  
   969  extern(Windows) export BOOL PageSetupDlgA( LPPAGESETUPDLGA );
   970  extern(Windows) export BOOL PageSetupDlgW( LPPAGESETUPDLGW );
   971  // #ifdef UNICODE
   972  alias PageSetupDlgW PageSetupDlg;
   973  // #else
   974  // #...
   975  // #endif // !UNICODE
   976  
   977  enum : uint { PSD_DEFAULTMINMARGINS = 0x00000000 }
   978  enum : uint { PSD_INWININIINTLMEASURE = 0x00000000 }
   979  
   980  enum : uint { PSD_MINMARGINS = 0x00000001 }
   981  enum : uint { PSD_MARGINS = 0x00000002 }
   982  enum : uint { PSD_INTHOUSANDTHSOFINCHES = 0x00000004 }
   983  enum : uint { PSD_INHUNDREDTHSOFMILLIMETERS = 0x00000008 }
   984  enum : uint { PSD_DISABLEMARGINS = 0x00000010 }
   985  enum : uint { PSD_DISABLEPRINTER = 0x00000020 }
   986  enum : uint { PSD_NOWARNING = 0x00000080 }
   987  enum : uint { PSD_DISABLEORIENTATION = 0x00000100 }
   988  enum : uint { PSD_RETURNDEFAULT = 0x00000400 }
   989  enum : uint { PSD_DISABLEPAPER = 0x00000200 }
   990  enum : uint { PSD_SHOWHELP = 0x00000800 }
   991  enum : uint { PSD_ENABLEPAGESETUPHOOK = 0x00002000 }
   992  enum : uint { PSD_ENABLEPAGESETUPTEMPLATE = 0x00008000 }
   993  enum : uint { PSD_ENABLEPAGESETUPTEMPLATEHANDLE = 0x00020000 }
   994  enum : uint { PSD_ENABLEPAGEPAINTHOOK = 0x00040000 }
   995  enum : uint { PSD_DISABLEPAGEPAINTING = 0x00080000 }
   996  enum : uint { PSD_NONETWORKBUTTON = 0x00200000 }
   997  // #endif /* WINVER >= 0x0400 */
   998  
   999  // #if !defined(RC_INVOKED) /* RC complains about long symbols in #ifs */
  1000  // #if ISOLATION_AWARE_ENABLED
  1001  
  1002  // #if !defined(ISOLATION_AWARE_INLINE)
  1003  // #if defined(__cplusplus)
  1004  // #...
  1005  // #else
  1006  // #...
  1007  // #endif
  1008  // #endif
  1009  
  1010  // ...
  1011  
  1012  // ...
  1013  // #if defined(STDMETHOD) && (WINVER >= 0x0500)
  1014  // ...
  1015  // #endif /* defined(STDMETHOD) && (WINVER >= 0x0500) */
  1016  // ...
  1017  
  1018  // #if defined(UNICODE)
  1019  
  1020  // #...
  1021  // #...
  1022  // #...
  1023  // #...
  1024  // #...
  1025  // #...
  1026  // #...
  1027  // #...
  1028  // #...
  1029  // #...
  1030  
  1031  // #else /* UNICODE */
  1032  
  1033  // #...
  1034  // #...
  1035  // #...
  1036  // #...
  1037  // #...
  1038  // #...
  1039  // #...
  1040  // #...
  1041  // #...
  1042  // #...
  1043  
  1044  // #endif /* UNICODE */
  1045  
  1046  // ...
  1047  
  1048  // ...
  1049  
  1050  // ...
  1051  
  1052  // ...
  1053  
  1054  // ...
  1055  
  1056  // ...
  1057  
  1058  // ...
  1059  
  1060  // ...
  1061  
  1062  // ...
  1063  
  1064  // ...
  1065  
  1066  // ...
  1067  
  1068  // ...
  1069  
  1070  // ...
  1071  
  1072  // ...
  1073  
  1074  // ...
  1075  
  1076  // ...
  1077  
  1078  // #if defined(STDMETHOD) && (WINVER >= 0x0500)
  1079  
  1080  // ...
  1081  
  1082  // ...
  1083  
  1084  // ...
  1085  
  1086  // ...
  1087  
  1088  // #endif /* defined(STDMETHOD) && (WINVER >= 0x0500) */
  1089  
  1090  // ...
  1091  
  1092  // ...
  1093  
  1094  // ...
  1095  
  1096  // ...
  1097  
  1098  // #...
  1099  // #...
  1100  // #...
  1101  // #...
  1102  // #...
  1103  // #...
  1104  // #...
  1105  // #...
  1106  // #...
  1107  // #...
  1108  // #...
  1109  // #...
  1110  // #...
  1111  // #...
  1112  // #...
  1113  // #...
  1114  // #...
  1115  // #...
  1116  // #...
  1117  // #...
  1118  // #...
  1119  
  1120  // #endif /* ISOLATION_AWARE_ENABLED */
  1121  // #endif /* RC */
  1122  
  1123  // #ifdef __cplusplus
  1124  // }
  1125  // #endif  /* __cplusplus */
  1126  
  1127  // #if !defined(_WIN64)
  1128  align:
  1129  // #endif
  1130  // #endif  /* GUID_DEFS_ONLY */
  1131  // #endif  /* !_INC_COMMDLG */
  1132