AusweisApp2
Lade ...
Suche ...
Keine Treffer
HistoryModel.h
gehe zur Dokumentation dieser Datei
1
9#pragma once
10
12#include "HistoryProxyModel.h"
13#include "HistorySettings.h"
16
17#include <QAbstractListModel>
18
19
20class test_HistoryModel;
21
22namespace governikus
23{
24
26 : public QAbstractListModel
27{
28 Q_OBJECT
29 friend class ::test_HistoryModel;
30
31 Q_PROPERTY(HistoryProxyModel * filter READ getFilterModel CONSTANT)
32 Q_PROPERTY(ProviderNameFilterModel * nameFilter READ getNameFilterModel CONSTANT)
34 Q_PROPERTY(bool enabled READ isEnabled WRITE setEnabled NOTIFY fireEnabledChanged)
35 Q_PROPERTY(bool empty READ isEmpty NOTIFY fireEmptyChanged)
36
37 private:
38 HistoryProxyModel mFilterModel;
39 ProviderNameFilterModel mNameFilterModel;
40 HistoryModelSearchFilter mHistoryModelSearchFilter;
41 QVector<QMetaObject::Connection> mConnections;
42
43 ProviderConfigurationInfo determineProviderFor(const HistoryInfo& pHistoryInfo) const;
44 static auto& getHistorySettings();
45
46 [[nodiscard]] bool isEnabled() const;
47 void setEnabled(bool pEnabled);
48 [[nodiscard]] bool isEmpty() const;
49 void updateConnections();
50
51 private Q_SLOTS:
52 void onHistoryEntriesChanged();
53 void onProvidersChanged();
54
55 Q_SIGNALS:
56 void fireEnabledChanged(bool pValue);
57 void fireEmptyChanged(bool pValue);
58
59 public:
60 explicit HistoryModel(QObject* pParent = nullptr);
61 ~HistoryModel() override = default;
62
64 {
65 SUBJECT = Qt::UserRole + 1,
85 };
86
87 [[nodiscard]] int rowCount(const QModelIndex& = QModelIndex()) const override;
88 [[nodiscard]] QVariant data(const QModelIndex& pIndex, int pRole = Qt::DisplayRole) const override;
89 [[nodiscard]] QHash<int, QByteArray> roleNames() const override;
90 [[nodiscard]] Q_INVOKABLE bool removeRows(int pRow, int pCount, const QModelIndex& pParent = QModelIndex()) override;
91
92 [[nodiscard]] Q_INVOKABLE HistoryProxyModel* getFilterModel();
93 [[nodiscard]] Q_INVOKABLE ProviderNameFilterModel* getNameFilterModel();
95
96 Q_INVOKABLE void exportHistory(const QUrl& pFilename) const;
97
98#ifndef QT_NO_DEBUG
99 Q_INVOKABLE void createDummyEntry();
100#endif
101};
102
103} // namespace governikus
Represents a history entry, i.e.
Definition: HistoryInfo.h:24
Definition: HistoryModelSearchFilter.h:20
Definition: HistoryModel.h:27
Q_INVOKABLE HistoryProxyModel * getFilterModel()
Definition: HistoryModel.cpp:285
~HistoryModel() override=default
bool empty
Definition: HistoryModel.h:35
HistoryProxyModel * filter
Definition: HistoryModel.h:31
void fireEnabledChanged(bool pValue)
ProviderNameFilterModel * nameFilter
Definition: HistoryModel.h:32
Q_INVOKABLE void exportHistory(const QUrl &pFilename) const
Definition: HistoryModel.cpp:303
Q_INVOKABLE ProviderNameFilterModel * getNameFilterModel()
Definition: HistoryModel.cpp:291
Q_INVOKABLE void createDummyEntry()
Definition: HistoryModel.cpp:311
HistoryRoles
Definition: HistoryModel.h:64
@ PROVIDER_LONGNAME
Definition: HistoryModel.h:73
@ PROVIDER_ADDRESS
Definition: HistoryModel.h:75
@ TERMSOFUSAGE
Definition: HistoryModel.h:68
@ PROVIDER_SHORTNAME
Definition: HistoryModel.h:72
@ PROVIDER_ADDRESS_DOMAIN
Definition: HistoryModel.h:76
@ PURPOSE
Definition: HistoryModel.h:66
@ PROVIDER_EMAIL
Definition: HistoryModel.h:81
@ PROVIDER_ICON
Definition: HistoryModel.h:83
@ REQUESTEDDATA
Definition: HistoryModel.h:69
@ PROVIDER_HOMEPAGE
Definition: HistoryModel.h:77
@ PROVIDER_HOMEPAGE_BASE
Definition: HistoryModel.h:78
@ DATETIME
Definition: HistoryModel.h:67
@ PROVIDER_POSTALADDRESS
Definition: HistoryModel.h:82
@ SUBJECT
Definition: HistoryModel.h:65
@ PROVIDER_PHONE_COST
Definition: HistoryModel.h:80
@ PROVIDER_LONGDESCRIPTION
Definition: HistoryModel.h:74
@ PROVIDER_CATEGORY
Definition: HistoryModel.h:71
@ WRITTENDATA
Definition: HistoryModel.h:70
@ PROVIDER_IMAGE
Definition: HistoryModel.h:84
@ PROVIDER_PHONE
Definition: HistoryModel.h:79
QHash< int, QByteArray > roleNames() const override
Definition: HistoryModel.cpp:236
int rowCount(const QModelIndex &=QModelIndex()) const override
Definition: HistoryModel.cpp:107
Q_INVOKABLE bool removeRows(int pRow, int pCount, const QModelIndex &pParent=QModelIndex()) override
Definition: HistoryModel.cpp:263
void fireEmptyChanged(bool pValue)
HistoryModelSearchFilter * searchFilter
Definition: HistoryModel.h:33
HistoryModelSearchFilter * getHistoryModelSearchFilter()
Definition: HistoryModel.cpp:297
bool enabled
Definition: HistoryModel.h:34
QVariant data(const QModelIndex &pIndex, int pRole=Qt::DisplayRole) const override
Definition: HistoryModel.cpp:113
Definition: HistoryProxyModel.h:14
Definition: ProviderConfigurationInfo.h:25
Definition: ProviderNameFilterModel.h:20
Implementation of GeneralAuthenticate response APDUs.
Definition: CommandApdu.h:16