Slicer  5.0
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
qSlicerSettingsStylesPanel.h
Go to the documentation of this file.
1 /*==============================================================================
2 
3  Program: 3D Slicer
4 
5  Copyright (c) Kitware Inc.
6 
7  See COPYRIGHT.txt
8  or http://www.slicer.org/copyright/copyright.txt for details.
9 
10  Unless required by applicable law or agreed to in writing, software
11  distributed under the License is distributed on an "AS IS" BASIS,
12  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  See the License for the specific language governing permissions and
14  limitations under the License.
15 
16  This file was originally developed by Johan Andruejol, Kitware Inc.
17  and was partially funded by NIH grant 3P41RR013218-12S1
18 
19 ==============================================================================*/
20 
21 #ifndef __qSlicerSettingsStylesPanel_h
22 #define __qSlicerSettingsStylesPanel_h
23 
24 // CTK includes
25 #include <ctkSettingsPanel.h>
26 
27 // QtGUI includes
28 #include "qSlicerBaseQTGUIExport.h"
29 
30 class QSettings;
31 class qSlicerSettingsStylesPanelPrivate;
32 
33 class Q_SLICER_BASE_QTGUI_EXPORT qSlicerSettingsStylesPanel
34  : public ctkSettingsPanel
35 {
36  Q_OBJECT
40  Q_PROPERTY(QString currentStyle READ currentStyle WRITE setCurrentStyle NOTIFY currentStyleChanged)
41 public:
43  typedef ctkSettingsPanel Superclass;
44 
46  explicit qSlicerSettingsStylesPanel(QWidget* parent = nullptr);
47 
49  ~qSlicerSettingsStylesPanel() override;
50 
55  static QStringList availableSlicerStyles();
56 
58  QString currentStyle() const;
59 
60 public slots:
63  void setCurrentStyle(const QString&);
64 
65 signals:
68  void currentStyleChanged(const QString&);
69 
70 protected slots:
71  void onAdditionalStylePathsChanged();
72  void onAddStyleAdditionalPathClicked();
73  void onRemoveStyleAdditionalPathClicked();
74  void onStyleChanged(const QString&);
75 
76  void onFontChanged(const QFont& font);
77  void onShowToolTipsToggled(bool);
78  void onShowToolButtonTextToggled(bool enable);
79 
80 protected:
81  QScopedPointer<qSlicerSettingsStylesPanelPrivate> d_ptr;
82 
83 private:
84  Q_DECLARE_PRIVATE(qSlicerSettingsStylesPanel);
85  Q_DISABLE_COPY(qSlicerSettingsStylesPanel);
86 };
87 
88 #endif
QScopedPointer< qSlicerSettingsStylesPanelPrivate > d_ptr
ctkSettingsPanel Superclass
Superclass typedef.