VTK  9.6.20260202
vtkWebAssemblyHardwareWindow.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
17
18#ifndef vtkWebAssemblyHardwareWindow_h
19#define vtkWebAssemblyHardwareWindow_h
20
21#if !defined(__EMSCRIPTEN__)
22#error "vtkWebAssemblyHardwareWindow cannot be built without emscripten!"
23#endif
24
25#include "vtkHardwareWindow.h"
26
27#include "vtkRenderingUIModule.h" // For export macro
28#include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
29
30VTK_ABI_NAMESPACE_BEGIN
32
34{
35public:
38 void PrintSelf(ostream& os, vtkIndent indent) override;
41
45 void SetFullScreen(vtkTypeBool) override;
46
48
51 void SetSize(int, int) override;
52 void SetSize(int a[2]) override { this->SetSize(a[0], a[1]); }
54
55 // /**
56 // * Get the current size of the screen in pixels.
57 // */
58 // int* GetScreenSize() VTK_SIZEHINT(2) override;
59
63 int* GetPosition() VTK_SIZEHINT(2) override;
64
66
70 void* GetGenericWindowId() override;
71 void* GetGenericDrawable() override;
73
75
79 void HideCursor() override;
80 void ShowCursor() override;
82
86 vtkGetStringMacro(CanvasSelector);
87 vtkSetStringMacro(CanvasSelector);
88
93 void SetShowWindow(bool) override {}
94
95 void Create() override;
96 void Destroy() override;
97
98protected:
101
102 void* WindowId = nullptr;
103 char* CanvasSelector = nullptr;
104
105private:
107 void operator=(const vtkWebAssemblyHardwareWindow&) = delete;
108};
109
110#define vtkWebAssemblyHardwareWindow_OVERRIDE_ATTRIBUTES \
111 vtkWebAssemblyHardwareWindow::CreateOverrideAttributes()
112VTK_ABI_NAMESPACE_END
113#endif
a simple class to control print indentation
Definition vtkIndent.h:108
Attribute for vtkObjectFactory overrides.
int * GetPosition() override
Get the current size of the screen in pixels.
void SetShowWindow(bool) override
Make the setter for ShowWindow no-op.
void SetSize(int a[2]) override
Set the size of the window in pixels.
void ShowCursor() override
Hide or Show the mouse cursor, it is nice to be able to hide the default cursor if you want VTK to di...
void SetSize(int, int) override
Set the size of the window in pixels.
static vtkWebAssemblyHardwareWindow * New()
static vtkOverrideAttribute * CreateOverrideAttributes()
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
~vtkWebAssemblyHardwareWindow() override
void HideCursor() override
Hide or Show the mouse cursor, it is nice to be able to hide the default cursor if you want VTK to di...
void * GetGenericDrawable() override
These are window system independent methods that are used to help interface vtkWindow to native windo...
void SetFullScreen(vtkTypeBool) override
Change the window to fill the entire screen.
void * GetGenericWindowId() override
These are window system independent methods that are used to help interface vtkWindow to native windo...
int vtkTypeBool
Definition vtkABI.h:64
#define VTK_SIZEHINT(...)
#define VTK_MARSHALAUTO
#define VTK_NEWINSTANCE