diff options
Diffstat (limited to 'core/src/Model/Template')
-rw-r--r-- | core/src/Model/Template/TableTemplate.cpp | 4 | ||||
-rw-r--r-- | core/src/Model/Template/Template_Main.cpp | 10 |
2 files changed, 11 insertions, 3 deletions
diff --git a/core/src/Model/Template/TableTemplate.cpp b/core/src/Model/Template/TableTemplate.cpp index f2524a0..be61606 100644 --- a/core/src/Model/Template/TableTemplate.cpp +++ b/core/src/Model/Template/TableTemplate.cpp @@ -107,8 +107,8 @@ void TableTemplate::Resize(int newWidth, int newHeight) } mCells = std::move(cells); - mColumnWidths.resize(newWidth); - mRowHeights.resize(newHeight); + mColumnWidths.resize(newWidth, 80); + mRowHeights.resize(newHeight, 20); } int TableTemplate::GetRowHeight(int row) const diff --git a/core/src/Model/Template/Template_Main.cpp b/core/src/Model/Template/Template_Main.cpp index 8b659cf..a681c4a 100644 --- a/core/src/Model/Template/Template_Main.cpp +++ b/core/src/Model/Template/Template_Main.cpp @@ -8,6 +8,8 @@ #include <imgui.h> #include <imgui_stdlib.h> +#include <algorithm> +#include <cstdint> #include <fstream> using namespace std::literals::string_view_literals; @@ -34,8 +36,13 @@ std::string TemplateAssetList::RetrieveNameFromFile(const fs::path& file) const std::ifstream ifs(file); if (!ifs) return ""; + uint64_t len; + ifs >> len; + std::string name; - ifs >> name; + name.reserve(len); + std::copy_n(std::istreambuf_iterator(ifs), len, std::back_inserter(name)); + return name; } @@ -56,6 +63,7 @@ void TemplateAssetList::SaveEmptyInstance(const SavedAsset& asset) const std::ofstream ofs(path); if (!ofs) return; + ofs << (uint64_t)asset.Name.size(); ofs << asset.Name; ofs << static_cast<Template::Kind>(asset.Payload); } |