MetaCore/MetaEditor/NullEditorShell.h

28 lines
908 B
C++

#pragma once
#include "MetaEditor/IEditorShell.h"
namespace metacore::editor {
class NullEditorShell final : public IEditorShell {
public:
bool initialize() override;
void shutdown() override;
void consume_snapshot(const EditorFrameSnapshot& snapshot) override;
[[nodiscard]] bool initialized() const override;
[[nodiscard]] const EditorFrameSnapshot& last_snapshot() const override;
[[nodiscard]] std::string summarize_snapshot() const override;
[[nodiscard]] std::string describe_workspace() const override;
[[nodiscard]] std::string shell_name() const override;
[[nodiscard]] PendingShellEdits consume_pending_edits() override;
void set_debug_export_path(std::filesystem::path path) override;
private:
bool initialized_ = false;
EditorFrameSnapshot last_snapshot_{};
std::filesystem::path debug_export_path_{};
};
} // namespace metacore::editor