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 WorkflowRequest;
18 class WorkflowContext;
19 
23 defineEnumType(UiModule,
24  CURRENT,
25  DEFAULT,
26  IDENTIFY,
27  SETTINGS,
28  PINMANAGEMENT,
29  HISTORY,
30  HELP,
31  PROVIDER,
32  SELF_AUTHENTICATION,
33 
34  // Desktop only
35  TUTORIAL,
36  UPDATEINFORMATION,
37 
38  // Mobile only
39  REMOTE_SERVICE,
40  CHECK_ID_CARD,
41  SMART
42  )
43 
44 class UIPlugIn
45  : public QObject
46 {
47  Q_OBJECT
48 
49  public:
50  UIPlugIn() = default;
51  ~UIPlugIn() override = default;
52 
53  public Q_SLOTS:
54  virtual void doShutdown() = 0;
55  virtual void onWorkflowStarted(QSharedPointer<WorkflowContext> pContext) = 0;
56  virtual void onWorkflowFinished(QSharedPointer<WorkflowContext> pContext) = 0;
57  virtual void onApplicationInitialized();
58  virtual void onApplicationStarted();
59  virtual void onShowUi(UiModule pModule);
60  virtual void onHideUi();
61  virtual void onTranslationChanged();
62  virtual void onProxyAuthenticationRequired(const QNetworkProxy& pProxy, QAuthenticator* pAuthenticator);
63  virtual void onUiDomination(const UIPlugIn* pUi, const QString& pInformation, bool pAccepted);
64  virtual void onUiDominationReleased();
65 
66  Q_SIGNALS:
67  void fireWorkflowRequested(const QSharedPointer<WorkflowRequest>& pRequest);
68  void fireQuitApplicationRequest(int pExitCode = EXIT_SUCCESS);
69  void fireCloseReminderFinished(bool pDontRemindAgain);
70  void fireApplicationActivated();
71 
72  void fireShowUserInformation(const QString& pInformationMessage);
73  void fireUiDominationRequest(const UIPlugIn* pUi, const QString& pInformation);
74  void fireUiDominationRelease();
75  void fireRestartApplicationRequested();
76 };
77 
78 } // namespace governikus
79 
80 Q_DECLARE_INTERFACE(governikus::UIPlugIn, "governikus.UIPlugIn")
A simple template renderer.
Definition: ActivationContext.h:15
defineEnumType(ActivationType, UNKNOWN, SHOWUI, STATUS, TCTOKENURL) defineEnumType(StatusFormat
Format types for status responses.