Checkpoint 2: integrate native Editor, MCP, gameplay builds and standalone export

This commit is contained in:
Emil
2026-09-18 03:40:15 +03:00
parent 5c6b24d34d
commit 999686a896
125 changed files with 16086 additions and 1714 deletions
+28
View File
@@ -0,0 +1,28 @@
#pragma once
#include <faset/editor/session.hpp>
#include <faset/ui/ui.hpp>
#include <memory>
namespace faset::editor {
// Owns authoring presentation only. Player execution and MCP transport stay in
// the application.
class EditorUI {
public:
EditorUI(Session&, render::Renderer&, const std::filesystem::path& font,
const std::filesystem::path& styles);
~EditorUI();
EditorUI(const EditorUI&) = delete;
EditorUI& operator=(const EditorUI&) = delete;
void frame(const std::vector<render::Event>&);
const render::Snapshot& snapshot() const;
ui::Context& widgets();
const std::string& current_document() const;
void select_document(const std::string& document);
const std::string& selected_entity() const;
void select_entity(const std::string& entity);
private:
struct Impl;
std::unique_ptr<Impl> impl_;
};
} // namespace faset::editor