Krita Source Code Documentation
Loading...
Searching...
No Matches
KisMetaData::FilterRegistryModel Class Reference

#include <kis_meta_data_filter_registry_model.h>

+ Inheritance diagram for KisMetaData::FilterRegistryModel:

Public Member Functions

QVariant data (const QModelIndex &index, int role=Qt::DisplayRole) const override
 
QList< const Filter * > enabledFilters () const
 
 FilterRegistryModel ()
 
Qt::ItemFlags flags (const QModelIndex &index) const override
 
bool setData (const QModelIndex &index, const QVariant &value, int role=Qt::EditRole) override
 
virtual void setEnabledFilters (const QStringList &enabledFilters)
 enable the filters in the given list; others will be disabled.
 
 ~FilterRegistryModel () override
 
- Public Member Functions inherited from KoGenericRegistryModel< const Filter * >
QVariant data (const QModelIndex &index, int role=Qt::DisplayRole) const override
 
const Filterget (const QModelIndex &index) const
 
 KoGenericRegistryModel (KoGenericRegistry< const Filter * > *registry)
 
int rowCount (const QModelIndex &parent=QModelIndex()) const override
 
 ~KoGenericRegistryModel () override
 

Private Attributes

Private *const d
 

Detailed Description

Use this model to display a list of filters (KisMetaData::Filter) that can be enabled or disabled.

Definition at line 23 of file kis_meta_data_filter_registry_model.h.

Constructor & Destructor Documentation

◆ FilterRegistryModel()

FilterRegistryModel::FilterRegistryModel ( )

◆ ~FilterRegistryModel()

FilterRegistryModel::~FilterRegistryModel ( )
override

Definition at line 26 of file kis_meta_data_filter_registry_model.cc.

27{
28 delete d;
29}

References d.

Member Function Documentation

◆ data()

QVariant FilterRegistryModel::data ( const QModelIndex & index,
int role = Qt::DisplayRole ) const
override

Definition at line 31 of file kis_meta_data_filter_registry_model.cc.

32{
33 if (index.isValid()) {
34 if (role == Qt::CheckStateRole) {
35 if (d->enabled[index.row()]) return Qt::Checked;
36 else return Qt::Unchecked;
37 } else if (role == Qt::ToolTipRole) {
38 return get(index)->description();
39 }
40 }
42}
virtual QString description() const =0
QVariant data(const QModelIndex &index, int role=Qt::DisplayRole) const override

References d, KoGenericRegistryModel< T >::data(), KisMetaData::Filter::description(), and KoGenericRegistryModel< const Filter * >::get().

◆ enabledFilters()

QList< const Filter * > FilterRegistryModel::enabledFilters ( ) const
Returns
a list of filters that are enabled

Definition at line 59 of file kis_meta_data_filter_registry_model.cc.

60{
63 for (int i = 0; i < keys.size(); i++) {
64 if (d->enabled[i]) {
66 }
67 }
68 return enabledFilters;
69}

References d, enabledFilters(), KoGenericRegistryModel< const Filter * >::get(), KisMetaData::FilterRegistry::instance(), and KoGenericRegistry< T >::keys().

◆ flags()

Qt::ItemFlags FilterRegistryModel::flags ( const QModelIndex & index) const
override

Definition at line 54 of file kis_meta_data_filter_registry_model.cc.

55{
56 return Qt::ItemIsEnabled | Qt::ItemIsSelectable | Qt::ItemIsUserCheckable;
57}

◆ setData()

bool FilterRegistryModel::setData ( const QModelIndex & index,
const QVariant & value,
int role = Qt::EditRole )
override

Definition at line 44 of file kis_meta_data_filter_registry_model.cc.

45{
46 if (index.isValid()) {
47 if (role == Qt::CheckStateRole) {
48 d->enabled[index.row()] = value.toBool();
49 }
50 }
52}
float value(const T *src, size_t ch)

References d, and value().

◆ setEnabledFilters()

void FilterRegistryModel::setEnabledFilters ( const QStringList & enabledFilters)
virtual

enable the filters in the given list; others will be disabled.

Definition at line 71 of file kis_meta_data_filter_registry_model.cc.

72{
73 d->enabled.clear();
75 Q_FOREACH (const QString &key, keys) {
76 d->enabled.append(enabledFilters.contains(key));
77 }
78
79}

References d, enabledFilters(), KisMetaData::FilterRegistry::instance(), and KoGenericRegistry< T >::keys().

Member Data Documentation

◆ d

Private* const KisMetaData::FilterRegistryModel::d
private

Definition at line 38 of file kis_meta_data_filter_registry_model.h.


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