Krita Source Code Documentation
Loading...
Searching...
No Matches
KisLayerStyleProjectionPlane Class Reference

#include <kis_layer_style_projection_plane.h>

+ Inheritance diagram for KisLayerStyleProjectionPlane:

Public Member Functions

QRect accessRect (const QRect &rect, KisLayer::PositionToFilthy pos) const override
 
QVector< KisLayerStyleFilterProjectionPlaneSPallStyles () const
 
void apply (KisPainter *painter, const QRect &rect) override
 
void applyComplexPlane (KisPainter *painter, KisLayerStyleFilterProjectionPlaneSP plane, const QRect &rect, KisPaintDeviceSP originalClone)
 
QRect changeRect (const QRect &rect, KisLayer::PositionToFilthy pos) const override
 
KisPaintDeviceList getLodCapableDevices () const override
 
bool hasKnockoutStyles () const
 
bool hasOverlayStyles () const
 
void initSourcePlane (KisLayer *sourceLayer)
 
 KisLayerStyleProjectionPlane (const KisLayerStyleProjectionPlane &rhs, KisLayer *sourceLayer, KisPSDLayerStyleSP clonedStyle)
 
 KisLayerStyleProjectionPlane (KisLayer *sourceLayer)
 
QRect looseUserVisibleBounds () const override
 
QRect needRect (const QRect &rect, KisLayer::PositionToFilthy pos) const override
 
QRect needRectForOriginal (const QRect &rect) const override
 
QRect recalculate (const QRect &rect, KisNodeSP filthyNode, KisRenderPassFlags flags) override
 
QRect tightUserVisibleBounds () const override
 
 ~KisLayerStyleProjectionPlane () override
 
- Public Member Functions inherited from Private
 Private (KisCanvas2 *c)
 
- Public Member Functions inherited from KisAbstractProjectionPlane
 KisAbstractProjectionPlane ()
 
virtual ~KisAbstractProjectionPlane ()
 

Static Public Member Functions

static KisAbstractProjectionPlaneSP factoryObject (KisLayer *sourceLayer)
 

Public Attributes

KisCachedPaintDevice cachedPaintDevice
 
KisCachedSelection cachedSelection
 
bool canHaveChildNodes = false
 
bool dependsOnLowerNodes = false
 
KisLayersourceLayer = 0
 
KisLayerProjectionPlaneWSP sourceProjectionPlane
 
KisStrokeLayerStyleFilterProjectionPlaneSP strokeStyle
 
KisPSDLayerStyleSP style
 
QVector< KisLayerStyleFilterProjectionPlaneSPstylesAfter
 
QVector< KisLayerStyleFilterProjectionPlaneSPstylesBefore
 
QVector< KisLayerStyleFilterProjectionPlaneSPstylesOverlay
 
- Public Attributes inherited from Private
KisCanvas2canvas
 
int displayedFrame
 
int intendedFrame
 

Private Member Functions

void init (KisLayer *sourceLayer, KisPSDLayerStyleSP layerStyle)
 
 KisLayerStyleProjectionPlane (KisLayer *sourceLayer, KisPSDLayerStyleSP style)
 
QRect stylesNeedRect (const QRect &rect) const
 

Private Attributes

const QScopedPointer< Privatem_d
 

Friends

class KisLayerStyleProjectionPlaneTest
 

Detailed Description

Definition at line 27 of file kis_layer_style_projection_plane.cpp.

Constructor & Destructor Documentation

◆ KisLayerStyleProjectionPlane() [1/3]

KisLayerStyleProjectionPlane::KisLayerStyleProjectionPlane ( KisLayer * sourceLayer)

Definition at line 90 of file kis_layer_style_projection_plane.cpp.

91 : m_d(new Private)
92{
94
97 }
98
100}
#define KIS_ASSERT_RECOVER(cond)
Definition kis_assert.h:55
QSharedPointer< T > toQShared(T *ptr)
void init(KisLayer *sourceLayer, KisPSDLayerStyleSP layerStyle)
KisPSDLayerStyleSP layerStyle
Definition kis_layer.cc:171
The KisPSDLayerStyle class implements loading, saving and applying the PSD layer effects.

References init(), KIS_ASSERT_RECOVER, KisLayer::layerStyle, sourceLayer, style, and toQShared().

◆ KisLayerStyleProjectionPlane() [2/3]

KisLayerStyleProjectionPlane::KisLayerStyleProjectionPlane ( const KisLayerStyleProjectionPlane & rhs,
KisLayer * sourceLayer,
KisPSDLayerStyleSP clonedStyle )

Definition at line 102 of file kis_layer_style_projection_plane.cpp.

103 : m_d(new Private)
104{
105 m_d->initSourcePlane(sourceLayer);
106 m_d->style = clonedStyle;
107
109 m_d->style = toQShared(new KisPSDLayerStyle());
110 }
111
112 Q_FOREACH (KisLayerStyleFilterProjectionPlaneSP plane, rhs.m_d->stylesBefore) {
113 m_d->stylesBefore << toQShared(new KisLayerStyleFilterProjectionPlane(*plane, sourceLayer, m_d->style));
114 }
115
116 Q_FOREACH (KisLayerStyleFilterProjectionPlaneSP plane, rhs.m_d->stylesAfter) {
117 m_d->stylesAfter << toQShared(new KisLayerStyleFilterProjectionPlane(*plane, sourceLayer, m_d->style));
118 }
119
120 Q_FOREACH (KisLayerStyleFilterProjectionPlaneSP plane, rhs.m_d->stylesOverlay) {
121 m_d->stylesOverlay << toQShared(new KisLayerStyleFilterProjectionPlane(*plane, sourceLayer, m_d->style));
122 }
123
124 m_d->strokeStyle.reset(new KisStrokeLayerStyleFilterProjectionPlane(*rhs.m_d->strokeStyle, sourceLayer, m_d->style));
125}
#define KIS_SAFE_ASSERT_RECOVER(cond)
Definition kis_assert.h:126

References KIS_SAFE_ASSERT_RECOVER, m_d, sourceLayer, and toQShared().

◆ ~KisLayerStyleProjectionPlane()

KisLayerStyleProjectionPlane::~KisLayerStyleProjectionPlane ( )
override

Definition at line 211 of file kis_layer_style_projection_plane.cpp.

212{
213}

◆ KisLayerStyleProjectionPlane() [3/3]

KisLayerStyleProjectionPlane::KisLayerStyleProjectionPlane ( KisLayer * sourceLayer,
KisPSDLayerStyleSP style )
private

Definition at line 128 of file kis_layer_style_projection_plane.cpp.

129 : m_d(new Private)
130{
131 init(sourceLayer, layerStyle);
132}

References init(), and sourceLayer.

Member Function Documentation

◆ accessRect()

QRect KisLayerStyleProjectionPlane::accessRect ( const QRect & rect,
KisLayer::PositionToFilthy pos ) const
overridevirtual

Works like KisNode::needRect(), but includes more transformations of the layer

Implements KisAbstractProjectionPlane.

Definition at line 388 of file kis_layer_style_projection_plane.cpp.

389{
390 KisAbstractProjectionPlaneSP sourcePlane = m_d->sourceProjectionPlane.toStrongRef();
391 QRect accessRect = sourcePlane->accessRect(rect, pos);
392
393 if (m_d->style->isEnabled()) {
394 Q_FOREACH (const KisAbstractProjectionPlaneSP plane, m_d->allStyles()) {
395 accessRect |= plane->accessRect(rect, KisLayer::N_ABOVE_FILTHY);
396 }
397 }
398
399 return accessRect;
400}
QRect accessRect(const QRect &rect, KisLayer::PositionToFilthy pos) const override
@ N_ABOVE_FILTHY
Definition kis_node.h:59

References accessRect(), m_d, and KisNode::N_ABOVE_FILTHY.

◆ allStyles()

QVector< KisLayerStyleFilterProjectionPlaneSP > KisLayerStyleProjectionPlane::allStyles ( ) const
inline

Definition at line 53 of file kis_layer_style_projection_plane.cpp.

53 {
55 result << stylesBefore;
56 result << stylesOverlay;
57 result << strokeStyle;
58 result << stylesAfter;
59 return result;
60 }
KisStrokeLayerStyleFilterProjectionPlaneSP strokeStyle
QVector< KisLayerStyleFilterProjectionPlaneSP > stylesOverlay
QVector< KisLayerStyleFilterProjectionPlaneSP > stylesAfter
QVector< KisLayerStyleFilterProjectionPlaneSP > stylesBefore

◆ apply()

void KisLayerStyleProjectionPlane::apply ( KisPainter * painter,
const QRect & rect )
overridevirtual

Writes the data of the projection plane onto a global projection using painter object.

Implements KisAbstractProjectionPlane.

Definition at line 260 of file kis_layer_style_projection_plane.cpp.

261{
262 KisLayerProjectionPlaneSP sourcePlane = m_d->sourceProjectionPlane.toStrongRef();
263
264 if (m_d->style->isEnabled()) {
265 if (m_d->hasOverlayStyles() || m_d->hasKnockoutStyles()) {
266 KisCachedPaintDevice::Guard d1(painter->device(), m_d->cachedPaintDevice);
267 KisPaintDeviceSP originalClone = d1.device();
268 originalClone->makeCloneFromRough(painter->device(), rect);
269
270 Q_FOREACH (const KisLayerStyleFilterProjectionPlaneSP plane, m_d->stylesBefore) {
271 m_d->applyComplexPlane(painter, plane, rect, originalClone);
272 }
273
274 KritaUtils::ThresholdMode sourceThresholdMode =
275 !m_d->strokeStyle->isEmpty() ?
276 m_d->strokeStyle->sourcePlaneOpacityThresholdRequirement() :
278
279 if (m_d->hasOverlayStyles()) {
280 KisCachedSelection::Guard s1(m_d->cachedSelection);
281 KisSelectionSP knockoutSelection = s1.selection();
282 KisLsUtils::selectionFromAlphaChannel(m_d->sourceLayer->projection(), knockoutSelection, rect);
283
284 KisCachedPaintDevice::Guard d2(painter->device(), m_d->cachedPaintDevice);
285 KisPaintDeviceSP sourceProjection = d2.device();
286 sourceProjection->makeCloneFromRough(painter->device(), rect);
287
288 {
289 KisPainter overlayPainter(sourceProjection);
290 sourcePlane->applyMaxOutAlpha(&overlayPainter, rect, KritaUtils::ThresholdMaxOut);
291
292 Q_FOREACH (const KisAbstractProjectionPlaneSP plane, m_d->stylesOverlay) {
293 plane->apply(&overlayPainter, rect);
294 }
295 }
296
297 KritaUtils::thresholdOpacityAlpha8(knockoutSelection->pixelSelection(), rect, sourceThresholdMode);
298
300 blower.setKnockoutSelection(knockoutSelection);
301 blower.apply(painter, sourceProjection, rect);
302
303 blower.resetKnockoutSelection();
304 } else {
305 sourcePlane->applyMaxOutAlpha(painter, rect, sourceThresholdMode);
306 }
307
308 if (!m_d->strokeStyle->isEmpty()) {
309 m_d->applyComplexPlane(painter, m_d->strokeStyle, rect, originalClone);
310 }
311
312 Q_FOREACH (KisLayerStyleFilterProjectionPlaneSP plane, m_d->stylesAfter) {
313 m_d->applyComplexPlane(painter, plane, rect, originalClone);
314 }
315 } else {
316 Q_FOREACH (const KisAbstractProjectionPlaneSP plane, m_d->stylesBefore) {
317 plane->apply(painter, rect);
318 }
319
320 sourcePlane->apply(painter, rect);
321
322 Q_FOREACH (const KisAbstractProjectionPlaneSP plane, m_d->stylesAfter) {
323 plane->apply(painter, rect);
324 }
325 }
326 } else {
327 sourcePlane->apply(painter, rect);
328 }
329}
QPointF s1
void setKnockoutSelection(KisSelectionSP selection)
void apply(KisPainter *painter, KisPaintDeviceSP mergedStyle, const QRect &rect) const
void makeCloneFromRough(KisPaintDeviceSP src, const QRect &minimalRect)
KisPaintDeviceSP device
void selectionFromAlphaChannel(KisPaintDeviceSP srcDevice, KisSelectionSP dstSelection, const QRect &srcRect)
void thresholdOpacityAlpha8(KisPaintDeviceSP device, const QRect &rect, ThresholdMode mode)
KisPixelSelectionSP pixelSelection

References KisLayerStyleKnockoutBlower::apply(), KisCachedPaintDevice::Guard::device(), KisPainter::device, m_d, KisPaintDevice::makeCloneFromRough(), KisSelection::pixelSelection, KisLayerStyleKnockoutBlower::resetKnockoutSelection(), s1, KisLsUtils::selectionFromAlphaChannel(), KisLayerStyleKnockoutBlower::setKnockoutSelection(), KisPainter::strokeStyle, KritaUtils::ThresholdMaxOut, KritaUtils::ThresholdNone, and KritaUtils::thresholdOpacityAlpha8().

◆ applyComplexPlane()

void KisLayerStyleProjectionPlane::applyComplexPlane ( KisPainter * painter,
KisLayerStyleFilterProjectionPlaneSP plane,
const QRect & rect,
KisPaintDeviceSP originalClone )

◆ changeRect()

QRect KisLayerStyleProjectionPlane::changeRect ( const QRect & rect,
KisLayer::PositionToFilthy pos ) const
overridevirtual

Works like KisNode::changeRect(), but includes more transformations of the layer

Implements KisAbstractProjectionPlane.

Definition at line 373 of file kis_layer_style_projection_plane.cpp.

374{
375 KisAbstractProjectionPlaneSP sourcePlane = m_d->sourceProjectionPlane.toStrongRef();
376 QRect layerChangeRect = sourcePlane->changeRect(rect, pos);
377 QRect changeRect = layerChangeRect;
378
379 if (m_d->style->isEnabled() && !layerChangeRect.isEmpty()) {
380 Q_FOREACH (const KisAbstractProjectionPlaneSP plane, m_d->allStyles()) {
381 changeRect |= plane->changeRect(layerChangeRect, KisLayer::N_ABOVE_FILTHY);
382 }
383 }
384
385 return changeRect;
386}
QRect changeRect(const QRect &rect, KisLayer::PositionToFilthy pos) const override

References changeRect(), m_d, and KisNode::N_ABOVE_FILTHY.

◆ factoryObject()

KisAbstractProjectionPlaneSP KisLayerStyleProjectionPlane::factoryObject ( KisLayer * sourceLayer)
static

◆ getLodCapableDevices()

KisPaintDeviceList KisLayerStyleProjectionPlane::getLodCapableDevices ( ) const
overridevirtual

Returns a list of devices which should synchronize the lod cache on update

Implements KisAbstractProjectionPlane.

Definition at line 331 of file kis_layer_style_projection_plane.cpp.

332{
334 KisAbstractProjectionPlaneSP sourcePlane = m_d->sourceProjectionPlane.toStrongRef();
335
336 if (m_d->style->isEnabled()) {
337 Q_FOREACH (const KisAbstractProjectionPlaneSP plane, m_d->allStyles()) {
338 list << plane->getLodCapableDevices();
339 }
340
341 list << sourcePlane->getLodCapableDevices();
342 } else {
343 list << sourcePlane->getLodCapableDevices();
344 }
345
346 return list;
347}

References m_d.

◆ hasKnockoutStyles()

bool KisLayerStyleProjectionPlane::hasKnockoutStyles ( ) const
inline

Definition at line 70 of file kis_layer_style_projection_plane.cpp.

70 {
72 if (!plane->knockoutBlower()->isEmpty()) return true;
73 }
74
76 if (!plane->knockoutBlower()->isEmpty()) return true;
77 }
78
79 if (!strokeStyle->knockoutBlower()->isEmpty()) return true;
80
81 return false;
82 }

◆ hasOverlayStyles()

bool KisLayerStyleProjectionPlane::hasOverlayStyles ( ) const
inline

Definition at line 62 of file kis_layer_style_projection_plane.cpp.

62 {
64 if (!plane->isEmpty()) return true;
65 }
66
67 return false;
68 }

◆ init()

void KisLayerStyleProjectionPlane::init ( KisLayer * sourceLayer,
KisPSDLayerStyleSP layerStyle )
private

Definition at line 134 of file kis_layer_style_projection_plane.cpp.

135{
137 m_d->initSourcePlane(sourceLayer);
138 m_d->style = style;
139
140 {
144 m_d->stylesBefore << toQShared(dropShadow);
145 }
146
147 {
151 m_d->stylesAfter << toQShared(outerGlow);
152 }
153
154 {
157 stroke->setStyle(new KisLsStrokeFilter(), style);
158 m_d->strokeStyle.reset(stroke);
159 }
160
161 {
164 bevelEmboss->setStyle(new KisLsBevelEmbossFilter(), style);
165 m_d->stylesAfter << toQShared(bevelEmboss);
166 }
167
168 {
169 KisLayerStyleFilterProjectionPlane *patternOverlay =
172 m_d->stylesOverlay << toQShared(patternOverlay);
173 }
174
175 {
176 KisLayerStyleFilterProjectionPlane *gradientOverlay =
179 m_d->stylesOverlay << toQShared(gradientOverlay);
180 }
181
182 {
186 m_d->stylesOverlay << toQShared(colorOverlay);
187 }
188
189 {
192 satin->setStyle(new KisLsSatinFilter(), style);
193 m_d->stylesOverlay << toQShared(satin);
194 }
195
196 {
200 m_d->stylesOverlay << toQShared(innerGlow);
201 }
202
203 {
207 m_d->stylesOverlay << toQShared(innerShadow);
208 }
209}
void setStyle(KisLayerStyleFilter *filter, KisPSDLayerStyleSP style)
#define KIS_SAFE_ASSERT_RECOVER_RETURN(cond)
Definition kis_assert.h:128

References KisLsOverlayFilter::Color, KisLsDropShadowFilter::DropShadow, KisLsOverlayFilter::Gradient, KisLsDropShadowFilter::InnerGlow, KisLsDropShadowFilter::InnerShadow, KIS_SAFE_ASSERT_RECOVER_RETURN, m_d, KisLsDropShadowFilter::OuterGlow, KisLsOverlayFilter::Pattern, KisLayerStyleFilterProjectionPlane::setStyle(), sourceLayer, style, and toQShared().

◆ initSourcePlane()

void KisLayerStyleProjectionPlane::initSourcePlane ( KisLayer * sourceLayer)
inline

◆ looseUserVisibleBounds()

QRect KisLayerStyleProjectionPlane::looseUserVisibleBounds ( ) const
overridevirtual

Return an approximate (loose) rectangle, where the contents of the plane is placed from user's point of view. It includes everything belonging to the plane (e.g. layer styles).

This rectangle contains or is bigger than the rectangle returned by tightUserVisibleBounds().

Implements KisAbstractProjectionPlane.

Definition at line 435 of file kis_layer_style_projection_plane.cpp.

436{
437 KisAbstractProjectionPlaneSP sourcePlane = m_d->sourceProjectionPlane.toStrongRef();
438 QRect rect = sourcePlane->looseUserVisibleBounds();
439
440 Q_FOREACH (const KisAbstractProjectionPlaneSP plane, m_d->allStyles()) {
441 rect |= plane->looseUserVisibleBounds();
442 }
443
444 return rect;
445}

References m_d.

◆ needRect()

QRect KisLayerStyleProjectionPlane::needRect ( const QRect & rect,
KisLayer::PositionToFilthy pos ) const
overridevirtual

Works like KisNode::needRect(), but includes more transformations of the layer

Need rect should also be adjust for the layers that generate their 'original' based on the contents of the underlying layers like KisAdjustmentLayer

See also
bug 390299

Implements KisAbstractProjectionPlane.

Definition at line 349 of file kis_layer_style_projection_plane.cpp.

350{
358 QRect needRect = rect;
359
360 const bool adjustmentAboveDirty = m_d->dependsOnLowerNodes &&
362
363 if (m_d->style->isEnabled() && adjustmentAboveDirty) {
365 }
366
367 KisAbstractProjectionPlaneSP sourcePlane = m_d->sourceProjectionPlane.toStrongRef();
368 needRect = sourcePlane->needRect(needRect, pos);
369
370 return needRect;
371}
QRect stylesNeedRect(const QRect &rect) const
QRect needRect(const QRect &rect, KisLayer::PositionToFilthy pos) const override
@ N_FILTHY
Definition kis_node.h:61

References m_d, KisNode::N_ABOVE_FILTHY, KisNode::N_FILTHY, needRect(), and stylesNeedRect().

◆ needRectForOriginal()

QRect KisLayerStyleProjectionPlane::needRectForOriginal ( const QRect & rect) const
overridevirtual

Works like KisLayer::needRectForOriginal(), but includes needed rects of layer styles

Need rect should also be adjust for the layers that generate their 'original' based on the contents of the child layers like KisGroupLayer

See also
bug 366419

Implements KisAbstractProjectionPlane.

Definition at line 402 of file kis_layer_style_projection_plane.cpp.

403{
411 QRect needRect = rect;
412
413 if (m_d->style->isEnabled()) {
415 }
416
417 KisAbstractProjectionPlaneSP sourcePlane = m_d->sourceProjectionPlane.toStrongRef();
418 needRect = sourcePlane->needRectForOriginal(needRect);
419
420 return needRect;
421}

References m_d, needRect(), and stylesNeedRect().

◆ recalculate()

QRect KisLayerStyleProjectionPlane::recalculate ( const QRect & rect,
KisNodeSP filthyNode,
KisRenderPassFlags flags )
overridevirtual

Is called by the async merger when the node is filthy and should recalculate its internal representation. For usual layers it means just calling updateProjection().

Implements KisAbstractProjectionPlane.

Definition at line 221 of file kis_layer_style_projection_plane.cpp.

222{
223 KisAbstractProjectionPlaneSP sourcePlane = m_d->sourceProjectionPlane.toStrongRef();
224 QRect result = rect;
225
226 if (m_d->style->isEnabled()) {
227 result = sourcePlane->recalculate(stylesNeedRect(rect), filthyNode, flags);
228
229 Q_FOREACH (const KisAbstractProjectionPlaneSP plane, m_d->allStyles()) {
230 plane->recalculate(rect, filthyNode, flags);
231 }
232 } else {
233 result = sourcePlane->recalculate(rect, filthyNode, flags);
234 }
235
236 return result;
237}

References m_d, and stylesNeedRect().

◆ stylesNeedRect()

QRect KisLayerStyleProjectionPlane::stylesNeedRect ( const QRect & rect) const
private

Definition at line 447 of file kis_layer_style_projection_plane.cpp.

448{
449 QRect needRect = rect;
450
451 Q_FOREACH (const KisAbstractProjectionPlaneSP plane, m_d->allStyles()) {
452 needRect |= plane->needRect(rect, KisLayer::N_ABOVE_FILTHY);
453 }
454
455 return needRect;
456}

References m_d, KisNode::N_ABOVE_FILTHY, and needRect().

◆ tightUserVisibleBounds()

QRect KisLayerStyleProjectionPlane::tightUserVisibleBounds ( ) const
overridevirtual

Return a tight rectangle, where the contents of the plane is placed from user's point of view. It includes everything belonging to the plane (e.g. layer styles).

Implements KisAbstractProjectionPlane.

Definition at line 423 of file kis_layer_style_projection_plane.cpp.

424{
425 KisAbstractProjectionPlaneSP sourcePlane = m_d->sourceProjectionPlane.toStrongRef();
426 QRect rect = sourcePlane->tightUserVisibleBounds();
427
428 Q_FOREACH (const KisAbstractProjectionPlaneSP plane, m_d->allStyles()) {
429 rect |= plane->tightUserVisibleBounds();
430 }
431
432 return rect;
433}

References m_d.

Friends And Related Symbol Documentation

◆ KisLayerStyleProjectionPlaneTest

friend class KisLayerStyleProjectionPlaneTest
friend

Definition at line 44 of file kis_layer_style_projection_plane.h.

Member Data Documentation

◆ cachedPaintDevice

KisCachedPaintDevice KisLayerStyleProjectionPlane::cachedPaintDevice

Definition at line 36 of file kis_layer_style_projection_plane.cpp.

◆ cachedSelection

KisCachedSelection KisLayerStyleProjectionPlane::cachedSelection

Definition at line 37 of file kis_layer_style_projection_plane.cpp.

◆ canHaveChildNodes

bool KisLayerStyleProjectionPlane::canHaveChildNodes = false

Definition at line 42 of file kis_layer_style_projection_plane.cpp.

◆ dependsOnLowerNodes

bool KisLayerStyleProjectionPlane::dependsOnLowerNodes = false

Definition at line 43 of file kis_layer_style_projection_plane.cpp.

◆ m_d

const QScopedPointer<Private> KisLayerStyleProjectionPlane::m_d
private

Definition at line 53 of file kis_layer_style_projection_plane.h.

◆ sourceLayer

KisLayer* KisLayerStyleProjectionPlane::sourceLayer = 0

Definition at line 38 of file kis_layer_style_projection_plane.cpp.

◆ sourceProjectionPlane

KisLayerProjectionPlaneWSP KisLayerStyleProjectionPlane::sourceProjectionPlane

Definition at line 29 of file kis_layer_style_projection_plane.cpp.

◆ strokeStyle

KisStrokeLayerStyleFilterProjectionPlaneSP KisLayerStyleProjectionPlane::strokeStyle

Definition at line 34 of file kis_layer_style_projection_plane.cpp.

◆ style

KisPSDLayerStyleSP KisLayerStyleProjectionPlane::style

Definition at line 41 of file kis_layer_style_projection_plane.cpp.

◆ stylesAfter

QVector<KisLayerStyleFilterProjectionPlaneSP> KisLayerStyleProjectionPlane::stylesAfter

Definition at line 32 of file kis_layer_style_projection_plane.cpp.

◆ stylesBefore

QVector<KisLayerStyleFilterProjectionPlaneSP> KisLayerStyleProjectionPlane::stylesBefore

Definition at line 31 of file kis_layer_style_projection_plane.cpp.

◆ stylesOverlay

QVector<KisLayerStyleFilterProjectionPlaneSP> KisLayerStyleProjectionPlane::stylesOverlay

Definition at line 33 of file kis_layer_style_projection_plane.cpp.


The documentation for this class was generated from the following files: