Krita Source Code Documentation
Loading...
Searching...
No Matches
kis_texture_option.h
Go to the documentation of this file.
1/* This file is part of the KDE project
2 * SPDX-FileCopyrightText: 2012 Boudewijn Rempt <boud@valdyas.org>
3 * SPDX-FileCopyrightText: 2021 Deif Lou <ginoba@gmail.com>
4 *
5 * SPDX-License-Identifier: LGPL-2.0-or-later
6 */
7
8#ifndef KIS_TEXTURE_OPTION_H
9#define KIS_TEXTURE_OPTION_H
10
11#include <kritapaintop_export.h>
12
13#include <kis_paint_device.h>
15#include <kis_types.h>
18
19#include "KisTextureMaskInfo.h"
20
21
22class KoPattern;
23class KoResource;
26
27#include <KisStandardOptions.h>
29
30
31class PAINTOP_EXPORT KisTextureOption
32{
33public:
35 KoCanvasResourcesInterfaceSP canvasResourcesInterface,
36 int levelOfDetail,
37 KisBrushTextureFlags flags = None);
38
39 bool m_enabled {false};
40
47 void apply(KisFixedPaintDeviceSP dab, const QPoint& offset, const KisPaintInformation & info);
48 static QList<KoResourceLoadResult> prepareLinkedResources(const KisPropertiesConfigurationSP setting, KisResourcesInterfaceSP resourcesInterface);
49 static QList<KoResourceLoadResult> prepareEmbeddedResources(const KisPropertiesConfigurationSP setting, KisResourcesInterfaceSP resourcesInterface);
50 bool applyingGradient() const;
51
52 static bool applyingGradient(const KisPropertiesConfiguration *settings);
53 static bool requiresEffectiveCompositeOp(const KisPropertiesConfiguration *settings);
54
55private:
56 void applyLightness(KisFixedPaintDeviceSP dab, const QPoint& offset, const KisPaintInformation& info);
57 void applyGradient(KisFixedPaintDeviceSP dab, const QPoint& offset, const KisPaintInformation& info);
58 void fillProperties(const KisPropertiesConfiguration *setting, KisResourcesInterfaceSP resourcesInterface, KoCanvasResourcesInterfaceSP canvasResourcesInterface);
59private:
60
61 int m_offsetX {0};
62 int m_offsetY {0};
64 bool m_useSoftTexturing {false};
67
68 int m_levelOfDetail {0};
69
70private:
73 KisBrushTextureFlags m_flags;
75};
76
77#endif // KIS_TEXTURE_OPTION_H
a provider-like interface class for accessing resource sources in Krita.
KisTextureMaskInfoSP m_maskInfo
KisBrushTextureFlags m_flags
KisCachedPaintDevice m_cachedPaintDevice
KisStrengthOption m_strengthOption
KoAbstractGradientSP m_gradient
KoCachedGradient m_cachedGradient
Write API docs here.
Definition KoPattern.h:21