VTK
vtkSliderWidget.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkSliderWidget.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
72 #ifndef vtkSliderWidget_h
73 #define vtkSliderWidget_h
74 
75 #include "vtkInteractionWidgetsModule.h" // For export macro
76 #include "vtkAbstractWidget.h"
77 
79 
80 
81 class VTKINTERACTIONWIDGETS_EXPORT vtkSliderWidget : public vtkAbstractWidget
82 {
83 public:
87  static vtkSliderWidget *New();
88 
90 
94  void PrintSelf(ostream& os, vtkIndent indent) override;
96 
103  {this->Superclass::SetWidgetRepresentation(reinterpret_cast<vtkWidgetRepresentation*>(r));}
104 
109  {return reinterpret_cast<vtkSliderRepresentation*>(this->WidgetRep);}
110 
112 
119  vtkSetClampMacro(AnimationMode, int, AnimateOff, Animate);
120  vtkGetMacro(AnimationMode, int);
121  void SetAnimationModeToOff() { this->SetAnimationMode(AnimateOff); }
122  void SetAnimationModeToJump() { this->SetAnimationMode(Jump); }
123  void SetAnimationModeToAnimate() { this->SetAnimationMode(Animate); }
125 
127 
131  vtkSetClampMacro(NumberOfAnimationSteps,int,1,VTK_INT_MAX);
132  vtkGetMacro(NumberOfAnimationSteps,int);
134 
138  void CreateDefaultRepresentation() override;
139 
140 protected:
141  vtkSliderWidget();
142  ~vtkSliderWidget() override {}
143 
144  // These are the events that are handled
145  static void SelectAction(vtkAbstractWidget*);
146  static void EndSelectAction(vtkAbstractWidget*);
147  static void MoveAction(vtkAbstractWidget*);
148  void AnimateSlider(int selectionState);
149 
150  // Manage the state of the widget
153  {
154  Start=0,
156  Animating
157  };
158 
164  Animate
165  };
166 
167 
168 
169 private:
170  vtkSliderWidget(const vtkSliderWidget&) = delete;
171  void operator=(const vtkSliderWidget&) = delete;
172 };
173 
174 #endif
vtkSliderRepresentation * GetSliderRepresentation()
Return the representation as a vtkSliderRepresentation.
void PrintSelf(ostream &os, vtkIndent indent) override
Standard macros implementing standard VTK methods.
#define VTK_INT_MAX
Definition: vtkType.h:159
void SetRepresentation(vtkSliderRepresentation *r)
Specify an instance of vtkWidgetRepresentation used to represent this widget in the scene...
virtual void CreateDefaultRepresentation()=0
Create the default widget representation if one is not set.
void SetAnimationModeToOff()
Control the behavior of the slider when selecting the tube or caps.
vtkWidgetRepresentation * WidgetRep
void SetAnimationModeToJump()
Control the behavior of the slider when selecting the tube or caps.
a simple class to control print indentation
Definition: vtkIndent.h:39
void SetAnimationModeToAnimate()
Control the behavior of the slider when selecting the tube or caps.
~vtkSliderWidget() override
abstract class defines the representation for a vtkSliderWidget
set a value by manipulating a slider
define the API for widget / widget representation
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...