Medical Imaging Interaction Toolkit  2025.12.02
Medical Imaging Interaction Toolkit
QmitkMultipleChoiceQuestionWidget.h
Go to the documentation of this file.
1 /*============================================================================
2 
3 The Medical Imaging Interaction Toolkit (MITK)
4 
5 Copyright (c) German Cancer Research Center (DKFZ)
6 All rights reserved.
7 
8 Use of this source code is governed by a 3-clause BSD license that can be
9 found in the LICENSE file.
10 
11 ============================================================================*/
12 
13 #ifndef QmitkMultipleChoiceQuestionWidget_h
14 #define QmitkMultipleChoiceQuestionWidget_h
15 
16 #include <QmitkQuestionWidget.h>
18 
19 class QButtonGroup;
20 class QGridLayout;
21 class QLineEdit;
22 class QPushButton;
23 
25 {
26  Q_OBJECT
27 
28 public:
29  explicit QmitkMultipleChoiceQuestionWidget(QWidget* parent = nullptr);
31 
32  QmitkQuestionWidget* CreateAnother(QWidget* parent = nullptr) const override;
34  void SetQuestion(mitk::Forms::Question* question) override;
35  void Reset() override;
36 
37 private:
38  void CreateWidgets();
39  void RemoveWidgets();
40 
41  void OnIdClicked(int id);
42  void OnTextEdited(const QString& text);
43  void OnEditingFinished();
44  void OnClearButtonClicked();
45 
47 
48  QGridLayout* m_Layout;
49  QButtonGroup* m_ButtonGroup;
50  QLineEdit* m_OtherLineEdit;
51  int m_OtherId;
52  QPushButton* m_ClearButton;
53 };
54 
55 #endif
#define MITKFORMSUI_EXPORT
void Reset() override
Reset the state of the GUI as if no interaction would have been happened yet.
QmitkMultipleChoiceQuestionWidget(QWidget *parent=nullptr)
QmitkQuestionWidget * CreateAnother(QWidget *parent=nullptr) const override
Create a new instance of the derived question widget class type.
void SetQuestion(mitk::Forms::Question *question) override
Initialize the widget based on the given question.
mitk::Forms::Question * GetQuestion() const override
Get the question associated with this widget.
Abstract base class for all types of question widgets used in a QmitkForm.
A Question whose possible responses are represented by radio buttons.
Abstract base class for all types of questions used in a Form.
Definition: mitkQuestion.h:32