Krita Source Code Documentation
Loading...
Searching...
No Matches
kis_color_sampler_stroke_strategy.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 __KIS_COLOR_SAMPLER_STROKE_STRATEGY_H
8#define __KIS_COLOR_SAMPLER_STROKE_STRATEGY_H
9
10#include <QObject>
12#include "kis_lod_transform.h"
13#include "KoColor.h"
14
16{
17 Q_OBJECT
18public:
19 class Data : public KisStrokeJobData {
20 public:
21 Data(KisPaintDeviceSP _dev, const QPoint _pt, KoColor _currentColor)
22 : dev(_dev), pt(_pt), currentColor(_currentColor)
23 {}
24
25 KisStrokeJobData* createLodClone(int levelOfDetail) override {
26 KisLodTransform t(levelOfDetail);
27 const QPoint realPoint = t.map(pt);
28
29 return new Data(dev, realPoint, currentColor);
30 }
31
33 QPoint pt;
34 KoColor currentColor; // Used for color sampler blending.
35 };
36
38 public:
40 {}
41
42 KisStrokeJobData* createLodClone(int levelOfDetail) override {
43 Q_UNUSED(levelOfDetail);
44 return new FinalizeData();
45 }
46 };
47public:
48 KisColorSamplerStrokeStrategy(int radius, int blend, int lod = 0);
50
51 void doStrokeCallback(KisStrokeJobData *data) override;
52 KisStrokeStrategy* createLodClone(int levelOfDetail) override;
53
54Q_SIGNALS:
55 void sigColorUpdated(const KoColor &color);
56 void sigFinalColorSelected(const KoColor &color);
57
58private:
59 struct Private;
60 const QScopedPointer<Private> m_d;
61};
62
63#endif /* __KIS_COLOR_SAMPLER_STROKE_STRATEGY_H */
KisStrokeJobData * createLodClone(int levelOfDetail) override
Data(KisPaintDeviceSP _dev, const QPoint _pt, KoColor _currentColor)
KisStrokeJobData * createLodClone(int levelOfDetail) override
void doStrokeCallback(KisStrokeJobData *data) override
KisStrokeStrategy * createLodClone(int levelOfDetail) override
KisColorSamplerStrokeStrategy(int radius, int blend, int lod=0)
void sigFinalColorSelected(const KoColor &color)
void sigColorUpdated(const KoColor &color)
KisPaintInformation map(KisPaintInformation pi) const