21#include <QMutexLocker>
25#include <QWaitCondition>
72class DIGIKAM_DATABASE_EXPORT
ItemFilterModel::ItemFilterModelPrivate :
public QObject
84 void infosToProcess(
const QList<ItemInfo>& infos,
const QList<QVariant>& extraValues,
bool forReAdd =
true);
97 volatile unsigned int version = 0;
98 unsigned int lastDiscardVersion = 0;
99 unsigned int lastFilteredVersion = 0;
101 int sentOutForReAdd = 0;
103 QTimer* updateFilterTimer =
nullptr;
105 bool needPrepare =
false;
106 bool needPrepareComments =
false;
107 bool needPrepareTags =
false;
108 bool needPrepareGroups =
false;
118 bool hasOneMatch =
false;
119 bool hasOneMatchForText =
false;
142 void preprocessInfos(
const QList<ItemInfo>& infos,
const QList<QVariant>& extraValues);
151 void reAddItemInfos(
const QList<ItemInfo>& infos,
const QList<QVariant>& extraValues);
158 explicit ItemFilterModelPrivate(QObject*) =
delete;
Definition itemfiltersettings.h:300
Definition itemfiltermodelthreads.h:75
Definition itemfiltermodelthreads.h:59
Definition itemfiltermodel_p.h:44
ItemFilterModelTodoPackage(const QVector< ItemInfo > &infos, const QVector< QVariant > &extraValues, int version, bool isForReAdd)
Definition itemfiltermodel_p.h:49
bool isForReAdd
Definition itemfiltermodel_p.h:63
QVector< ItemInfo > infos
Definition itemfiltermodel_p.h:60
unsigned int version
Definition itemfiltermodel_p.h:62
QVector< QVariant > extraValues
Definition itemfiltermodel_p.h:61
ItemFilterModelTodoPackage()=default
QHash< qlonglong, bool > filterResults
Definition itemfiltermodel_p.h:64
Definition itemfiltermodel.h:115
ItemFilterSettings filter
Definition itemfiltermodel_p.h:92
void preprocessInfos(const QList< ItemInfo > &infos, const QList< QVariant > &extraValues)
VersionItemFilterSettings versionFilter
Definition itemfiltermodel_p.h:94
~ItemFilterModelPrivate() override
GroupItemFilterSettings groupFilter
Definition itemfiltermodel_p.h:95
void infosToProcess(const QList< ItemInfo > &infos)
void packageToFilter(const ItemFilterModelTodoPackage &package)
QList< ItemFilterModelPrepareHook * > prepareHooks
Definition itemfiltermodel_p.h:121
void infosToProcess(const QList< ItemInfo > &infos, const QList< QVariant > &extraValues, bool forReAdd=true)
void reAddItemInfos(const QList< ItemInfo > &infos, const QList< QVariant > &extraValues)
void init(ItemFilterModel *qq)
QHash< qlonglong, bool > filterResults
Definition itemfiltermodel_p.h:117
void packageDiscarded(const ItemFilterModelTodoPackage &package)
void packageFinished(const ItemFilterModelTodoPackage &package)
VersionItemFilterSettings versionFilterCopy
Definition itemfiltermodel_p.h:112
QMutex mutex
Definition itemfiltermodel_p.h:110
GroupItemFilterSettings groupFilterCopy
Definition itemfiltermodel_p.h:113
ItemFilterSettings filterCopy
Definition itemfiltermodel_p.h:111
void packageToPrepare(const ItemFilterModelTodoPackage &package)
void processAddedInfos(const QList< ItemInfo > &infos, const QList< QVariant > &extraValues)
ItemSortSettings sorter
Definition itemfiltermodel_p.h:93
Definition itemfiltersettings.h:85
Definition itemmodel.h:44
Definition itemsortsettings.h:39
Definition itemfiltersettings.h:256
Definition datefolderview.cpp:34
const int PrepareChunkSize
Definition itemfiltermodel_p.h:40
const int FilterChunkSize
Definition itemfiltermodel_p.h:41