diff options
Diffstat (limited to 'src/ui/workspace.h')
| -rw-r--r-- | src/ui/workspace.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/ui/workspace.h b/src/ui/workspace.h index 7806f5c..04cc5db 100644 --- a/src/ui/workspace.h +++ b/src/ui/workspace.h @@ -7,10 +7,22 @@ namespace Donut { class Scene; + struct AppActions + { + virtual ~AppActions() = default; + virtual auto set_resolution(int w, int h) -> void = 0; + virtual auto set_fullscreen(bool on) -> void = 0; + virtual auto set_vsync(bool on) -> void = 0; + virtual auto set_ui_scale(float scale) -> void = 0; + virtual auto get_window_size(int& w, int& h) const -> void = 0; + virtual auto is_fullscreen() const -> bool = 0; + }; + struct UIContext { Scene& scene; std::string device_name; + AppActions& actions; }; class Workspace |
