Akonadi::EntityMimeTypeFilterModel Class

class Akonadi::EntityMimeTypeFilterModel

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

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

Public Functions

EntityMimeTypeFilterModel(QObject *parent = nullptr)
virtual ~EntityMimeTypeFilterModel() override
void addMimeTypeExclusionFilter(const QString &mimeType)
void addMimeTypeExclusionFilters(const QStringList &mimeTypes)
void addMimeTypeInclusionFilter(const QString &mimeType)
void addMimeTypeInclusionFilters(const QStringList &mimeTypes)
void clearFilters()
QStringList mimeTypeExclusionFilters() const
QStringList mimeTypeInclusionFilters() const
void setHeaderGroup(Akonadi::EntityTreeModel::HeaderGroup headerGroup)

Detailed Description

This class can be used on top of an EntityTreeModel to exclude entities by mimetype or to include only certain mimetypes.

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

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

 Akonadi::EntityTreeView *view = new Akonadi::EntityTreeView( this );
 view->setModel( proxy );

@li If a mimetype is in both the exclusion list and the inclusion list, it is excluded. @li If the mimeTypeInclusionFilter is empty, all mimetypes are accepted (except if they are in the exclusion filter of course).

Author: Bruno Virlet <bruno.virlet@gmail.com> Author: Stephen Kelly <steveire@gmail.com>

Member Function Documentation

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

Creates a new entity mime type filter model.

parent The parent object.

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

Destroys the entity mime type filter model.

void EntityMimeTypeFilterModel::addMimeTypeExclusionFilter(const QString &mimeType)

Add mime type to be excluded by the filter.

mimeType A mime type to be excluded.

void EntityMimeTypeFilterModel::addMimeTypeExclusionFilters(const QStringList &mimeTypes)

Add mimetypes to filter out

mimeTypes A list to exclude from the model.

void EntityMimeTypeFilterModel::addMimeTypeInclusionFilter(const QString &mimeType)

Add mime type to be shown by the filter.

mimeType A mime type to be shown.

void EntityMimeTypeFilterModel::addMimeTypeInclusionFilters(const QStringList &mimeTypes)

Add mime types to be shown by the filter.

mimeTypes A list of mime types to be included.

void EntityMimeTypeFilterModel::clearFilters()

Clear all mime type filters.

QStringList EntityMimeTypeFilterModel::mimeTypeExclusionFilters() const

Returns the list of mime type exclusion filters.

QStringList EntityMimeTypeFilterModel::mimeTypeInclusionFilters() const

Returns the list of mime type inclusion filters.

void EntityMimeTypeFilterModel::setHeaderGroup(Akonadi::EntityTreeModel::HeaderGroup headerGroup)

Sets the header set of the filter model. headerGroup the header to set.

See also EntityTreeModel::HeaderGroup.