From 2ab417f331c89d3dfdba43768786102ab9498bce Mon Sep 17 00:00:00 2001 From: "zhou.xu" Date: Mon, 17 Feb 2025 21:14:09 +0800 Subject: [PATCH] ENH:Handling pages with failed matching jira: none Change-Id: I6193c7be08e73760d00120a87bde93503bf716fe --- src/slic3r/GUI/SyncAmsInfoDialog.cpp | 16 +++++++++------- src/slic3r/GUI/SyncAmsInfoDialog.hpp | 2 +- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/src/slic3r/GUI/SyncAmsInfoDialog.cpp b/src/slic3r/GUI/SyncAmsInfoDialog.cpp index 2d0b79921..5a8f64436 100644 --- a/src/slic3r/GUI/SyncAmsInfoDialog.cpp +++ b/src/slic3r/GUI/SyncAmsInfoDialog.cpp @@ -292,7 +292,6 @@ bool SyncAmsInfoDialog::is_need_show() m_result.direct_sync = true; m_generate_fix_sizer_ams_mapping = false; m_ams_combo_info.clear(); - m_finish_ams_map_flag = false; // init end check_empty_project(); if (m_is_empty_project && !is_dirty_filament()) { @@ -1343,12 +1342,6 @@ void SyncAmsInfoDialog::sync_ams_mapping_result(std::vector &resul auto tab_index = (MainFrame::TabPosition) dynamic_cast(wxGetApp().tab_panel())->GetSelection(); if (tab_index == MainFrame::TabPosition::tp3DEditor || tab_index == MainFrame::TabPosition::tpPreview) { updata_thumbnail_data_after_connected_printer(); - m_finish_ams_map_flag = true; - if (m_finish_ams_map_flag) { - m_pages->ChangeSelection(1); - m_pages->SetMinSize(wxSize(SyncAmsInfoDialogWidth, -1)); - m_pages->SetMaxSize(wxSize(SyncAmsInfoDialogWidth, -1)); - } } } @@ -1399,6 +1392,7 @@ bool SyncAmsInfoDialog::do_ams_mapping(MachineObject *obj_) BOOST_LOG_TRIVIAL(info) << "ams_mapping_array2=" << ams_array2; BOOST_LOG_TRIVIAL(info) << "ams_mapping_info=" << mapping_info; } + show_thumbnail_page(); return obj_->is_valid_mapping_result(m_ams_mapping_result); } else { // do not support ams mapping try to use order mapping @@ -1411,12 +1405,20 @@ bool SyncAmsInfoDialog::do_ams_mapping(MachineObject *obj_) } } sync_ams_mapping_result(m_ams_mapping_result); + show_thumbnail_page(); return is_valid; } return true; } +void SyncAmsInfoDialog::show_thumbnail_page() +{ + m_pages->ChangeSelection(1); + m_pages->SetMinSize(wxSize(SyncAmsInfoDialogWidth, -1)); + m_pages->SetMaxSize(wxSize(SyncAmsInfoDialogWidth, -1)); +} + bool SyncAmsInfoDialog::get_ams_mapping_result(std::string &mapping_array_str, std::string &mapping_array_str2, std::string &ams_mapping_info) { if (m_ams_mapping_result.empty()) diff --git a/src/slic3r/GUI/SyncAmsInfoDialog.hpp b/src/slic3r/GUI/SyncAmsInfoDialog.hpp index 605a905cd..77ef27a1b 100644 --- a/src/slic3r/GUI/SyncAmsInfoDialog.hpp +++ b/src/slic3r/GUI/SyncAmsInfoDialog.hpp @@ -151,7 +151,6 @@ protected: wxPanel * m_loading_page{nullptr}; wxPanel * m_show_page{nullptr}; wxBoxSizer * m_sizer_show_page{nullptr}; - bool m_finish_ams_map_flag = false; wxAnimationCtrl *m_gif_ctrl{nullptr}; public: @@ -217,6 +216,7 @@ public: int update_print_required_data(Slic3r::DynamicPrintConfig config, Slic3r::Model model, Slic3r::PlateDataPtrs plate_data_list, std::string file_name, std::string file_path); void set_print_type(PrintFromType type) { m_print_type = type; }; bool do_ams_mapping(MachineObject *obj_); + void show_thumbnail_page(); bool get_ams_mapping_result(std::string &mapping_array_str, std::string &mapping_array_str2, std::string &ams_mapping_info); bool build_nozzles_info(std::string &nozzles_info); bool can_hybrid_mapping(ExtderData data);