3 #ifndef __vtkKWSlicer_h
4 #define __vtkKWSlicer_h
7 #include "vtkKWCompositeWidget.h"
10 class vtkKWRenderWidget;
11 class vtkImageViewer2;
13 class vtkKWWindowLevelPresetSelector;
14 class vtkKWSimpleAnimationWidget;
16 class vtkKWSplitFrame;
17 class vtkKWCornerAnnotationEditor;
20 class vtkKWSlicer : public vtkKWCompositeWidget
23 static vtkKWSlicer* New();
24 vtkTypeRevisionMacro(vtkKWSlicer,vtkKWCompositeWidget);
26 void SetImage(vtkImageData*);
31 virtual void SetSliceFromScaleCallback(double value);
32 virtual void SetSliceCallback(int slice);
33 virtual int GetSliceCallback();
34 virtual int GetSliceMinCallback();
35 virtual int GetSliceMaxCallback();
36 virtual void SetSliceOrientationToXYCallback();
37 virtual void SetSliceOrientationToXZCallback();
38 virtual void SetSliceOrientationToYZCallback();
39 virtual void WindowLevelPresetApplyCallback(int id);
40 virtual int WindowLevelPresetAddCallback();
41 virtual void WindowLevelPresetUpdateCallback(int id);
42 virtual void WindowLevelPresetHasChangedCallback(int id);
44 void ProcessCallbackCommandEvents(vtkObject *caller,
53 virtual void CreateWidget();
54 vtkKWSplitFrame *Frame;
56 vtkImageViewer2 *ImageViewer;
57 vtkKWScale *SliceScale;
58 vtkKWWindowLevelPresetSelector *WindowLevelPresetSelector;
59 vtkKWRenderWidget *RenderWidget;
60 vtkKWSimpleAnimationWidget *AnimationWidget;
61 vtkKWMenu *OrientationMenu;
62 vtkKWCornerAnnotationEditor *AnnotationEditor;
64 virtual void UpdateSliceRanges();
67 vtkKWSlicer(const vtkKWSlicer&); // Not implemented.
68 void operator=(const vtkKWSlicer&); // Not implemented.