/* * SPDX-FileCopyrightText: 2022 Devin Lin * * SPDX-License-Identifier: GPL-2.0-or-later */ #pragma once #include #include #include #include /** * @short Wrapper class to access and control mobile shell specific settings. * * @author Devin Lin */ class QuickSettingsConfig : public QObject { Q_OBJECT public: QuickSettingsConfig(QObject *parent = nullptr); /** * Get the list of IDs of quick settings that are enabled. */ QList enabledQuickSettings() const; /** * Set the list of quick settings that are enabled. * * @param list A list of quick setting IDs. */ void setEnabledQuickSettings(QList &list); /** * Get the list of IDs of quick settings that are disabled. */ QList disabledQuickSettings() const; /** * Set the list of quick settings that are disabled. * * @param list A list of quick setting IDs. */ void setDisabledQuickSettings(QList &list); Q_SIGNALS: void enabledQuickSettingsChanged(); void disabledQuickSettingsChanged(); private: KConfigWatcher::Ptr m_configWatcher; KSharedConfig::Ptr m_config; };