Slicer  5.0
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
qSlicerTerminologySelectorButton.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Library: CTK
4 
5  Copyright (c) Kitware Inc.
6 
7  Licensed under the Apache License, Version 2.0 (the "License");
8  you may not use this file except in compliance with the License.
9  You may obtain a copy of the License at
10 
11  https://www.apache.org/licenses/LICENSE-2.0.txt
12 
13  Unless required by applicable law or agreed to in writing, software
14  distributed under the License is distributed on an "AS IS" BASIS,
15  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  See the License for the specific language governing permissions and
17  limitations under the License.
18 
19 =========================================================================*/
20 
21 #ifndef __qSlicerTerminologySelectorButton_h
22 #define __qSlicerTerminologySelectorButton_h
23 
24 // Qt includes
25 #include <QPushButton>
26 
27 // Terminologies includes
28 #include "qSlicerTerminologiesModuleWidgetsExport.h"
29 
32 
33 class qSlicerTerminologySelectorButtonPrivate;
34 
37 class Q_SLICER_MODULE_TERMINOLOGIES_WIDGETS_EXPORT qSlicerTerminologySelectorButton : public QPushButton
38 {
39  Q_OBJECT
40 
41 public:
42  explicit qSlicerTerminologySelectorButton(QWidget* parent=nullptr);
44 
45 #ifndef __VTK_WRAP__
46  void terminologyInfo(qSlicerTerminologyNavigatorWidget::TerminologyInfoBundle &terminologyInfo);
48 #endif
49 
50 public slots:
51 
52 #ifndef __VTK_WRAP__
53  void setTerminologyInfo(qSlicerTerminologyNavigatorWidget::TerminologyInfoBundle &terminologyInfo);
55 #endif
56 
58  void changeTerminology();
59 
60 signals:
61  void terminologyChanged();
62  void canceled();
63 
64 protected slots:
65  void onToggled(bool toggled=true);
66 
67 protected:
68  void paintEvent(QPaintEvent* event) override;
69 
70  QScopedPointer<qSlicerTerminologySelectorButtonPrivate> d_ptr;
71 private :
72  Q_DECLARE_PRIVATE(qSlicerTerminologySelectorButton);
73  Q_DISABLE_COPY(qSlicerTerminologySelectorButton);
74 };
75 
76 #endif
QScopedPointer< qSlicerTerminologySelectorButtonPrivate > d_ptr
Button that opens terminology selector dialog.