PSH_WIZARD97 patch

Francois Gouget fgouget at free.fr
Tue Dec 3 18:35:12 CST 2002


In his email jaymz at free.fr mentioned that he had to uncomment the
definition of PSH_WIZARD97. PSH_WIZARD97 is a bit tricky:
 * the Windows headers give it one of two values depending on _WIN32_IE.
However in Wine we don't usually depend on such macros, although we do
define this one in winresrc.h.
 * we probably don't want any of our code to use PSH_WIZARD97 directly,
the same way we don't want our code to use xxx instead of xxxA or xxxW.

So what I've done is:
 * define PSH_WIZARD97_OLD and PSH_WIZARD97_NEW in prsht.h
 * and if __WINE__ is not defined (i.e. we are not compiling Wine), then
use _WIN32_IE and point PSH_WIZARD97 to one of the other macros
 * if _WIN32_IE is not defined then we point PSH_WIZARD97 to the latest
value which is consistent with our other 'defaults'

Changelog:

 * dlls/comctl32/propsheet.c,
   include/prsht.h

   Define PSH_WIZARD97 (problem reported by jaymz at free.fr)


Index: dlls/comctl32/propsheet.c
===================================================================
RCS file: /home/wine/wine/dlls/comctl32/propsheet.c,v
retrieving revision 1.75
diff -u -r1.75 propsheet.c
--- dlls/comctl32/propsheet.c	25 Nov 2002 02:45:19 -0000	1.75
+++ dlls/comctl32/propsheet.c	4 Dec 2002 00:22:14 -0000
@@ -112,8 +112,6 @@
 #define MAX_TABTEXT_LENGTH 255
 #define MAX_BUTTONTEXT_LENGTH 64

-#define PSH_WIZARD97_OLD   0x00002000
-#define PSH_WIZARD97_NEW   0x01000000
 #define INTRNL_ANY_WIZARD (PSH_WIZARD | PSH_WIZARD97_OLD | PSH_WIZARD97_NEW | PSH_WIZARD_LITE)

 /******************************************************************************
Index: include/prsht.h
===================================================================
RCS file: /home/wine/wine/include/prsht.h,v
retrieving revision 1.21
diff -u -r1.21 prsht.h
--- include/prsht.h	16 Sep 2002 19:29:36 -0000	1.21
+++ include/prsht.h	4 Dec 2002 00:33:40 -0000
@@ -253,10 +253,7 @@
 #define PSH_RTLREADING          0x0800
 #define PSH_WIZARDCONTEXTHELP   0x00001000

-     /*
-      * for below IE 5
-      * PSH_WIZARD97            0x00002000
-      */
+#define PSH_WIZARD97_OLD        0x00002000 /* for IE < 5 */
 #define PSH_WATERMARK           0x00008000
 #define PSH_USEHBMWATERMARK     0x00010000
 #define PSH_USEHPLWATERMARK     0x00020000
@@ -265,11 +262,15 @@
 #define PSH_USEHBMHEADER        0x00100000
 #define PSH_USEPAGELANG         0x00200000
 #define PSH_WIZARD_LITE         0x00400000
-     /*
-      * for IE 5 and above
-      * PSH_WIZARD97            0x01000000
-      */
+#define PSH_WIZARD97_NEW        0x01000000 /* for IE >= 5 */
 #define PSH_NOCONTEXTHELP       0x02000000
+#ifndef __WINE__
+# if _WIN32_IE < 0x0500
+#  define PSH_WIZARD97          PSH_WIZARD97_OLD
+# else
+#  define PSH_WIZARD97          PSH_WIZARD97_NEW
+# endif
+#endif

 #define PSCB_INITIALIZED  1
 #define PSCB_PRECREATE    2



-- 
Francois Gouget         fgouget at free.fr        http://fgouget.free.fr/
 The greatest programming project of all took six days; on the seventh day the
  programmer rested. We've been trying to debug the *&^%$#@ thing ever since.
                      Moral: design before you implement.




More information about the wine-patches mailing list