diff options
| author | spycrab <spycrab@users.noreply.github.com> | 2017-07-02 13:15:46 +0200 |
|---|---|---|
| committer | spycrab <spycrab@users.noreply.github.com> | 2017-07-04 15:26:10 +0200 |
| commit | 36fe1a5415c92a988de7df78c1d82303818ef6b6 (patch) | |
| tree | af8be037450f93237b59aecbe87246a22a9522d9 /Source/Core/DolphinQt2/Config/Mapping/MappingButton.cpp | |
| parent | 0f9ae6d361541a5917ae3b05dc7c667cdef81336 (diff) | |
Qt: Fix ampersands not displaying properly in mapping windows
Diffstat (limited to 'Source/Core/DolphinQt2/Config/Mapping/MappingButton.cpp')
| -rw-r--r-- | Source/Core/DolphinQt2/Config/Mapping/MappingButton.cpp | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/Source/Core/DolphinQt2/Config/Mapping/MappingButton.cpp b/Source/Core/DolphinQt2/Config/Mapping/MappingButton.cpp index 84ba377337..44bc67e3f0 100644 --- a/Source/Core/DolphinQt2/Config/Mapping/MappingButton.cpp +++ b/Source/Core/DolphinQt2/Config/Mapping/MappingButton.cpp @@ -20,8 +20,14 @@ #include "InputCommon/ControllerInterface/ControllerInterface.h" #include "InputCommon/ControllerInterface/Device.h" +static QString EscapeAmpersand(QString&& string) +{ + return string.replace(QStringLiteral("&"), QStringLiteral("&&")); +} + MappingButton::MappingButton(MappingWidget* widget, ControlReference* ref) - : ElidedButton(QString::fromStdString(ref->expression)), m_parent(widget), m_reference(ref) + : ElidedButton(EscapeAmpersand(QString::fromStdString(ref->expression))), m_parent(widget), + m_reference(ref) { Connect(); } @@ -73,7 +79,7 @@ void MappingButton::OnButtonPressed() void MappingButton::OnButtonTimeout() { - setText(QString::fromStdString(m_reference->expression)); + setText(EscapeAmpersand(QString::fromStdString(m_reference->expression))); } void MappingButton::Clear() @@ -87,7 +93,7 @@ void MappingButton::Update() { const auto lock = ControllerEmu::EmulatedController::GetStateLock(); m_reference->UpdateReference(g_controller_interface, m_parent->GetParent()->GetDeviceQualifier()); - setText(QString::fromStdString(m_reference->expression)); + setText(EscapeAmpersand(QString::fromStdString(m_reference->expression))); m_parent->SaveSettings(); } |
