diff options
Diffstat (limited to 'core/src/UI/States.cpp')
-rw-r--r-- | core/src/UI/States.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/core/src/UI/States.cpp b/core/src/UI/States.cpp index efae152..07bbcf7 100644 --- a/core/src/UI/States.cpp +++ b/core/src/UI/States.cpp @@ -2,6 +2,9 @@ #include "Model/Project.hpp" +#include <memory> +#include <utility> + static std::unique_ptr<UIState> uiStateInstance; void UIState::Init() { @@ -11,3 +14,15 @@ void UIState::Init() { UIState& UIState::GetInstance() { return *uiStateInstance; } + +void UIState::SetCurrentProject(std::unique_ptr<Project> project) { + CloseCurrentProject(); + CurrentProject = std::move(project); +} + +void UIState::CloseCurrentProject() { + if (CurrentProject) { + // TODO save stuff + CurrentProject = nullptr; + } +} |