diff dwt/internal/win32/OS.d @ 263:27244095ce14

Fix struct sizes, based on a comparison to the values seen by C apps.
author Frank Benoit <benoit@tionex.de>
date Sat, 26 Jul 2008 02:08:41 +0200
parents 59f6b9f052ff
children 1a74c57e2d49
line wrap: on
line diff
--- a/dwt/internal/win32/OS.d	Thu Jul 24 23:02:48 2008 +0200
+++ b/dwt/internal/win32/OS.d	Sat Jul 26 02:08:41 2008 +0200
@@ -122,6 +122,24 @@
         return lgid & 0x3FF;
     }
 
+    public static int LVITEM_sizeof(){
+        return ( !OS.IsWinCE && OS.WIN32_VERSION >= OS.VERSION( 5, 1 )) ? LVITEM.sizeof : 40;
+    }
+    public static int MENUITEMINFO_sizeof(){
+        return ( !OS.IsWinCE && OS.WIN32_VERSION >= OS.VERSION( 5, 0 )) ? MENUITEMINFO.sizeof : 44;
+    }
+    public static int NMLVCUSTOMDRAW_sizeof(){
+        return ( !OS.IsWinCE && OS.WIN32_VERSION >= OS.VERSION( 5, 1 )) ? NMLVCUSTOMDRAW.sizeof : 60;
+    }
+    public static int NMLVDISPINFO_sizeof(){
+        return ( !OS.IsWinCE && OS.WIN32_VERSION >= OS.VERSION( 5, 1 )) ? NMLVDISPINFO.sizeof : 52;
+    }
+    public static int OPENFILENAME_sizeof(){
+        return ( !OS.IsWinCE && OS.WIN32_VERSION >= OS.VERSION( 5, 0 )) ? OPENFILENAME.sizeof : 76;
+    }
+    public static int TOOLINFO_sizeof(){
+        return ( !OS.IsWinCE && OS.WIN32_VERSION >= OS.VERSION( 5, 1 )) ? TOOLINFO.sizeof : 44;
+    }
 //     private static int getNOTIFYICONDATAA_V2_SIZE (){
 //         // hm, NOTIFYICONDATAA.dwInfoFlags.offsetof did not compile
 //         return IsWinCE ? NOTIFYICONDATAA.sizeof : cast(int)(&(cast(NOTIFYICONDATAA*)null).dwInfoFlags) + int.sizeof;