refactor: use some more SettingWidget & restyle external tools page (#6023)

This commit is contained in:
pajlada
2025-03-03 16:33:13 +01:00
committed by GitHub
parent cd8247f921
commit 34429671ba
10 changed files with 545 additions and 265 deletions
+36 -2
View File
@@ -76,6 +76,15 @@ enum class ShowModerationState : int {
Never = 1,
};
enum class StreamLinkPreferredQuality : std::uint8_t {
Choose,
Source,
High,
Medium,
Low,
AudioOnly,
};
enum StreamerModeSetting {
Disabled = 0,
Enabled = 1,
@@ -538,8 +547,10 @@ public:
BoolSetting streamlinkUseCustomPath = {"/external/streamlink/useCustomPath",
false};
QStringSetting streamlinkPath = {"/external/streamlink/customPath", ""};
QStringSetting preferredQuality = {"/external/streamlink/quality",
"Choose"};
EnumStringSetting<StreamLinkPreferredQuality> preferredQuality = {
"/external/streamlink/quality",
StreamLinkPreferredQuality::Choose,
};
QStringSetting streamlinkOpts = {"/external/streamlink/options", ""};
// Custom URI Scheme
@@ -700,3 +711,26 @@ private:
Settings *getSettings();
} // namespace chatterino
template <>
constexpr magic_enum::customize::customize_t
magic_enum::customize::enum_name<chatterino::StreamLinkPreferredQuality>(
chatterino::StreamLinkPreferredQuality value) noexcept
{
using chatterino::StreamLinkPreferredQuality;
switch (value)
{
case chatterino::StreamLinkPreferredQuality::Choose:
case chatterino::StreamLinkPreferredQuality::Source:
case chatterino::StreamLinkPreferredQuality::High:
case chatterino::StreamLinkPreferredQuality::Medium:
case chatterino::StreamLinkPreferredQuality::Low:
return default_tag;
case chatterino::StreamLinkPreferredQuality::AudioOnly:
return "Audio only";
default:
return default_tag;
}
}