Changeset 266:2443a18f96b8

Show
Ignore:
Timestamp:
07/26/08 07:29:11 (6 months ago)
Author:
Frank Benoit <benoit@tionex.de>
Parents:

265:91eec9fa94de 264:a63e2cd5485e

Children:

267:554392fcfb46 268:1a74c57e2d49

Tags:

Release-1

branch:
default
Message:

merge

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • dwt/internal/win32/WINTYPES.d

    r263 r266  
    1502015020    HDC    hdc; 
    1502115021    RECT   rc; 
    15022     DWORD dwItemSpec; 
     15022    DWORD_PTR dwItemSpec; 
    1502315023    UINT   uItemState; 
    1502415024    LPARAM lItemlParam; 
  • dwt/internal/win32/WINTYPES.d

    r265 r266  
    44 
    55module dwt.internal.win32.WINTYPES; 
     6 
    67 
    78/* 
     
    124125alias wchar* NWPSTR; 
    125126alias WINBOOL* PWINBOOL; 
     127alias ubyte BOOLEAN; 
    126128alias ubyte* PBOOLEAN; 
    127129alias ubyte* PBYTE; 
     
    64526454alias BLOB* PBLOB; 
    64536455 
    6454 struct SHITEMID 
     6456align(1) struct SHITEMID 
    64556457{ 
    64566458    USHORT cb; 
     
    65406542{ 
    65416543    ushort fract; 
    6542     int value; 
     6544    short value; 
    65436545} 
    65446546 
     
    70777079    HWND hwndItem; 
    70787080    UINT itemID1; 
    7079     DWORD itemData1; 
     7081    ULONG_PTR itemData1; 
    70807082    UINT itemID2; 
    7081     DWORD itemData2; 
     7083    ULONG_PTR itemData2; 
     7084    DWORD dwLocaleId; 
    70827085} 
    70837086 
     
    72627265alias LIST_ENTRY* PLISTENTRY; 
    72637266 
    7264 struct CRITICAL_SECTION_DEBUG 
    7265 { 
    7266     ushort _Type; 
    7267     ushort CreatorBackTraceIndex; 
     7267align(1) struct CRITICAL_SECTION_DEBUG 
     7268{ 
     7269    WORD _Type; 
     7270    WORD CreatorBackTraceIndex; 
    72687271    _CRITICAL_SECTION* CriticalSection; 
    72697272    LIST_ENTRY ProcessLocksList; 
    72707273    DWORD EntryCount; 
    72717274    DWORD ContentionCount; 
    7272     DWORD Depth; 
    7273     PVOID[1 + 4] OwnerBackTrace; 
     7275    DWORD Flags; 
     7276    WORD   CreatorBackTraceIndexHigh; 
     7277    WORD   SpareWORD  ; 
    72747278} 
    72757279 
    72767280alias CRITICAL_SECTION_DEBUG* LPCRITICAL_SECTION_DEBUG; 
    7277 alias CRITICAL_SECTION_DEBUG PCRITICAL_SECTION_DEBUG; 
     7281alias CRITICAL_SECTION_DEBUG* PCRITICAL_SECTION_DEBUG; 
    72787282alias CRITICAL_SECTION_DEBUG _CRITICAL_SECTION_DEBUG; 
    72797283alias CRITICAL_SECTION_DEBUG TCRITICALSECTIONDEBUG; 
    72807284alias CRITICAL_SECTION_DEBUG* PCRITICALSECTIONDEBUG; 
    72817285 
    7282 struct CRITICAL_SECTION 
     7286align(1) struct CRITICAL_SECTION 
    72837287{ 
    72847288    PCRITICAL_SECTION_DEBUG DebugInfo; 
     
    72967300alias CRITICAL_SECTION* PCRITICALSECTION; 
    72977301 
     7302alias ubyte SECURITY_CONTEXT_TRACKING_MODE; 
    72987303struct SECURITY_QUALITY_OF_SERVICE 
    72997304{ 
    73007305    DWORD Length; 
    73017306    SECURITY_IMPERSONATION_LEVEL ImpersonationLevel; 
    7302     WINBOOL ContextTrackingMode; 
    7303     ubyte EffectiveOnly; 
     7307    SECURITY_CONTEXT_TRACKING_MODE ContextTrackingMode; 
     7308    BOOLEAN EffectiveOnly; 
    73047309} 
    73057310 
     
    74997504{ 
    75007505    ushort flag0; 
    7501     int cfFormat; 
     7506    short cfFormat; 
    75027507} 
    75037508 
     
    75167521{ 
    75177522    ushort flag0; 
    7518     int cfFormat; 
     7523    short cfFormat; 
    75197524    ubyte[1 + 0] Value; 
    75207525} 
     
    75377542{ 
    75387543    ushort flag0; 
    7539     int cfFormat; 
     7544    short cfFormat; 
    75407545} 
    75417546 
     
    75687573{ 
    75697574    ushort flag0; 
    7570     int cfFormat; 
     7575    short cfFormat; 
    75717576    ubyte[1 + 0] Value; 
    75727577} 
     
    75857590{ 
    75867591    ushort flag0; 
    7587     int cfFormat; 
     7592    short cfFormat; 
    75887593    ubyte[1 + 0] rgb; 
    75897594} 
     
    79437948    LARGE_INTEGER ReadTime; 
    79447949    LARGE_INTEGER WriteTime; 
     7950    LARGE_INTEGER IdleTime; 
    79457951    DWORD ReadCount; 
    79467952    DWORD WriteCount; 
    79477953    DWORD QueueDepth; 
     7954    DWORD SplitCount; 
     7955    LARGE_INTEGER QueryTime; 
     7956    DWORD StorageDeviceNumber; 
     7957    WCHAR StorageManagerName[8]; 
    79487958} 
    79497959 
     
    79567966    DWORD style; 
    79577967    DWORD dwExtendedStyle; 
    7958     int x; 
    7959     int y; 
    7960     int cx; 
    7961     int cy; 
    7962     ushort id; 
     7968    short x; 
     7969    short y; 
     7970    short cx; 
     7971    short cy; 
     7972    WORD id; 
    79637973} 
    79647974 
     
    79717981    DWORD style; 
    79727982    DWORD dwExtendedStyle; 
    7973     ushort cdit; 
    7974     int x; 
    7975     int y; 
    7976     int cx; 
    7977     int cy; 
     7983    WORD cdit; 
     7984    short x; 
     7985    short y; 
     7986    short cx; 
     7987    short cy; 
    79787988} 
    79797989 
     
    82348244    DWORD iUsageSrc; 
    82358245    DWORD offBmiSrc; 
     8246    DWORD cbBmiSrc; 
    82368247    DWORD offBitsSrc; 
    82378248    DWORD cbBitsSrc; 
     
    82668277alias LONG LCSGAMUTMATCH; 
    82678278 
    8268 struct LOGCOLORSPACE 
     8279struct LOGCOLORSPACEA 
    82698280{ 
    82708281    DWORD lcsSignature; 
     
    82778288    DWORD lcsGammaGreen; 
    82788289    DWORD lcsGammaBlue; 
    8279     TCHAR[1 + MAX_PATH-1] lcsFilename; 
     8290    CHAR[1 + MAX_PATH-1] lcsFilename; 
     8291
     8292struct LOGCOLORSPACEW 
     8293
     8294    DWORD lcsSignature; 
     8295    DWORD lcsVersion; 
     8296    DWORD lcsSize; 
     8297    LCSCSTYPE lcsCSType; 
     8298    LCSGAMUTMATCH lcsIntent; 
     8299    CIEXYZTRIPLE lcsEndpoints; 
     8300    DWORD lcsGammaRed; 
     8301    DWORD lcsGammaGreen; 
     8302    DWORD lcsGammaBlue; 
     8303    WCHAR[1 + MAX_PATH-1] lcsFilename; 
     8304
     8305version(Win32SansUnicode) { 
     8306    alias LOGCOLORSPACEA LOGCOLORSPACE; 
     8307
     8308else { 
     8309    alias LOGCOLORSPACEW LOGCOLORSPACE; 
    82808310} 
    82818311 
     
    82868316alias LOGCOLORSPACE* PLOGCOLORSPACE; 
    82878317 
    8288 struct EMRCREATECOLORSPACE 
    8289 
    8290     EMR emr; 
    8291     DWORD ihCS; 
    8292     LOGCOLORSPACE lcs; 
     8318struct EMRCREATECOLORSPACE { 
     8319    EMR            emr; 
     8320    DWORD          ihCS; 
     8321    LOGCOLORSPACEA lcs; 
    82938322} 
    82948323 
     
    84448473{ 
    84458474    LOGFONT elfLogFont; 
    8446     BCHAR[1 + LF_FULLFACESIZE-1] elfFullName; 
    8447     BCHAR[1 + LF_FACESIZE-1] elfStyle; 
     8475    TCHAR[1 + LF_FULLFACESIZE-1] elfFullName; 
     8476    TCHAR[1 + LF_FACESIZE-1] elfStyle; 
    84488477    DWORD elfVersion; 
    84498478    DWORD elfStyleSize; 
     
    88008829    RECTL rclBounds; 
    88018830    DWORD cpts; 
    8802     POINTL[1 + 0] apts; 
     8831    POINTS[1 + 0] apts; 
    88038832} 
    88048833 
     
    92649293alias ENOLEOPFAILED* PENOLEOPFAILED; 
    92659294 
    9266 struct ENHMETAHEADER 
     9295align(2) struct ENHMETAHEADER 
    92679296{ 
    92689297    DWORD iType; 
     
    92819310    SIZEL szlDevice; 
    92829311    SIZEL szlMillimeters; 
     9312//#if (WINVER >= 0x0400) 
     9313    DWORD cbPixelFormat; 
     9314    DWORD offPixelFormat; 
     9315    DWORD bOpenGL; 
     9316//#endif /* WINVER >= 0x0400 */ 
     9317//#if (WINVER >= 0x0500) 
     9318    SIZEL szlMicrometers; 
     9319//#endif /* WINVER >= 0x0500 */ 
    92839320} 
    92849321 
     
    95039540 
    95049541alias TFINDTEXT _FINDTEXT; 
     9542alias TFINDTEXT FINDTEXT; 
    95059543alias TFINDTEXT* PFINDTEXT; 
    95069544 
     
    96709708    UINT gmBlackBoxY; 
    96719709    POINT gmptGlyphOrigin; 
    9672     int gmCellIncX; 
    9673     int gmCellIncY; 
     9710    short gmCellIncX; 
     9711    short gmCellIncY; 
    96749712} 
    96759713 
     
    97099747    int fmt; 
    97109748    LPARAM lParam; 
     9749    // _WIN32_IE >= 0x300 
     9750    int iImage; 
     9751    int iOrder; 
     9752    // _WIN32_IE >= 0x500 
     9753    UINT type; 
     9754    void* pvFilter; 
     9755    // _WIN32_WINNT >= 0x600 
     9756    //UINT state; 
    97119757} 
    97129758 
     
    1007510121{ 
    1007610122    UCHAR length; 
    10077     UCHAR[1 + MAX_LANA-1] lana; 
     10123    UCHAR[1 + MAX_LANA] lana; 
    1007810124} 
    1007910125 
     
    1016310209alias FXPT16DOT16 TFXPT16DOT16; 
    1016410210alias FXPT16DOT16* PFXPT16DOT16; 
    10165 alias LARGE_INTEGER LUID; 
     10211struct LUID { 
     10212    DWORD LowPart; 
     10213    LONG  HighPart; 
     10214
    1016610215alias LUID TLUID; 
    1016710216alias LUID* PLUID; 
     
    1018110230alias LUID_AND_ATTRIBUTES_ARRAY* PLUIDANDATTRIBUTESARRAY; 
    1018210231 
    10183 struct LV_COLUMN 
    10184 
     10232struct LVCOLUMNA { 
    1018510233    UINT mask; 
    1018610234    int fmt; 
    1018710235    int cx; 
    10188     LPTSTR pszText; 
     10236    LPSTR pszText; 
    1018910237    int cchTextMax; 
    1019010238    int iSubItem; 
    10191 
    10192  
     10239    int iImage; 
     10240    //if (_WIN32_IE >= 0x0300) 
     10241    int iOrder; 
     10242    //endif 
     10243    //if (_WIN32_WINNT >= 0x0600) 
     10244    //int cxMin; 
     10245    //int cxDefault; 
     10246    //int cxIdeal; 
     10247    //endif 
     10248
     10249struct LVCOLUMNW { 
     10250    UINT mask; 
     10251    int fmt; 
     10252    int cx; 
     10253    LPWSTR pszText; 
     10254    int cchTextMax; 
     10255    int iSubItem; 
     10256    int iImage; 
     10257    //if (_WIN32_IE >= 0x0300) 
     10258    int iOrder; 
     10259    //endif 
     10260    //if (_WIN32_WINNT >= 0x0600) 
     10261    //int cxMin; 
     10262    //int cxDefault; 
     10263    //int cxIdeal; 
     10264    //endif 
     10265
     10266version(Win32SansUnicode){ 
     10267    alias LVCOLUMNA LVCOLUMN; 
     10268}else{ 
     10269    alias LVCOLUMNW LVCOLUMN; 
     10270
     10271alias LVCOLUMN* LPLVCOLUMN; 
     10272alias LVCOLUMN LV_COLUMN; 
    1019310273alias LV_COLUMN _LV_COLUMN; 
    1019410274alias LV_COLUMN TLVCOLUMN; 
    1019510275alias LV_COLUMN* PLVCOLUMN; 
    1019610276 
    10197 struct LV_ITEM 
    10198 
    10199     UINT mask; 
    10200     int iItem; 
    10201     int iSubItem; 
    10202     UINT state; 
    10203     UINT stateMask; 
    10204     LPTSTR pszText; 
    10205     int cchTextMax; 
    10206     int iImage; 
     10277struct LVITEMA { 
     10278    UINT   mask; 
     10279    int    iItem; 
     10280    int    iSubItem; 
     10281    UINT   state; 
     10282    UINT   stateMask; 
     10283    LPSTR  pszText; 
     10284    int    cchTextMax; 
     10285    int    iImage; 
    1020710286    LPARAM lParam; 
    10208 
     10287//if (_WIN32_IE >= 0x0300) 
     10288    int iIndent; 
     10289//endif 
     10290//if (_WIN32_WINNT >= 0x560) 
     10291    int iGroupId; 
     10292    UINT cColumns; // tile view columns 
     10293    PUINT puColumns; 
     10294//endif 
     10295//if (_WIN32_WINNT >= 0x0600) 
     10296//    int* piColFmt; 
     10297//    int iGroup; 
     10298//endif 
     10299
     10300struct LVITEMW { 
     10301    UINT   mask; 
     10302    int    iItem; 
     10303    int    iSubItem; 
     10304    UINT   state; 
     10305    UINT   stateMask; 
     10306    LPWSTR  pszText; 
     10307    int    cchTextMax; 
     10308    int    iImage; 
     10309    LPARAM lParam; 
     10310//if (_WIN32_IE >= 0x0300) 
     10311    int iIndent; 
     10312//endif 
     10313//if (_WIN32_WINNT >= 0x560) 
     10314    int iGroupId; 
     10315    UINT cColumns; // tile view columns 
     10316    PUINT puColumns; 
     10317//endif 
     10318//if (_WIN32_WINNT >= 0x0600) 
     10319//    int* piColFmt; 
     10320//    int iGroup; 
     10321//endif 
     10322
     10323version(Win32SansUnicode){ 
     10324    alias LVITEMA LVITEM; 
     10325}else{ 
     10326    alias LVITEMW LVITEM; 
     10327
     10328alias LVITEM* LPLVITEM; 
     10329alias LVITEM LV_ITEM; 
    1020910330 
    1021010331alias LV_ITEM _LV_ITEM; 
     
    1023510356alias LV_FINDINFO* PLVFINDINFO; 
    1023610357 
    10237 struct LV_HITTESTINFO 
     10358struct LVHITTESTINFO 
    1023810359{ 
    1023910360    POINT pt; 
    1024010361    UINT flags; 
    1024110362    int iItem; 
    10242 
     10363    int iSubItem; 
     10364//#if _WIN32_WINNT >= 0x0600 
     10365//    int iGroup; 
     10366//#endif 
     10367
     10368 
     10369alias LVHITTESTINFO LV_HITTESTINFO; 
    1024310370 
    1024410371alias LV_HITTESTINFO _LV_HITTESTINFO; 
     
    1024610373alias LV_HITTESTINFO* PLVHITTESTINFO; 
    1024710374 
    10248 struct LV_KEYDOWN 
     10375align(2) struct LV_KEYDOWN 
    1024910376{ 
    1025010377    NMHDR hdr; 
     
    1100411131alias TVITEM* PTVITEM; 
    1100511132 
     11133struct TVITEMEXA { 
     11134    UINT      mask; 
     11135    HTREEITEM hItem; 
     11136    UINT      state; 
     11137    UINT      stateMask; 
     11138    LPSTR     pszText; 
     11139    int       cchTextMax; 
     11140    int       iImage; 
     11141    int       iSelectedImage; 
     11142    int       cChildren; 
     11143    LPARAM    lParam; 
     11144    int       iIntegral; 
     11145//#if (_WIN32_IE >= 0x0600) 
     11146//    UINT      uStateEx; 
     11147//    HWND      hwnd; 
     11148//    int       iExpandedImage; 
     11149//#endif 
     11150} 
     11151struct TVITEMEXW { 
     11152    UINT      mask; 
     11153    HTREEITEM hItem; 
     11154    UINT      state; 
     11155    UINT      stateMask; 
     11156    LPWSTR    pszText; 
     11157    int       cchTextMax; 
     11158    int       iImage; 
     11159    int       iSelectedImage; 
     11160    int       cChildren; 
     11161    LPARAM    lParam; 
     11162    int       iIntegral; 
     11163//#if (_WIN32_IE >= 0x0600) 
     11164//    UINT      uStateEx; 
     11165//    HWND      hwnd; 
     11166//    int       iExpandedImage; 
     11167//#endif 
     11168} 
     11169version(Win32SansUnicode) 
     11170{ 
     11171    alias TVITEMEXA TVITEMEX; 
     11172} 
     11173else 
     11174{ 
     11175    alias TVITEMEXW TVITEMEX; 
     11176} 
     11177alias TVITEMEX * LPTVITEMEX; 
     11178 
    1100611179struct NMTREEVIEW 
    1100711180{ 
     
    1104711220    LOGFONTA lfStatusFont; 
    1104811221    LOGFONTA lfMessageFont; 
     11222//if (WINVER >= 0x0600) 
     11223//  int iPaddedBorderWidth; 
     11224//endif  
     11225 
    1104911226} 
    1105011227struct NONCLIENTMETRICSW { 
     
    1106411241    LOGFONTW lfStatusFont; 
    1106511242    LOGFONTW lfMessageFont; 
     11243//if (WINVER >= 0x0600) 
     11244//  int iPaddedBorderWidth; 
     11245//endif  
    1106611246} 
    1106711247version(Win32SansUnicode) 
     
    1121411394    LPOFNHOOKPROC lpfnHook; 
    1121511395    LPCTSTR lpTemplateName; 
     11396//if (_WIN32_WINNT >= 0x0500) 
     11397  void *        pvReserved; 
     11398  DWORD         dwReserved; 
     11399  DWORD         FlagsEx; 
     11400//endif // (_WIN32_WINNT >= 0x0500) 
    1121611401} 
    1121711402 
     
    1127011455 
    1127111456struct TEXTMETRICA { 
    11272     align(1): 
    1127311457    LONG tmHeight; 
    1127411458    LONG tmAscent; 
     
    1129511479} 
    1129611480struct TEXTMETRICW { 
    11297     align(1): 
    1129811481    LONG tmHeight; 
    1129911482    LONG tmAscent; 
     
    1145011633} 
    1145111634 
     11635alias TPAGESETUPDLG PAGESETUPDLG; 
    1145211636alias TPAGESETUPDLG* LPPAGESETUPDLG; 
    1145311637alias TPAGESETUPDLG* PPAGESETUPDLG; 
     
    1162011804alias PREVENT_MEDIA_REMOVAL* PPREVENTMEDIAREMOVAL; 
    1162111805 
    11622 struct PRINTDLGA {  // pd 
    11623     align(2): 
     11806align(2) struct PRINTDLGA {  // pd 
    1162411807    DWORD     lStructSize; 
    1162511808    HWND      hwndOwner; 
     
    1164411827alias PRINTDLGA* PPRINTDLGA; 
    1164511828alias PRINTDLGA* LPPRINTDLGA; 
    11646 struct PRINTDLGW {  // pd 
    11647     align(2): 
     11829align(2) struct PRINTDLGW {  // pd 
    1164811830    DWORD     lStructSize; 
    1164911831    HWND      hwndOwner; 
     
    1188912071alias LPFNPSPCALLBACK TFNPSPCALLBACK; 
    1189012072 
    11891 struct PROPSHEETPAGE_U1 
    11892 
    11893  
    11894     union 
    11895     { 
    11896         struct 
    11897         { 
    11898             LPCTSTR pszTemplate; 
    11899         } 
    11900         struct 
    11901         { 
    11902             LPCDLGTEMPLATE pResource; 
    11903         } 
     12073 
     12074struct PROPSHEETPAGE 
     12075
     12076    DWORD dwSize; 
     12077    DWORD dwFlags; 
     12078    HINST hInstance; 
     12079    union { 
     12080        LPCTSTR pszTemplate; 
     12081        LPCDLGTEMPLATE pResource; 
    1190412082    } 
    11905 
    11906  
    11907  
    11908 struct PROPSHEETPAGE_U2 
     12083    union { 
     12084        HICON hIcon; 
     12085        LPCTSTR pszIcon; 
     12086    } 
     12087    LPCTSTR pszTitle; 
     12088    DLGPROC pfnDlgProc; 
     12089    LPARAM lParam; 
     12090    LPFNPSPCALLBACK pfnCallback; 
     12091    UINT* pcRefParent; 
     12092//if (_WIN32_IE >= 0x0500) 
     12093    LPCTSTR pszHeaderTitle; 
     12094    LPCTSTR pszHeaderSubTitle; 
     12095//endif 
     12096//if (_WIN32_WINNT >= 0x0501) 
     12097    HANDLE hActCtx; 
     12098//endif 
     12099
     12100 
     12101alias PROPSHEETPAGE* LPPROPSHEETPAGE; 
     12102alias PROPSHEETPAGE* LPCPROPSHEETPAGE; 
     12103alias PROPSHEETPAGE _PROPSHEETPAGE; 
     12104alias PROPSHEETPAGE TPROPSHEETPAGE; 
     12105alias PROPSHEETPAGE* PPROPSHEETPAGE; 
     12106 
     12107struct EMPTYRECORD 
     12108
     12109
     12110 
     12111alias EMPTYRECORD* HPROPSHEETPAGE; 
     12112 
     12113struct PROPSHEETHEADER_U1 
    1190912114{ 
    1191012115 
     
    1192312128 
    1192412129 
    11925 struct PROPSHEETPAGE 
    11926 { 
    11927     DWORD dwSize; 
    11928     DWORD dwFlags; 
    11929     HINST hInstance; 
    11930     PROPSHEETPAGE_U1 u1; 
    11931     PROPSHEETPAGE_U2 u2; 
    11932     LPCTSTR pszTitle; 
    11933     DLGPROC pfnDlgProc; 
    11934     LPARAM lParam; 
    11935     LPFNPSPCALLBACK pfnCallback; 
    11936     UINT* pcRefParent; 
    11937 } 
    11938  
    11939 alias PROPSHEETPAGE* LPPROPSHEETPAGE; 
    11940 alias PROPSHEETPAGE* LPCPROPSHEETPAGE; 
    11941 alias PROPSHEETPAGE _PROPSHEETPAGE; 
    11942 alias PROPSHEETPAGE TPROPSHEETPAGE; 
    11943 alias PROPSHEETPAGE* PPROPSHEETPAGE; 
    11944  
    11945 struct EMPTYRECORD 
    11946 { 
    11947 } 
    11948  
    11949 alias EMPTYRECORD* HPROPSHEETPAGE; 
    11950  
    11951 struct PROPSHEETHEADER_U1 
    11952 { 
    11953  
    11954     union 
    11955     { 
    11956         struct 
    11957         { 
    11958             HICON hIcon; 
    11959         } 
    11960         struct 
    11961         { 
    11962             LPCTSTR pszIcon; 
    11963         } 
    11964     } 
    11965 } 
    11966  
    11967  
    1196812130struct PROPSHEETHEADER_U2 
    1196912131{ 
     
    1201212174    PROPSHEETHEADER_U3 u3; 
    1201312175    PFNPROPSHEETCALLBACK pfnCallback; 
     12176//if (_WIN32_IE >= 0x0400) 
     12177    union { 
     12178        HBITMAP hbmWatermark; 
     12179        LPCTSTR pszbmWatermark; 
     12180    } 
     12181    HPALETTE hplWatermark; 
     12182    union { 
     12183        HBITMAP hbmHeader;  
     12184        LPCSTR pszbmHeader; 
     12185    } 
     12186//endif 
    1201412187} 
    1201512188 
     
    1218312356    DWORD dwSize; 
    1218412357    DWORD dwError; 
    12185     TCHAR[1 + (RAS_MaxIpAddress+1)-1] szIpAddress; 
     12358    TCHAR[RAS_MaxIpAddress+1] szIpAddress; 
    1218612359} 
    1218712360 
     
    1221712390struct RASTERIZER_STATUS 
    1221812391{ 
    12219     int nSize; 
    12220     int wFlags; 
    12221     int nLanguageID; 
     12392    short nSize; 
     12393    short wFlags; 
     12394    short nLanguageID; 
    1222212395} 
    1222312396 
     
    1234612519    DWORD iBaudRate; 
    1234712520    DWORD iPortState; 
     12521    UINT  iActive; 
    1234812522} 
    1234912523 
     
    1246012634alias FILEOP_FLAGS* PFILEOPFLAGS; 
    1246112635 
    12462 struct SHFILEOPSTRUCT 
     12636align(2) struct SHFILEOPSTRUCT 
    1246312637{ 
    1246412638    HWND hwnd; 
     
    1260512779{ 
    1260612780    DWORD dwStyle; 
    12607     char[1 + 31] szDescription; 
     12781    TCHAR[1 + 31] szDescription; 
    1260812782} 
    1260912783 
     
    1263512809alias SYSTEM_AUDIT_ACE* PSYSTEMAUDITACE; 
    1263612810 
    12637 struct SYSTEM_INFO_U 
    12638 
    12639  
    12640     union 
    12641     { 
    12642         struct 
    12643         { 
    12644             DWORD dwOemId; 
    12645         } 
    12646         struct 
    12647         { 
    12648             ushort wProcessorArchitecture; 
    12649             ushort wReserved; 
     12811struct SYSTEM_INFO { 
     12812    union { 
     12813        DWORD dwOemId; 
     12814        struct { 
     12815            WORD wProcessorArchitecture; 
     12816            WORD wReserved; 
    1265012817        } 
    1265112818    } 
    12652 } 
    12653  
    12654  
    12655 struct SYSTEM_INFO 
    12656 { 
    12657     SYSTEM_INFO_U u; 
    1265812819    DWORD dwPageSize; 
    1265912820    LPVOID lpMinimumApplicationAddress; 
    1266012821    LPVOID lpMaximumApplicationAddress; 
    12661     DWORD dwActiveProcessorMask; 
     12822    DWORD_PTR dwActiveProcessorMask; 
    1266212823    DWORD dwNumberOfProcessors; 
    1266312824    DWORD dwProcessorType; 
    1266412825    DWORD dwAllocationGranularity; 
    12665     ushort wProcessorLevel; 
    12666     ushort wProcessorRevision; 
     12826    WORD wProcessorLevel; 
     12827    WORD wProcessorRevision; 
    1266712828} 
    1266812829 
     
    1268912850struct TAPE_ERASE 
    1269012851{ 
    12691     ULONG _Type; 
     12852    DWORD Type; 
     12853    BOOLEAN Immediate; 
    1269212854} 
    1269312855 
     
    1274212904struct TAPE_PREPARE 
    1274312905{ 
    12744     ULONG Operation; 
     12906    DWORD    Operation; 
     12907    BOOLEAN  Immediate; 
    1274512908} 
    1274612909 
     
    1277512938    ULONG Method; 
    1277612939    ULONG Partition; 
    12777     ULONG OffsetLow
    12778     ULONG OffsetHigh
     12940    LARGE_INTEGER Offset
     12941    BOOLEAN Immediate
    1277912942} 
    1278012943 
     
    1278712950    ULONG _Type; 
    1278812951    ULONG Count; 
     12952    BOOLEAN Immediate; 
    1278912953} 
    1279012954 
     
    1281012974    BYTE    fsStyle; 
    1281112975//#ifdef _WIN64 
    12812 //    BYTE     bReserved[6]     // padding for alignment 
     12976//    BYTE     bReserved[6];     // padding for alignment 
    1281312977//#elif defined(_WIN32) 
    12814 //    BYTE     bReserved[2]     // padding for alignment 
     12978    BYTE     bReserved[2];     // padding for alignment 
    1281512979//#endif 
    1281612980    DWORD_PTR   dwData; 
     
    1282412988alias TBBUTTON* PTBBUTTON; 
    1282512989 
    12826 struct TBNOTIFY 
    12827 
    12828     NMHDR hdr; 
    12829     int iItem; 
     12990struct NMTOOLBARA { 
     12991    align(2): 
     12992    NMHDR    hdr; 
     12993    int      iItem; 
    1283012994    TBBUTTON tbButton; 
    12831     int cchText; 
    12832     LPTSTR pszText; 
    12833 
     12995    int      cchText; 
     12996    LPSTR   pszText; 
     12997    RECT     rcButton; 
     12998
     12999struct NMTOOLBARW { 
     13000    align(2): 
     13001    NMHDR    hdr; 
     13002    int      iItem; 
     13003    TBBUTTON tbButton; 
     13004    int      cchText; 
     13005    LPWSTR   pszText; 
     13006    RECT     rcButton; 
     13007
     13008version(Win32SansUnicode){ 
     13009    alias NMTOOLBARA NMTOOLBAR; 
     13010}else{ 
     13011    alias NMTOOLBARW NMTOOLBAR; 
     13012
     13013alias NMTOOLBAR* LPNMTOOLBAR; 
     13014 
     13015alias NMTOOLBAR TBNOTIFY; 
    1283413016 
    1283513017alias TBNOTIFY* LPTBNOTIFY; 
     
    1288713069alias TC_ITEMHEADER* PTCITEMHEADER; 
    1288813070 
    12889 struct TC_KEYDOWN 
     13071align(1) struct NMTCKEYDOWN 
    1289013072{ 
    1289113073    NMHDR hdr; 
    12892     ushort wVKey; 
     13074    WORD wVKey; 
    1289313075    UINT flags; 
    1289413076} 
    1289513077 
     13078alias NMTCKEYDOWN TC_KEYDOWN; 
    1289613079alias TC_KEYDOWN _TC_KEYDOWN; 
    1289713080alias TC_KEYDOWN TTCKEYDOWN; 
     
    1299813181{ 
    1299913182    DWORD PrivilegeCount; 
    13000     LUID_AND_ATTRIBUTES[1 + ANYSIZE_ARRAY-1] Privileges; 
     13183    LUID_AND_ATTRIBUTES[ANYSIZE_ARRAY] Privileges; 
    1300113184} 
    1300213185 
     
    1304313226    HINST hinst; 
    1304413227    LPSTR lpszText; 
     13228//if (_WIN32_IE >= 0x0300) 
     13229    LPARAM lParam; 
     13230//endif 
     13231//if (_WIN32_WINNT >= 0x0501) 
     13232    void *lpReserved; 
     13233//endif 
    1304513234} 
    1304613235struct TOOLINFOW 
     
    1305313242    HINST hinst; 
    1305413243    LPWSTR lpszText; 
     13244//if (_WIN32_IE >= 0x0300) 
     13245    LPARAM lParam; 
     13246//endif 
     13247//if (_WIN32_WINNT >= 0x0501) 
     13248    void *lpReserved; 
     13249//endif 
     13250 
    1305513251} 
    1305613252version(Win32SansUnicode) 
     
    1306613262alias TOOLINFO* PTOOLINFO; 
    1306713263 
    13068 struct TOOLTIPTEXTA 
    13069 
     13264struct NMTTDISPINFOA { 
    1307013265    NMHDR hdr; 
    1307113266    LPSTR lpszText; 
    13072     CHAR[80] szText
    13073     HINST hinst; 
     13267    char szText[80]
     13268    HINSTANCE hinst; 
    1307413269    UINT uFlags; 
    13075 
    13076 struct TOOLTIPTEXTW 
    13077 
     13270    LPARAM lParam; 
     13271
     13272 
     13273struct NMTTDISPINFOW { 
    1307813274    NMHDR hdr; 
    1307913275    LPWSTR lpszText; 
    13080     WCHAR[80] szText
    13081     HINST hinst; 
     13276    WCHAR szText[80]
     13277    HINSTANCE hinst; 
    1308213278    UINT uFlags; 
    13083 
     13279    LPARAM lParam; 
     13280
     13281version(Win32SansUnicode){ 
     13282    alias NMTTDISPINFOA NMTTDISPINFO; 
     13283} else { 
     13284    alias NMTTDISPINFOW NMTTDISPINFO; 
     13285
     13286 
     13287 
     13288alias NMTTDISPINFOA TOOLTIPTEXTA; 
     13289alias NMTTDISPINFOW TOOLTIPTEXTW; 
    1308413290version(Win32SansUnicode) 
    1308513291{ 
     
    1317913385    HTREEITEM hParent; 
    1318013386    HTREEITEM hInsertAfter; 
    13181     TVITEMA item; 
     13387    union { 
     13388        TVITEMEXA itemex; 
     13389        TVITEMA item; 
     13390    } 
    1318213391} 
    1318313392struct TVINSERTSTRUCTW 
     
    1318513394    HTREEITEM hParent; 
    1318613395    HTREEITEM hInsertAfter; 
    13187     TVITEMW item; 
     13396    union { 
     13397        TVITEMEXW itemex; 
     13398        TVITEMW item; 
     13399    } 
    1318813400} 
    1318913401version(Win32SansUnicode) 
     
    1320213414alias TVINSERTSTRUCT* PTVINSERTSTRUCT; 
    1320313415 
    13204 struct TV_KEYDOWN 
     13416align(2) struct TV_KEYDOWN 
    1320513417{ 
    1320613418    NMHDR hdr; 
     
    1383114043alias int MMRESULT; 
    1383214044alias TWAVEFORMATEX* PWAVEFORMATEX; 
     14045alias TWAVEFORMATEX WAVEFORMATEX; 
    1383314046 
    1383414047align(1) struct TWAVEFORMATEX 
     
    1388214095alias HANDLE HMONITOR; 
    1388314096 
    13884 struct tagMONITORINFOEX 
     14097struct MONITORINFOEX 
    1388514098{ 
    1388614099    DWORD  cbSize; 
     
    1389014103    TCHAR  szDevice[CCHDEVICENAME]; 
    1389114104} 
    13892 alias tagMONITORINFOEX MONITORINFOEX; 
    1389314105alias MONITORINFOEX* LPMONITORINFOEX; 
    1389414106 
    13895 struct tagMONITORINFO 
     14107struct MONITORINFO 
    1389614108{ 
    1389714109    DWORD  cbSize; 
     
    1390014112    DWORD  dwFlags; 
    1390114113} 
    13902 alias tagMONITORINFO MONITORINFO; 
    1390314114alias MONITORINFO* LPMONITORINFO; 
    1390414115 
     
    1406214273    TVITEM item; 
    1406314274} 
     14275 
     14276// only on Vista 
    1406414277struct NMTVITEMCHANGE { 
    1406514278    NMHDR hdr; 
     
    1452014733    int     fmt; 
    1452114734    LPARAM  lParam; 
     14735//#if (_WIN32_IE >= 0x0300) 
    1452214736    int     iImage; 
    1452314737    int     iOrder; 
     14738//#endif 
     14739//#if (_WIN32_IE >= 0x0500) 
     14740    UINT    type; 
     14741    void    *pvFilter; 
     14742//#endif 
     14743//#if _WIN32_WINNT >= 0x0600 
     14744//    UINT   state; 
     14745//#endif 
    1452414746} 
    1452514747struct HDITEMW { 
     
    1453114753    int     fmt; 
    1453214754    LPARAM  lParam; 
     14755//#if (_WIN32_IE >= 0x0300) 
    1453314756    int     iImage; 
    1453414757    int     iOrder; 
     14758//#endif 
     14759//#if (_WIN32_IE >= 0x0500) 
     14760    UINT    type; 
     14761    void    *pvFilter; 
     14762//#endif 
     14763//#if _WIN32_WINNT >= 0x0600 
     14764//    UINT   state; 
     14765//#endif 
    1453514766} 
    1453614767version(Win32SansUnicode){ 
     
    1458714818 
    1458814819 
    14589 struct LVCOLUMNA { 
    14590     UINT mask; 
    14591     int fmt; 
    14592     int cx; 
    14593     LPSTR pszText; 
    14594     int cchTextMax; 
    14595     int iSubItem; 
    14596     int iImage; 
    14597     int iOrder; 
    14598 } 
    14599 struct LVCOLUMNW { 
    14600     UINT mask; 
    14601     int fmt; 
    14602     int cx; 
    14603     LPWSTR pszText; 
    14604     int cchTextMax; 
    14605     int iSubItem; 
    14606     int iImage; 
    14607     int iOrder; 
    14608 } 
    14609 version(Win32SansUnicode){ 
    14610     alias LVCOLUMNA LVCOLUMN; 
    14611 }else{ 
    14612     alias LVCOLUMNW LVCOLUMN; 
    14613 } 
    14614 alias LVCOLUMN* LPLVCOLUMN; 
    1461514820 
    1461614821struct LVFINDINFOA { 
     
    1463714842} 
    1463814843 
    14639 struct LVHITTESTINFO 
    14640 { 
    14641     POINT pt; 
    14642     UINT flags; 
    14643     int iItem; 
    14644     int iSubItem; 
    14645 } 
    14646  
    14647  
    14648 struct LVITEMA { 
    14649     UINT   mask; 
    14650     int    iItem; 
    14651     int    iSubItem; 
    14652     UINT   state; 
    14653     UINT   stateMask; 
    14654     LPSTR  pszText; 
    14655     int    cchTextMax; 
    14656     int    iImage; 
    14657     LPARAM lParam; 
    14658     int iIndent; 
    14659 } 
    14660 struct LVITEMW { 
    14661     UINT   mask; 
    14662     int    iItem; 
    14663     int    iSubItem; 
    14664     UINT   state; 
    14665     UINT   stateMask; 
    14666     LPWSTR  pszText; 
    14667     int    cchTextMax; 
    14668     int    iImage; 
    14669     LPARAM lParam; 
    14670     int iIndent; 
    14671 } 
    14672 version(Win32SansUnicode){ 
    14673     alias LVITEMA LVITEM; 
    14674 }else{ 
    14675     alias LVITEMW LVITEM; 
    14676 } 
    14677 alias LVITEM* LPLVITEM; 
    1467814844 
    1467914845struct MARGINS { 
     
    1468914855  HMENU hMenu; 
    1469014856  HWND  hwndMenu; 
    14691   BOOL  fBarFocused; 
    14692   BOOL  fFocused; 
    14693 }alias MENUBARINFO* PMENUBARINFO, LPMENUBARINFO; 
     14857  BOOL  flags; 
     14858    //fBarFocused : 1; 
     14859    //fFocused    : 1; 
     14860
     14861alias MENUBARINFO* PMENUBARINFO; 
     14862alias MENUBARINFO* LPMENUBARINFO; 
    1469414863 
    1469514864struct MENUINFO { 
     
    1488115050    int iSubItem; 
    1488215051//#endif 
     15052//if (_WIN32_IE >= 0x560) 
     15053    DWORD dwItemType; 
     15054    // Item Custom Draw  
     15055    COLORREF clrFace; 
     15056    int iIconEffect; 
     15057    int iIconPhase; 
     15058    int iPartId; 
     15059    int iStateId; 
     15060    // Group Custom Draw 
     15061    RECT rcText; 
     15062    UINT uAlign; 
     15063//endif 
    1488315064} 
    1488415065 
     
    1493415115    int dwItemSpec; 
    1493515116} 
    14936 struct NMTOOLBARA { 
    14937     align(2): 
    14938     NMHDR    hdr; 
    14939     int      iItem; 
    14940     TBBUTTON tbButton; 
    14941     int      cchText; 
    14942     LPSTR   pszText; 
    14943 
    14944 struct NMTOOLBARW { 
    14945     align(2): 
    14946     NMHDR    hdr; 
    14947     int      iItem; 
    14948     TBBUTTON tbButton; 
    14949     int      cchText; 
    14950     LPWSTR   pszText; 
    14951 
    14952 version(Win32SansUnicode){ 
    14953     alias NMTOOLBARA NMTOOLBAR; 
    14954 }else{ 
    14955     alias NMTOOLBARW NMTOOLBAR; 
    14956 
    14957 alias NMTOOLBAR* LPNMTOOLBAR; 
    14958  
    14959  
    14960 struct NMTTDISPINFOA { 
    14961     NMHDR hdr; 
    14962     LPSTR lpszText; 
    14963     char szText[80]; 
    14964     HINSTANCE hinst; 
    14965     UINT uFlags; 
    14966     LPARAM lParam; 
    14967 
    14968  
    14969 struct NMTTDISPINFOW { 
    14970     NMHDR hdr; 
    14971     LPWSTR lpszText; 
    14972     WCHAR szText[80]; 
    14973     HINSTANCE hinst; 
    14974     UINT uFlags; 
    14975     LPARAM lParam; 
    14976 
    14977 version(Win32SansUnicode){&n