20 #ifndef AKONADI_ETMCALENDAR_P_H
21 #define AKONADI_ETMCALENDAR_P_H
23 #include "etmcalendar.h"
24 #include "calendarbase_p.h"
25 #include "incidencechanger.h"
28 #include <QModelIndex>
30 class QAbstractItemModel;
31 class KCheckableProxyModel;
35 class EntityMimeTypeFilterModel;
37 class ETMCalendarPrivate :
public CalendarBasePrivate
42 explicit ETMCalendarPrivate( ETMCalendar *qq );
43 ~ETMCalendarPrivate();
46 void setupFilteredETM();
50 Akonadi::Item::List itemsFromModel(
const QAbstractItemModel *model,
51 const QModelIndex &parentIndex = QModelIndex(),
56 const QModelIndex &parentIndex = QModelIndex(),
60 Akonadi::Item itemFromIndex(
const QModelIndex &idx );
62 void itemsAdded(
const Akonadi::Item::List &items );
63 void itemsRemoved(
const Akonadi::Item::List &items );
65 void onRowsInserted(
const QModelIndex &index,
int start,
int end );
66 void onRowsRemoved(
const QModelIndex &index,
int start,
int end );
67 void onDataChanged(
const QModelIndex &topLeft,
const QModelIndex &bottomRight );
68 void onRowsMoved(
const QModelIndex &sourceParent,
int sourceStart,
int sourceEnd,
69 const QModelIndex &destinationParent,
int destinationRow );
71 void onLayoutChangedInFilteredModel();
72 void onModelResetInFilteredModel();
73 void onDataChangedInFilteredModel(
const QModelIndex &topLeft,
const QModelIndex &bottomRight );
74 void onRowsInsertedInFilteredModel(
const QModelIndex &index,
int start,
int end );
75 void onRowsAboutToBeRemovedInFilteredModel(
const QModelIndex &index,
int start,
int end );
78 QAbstractItemModel *mETM;
82 QHash<Akonadi::Entity::Id, Akonadi::Collection> mCollectionMap;
83 KCheckableProxyModel *mCheckableProxyModel;
Represents a collection of PIM items.
A proxy model that filters entities by mime type.
QList< Collection > List
Describes a list of collections.