VTK
vtkSliderRepresentation.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkSliderRepresentation.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 =========================================================================*/
35 #ifndef vtkSliderRepresentation_h
36 #define vtkSliderRepresentation_h
37 
38 #include "vtkInteractionWidgetsModule.h" // For export macro
40 
41 
42 class VTKINTERACTIONWIDGETS_EXPORT vtkSliderRepresentation : public vtkWidgetRepresentation
43 {
44 public:
46 
50  void PrintSelf(ostream& os, vtkIndent indent) override;
52 
54 
58  void SetValue(double value);
59  vtkGetMacro(Value,double);
61 
63 
68  void SetMinimumValue(double value);
69  vtkGetMacro(MinimumValue,double);
71 
73 
78  void SetMaximumValue(double value);
79  vtkGetMacro(MaximumValue,double);
81 
83 
87  vtkSetClampMacro(SliderLength,double,0.01,0.5);
88  vtkGetMacro(SliderLength,double);
90 
92 
97  vtkSetClampMacro(SliderWidth,double,0.0,1.0);
98  vtkGetMacro(SliderWidth,double);
100 
102 
106  vtkSetClampMacro(TubeWidth,double,0.0,1.0);
107  vtkGetMacro(TubeWidth,double);
109 
111 
116  vtkSetClampMacro(EndCapLength,double,0.0,0.25);
117  vtkGetMacro(EndCapLength,double);
119 
121 
125  vtkSetClampMacro(EndCapWidth,double,0.0,0.25);
126  vtkGetMacro(EndCapWidth,double);
128 
133  virtual void SetTitleText(const char*) {}
134  virtual const char* GetTitleText() {return nullptr;}
135 
137 
140  vtkSetStringMacro(LabelFormat);
141  vtkGetStringMacro(LabelFormat);
143 
145 
149  vtkSetClampMacro(LabelHeight,double,0.0,2.0);
150  vtkGetMacro(LabelHeight,double);
152 
154 
158  vtkSetClampMacro(TitleHeight,double,0.0,2.0);
159  vtkGetMacro(TitleHeight,double);
161 
163 
167  vtkSetMacro(ShowSliderLabel,vtkTypeBool);
168  vtkGetMacro(ShowSliderLabel,vtkTypeBool);
169  vtkBooleanMacro(ShowSliderLabel,vtkTypeBool);
171 
176  virtual double GetCurrentT()
177  {return this->CurrentT;}
178  virtual double GetPickedT()
179  {return this->PickedT;}
180 
181  // Enums are used to describe what is selected
183  {
184  Outside=0,
188  Slider
189  };
190 
191 protected:
193  ~vtkSliderRepresentation() override;
194 
195  // Values
196  double Value;
197  double MinimumValue;
198  double MaximumValue;
199 
200  // More ivars controlling the appearance of the widget
201  double SliderLength;
202  double SliderWidth;
203  double EndCapLength;
204  double EndCapWidth;
205  double TubeWidth;
206 
207  // The current parametric coordinate
208  double CurrentT;
209  double PickedT;
210 
211  // both the title and label
213  char *LabelFormat;
214  double LabelHeight;
215  double TitleHeight;
216 
217 private:
219  void operator=(const vtkSliderRepresentation&) = delete;
220 };
221 
222 #endif
vtkWidgetRepresentation.h
vtkSliderRepresentation::MinimumValue
double MinimumValue
Definition: vtkSliderRepresentation.h:197
vtkSliderRepresentation::ShowSliderLabel
vtkTypeBool ShowSliderLabel
Definition: vtkSliderRepresentation.h:212
vtkSliderRepresentation::GetPickedT
virtual double GetPickedT()
Definition: vtkSliderRepresentation.h:178
vtkSliderRepresentation::EndCapLength
double EndCapLength
Definition: vtkSliderRepresentation.h:203
vtkX3D::value
Definition: vtkX3D.h:220
vtkSliderRepresentation::SliderLength
double SliderLength
Definition: vtkSliderRepresentation.h:201
vtkWidgetRepresentation
abstract class defines interface between the widget and widget representation classes
Definition: vtkWidgetRepresentation.h:60
vtkSliderRepresentation::TitleHeight
double TitleHeight
Definition: vtkSliderRepresentation.h:215
vtkSliderRepresentation::LeftCap
Definition: vtkSliderRepresentation.h:186
vtkSliderRepresentation::TubeWidth
double TubeWidth
Definition: vtkSliderRepresentation.h:205
vtkSliderRepresentation::CurrentT
double CurrentT
Definition: vtkSliderRepresentation.h:208
vtkSliderRepresentation::PickedT
double PickedT
Definition: vtkSliderRepresentation.h:209
vtkSliderRepresentation::EndCapWidth
double EndCapWidth
Definition: vtkSliderRepresentation.h:204
vtkSliderRepresentation::SetTitleText
virtual void SetTitleText(const char *)
Specify the label text for this widget.
Definition: vtkSliderRepresentation.h:133
vtkSliderRepresentation::GetCurrentT
virtual double GetCurrentT()
Methods to interface with the vtkSliderWidget.
Definition: vtkSliderRepresentation.h:176
vtkSliderRepresentation::LabelHeight
double LabelHeight
Definition: vtkSliderRepresentation.h:214
vtkSliderRepresentation::SliderWidth
double SliderWidth
Definition: vtkSliderRepresentation.h:202
vtkSliderRepresentation::_InteractionState
_InteractionState
Definition: vtkSliderRepresentation.h:182
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:39
vtkSliderRepresentation::Value
double Value
Definition: vtkSliderRepresentation.h:196
vtkSliderRepresentation::LabelFormat
char * LabelFormat
Definition: vtkSliderRepresentation.h:213
vtkSliderRepresentation::Tube
Definition: vtkSliderRepresentation.h:185
vtkSliderRepresentation::RightCap
Definition: vtkSliderRepresentation.h:187
vtkSliderRepresentation::GetTitleText
virtual const char * GetTitleText()
Definition: vtkSliderRepresentation.h:134
vtkSliderRepresentation::MaximumValue
double MaximumValue
Definition: vtkSliderRepresentation.h:198
vtkTypeBool
int vtkTypeBool
Definition: vtkABI.h:69
vtkSliderRepresentation
abstract class defines the representation for a vtkSliderWidget
Definition: vtkSliderRepresentation.h:42
vtkWidgetRepresentation::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.