From 90ff03c2fdffc09ddb26bdc7e32c3968a6d274fb Mon Sep 17 00:00:00 2001 From: hachem Date: Sun, 23 Aug 2026 22:39:47 +0200 Subject: [feat]: wire in scene into the simulation engine --- src/core/application.h | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'src/core/application.h') diff --git a/src/core/application.h b/src/core/application.h index cbd741d..10a375f 100644 --- a/src/core/application.h +++ b/src/core/application.h @@ -19,7 +19,7 @@ namespace Donut // RenderPath (device-side rendering) and the UILayer (tabbed workspaces), and // runs the frame loop that wires them together. All the rendering lives in the // RHI + shared renderers; all the editing lives in the Scene + workspaces. - class Application + class Application : public AppActions { public: Application(const std::string& name = "Donut", @@ -32,6 +32,14 @@ namespace Donut auto get_window() -> Window& { return *m_window; } static auto get() -> Application& { return *s_instance; } + // AppActions — window/device changes requested by the Setup workspace. + auto set_resolution(int w, int h) -> void override; + auto set_fullscreen(bool on) -> void override; + auto set_vsync(bool on) -> void override; + auto set_ui_scale(float scale) -> void override; + auto get_window_size(int& w, int& h) const -> void override; + auto is_fullscreen() const -> bool override; + private: auto on_init() -> void; auto on_shutdown() -> void; @@ -54,6 +62,9 @@ namespace Donut double m_start_time = 0.0; bool m_user_moving = false; + // windowed-mode geometry saved across a fullscreen toggle + int m_windowed_x = 100, m_windowed_y = 100, m_windowed_w = 1280, m_windowed_h = 720; + bool m_running = true; bool m_minimized = false; -- cgit v1.3