AusweisApp2
UIPlugIn.h
gehe zur Dokumentation dieser Datei
1 
7 #pragma once
8 
9 #include "EnumHelper.h"
10 
11 #include <QNetworkProxy>
12 #include <QObject>
13 
14 namespace governikus
15 {
16 
17 class WorkflowContext;
18 
22 defineEnumType(UiModule,
23  CURRENT,
24  DEFAULT,
25  IDENTIFY,
26  SETTINGS,
27  PINMANAGEMENT,
28  TUTORIAL,
29  HISTORY,
30  HELP,
31  PROVIDER,
32  SELF_AUTHENTICATION,
33 
34  // Desktop only
35  UPDATEINFORMATION,
36 
37  // Mobile only
38  REMOTE_SERVICE,
39  CHECK_ID_CARD
40  )
41 
42 class UIPlugIn
43  : public QObject
44 {
45  Q_OBJECT
46 
47  public:
48  UIPlugIn();
49  ~UIPlugIn() override;
50 
51  public Q_SLOTS:
52  virtual void doShutdown() = 0;
53  virtual void onWorkflowStarted(QSharedPointer<WorkflowContext> pContext) = 0;
54  virtual void onWorkflowFinished(QSharedPointer<WorkflowContext> pContext) = 0;
55  virtual void onApplicationInitialized();
56  virtual void onApplicationStarted();
57  virtual void onShowUi(UiModule pModule);
58  virtual void onHideUi();
59  virtual void onShowReaderSettings();
60  virtual void onTranslationChanged();
61  virtual void onProxyAuthenticationRequired(const QNetworkProxy& pProxy, QAuthenticator* pAuthenticator);
62  virtual void onUiDomination(const UIPlugIn* pUi, const QString& pInformation, bool pAccepted);
63  virtual void onUiDominationReleased();
64 
65  Q_SIGNALS:
66  void fireChangePinRequested(bool pRequestTransportPin);
67  void fireAuthenticationRequest(const QUrl& pUrl);
68  void fireSelfAuthenticationRequested();
69  void fireRemoteServiceRequested();
70  void fireQuitApplicationRequest();
71  void fireQuitApplicationRequest(int pExitCode);
72  void fireCloseReminderFinished(bool pDontRemindAgain);
73  void fireApplicationActivated();
74 
75  void fireShowUserInformation(const QString& pInformationMessage);
76  void fireUiDominationRequest(const UIPlugIn* pUi, const QString& pInformation);
77  void fireUiDominationRelease();
78  void fireRestartApplicationRequested();
79 };
80 
81 } // namespace governikus
82 
83 Q_DECLARE_INTERFACE(governikus::UIPlugIn, "governikus.UIPlugIn")
defineEnumType(ActivationType, UNKNOWN, SHOWUI, STATUS, TCTOKENURL) defineEnumType(StatusFormat
Format types for status responses.
Implementation of ActivationContext for Intent based activation on Android systems.
Definition: ActivationContext.h:14