Krita Source Code Documentation
Loading...
Searching...
No Matches
KisDirtyStateSaver< T > Class Template Reference

#include <KisDirtyStateSaver.h>

Public Member Functions

 KisDirtyStateSaver (T resource)
 
 ~KisDirtyStateSaver ()
 

Private Attributes

bool m_isDirty = false
 
m_resource
 

Detailed Description

template<typename T>
class KisDirtyStateSaver< T >

Never use manual save/restore calls to KoResource::isDirty()/KoResource::setDirty()! They will lead to hard-to-tack-down bugs when the dirty state will not be restored on jumps like 'return', 'break' or exception.

Definition at line 19 of file KisDirtyStateSaver.h.

Constructor & Destructor Documentation

◆ KisDirtyStateSaver()

template<typename T >
KisDirtyStateSaver< T >::KisDirtyStateSaver ( T resource)
inline

Definition at line 22 of file KisDirtyStateSaver.h.

23 : m_resource(resource)
24 , m_isDirty(resource->isDirty())
25
26 {
27 }

◆ ~KisDirtyStateSaver()

template<typename T >
KisDirtyStateSaver< T >::~KisDirtyStateSaver ( )
inline

Definition at line 29 of file KisDirtyStateSaver.h.

29 {
30 if (m_resource) {
31 m_resource->setDirty(m_isDirty);
32 }
33 }

References KisDirtyStateSaver< T >::m_isDirty, and KisDirtyStateSaver< T >::m_resource.

Member Data Documentation

◆ m_isDirty

template<typename T >
bool KisDirtyStateSaver< T >::m_isDirty = false
private

Definition at line 37 of file KisDirtyStateSaver.h.

◆ m_resource

template<typename T >
T KisDirtyStateSaver< T >::m_resource
private

Definition at line 36 of file KisDirtyStateSaver.h.


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