Slicer 5.9
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
qSlicerScriptedLoadableModule.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 Jean-Christophe Fillion-Robin, Kitware Inc.
17 and was partially funded by NIH grant 3P41RR013218-12S1
18
19==============================================================================*/
20
21#ifndef __qSlicerScriptedLoadableModule_h
22#define __qSlicerScriptedLoadableModule_h
23
24// Qt includes
25#include <QVariantMap>
26
27// Slicer includes
29
30#include "qSlicerBaseQTGUIExport.h"
31
32class qSlicerScriptedLoadableModulePrivate;
33
34class Q_SLICER_BASE_QTGUI_EXPORT qSlicerScriptedLoadableModule : public qSlicerLoadableModule
35{
36 Q_OBJECT
37 Q_PROPERTY(QString title READ title WRITE setTitle)
39 Q_PROPERTY(QStringList categories READ categories WRITE setCategories)
40 Q_PROPERTY(QStringList contributors READ contributors WRITE setContributors)
42 Q_PROPERTY(QString helpText READ helpText WRITE setHelpText)
45 Q_PROPERTY(QIcon icon READ icon WRITE setIcon)
46 Q_PROPERTY(bool hidden READ isHidden WRITE setHidden)
47 Q_PROPERTY(QStringList dependencies READ dependencies WRITE setDependencies)
48 Q_PROPERTY(int index READ index WRITE setIndex)
49
50public:
51
53 typedef qSlicerScriptedLoadableModulePrivate Pimpl;
54 qSlicerScriptedLoadableModule(QObject *parent=nullptr);
56
57 QString pythonSource()const;
58 bool setPythonSource(const QString& filePath);
59
60 QString title()const override ;
61 void setTitle(const QString& newTitle);
62
63 QStringList categories()const override;
64 void setCategories(const QStringList& newCategories);
65
66 QStringList contributors()const override;
67 void setContributors(const QStringList& newContributors);
68
69 QStringList associatedNodeTypes()const override;
70 void setAssociatedNodeTypes(const QStringList& newAssociatedNodeTypes);
71
72 QString helpText()const override;
73 void setHelpText(const QString& newHelpText);
74
75 QString acknowledgementText()const override;
76 void setAcknowledgementText(const QString& newAcknowledgementText);
77
78 virtual QVariantMap extensions()const;
80
81 QIcon icon()const override;
82 void setIcon(const QIcon& newIcon);
83
84 QStringList dependencies() const override;
85 void setDependencies(const QStringList& dependencies);
86
87 int index() const override;
88 void setIndex(const int index);
89
92 bool isHidden()const override;
93 void setHidden(bool hidden);
94
95protected:
96
97 void setup() override;
98
100
102
104
106
107protected:
108 QScopedPointer<qSlicerScriptedLoadableModulePrivate> d_ptr;
109
110private:
111 Q_DECLARE_PRIVATE(qSlicerScriptedLoadableModule);
112 Q_DISABLE_COPY(qSlicerScriptedLoadableModule);
113};
114
115#endif
qSlicerLoadableModule(QObject *parent=nullptr)
qSlicerAbstractModuleRepresentation * createWidgetRepresentation() override
Create and return a widget representation for the module.
void setDependencies(const QStringList &dependencies)
void setTitle(const QString &newTitle)
void setAcknowledgementText(const QString &newAcknowledgementText)
qSlicerScriptedLoadableModule(QObject *parent=nullptr)
void setup() override
All initialization code should be done in the setup.
void setHelpText(const QString &newHelpText)
bool setPythonSource(const QString &filePath)
void setContributors(const QStringList &newContributors)
QScopedPointer< qSlicerScriptedLoadableModulePrivate > d_ptr
void setIndex(const int index)
void setAssociatedNodeTypes(const QStringList &newAssociatedNodeTypes)
void setHidden(bool hidden)
void setExtensions(const QVariantMap &extensions)
QStringList categories
Reimplemented to expose the setter setCategories.
void setIcon(const QIcon &newIcon)
qSlicerScriptedLoadableModulePrivate Pimpl
void setCategories(const QStringList &newCategories)
bool isHidden() const override
vtkMRMLAbstractLogic * createLogic() override
Superclass for MRML logic classes.
QMap< QString, QVariant > QVariantMap