summaryrefslogtreecommitdiff
path: root/core/src/UI/States.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'core/src/UI/States.cpp')
-rw-r--r--core/src/UI/States.cpp15
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;
+ }
+}