Akonadi::CollectionFilterProxyModel Class

class Akonadi::CollectionFilterProxyModel

A proxy model that filters collections by mime type. More...

Header: #include <Akonadi/CollectionFilterProxyModel>
CMake: find_package(KPim6 REQUIRED COMPONENTS AkonadiCore)
target_link_libraries(mytarget PRIVATE KPim6::AkonadiCore)
Inherits: QSortFilterProxyModel

Public Functions

CollectionFilterProxyModel(QObject *parent = nullptr)
virtual ~CollectionFilterProxyModel() override
void addMimeTypeFilter(const QString &mimeType)
void addMimeTypeFilters(const QStringList &mimeTypes)
void clearFilters()
QStringList mimeTypeFilters() const
void setExcludeVirtualCollections(bool exclude)

Detailed Description

This class can be used on top of a CollectionModel to filter out all collections that doesn't match a given mime type.

For instance, a mail application will use addMimeType( "message/rfc822" ) to only show collections containing mail.

de

Akonadi::CollectionModel *model = new Akonadi::CollectionModel( this );

Akonadi::CollectionFilterProxyModel *proxy = new Akonadi::CollectionFilterProxyModel(); proxy->addMimeTypeFilter( "message/rfc822" ); proxy->setSourceModel( model );

QTreeView *view = new QTreeView( this ); view->setModel( proxy );

@author Bruno Virlet <bruno.virlet@gmail.com>

Member Function Documentation

[explicit] CollectionFilterProxyModel::CollectionFilterProxyModel(QObject *parent = nullptr)

Creates a new collection proxy filter model.

 parent The parent object.

[override virtual noexcept] CollectionFilterProxyModel::~CollectionFilterProxyModel()

Destroys the collection proxy filter model.

void CollectionFilterProxyModel::addMimeTypeFilter(const QString &mimeType)

Adds a mime type to be shown by the filter.

 mimeType A mime type to be shown.

void CollectionFilterProxyModel::addMimeTypeFilters(const QStringList &mimeTypes)

Adds a list of mime types to be shown by the filter.

 mimeTypes A list of mime types to be shown.

void CollectionFilterProxyModel::clearFilters()

Clears all mime type filters.

QStringList CollectionFilterProxyModel::mimeTypeFilters() const

Returns the list of mime type filters.

void CollectionFilterProxyModel::setExcludeVirtualCollections(bool exclude)

Sets whether we want virtual collections to be filtered or not. By default, virtual collections are accepted.

 exclude If true, virtual collections aren't accepted.