AusweisApp2
ProviderModel.h
gehe zur Dokumentation dieser Datei
1 
7 #pragma once
8 
9 #include "CallCost.h"
10 
11 #include <QAbstractListModel>
12 #include <QStringList>
13 #include <QVector>
14 
15 
16 namespace governikus
17 {
18 
20  : public QAbstractListModel
21 {
22 
23  Q_OBJECT
24 
25  static QString createCostString(double pCostsPerMinute, double pCostsPerCall);
26  static QString createAmountString(double pCents);
27 
28  private:
29  QVector<QMetaObject::Connection> mConnections;
30  bool mIncludeCategories;
31 
32  void updateConnections();
33 
34  private Q_SLOTS:
35  void onProvidersChanged();
36 
37  public:
39  {
40  CATEGORY = Qt::UserRole + 1,
56  TYPE
57  };
58 
59  explicit ProviderModel(QObject* pParent = nullptr);
60  ~ProviderModel() override;
61 
62  int rowCount(const QModelIndex&) const override;
63  QVariant data(const QModelIndex& pIndex, int pRole = Qt::DisplayRole) const override;
64  QHash<int, QByteArray> roleNames() const override;
65 
66  void setIncludeCategories(bool pIncludeCategories);
67  bool getIncludeCategories() const;
68 
69  static const QStringList& getProviderCategories();
70 
71  static QString createCostString(const CallCost& pCosts);
72 };
73 
74 
75 } // namespace governikus
Definition: CallCost.h:17
Definition: ProviderModel.h:21
bool getIncludeCategories() const
Definition: ProviderModel.cpp:231
QHash< int, QByteArray > roleNames() const override
Definition: ProviderModel.cpp:199
~ProviderModel() override
Definition: ProviderModel.cpp:78
static const QStringList & getProviderCategories()
Definition: ProviderModel.cpp:237
ProviderRoles
Definition: ProviderModel.h:39
@ CATEGORY
Definition: ProviderModel.h:40
@ SHORTDESCRIPTION
Definition: ProviderModel.h:43
@ HOMEPAGE_BASE
Definition: ProviderModel.h:48
@ ADDRESS_DOMAIN
Definition: ProviderModel.h:46
@ PHONE_COST
Definition: ProviderModel.h:50
@ LONGNAME
Definition: ProviderModel.h:42
@ LONGDESCRIPTION
Definition: ProviderModel.h:44
@ PHONE
Definition: ProviderModel.h:49
@ SORT_ROLE
Definition: ProviderModel.h:55
@ POSTALADDRESS
Definition: ProviderModel.h:52
@ ICON
Definition: ProviderModel.h:53
@ IMAGE
Definition: ProviderModel.h:54
@ HOMEPAGE
Definition: ProviderModel.h:47
@ SHORTNAME
Definition: ProviderModel.h:41
@ ADDRESS
Definition: ProviderModel.h:45
@ TYPE
Definition: ProviderModel.h:56
@ EMAIL
Definition: ProviderModel.h:51
ProviderModel(QObject *pParent=nullptr)
Definition: ProviderModel.cpp:69
int rowCount(const QModelIndex &) const override
Definition: ProviderModel.cpp:83
void setIncludeCategories(bool pIncludeCategories)
Definition: ProviderModel.cpp:223
QVariant data(const QModelIndex &pIndex, int pRole=Qt::DisplayRole) const override
Definition: ProviderModel.cpp:89
Implementation of ActivationContext for Intent based activation on Android systems.
Definition: ActivationContext.h:15