Krita Source Code Documentation
Loading...
Searching...
No Matches
KisPrefixedOptionDataWrapper< T > Struct Template Reference

#include <KisPrefixedOptionDataWrapper.h>

+ Inheritance diagram for KisPrefixedOptionDataWrapper< T >:

Public Member Functions

 KisPrefixedOptionDataWrapper (const QString &_prefix)
 
bool read (const KisPropertiesConfiguration *setting)
 
void write (KisPropertiesConfiguration *setting) const
 

Public Attributes

QString prefix
 

Static Public Attributes

static constexpr bool supports_prefix = true
 

Detailed Description

template<typename T>
struct KisPrefixedOptionDataWrapper< T >

KisPrefixedOptionDataWrapper wraps an option data type so that it would support prefixed loading/saving. That is mostly used for masked brush features.

Definition at line 19 of file KisPrefixedOptionDataWrapper.h.

Constructor & Destructor Documentation

◆ KisPrefixedOptionDataWrapper()

template<typename T >
KisPrefixedOptionDataWrapper< T >::KisPrefixedOptionDataWrapper ( const QString & _prefix)
inline

Definition at line 23 of file KisPrefixedOptionDataWrapper.h.

24 : prefix(_prefix)
25 {
26 }

Member Function Documentation

◆ read()

template<typename T >
bool KisPrefixedOptionDataWrapper< T >::read ( const KisPropertiesConfiguration * setting)
inline

Definition at line 28 of file KisPrefixedOptionDataWrapper.h.

28 {
29 if (!setting) return false;
30
31 if (prefix.isEmpty()) {
32 return T::read(setting);
33 } else {
34 KisPropertiesConfiguration prefixedSetting;
35 setting->getPrefixedProperties(prefix, &prefixedSetting);
36 return T::read(&prefixedSetting);
37 }
38 }
void getPrefixedProperties(const QString &prefix, KisPropertiesConfiguration *config) const

References KisPropertiesConfiguration::getPrefixedProperties(), and KisPrefixedOptionDataWrapper< T >::prefix.

◆ write()

template<typename T >
void KisPrefixedOptionDataWrapper< T >::write ( KisPropertiesConfiguration * setting) const
inline

Definition at line 40 of file KisPrefixedOptionDataWrapper.h.

40 {
41 if (prefix.isEmpty()) {
42 T::write(setting);
43 } else {
44 KisPropertiesConfiguration prefixedSetting;
45 T::write(&prefixedSetting);
46 setting->setPrefixedProperties(prefix, &prefixedSetting);
47 }
48 }
void setPrefixedProperties(const QString &prefix, const KisPropertiesConfiguration *config)

References KisPrefixedOptionDataWrapper< T >::prefix, and KisPropertiesConfiguration::setPrefixedProperties().

Member Data Documentation

◆ prefix

template<typename T >
QString KisPrefixedOptionDataWrapper< T >::prefix

Definition at line 50 of file KisPrefixedOptionDataWrapper.h.

◆ supports_prefix

template<typename T >
constexpr bool KisPrefixedOptionDataWrapper< T >::supports_prefix = true
staticconstexpr

Definition at line 21 of file KisPrefixedOptionDataWrapper.h.


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