fw4spl
SSeries.hpp
1 /* ***** BEGIN LICENSE BLOCK *****
2  * FW4SPL - Copyright (C) IRCAD, 2009-2018.
3  * Distributed under the terms of the GNU Lesser General Public License (LGPL) as
4  * published by the Free Software Foundation.
5  * ****** END LICENSE BLOCK ****** */
6 
7 #pragma once
8 
9 #include "uiMedDataQt/config.hpp"
10 
11 #include <fwCom/Signal.hpp>
12 
13 #include <fwGui/editor/IEditor.hpp>
14 
15 #include <QObject>
16 #include <QPointer>
17 
18 class QPushButton;
19 
20 namespace uiMedDataQt
21 {
22 
23 namespace widget
24 {
25 class PatientEditor;
26 class StudyEditor;
27 class EquipmentEditor;
28 class SeriesEditor;
29 }
30 
31 namespace editor
32 {
37 class UIMEDDATAQT_CLASS_API SSeries : public QObject,
39 {
40 Q_OBJECT
41 public:
42 
44 
46  UIMEDDATAQT_API SSeries();
47 
49  UIMEDDATAQT_API virtual ~SSeries() noexcept;
50 
54  typedef ::fwCom::Signal< void () > SeriesExportedSignalType;
55  UIMEDDATAQT_API static const ::fwCom::Signals::SignalKeyType s_SERIES_EXPORTED_SIG;
61  typedef ::fwCom::Signal< void ( bool ) > CanExportSignalType;
62  UIMEDDATAQT_API static const ::fwCom::Signals::SignalKeyType s_CAN_EXPORT_SIG;
68  typedef ::fwCom::Slot<void ()> ExportSlotType;
69  UIMEDDATAQT_API static const ::fwCom::Slots::SlotKeyType s_EXPORT_SLOT;
79  UIMEDDATAQT_API virtual KeyConnectionsType getObjSrvConnections() const override;
80 
81 protected:
82 
84  virtual void starting() override;
85 
87  virtual void stopping() override;
88 
102  virtual void configuring() override;
103 
105  virtual void updating() override;
106 
107 protected Q_SLOTS:
108 
110  void onExportClicked();
111 
112 private:
113 
115  QPointer< ::uiMedDataQt::widget::PatientEditor > m_patientEditor;
116 
118  QPointer< ::uiMedDataQt::widget::StudyEditor > m_studyEditor;
119 
121  QPointer< ::uiMedDataQt::widget::EquipmentEditor > m_equipmentEditor;
122 
124  QPointer< ::uiMedDataQt::widget::SeriesEditor > m_seriesEditor;
125 
127  QPointer< QPushButton > m_btnExport;
128 
130  std::string m_seriesId;
131 
133  std::string m_seriesDBId;
134 
136  SeriesExportedSignalType::sptr m_sigSeriesExported;
137 
139  CanExportSignalType::sptr m_sigCanExport;
140 
142  ExportSlotType::sptr m_slotExport;
143 };
144 } // namespace editor
145 } // namespace uiMedDataQt
The namespace uiMedDataQt contains editors for medical data.
Widget to edit fwMedData::Patient information.
Widget to edit fwMedData::Series information.
Namespace containing fw4spl communication tools.
Definition: DumpEditor.hpp:30
Defines the service interface managing the editor service for object.
Definition: IEditor.hpp:25
STL namespace.
Widget to edit fwMedData::Study information.
Definition: StudyEditor.hpp:34
Widget to edit fwMedData::Equipment information.
::fwCom::helper::SigSlotConnection::KeyConnectionsType KeyConnectionsType
Returns proposals to connect service slots to associated object signals, this method is used for obj/...
Definition: IService.hpp:449
#define fwCoreServiceClassDefinitionsMacro(_classinfo_)
Generate common code for services classes.
Shows and edit fwMedData::Series information.
Definition: SSeries.hpp:37