VTK  9.1.0
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=========================================================================*/
75#ifndef vtkSliderWidget_h
76#define vtkSliderWidget_h
77
78#include "vtkAbstractWidget.h"
79#include "vtkInteractionWidgetsModule.h" // For export macro
80
82
83class VTKINTERACTIONWIDGETS_EXPORT vtkSliderWidget : public vtkAbstractWidget
84{
85public:
90
92
96 void PrintSelf(ostream& os, vtkIndent indent) override;
98
105 {
106 this->Superclass::SetWidgetRepresentation(reinterpret_cast<vtkWidgetRepresentation*>(r));
107 }
108
113 {
114 return reinterpret_cast<vtkSliderRepresentation*>(this->WidgetRep);
115 }
116
118
125 vtkSetClampMacro(AnimationMode, int, AnimateOff, Animate);
126 vtkGetMacro(AnimationMode, int);
127 void SetAnimationModeToOff() { this->SetAnimationMode(AnimateOff); }
128 void SetAnimationModeToJump() { this->SetAnimationMode(Jump); }
129 void SetAnimationModeToAnimate() { this->SetAnimationMode(Animate); }
131
133
137 vtkSetClampMacro(NumberOfAnimationSteps, int, 1, VTK_INT_MAX);
138 vtkGetMacro(NumberOfAnimationSteps, int);
140
145
146protected:
148 ~vtkSliderWidget() override = default;
149
150 // These are the events that are handled
154 void AnimateSlider(int selectionState);
155
156 // Manage the state of the widget
159 {
160 Start = 0,
162 Animating
163 };
164
168 {
171 Animate
172 };
173
174private:
175 vtkSliderWidget(const vtkSliderWidget&) = delete;
176 void operator=(const vtkSliderWidget&) = delete;
177};
178
179#endif
define the API for widget / widget representation
vtkWidgetRepresentation * WidgetRep
a simple class to control print indentation
Definition: vtkIndent.h:43
abstract class defines the representation for a vtkSliderWidget
set a value by manipulating a slider
void CreateDefaultRepresentation() override
Create the default widget representation if one is not set.
void SetAnimationModeToOff()
Control the behavior of the slider when selecting the tube or caps.
void SetAnimationModeToJump()
Control the behavior of the slider when selecting the tube or caps.
void AnimateSlider(int selectionState)
void SetAnimationModeToAnimate()
Control the behavior of the slider when selecting the tube or caps.
vtkSliderRepresentation * GetSliderRepresentation()
Return the representation as a vtkSliderRepresentation.
~vtkSliderWidget() override=default
static void SelectAction(vtkAbstractWidget *)
static void EndSelectAction(vtkAbstractWidget *)
void PrintSelf(ostream &os, vtkIndent indent) override
Standard macros.
static vtkSliderWidget * New()
Instantiate the class.
void SetRepresentation(vtkSliderRepresentation *r)
Specify an instance of vtkWidgetRepresentation used to represent this widget in the scene.
static void MoveAction(vtkAbstractWidget *)
abstract class defines interface between the widget and widget representation classes
#define VTK_INT_MAX
Definition: vtkType.h:155