Removed #include of wingdi.h and windef.h from winuser.h (and resolved
the resulting compilation failures).

diff --git a/windows/caret.c b/windows/caret.c
index 33bb330..3534306 100644
--- a/windows/caret.c
+++ b/windows/caret.c
@@ -5,6 +5,8 @@
  * Copyright 1996 Frans van Dorsselaer
  */
 
+#include "windef.h"
+#include "wingdi.h"
 #include "wine/wingdi16.h"
 #include "wine/winuser16.h"
 #include "module.h"
diff --git a/windows/class.c b/windows/class.c
index c94e4e4..ce46c95 100644
--- a/windows/class.c
+++ b/windows/class.c
@@ -24,6 +24,8 @@
 #include "winproc.h"
 #include "debugtools.h"
 #include "winerror.h"
+#include "windef.h"
+#include "wingdi.h"
 #include "wine/winuser16.h"
 
 DEFAULT_DEBUG_CHANNEL(class)
diff --git a/windows/clipboard.c b/windows/clipboard.c
index 69d3b09..91540af 100644
--- a/windows/clipboard.c
+++ b/windows/clipboard.c
@@ -23,6 +23,8 @@
 #include <fcntl.h>
 #include <unistd.h>
 #include <string.h>
+#include "windef.h"
+#include "wingdi.h"
 #include "winuser.h"
 #include "wine/winuser16.h"
 #include "wine/winbase16.h"
diff --git a/windows/dce.c b/windows/dce.c
index 88fa67b..112a320 100644
--- a/windows/dce.c
+++ b/windows/dce.c
@@ -29,6 +29,8 @@
 #include "local.h"
 #include "module.h"
 #include "debugtools.h"
+#include "windef.h"
+#include "wingdi.h"
 #include "wine/winbase16.h"
 #include "wine/winuser16.h"
 
diff --git a/windows/defdlg.c b/windows/defdlg.c
index 133dd09..c35bf2c 100644
--- a/windows/defdlg.c
+++ b/windows/defdlg.c
@@ -5,6 +5,8 @@
  *
  */
 
+#include "windef.h"
+#include "wingdi.h"
 #include "wine/winuser16.h"
 #include "dialog.h"
 #include "win.h"
diff --git a/windows/defwnd.c b/windows/defwnd.c
index 13d8c2d..97d5351 100644
--- a/windows/defwnd.c
+++ b/windows/defwnd.c
@@ -17,6 +17,8 @@
 #include "spy.h"
 #include "tweak.h"
 #include "cache.h"
+#include "windef.h"
+#include "wingdi.h"
 #include "wine/winuser16.h"
 
 DEFAULT_DEBUG_CHANNEL(win)
diff --git a/windows/dialog.c b/windows/dialog.c
index 3d9b73d..6daab68 100644
--- a/windows/dialog.c
+++ b/windows/dialog.c
@@ -8,7 +8,10 @@
 #include <errno.h>
 #include <limits.h>
 #include <stdlib.h>
+#include <stdio.h>
 #include <string.h>
+#include "windef.h"
+#include "wingdi.h"
 #include "winuser.h"
 #include "windowsx.h"
 #include "wine/winuser16.h"
@@ -23,7 +26,7 @@
 #include "message.h"
 #include "debugtools.h"
 
-DEFAULT_DEBUG_CHANNEL(dialog)
+DEFAULT_DEBUG_CHANNEL(dialog);
 
 
   /* Dialog control information */
diff --git a/windows/dinput.c b/windows/dinput.c
index 696e533..d6e9a75 100644
--- a/windows/dinput.c
+++ b/windows/dinput.c
@@ -48,6 +48,8 @@
 #include "sysmetrics.h"
 #include "winbase.h"
 #include "winerror.h"
+#include "windef.h"
+#include "wingdi.h"
 #include "winuser.h"
 
 DEFAULT_DEBUG_CHANNEL(dinput)
diff --git a/windows/driver.c b/windows/driver.c
index aee0e9d..0899be7 100644
--- a/windows/driver.c
+++ b/windows/driver.c
@@ -10,6 +10,8 @@
 
 #include <string.h>
 #include "heap.h"
+#include "windef.h"
+#include "wingdi.h"
 #include "winuser.h"
 #include "driver.h"
 #include "ldt.h"
diff --git a/windows/focus.c b/windows/focus.c
index db8cd3c..dc79a53 100644
--- a/windows/focus.c
+++ b/windows/focus.c
@@ -7,6 +7,8 @@
  *
  */
 
+#include "windef.h"
+#include "wingdi.h"
 #include "wine/winuser16.h"
 #include "win.h"
 #include "winpos.h"
diff --git a/windows/hook.c b/windows/hook.c
index 4ede6fa..ad8c728 100644
--- a/windows/hook.c
+++ b/windows/hook.c
@@ -14,6 +14,8 @@
  * handle in the low 16 bits and of a HOOK_MAGIC value in the high 16 bits.
  */
 
+#include "windef.h"
+#include "wingdi.h"
 #include "winuser.h"
 #include "wine/winuser16.h"
 #include "wine/winbase16.h"
diff --git a/windows/input.c b/windows/input.c
index 37cf1da..1e67fccc 100644
--- a/windows/input.c
+++ b/windows/input.c
@@ -11,9 +11,12 @@
 
 #include <stdlib.h>
 #include <string.h>
+#include <stdio.h>
 #include <ctype.h>
 #include <assert.h>
 
+#include "windef.h"
+#include "wingdi.h"
 #include "winuser.h"
 #include "wine/winbase16.h"
 #include "wine/winuser16.h"
@@ -30,11 +33,11 @@
 #include "winerror.h"
 #include "task.h"
 
-DECLARE_DEBUG_CHANNEL(accel)
-DECLARE_DEBUG_CHANNEL(event)
-DECLARE_DEBUG_CHANNEL(key)
-DECLARE_DEBUG_CHANNEL(keyboard)
-DECLARE_DEBUG_CHANNEL(win)
+DECLARE_DEBUG_CHANNEL(accel);
+DECLARE_DEBUG_CHANNEL(event);
+DECLARE_DEBUG_CHANNEL(key);
+DECLARE_DEBUG_CHANNEL(keyboard);
+DECLARE_DEBUG_CHANNEL(win);
 
 static BOOL InputEnabled = TRUE;
 BOOL SwappedButtons = FALSE;
diff --git a/windows/keyboard.c b/windows/keyboard.c
index ee6b2ad..2c9ce44 100644
--- a/windows/keyboard.c
+++ b/windows/keyboard.c
@@ -13,6 +13,8 @@
 #include <string.h>
 #include <ctype.h>
 
+#include "windef.h"
+#include "wingdi.h"
 #include "winuser.h"
 #include "wine/keyboard16.h"
 #include "win.h"
diff --git a/windows/mdi.c b/windows/mdi.c
index 09ad8d1..1a81e6d 100644
--- a/windows/mdi.c
+++ b/windows/mdi.c
@@ -13,8 +13,11 @@
  */
 
 #include <stdlib.h>
+#include <stdio.h>
 #include <string.h>
 #include <math.h>
+#include "windef.h"
+#include "wingdi.h"
 #include "winuser.h"
 #include "win.h"
 #include "heap.h"
@@ -27,7 +30,7 @@
 #include "tweak.h"
 #include "debugtools.h"
 
-DEFAULT_DEBUG_CHANNEL(mdi)
+DEFAULT_DEBUG_CHANNEL(mdi);
 
 #define MDIF_NEEDUPDATE		0x0001
 
diff --git a/windows/msgbox.c b/windows/msgbox.c
index 4750b20..62495c2 100644
--- a/windows/msgbox.c
+++ b/windows/msgbox.c
@@ -6,6 +6,8 @@
 
 #include <string.h>
 
+#include "windef.h"
+#include "wingdi.h"
 #include "wine/winbase16.h"
 #include "wine/winuser16.h"
 #include "dlgs.h"
diff --git a/windows/multimon.c b/windows/multimon.c
index e8b407a..1b9617a 100644
--- a/windows/multimon.c
+++ b/windows/multimon.c
@@ -5,6 +5,8 @@
  */
 
 #include "monitor.h"
+#include "windef.h"
+#include "wingdi.h"
 #include "winbase.h"
 #include "winuser.h"
 
diff --git a/windows/nonclient.c b/windows/nonclient.c
index b3416c1..6394790 100644
--- a/windows/nonclient.c
+++ b/windows/nonclient.c
@@ -5,6 +5,8 @@
  *
  */
 
+#include "windef.h"
+#include "wingdi.h"
 #include "wine/winuser16.h"
 #include "version.h"
 #include "win.h"
diff --git a/windows/painting.c b/windows/painting.c
index 677eaa9..00ea6c5 100644
--- a/windows/painting.c
+++ b/windows/painting.c
@@ -5,17 +5,19 @@
  *			 1999 Alex Korobka
  */
 
+#include "windef.h"
+#include "wingdi.h"
+#include "wine/winuser16.h"
 #include "region.h"
 #include "win.h"
 #include "queue.h"
 #include "dce.h"
 #include "heap.h"
 #include "debugtools.h"
-#include "wine/winuser16.h"
 #include "cache.h"
 
-DEFAULT_DEBUG_CHANNEL(win)
-DECLARE_DEBUG_CHANNEL(nonclient)
+DEFAULT_DEBUG_CHANNEL(win);
+DECLARE_DEBUG_CHANNEL(nonclient);
 
 /* client rect in window coordinates */
 
diff --git a/windows/property.c b/windows/property.c
index 6303793..bc9ba41 100644
--- a/windows/property.c
+++ b/windows/property.c
@@ -6,6 +6,8 @@
 
 #include <string.h>
 
+#include "windef.h"
+#include "wingdi.h"
 #include "wine/winuser16.h"
 #include "win.h"
 #include "heap.h"
diff --git a/windows/queue.c b/windows/queue.c
index 3b88261..cacdeb1 100644
--- a/windows/queue.c
+++ b/windows/queue.c
@@ -6,6 +6,8 @@
 #include <string.h>
 #include <signal.h>
 #include <assert.h>
+#include "windef.h"
+#include "wingdi.h"
 #include "wine/winbase16.h"
 #include "wine/winuser16.h"
 #include "miscemu.h"
diff --git a/windows/rect.c b/windows/rect.c
index 9bca84e..02ab99c 100644
--- a/windows/rect.c
+++ b/windows/rect.c
@@ -5,6 +5,8 @@
  *
  */
 
+#include "windef.h"
+#include "wingdi.h"
 #include "wine/winuser16.h"
 #include "winuser.h"
 
diff --git a/windows/scroll.c b/windows/scroll.c
index 86868bb..a095290 100644
--- a/windows/scroll.c
+++ b/windows/scroll.c
@@ -9,6 +9,8 @@
 
 #include <stdlib.h>
 
+#include "windef.h"
+#include "wingdi.h"
 #include "wine/winuser16.h"
 #include "winuser.h"
 #include "dc.h"
diff --git a/windows/syscolor.c b/windows/syscolor.c
index 1dddace..6448e29 100644
--- a/windows/syscolor.c
+++ b/windows/syscolor.c
@@ -10,6 +10,8 @@
 #include <stdio.h>
 #include <stdlib.h>
 
+#include "windef.h"
+#include "wingdi.h"
 #include "wine/winbase16.h"
 #include "wine/winuser16.h"
 #include "sysmetrics.h"
diff --git a/windows/sysmetrics.c b/windows/sysmetrics.c
index 97ddf77..0f4a0fd 100644
--- a/windows/sysmetrics.c
+++ b/windows/sysmetrics.c
@@ -7,6 +7,8 @@
 
 #include <stdio.h>
 
+#include "windef.h"
+#include "wingdi.h"
 #include "wine/winuser16.h"
 #include "winbase.h"
 #include "winuser.h"
diff --git a/windows/timer.c b/windows/timer.c
index b46be52..b724780 100644
--- a/windows/timer.c
+++ b/windows/timer.c
@@ -4,6 +4,8 @@
  * Copyright 1993 Alexandre Julliard
  */
 
+#include "windef.h"
+#include "wingdi.h"
 #include "wine/winuser16.h"
 #include "winuser.h"
 #include "queue.h"
diff --git a/windows/user.c b/windows/user.c
index 68f380e..549c022 100644
--- a/windows/user.c
+++ b/windows/user.c
@@ -7,6 +7,8 @@
 
 #include <stdlib.h>
 #include "wine/winbase16.h"
+#include "windef.h"
+#include "wingdi.h"
 #include "winuser.h"
 #include "heap.h"
 #include "user.h"
diff --git a/windows/win.c b/windows/win.c
index be2f0c0..bb266b2 100644
--- a/windows/win.c
+++ b/windows/win.c
@@ -6,6 +6,8 @@
 
 #include <stdlib.h>
 #include <string.h>
+#include "windef.h"
+#include "wingdi.h"
 #include "wine/winbase16.h"
 #include "wine/winuser16.h"
 #include "options.h"
@@ -1040,9 +1042,7 @@
 
     if (!(classAtom = GlobalFindAtomA( className )))
     {
-        fprintf( stderr, "CreateWindowEx16: bad class name " );
-        if (!HIWORD(className)) fprintf( stderr, "%04x\n", LOWORD(className) );
-        else fprintf( stderr, "'%s'\n", className );
+        ERR( "bad class name %s\n", debugres_a(className) );
         return 0;
     }
 
@@ -1096,9 +1096,7 @@
 
     if (!(classAtom = GlobalFindAtomA( className )))
     {
-        fprintf( stderr, "CreateWindowEx32A: bad class name " );
-        if (!HIWORD(className)) fprintf( stderr, "%04x\n", LOWORD(className) );
-        else fprintf( stderr, "'%s'\n", className );
+        ERR( "bad class name %s\n", debugres_a(className) );
         return 0;
     }
 
@@ -1150,14 +1148,7 @@
 
     if (!(classAtom = GlobalFindAtomW( className )))
     {
-    	if (HIWORD(className))
-        {
-            LPSTR cn = HEAP_strdupWtoA( GetProcessHeap(), 0, className );
-            WARN("Bad class name '%s'\n",cn);
-            HeapFree( GetProcessHeap(), 0, cn );
-	}
-        else
-            WARN("Bad class name %p\n", className );
+        ERR( "bad class name %s\n", debugres_w(className) );
         return 0;
     }
 
diff --git a/windows/winhelp.c b/windows/winhelp.c
index 6ce4b54..8f897cb 100644
--- a/windows/winhelp.c
+++ b/windows/winhelp.c
@@ -7,6 +7,8 @@
 #include <string.h>
 #include <unistd.h>
 #include "debugtools.h"
+#include "windef.h"
+#include "wingdi.h"
 #include "wine/winuser16.h"
 #include "wine/winbase16.h"
 #include "winversion.h"
diff --git a/windows/winpos.c b/windows/winpos.c
index 1c6fb94..ba42028 100644
--- a/windows/winpos.c
+++ b/windows/winpos.c
@@ -6,6 +6,8 @@
  */
 
 #include <string.h>
+#include "windef.h"
+#include "wingdi.h"
 #include "wine/winuser16.h"
 #include "heap.h"
 #include "module.h"
diff --git a/windows/winproc.c b/windows/winproc.c
index 9188dfe..0c8f4fa 100644
--- a/windows/winproc.c
+++ b/windows/winproc.c
@@ -6,9 +6,10 @@
  */
 
 #include <string.h>
+#include "windef.h"
+#include "wingdi.h"
 #include "wine/winbase16.h"
 #include "wine/winuser16.h"
-#include "winuser.h"
 #include "stackframe.h"
 #include "builtin16.h"
 #include "heap.h"
diff --git a/windows/x11drv/clipboard.c b/windows/x11drv/clipboard.c
index ba98d17..2eeb43d 100644
--- a/windows/x11drv/clipboard.c
+++ b/windows/x11drv/clipboard.c
@@ -52,11 +52,14 @@
 #include <errno.h>
 #include <X11/Xatom.h>
 #include <string.h>
+#include <stdio.h>
 #include <unistd.h>
 #include <fcntl.h>
 
 #include "ts_xlib.h"
 
+#include "windef.h"
+#include "wingdi.h"
 #include "wine/winuser16.h"
 #include "clipboard.h"
 #include "message.h"
@@ -68,7 +71,7 @@
 #include "options.h"
 #include "debugtools.h"
 
-DEFAULT_DEBUG_CHANNEL(clipboard)
+DEFAULT_DEBUG_CHANNEL(clipboard);
 
 /* Selection masks */
 
@@ -255,10 +258,10 @@
         /* Build the debug class mask to pass to the server, by inheriting
          * the settings for the clipboard debug channel.
          */
-        dbgClasses |= __GET_DEBUGGING(__DBCL_FIXME, dbch_clipboard) ? 1 : 0;
-        dbgClasses |= __GET_DEBUGGING(__DBCL_ERR, dbch_clipboard) ? 2 : 0;
-        dbgClasses |= __GET_DEBUGGING(__DBCL_WARN, dbch_clipboard) ? 4 : 0;
-        dbgClasses |= __GET_DEBUGGING(__DBCL_TRACE, dbch_clipboard) ? 8 : 0;
+        dbgClasses |= FIXME_ON(clipboard) ? 1 : 0;
+        dbgClasses |= ERR_ON(clipboard) ? 2 : 0;
+        dbgClasses |= WARN_ON(clipboard) ? 4 : 0;
+        dbgClasses |= TRACE_ON(clipboard) ? 8 : 0;
         sprintf(dbgClassMask, "%d", dbgClasses);
 
         /* Get the clear selection preference */
diff --git a/windows/x11drv/keyboard.c b/windows/x11drv/keyboard.c
index 23b528e..2febf0a 100644
--- a/windows/x11drv/keyboard.c
+++ b/windows/x11drv/keyboard.c
@@ -21,6 +21,8 @@
 #include "ts_xresource.h"
 #include "ts_xutil.h"
 
+#include "windef.h"
+#include "wingdi.h"
 #include "wine/winuser16.h"
 #include "dinput.h"
 #include "debugtools.h"
diff --git a/windows/x11drv/wnd.c b/windows/x11drv/wnd.c
index ccd9882..14ca412 100644
--- a/windows/x11drv/wnd.c
+++ b/windows/x11drv/wnd.c
@@ -28,6 +28,8 @@
 #include "windef.h"
 #include "class.h"
 #include "x11drv.h"
+#include "windef.h"
+#include "wingdi.h"
 #include "wine/winuser16.h"
 
 DEFAULT_DEBUG_CHANNEL(win)