Slicer  5.0
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
qMRMLWidgetsPlugin.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 Julien Finet, Kitware Inc.
17  and was partially funded by NIH grant 3P41RR013218-12S1
18 
19 ==============================================================================*/
20 
21 #ifndef __qMRMLWidgetsPlugin_h
22 #define __qMRMLWidgetsPlugin_h
23 
24 #include "qMRMLWidgetsConfigure.h" // For MRML_WIDGETS_HAVE_QT5, MRML_WIDGETS_HAVE_WEBENGINE_SUPPORT
25 
26 // Qt includes
27 #ifdef MRML_WIDGETS_HAVE_QT5
28 #include <QtUiPlugin/QDesignerCustomWidgetCollectionInterface>
29 #else
30 #include <QDesignerCustomWidgetCollectionInterface>
31 #endif
32 
33 // MRMLWidgets includes
44 #ifdef MRML_WIDGETS_HAVE_WEBENGINE_SUPPORT
46 #endif
50 #include "qMRMLListWidgetPlugin.h"
57 #include "qMRMLPlotWidgetPlugin.h"
59 #include "qMRMLRangeWidgetPlugin.h"
60 #include "qMRMLROIWidgetPlugin.h"
65 #include "qMRMLSliceWidgetPlugin.h"
67 #include "qMRMLSpinBoxPlugin.h"
69 #include "qMRMLThreeDViewPlugin.h"
71 #include "qMRMLTreeViewPlugin.h"
74 #include "qMRMLWidgetPlugin.h"
77 #include "qMRMLTableViewPlugin.h"
78 
79 // \class Group the plugins in one library
80 class QMRML_WIDGETS_PLUGINS_EXPORT qMRMLWidgetsPlugin
81  : public QObject
82  , public QDesignerCustomWidgetCollectionInterface
83 {
84  Q_OBJECT
85 #ifdef MRML_WIDGETS_HAVE_QT5
86  Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QDesignerCustomWidgetCollectionInterface")
87 #endif
88  Q_INTERFACES(QDesignerCustomWidgetCollectionInterface);
89 
90 public:
92  {
105 #ifdef MRML_WIDGETS_HAVE_WEBENGINE_SUPPORT
107 #endif
111  << new qMRMLListWidgetPlugin
118  << new qMRMLPlotWidgetPlugin
121  << new qMRMLROIWidgetPlugin
129  << new qMRMLSpinBoxPlugin
130  << new qMRMLTableViewPlugin
132  << new qMRMLThreeDViewPlugin
134  << new qMRMLTreeViewPlugin
137  << new qMRMLWidgetPlugin
139  return plugins;
140  }
141 };
142 
143 #endif
QList< QDesignerCustomWidgetInterface * > customWidgets() const override