Slicer  5.1
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
qSlicerSettingsUserInformationPanel.h
Go to the documentation of this file.
1 /*=auto=========================================================================
2 
3  Portions (c) Copyright 2005 Brigham and Women's Hospital (BWH) All Rights Reserved.
4 
5  See COPYRIGHT.txt
6  or http://www.slicer.org/copyright/copyright.txt for details.
7 
8 =========================================================================auto=*/
9 
10 #ifndef __qqSlicerSettingsUserInformationPanel_h
11 #define __qqSlicerSettingsUserInformationPanel_h
12 
13 // Qt includes
14 #include <QWidget>
15 
16 // CTK includes
17 #include <ctkSettingsPanel.h>
18 #include <ctkVTKObject.h>
19 
20 // QtGUI includes
21 #include "qSlicerBaseQTGUIExport.h"
22 
23 class qSlicerSettingsUserInformationPanelPrivate;
24 class vtkPersonInformation;
25 
26 class Q_SLICER_BASE_QTGUI_EXPORT qSlicerSettingsUserInformationPanel
27  : public ctkSettingsPanel
28 {
29  Q_OBJECT
30  QVTK_OBJECT
31 public:
33  typedef ctkSettingsPanel Superclass;
34 
36  explicit qSlicerSettingsUserInformationPanel(QWidget* parent = nullptr);
37 
40 
41  Q_INVOKABLE virtual void setUserInformation(vtkPersonInformation* userInfo);
42 
43 public Q_SLOTS:
44  void resetSettings() override;
45  void applySettings() override;
46 
47  void updateFromUserInformation();
48  void onNameChanged();
49  void onLoginChanged();
50  void onEmailChanged(const QString& value);
51  void onOrganizationChanged();
52  void onOrganizationRoleChanged();
53  void onProcedureRoleChanged();
54 
55 protected:
56 
57  void resetWarnings();
58 
59  std::string UserInformationBackup;
60  QScopedPointer<qSlicerSettingsUserInformationPanelPrivate> d_ptr;
61 
62 private:
63  Q_DECLARE_PRIVATE(qSlicerSettingsUserInformationPanel);
65 };
66 
67 #endif
QScopedPointer< qSlicerSettingsUserInformationPanelPrivate > d_ptr
ctkSettingsPanel Superclass
Superclass typedef.