debian/kwwidgets-examples/usr/share/doc/kwwidgets-examples/examples/Cxx/MedicalImageViewer/vtkKWMyWindow.h

Go to the documentation of this file.
00001 #ifndef __vtkKWMyWindow_h
00002 #define __vtkKWMyWindow_h
00003 
00004 #include "vtkKWWindow.h"
00005 
00006 class vtkKWRenderWidget;
00007 class vtkImageViewer2;
00008 class vtkKWScale;
00009 class vtkKWWindowLevelPresetSelector;
00010 class vtkKWSimpleAnimationWidget;
00011 
00012 class vtkKWMyWindow : public vtkKWWindow
00013 {
00014 public:
00015   static vtkKWMyWindow* New();
00016   vtkTypeRevisionMacro(vtkKWMyWindow,vtkKWWindow);
00017 
00018   // Description:
00019   // Callbacks
00020   virtual void SetSliceFromScaleCallback(double value);
00021   virtual void SetSliceCallback(int slice);
00022   virtual int  GetSliceCallback();
00023   virtual int  GetSliceMinCallback();
00024   virtual int  GetSliceMaxCallback();
00025   virtual void SetSliceOrientationToXYCallback();
00026   virtual void SetSliceOrientationToXZCallback();
00027   virtual void SetSliceOrientationToYZCallback();
00028   virtual void WindowLevelPresetApplyCallback(int id);
00029   virtual int  WindowLevelPresetAddCallback();
00030   virtual void WindowLevelPresetUpdateCallback(int id);
00031   virtual void WindowLevelPresetHasChangedCallback(int id);
00032 
00033 protected:
00034   vtkKWMyWindow();
00035   ~vtkKWMyWindow();
00036 
00037   // Description:
00038   // Create the widget.
00039   virtual void CreateWidget();
00040 
00041   vtkImageViewer2                *ImageViewer; 
00042   vtkKWScale                     *SliceScale;
00043   vtkKWWindowLevelPresetSelector *WindowLevelPresetSelector;
00044   vtkKWRenderWidget              *RenderWidget;
00045   vtkKWSimpleAnimationWidget     *AnimationWidget;
00046 
00047   virtual void UpdateSliceRanges();
00048 
00049 private:
00050   vtkKWMyWindow(const vtkKWMyWindow&);   // Not implemented.
00051   void operator=(const vtkKWMyWindow&);  // Not implemented.
00052 };
00053 
00054 #endif