AusweisApp2
 Alle Klassen Namensbereiche Dateien Funktionen Variablen Typdefinitionen Aufzählungen Aufzählungswerte Propertys Freundbeziehungen Makrodefinitionen
AbstractState.h
gehe zur Dokumentation dieser Datei
1 
7 #pragma once
8 
10 #include "Result.h"
11 
12 #include <QSharedPointer>
13 #include <QState>
14 
15 
16 namespace governikus
17 {
18 
19 
21  : public QState
22 {
23  Q_OBJECT
24  Q_DISABLE_COPY(AbstractState)
25 
26  template<typename ModelClass> friend class AbstractGenericState;
27 
28  private:
29  const QSharedPointer<WorkflowContext> mContext;
30  const bool mConnectOnCardRemoved;
31 
32  AbstractState(const QSharedPointer<WorkflowContext>& pContext, bool pConnectOnCardRemoved);
33  virtual void run() = 0;
34 
35  protected:
36  QVector<QMetaObject::Connection> mConnections;
37 
38  void onExit(QEvent* pEvent) override;
39 
40  void clearConnections();
41  bool isCancellationByUser();
42  void updateStatus(const GlobalStatus& pStatus);
43 
44  public:
45  static QString getClassName(const char* pName);
46 
47  template<typename T>
48  static bool isState(const QString& pState)
49  {
50  return pState == getClassName(T::staticMetaObject.className());
51  }
52 
53 
54  virtual ~AbstractState() override;
55 
56  void onEntry(QEvent* pEvent) override;
57 
58  QString getStateName() const;
59  void setStateName(const QString& pName);
60 
61  Q_SIGNALS:
62  void fireContinue();
63  void fireAbort();
64 
65  public Q_SLOTS:
67  virtual void onUserCancelled();
68  void onCardRemoved(const QString& pReaderName);
69 };
70 
71 } /* namespace governikus */
static QString getClassName(const char *pName)
Definition: AbstractState.cpp:45
void clearConnections()
Definition: AbstractState.cpp:91
virtual void onUserCancelled()
Definition: AbstractState.cpp:107
void onExit(QEvent *pEvent) override
Definition: AbstractState.cpp:82
void onStateApprovedChanged()
Definition: AbstractState.cpp:56
Definition: GlobalStatus.h:18
Definition: AbstractState.h:20
bool isCancellationByUser()
Definition: AbstractState.cpp:101
QString getStateName() const
Definition: AbstractState.cpp:32
static bool isState(const QString &pState)
Definition: AbstractState.h:48
#define T(v)
Definition: http_parser.cpp:234
Definition: WorkflowContext.h:19
Definition: AbstractGenericState.h:21
void setStateName(const QString &pName)
Definition: AbstractState.cpp:39
virtual ~AbstractState() override
Definition: AbstractState.cpp:27
void updateStatus(const GlobalStatus &pStatus)
Definition: AbstractState.cpp:125
void onCardRemoved(const QString &pReaderName)
Definition: AbstractState.cpp:115
QVector< QMetaObject::Connection > mConnections
Definition: AbstractState.h:36
void onEntry(QEvent *pEvent) override
Definition: AbstractState.cpp:66