Krita Source Code Documentation
Loading...
Searching...
No Matches
kis_psd_layer_style.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2014 Boudewijn Rempt <boud@valdyas.org>
3 *
4 * SPDX-License-Identifier: GPL-2.0-or-later
5 */
6#ifndef KIS_PSD_LAYER_STYLE_H
7#define KIS_PSD_LAYER_STYLE_H
8
9class QIODevice;
10class QUuid;
11
12
13#include <psd.h>
14
15#include "kis_types.h"
16#include "kritaimage_export.h"
17
20
21
29class KRITAIMAGE_EXPORT KisPSDLayerStyle : public KoResource
30{
31
32public:
33 KisPSDLayerStyle(const QString &filename = "", KisResourcesInterfaceSP resourcesInterface = KisResourcesInterfaceSP());
34 virtual ~KisPSDLayerStyle();
37
38 KoResourceSP clone() const override;
39
40 bool isSerializable() const override;
41 bool loadFromDevice(QIODevice *dev, KisResourcesInterfaceSP resourcesInterface) override;
42 bool saveToDevice(QIODevice *dev) const override;
43
44 void clear();
45
46 QString name() const override;
47 void setName(const QString &value);
48
49 QUuid uuid() const;
50 void setUuid(const QUuid &value);
51
52 QString psdUuid() const;
53 void setPsdUuid(const QString &value);
54
55 QPair<QString, QString> resourceType() const override
56 {
57 return QPair<QString, QString>(ResourceType::LayerStyles, "");
58 }
59
63 bool isEmpty() const;
64
65 bool isEnabled() const;
66 void setEnabled(bool value);
67
69 const psd_layer_effects_drop_shadow* dropShadow() const;
70 const psd_layer_effects_inner_shadow* innerShadow() const;
71 const psd_layer_effects_outer_glow* outerGlow() const;
72 const psd_layer_effects_inner_glow* innerGlow() const;
74 const psd_layer_effects_color_overlay* colorOverlay() const;
75 const psd_layer_effects_gradient_overlay* gradientOverlay() const;
76 const psd_layer_effects_pattern_overlay* patternOverlay() const;
78 const psd_layer_effects_bevel_emboss* bevelAndEmboss() const;
79
82 psd_layer_effects_inner_shadow* innerShadow();
86 psd_layer_effects_color_overlay* colorOverlay();
87 psd_layer_effects_gradient_overlay* gradientOverlay();
88 psd_layer_effects_pattern_overlay* patternOverlay();
90 psd_layer_effects_bevel_emboss* bevelAndEmboss();
91
92
98
103 void setResourcesInterface(KisResourcesInterfaceSP resourcesInterface);
104
108 bool hasLocalResourcesSnapshot() const;
109
113 KisPSDLayerStyleSP cloneWithResourcesSnapshot(KisResourcesInterfaceSP globalResourcesInterface, KoCanvasResourcesInterfaceSP canvasResourcesInterface) const;
114
115 QList<KoResourceLoadResult> embeddedResources(KisResourcesInterfaceSP globalResourcesInterface) const override;
116
117 QList<int> requiredCanvasResources() const override;
118
119private:
120 struct Private;
121 Private * const d;
122};
123
124#endif // KIS_PSD_LAYER_STYLE_H
float value(const T *src, size_t ch)
QSharedPointer< KisResourcesInterface > KisResourcesInterfaceSP
Definition KoResource.h:29
QSharedPointer< KisPSDLayerStyle > KisPSDLayerStyleSP
const QString LayerStyles
The KisPSDLayerStyle class implements loading, saving and applying the PSD layer effects.
KisResourcesInterfaceSP resourcesInterface() const
const psd_layer_effects_satin * satin() const
QString name() const override
psd_layer_effects_satin * satin()
KisPSDLayerStyle operator=(const KisPSDLayerStyle &rhs)=delete
const psd_layer_effects_context * context() const
QUuid uuid() const
psd_layer_effects_stroke * stroke()
const psd_layer_effects_stroke * stroke() const
psd_layer_effects_context * context()
QPair< QString, QString > resourceType() const override
virtual QList< KoResourceLoadResult > embeddedResources(KisResourcesInterfaceSP globalResourcesInterface) const
void setName(const QString &name)
virtual bool isSerializable() const
virtual KoResourceSP clone() const =0
virtual QList< int > requiredCanvasResources() const
virtual bool saveToDevice(QIODevice *dev) const
virtual bool loadFromDevice(QIODevice *dev, KisResourcesInterfaceSP resourcesInterface)=0