diff dwt/internal/win32/WINTYPES.d @ 253:fbb9174f2a2c

Reuse the tango windows api
author Frank Benoit <benoit@tionex.de>
date Fri, 11 Jul 2008 23:01:25 +0200
parents b3dbd786541a
children af384beab7b5
line wrap: on
line diff
--- a/dwt/internal/win32/WINTYPES.d	Sun Jul 06 18:45:41 2008 +0200
+++ b/dwt/internal/win32/WINTYPES.d	Fri Jul 11 23:01:25 2008 +0200
@@ -8,7 +8,10 @@
     adopted form tango
     Author:     Trevor Parscal
 */
-
+version(TANGOSVN){
+    public import tango.sys.win32.Types;
+}
+else{ // !TANGOSVN
 /+ Aliases, Types, and Constants +/
 const void* NULL = null;
 alias int SCODE;
@@ -19,11 +22,11 @@
 alias WINBOOL BOOL;
 alias uint CALTYPE;
 alias uint CALID;
-alias ubyte CCHAR;
-alias ubyte* PCHAR;
+alias char CCHAR;
+alias char* PCHAR;
 alias uint COLORREF;
 alias uint TCOLORREF;
-alias ubyte CHAR;
+alias char CHAR;
 alias ubyte BYTE;
 alias short INT16;
 alias ushort UINT16;
@@ -37,10 +40,11 @@
 alias uint UINT_PTR;
 alias int LONG_PTR;
 alias uint ULONG_PTR;
+alias DWORD DWORD_PTR;
 alias uint PROPID;
 const BOOL FALSE = 0;
 const BOOL TRUE = -1;
-alias ubyte* PANSICHAR;
+alias char* PANSICHAR;
 alias wchar* PWIDECHAR;
 alias int* PINTEGER;
 alias long LONGLONG;
@@ -156,7 +160,10 @@
 alias ubyte TBYTE;
 
 version(Win32SansUnicode){
-    alias ubyte  TCHAR;
+    // Strictly speaking this should be ubyte since char is UTF-8, but that
+    // fills code with so many casts that it's just not sensible.
+    // (See also DMD Issue 2193.)
+    alias  char TCHAR;
 }else{
     alias wchar TCHAR;
 }
@@ -2877,7 +2884,7 @@
     RDW_ALLCHILDREN = (128),
     RDW_NOCHILDREN = (64),
 /*
-   //
+    //
     HKEY_CLASSES_ROOT = (0x80000000),
     HKEY_CURRENT_USER = (0x80000001),
     HKEY_LOCAL_MACHINE = (0x80000002),
@@ -6827,28 +6834,52 @@
     alias LOGFONTW* LPLOGFONT;
 }
 
-struct TCHOOSEFONT
-{
-    DWORD lStructSize;
-    HWND hwndOwner;
-    HDC hDC;
-    LPLOGFONT lpLogFont;
-    INT iPointSize;
-    DWORD Flags;
-    DWORD rgbColors;
-    LPARAM lCustData;
+struct CHOOSEFONTA {
+    DWORD        lStructSize;
+    HWND         hwndOwner;
+    HDC          hDC;
+    LPLOGFONTA   lpLogFont;
+    INT          iPointSize;
+    DWORD        Flags;
+    DWORD        rgbColors;
+    LPARAM       lCustData;
     LPCFHOOKPROC lpfnHook;
-    LPCTSTR lpTemplateName;
-    HINST hInstance;
-    LPTSTR lpszStyle;
-    ushort nFontType;
-    ushort ___MISSING_ALIGNMENT__;
-    INT nSizeMin;
-    INT nSizeMax;
-}
-
-alias TCHOOSEFONT* LPCHOOSEFONT;
-alias TCHOOSEFONT* PCHOOSEFONT;
+    LPCSTR      lpTemplateName;
+    HINSTANCE    hInstance;
+    LPSTR       lpszStyle;
+    WORD         nFontType;
+    WORD         ___MISSING_ALIGNMENT__;
+    INT          nSizeMin;
+    INT          nSizeMax;
+}alias CHOOSEFONTA* PCHOOSEFONTA, LPCHOOSEFONTA;
+
+struct CHOOSEFONTW {
+    DWORD        lStructSize;
+    HWND         hwndOwner;
+    HDC          hDC;
+    LOGFONTW*    lpLogFont;
+    INT          iPointSize;
+    DWORD        Flags;
+    DWORD        rgbColors;
+    LPARAM       lCustData;
+    LPCFHOOKPROC lpfnHook;
+    LPCWSTR      lpTemplateName;
+    HINSTANCE    hInstance;
+    LPWSTR       lpszStyle;
+    WORD         nFontType;
+    WORD         ___MISSING_ALIGNMENT__;
+    INT          nSizeMin;
+    INT          nSizeMax;
+}alias CHOOSEFONTW* PCHOOSEFONTW, LPCHOOSEFONTW;
+version(Win32SansUnicode){
+    alias CHOOSEFONTA CHOOSEFONT;
+}else{
+    alias CHOOSEFONTW CHOOSEFONT;
+}
+
+alias CHOOSEFONT* LPCHOOSEFONT;
+alias CHOOSEFONT* PCHOOSEFONT;
+alias CHOOSEFONT TCHOOSEFONT;
 
 struct CIDA
 {
@@ -8002,6 +8033,7 @@
 alias DOCINFO* LPDOCINFO;
 alias DOCINFO* PDOCINFO;
 
+
 struct DRAGLISTINFO
 {
     UINT uNotification;
@@ -11582,34 +11614,67 @@
 alias PREVENT_MEDIA_REMOVAL TPREVENTMEDIAREMOVAL;
 alias PREVENT_MEDIA_REMOVAL* PPREVENTMEDIAREMOVAL;
 
-align(1) struct TPRINTDLG
-{
-    DWORD lStructSize;
-    HWND hwndOwner;
-    HANDLE hDevMode;
-    HANDLE hDevNames;
-    HDC hDC;
-    DWORD Flags;
-    ushort nFromPage;
-    ushort nToPage;
-    ushort nMinPage;
-    ushort nMaxPage;
-    ushort nCopies;
-    HINST hInstance;
-    DWORD lCustData;
+struct PRINTDLGA {  // pd
+    align(2):
+    DWORD     lStructSize;
+    HWND      hwndOwner;
+    HANDLE    hDevMode;
+    HANDLE    hDevNames;
+    HDC       hDC;
+    DWORD     Flags;
+    WORD      nFromPage;
+    WORD      nToPage;
+    WORD      nMinPage;
+    WORD      nMaxPage;
+    WORD      nCopies;
+    HINSTANCE hInstance;
+    DWORD     lCustData;
     LPPRINTHOOKPROC lpfnPrintHook;
     LPSETUPHOOKPROC lpfnSetupHook;
-    LPCTSTR lpPrintTemplateName;
-    LPCTSTR lpSetupTemplateName;
-    HANDLE hPrintTemplate;
-    HANDLE hSetupTemplate;
-}
-
-alias TPRINTDLG* LPPRINTDLG;
-alias TPRINTDLG* PPRINTDLG;
-alias TPRINTDLG TAGPD;
-alias TPRINTDLG TPD;
-alias TPRINTDLG* PPD;
+    LPCSTR    lpPrintTemplateName;
+    LPCSTR    lpSetupTemplateName;
+    HANDLE    hPrintTemplate;
+    HANDLE    hSetupTemplate;
+}
+alias PRINTDLGA* PPRINTDLGA;
+alias PRINTDLGA* LPPRINTDLGA;
+struct PRINTDLGW {  // pd
+    align(2):
+    DWORD     lStructSize;
+    HWND      hwndOwner;
+    HANDLE    hDevMode;
+    HANDLE    hDevNames;
+    HDC       hDC;
+    DWORD     Flags;
+    WORD      nFromPage;
+    WORD      nToPage;
+    WORD      nMinPage;
+    WORD      nMaxPage;
+    WORD      nCopies;
+    HINSTANCE hInstance;
+    DWORD     lCustData;
+    LPPRINTHOOKPROC lpfnPrintHook;
+    LPSETUPHOOKPROC lpfnSetupHook;
+    LPCWSTR    lpPrintTemplateName;
+    LPCWSTR    lpSetupTemplateName;
+    HANDLE    hPrintTemplate;
+    HANDLE    hSetupTemplate;
+}
+alias PRINTDLGW* PPRINTDLGW;
+alias PRINTDLGW* LPPRINTDLGW;
+
+version(Win32SansUnicode){
+    alias PRINTDLGA PRINTDLG;
+}else{
+    alias PRINTDLGW PRINTDLG;
+}
+
+
+alias PRINTDLG* LPPRINTDLG;
+alias PRINTDLG* PPRINTDLG;
+alias PRINTDLG TAGPD;
+alias PRINTDLG TPD;
+alias PRINTDLG* PPD;
 
 struct PRINTER_DEFAULTS
 {
@@ -13453,7 +13518,7 @@
 alias NETCONNECTINFOSTRUCT TNETCONNECTINFOSTRUCT;
 alias NETCONNECTINFOSTRUCT* PNETCONNECTINFOSTRUCT;
 extern(Windows){
-alias int (*ENUMMETAFILEPROC)(HDC, HANDLETABLE, METARECORD, int, LPARAM);
+alias int (*ENUMMETAFILEPROC)(HDC, HANDLETABLE*, METARECORD*, int, LPARAM);
 alias int (*ENHMETAFILEPROC)(HDC, HANDLETABLE*, ENHMETARECORD*, int, LPARAM);
 alias int (*ENUMFONTSPROC)(LPLOGFONT, LPTEXTMETRIC, DWORD, LPARAM);
 alias int (*FONTENUMPROC)(ENUMLOGFONT*, NEWTEXTMETRIC*, int, LPARAM);
@@ -13914,6 +13979,8 @@
 int CO_E_RELEASED = (DWORD)((0x800401FF));
 */
 
+} // !TANGOSVN
+
 ///////////////////////////////////////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////////////////////////////////////
 
@@ -14062,7 +14129,7 @@
 alias DWORD LGRPID;
 //alias LONG LONG_PTR;
 //alias ULONG ULONG_PTR;
-alias DWORD DWORD_PTR;
+//alias DWORD DWORD_PTR;
 //alias int INT_PTR;
 //alias uint UINT_PTR;
 // alias DWORD LCID;
@@ -14208,53 +14275,6 @@
 
 
 
-struct CHOOSEFONTA {
-    // sizeof = 60 ???
-//  align(2):
-    DWORD        lStructSize;
-    HWND         hwndOwner;
-    HDC          hDC;
-    LPLOGFONTA   lpLogFont;
-    INT          iPointSize;
-    DWORD        Flags;
-    DWORD        rgbColors;
-    LPARAM       lCustData;
-    LPCFHOOKPROC lpfnHook;
-    LPCSTR      lpTemplateName;
-    HINSTANCE    hInstance;
-    LPSTR       lpszStyle;
-    WORD         nFontType;
-    WORD         ___MISSING_ALIGNMENT__;
-    INT          nSizeMin;
-    INT          nSizeMax;
-}alias CHOOSEFONTA* PCHOOSEFONTA, LPCHOOSEFONTA;
-
-struct CHOOSEFONTW {
-    // sizeof = 60 ???
-//  align(2):
-    DWORD        lStructSize;
-    HWND         hwndOwner;
-    HDC          hDC;
-    LOGFONTW*    lpLogFont;
-    INT          iPointSize;
-    DWORD        Flags;
-    DWORD        rgbColors;
-    LPARAM       lCustData;
-    LPCFHOOKPROC lpfnHook;
-    LPCWSTR      lpTemplateName;
-    HINSTANCE    hInstance;
-    LPWSTR       lpszStyle;
-    WORD         nFontType;
-    WORD         ___MISSING_ALIGNMENT__;
-    INT          nSizeMin;
-    INT          nSizeMax;
-}alias CHOOSEFONTW* PCHOOSEFONTW, LPCHOOSEFONTW;
-version(Win32SansUnicode){
-    alias CHOOSEFONTA CHOOSEFONT;
-}else{
-    alias CHOOSEFONTW CHOOSEFONT;
-}
-
 struct COMBOBOXINFO {
     DWORD cbSize;
     RECT rcItem;
@@ -15086,58 +15106,6 @@
 //}
 
 
-struct PRINTDLGA {  // pd
-    align(2):
-    DWORD     lStructSize;
-    HWND      hwndOwner;
-    HANDLE    hDevMode;
-    HANDLE    hDevNames;
-    HDC       hDC;
-    DWORD     Flags;
-    WORD      nFromPage;
-    WORD      nToPage;
-    WORD      nMinPage;
-    WORD      nMaxPage;
-    WORD      nCopies;
-    HINSTANCE hInstance;
-    DWORD     lCustData;
-    LPPRINTHOOKPROC lpfnPrintHook;
-    LPSETUPHOOKPROC lpfnSetupHook;
-    LPCSTR    lpPrintTemplateName;
-    LPCSTR    lpSetupTemplateName;
-    HANDLE    hPrintTemplate;
-    HANDLE    hSetupTemplate;
-}
-alias PRINTDLGA* PPRINTDLGA, LPPRINTDLGA;
-struct PRINTDLGW {  // pd
-    align(2):
-    DWORD     lStructSize;
-    HWND      hwndOwner;
-    HANDLE    hDevMode;
-    HANDLE    hDevNames;
-    HDC       hDC;
-    DWORD     Flags;
-    WORD      nFromPage;
-    WORD      nToPage;
-    WORD      nMinPage;
-    WORD      nMaxPage;
-    WORD      nCopies;
-    HINSTANCE hInstance;
-    DWORD     lCustData;
-    LPPRINTHOOKPROC lpfnPrintHook;
-    LPSETUPHOOKPROC lpfnSetupHook;
-    LPCWSTR    lpPrintTemplateName;
-    LPCWSTR    lpSetupTemplateName;
-    HANDLE    hPrintTemplate;
-    HANDLE    hSetupTemplate;
-}
-alias PRINTDLGW* PPRINTDLGW, LPPRINTDLGW;
-version(Win32SansUnicode){
-    alias PRINTDLGA PRINTDLG;
-}else{
-    alias PRINTDLGW PRINTDLG;
-}
-
 struct REBARBANDINFOA {
     UINT        cbSize;
     UINT        fMask;