From 1c9ebd15bb0ada387038b7278226a557d0de92ad Mon Sep 17 00:00:00 2001 From: dec05eba Date: Wed, 3 Nov 2021 21:09:13 +0100 Subject: Add window set_view and get_view --- include/mglpp/window/Window.hpp | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'include') diff --git a/include/mglpp/window/Window.hpp b/include/mglpp/window/Window.hpp index 88a025c..2ef6526 100644 --- a/include/mglpp/window/Window.hpp +++ b/include/mglpp/window/Window.hpp @@ -18,6 +18,11 @@ namespace mgl { class Shader; class Vertex; + struct View { + vec2i position; + vec2i size; + }; + class Window { public: class Delegate { @@ -49,6 +54,16 @@ namespace mgl { void set_cursor_visible(bool visible); vec2i get_size() const; vec2i get_cursor_position() const; + + /* + This should be called every frame to retain the view. + Make sure to set the view back to the previous view after rendering items + by saving the previous view with |get_view| and then call + |set_view| with that saved view. + */ + void set_view(const View &new_view); + View get_view(); + WindowHandle get_system_handle() const; private: mgl_window window; -- cgit v1.2.3