NorMIT-nav  18.04
An IGT application
cxToolFilterWidget.h
Go to the documentation of this file.
1 /*=========================================================================
2 This file is part of CustusX, an Image Guided Therapy Application.
3 
4 Copyright (c) SINTEF Department of Medical Technology.
5 All rights reserved.
6 
7 CustusX is released under a BSD 3-Clause license.
8 
9 See Lisence.txt (https://github.com/SINTEFMedtek/CustusX/blob/master/License.txt) for details.
10 =========================================================================*/
11 
12 #ifndef CXTOOLFILTERWIDGET_H_
13 #define CXTOOLFILTERWIDGET_H_
14 
15 #include "cxGuiExport.h"
16 
17 #include <QGroupBox>
18 #include "cxDefinitions.h"
19 #include "cxStringProperty.h"
20 
21 class QComboBox;
22 class QButtonGroup;
23 
24 namespace cx
25 {
26 class SelectionGroupBox;
28 typedef boost::shared_ptr<class TrackingService> TrackingServicePtr;
29 
43 class cxGui_EXPORT ToolFilterGroupBox : public QGroupBox
44 {
45  Q_OBJECT
46 
47 public:
48  ToolFilterGroupBox(TrackingServicePtr trackingService, QWidget* parent = NULL);
49  virtual ~ToolFilterGroupBox();
50 
51  void setTrackingSystemSelector(StringPropertyBasePtr selector);
52 
53 signals:
54  void toolSelected(QString absoluteFilePath);
55 
56 public slots:
57  void setClinicalApplicationSlot(QString val);
58 
59 private slots:
60  void filterSlot();
61 
62 private:
63  void createAppSelector();
64 
65  StringPropertyPtr mAppSelector;
66  StringPropertyBasePtr mTrackingSystemSelector;
67  FilteringToolListWidget* mToolListWidget;
68  TrackingServicePtr mTrackingService;
69 };
70 }//namespace cx
71 
72 #endif /* CXTOOLFILTERWIDGET_H_ */
boost::shared_ptr< class TrackingService > TrackingServicePtr
Widget for easily filtering tools based on clinical application and tracking system.Used in conjunction with ToolConfigureGroupBox, it is possible to drag tools from ToolFilterGroupBox and drop them into configurations in ToolConfigureGroupBox.
boost::shared_ptr< class StringProperty > StringPropertyPtr
boost::shared_ptr< class StringPropertyBase > StringPropertyBasePtr
Helper class for tool list display.
Namespace for all CustusX production code.