#pragma once
#include "configobject.hpp"
#include <QVariantList>
#include <qqmlintegration.h>

namespace ZShell::config {

class Screenshot : public ConfigObject {
	Q_OBJECT
	QML_ANONYMOUS

	CFG_PROPERTY(bool, enable_pp, false)
	CFG_PROPERTY(QString, mode, QStringLiteral("manual"))
	CFG_PROPERTY(int, radius, 49)
	CFG_PROPERTY(bool, rounding, false)
	CFG_PROPERTY(bool, saveOnCopy, false)
	CFG_PROPERTY(bool, shadow, true)
	CFG_PROPERTY(int, shadow_blur, 0)
	CFG_PROPERTY(QVariantList, shadow_color, (QVariantList{0, 0, 0, 160}))
	CFG_PROPERTY(int, shadow_offset_x, 30)
	CFG_PROPERTY(int, shadow_offset_y, 50)

	public:
	explicit Screenshot(QObject* parent = nullptr) : ConfigObject(parent) {}
};

} // namespace ZShell::config
