diff options
Diffstat (limited to 'core/src/UI/States.cpp')
-rw-r--r-- | core/src/UI/States.cpp | 44 |
1 files changed, 0 insertions, 44 deletions
diff --git a/core/src/UI/States.cpp b/core/src/UI/States.cpp deleted file mode 100644 index b7b4c9f..0000000 --- a/core/src/UI/States.cpp +++ /dev/null @@ -1,44 +0,0 @@ -#include "States.hpp" - -#include "Model/GlobalStates.hpp" -#include "Model/Project.hpp" - -#include <memory> -#include <utility> - -static std::unique_ptr<UIState> uiStateInstance; - -void UIState::Init() -{ - uiStateInstance = std::make_unique<UIState>(); -} - -void UIState::Shutdown() -{ - if (uiStateInstance) { - uiStateInstance->CloseCurrentProject(); - uiStateInstance = nullptr; - } -} - -UIState& UIState::GetInstance() -{ - return *uiStateInstance; -} - -void UIState::SetCurrentProject(std::unique_ptr<Project> project) -{ - CloseCurrentProject(); - if (project) { - GlobalStates::GetInstance().MoveProjectToTop(*project); - } - CurrentProject = std::move(project); -} - -void UIState::CloseCurrentProject() -{ - if (CurrentProject) { - CurrentProject->WriteToDisk(); - CurrentProject = nullptr; - } -} |