more unfinished changes, process tab for dashboard

This commit is contained in:
2026-09-30 14:26:50 +02:00
parent 0bfda04e91
commit 359f832609
98 changed files with 8633 additions and 2983 deletions
+33
View File
@@ -0,0 +1,33 @@
#pragma once
#include <qhash.h>
#include <qjsonvalue.h>
#include <qtclasshelpermacros.h>
namespace ZShell::settings {
class Quarantine {
public:
explicit Quarantine() = default;
virtual ~Quarantine() = default;
virtual void insert(const QString& key, const QJsonValue& value) = 0;
[[nodiscard]] virtual bool remove(const QString& key) = 0;
[[nodiscard]] virtual bool isEmpty() const = 0;
[[nodiscard]] virtual QJsonValue apply(const QJsonValue& json) const = 0;
Q_DISABLE_COPY_MOVE(Quarantine)
};
class ObjectQuarantine : public Quarantine {
public:
void insert(const QString& key, const QJsonValue& value) override;
[[nodiscard]] bool remove(const QString& key) override;
[[nodiscard]] bool isEmpty() const override;
[[nodiscard]] QJsonValue apply(const QJsonValue& json) const override;
private:
QHash<QString, QJsonValue> m_quarantine;
};
} // namespace ZShell::settings