/*
- * COPYRIGHT: See COPYING in the top level directory
- * PROJECT: ReactOS user32.dll
- * FILE: include/user32.h
- * PURPOSE: Global user32 definitions
+ * COPYRIGHT: See COPYING in the top level directory
+ * PROJECT: ReactOS System Libraries
+ * FILE: lib/user32/include/user32.h
+ * PURPOSE: Win32 User Library
+ * PROGRAMMER: Alex Ionescu (alex@relsoft.net)
*/
-#define WINVER 0x1000
+
+/* INCLUDES ******************************************************************/
+
+/* C Headers */
+#include <stdio.h>
+#include <math.h>
+
+/* SDK/NDK Headers */
+#define _USER32_
+#define OEMRESOURCE
+#define NTOS_MODE_USER
+#define WIN32_NO_STATUS
#include <windows.h>
-#define NTOS_USER_MODE
-#include <ntos.h>
-#include <user32/wininternal.h>
-#include <user32/callback.h>
-#include <win32k/win32k.h>
-#include <window.h>
-#include <debug.h>
-
-#define SLOWORD(l) ((SHORT)((LONG)(l)))
-#define SHIWORD(l) ((SHORT)(((LONG)(l) >> 16) & 0xFFFF))
-
-extern HANDLE ProcessHeap;
-VOID
-User32FreeHeap(PVOID Block);
-PVOID
-User32AllocHeap(ULONG Size);
-VOID
-User32ConvertUnicodeString(PWSTR SrcString, PSTR DestString, ULONG DestSize);
-PWSTR
-User32ConvertString(PCSTR String);
-VOID
-User32FreeString(PWSTR String);
+#include <winuser.h>
+#include <windowsx.h>
+#include <winnls32.h>
+#include <ndk/ntndk.h>
+
+/* CSRSS Headers */
+#include <csrss/csrss.h>
+
+/* External Win32K Headers */
+#include <win32k/ntuser.h>
+#include <win32k/caret.h>
+#include <win32k/callback.h>
+#include <win32k/cursoricon.h>
+#include <win32k/menu.h>
+#include <win32k/paint.h>
+
+/* WINE Headers */
+#include <wine/debug.h>
+#include <wine/unicode.h>
+
+/* Internal User32 Headers */
+#include "user32p.h"
+
+/* FIXME: FILIP */
+HGDIOBJ STDCALL NtGdiSelectObject(HDC hDC, HGDIOBJ hGDIObj);
+DWORD STDCALL GdiGetCharDimensions(HDC, LPTEXTMETRICW, LONG *);