Skip to content
Permalink
Browse files

Merge pull request #8488 from tinyredpanda/simplify-wstring-conversion

Simplify wstring to QString conversion
  • Loading branch information
leoetlino committed Nov 23, 2019
2 parents 4305a9a + fe9e7d5 commit 3a2d3aa9d20289ef4b8e8c64768faeaf7463cd0b
Showing with 12 additions and 15 deletions.
  1. +7 −8 Source/Core/Common/CompatPatches.cpp
  2. +5 −7 Source/Core/DolphinQt/Main.cpp
@@ -231,15 +231,14 @@ void CompatPatchesInstall(LdrWatcher* watcher)
return;
}
// If we reach here, the version is buggy (afaik) and patching failed
const auto msg =
fmt::format("You are running {} version {}.{}.{}.{}.\n"
"An important fix affecting Dolphin was introduced in build {}.\n"
"You can use Dolphin, but there will be known bugs.\n"
"Please update this file by installing the latest Universal C Runtime.\n",
UTF16ToUTF8(event.name), version.major, version.minor, version.build,
version.qfe, fixed_build);
const auto msg = fmt::format(
L"You are running {} version {}.{}.{}.{}.\n"
L"An important fix affecting Dolphin was introduced in build {}.\n"
L"You can use Dolphin, but there will be known bugs.\n"
L"Please update this file by installing the latest Universal C Runtime.\n",
event.name, version.major, version.minor, version.build, version.qfe, fixed_build);
// Use MessageBox for maximal user annoyance
MessageBoxA(nullptr, msg.c_str(), "WARNING: BUGGY UCRT VERSION", MB_ICONEXCLAMATION);
MessageBoxW(nullptr, msg.c_str(), L"WARNING: BUGGY UCRT VERSION", MB_ICONEXCLAMATION);
}});
}

@@ -5,8 +5,6 @@
#ifdef _WIN32
#include <Windows.h>
#include <cstdio>

#include "Common/StringUtil.h"
#endif

#include <OptionParser.h>
@@ -104,16 +102,16 @@ int main(int argc, char* argv[])

#ifdef _WIN32
// Get the default system font because Qt's way of obtaining it is outdated
NONCLIENTMETRICS metrics = {};
LOGFONT& logfont = metrics.lfMenuFont;
metrics.cbSize = sizeof(NONCLIENTMETRICS);
NONCLIENTMETRICSW metrics = {};
LOGFONTW& logfont = metrics.lfMenuFont;
metrics.cbSize = sizeof(metrics);

if (SystemParametersInfo(SPI_GETNONCLIENTMETRICS, sizeof(metrics), &metrics, 0))
if (SystemParametersInfoW(SPI_GETNONCLIENTMETRICS, sizeof(metrics), &metrics, 0))
{
// Sadly Qt 5 doesn't support turning a native font handle into a QFont so this is the next best
// thing
QFont font = QApplication::font();
font.setFamily(QString::fromStdString(UTF16ToUTF8(logfont.lfFaceName)));
font.setFamily(QString::fromStdWString(logfont.lfFaceName));

font.setItalic(logfont.lfItalic);
font.setStrikeOut(logfont.lfStrikeOut);

0 comments on commit 3a2d3aa

Please sign in to comment.
You can’t perform that action at this time.