21 #ifndef vtkWin32RenderWindowInteractor_h
22 #define vtkWin32RenderWindowInteractor_h
25 #include "vtkRenderingUIModule.h"
26 #include "vtkWindows.h"
31 #include "vtkTDxConfigure.h"
33 VTK_ABI_NAMESPACE_BEGIN
34 class vtkTDxWinDevice;
38 VTK_ABI_NAMESPACE_BEGIN
83 vtkSetMacro(InstallMessageProc,
int);
84 vtkGetMacro(InstallMessageProc,
int);
85 vtkBooleanMacro(InstallMessageProc,
int);
95 friend VTKRENDERINGUI_EXPORT LRESULT CALLBACK vtkHandleMessage(
96 HWND hwnd, UINT uMsg, WPARAM w, LPARAM l);
97 friend VTKRENDERINGUI_EXPORT LRESULT CALLBACK vtkHandleMessage2(
105 virtual int OnMouseMove(HWND wnd, UINT nFlags,
int X,
int Y);
106 virtual int OnNCMouseMove(HWND wnd, UINT nFlags,
int X,
int Y);
107 virtual int OnRButtonDown(HWND wnd, UINT nFlags,
int X,
int Y,
int repeat = 0);
108 virtual int OnRButtonUp(HWND wnd, UINT nFlags,
int X,
int Y);
109 virtual int OnMButtonDown(HWND wnd, UINT nFlags,
int X,
int Y,
int repeat = 0);
110 virtual int OnMButtonUp(HWND wnd, UINT nFlags,
int X,
int Y);
111 virtual int OnLButtonDown(HWND wnd, UINT nFlags,
int X,
int Y,
int repeat = 0);
112 virtual int OnLButtonUp(HWND wnd, UINT nFlags,
int X,
int Y);
113 virtual int OnSize(HWND wnd, UINT nType,
int X,
int Y);
114 virtual int OnTimer(HWND wnd, UINT nIDEvent);
115 virtual int OnKeyDown(HWND wnd, UINT nChar, UINT nRepCnt, UINT nFlags);
116 virtual int OnKeyUp(HWND wnd, UINT nChar, UINT nRepCnt, UINT nFlags);
117 virtual int OnChar(HWND wnd, UINT nChar, UINT nRepCnt, UINT nFlags);
118 virtual int OnMouseWheelForward(HWND wnd, UINT nFlags,
int X,
int Y);
119 virtual int OnMouseWheelBackward(HWND wnd, UINT nFlags,
int X,
int Y);
120 virtual int OnFocus(HWND wnd, UINT nFlags);
121 virtual int OnKillFocus(HWND wnd, UINT nFlags);
122 virtual int OnTouch(HWND wnd, UINT wParam, UINT lParam);
123 virtual int OnDropFiles(HWND wnd, WPARAM wParam);
133 static void SetClassExitMethod(
void (*f)(
void*),
void* arg);
134 static void SetClassExitMethodArgDelete(
void (*f)(
void*));
159 static void (*ClassExitMethod)(
void*);
160 static void (*ClassExitMethodArgDelete)(
void*);
181 vtkTDxWinDevice* Device;
189 std::unique_ptr<vtkInternals> Internals;
192 VTK_ABI_NAMESPACE_END
static void * ClassExitMethodArg
Class variables so an exit method can be defined for this class (used to set different exit methods f...
virtual void Enable()
Enable/Disable interactions.
virtual int InternalDestroyTimer(int platformTimerId)
Internal methods for creating and destroying timers that must be implemented by subclasses.
virtual int InternalCreateTimer(int timerId, int timerType, unsigned long duration)
Internal methods for creating and destroying timers that must be implemented by subclasses.
implements Win32 specific functions required by vtkRenderWindowInteractor.
virtual void Initialize()
Prepare for handling events and set the Enabled flag to true.
static vtkRenderWindowInteractor * New()
platform-independent render window interaction including picking and frame rate control.
a simple class to control print indentation
virtual void ExitCallback()
These methods correspond to the Exit, User and Pick callbacks.
virtual void StartEventLoop()
Run the event loop (does not return until TerminateApp is called).
virtual void ProcessEvents()
Process all user-interaction, timer events and return.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
virtual void TerminateApp()
This function is called on 'q','e' keypress if exitmethod is not specified and should be overridden b...