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

#include <OpenTypeFeatureModel.h>

+ Inheritance diagram for OpenTypeFeatureFilterModel:

Signals

void filterAvailableChanged ()
 
void searchTextChanged ()
 

Public Member Functions

bool filterAvailable () const
 
Q_INVOKABLE QString firstValidTag () const
 
 OpenTypeFeatureFilterModel (QObject *parent=nullptr)
 
QString searchText () const
 
void setFilterAvailable (bool newFilterAvailable)
 
void setSearchText (const QString &newSearchText)
 

Protected Member Functions

bool filterAcceptsRow (int source_row, const QModelIndex &source_parent) const override
 

Properties

bool filterAvailable
 
QString searchText
 

Private Attributes

bool m_filterAvailable
 

Detailed Description

Definition at line 17 of file OpenTypeFeatureModel.h.

Constructor & Destructor Documentation

◆ OpenTypeFeatureFilterModel()

OpenTypeFeatureFilterModel::OpenTypeFeatureFilterModel ( QObject * parent = nullptr)

Definition at line 359 of file OpenTypeFeatureModel.cpp.

360 : QSortFilterProxyModel(parent)
361{
362
363}

Member Function Documentation

◆ filterAcceptsRow()

bool OpenTypeFeatureFilterModel::filterAcceptsRow ( int source_row,
const QModelIndex & source_parent ) const
overrideprotected

Definition at line 373 of file OpenTypeFeatureModel.cpp.

374{
375 const QModelIndex idx = sourceModel()->index(source_row, 0, source_parent);
376 if (!idx.isValid()) return false;
377 const bool available = sourceModel()->data(idx, AllOpenTypeFeaturesModel::Available).toBool();
378 if (m_filterAvailable && !available) return false;
379 if (filterRegularExpression().pattern().isEmpty()) return true;
380 const QString tag = sourceModel()->data(idx, AllOpenTypeFeaturesModel::Tag).toString();
381 const QString name = sourceModel()->data(idx, Qt::DisplayRole).toString();
382 return (tag.contains(filterRegularExpression()) || name.contains(filterRegularExpression()));
383}
const char * name(StandardAction id)

References AllOpenTypeFeaturesModel::Available, m_filterAvailable, and AllOpenTypeFeaturesModel::Tag.

◆ filterAvailable()

bool OpenTypeFeatureFilterModel::filterAvailable ( ) const

Definition at line 385 of file OpenTypeFeatureModel.cpp.

386{
387 return m_filterAvailable;
388}

References m_filterAvailable.

◆ filterAvailableChanged

void OpenTypeFeatureFilterModel::filterAvailableChanged ( )
signal

◆ firstValidTag()

QString OpenTypeFeatureFilterModel::firstValidTag ( ) const

Definition at line 365 of file OpenTypeFeatureModel.cpp.

366{
367 const QModelIndex idx = index(0, 0, QModelIndex());
368 if (!idx.isValid()) return QString();
369 return data(idx, AllOpenTypeFeaturesModel::Tag).toString();
370}

References AllOpenTypeFeaturesModel::Tag.

◆ searchText()

QString OpenTypeFeatureFilterModel::searchText ( ) const

Definition at line 399 of file OpenTypeFeatureModel.cpp.

400{
401 return filterRegularExpression().pattern();
402}

◆ searchTextChanged

void OpenTypeFeatureFilterModel::searchTextChanged ( )
signal

◆ setFilterAvailable()

void OpenTypeFeatureFilterModel::setFilterAvailable ( bool newFilterAvailable)

Definition at line 390 of file OpenTypeFeatureModel.cpp.

391{
392 if (m_filterAvailable == newFilterAvailable)
393 return;
394 m_filterAvailable = newFilterAvailable;
395 invalidateFilter();
397}

References filterAvailableChanged(), and m_filterAvailable.

◆ setSearchText()

void OpenTypeFeatureFilterModel::setSearchText ( const QString & newSearchText)

Definition at line 404 of file OpenTypeFeatureModel.cpp.

405{
406 if (filterRegularExpression().pattern() == newSearchText)
407 return;
408 setFilterRegularExpression(newSearchText);
409 emit searchTextChanged();
410}

References searchTextChanged().

Member Data Documentation

◆ m_filterAvailable

bool OpenTypeFeatureFilterModel::m_filterAvailable
private

Definition at line 41 of file OpenTypeFeatureModel.h.

Property Documentation

◆ filterAvailable

bool OpenTypeFeatureFilterModel::filterAvailable
readwrite

Definition at line 20 of file OpenTypeFeatureModel.h.

◆ searchText

QString OpenTypeFeatureFilterModel::searchText
readwrite

Definition at line 21 of file OpenTypeFeatureModel.h.


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