Slicer 4.2
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
qMRMLClipNodeWidget.h
Go to the documentation of this file.
00001 /*==============================================================================
00002 
00003   Program: 3D Slicer
00004 
00005   Copyright (c) Kitware Inc.
00006 
00007   See COPYRIGHT.txt
00008   or http://www.slicer.org/copyright/copyright.txt for details.
00009 
00010   Unless required by applicable law or agreed to in writing, software
00011   distributed under the License is distributed on an "AS IS" BASIS,
00012   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00013   See the License for the specific language governing permissions and
00014   limitations under the License.
00015 
00016   This file was originally developed by Julien Finet, Kitware Inc.
00017   and was partially funded by NIH grant 3P41RR013218-12S1
00018 
00019 ==============================================================================*/
00020 
00021 #ifndef __qMRMLClipNodeWidget_h
00022 #define __qMRMLClipNodeWidget_h
00023 
00024 // Qt includes
00025 #include <QWidget>
00026 
00027 // CTK includes
00028 #include <ctkVTKObject.h>
00029 
00030 // qMRML includes
00031 #include "qMRMLWidgetsExport.h"
00032 
00033 class qMRMLClipNodeWidgetPrivate;
00034 class vtkMRMLNode;
00035 class vtkMRMLClipModelsNode;
00036 
00037 class QMRML_WIDGETS_EXPORT qMRMLClipNodeWidget : public QWidget
00038 {
00039   Q_OBJECT
00040   QVTK_OBJECT
00041 public:
00042   qMRMLClipNodeWidget(QWidget *parent=0);
00043   virtual ~qMRMLClipNodeWidget();
00044 
00045   vtkMRMLClipModelsNode* mrmlClipNode()const;
00046 
00047   int clipType()const;
00048   int redSliceClipState()const;
00049   int yellowSliceClipState()const;
00050   int greenSliceClipState()const;
00051 
00052   void setClipType(int);
00053   void setRedSliceClipState(int);
00054   void setYellowSliceClipState(int);
00055   void setGreenSliceClipState(int);
00056 
00057 public slots:
00059   void setMRMLClipNode(vtkMRMLClipModelsNode *node);
00061   void setMRMLClipNode(vtkMRMLNode *node);
00062 
00063 protected slots:
00064   void updateWidgetFromMRML();
00065 
00066   void updateNodeClipType();
00067   void updateNodeRedClipState();
00068   void updateNodeYellowClipState();
00069   void updateNodeGreenClipState();
00070 
00071 protected:
00072   QScopedPointer<qMRMLClipNodeWidgetPrivate> d_ptr;
00073 
00074 private:
00075   Q_DECLARE_PRIVATE(qMRMLClipNodeWidget);
00076   Q_DISABLE_COPY(qMRMLClipNodeWidget);
00077 };
00078 
00079 #endif
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines