AusweisApp2
DiagnosisTreeModel.h
gehe zur Dokumentation dieser Datei
1 /*
2  * \copyright Copyright (c) 2018-2020 Governikus GmbH & Co. KG, Germany
3  */
4 
5 #pragma once
6 
11 #include "DiagnosisItem.h"
12 
13 #include <QAbstractItemModel>
14 #include <QObject>
15 #include <QSharedPointer>
16 #include <QVector>
17 
18 class test_DiagnosisTreeModel;
19 
20 namespace governikus
21 {
22 
24  : public QAbstractItemModel
25 {
26  Q_OBJECT
27 
28  private:
29  friend class ::test_DiagnosisTreeModel;
30  QSharedPointer<DiagnosisContext> mContext;
31  QSharedPointer<DiagnosisItem> mRootItem;
32  QSharedPointer<DiagnosisItem> mAppVersionItem;
33  QSharedPointer<DiagnosisItem> mOperatingSystemItem;
34  QSharedPointer<DiagnosisItem> mReaderItem;
35  QSharedPointer<DiagnosisItem> mPcScItem;
36  QSharedPointer<DiagnosisItem> mPairedDevices;
37  QSharedPointer<DiagnosisItem> mNetworkInterfaces;
38  QSharedPointer<DiagnosisItem> mNetworkConnectionTest;
39  QSharedPointer<DiagnosisItem> mInstalledAntivirus;
40  QSharedPointer<DiagnosisItem> mWindowsFirewall;
41  QSharedPointer<DiagnosisItem> mTimestampItem;
42  DiagnosisAntivirusDetection mAntivirusDetection;
43  DiagnosisFirewallDetection mFirewallDetection;
44  DiagnosisConnectionTest mConnectionTest;
45 
46  void initAppVersionInfo();
47  void insertPcScComponentList(const QVector<DiagnosisContext::ComponentInfo>& pComponents, const QSharedPointer<DiagnosisItem>& pParentItem);
48  void removeChildItems(const QModelIndex& pIndex, const QSharedPointer<DiagnosisItem>& pParentItem);
49  static const QString boolToString(bool pBoolean);
50 
51  private Q_SLOTS:
52  void onReaderInfosChanged();
53  void onPcscInfoChanged();
54  void onTimestampChanged();
55  void onNetworkInfoChanged();
56  void onRemoteInfosChanged();
57  void onAntivirusInformationChanged();
58  void onAntivirusDetectionFailed();
59  void onFirewallInformationReady();
60  void onFirewallInformationFailed();
61  void onConnectionTestDone();
62 
63  public:
64  explicit DiagnosisTreeModel(const QSharedPointer<DiagnosisContext>& pContext);
65 
66  QVariant data(const QModelIndex& pIndex, int pRole) const override;
67  QModelIndex index(int pRow, int pColumn, const QModelIndex& pParent = QModelIndex()) const override;
68  QModelIndex parent(const QModelIndex& pIndex) const override;
69  int rowCount(const QModelIndex& pParent) const override;
70  int columnCount(const QModelIndex& pParent) const override;
71  QVariant headerData(int section, Qt::Orientation orientation, int role) const override;
72 
73  QDateTime getCreationTime() const;
74  Q_INVOKABLE QString getCreationTimeString() const;
75  QString getAsPlaintext() const;
76 };
77 
78 } // namespace governikus
Definition: DiagnosisAntivirusDetection.h:52
Definition: DiagnosisConnectionTest.h:24
Definition: DiagnosisFirewallDetection.h:74
Definition: DiagnosisTreeModel.h:25
QDateTime getCreationTime() const
Definition: DiagnosisTreeModel.cpp:580
int columnCount(const QModelIndex &pParent) const override
Definition: DiagnosisTreeModel.cpp:573
QVariant headerData(int section, Qt::Orientation orientation, int role) const override
Definition: DiagnosisTreeModel.cpp:606
Q_INVOKABLE QString getCreationTimeString() const
Definition: DiagnosisTreeModel.cpp:586
QString getAsPlaintext() const
Definition: DiagnosisTreeModel.cpp:592
QModelIndex index(int pRow, int pColumn, const QModelIndex &pParent=QModelIndex()) const override
Definition: DiagnosisTreeModel.cpp:498
QModelIndex parent(const QModelIndex &pIndex) const override
Definition: DiagnosisTreeModel.cpp:528
QVariant data(const QModelIndex &pIndex, int pRole) const override
Definition: DiagnosisTreeModel.cpp:480
int rowCount(const QModelIndex &pParent) const override
Definition: DiagnosisTreeModel.cpp:552
DiagnosisTreeModel(const QSharedPointer< DiagnosisContext > &pContext)
Definition: DiagnosisTreeModel.cpp:17
Implementation of ActivationContext for Intent based activation on Android systems.
Definition: ActivationContext.h:15