diff options
-rw-r--r-- | include/mglpp/window/Window.hpp | 8 | ||||
-rw-r--r-- | src/window/Window.cpp | 10 |
2 files changed, 18 insertions, 0 deletions
diff --git a/include/mglpp/window/Window.hpp b/include/mglpp/window/Window.hpp index 2c179a8..c2d6cff 100644 --- a/include/mglpp/window/Window.hpp +++ b/include/mglpp/window/Window.hpp @@ -27,6 +27,11 @@ namespace mgl { vec2i size; }; + struct Scissor { + vec2i position; + vec2i size; + }; + /* Return true to continue. |get_clipboard| returns false if this returns false. Note: |size| is the size of the current data, not the total data (if the callback only contains a part of the data). @@ -103,6 +108,9 @@ namespace mgl { void set_view(const View &new_view); View get_view(); + void set_scissor(const Scissor &scissor); + Scissor get_scissor(); + bool is_key_pressed(Keyboard::Key key) const; bool is_mouse_button_pressed(Mouse::Button button) const; diff --git a/src/window/Window.cpp b/src/window/Window.cpp index 731ca8e..ab42de0 100644 --- a/src/window/Window.cpp +++ b/src/window/Window.cpp @@ -159,6 +159,16 @@ namespace mgl { return view; } + void Window::set_scissor(const Scissor &scissor) { + mgl_window_set_scissor(&window, (mgl_scissor*)&scissor); + } + + Scissor Window::get_scissor() { + Scissor scissor; + mgl_window_get_scissor(&window, (mgl_scissor*)&scissor); + return scissor; + } + bool Window::is_key_pressed(Keyboard::Key key) const { return mgl_window_is_key_pressed(&window, (mgl_key)key); } |