VTK  9.3.20240420
vtkWebInteractionEvent.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
9#ifndef vtkWebInteractionEvent_h
10#define vtkWebInteractionEvent_h
11
12#include "vtkObject.h"
13#include "vtkWebCoreModule.h" // needed for exports
14
15VTK_ABI_NAMESPACE_BEGIN
16class VTKWEBCORE_EXPORT vtkWebInteractionEvent : public vtkObject
17{
18public:
21 void PrintSelf(ostream& os, vtkIndent indent) override;
22
24 {
25 LEFT_BUTTON = 0x01,
26 MIDDLE_BUTTON = 0x02,
27 RIGHT_BUTTON = 0x04
28 };
29
31 {
32 SHIFT_KEY = 0x01,
33 CTRL_KEY = 0x02,
34 ALT_KEY = 0x04,
35 META_KEY = 0x08
36 };
37
39
42 vtkSetMacro(Buttons, unsigned int);
43 vtkGetMacro(Buttons, unsigned int);
45
47
50 vtkSetMacro(Modifiers, unsigned int);
51 vtkGetMacro(Modifiers, unsigned int);
53
55
58 vtkSetMacro(KeyCode, char);
59 vtkGetMacro(KeyCode, char);
61
63
66 vtkSetMacro(X, double);
67 vtkGetMacro(X, double);
68 vtkSetMacro(Y, double);
69 vtkGetMacro(Y, double);
70 vtkSetMacro(Scroll, double);
71 vtkGetMacro(Scroll, double);
73
74 // Handle double click
75 vtkSetMacro(RepeatCount, int);
76 vtkGetMacro(RepeatCount, int);
77
78protected:
81
82 unsigned int Buttons;
83 unsigned int Modifiers;
84 char KeyCode;
85 double X;
86 double Y;
87 double Scroll;
89
90private:
92 void operator=(const vtkWebInteractionEvent&) = delete;
93};
94
95VTK_ABI_NAMESPACE_END
96#endif
a simple class to control print indentation
Definition vtkIndent.h:108
abstract base class for most VTK objects
Definition vtkObject.h:162
~vtkWebInteractionEvent() override
static vtkWebInteractionEvent * New()
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.