diff options
-rw-r--r-- | README.md | 12 | ||||
-rw-r--r-- | src/client.cpp | 7 | ||||
-rw-r--r-- | src/gui/npcdialog.cpp | 2 | ||||
-rw-r--r-- | src/gui/truetypefont.h | 4 | ||||
-rw-r--r-- | src/main.cpp | 4 |
5 files changed, 19 insertions, 10 deletions
@@ -128,6 +128,18 @@ Installing the dependencies on Fedora: SDL2_image-devel SDL2_mixer-devel SDL2_net-devel \ SDL2_ttf-devel +Installing the dependencies on Windows (using MSYS2 UCRT64): + + pacman -S mingw-w64-ucrt-x86_64-gcc \ + mingw-w64-ucrt-x86_64-cmake \ + mingw-w64-ucrt-x86_64-physfs \ + mingw-w64-ucrt-x86_64-curl \ + mingw-w64-ucrt-x86_64-SDL2_image \ + mingw-w64-ucrt-x86_64-SDL2_mixer \ + mingw-w64-ucrt-x86_64-SDL2_net \ + mingw-w64-ucrt-x86_64-SDL2_ttf \ + mingw-w64-ucrt-x86_64-libxml2 + Once the dependencies are installed, use CMake: cmake -B build . diff --git a/src/client.cpp b/src/client.cpp index 2a854bc0..63452112 100644 --- a/src/client.cpp +++ b/src/client.cpp @@ -80,8 +80,9 @@ #include <SDL_image.h> #ifdef _WIN32 -#include <SDL_syswm.h> #include "utils/specialfolder.h" +#include <SDL_syswm.h> +#include <winuser.h> #endif #include <sys/stat.h> @@ -332,7 +333,7 @@ Client::Client(const Options &options): logger->log("Loading icon from file: %s", iconFile.c_str()); #ifdef _WIN32 static SDL_SysWMinfo pInfo; - SDL_GetWMInfo(&pInfo); + SDL_GetWindowWMInfo(mVideo.window(), &pInfo); // Attempt to load icon from .ico file HICON icon = (HICON) LoadImage(NULL, iconFile.c_str(), @@ -342,7 +343,7 @@ Client::Client(const Options &options): icon = LoadIcon(GetModuleHandle(NULL), "A"); if (icon) - SetClassLong(pInfo.window, GCL_HICON, (LONG) icon); + SetClassLongPtr(pInfo.info.win.window, GCLP_HICON, (LONG_PTR) icon); #else mIcon = IMG_Load(iconFile.c_str()); if (mIcon) diff --git a/src/gui/npcdialog.cpp b/src/gui/npcdialog.cpp index 8150a01a..90d3e37e 100644 --- a/src/gui/npcdialog.cpp +++ b/src/gui/npcdialog.cpp @@ -407,7 +407,7 @@ void NpcDialog::mouseClicked(gcn::MouseEvent &mouseEvent) { action(gcn::ActionEvent(mNextButton, mNextButton->getActionEventId())); } - if (mouseEvent.getSource() == mTextBox && isDoubleClick((int)(long)mTextBox)) + if (mouseEvent.getSource() == mTextBox && isDoubleClick((int)(intptr_t)mTextBox)) { if (mActionState == NPC_ACTION_NEXT || mActionState == NPC_ACTION_CLOSE) action(gcn::ActionEvent(mNextButton, diff --git a/src/gui/truetypefont.h b/src/gui/truetypefont.h index b3ebcc73..9aa308b1 100644 --- a/src/gui/truetypefont.h +++ b/src/gui/truetypefont.h @@ -25,11 +25,7 @@ #include <guichan/font.hpp> -#ifdef __WIN32__ -#include <SDL/SDL_ttf.h> -#else #include <SDL_ttf.h> -#endif #include <list> #include <string> diff --git a/src/main.cpp b/src/main.cpp index b44f4d3a..9b29eba4 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -179,14 +179,14 @@ static void parseOptions(int argc, char *argv[], Client::Options &options) } #ifdef _WIN32 -extern "C" char const *_nl_locale_name_default(void); +//extern "C" char const *_nl_locale_name_default(void); #endif static void initInternationalization() { #if ENABLE_NLS #ifdef _WIN32 - SetEnvironmentVariable("LANG", _nl_locale_name_default()); +// SetEnvironmentVariable("LANG", _nl_locale_name_default()); // mingw doesn't like LOCALEDIR to be defined for some reason bindtextdomain("mana", "translations/"); #else |