55 lines
1.3 KiB
C++
55 lines
1.3 KiB
C++
#pragma once
|
|
#include "configlist.hpp"
|
|
#include "configobject.hpp"
|
|
|
|
namespace ZShell::config {
|
|
|
|
class PlayerAliasEntry : public ConfigObject {
|
|
Q_OBJECT
|
|
QML_ANONYMOUS
|
|
|
|
CFG_PROPERTY(QString, from)
|
|
CFG_PROPERTY(QString, to)
|
|
|
|
public:
|
|
explicit PlayerAliasEntry(QObject* parent = nullptr)
|
|
: ConfigObject(parent) {}
|
|
|
|
[[nodiscard]] QStringList identityKeys() const override {
|
|
return {QStringLiteral("from")};
|
|
}
|
|
};
|
|
|
|
CONFIG_LIST_TYPE(PlayerAliasEntry, PlayerAliasList)
|
|
|
|
class Services : public ConfigObject {
|
|
Q_OBJECT
|
|
QML_ANONYMOUS
|
|
|
|
CFG_PROPERTY(qreal, audioIncrement, 0.1)
|
|
CFG_PROPERTY(qreal, brightnessIncrement, 0.1)
|
|
CFG_PROPERTY(bool, ddcutilService, true)
|
|
CFG_PROPERTY(QString, defaultPlayer, QStringLiteral("Spotify"))
|
|
CFG_PROPERTY(QString, gpuType, QStringLiteral("NVIDIA"))
|
|
CFG_PROPERTY(qreal, maxVolume, 1)
|
|
CFG_PROPERTY(qreal, minBrightness, 0.01)
|
|
CONFIG_LIST(
|
|
PlayerAliasList,
|
|
playerAliases,
|
|
{
|
|
vmap(
|
|
{{"from", QStringLiteral("com.github.th_ch.youtube_music")},
|
|
{"to", QStringLiteral("YT Music")}}),
|
|
})
|
|
CFG_PROPERTY(bool, updates, true)
|
|
CFG_PROPERTY(bool, useFahrenheit, false)
|
|
CFG_PROPERTY(bool, useTwelveHourClock, false)
|
|
CFG_PROPERTY(int, visualizerBars, 50)
|
|
CFG_PROPERTY(QString, weatherLocation, QString())
|
|
|
|
public:
|
|
explicit Services(QObject* parent = nullptr) : ConfigObject(parent) {}
|
|
};
|
|
|
|
} // namespace ZShell::config
|