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
qSlicerSegmentEditorScissorsEffect.h
Go to the documentation of this file.
1/*==============================================================================
2
3 Copyright (c) Laboratory for Percutaneous Surgery (PerkLab)
4 Queen's University, Kingston, ON, Canada. All Rights Reserved.
5
6 See COPYRIGHT.txt
7 or http://www.slicer.org/copyright/copyright.txt for details.
8
9 Unless required by applicable law or agreed to in writing, software
10 distributed under the License is distributed on an "AS IS" BASIS,
11 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 See the License for the specific language governing permissions and
13 limitations under the License.
14
15 This file was originally developed by Csaba Pinter, PerkLab, Queen's University
16 and was supported through the Applied Cancer Research Unit program of Cancer Care
17 Ontario with funds provided by the Ontario Ministry of Health and Long-Term Care
18
19==============================================================================*/
20
21#ifndef __qSlicerSegmentEditorScissorsEffect_h
22#define __qSlicerSegmentEditorScissorsEffect_h
23
24// Segmentations Editor Effects includes
25#include "qSlicerSegmentationsEditorEffectsExport.h"
26
28
29class qSlicerSegmentEditorScissorsEffectPrivate;
30class vtkPolyData;
31
32class Q_SLICER_SEGMENTATIONS_EFFECTS_EXPORT qSlicerSegmentEditorScissorsEffect :
34{
35public:
36 Q_OBJECT
37
38public:
40 qSlicerSegmentEditorScissorsEffect(QObject* parent = nullptr);
42
43public:
45 QIcon icon() override;
46
48 Q_INVOKABLE const QString helpText()const override;
49
51 void setupOptionsFrame() override;
52
54 void setMRMLDefaults() override;
55
58
63 bool processInteractionEvents(vtkRenderWindowInteractor* callerInteractor, unsigned long eid, qMRMLWidget* viewWidget) override;
64
66 Q_INVOKABLE void deactivate() override;
67
68 // TODO: temporary code, only for debugging
71 Q_INVOKABLE void setDebugOutputFolder(QString folder) { DebugOutputFolder = folder; };
72 static QString DebugOutputFolder;
73
74public slots:
76 void updateGUIFromMRML() override;
77
79 void updateMRMLFromGUI() override;
80
81 virtual void setOperation(int operationIndex);
82 virtual void setShape(int shapeIndex);
83 virtual void setShapeDrawCentered(int checkState);
84 virtual void setSliceCutMode(int sliceCutModeIndex);
85 virtual void onSliceCutDepthChanged(double value);
86
87protected:
88 QScopedPointer<qSlicerSegmentEditorScissorsEffectPrivate> d_ptr;
89
90private:
91 Q_DECLARE_PRIVATE(qSlicerSegmentEditorScissorsEffect);
93};
94
95#endif
Base class for any widget that requires a MRML Scene.
Definition qMRMLWidget.h:36
qSlicerSegmentEditorAbstractEffect(QObject *parent=nullptr)
qSlicerSegmentEditorAbstractLabelEffect(QObject *parent=nullptr)
QIcon icon() override
Get icon for effect to be displayed in segment editor.
void updateMRMLFromGUI() override
Update parameter set node from user interface.
qSlicerSegmentEditorAbstractEffect * clone() override
Clone editor effect.
virtual void setShapeDrawCentered(int checkState)
virtual void setShape(int shapeIndex)
void setupOptionsFrame() override
Create options frame widgets, make connections, and add them to the main options frame using.
virtual void setOperation(int operationIndex)
QScopedPointer< qSlicerSegmentEditorScissorsEffectPrivate > d_ptr
Q_INVOKABLE const QString helpText() const override
Get help text for effect to be displayed in the help box.
bool processInteractionEvents(vtkRenderWindowInteractor *callerInteractor, unsigned long eid, qMRMLWidget *viewWidget) override
qSlicerSegmentEditorAbstractLabelEffect Superclass
void updateGUIFromMRML() override
Update user interface from parameter set node.
void setMRMLDefaults() override
Set default parameters in the parameter MRML node.
virtual void onSliceCutDepthChanged(double value)
virtual void setSliceCutMode(int sliceCutModeIndex)
Q_INVOKABLE void setDebugOutputFolder(QString folder)
Q_INVOKABLE void deactivate() override
Perform actions to deactivate the effect (such as destroy actors, etc.)
qSlicerSegmentEditorScissorsEffect(QObject *parent=nullptr)