From 1fd1e4b5f2418e3ac2909658993bfedb615537ec Mon Sep 17 00:00:00 2001 From: rtk0c Date: Thu, 6 May 2021 21:56:40 -0700 Subject: Change brace style to on new line, add initial deliveries view when an order entry is selected --- core/src/Model/GlobalStates.cpp | 39 ++++++++++++++++++++++++++------------- 1 file changed, 26 insertions(+), 13 deletions(-) (limited to 'core/src/Model/GlobalStates.cpp') diff --git a/core/src/Model/GlobalStates.cpp b/core/src/Model/GlobalStates.cpp index 0c4e58e..4004f4a 100644 --- a/core/src/Model/GlobalStates.cpp +++ b/core/src/Model/GlobalStates.cpp @@ -16,11 +16,13 @@ namespace fs = std::filesystem; static std::unique_ptr globalStateInstance; static fs::path globalDataPath; -void GlobalStates::Init() { +void GlobalStates::Init() +{ Init(StandardDirectories::UserData() / "cplt"); } -void GlobalStates::Init(std::filesystem::path userDataDir) { +void GlobalStates::Init(std::filesystem::path userDataDir) +{ globalStateInstance = std::make_unique(); globalDataPath = userDataDir; fs::create_directories(globalDataPath); @@ -51,31 +53,37 @@ void GlobalStates::Init(std::filesystem::path userDataDir) { }(); } -void GlobalStates::Shutdown() { +void GlobalStates::Shutdown() +{ if (!globalStateInstance) return; if (globalStateInstance->mDirty) { globalStateInstance->WriteToDisk(); } } -GlobalStates& GlobalStates::GetInstance() { +GlobalStates& GlobalStates::GetInstance() +{ return *globalStateInstance; } -const std::filesystem::path& GlobalStates::GetUserDataPath() { +const std::filesystem::path& GlobalStates::GetUserDataPath() +{ return globalDataPath; } -const std::vector& GlobalStates::GetRecentProjects() const { +const std::vector& GlobalStates::GetRecentProjects() const +{ return mRecentProjects; } -void GlobalStates::ClearRecentProjects() { +void GlobalStates::ClearRecentProjects() +{ mRecentProjects.clear(); MarkDirty(); } -void GlobalStates::AddRecentProject(const Project& project) { +void GlobalStates::AddRecentProject(const Project& project) +{ mRecentProjects.push_back(RecentProject{ .path = project.GetPath(), .cachedUtf8String = project.GetPath().string(), @@ -83,7 +91,8 @@ void GlobalStates::AddRecentProject(const Project& project) { MarkDirty(); } -void GlobalStates::MoveProjectToTop(const Project& project) { +void GlobalStates::MoveProjectToTop(const Project& project) +{ for (auto it = mRecentProjects.begin(); it != mRecentProjects.end(); ++it) { if (it->path == project.GetPath()) { std::rotate(it, it + 1, mRecentProjects.end()); @@ -94,14 +103,16 @@ void GlobalStates::MoveProjectToTop(const Project& project) { AddRecentProject(project); } -void GlobalStates::RemoveRecentProject(int idx) { +void GlobalStates::RemoveRecentProject(int idx) +{ assert(idx >= 0 && idx < mRecentProjects.size()); mRecentProjects.erase(mRecentProjects.begin() + idx); MarkDirty(); } -void GlobalStates::WriteToDisk() const { +void GlobalStates::WriteToDisk() const +{ Json::Value root; auto& recentProjects = root["RecentProjects"] = Json::Value(Json::arrayValue); @@ -115,11 +126,13 @@ void GlobalStates::WriteToDisk() const { mDirty = false; } -bool GlobalStates::IsDirty() const { +bool GlobalStates::IsDirty() const +{ return mDirty; } -void GlobalStates::MarkDirty() { +void GlobalStates::MarkDirty() +{ mDirty = true; OnModified(); } -- cgit v1.2.3-70-g09d2