2024-08-07 14:05:18 +00:00
|
|
|
/*
|
2024-09-17 19:00:25 +00:00
|
|
|
* Deskflow -- mouse and keyboard sharing utility
|
2025-01-24 00:11:17 +00:00
|
|
|
* SPDX-FileCopyrightText: (C) 2024 Symless Ltd.
|
|
|
|
|
* SPDX-License-Identifier: GPL-2.0-only WITH LicenseRef-OpenSSL-Exception
|
2024-08-07 14:05:18 +00:00
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
2024-08-12 15:39:18 +00:00
|
|
|
#include "gui/config/IConfigScopes.h"
|
|
|
|
|
|
2024-08-07 14:05:18 +00:00
|
|
|
#include <QString>
|
|
|
|
|
|
2024-09-17 19:00:25 +00:00
|
|
|
namespace deskflow::gui {
|
2024-08-07 14:05:18 +00:00
|
|
|
|
2024-10-17 18:04:35 +00:00
|
|
|
class IAppConfig
|
|
|
|
|
{
|
2024-09-17 19:00:25 +00:00
|
|
|
using IConfigScopes = deskflow::gui::IConfigScopes;
|
2024-08-12 15:39:18 +00:00
|
|
|
|
2024-08-07 14:05:18 +00:00
|
|
|
public:
|
|
|
|
|
virtual ~IAppConfig() = default;
|
2024-08-09 08:08:29 +00:00
|
|
|
|
|
|
|
|
//
|
2024-08-12 15:39:18 +00:00
|
|
|
// Getters
|
2024-08-09 08:08:29 +00:00
|
|
|
//
|
|
|
|
|
|
2024-08-12 15:39:18 +00:00
|
|
|
virtual IConfigScopes &scopes() const = 0;
|
2024-08-09 08:08:29 +00:00
|
|
|
virtual bool isActiveScopeSystem() const = 0;
|
|
|
|
|
virtual bool isActiveScopeWritable() const = 0;
|
|
|
|
|
|
|
|
|
|
//
|
2024-08-12 15:39:18 +00:00
|
|
|
// Setters
|
2024-08-09 08:08:29 +00:00
|
|
|
//
|
|
|
|
|
|
|
|
|
|
virtual void setLoadFromSystemScope(bool loadFromSystemScope) = 0;
|
2024-08-07 14:05:18 +00:00
|
|
|
};
|
|
|
|
|
|
2024-09-17 19:00:25 +00:00
|
|
|
} // namespace deskflow::gui
|