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
qSlicerBaseQTGUIPythonQtDecorators.h
Go to the documentation of this file.
1/*=auto=========================================================================
2
3 Portions (c) Copyright 2005 Brigham and Women's Hospital (BWH)
4 All Rights Reserved.
5
6 See COPYRIGHT.txt
7 or http://www.slicer.org/copyright/copyright.txt for details.
8
9 Program: 3D Slicer
10
11=========================================================================auto=*/
12
13#ifndef __qSlicerBaseQTGUIPythonQtDecorators_h
14#define __qSlicerBaseQTGUIPythonQtDecorators_h
15
16// PythonQt includes
17#include <PythonQt.h>
18
19// CTK includes
20#include <ctkErrorLogModel.h>
21
22#include "vtkSlicerConfigure.h" // For Slicer_USE_QtTesting
23
24// CTK includes
25#ifdef Slicer_USE_QtTesting
26# include <ctkQtTestingUtility.h>
27#endif
28
29// Slicer includes
35
36#include "qSlicerBaseQTGUIExport.h"
37
38
39// NOTE:
40//
41// For decorators it is assumed that the methods will never be called
42// with the self argument as nullptr. The self argument is the first argument
43// for non-static methods.
44//
45
47{
48 Q_OBJECT
49
50public:
51
53 {
54 PythonQt::self()->registerClass(&qSlicerAbstractModuleWidget::staticMetaObject);
55 PythonQt::self()->registerClass(&qSlicerPythonManager::staticMetaObject);
56 PythonQt::self()->registerClass(&qSlicerCommandOptions::staticMetaObject);
57#ifdef Slicer_USE_QtTesting
58 PythonQt::self()->registerClass(&ctkQtTestingUtility::staticMetaObject);
59#endif
60 PythonQt::self()->registerClass(&ctkErrorLogModel::staticMetaObject);
61 PythonQt::self()->registerClass(&ctkErrorLogTerminalOutput::staticMetaObject);
62 // Note: Use registerCPPClassForPythonQt to register pure Cpp classes
63 }
64
65public slots:
66
67 //----------------------------------------------------------------------------
68 // qSlicerAbstractModule
69
70 //----------------------------------------------------------------------------
75
76 //----------------------------------------------------------------------------
81
82 //----------------------------------------------------------------------------
83 // qSlicerAbstractModule
84
85 //----------------------------------------------------------------------------
87 {
88 return dynamic_cast<qSlicerAbstractModule*>(_moduleWidget->module());
89 }
90};
91
92//-----------------------------------------------------------------------------
94{
95 PythonQt::self()->addDecorators(new qSlicerBaseQTGUIPythonQtDecorators);
96}
97
98#endif
qSlicerAbstractModuleRepresentation * createNewWidgetRepresentation()
qSlicerAbstractModuleRepresentation * widgetRepresentation()
qSlicerAbstractCoreModule * module() const
qSlicerAbstractModuleWidget * createNewWidgetRepresentation(qSlicerAbstractModule *_module)
qSlicerAbstractModule * module(qSlicerAbstractModuleWidget *_moduleWidget)
qSlicerAbstractModuleWidget * widgetRepresentation(qSlicerAbstractModule *_module)
void initqSlicerBaseQTGUIPythonQtDecorators()