AusweisApp2
TabButtonGroup.h
gehe zur Dokumentation dieser Datei
1 
9 #pragma once
10 
11 #include <QAccessibleWidget>
12 #include <QToolButton>
13 
14 namespace governikus
15 {
16 
17 class ExclusiveButtonGroup;
18 
19 
23 class TabButton
24  : public QToolButton
25 {
26  Q_OBJECT
27 
28  public:
29  TabButton(QWidget* pParent = nullptr);
30  virtual ~TabButton() override;
31 
32  protected:
33  virtual void focusInEvent(QFocusEvent* pEvent) override;
34  virtual void nextCheckState() override;
35 };
36 
47  : public QWidget
48 {
49  Q_OBJECT
50 
51  public:
52  TabButtonGroup(QWidget* pParent = nullptr);
53  virtual ~TabButtonGroup() override;
54 
55  void addButton(QAbstractButton* pButton);
56 
57  void setWorkflowActive(bool pWorkflowActiv);
58 
59  virtual bool eventFilter(QObject* pWatched, QEvent* pEvent) override;
60 
61  private Q_SLOTS:
62  void onButtonToggled(QAbstractButton* pButton, bool pChecked);
63 
64  private:
65  QAbstractButton* getNextPrevFocussableButton(QAbstractButton* pCurrentButton, bool pNext, bool pCycle) const;
66  void updateFocusPolicies();
67 
68  private:
69  ExclusiveButtonGroup* mButtonGroup;
70  bool mWorkflowActive;
71  void paintEvent(QPaintEvent*) override;
72 
73  Q_SIGNALS:
74  void buttonToggled(QAbstractButton* pButton, bool pChecked);
75 };
76 
82  : public QAccessibleWidget
83 {
84  public:
85  AccessibleTabButton(QWidget* pWidget);
86 
87  TabButton* getTabButton() const;
88 
89  virtual QString text(QAccessible::Text pText) const override;
90 
91  virtual QStringList actionNames() const override;
92  virtual void doAction(const QString& pActionName) override;
93 
94 };
95 
101  : public QAccessibleWidget
102 {
103  public:
104  AccessibleTabButtonGroup(QWidget* pWidget);
105  virtual ~AccessibleTabButtonGroup();
106 
108 };
109 
110 } // namespace governikus
virtual bool eventFilter(QObject *pWatched, QEvent *pEvent) override
Definition: TabButtonGroup.cpp:104
virtual ~TabButton() override
Definition: TabButtonGroup.cpp:47
TabButton(QWidget *pParent=nullptr)
Definition: TabButtonGroup.cpp:40
A push button that is presented to accessibility clients as a page tab.
Definition: TabButtonGroup.h:23
TabButton * getTabButton() const
Definition: TabButtonGroup.cpp:285
AccessibleTabButton(QWidget *pWidget)
Definition: TabButtonGroup.cpp:279
virtual void nextCheckState() override
Definition: TabButtonGroup.cpp:59
Implementation of ActivationContext for Intent based activation on Android systems.
Definition: ActivationContext.h:14
void buttonToggled(QAbstractButton *pButton, bool pChecked)
void addButton(QAbstractButton *pButton)
Definition: TabButtonGroup.cpp:83
virtual ~TabButtonGroup() override
Definition: TabButtonGroup.cpp:78
Definition: ExclusiveButtonGroup.h:19
virtual void focusInEvent(QFocusEvent *pEvent) override
Definition: TabButtonGroup.cpp:52
virtual void doAction(const QString &pActionName) override
Definition: TabButtonGroup.cpp:304
AccessibleTabButtonGroup(QWidget *pWidget)
Definition: TabButtonGroup.cpp:313
Implementation private class providing the accessibility functionality for TabButton.
Definition: TabButtonGroup.h:81
TabButtonGroup(QWidget *pParent=nullptr)
Definition: TabButtonGroup.cpp:65
Implementation private class providing the accessibility functionality for TabButtonGroup.
Definition: TabButtonGroup.h:100
TabButtonGroup * getTabButtonGroup() const
Definition: TabButtonGroup.cpp:324
virtual QString text(QAccessible::Text pText) const override
Definition: TabButtonGroup.cpp:291
void setWorkflowActive(bool pWorkflowActiv)
Definition: TabButtonGroup.cpp:98
virtual ~AccessibleTabButtonGroup()
Definition: TabButtonGroup.cpp:319
virtual QStringList actionNames() const override
Definition: TabButtonGroup.cpp:298
A widget that is presented to accessibility clients as a page tab list, but uses TabButtons as tabs.
Definition: TabButtonGroup.h:46