From 7b8da2f0e2ef5215e4b33d9ffa18c13964289e6d Mon Sep 17 00:00:00 2001 From: omigamedev Date: Mon, 15 Jun 2026 22:35:39 +0200 Subject: [PATCH] Extract open legacy project result helper --- src/legacy_document_open_services.cpp | 37 +++++++++++++++------------ 1 file changed, 21 insertions(+), 16 deletions(-) diff --git a/src/legacy_document_open_services.cpp b/src/legacy_document_open_services.cpp index f4348ea7..a7d763ab 100644 --- a/src/legacy_document_open_services.cpp +++ b/src/legacy_document_open_services.cpp @@ -38,6 +38,26 @@ pp::foundation::Status apply_document_history(const pp::app::HistoryUiPlan& plan return pp::app::execute_history_ui_plan(plan, services); } +void handle_open_legacy_project_result(App& app, bool success) +{ + if (success) + { + app.title_update(); + for (std::size_t layer_index = 0; layer_index < app.canvas->m_canvas->m_layers.size(); ++layer_index) + { + auto layer = app.layers->add_layer(app.canvas->m_canvas->m_layers[layer_index]->m_name.c_str(), false); + layer->m_visibility->set_value(app.canvas->m_canvas->m_layers[layer_index]->m_visible); + } + } + else + { + app.message_box( + "Open Document Error", + "There was an error opening the document.\n" + "It may be inaccessible or corrupted."); + } +} + void open_legacy_project(App& app, const pp::app::DocumentOpenRoute& route) { app.doc_name = route.name; @@ -48,22 +68,7 @@ void open_legacy_project(App& app, const pp::app::DocumentOpenRoute& route) LOG("Project open camera reset failed: %s", reset_status.message); app.layers->clear(); app.canvas->m_canvas->project_open(route.path, [&app](bool success) { - if (success) - { - app.title_update(); - for (std::size_t layer_index = 0; layer_index < app.canvas->m_canvas->m_layers.size(); ++layer_index) - { - auto layer = app.layers->add_layer(app.canvas->m_canvas->m_layers[layer_index]->m_name.c_str(), false); - layer->m_visibility->set_value(app.canvas->m_canvas->m_layers[layer_index]->m_visible); - } - } - else - { - app.message_box( - "Open Document Error", - "There was an error opening the document.\n" - "It may be inaccessible or corrupted."); - } + handle_open_legacy_project_result(app, success); }); const auto history_status = apply_document_history(pp::app::plan_document_open_history(route)); if (!history_status.ok()) {