diff options
| author | hachem <im@hachem.wtf> | 2026-08-24 17:07:54 +0200 |
|---|---|---|
| committer | hachem <im@hachem.wtf> | 2026-08-24 17:07:54 +0200 |
| commit | 06398a7a176e123506de6e8851866a8bec0b3427 (patch) | |
| tree | 7167ef4818f2c224840122961882efb5ec26c80b /src/ui/workspace.h | |
| parent | 1c85c2ecaa826afd8bf80f93741cf1b2deba5798 (diff) | |
[chore]: cleanup shaders
Diffstat (limited to 'src/ui/workspace.h')
| -rw-r--r-- | src/ui/workspace.h | 23 |
1 files changed, 5 insertions, 18 deletions
diff --git a/src/ui/workspace.h b/src/ui/workspace.h index d86614a..16dff2a 100644 --- a/src/ui/workspace.h +++ b/src/ui/workspace.h @@ -1,6 +1,5 @@ #pragma once -#include "rendering/view.h" #include "rendering/export_config.h" #include <string> @@ -8,7 +7,7 @@ namespace Donut { class Scene; - // App-level actions a workspace can request (window/device changes it can't do + // App-level actions the UI can request (window/device changes it can't do // itself). The Application implements this — it owns the window and device. struct AppActions { @@ -19,29 +18,17 @@ namespace Donut 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; - // Renders the requested channels off-screen and writes PNGs; returns the - // number of files written (0 on failure). + // Renders the requested channels off-screen and writes files; returns the + // number written (0 on failure). virtual auto export_frame(const ExportConfig& cfg) -> int = 0; }; - // What a workspace gets each frame to build its panels. `scene` is mutable — - // workspaces edit the document through it; `actions` performs app-level changes. + // What the UI panels get each frame. `scene` is mutable — panels edit the + // document through it; `actions` performs app-level changes. struct UIContext { Scene& scene; std::string device_name; AppActions& actions; }; - - // A Dorico-style workspace: one tab that owns its side panels and declares - // which viewport View it shows. Switching tabs switches both. Concrete - // workspaces (Setup / Scene / Simulation / Export) live in ui_layer.cpp. - class Workspace - { - public: - virtual ~Workspace() = default; - virtual auto name() const -> const char* = 0; - virtual auto view() const -> View = 0; - virtual auto on_ui(const UIContext& ctx) -> void = 0; - }; } |
