refactor: adapt magic_enum to Qt (#5258)
This commit is contained in:
@@ -33,6 +33,7 @@
|
||||
#include "util/DistanceBetweenPoints.hpp"
|
||||
#include "util/Helpers.hpp"
|
||||
#include "util/IncognitoBrowser.hpp"
|
||||
#include "util/QMagicEnum.hpp"
|
||||
#include "util/Twitch.hpp"
|
||||
#include "widgets/dialogs/ReplyThreadPopup.hpp"
|
||||
#include "widgets/dialogs/SettingsDialog.hpp"
|
||||
@@ -266,8 +267,7 @@ void addHiddenContextMenuItems(QMenu *menu,
|
||||
jsonObject["id"] = message->id;
|
||||
jsonObject["searchText"] = message->searchText;
|
||||
jsonObject["messageText"] = message->messageText;
|
||||
jsonObject["flags"] = QString::fromStdString(
|
||||
magic_enum::enum_flags_name(message->flags.value()));
|
||||
jsonObject["flags"] = qmagicenum::enumFlagsName(message->flags.value());
|
||||
|
||||
jsonDocument.setObject(jsonObject);
|
||||
|
||||
|
||||
@@ -1243,7 +1243,7 @@ void GeneralPage::initLayout(GeneralPageView &layout)
|
||||
helixTimegateModerators->minimumSizeHint().width());
|
||||
|
||||
layout.addDropdownEnumClass<ChatSendProtocol>(
|
||||
"Chat send protocol", magic_enum::enum_names<ChatSendProtocol>(),
|
||||
"Chat send protocol", qmagicenum::enumNames<ChatSendProtocol>(),
|
||||
s.chatSendProtocol,
|
||||
"'Helix' will use Twitch's Helix API to send message. 'IRC' will use "
|
||||
"IRC to send messages.",
|
||||
@@ -1256,7 +1256,7 @@ void GeneralPage::initLayout(GeneralPageView &layout)
|
||||
|
||||
auto *soundBackend = layout.addDropdownEnumClass<SoundBackend>(
|
||||
"Sound backend (requires restart)",
|
||||
magic_enum::enum_names<SoundBackend>(), s.soundBackend,
|
||||
qmagicenum::enumNames<SoundBackend>(), s.soundBackend,
|
||||
"Change this only if you're noticing issues with sound playback on "
|
||||
"your system",
|
||||
{});
|
||||
|
||||
@@ -276,7 +276,7 @@ public:
|
||||
|
||||
template <typename T, std::size_t N>
|
||||
ComboBox *addDropdownEnumClass(const QString &text,
|
||||
const std::array<std::string_view, N> &items,
|
||||
const std::array<QStringView, N> &items,
|
||||
EnumStringSetting<T> &setting,
|
||||
QString toolTipText,
|
||||
const QString &defaultValueText)
|
||||
@@ -285,7 +285,7 @@ public:
|
||||
|
||||
for (const auto &item : items)
|
||||
{
|
||||
combo->addItem(QString::fromStdString(std::string(item)));
|
||||
combo->addItem(item.toString());
|
||||
}
|
||||
|
||||
if (!defaultValueText.isEmpty())
|
||||
@@ -296,8 +296,7 @@ public:
|
||||
setting.connect(
|
||||
[&setting, combo](const QString &value) {
|
||||
auto enumValue =
|
||||
magic_enum::enum_cast<T>(value.toStdString(),
|
||||
magic_enum::case_insensitive)
|
||||
qmagicenum::enumCast<T>(value, qmagicenum::CASE_INSENSITIVE)
|
||||
.value_or(setting.defaultValue);
|
||||
|
||||
auto i = magic_enum::enum_integer(enumValue);
|
||||
|
||||
Reference in New Issue
Block a user