diff --git a/CMakeLists.txt b/CMakeLists.txt index 0986094a4..84b3de6b9 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -458,6 +458,7 @@ set(OC_CLONK_SOURCES src/platform/C4VideoPlayback.h src/platform/C4ViewportWindow.cpp src/platform/C4ViewportWindow.h + src/platform/C4windowswrapper.h src/platform/PlatformAbstraction.h src/platform/StdConfig.cpp src/platform/StdConfig.h diff --git a/Makefile.am b/Makefile.am index d5f4deb7d..300b46a66 100644 --- a/Makefile.am +++ b/Makefile.am @@ -461,6 +461,7 @@ src/platform/C4VideoPlayback.cpp \ src/platform/C4VideoPlayback.h \ src/platform/C4ViewportWindow.cpp \ src/platform/C4ViewportWindow.h \ +src/platform/C4windowswrapper.h \ src/platform/PlatformAbstraction.h \ src/platform/StdAppCommon.cpp \ src/platform/StdAppCommon.h \ diff --git a/src/c4group/C4Update.cpp b/src/c4group/C4Update.cpp index 6fcc6e3c0..571368997 100644 --- a/src/c4group/C4Update.cpp +++ b/src/c4group/C4Update.cpp @@ -25,7 +25,7 @@ C4Config *GetCfg(); #ifdef _WIN32 -#include +#include #include #endif diff --git a/src/c4group/c4group_ng.cpp b/src/c4group/c4group_ng.cpp index 8161311d8..9d36053ba 100644 --- a/src/c4group/c4group_ng.cpp +++ b/src/c4group/c4group_ng.cpp @@ -46,7 +46,7 @@ #include #include #ifdef _WIN32 -#include +#include #endif int globalArgC; diff --git a/src/game/object/C4ObjectList.h b/src/game/object/C4ObjectList.h index b18ff90b9..03bdca860 100644 --- a/src/game/object/C4ObjectList.h +++ b/src/game/object/C4ObjectList.h @@ -27,9 +27,6 @@ #include -// workaround wingdi.h -#undef GetObject - class C4Object; class C4ObjectList; class C4ObjectInfo; diff --git a/src/lib/StdBuf.cpp b/src/lib/StdBuf.cpp index fd4cfeb3c..7f749f32b 100644 --- a/src/lib/StdBuf.cpp +++ b/src/lib/StdBuf.cpp @@ -28,7 +28,7 @@ #include #ifdef _WIN32 #include -#include +#include #define vsnprintf _vsnprintf #else #define O_BINARY 0 diff --git a/src/netio/TstC4NetIO.cpp b/src/netio/TstC4NetIO.cpp index e1b9a9e10..55c62dce4 100644 --- a/src/netio/TstC4NetIO.cpp +++ b/src/netio/TstC4NetIO.cpp @@ -23,7 +23,7 @@ #include #include #ifdef _WIN32 -#include +#include #include #else #include diff --git a/src/network/C4NetIO.h b/src/network/C4NetIO.h index 51283984e..e687b89bb 100644 --- a/src/network/C4NetIO.h +++ b/src/network/C4NetIO.h @@ -26,8 +26,8 @@ #include "StdCompiler.h" #include "StdScheduler.h" -#include "StdWindow.h" #ifdef _WIN32 +#include #include #include #ifndef WINSOCK_VERSION diff --git a/src/platform/Bitmap256.h b/src/platform/Bitmap256.h index 116cac605..427f3cbf2 100644 --- a/src/platform/Bitmap256.h +++ b/src/platform/Bitmap256.h @@ -25,7 +25,7 @@ #define BITMAP256_H_INC #ifdef _WIN32 -#include +#include #else #pragma pack(push,2) typedef struct tagBITMAPFILEHEADER diff --git a/src/platform/C4CrashHandlerWin32.cpp b/src/platform/C4CrashHandlerWin32.cpp index a083b5132..9647fcbe1 100644 --- a/src/platform/C4CrashHandlerWin32.cpp +++ b/src/platform/C4CrashHandlerWin32.cpp @@ -30,7 +30,7 @@ #ifdef GENERATE_MINI_DUMP // Dump generation on crash -#include +#include #include #include #include diff --git a/src/platform/C4FileClasses.cpp b/src/platform/C4FileClasses.cpp index 3e548b40a..831a3691a 100644 --- a/src/platform/C4FileClasses.cpp +++ b/src/platform/C4FileClasses.cpp @@ -23,7 +23,7 @@ #include #include -#include +#include #define C4FileClassContentType "application/vnd.clonk.c4group" diff --git a/src/platform/C4FileMonitor.cpp b/src/platform/C4FileMonitor.cpp index a9c734aa9..cd30b64e2 100644 --- a/src/platform/C4FileMonitor.cpp +++ b/src/platform/C4FileMonitor.cpp @@ -185,7 +185,7 @@ void C4FileMonitor::GetFDs(std::vector & fds) } #elif defined(_WIN32) -#include +#include C4FileMonitor::C4FileMonitor(ChangeNotify pCallback) : fStarted(false), pCallback(pCallback), pWatches(NULL) diff --git a/src/platform/C4windowswrapper.h b/src/platform/C4windowswrapper.h new file mode 100644 index 000000000..f233bd06f --- /dev/null +++ b/src/platform/C4windowswrapper.h @@ -0,0 +1,28 @@ +#ifdef _WIN64 +# define WINVER 0x0501 +# define _WIN32_WINDOWS 0x0501 +# define _WIN32_WINNT 0x0501 +# define _WIN32_IE 0x0501 +# define _AMD64_ 1 +#else +# define WINVER 0x0500 +# define _WIN32_WINDOWS 0x0500 +# define _WIN32_WINNT 0x0501 +# define _WIN32_IE 0x0501 +# define _X86_ 1 +#endif +#define WIN32_LEAN_AND_MEAN +#ifndef NOMINMAX +# define NOMINMAX +#endif +#include +#undef RGB +#undef GetRValue +#undef GetGValue +#undef GetBValue +#undef TextOut +#undef GetObject +#undef CreateFont +#undef LoadBitmap +#undef DrawText + diff --git a/src/platform/StdD3D.cpp b/src/platform/StdD3D.cpp index 2f9d753d8..98a7e0568 100644 --- a/src/platform/StdD3D.cpp +++ b/src/platform/StdD3D.cpp @@ -33,7 +33,7 @@ #ifdef USE_DIRECTX -#include +#include #include #include #include diff --git a/src/platform/StdDDraw2.h b/src/platform/StdDDraw2.h index 1e6c229f5..0f3af559a 100644 --- a/src/platform/StdDDraw2.h +++ b/src/platform/StdDDraw2.h @@ -28,9 +28,6 @@ #include #include -// workaround wingdi.h -#undef TextOut - // texref-predef class CStdDDraw; class CTexRef; diff --git a/src/platform/StdFile.cpp b/src/platform/StdFile.cpp index a97b548eb..21295390f 100644 --- a/src/platform/StdFile.cpp +++ b/src/platform/StdFile.cpp @@ -40,7 +40,7 @@ #include #endif #ifdef _WIN32 -#include +#include #endif #include #include diff --git a/src/platform/StdFont.cpp b/src/platform/StdFont.cpp index 98f398a51..49698decd 100644 --- a/src/platform/StdFont.cpp +++ b/src/platform/StdFont.cpp @@ -26,7 +26,6 @@ #include "C4Include.h" #include -#include #include #include #include @@ -34,6 +33,10 @@ #include #include +#ifdef _WIN32 +#include +#endif + #ifdef HAVE_FREETYPE #include #include FT_FREETYPE_H diff --git a/src/platform/StdFont.h b/src/platform/StdFont.h index aaeecb40e..2c9d2d640 100644 --- a/src/platform/StdFont.h +++ b/src/platform/StdFont.h @@ -26,9 +26,6 @@ #include #include #include -#ifdef _WIN32 -#include -#endif // Font rendering flags #define STDFONT_CENTERED 0x0001 diff --git a/src/platform/StdJoystick.cpp b/src/platform/StdJoystick.cpp index 6c63f1cbc..e8767bcc4 100644 --- a/src/platform/StdJoystick.cpp +++ b/src/platform/StdJoystick.cpp @@ -31,7 +31,7 @@ static uint32_t dwStdGamepadMinX = 0; static uint32_t dwStdGamepadMaxY = 0; static uint32_t dwStdGamepadMinY = 0; -#include +#include #include uint32_t POV2Position(DWORD dwPOV, bool fVertical) diff --git a/src/platform/StdRegistry.cpp b/src/platform/StdRegistry.cpp index 7d6b3b98b..6c66d0198 100644 --- a/src/platform/StdRegistry.cpp +++ b/src/platform/StdRegistry.cpp @@ -27,7 +27,7 @@ #include #ifdef _WIN32 -#include +#include #include bool DeleteRegistryValue(const char *szSubKey, const char *szValueName) diff --git a/src/platform/StdScheduler.h b/src/platform/StdScheduler.h index 262415868..a700891ea 100644 --- a/src/platform/StdScheduler.h +++ b/src/platform/StdScheduler.h @@ -32,6 +32,7 @@ #define STDSCHEDULER_EVENT_MESSAGE INVALID_HANDLE_VALUE struct pollfd; #ifndef STDSCHEDULER_USE_EVENTS +#include #include #endif // STDSCHEDULER_USE_EVENTS #else // _WIN32 diff --git a/src/platform/StdSync.h b/src/platform/StdSync.h index f2ae1e2e8..8007ac149 100644 --- a/src/platform/StdSync.h +++ b/src/platform/StdSync.h @@ -22,7 +22,7 @@ #define INC_StdSync #ifdef _WIN32 -#include +#include class CStdCSec { diff --git a/src/platform/StdVideo.h b/src/platform/StdVideo.h index f2afb905f..0b70d287e 100644 --- a/src/platform/StdVideo.h +++ b/src/platform/StdVideo.h @@ -26,8 +26,7 @@ #ifdef _WIN32 #pragma once -#include -#include // some vfw.h versions do not compile without this +#include // some vfw.h versions do not compile without this #include #include #include diff --git a/src/platform/StdWindow.cpp b/src/platform/StdWindow.cpp index 39243af54..f9d2e5667 100644 --- a/src/platform/StdWindow.cpp +++ b/src/platform/StdWindow.cpp @@ -35,7 +35,7 @@ #ifdef USE_DIRECTX #include #endif -#include +#include #include #include #include diff --git a/src/platform/StdWindow.h b/src/platform/StdWindow.h index ebd64d99d..73fc4ad4d 100644 --- a/src/platform/StdWindow.h +++ b/src/platform/StdWindow.h @@ -40,17 +40,7 @@ const int SEC1_TIMER=1,SEC1_MSEC=1000; #endif #ifdef _WIN32 -#include -#undef RGB -#undef GetRValue -#undef GetGValue -#undef GetBValue -#undef TextOut -#undef GetObject -#undef CreateFont -#include -#undef LoadBitmap -#undef DrawText +#include #define K_ALT VK_MENU #define K_ESCAPE VK_ESCAPE #define K_PAUSE VK_PAUSE