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
16namespace governikus
17{
18
20 : public QAbstractListModel
21{
22 Q_OBJECT
23
24 static QString createCostString(double pCostsPerMinute, double pCostsPerCall);
25 static QString createAmountString(double pCents);
26
27 private:
28 QVector<QMetaObject::Connection> mConnections;
29 bool mIncludeCategories;
30
31 void updateConnections();
32
33 private Q_SLOTS:
34 void onProvidersChanged();
35
36 public:
38 {
39 CATEGORY = Qt::UserRole + 1,
54 TYPE
55 };
56
57 explicit ProviderModel(QObject* pParent = nullptr);
58 ~ProviderModel() override = default;
59
60 int rowCount(const QModelIndex&) const override;
61 QVariant data(const QModelIndex& pIndex, int pRole = Qt::DisplayRole) const override;
62 QHash<int, QByteArray> roleNames() const override;
63
64 void setIncludeCategories(bool pIncludeCategories);
65 bool getIncludeCategories() const;
66
67 static const QStringList& getProviderCategories();
68
69 static QString createCostString(const CallCost& pCosts);
70};
71
72
73} // namespace governikus
Definition: CallCost.h:17
Definition: ProviderModel.h:21
bool getIncludeCategories() const
Definition: ProviderModel.cpp:221
QHash< int, QByteArray > roleNames() const override
Definition: ProviderModel.cpp:190
static const QStringList & getProviderCategories()
Definition: ProviderModel.cpp:227
ProviderRoles
Definition: ProviderModel.h:38
@ CATEGORY
Definition: ProviderModel.h:39
@ HOMEPAGE_BASE
Definition: ProviderModel.h:46
@ ADDRESS_DOMAIN
Definition: ProviderModel.h:44
@ PHONE_COST
Definition: ProviderModel.h:48
@ LONGNAME
Definition: ProviderModel.h:41
@ LONGDESCRIPTION
Definition: ProviderModel.h:42
@ PHONE
Definition: ProviderModel.h:47
@ SORT_ROLE
Definition: ProviderModel.h:53
@ POSTALADDRESS
Definition: ProviderModel.h:50
@ ICON
Definition: ProviderModel.h:51
@ IMAGE
Definition: ProviderModel.h:52
@ HOMEPAGE
Definition: ProviderModel.h:45
@ SHORTNAME
Definition: ProviderModel.h:40
@ ADDRESS
Definition: ProviderModel.h:43
@ TYPE
Definition: ProviderModel.h:54
@ EMAIL
Definition: ProviderModel.h:49
ProviderModel(QObject *pParent=nullptr)
Definition: ProviderModel.cpp:69
int rowCount(const QModelIndex &) const override
Definition: ProviderModel.cpp:78
void setIncludeCategories(bool pIncludeCategories)
Definition: ProviderModel.cpp:213
~ProviderModel() override=default
QVariant data(const QModelIndex &pIndex, int pRole=Qt::DisplayRole) const override
Definition: ProviderModel.cpp:84
A simple template renderer.
Definition: ActivationContext.h:15