VTK  9.7.1
vtkWin32HardwareWindow.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
11 #ifndef vtkWin32HardwareWindow_h
12 #define vtkWin32HardwareWindow_h
13 
14 #include "vtkHardwareWindow.h"
15 #include "vtkRenderingUIModule.h" // For export macro
16 #include "vtkWindows.h" // For windows API
17 #include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
18 
19 VTK_ABI_NAMESPACE_BEGIN
20 class VTKRENDERINGUI_EXPORT VTK_MARSHALAUTO vtkWin32HardwareWindow : public vtkHardwareWindow
21 {
22 public:
23  static vtkWin32HardwareWindow* New();
25  void PrintSelf(ostream& os, vtkIndent indent) override;
26 
27  HINSTANCE GetApplicationInstance();
28 
29  HWND GetWindowId();
30 
31  void Create() override;
32  void Destroy() override;
33 
35 
39  void SetDisplayId(void*) override;
40  void SetWindowId(void*) override;
41  void SetParentId(void*) override;
42  void* GetGenericDisplayId() override;
43  void* GetGenericWindowId() override;
44  void* GetGenericParentId() override;
46 
48 
51  void SetSize(int, int) override;
54 
56 
59  void SetPosition(int, int) override;
62 
64 
70  void HideCursor() override;
71  void ShowCursor() override;
72  void SetCursorPosition(int x, int y) override;
74 
78  void SetCurrentCursor(int) override;
79 
80 protected:
82  ~vtkWin32HardwareWindow() override;
83 
84  HWND ParentId;
85  HWND WindowId;
87 
88  // message handler
89  virtual LRESULT MessageProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam);
90 
91  static LRESULT APIENTRY WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam);
92 
94 
95 private:
97  void operator=(const vtkWin32HardwareWindow&) = delete;
98 };
99 
100 VTK_ABI_NAMESPACE_END
101 #endif
create a window for renderers to draw into
virtual void SetCursorPosition(int, int)
Hide or Show the mouse cursor, it is nice to be able to hide the default cursor if you want VTK to di...
Definition: vtkWindow.h:297
virtual void SetDisplayId(void *)
These are window system independent methods that are used to help interface vtkWindow to native windo...
Definition: vtkWindow.h:52
virtual void HideCursor()
Hide or Show the mouse cursor, it is nice to be able to hide the default cursor if you want VTK to di...
Definition: vtkWindow.h:295
static vtkHardwareWindow * New()
virtual void * GetGenericParentId()
These are window system independent methods that are used to help interface vtkWindow to native windo...
Definition: vtkWindow.h:57
virtual void Create()
virtual void SetPosition(int x, int y)
Set the position (x and y) of the rendering window in screen coordinates (in pixels).
virtual void SetParentId(void *)
These are window system independent methods that are used to help interface vtkWindow to native windo...
Definition: vtkWindow.h:54
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
virtual void SetSize(int width, int height)
Set the size (width and height) of the rendering window in screen coordinates (in pixels)...
a simple class to control print indentation
Definition: vtkIndent.h:28
virtual void Destroy()
represents a window in a windows GUI
virtual void * GetGenericWindowId()
These are window system independent methods that are used to help interface vtkWindow to native windo...
Definition: vtkWindow.h:56
virtual void * GetGenericDisplayId()
These are window system independent methods that are used to help interface vtkWindow to native windo...
Definition: vtkWindow.h:55
virtual void ShowCursor()
Hide or Show the mouse cursor, it is nice to be able to hide the default cursor if you want VTK to di...
Definition: vtkWindow.h:296
#define VTK_MARSHALAUTO
virtual void SetCurrentCursor(int)
Change the shape of the cursor.
virtual void SetWindowId(void *)
These are window system independent methods that are used to help interface vtkWindow to native windo...
Definition: vtkWindow.h:53