AusweisApp2
 Alle Klassen Namensbereiche Dateien Funktionen Variablen Typdefinitionen Aufzählungen Aufzählungswerte Propertys Freundbeziehungen Makrodefinitionen
HistoryModel.h
gehe zur Dokumentation dieser Datei
1 
7 #pragma once
8 
10 #include "HistorySettings.h"
12 
13 #include <QAbstractListModel>
14 #include <QPointer>
15 #include <QSortFilterProxyModel>
16 
17 namespace governikus
18 {
19 
21  : public QSortFilterProxyModel
22 {
23  Q_OBJECT
24 
25  public:
26  Q_INVOKABLE bool removeRows(int pRow, int pCount, const QModelIndex& pParent = QModelIndex()) override;
27 
29 
30  virtual ~HistoryProxyModel() override;
31 };
32 
33 
35  : public QSortFilterProxyModel
36 {
37  Q_OBJECT
38 
39  private:
40  QPointer<HistorySettings> mHistorySettings;
41 
42  ProviderConfigurationInfo mProvider;
43 
44  protected:
45  bool filterAcceptsRow(int pSourceRow, const QModelIndex& pSourceParent) const override;
46 
47  public:
48  ProviderNameFilterModel(HistorySettings* pHistorySettings);
49 
50  virtual ~ProviderNameFilterModel() override;
51 
52  Q_INVOKABLE void setProviderAddress(const QString& pProviderAddress);
53 
54 };
55 
56 
58  : public QAbstractListModel
59 {
60  Q_OBJECT
61  Q_PROPERTY(HistoryProxyModel * filter READ getFilterModel CONSTANT)
64  Q_PROPERTY(bool enabled READ isEnabled WRITE setEnabled NOTIFY fireEnabledChanged)
65 
66  QPointer<HistorySettings> mHistorySettings;
70 
71  private:
72  QVector<QMetaObject::Connection> mConnections;
73 
74  ProviderConfigurationInfo determineProviderFor(const HistoryInfo& pHistoryInfo) const;
75 
76  bool isEnabled() const;
77  void setEnabled(bool pEnabled);
78  void updateConnections();
79 
80  private Q_SLOTS:
81  void onHistoryEntriesChanged();
82  void onProvidersChanged();
83 
84  Q_SIGNALS:
85  void fireEnabledChanged(bool pValue);
86 
87  public:
88  HistoryModel(HistorySettings* pHistorySettings, QObject* pParent = nullptr);
89  virtual ~HistoryModel() override;
90 
92  {
93  SUBJECT = Qt::UserRole + 1,
113  };
114 
115  int rowCount(const QModelIndex& = QModelIndex()) const override;
116  QVariant data(const QModelIndex& pIndex, int pRole = Qt::DisplayRole) const override;
117  QHash<int, QByteArray> roleNames() const override;
118  Q_INVOKABLE bool removeRows(int pRow, int pCount, const QModelIndex& pParent = QModelIndex()) override;
119 
120  Q_INVOKABLE HistoryProxyModel* getFilterModel();
123 };
124 
125 } /* namespace governikus */
int rowCount(const QModelIndex &=QModelIndex()) const override
Definition: HistoryModel.cpp:187
Definition: HistoryModel.h:57
Definition: HistoryModel.h:34
Definition: HistoryModel.h:112
Q_INVOKABLE void setProviderAddress(const QString &pProviderAddress)
Definition: HistoryModel.cpp:88
Q_INVOKABLE HistoryProxyModel * getFilterModel()
Definition: HistoryModel.cpp:380
Q_INVOKABLE bool removeRows(int pRow, int pCount, const QModelIndex &pParent=QModelIndex()) override
Definition: HistoryModel.cpp:361
Definition: HistoryModel.h:95
ProviderNameFilterModel nameFilter
Definition: HistoryModel.h:62
Definition: HistoryModel.h:105
Definition: HistoryModelSearchFilter.h:16
Definition: HistoryModel.h:98
Definition: HistoryModel.h:97
Definition: HistoryModel.h:103
HistoryRoles
Definition: HistoryModel.h:91
HistoryModelSearchFilter searchFilter
Definition: HistoryModel.h:63
HistoryProxyModel filter
Definition: HistoryModel.h:61
Definition: HistoryModel.h:96
Definition: HistoryModel.h:93
virtual ~HistoryProxyModel() override
Definition: HistoryModel.cpp:52
HistoryProxyModel()
Definition: HistoryModel.cpp:47
HistoryModelSearchFilter mHistoryModelSearchFilter
Definition: HistoryModel.h:69
bool enabled
Definition: HistoryModel.h:64
Definition: ProviderConfigurationInfo.h:23
Q_INVOKABLE bool removeRows(int pRow, int pCount, const QModelIndex &pParent=QModelIndex()) override
Definition: HistoryModel.cpp:57
Definition: HistoryModel.h:108
bool filterAcceptsRow(int pSourceRow, const QModelIndex &pSourceParent) const override
Definition: HistoryModel.cpp:63
Definition: HistoryModel.h:20
QPointer< HistorySettings > mHistorySettings
Definition: HistoryModel.h:66
QHash< int, QByteArray > roleNames() const override
Definition: HistoryModel.cpp:334
virtual ~ProviderNameFilterModel() override
Definition: HistoryModel.cpp:83
Definition: HistoryModel.h:109
ProviderNameFilterModel(HistorySettings *pHistorySettings)
Definition: HistoryModel.cpp:77
Represents a history entry, i.e.
Definition: HistoryInfo.h:21
void fireEnabledChanged(bool pValue)
HistoryProxyModel mFilterModel
Definition: HistoryModel.h:67
Definition: HistoryModel.h:111
ProviderNameFilterModel mNameFilterModel
Definition: HistoryModel.h:68
Definition: HistoryModel.h:107
Definition: HistoryModel.h:94
HistoryModelSearchFilter * getHistoryModelSearchFilter()
Definition: HistoryModel.cpp:392
Definition: HistoryModel.h:100
QVariant data(const QModelIndex &pIndex, int pRole=Qt::DisplayRole) const override
Definition: HistoryModel.cpp:193
Q_INVOKABLE ProviderNameFilterModel * getNameFilterModel()
Definition: HistoryModel.cpp:386