vtkSlicerROIGUI.h

Go to the documentation of this file.
00001 
00002 
00003 
00004 
00005 
00006 #ifndef __vtkSlicerROIGUI_h
00007 #define __vtkSlicerROIGUI_h
00008 
00009 #include "vtkSlicerBaseGUIWin32Header.h"
00010 #include "vtkSlicerModuleGUI.h"
00011 #include "vtkSlicerModuleLogic.h"
00012 #include "vtkSlicerNodeSelectorWidget.h"
00013 #include "vtkSlicerROILogic.h"
00014 #include "vtkMRMLROINode.h"
00015 
00016 
00017 #include "vtkKWFrame.h"
00018 #include "vtkSlicerVisibilityIcons.h"
00019 
00020 #include "vtkKWScaleWithEntry.h"
00021 #include "vtkKWScale.h"
00022 #include "vtkKWLabel.h"
00023 #include "vtkKWRange.h"
00024 #include "vtkKWExtent.h"
00025 
00026 class vtkSlicerROIDisplayWidget;
00027 
00028 class VTK_SLICER_BASE_GUI_EXPORT vtkSlicerROIGUI : public vtkSlicerModuleGUI
00029 {
00030 public:
00033   static vtkSlicerROIGUI* New (  );
00034   vtkTypeRevisionMacro ( vtkSlicerROIGUI, vtkSlicerModuleGUI );
00035   void PrintSelf ( ostream& os, vtkIndent indent );
00036 
00037   void SetModuleLogic ( vtkSlicerROILogic *logic )
00038     { this->SetLogic ( vtkObjectPointer (&this->Logic), logic ); }
00039   //BTX
00040   using vtkSlicerModuleGUI::SetModuleLogic;
00041   //ETX
00042   void SetAndObserveModuleLogic ( vtkSlicerROILogic *logic )
00043     { this->SetAndObserveLogic ( vtkObjectPointer (&this->Logic), logic ); }
00044 
00047   virtual void BuildGUI ( void );
00048   virtual void BuildGUI ( vtkKWFrame * f ) { this->Superclass::BuildGUI(f); }
00049   virtual void BuildGUI ( vtkKWFrame * f, double * bgColor ) { this->Superclass::BuildGUI(f,bgColor); }
00050 
00054   virtual void TearDownGUI ( );
00055 
00059   virtual void CreateModuleEventBindings ( );
00060   virtual void ReleaseModuleEventBindings ( );
00061 
00064   virtual void AddGUIObservers ( );
00065   virtual void RemoveGUIObservers ( );
00066 
00070   virtual void ProcessLogicEvents ( vtkObject *caller, unsigned long event, void *callData );
00071   virtual void ProcessGUIEvents ( vtkObject *caller, unsigned long event, void *callData );
00072   virtual void ProcessMRMLEvents ( vtkObject *caller, unsigned long event, void *callData );
00073 
00076   virtual void Enter ( );
00077   //BTX
00078   using vtkSlicerComponentGUI::Enter;
00079   //ETX
00080   virtual void Exit ( );
00081 
00084   void UpdateGUI();
00085 
00086 
00087 protected:
00088   vtkSlicerROIGUI ( );
00089   virtual ~vtkSlicerROIGUI ( );
00090 
00093   vtkSlicerNodeSelectorWidget* ROISelectorWidget;
00094 
00097   vtkSlicerROILogic *Logic;
00098 
00099 
00101   vtkSlicerROIDisplayWidget *ROIDisplayWidget;
00102 
00103 
00104 private:
00105   vtkSlicerROIGUI ( const vtkSlicerROIGUI& ); 
00106   void operator = ( const vtkSlicerROIGUI& ); //Not implemented.
00107 };
00108 #endif

Generated on 6 Apr 2011 for Slicer3 by  doxygen 1.6.1