Krita Source Code Documentation
Loading...
Searching...
No Matches
KoDerivedResourceConverter.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2016 Dmitry Kazakov <dimula73@gmail.com>
3 *
4 * SPDX-License-Identifier: GPL-2.0-or-later
5 */
6
7#ifndef __KO_DERIVED_RESOURCE_CONVERTER_H
8#define __KO_DERIVED_RESOURCE_CONVERTER_H
9
10#include <QScopedPointer>
11#include <QSharedPointer>
12#include "kritaflake_export.h"
13
14class QVariant;
15
47 class KRITAFLAKE_EXPORT KoDerivedResourceConverter
48{
49public:
57 KoDerivedResourceConverter(int key, int sourceKey);
59
60 int key() const;
61 int sourceKey() const;
62
63 QVariant readFromSource(const QVariant &value);
64 QVariant writeToSource(const QVariant &value,
65 const QVariant &sourceValue,
66 bool *changed);
67
68 virtual bool notifySourceChanged(const QVariant &sourceValue);
69
70protected:
75 virtual QVariant fromSource(const QVariant &value) = 0;
76
81 virtual QVariant toSource(const QVariant &value, const QVariant &sourceValue) = 0;
82
83private:
84 struct Private;
85 const QScopedPointer<Private> m_d;
86};
87
89
90#endif /* __KO_DERIVED_RESOURCE_CONVERTER_H */
float value(const T *src, size_t ch)
QSharedPointer< KoDerivedResourceConverter > KoDerivedResourceConverterSP
virtual QVariant toSource(const QVariant &value, const QVariant &sourceValue)=0
virtual QVariant fromSource(const QVariant &value)=0
const QScopedPointer< Private > m_d