Krita Source Code Documentation
Loading...
Searching...
No Matches
kis_precision_option.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2012 Dmitry Kazakov <dimula73@gmail.com>
3 * SPDX-FileCopyrightText: 2014 Mohit Goyal <mohit.bits2011@gmail.com>
4 *
5 * SPDX-License-Identifier: GPL-2.0-or-later
6 */
7
8#ifndef __KIS_PRECISION_OPTION_H
9#define __KIS_PRECISION_OPTION_H
10
11#include <QString>
12#include <kritapaintop_export.h>
14
15const QString PRECISION_LEVEL = "KisPrecisionOption/precisionLevel";
16const QString AUTO_PRECISION_ENABLED = "KisPrecisionOption/AutoPrecisionEnabled";
17const QString STARTING_SIZE = "KisPrecisionOption/SizeToStartFrom";
18const QString DELTA_VALUE = "KisPrecisionOption/DeltaValue";
19
20
21namespace KisBrushModel {
22struct PrecisionData : public boost::equality_comparable<PrecisionData>
23{
25 bool useAutoPrecision = false;
26
27 friend bool operator==(const PrecisionData &lhs, const PrecisionData &rhs);
28 static PrecisionData read(const KisPropertiesConfiguration *config);
29 void write(KisPropertiesConfiguration *config) const;
30};
31}
32
33class PAINTOP_EXPORT KisPrecisionOption
34{
35public:
37
38 int effectivePrecisionLevel(qreal effectiveDabSize) const;
39 void setHasImprecisePositionOptions(bool value);
40 bool hasImprecisePositionOptions() const;
41
42 int precisionLevel() const;
43 void setPrecisionLevel(int precisionLevel);
44 void setAutoPrecisionEnabled(int);
45 bool autoPrecisionEnabled();
46
47private:
48 bool m_hasImprecisePositionOptions {false};
50};
51
52#endif /* __KIS_PRECISION_OPTION_H */
float value(const T *src, size_t ch)
KisBrushModel::PrecisionData m_precisionData
const QString PRECISION_LEVEL
const QString DELTA_VALUE
const QString AUTO_PRECISION_ENABLED
const QString STARTING_SIZE
static PrecisionData read(const KisPropertiesConfiguration *config)
void write(KisPropertiesConfiguration *config) const
friend bool operator==(const PrecisionData &lhs, const PrecisionData &rhs)