65 lines
1.7 KiB
C++
65 lines
1.7 KiB
C++
#pragma once
|
|
|
|
#include "common.hpp"
|
|
|
|
#include <QVariantList>
|
|
#include <QStringList>
|
|
#include <qqmlintegration.h>
|
|
|
|
namespace ZShell::config {
|
|
|
|
class UtilitiesSizes : public settings::ObjectNode {
|
|
CONFIG_NODE(UtilitiesSizes, settings::ObjectNode)
|
|
|
|
CONFIG_PROPERTY(int, toastWidth, 430)
|
|
CONFIG_PROPERTY(int, width, 430)
|
|
};
|
|
|
|
class Toasts : public settings::ObjectNode {
|
|
CONFIG_NODE(Toasts, settings::ObjectNode)
|
|
|
|
CONFIG_PROPERTY(bool, audioInputChanged, true)
|
|
CONFIG_PROPERTY(bool, audioOutputChanged, true)
|
|
CONFIG_PROPERTY(bool, capsLockChanged, true)
|
|
CONFIG_PROPERTY(bool, chargingChanged, true)
|
|
CONFIG_PROPERTY(bool, configLoaded, true)
|
|
CONFIG_PROPERTY(bool, dndChanged, true)
|
|
CONFIG_PROPERTY(bool, gameModeChanged, true)
|
|
CONFIG_PROPERTY(bool, kbLayoutChanged, true)
|
|
CONFIG_PROPERTY(bool, kbLimit, true)
|
|
CONFIG_PROPERTY(bool, nowPlaying, false)
|
|
CONFIG_PROPERTY(bool, numLockChanged, true)
|
|
CONFIG_PROPERTY(bool, vpnChanged, true)
|
|
};
|
|
|
|
class Vpn : public settings::ObjectNode {
|
|
CONFIG_NODE(Vpn, settings::ObjectNode)
|
|
|
|
CONFIG_PROPERTY(bool, enabled, false)
|
|
CONFIG_PROPERTY(
|
|
QStringList, provider, (QStringList{QStringLiteral("netbird")}))
|
|
};
|
|
|
|
class Utilities : public settings::ObjectNode {
|
|
CONFIG_NODE(Utilities, settings::ObjectNode)
|
|
|
|
CONFIG_PROPERTY(bool, enabled, true)
|
|
CONFIG_PROPERTY(int, maxToasts, 4)
|
|
CONFIG_SUBOBJECT(UtilitiesSizes, sizes)
|
|
CONFIG_SUBOBJECT(Toasts, toasts)
|
|
CONFIG_SUBOBJECT(Vpn, vpn)
|
|
CONFIG_LIST(
|
|
EntryList,
|
|
quickToggles,
|
|
DEFAULT_ARG(
|
|
{LIST_ENTRY(dnd, true),
|
|
LIST_ENTRY(wifi, true),
|
|
LIST_ENTRY(settings, true),
|
|
LIST_ENTRY(bluetooth, true),
|
|
LIST_ENTRY(mic, true),
|
|
LIST_ENTRY(audio, true),
|
|
LIST_ENTRY(gameMode, true)}))
|
|
};
|
|
|
|
} // namespace ZShell::config
|