VTK  9.7.1
vtkMagnifierWidget.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
36 #ifndef vtkMagnifierWidget_h
37 #define vtkMagnifierWidget_h
38 
39 #include "vtkAbstractWidget.h"
40 #include "vtkInteractionWidgetsModule.h" // For export macro
41 #include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
42 
43 VTK_ABI_NAMESPACE_BEGIN
45 
46 class VTKINTERACTIONWIDGETS_EXPORT VTK_MARSHALAUTO vtkMagnifierWidget : public vtkAbstractWidget
47 {
48 public:
52  static vtkMagnifierWidget* New();
53 
55 
59  void PrintSelf(ostream& os, vtkIndent indent) override;
61 
68  {
69  this->Superclass::SetWidgetRepresentation(reinterpret_cast<vtkWidgetRepresentation*>(r));
70  }
71 
76  {
77  return reinterpret_cast<vtkMagnifierRepresentation*>(this->WidgetRep);
78  }
79 
83  void CreateDefaultRepresentation() override;
84 
89  void SetEnabled(int enabling) override;
90 
92 
98  vtkSetMacro(KeyPressIncreaseValue, char);
99  vtkGetMacro(KeyPressIncreaseValue, char);
100  vtkSetMacro(KeyPressDecreaseValue, char);
101  vtkGetMacro(KeyPressDecreaseValue, char);
103 
104 protected:
106  ~vtkMagnifierWidget() override;
107 
108  // Keypresses to change value
111 
112  // process the registered events
113  static void MoveAction(vtkAbstractWidget*);
114  static void CharAction(vtkAbstractWidget*);
115 
118  {
119  Invisible = 0,
120  Visible
121  };
122 
123 private:
124  vtkMagnifierWidget(const vtkMagnifierWidget&) = delete;
125  void operator=(const vtkMagnifierWidget&) = delete;
126 };
127 
128 VTK_ABI_NAMESPACE_END
129 #endif
represent a vtkBorderWidget
void SetRepresentation(vtkMagnifierRepresentation *r)
Specify an instance of vtkMagnifierRepresentation used to represent this widget in the scene...
void PrintSelf(ostream &os, vtkIndent indent) override
Standard macros implementing standard VTK methods.
virtual void CreateDefaultRepresentation()=0
Create the default widget representation if one is not set.
vtkMagnifierRepresentation * GetMagnifierRepresentation()
Return the representation as a vtkBorderRepresentation.
vtkWidgetRepresentation * WidgetRep
a simple class to control print indentation
Definition: vtkIndent.h:28
create a moving, magnifying renderer that can inspect the contents of an encapsulating renderer...
define the API for widget / widget representation
void SetEnabled(int) override
Methods for activating this widget.
#define VTK_MARSHALAUTO
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...