|
Krita Source Code Documentation
|
#include <kis_recalculate_transform_mask_job.h>
Inheritance diagram for KisRecalculateTransformMaskJob:Public Member Functions | |
| QString | debugName () const override |
| KisRecalculateTransformMaskJob (KisTransformMaskSP mask, const QRect &extraUpdateRect) | |
| int | levelOfDetail () const override |
| bool | overrides (const KisSpontaneousJob *otherJob) override |
| void | run () override |
Public Member Functions inherited from KisSpontaneousJob | |
| bool | isExclusive () const |
Public Member Functions inherited from KisRunnable | |
| virtual | ~KisRunnable () |
Private Attributes | |
| QRect | m_extraUpdateRect |
| KisTransformMaskSP | m_mask |
Additional Inherited Members | |
Protected Member Functions inherited from KisSpontaneousJob | |
| void | setExclusive (bool value) |
Definition at line 16 of file kis_recalculate_transform_mask_job.h.
| KisRecalculateTransformMaskJob::KisRecalculateTransformMaskJob | ( | KisTransformMaskSP | mask, |
| const QRect & | extraUpdateRect ) |
Definition at line 17 of file kis_recalculate_transform_mask_job.cpp.
References KisSpontaneousJob::setExclusive().
|
overridevirtual |
Implements KisRunnableWithDebugName.
Definition at line 101 of file kis_recalculate_transform_mask_job.cpp.
References m_mask.
|
overridevirtual |
Implements KisSpontaneousJob.
Definition at line 96 of file kis_recalculate_transform_mask_job.cpp.
|
overridevirtual |
Implements KisSpontaneousJob.
Definition at line 25 of file kis_recalculate_transform_mask_job.cpp.
References m_mask.
|
overridevirtual |
The mask might have been deleted from the layers stack. In such a case, don't try do update it.
Depending on whether the mask is hidden we should either update it entirely via the setDirty() call, or we can use a lightweight approach by directly regenerating the precalculated static image using KisRecalculateTransformMaskJob.
When we call NoFilthy update on a layer, its masks' change rect is not counted, because it is considered to be N_ABOVE_FILTHY. Therefore, we should expand the dirty rect manually to get the correct update
Implements KisRunnable.
Definition at line 33 of file kis_recalculate_transform_mask_job.cpp.
References KisDefaultBoundsBase::bounds(), KisSharedPtr< T >::data(), KisWeakSharedPtr< T >::data(), KisPaintDevice::defaultBounds(), DontInvalidateFrames, KisLayer::extent(), KisTransformMask::extent(), KisBaseNode::image, KisBaseNode::isAnimated(), m_extraUpdateRect, m_mask, KisNode::N_FILTHY, NoFilthy, KisLayer::original(), KisNode::parent, KisLayer::projectionPlane, KisTransformMask::recalculateStaticImage(), KisImage::requestProjectionUpdate(), KisNode::setDirty(), KisNode::setDirtyDontResetAnimationCache(), KisTransformMask::staticImageCacheIsValid(), KisTransformMask::transformParams(), KisBaseNode::visible(), and warnKrita.
|
private |
Definition at line 29 of file kis_recalculate_transform_mask_job.h.
|
private |
Definition at line 28 of file kis_recalculate_transform_mask_job.h.