diff options
| author | hachem <im@hachem.wtf> | 2026-08-23 21:55:36 +0200 |
|---|---|---|
| committer | hachem <im@hachem.wtf> | 2026-08-23 21:55:36 +0200 |
| commit | 6ee03a2ea3c764f0364b2e61beb6812226facd4c (patch) | |
| tree | b5ada601ae22229d207fda3b91e7aed84b336e8b /src/ui/workspace.h | |
| parent | 2959cfaf69d770955ab655379134e037590a6933 (diff) | |
feat: implement ui layer arch
Diffstat (limited to 'src/ui/workspace.h')
| -rw-r--r-- | src/ui/workspace.h | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/ui/workspace.h b/src/ui/workspace.h new file mode 100644 index 0000000..7806f5c --- /dev/null +++ b/src/ui/workspace.h @@ -0,0 +1,24 @@ +#pragma once + +#include "rendering/view.h" +#include <string> + +namespace Donut +{ + class Scene; + + struct UIContext + { + Scene& scene; + std::string device_name; + }; + + 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; + }; +} |
