diff --git a/OdbDesignLib/App/RouteController.cpp b/OdbDesignLib/App/RouteController.cpp index 3341be60..f5485964 100644 --- a/OdbDesignLib/App/RouteController.cpp +++ b/OdbDesignLib/App/RouteController.cpp @@ -1,6 +1,7 @@ #include "RouteController.h" #include "RouteController.h" #include "RouteController.h" +#include "../enums.h" namespace Odb::Lib::App @@ -52,17 +53,21 @@ namespace Odb::Lib::App for (const auto& designName : unloadedDesignNames) { auto loaded = false; + auto designType = DesignType::FileArchive; if (std::find(loadedFileArchiveNames.begin(), loadedFileArchiveNames.end(), designName) != loadedFileArchiveNames.end()) { loaded = true; + designType = DesignType::FileArchive; } else if (std::find(loadedDesignNames.begin(), loadedDesignNames.end(), designName) != loadedDesignNames.end()) { loaded = true; + designType = DesignType::Design; } crow::json::wvalue design; design["name"] = designName; design["loaded"] = loaded; + design["type"] = designTypeMap.getValue(designType); designs.push_back(design); } crow::json::wvalue jsonResponse; diff --git a/OdbDesignLib/enums.h b/OdbDesignLib/enums.h index 53560c94..5f89b4c3 100644 --- a/OdbDesignLib/enums.h +++ b/OdbDesignLib/enums.h @@ -1,5 +1,7 @@ #pragma once +#include "EnumMap.h" + namespace Odb::Lib { enum class BoardSide @@ -27,4 +29,17 @@ namespace Odb::Lib Metric, Imperial }; + + enum class DesignType + { + FileArchive, + Design + }; + + static const Utils::EnumMap designTypeMap{ + { + "FileArchive", + "Design" + } + }; }