Autosave feature, spritesheet editor dashed lines, refactoring, fixes

This commit is contained in:
2025-10-28 15:47:54 -04:00
parent dd3aeae6d2
commit 729d5fb216
39 changed files with 1446 additions and 228 deletions

View File

@@ -9,12 +9,20 @@ using namespace anm2ed::document;
namespace anm2ed::manager
{
constexpr auto FILE_LABEL_FORMAT = "{} [{}]";
class Manager
{
std::filesystem::path recent_files_path_get();
std::filesystem::path autosave_path_get();
public:
std::vector<Document> documents{};
int selected{};
int pendingSelected{};
std::vector<std::filesystem::path> recentFiles{};
std::vector<std::filesystem::path> autosaveFiles{};
int selected{-1};
int pendingSelected{-1};
anm2::Layer editLayer{};
imgui::PopupHelper layerPropertiesPopup{imgui::PopupHelper("Layer Properties", imgui::POPUP_SMALL, true)};
@@ -22,11 +30,16 @@ namespace anm2ed::manager
anm2::Null editNull{};
imgui::PopupHelper nullPropertiesPopup{imgui::PopupHelper("Null Properties", imgui::POPUP_SMALL, true)};
Manager();
~Manager();
Document* get(int = -1);
void open(const std::string&, bool = false);
void open(const std::string&, bool = false, bool = true);
void new_(const std::string&);
void save(int, const std::string& = {});
void save(const std::string& = {});
void autosave(Document&);
void set(int);
void close(int);
void layer_properties_open(int = -1);
void layer_properties_trigger();
@@ -36,5 +49,16 @@ namespace anm2ed::manager
void null_properties_trigger();
void null_properties_end();
void null_properties_close();
void recent_files_load();
void recent_files_write();
void recent_files_clear();
void autosave_files_load();
void autosave_files_open();
void autosave_files_write();
void autosave_files_clear();
std::filesystem::path autosave_directory_get();
};
}