AusweisApp2
ReaderDriverModel.h
gehe zur Dokumentation dieser Datei
1 
7 #pragma once
8 
9 #include "ReaderDetector.h"
10 
11 #include <QAbstractTableModel>
12 #include <QHash>
13 #include <QSet>
14 #include <QTime>
15 #include <QVector>
16 
17 
18 namespace governikus
19 {
20 
22  : public QAbstractTableModel
23 {
24  Q_OBJECT
25 
26  Q_PROPERTY(QString noReaderFoundIconPath READ getNoReaderFoundIconPath CONSTANT)
29 
30  private:
31  const int NUMBER_OF_COLUMNS = 2;
32 
33  QSet<const ReaderConfigurationInfo> mKnownDrivers;
34  QVector<ReaderConfigurationInfo> mConnectedReaders;
35  QTime mConnectedReadersUpdateTime;
36 
37  QString getStatus(const ReaderConfigurationInfo& pReaderConfigurationInfo) const;
38  void collectReaderData();
39 
40  bool indexIsValid(const QModelIndex& pIndex) const;
41 
42  QUrl getReaderImageUrl(const QModelIndex& pIndex) const;
43 
44  public:
45  enum ColumnId : int
46  {
49  };
50  enum UserRoles
51  {
52  READER_NAME = Qt::UserRole + 1,
58  };
59  ReaderDriverModel(QObject* pParent = nullptr);
60 
61  virtual QVariant headerData(int pSection, Qt::Orientation pOrientation, int pRole) const override;
62  virtual int rowCount(const QModelIndex& pParent = QModelIndex()) const override;
63  virtual int columnCount(const QModelIndex& pParent = QModelIndex()) const override;
64  virtual QVariant data(const QModelIndex& pIndex, int pRole = Qt::DisplayRole) const override;
65  QHash<int, QByteArray> roleNames() const override;
66 
67  QString getReaderImagePath(const QModelIndex& pIndex) const;
68  QString getNoReaderFoundIconPath() const;
69  QString getHTMLDescription(const QModelIndex& pIndex) const;
70  QString getEmptyListDescriptionStringQml() const;
71  QString getEmptyListDescriptionString(bool pWidgetUiHelp = true) const;
72  bool isInstalledSupportedReader(const QModelIndex& pIndex) const;
73  QString getLastUpdatedInformation() const;
74 
75  public Q_SLOTS:
76  void onUpdateContent();
77 
78  Q_SIGNALS:
79  void fireModelChanged();
80  void fireLanguageChanged();
81 };
82 
83 
84 } // namespace governikus
QString noReaderFoundIconPath
Definition: ReaderDriverModel.h:26
Definition: ReaderDriverModel.h:47
QHash< int, QByteArray > roleNames() const override
Definition: ReaderDriverModel.cpp:204
QString lastUpdatedInformation
Definition: ReaderDriverModel.h:28
bool isInstalledSupportedReader(const QModelIndex &pIndex) const
Definition: ReaderDriverModel.cpp:281
ReaderDriverModel(QObject *pParent=nullptr)
Definition: ReaderDriverModel.cpp:19
QString getEmptyListDescriptionString(bool pWidgetUiHelp=true) const
Definition: ReaderDriverModel.cpp:270
Definition: ReaderDriverModel.h:48
void fireModelChanged()
Definition: moc_ReaderDriverModel.cpp:196
virtual int rowCount(const QModelIndex &pParent=QModelIndex()) const override
Definition: ReaderDriverModel.cpp:145
void onUpdateContent()
Definition: ReaderDriverModel.cpp:110
UserRoles
Definition: ReaderDriverModel.h:50
Implementation of ActivationContext for Intent based activation on Android systems.
Definition: ActivationContext.h:14
QString getLastUpdatedInformation() const
Definition: ReaderDriverModel.cpp:295
virtual int columnCount(const QModelIndex &pParent=QModelIndex()) const override
Definition: ReaderDriverModel.cpp:151
Definition: ReaderDriverModel.h:56
QString getHTMLDescription(const QModelIndex &pIndex) const
Definition: ReaderDriverModel.cpp:240
Definition: ReaderDriverModel.h:53
Definition: ReaderDriverModel.h:54
QString emptyListDescriptionString
Definition: ReaderDriverModel.h:27
ColumnId
Definition: ReaderDriverModel.h:45
Definition: ReaderConfigurationInfo.h:18
QString getEmptyListDescriptionStringQml() const
Definition: ReaderDriverModel.cpp:264
Definition: ReaderDriverModel.h:52
virtual QVariant headerData(int pSection, Qt::Orientation pOrientation, int pRole) const override
Definition: ReaderDriverModel.cpp:123
void fireLanguageChanged()
Definition: moc_ReaderDriverModel.cpp:202
QString getNoReaderFoundIconPath() const
Definition: ReaderDriverModel.cpp:217
Definition: ReaderDriverModel.h:21
QString getReaderImagePath(const QModelIndex &pIndex) const
Definition: ReaderDriverModel.cpp:229
virtual QVariant data(const QModelIndex &pIndex, int pRole=Qt::DisplayRole) const override
Definition: ReaderDriverModel.cpp:157