From f38f0edaaf3dc2b7c748e3b7c642ecbeaf140113 Mon Sep 17 00:00:00 2001 From: YuSanka Date: Wed, 18 Apr 2018 14:15:13 +0200 Subject: [PATCH] Cleaned code from commented code --- xs/src/slic3r/GUI/Tab.cpp | 333 +------------------------------------- xs/src/slic3r/GUI/Tab.hpp | 9 -- 2 files changed, 7 insertions(+), 335 deletions(-) diff --git a/xs/src/slic3r/GUI/Tab.cpp b/xs/src/slic3r/GUI/Tab.cpp index dcf61f5749..2cc51e0b5f 100644 --- a/xs/src/slic3r/GUI/Tab.cpp +++ b/xs/src/slic3r/GUI/Tab.cpp @@ -248,37 +248,6 @@ PageShp Tab::add_options_page(const wxString& title, const std::string& icon, bo return page; } -// template -// void add_correct_opts_to_dirty_options(const std::string &opt_key, std::vector *vec, TabPrinter *tab) -// { -// auto opt_init = static_cast(tab->m_presets->get_selected_preset().config.option(opt_key)); -// auto opt_cur = static_cast(tab->m_config->option(opt_key)); -// int opt_init_max_id = opt_init->values.size()-1; -// for (int i = 0; i < opt_cur->values.size(); i++) -// { -// int init_id = i <= opt_init_max_id ? i : 0; -// if (opt_cur->values[i] != opt_init->values[init_id]) -// vec->emplace_back(opt_key + "#" + std::to_string(i)); -// } -// } -// -// template -// void add_correct_opts_to_sys_options(const std::string &opt_key, std::vector *vec, TabPrinter *tab) -// { -// const Preset* sys_preset = tab->m_presets->get_selected_preset_parent(); -// if (sys_preset == nullptr) -// return; -// T *opt_cur = static_cast(tab->m_config->option(opt_key)); -// const T *opt_sys = static_cast(sys_preset->config.option(opt_key)); -// int opt_max_id = opt_sys->values.size()-1; -// for (int i = 0; i < opt_cur->values.size(); i++) -// { -// int init_id = i <= opt_max_id ? i : 0; -// if (opt_cur->values[i] == opt_sys->values[init_id]) -// vec->emplace_back(opt_key + "#" + std::to_string(i)); -// } -// } - // Update UI according to changes void Tab::update_changed_ui() { @@ -286,26 +255,25 @@ void Tab::update_changed_ui() return; const bool is_printer_type = (name() == "printer"); - auto m_dirty_options = m_presets->current_dirty_options(is_printer_type); - auto m_nonsys_options = m_presets->current_different_from_parent_options(is_printer_type); + auto dirty_options = m_presets->current_dirty_options(is_printer_type); + auto nonsys_options = m_presets->current_different_from_parent_options(is_printer_type); if (is_printer_type){ TabPrinter* tab = static_cast(this); if (tab->m_initial_extruders_count != tab->m_extruders_count) - m_dirty_options.emplace_back("extruders_count"); + dirty_options.emplace_back("extruders_count"); if (tab->m_sys_extruders_count != tab->m_extruders_count) - m_nonsys_options.emplace_back("extruders_count"); + nonsys_options.emplace_back("extruders_count"); } for (auto& it : m_options_list) it.second = m_opt_status_value; -// auto m_options_list = m_options_list; - for (auto opt_key : m_dirty_options) m_options_list[opt_key] &= ~osInitValue; - for (auto opt_key : m_nonsys_options) m_options_list[opt_key] &= ~osSystemValue; + for (auto opt_key : dirty_options) m_options_list[opt_key] &= ~osInitValue; + for (auto opt_key : nonsys_options) m_options_list[opt_key] &= ~osSystemValue; Freeze(); //update options "decoration" - for (const auto opt : m_options_list/*m_options_list*/) + for (const auto opt : m_options_list) { bool is_nonsys_value = false; bool is_modified_value = true; @@ -314,17 +282,14 @@ void Tab::update_changed_ui() const wxColour *color = &m_sys_label_clr; if ((opt.second & osSystemValue) == 0){ -// if (find(m_sys_options.begin(), m_sys_options.end(), opt_key) == m_sys_options.end()) { is_nonsys_value = true; sys_icon = m_bmp_non_system; if ((opt.second & osInitValue) != 0) -// if (find(m_dirty_options.begin(), m_dirty_options.end(), opt_key) == m_dirty_options.end()) color = &m_default_text_clr; else color = &m_modified_label_clr; } if ((opt.second & osInitValue) != 0) -// if (find(m_dirty_options.begin(), m_dirty_options.end(), opt_key) == m_dirty_options.end()) { is_modified_value = false; icon = &m_bmp_white_bullet; @@ -346,107 +311,7 @@ void Tab::update_changed_ui() field->set_label_colour(color); } Thaw(); -// m_options_list = m_options_list; -/* auto dirty_options = m_presets->current_dirty_options(); - if (){ - // Update dirty_options in case changes of Extruder's options - TabPrinter* tab = static_cast(this); - m_dirty_options.resize(0); - for (auto opt_key : dirty_options) - { - if (opt_key == "bed_shape"){ m_dirty_options.emplace_back(opt_key); continue; } - switch (m_config->option(opt_key)->type()) - { - case coInts: add_correct_opts_to_dirty_options(opt_key, &m_dirty_options, tab); break; - case coBools: add_correct_opts_to_dirty_options(opt_key, &m_dirty_options, tab); break; - case coFloats: add_correct_opts_to_dirty_options(opt_key, &m_dirty_options, tab); break; - case coStrings: add_correct_opts_to_dirty_options(opt_key, &m_dirty_options, tab); break; - case coPercents:add_correct_opts_to_dirty_options(opt_key, &m_dirty_options, tab); break; - case coPoints: add_correct_opts_to_dirty_options(opt_key, &m_dirty_options, tab); break; - default: m_dirty_options.emplace_back(opt_key); break; - } - } - if (tab->m_initial_extruders_count != tab->m_extruders_count) - m_dirty_options.emplace_back("extruders_count"); - - m_sys_options.resize(0); - const auto sys_preset = m_presets->get_selected_preset_parent(); - if (sys_preset){ - for (auto opt_key : m_config->keys()) - { - if (opt_key == "bed_shape"){ - if (*tab->m_config->option(opt_key) == *sys_preset->config.option(opt_key)) - m_sys_options.emplace_back(opt_key); - continue; - } - switch (m_config->option(opt_key)->type()) - { - case coInts: add_correct_opts_to_sys_options(opt_key, &m_sys_options, tab); break; - case coBools: add_correct_opts_to_sys_options(opt_key, &m_sys_options, tab); break; - case coFloats: add_correct_opts_to_sys_options(opt_key, &m_sys_options, tab); break; - case coStrings: add_correct_opts_to_sys_options(opt_key, &m_sys_options, tab); break; - case coPercents:add_correct_opts_to_sys_options(opt_key, &m_sys_options, tab); break; - case coPoints: add_correct_opts_to_sys_options(opt_key, &m_sys_options, tab); break; - default:{ - const ConfigOption *opt_cur = tab->m_config->option(opt_key); - const ConfigOption *opt_sys = sys_preset->config.option(opt_key); - if (opt_cur != nullptr && opt_sys != nullptr && *opt_cur == *opt_sys) - m_sys_options.emplace_back(opt_key); - break; - } - } - } - - if (tab->m_sys_extruders_count == tab->m_extruders_count) - m_sys_options.emplace_back("extruders_count"); - } - } - else{ - m_sys_options = m_presets->system_equal_options(); - m_dirty_options = dirty_options; - } - - Freeze(); - //update options "decoration" - for (const auto opt_key : m_full_options_list) - { - bool is_nonsys_value = false; - bool is_modified_value = true; - const wxBitmap *sys_icon = &m_bmp_value_lock; - const wxBitmap *icon = &m_bmp_value_revert; - const wxColour *color = &m_sys_label_clr; - if (find(m_sys_options.begin(), m_sys_options.end(), opt_key) == m_sys_options.end()) { - is_nonsys_value = true; - sys_icon = m_bmp_non_system; - if(find(m_dirty_options.begin(), m_dirty_options.end(), opt_key) == m_dirty_options.end()) - color = &m_default_text_clr; - else - color = &m_modified_label_clr; - } - if (find(m_dirty_options.begin(), m_dirty_options.end(), opt_key) == m_dirty_options.end()) - { - is_modified_value = false; - icon = &m_bmp_white_bullet; - } - if (opt_key == "bed_shape" || opt_key == "compatible_printers") { - if (m_colored_Label != nullptr) { - m_colored_Label->SetForegroundColour(*color); - m_colored_Label->Refresh(true); - } - continue; - } - - Field* field = get_field(opt_key); - if (field == nullptr) continue; - field->m_is_nonsys_value = is_nonsys_value; - field->m_is_modified_value = is_modified_value; - field->set_undo_bitmap(icon); - field->set_undo_to_sys_bitmap(sys_icon); - field->set_label_colour(color); - } - Thaw(); -*/ wxTheApp->CallAfter([this]() { update_changed_tree_ui(); }); @@ -494,60 +359,6 @@ void TabPrinter::init_options_list() m_options_list.emplace("extruders_count", m_opt_status_value); } - -// template -// void add_correct_opts_to_full_options_list(const std::string &opt_key, std::vector *vec, TabPrinter *tab) -// { -// T *opt_cur = static_cast(tab->m_config->option(opt_key)); -// for (int i = 0; i < opt_cur->values.size(); i++) -// vec->emplace_back(opt_key + "#" + std::to_string(i)); -// } - -// void Tab::update_full_options_list() -// { -// if (!m_full_options_list.empty()) -// m_full_options_list.resize(0); -// -// if (m_name != "printer"){ -// m_full_options_list = m_config->keys(); -// return; -// } -// -// TabPrinter* tab = static_cast(this); -// for (const auto opt_key : m_config->keys()) -// { -// if (opt_key == "bed_shape"){ -// m_full_options_list.emplace_back(opt_key); -// continue; -// } -// switch (m_config->option(opt_key)->type()) -// { -// case coInts: add_correct_opts_to_full_options_list(opt_key, &m_full_options_list, tab); break; -// case coBools: add_correct_opts_to_full_options_list(opt_key, &m_full_options_list, tab); break; -// case coFloats: add_correct_opts_to_full_options_list(opt_key, &m_full_options_list, tab); break; -// case coStrings: add_correct_opts_to_full_options_list(opt_key, &m_full_options_list, tab); break; -// case coPercents:add_correct_opts_to_full_options_list(opt_key, &m_full_options_list, tab); break; -// case coPoints: add_correct_opts_to_full_options_list(opt_key, &m_full_options_list, tab); break; -// default: m_full_options_list.emplace_back(opt_key); break; -// } -// } -// m_full_options_list.emplace_back("extruders_count"); -// } - -// void Tab::update_sys_ui_after_sel_preset() -// { -// const wxColour* clr = &m_default_text_clr; -// for (const auto opt_key : m_full_options_list){ -// Field* field = get_field(opt_key); -// if (field != nullptr){ -// field->set_undo_to_sys_bitmap(m_bmp_non_system); -// field->m_is_nonsys_value = true; -// field->set_label_colour(clr); -// } -// } -// m_sys_options.resize(0); -// } - void Tab::get_sys_and_mod_flags(const std::string& opt_key, bool& sys_page, bool& modified_page) { auto opt = m_options_list.find(opt_key); @@ -666,112 +477,6 @@ void Tab::on_roll_back_value(const bool to_sys /*= true*/) update_changed_ui(); } -// void Tab::on_back_to_initial_value() -// { -// if (!m_is_modified_values) return; -// std::chrono::milliseconds ms1 = std::chrono::duration_cast( -// std::chrono::system_clock::now().time_since_epoch() -// ); -// -// m_postpone_update_ui = true; -// -// auto selection = m_treectrl->GetItemText(m_treectrl->GetSelection()); -// for (auto page : m_pages) -// if (page->title() == selection) { -// for (auto group : page->m_optgroups){ -// if (group->title == _("Capabilities")){ -// if (find(m_dirty_options.begin(), m_dirty_options.end(), "extruders_count") != m_dirty_options.end()) -// group->back_to_initial_value("extruders_count"); -// } -// if (group->title == _("Size and coordinates")){ -// if (find(m_dirty_options.begin(), m_dirty_options.end(), "bed_shape") != m_dirty_options.end()){ -// group->back_to_initial_value("bed_shape"); -// load_key_value("bed_shape", true/*some value*/, true); -// } -// -// } -// if (group->title == _("Profile dependencies")){ -// if (find(m_dirty_options.begin(), m_dirty_options.end(), "compatible_printers") != m_dirty_options.end()){ -// group->back_to_initial_value("compatible_printers"); -// load_key_value("compatible_printers", true/*some value*/, true); -// -// bool is_empty = m_config->option("compatible_printers")->values.empty(); -// m_compatible_printers_checkbox->SetValue(is_empty); -// is_empty ? m_compatible_printers_btn->Disable() : m_compatible_printers_btn->Enable(); -// } -// } -// for (t_opt_map::iterator it = group->m_opt_map.begin(); it != group->m_opt_map.end(); ++it) { -// const std::string& opt_key = it->first; -// if (find(m_dirty_options.begin(), m_dirty_options.end(), opt_key) != m_dirty_options.end()) -// group->back_to_initial_value(opt_key); -// } -// } -// break; -// } -// -// std::chrono::milliseconds ms2 = std::chrono::duration_cast( -// std::chrono::system_clock::now().time_since_epoch() -// ); -// -// m_postpone_update_ui = false; -// update_changed_ui(); -// -// std::chrono::milliseconds ms3 = std::chrono::duration_cast( -// std::chrono::system_clock::now().time_since_epoch() -// ); -// -// auto roll_back_duration = std::chrono::microseconds(ms2 - ms1).count(); -// auto update_ui_duration = std::chrono::microseconds(ms3 - ms2).count(); -// printf("back_to init_duration duration = %lld ms \n", roll_back_duration); -// printf("update_ui_duration duration = %lld ms \n", update_ui_duration); -// -// // m_postpone_update_ui = false; -// // update_changed_ui(); -// } -// -// void Tab::on_back_to_sys_value() -// { -// if (!m_is_nonsys_values) return; -// -// m_postpone_update_ui = true; -// -// auto selection = m_treectrl->GetItemText(m_treectrl->GetSelection()); -// for (auto page : m_pages) -// if (page->title() == selection) { -// for (auto group : page->m_optgroups) { -// if (group->title == _("Capabilities")){ -// if (find(m_sys_options.begin(), m_sys_options.end(), "extruders_count") == m_sys_options.end()) -// group->back_to_sys_value("extruders_count"); -// } -// if (group->title == _("Size and coordinates")){ -// if (find(m_sys_options.begin(), m_sys_options.end(), "bed_shape") == m_sys_options.end()){ -// group->back_to_sys_value("bed_shape"); -// load_key_value("bed_shape", true/*some value*/, true); -// } -// } -// if (group->title == _("Profile dependencies")){ -// if (find(m_sys_options.begin(), m_sys_options.end(), "compatible_printers") == m_sys_options.end()){ -// group->back_to_sys_value("compatible_printers"); -// load_key_value("compatible_printers", true/*some value*/, true); -// -// bool is_empty = m_config->option("compatible_printers")->values.empty(); -// m_compatible_printers_checkbox->SetValue(is_empty); -// is_empty ? m_compatible_printers_btn->Disable() : m_compatible_printers_btn->Enable(); -// } -// } -// for (t_opt_map::iterator it = group->m_opt_map.begin(); it != group->m_opt_map.end(); ++it) { -// const std::string& opt_key = it->first; -// if (find(m_sys_options.begin(), m_sys_options.end(), opt_key) == m_sys_options.end()) -// group->back_to_sys_value(opt_key); -// } -// } -// break; -// } -// -// m_postpone_update_ui = false; -// update_changed_ui(); -// } - // Update the combo box label of the selected preset based on its "dirty" state, // comparing the selected preset config with $self->{config}. void Tab::update_dirty(){ @@ -1904,7 +1609,6 @@ void TabPrinter::build_extruder_pages(){ sprintf(buf, _CHB(L("Extruder %d")), extruder_idx + 1); auto page = add_options_page(from_u8(buf), "funnel.png", true); m_pages.insert(m_pages.begin() + 2+extruder_idx, page); -// m_extruder_pages.push_back(page); auto optgroup = page->new_optgroup(_(L("Size"))); optgroup->append_single_option_line("nozzle_diameter", extruder_idx); @@ -1942,32 +1646,11 @@ void TabPrinter::build_extruder_pages(){ } // # remove extra pages -// if (m_extruders_count <= m_extruders_count_old) { -// m_extruder_pages.resize(m_extruders_count); -// } - if (m_extruders_count < m_extruders_count_old) m_pages.erase(m_pages.begin() + 2 + m_extruders_count, m_pages.begin() + 2 + m_extruders_count_old); m_extruders_count_old = m_extruders_count; - // # rebuild page list -// PageShp page_note = m_pages.back(); -// m_pages.pop_back(); -// PageShp page_depend = m_pages.back(); -// m_pages.pop_back(); -// auto counter = m_extruders_count_old; -// while (counter > m_extruders_count/*m_pages.back()->title().find(_(L("Extruder"))) != std::string::npos*/){ -// m_pages.pop_back(); -// --counter; -// } -// // for (auto page_extruder : m_extruder_pages) -// // m_pages.push_back(page_extruder); -// for (auto extruder_idx = m_extruders_count_old; extruder_idx < m_extruders_count; ++extruder_idx) -// m_pages.push_back(m_extruder_pages[extruder_idx]); -// m_pages.push_back(page_note); -// m_pages.push_back(page_depend); - rebuild_page_tree(); } @@ -2095,8 +1778,6 @@ void Tab::load_current_preset() static_cast(this)->m_sys_extruders_count = parent_preset == nullptr ? 0 : static_cast(parent_preset->config.option("nozzle_diameter"))->values.size(); } -// update_sys_ui_after_sel_preset(); -// update_full_options_list(); m_opt_status_value = (m_presets->get_selected_preset_parent() ? osSystemValue : 0) | osInitValue; init_options_list(); update_changed_ui(); diff --git a/xs/src/slic3r/GUI/Tab.hpp b/xs/src/slic3r/GUI/Tab.hpp index 2ac1e969b5..2eef29500f 100644 --- a/xs/src/slic3r/GUI/Tab.hpp +++ b/xs/src/slic3r/GUI/Tab.hpp @@ -142,10 +142,6 @@ protected: bool m_no_controller; std::vector m_reload_dependent_tabs = {}; -// std::vector m_dirty_options = {}; -// std::vector m_nonsys_options = {}; -// std::vector m_sys_options = {}; -// std::vector m_full_options_list = {}; enum OptStatus { osSystemValue = 1, osInitValue = 2 }; std::map m_options_list; int m_opt_status_value; @@ -203,15 +199,11 @@ public: void update_show_hide_incompatible_button(); void update_ui_from_settings(); void update_changed_ui(); -// void update_full_options_list(); -// void update_sys_ui_after_sel_preset(); void get_sys_and_mod_flags(const std::string& opt_key, bool& sys_page, bool& modified_page); void update_changed_tree_ui(); void update_undo_buttons(); void on_roll_back_value(const bool to_sys = false); -// void on_back_to_initial_value(); -// void on_back_to_sys_value(); PageShp add_options_page(const wxString& title, const std::string& icon, bool is_extruder_pages = false); @@ -291,7 +283,6 @@ public: size_t m_extruders_count_old = 0; size_t m_initial_extruders_count; size_t m_sys_extruders_count; -// std::vector m_extruder_pages; TabPrinter() {} TabPrinter(wxNotebook* parent, bool no_controller) : Tab(parent, _(L("Printer Settings")), "printer", no_controller) {}