|
Graphics v0.0.0
A simple abstraction layer for the modern graphics APIs.
|
窗体. 更多...
#include <Window.h>
Public 成员函数 | |
| Window (std::string_view title, const Vector2i &size) | |
| 构造函数, 创建一个窗口. 更多... | |
| virtual | ~Window () |
| 析构函数. | |
| void | update () |
| 更新. 更多... | |
| void | set_title (std::string_view title) |
| 设置窗口标题. 更多... | |
| void | set_size (const Vector2i &size) |
| 设置窗口大小. 更多... | |
| Vector2i | get_size () const |
| 获取窗口大小. | |
| void | set_position (const Vector2i &pos) |
| 设置窗口坐标. 更多... | |
| Vector2i | get_position () const |
| 获取窗口坐标. 更多... | |
| void | set_visible (bool visible) |
| 设置窗口可见性. 更多... | |
| bool | is_visible () const noexcept |
| 获取窗口可见性. 更多... | |
| void | set_fullscreen (bool fullscreen) |
| 设置窗口是否全屏. 更多... | |
| bool | is_fullscreen () const noexcept |
| 是否处于全屏模式. | |
| void | set_vsync (bool enable) noexcept |
| 设置是否开启垂直同步. 更多... | |
| void | set_resizable (bool enable) |
| 设置大小是否可调. 更多... | |
| bool | is_resizable () const noexcept |
| 是否可调窗口大小. | |
| void | set_floating (bool enable) |
| 设置窗口是否置顶. 更多... | |
| bool | is_floating () const noexcept |
| 是否已置顶. | |
| void | set_icon (const Image &image) |
| 设置窗口图标. 更多... | |
| void | request_focus () |
| 请求聚焦. | |
| void | set_cursor_lock (bool enable) |
| 设置是否开启光标锁定. 更多... | |
| bool | is_cursor_lock () const |
| 是否开启光标锁定. | |
| void | set_cursor_position (const Vector2i &pos) |
| 设置光标在窗口中的坐标. 更多... | |
| Vector2d | get_cursor_position () const |
| 获取光标在窗口中的坐标. | |
| void | set_raw_mouse_motion (bool enable) |
| 设置是否启用原始鼠标运动. 更多... | |
| GLFWwindow * | get_handle () const |
| 获取本地句柄. | |
静态 Public 成员函数 | |
| static void | init () |
| static void | deinit () |
Public 属性 | |
| std::function< void(Vector2i)> | onResize |
| 窗口大小变化时回调 | |
| std::function< void(bool)> | onFocus |
| 窗口获取/失去焦点回调 | |
| std::function< void()> | onClose |
| 窗口关闭按钮按下回调 | |
| std::function< void(int, Key)> | onKey |
| 键盘按键回调 | |
| std::function< void(Vector2d)> | onScroll |
| 鼠标滚轮滚动回调 | |
| std::function< void(Vector2d)> | onMouseMove |
| 鼠标移动回调 | |
| std::function< void(bool)> | onMouseEnter |
| 鼠标进入窗口回调 | |
| std::function< void(int, Mouse)> | onMouse |
| 鼠标按键回调 | |
| std::function< void(int, const char *paths[])> | onDrop |
| 路径拽入窗口回调 | |
窗体.
| Window::Window | ( | std::string_view | title, |
| const Vector2i & | size | ||
| ) |
构造函数, 创建一个窗口.
| title | 窗口标题. |
| size | 窗口大小(分辨率). |
| fullscreen | 是否全屏, true 为全屏. |
| Vector2i Window::get_position | ( | ) | const |
获取窗口坐标.
|
noexcept |
获取窗口可见性.
| void Window::set_cursor_lock | ( | bool | enable | ) |
设置是否开启光标锁定.
会将光标隐藏并锁定在窗口中.
| enable | true 为开启, false 为关闭. |
| void Window::set_cursor_position | ( | const Vector2i & | pos | ) |
设置光标在窗口中的坐标.
| pos | 新光标在窗口中的坐标. |
| void Window::set_floating | ( | bool | enable | ) |
设置窗口是否置顶.
| enable | true 为置顶, false 为不置顶. |
| void Window::set_fullscreen | ( | bool | fullscreen | ) |
设置窗口是否全屏.
| fullscreen | true 为全屏, false 为窗口. |
| void Window::set_icon | ( | const Image & | image | ) |
设置窗口图标.
| image | 图标图像. |
| void Window::set_position | ( | const Vector2i & | pos | ) |
设置窗口坐标.
| pos | 新窗口坐标. |
| void Window::set_raw_mouse_motion | ( | bool | enable | ) |
设置是否启用原始鼠标运动.
| enable | true 为开启, false 为关闭. |
原始鼠标运动更接近鼠标在表面上的实际运动. 它不受应用于桌面光标运动的缩放和加速度的影响. 适合控制 3D 相机.
| void Window::set_resizable | ( | bool | enable | ) |
设置大小是否可调.
| enable | true 为可调, false 为不可调. |
| void Window::set_size | ( | const Vector2i & | size | ) |
设置窗口大小.
| size | 窗口大小. |
| void Window::set_title | ( | std::string_view | title | ) |
设置窗口标题.
| title | 窗口标题. |
| void Window::set_visible | ( | bool | visible | ) |
设置窗口可见性.
| visible | true 为可见, false 为不可见. |
|
noexcept |
设置是否开启垂直同步.
| enable | true 为开启, false 为关闭. |
| void Window::update | ( | ) |
更新.
轮询窗口事件, 并交换缓冲区.