FIX: edit filament dialog: preset name too long to del btn nan't show

Jira: 5336 5174
and verify string normalization

Change-Id: I380c3bed2bf43d01094b68979a8b67f4187c0b93
This commit is contained in:
maosheng.wei 2023-11-24 11:10:00 +08:00 committed by Lane.Wei
parent 54eed41661
commit 35e7d8a11d
2 changed files with 35 additions and 31 deletions

View File

@ -1037,19 +1037,19 @@ StringObjectException Print::validate(StringObjectException *warning, Polygons*
if (nozzle_diam - EPSILON > first_nozzle_diam || nozzle_diam + EPSILON < first_nozzle_diam if (nozzle_diam - EPSILON > first_nozzle_diam || nozzle_diam + EPSILON < first_nozzle_diam
|| std::abs((filament_diam - first_filament_diam) / first_filament_diam) > 0.1) || std::abs((filament_diam - first_filament_diam) / first_filament_diam) > 0.1)
// BBS: remove L() // BBS: remove L()
return { ("Different nozzle diameters and different filament diameters is not allowed when prime tower is enabled.") }; return { L("Different nozzle diameters and different filament diameters is not allowed when prime tower is enabled.") };
} }
if (! m_config.use_relative_e_distances) if (! m_config.use_relative_e_distances)
return { ("The Wipe Tower is currently only supported with the relative extruder addressing (use_relative_e_distances=1).") }; return { L("The Wipe Tower is currently only supported with the relative extruder addressing (use_relative_e_distances=1).") };
if (m_config.ooze_prevention) if (m_config.ooze_prevention)
return { ("Ooze prevention is currently not supported with the prime tower enabled.") }; return { L("Ooze prevention is currently not supported with the prime tower enabled.") };
// BBS: remove following logic and _L() // BBS: remove following logic and _L()
#if 0 #if 0
if (m_config.gcode_flavor != gcfRepRapSprinter && m_config.gcode_flavor != gcfRepRapFirmware && if (m_config.gcode_flavor != gcfRepRapSprinter && m_config.gcode_flavor != gcfRepRapFirmware &&
m_config.gcode_flavor != gcfRepetier && m_config.gcode_flavor != gcfMarlinLegacy && m_config.gcode_flavor != gcfMarlinFirmware) m_config.gcode_flavor != gcfRepetier && m_config.gcode_flavor != gcfMarlinLegacy && m_config.gcode_flavor != gcfMarlinFirmware)
return {("The prime tower is currently only supported for the Marlin, RepRap/Sprinter, RepRapFirmware and Repetier G-code flavors.")}; return { L("The prime tower is currently only supported for the Marlin, RepRap/Sprinter, RepRapFirmware and Repetier G-code flavors.")};
if ((m_config.print_sequence == PrintSequence::ByObject) && extruders.size() > 1) if ((m_config.print_sequence == PrintSequence::ByObject) && extruders.size() > 1)
return { L("The prime tower is not supported in \"By object\" print."), nullptr, "enable_prime_tower" }; return { L("The prime tower is not supported in \"By object\" print."), nullptr, "enable_prime_tower" };

View File

@ -533,8 +533,8 @@ static void adjust_dialog_in_screen(DPIDialog* dialog) {
CreateFilamentPresetDialog::CreateFilamentPresetDialog(wxWindow *parent) CreateFilamentPresetDialog::CreateFilamentPresetDialog(wxWindow *parent)
: DPIDialog(parent ? parent : nullptr, wxID_ANY, _L("Create Filament"), wxDefaultPosition, wxDefaultSize, wxCAPTION | wxCLOSE_BOX | wxCENTRE) : DPIDialog(parent ? parent : nullptr, wxID_ANY, _L("Create Filament"), wxDefaultPosition, wxDefaultSize, wxCAPTION | wxCLOSE_BOX | wxCENTRE)
{ {
m_create_type.base_filament = _L("Create based on current filamet"); m_create_type.base_filament = _L("Create Based on Current Filament");
m_create_type.base_filament_preset = _L("Copy current filament preset "); m_create_type.base_filament_preset = _L("Copy Current Filament Preset ");
this->SetBackgroundColour(*wxWHITE); this->SetBackgroundColour(*wxWHITE);
this->SetSize(wxSize(FromDIP(600), FromDIP(480))); this->SetSize(wxSize(FromDIP(600), FromDIP(480)));
@ -664,7 +664,7 @@ wxBoxSizer *CreateFilamentPresetDialog::create_vendor_item()
m_filament_custom_vendor_input->GetTextCtrl()->SetMaxLength(50); m_filament_custom_vendor_input->GetTextCtrl()->SetMaxLength(50);
m_filament_custom_vendor_input->SetSize(NAME_OPTION_COMBOBOX_SIZE); m_filament_custom_vendor_input->SetSize(NAME_OPTION_COMBOBOX_SIZE);
textInputSizer->Add(m_filament_custom_vendor_input, 0, wxEXPAND | wxALL, 0); textInputSizer->Add(m_filament_custom_vendor_input, 0, wxEXPAND | wxALL, 0);
m_filament_custom_vendor_input->GetTextCtrl()->SetHint(_L("Input custom vendor")); m_filament_custom_vendor_input->GetTextCtrl()->SetHint(_L("Input Custom Vendor"));
m_filament_custom_vendor_input->GetTextCtrl()->Bind(wxEVT_CHAR, [this](wxKeyEvent &event) { m_filament_custom_vendor_input->GetTextCtrl()->Bind(wxEVT_CHAR, [this](wxKeyEvent &event) {
int key = event.GetKeyCode(); int key = event.GetKeyCode();
if (cannot_input_key.find(key) != cannot_input_key.end()) { if (cannot_input_key.find(key) != cannot_input_key.end()) {
@ -797,7 +797,7 @@ wxBoxSizer *CreateFilamentPresetDialog::create_filament_preset_item()
wxBoxSizer *horizontal_sizer = new wxBoxSizer(wxHORIZONTAL); wxBoxSizer *horizontal_sizer = new wxBoxSizer(wxHORIZONTAL);
wxBoxSizer * optionSizer = new wxBoxSizer(wxVERTICAL); wxBoxSizer * optionSizer = new wxBoxSizer(wxVERTICAL);
wxStaticText *static_filament_preset_text = new wxStaticText(this, wxID_ANY, _L("Filament preset"), wxDefaultPosition, wxDefaultSize); wxStaticText *static_filament_preset_text = new wxStaticText(this, wxID_ANY, _L("Filament Preset"), wxDefaultPosition, wxDefaultSize);
optionSizer->Add(static_filament_preset_text, 0, wxEXPAND | wxALL, 0); optionSizer->Add(static_filament_preset_text, 0, wxEXPAND | wxALL, 0);
optionSizer->SetMinSize(OPTION_SIZE); optionSizer->SetMinSize(OPTION_SIZE);
horizontal_sizer->Add(optionSizer, 0, wxEXPAND | wxALL | wxALIGN_CENTER_VERTICAL, FromDIP(10)); horizontal_sizer->Add(optionSizer, 0, wxEXPAND | wxALL | wxALIGN_CENTER_VERTICAL, FromDIP(10));
@ -1532,7 +1532,7 @@ wxBoxSizer *CreatePrinterPresetDialog::create_printer_item(wxWindow *parent)
wxBoxSizer *vertical_sizer = new wxBoxSizer(wxVERTICAL); wxBoxSizer *vertical_sizer = new wxBoxSizer(wxVERTICAL);
wxBoxSizer *comboBoxSizer = new wxBoxSizer(wxHORIZONTAL); wxBoxSizer *comboBoxSizer = new wxBoxSizer(wxHORIZONTAL);
m_select_vendor = new ComboBox(parent, wxID_ANY, wxEmptyString, wxDefaultPosition, NAME_OPTION_COMBOBOX_SIZE, 0, nullptr, wxCB_READONLY); m_select_vendor = new ComboBox(parent, wxID_ANY, wxEmptyString, wxDefaultPosition, NAME_OPTION_COMBOBOX_SIZE, 0, nullptr, wxCB_READONLY);
m_select_vendor->SetValue(_L("Select vendor")); m_select_vendor->SetValue(_L("Select Vendor"));
m_select_vendor->SetLabelColor(DEFAULT_PROMPT_TEXT_COLOUR); m_select_vendor->SetLabelColor(DEFAULT_PROMPT_TEXT_COLOUR);
wxArrayString printer_vendor; wxArrayString printer_vendor;
for (const std::string &vendor : printer_vendors) { for (const std::string &vendor : printer_vendors) {
@ -1566,7 +1566,7 @@ wxBoxSizer *CreatePrinterPresetDialog::create_printer_item(wxWindow *parent)
m_select_model = new ComboBox(parent, wxID_ANY, wxEmptyString, wxDefaultPosition, NAME_OPTION_COMBOBOX_SIZE, 0, nullptr, wxCB_READONLY); m_select_model = new ComboBox(parent, wxID_ANY, wxEmptyString, wxDefaultPosition, NAME_OPTION_COMBOBOX_SIZE, 0, nullptr, wxCB_READONLY);
comboBoxSizer->Add(m_select_model, 0, wxEXPAND | wxLEFT, FromDIP(5)); comboBoxSizer->Add(m_select_model, 0, wxEXPAND | wxLEFT, FromDIP(5));
m_select_model->SetValue(_L("Select model")); m_select_model->SetValue(_L("Select Model"));
m_select_model->SetLabelColor(DEFAULT_PROMPT_TEXT_COLOUR); m_select_model->SetLabelColor(DEFAULT_PROMPT_TEXT_COLOUR);
m_select_model->Bind(wxEVT_COMBOBOX, [this](wxCommandEvent e) { m_select_model->Bind(wxEVT_COMBOBOX, [this](wxCommandEvent e) {
m_select_model->SetLabelColor(*wxBLACK); m_select_model->SetLabelColor(*wxBLACK);
@ -1575,7 +1575,7 @@ wxBoxSizer *CreatePrinterPresetDialog::create_printer_item(wxWindow *parent)
m_select_printer = new ComboBox(parent, wxID_ANY, wxEmptyString, wxDefaultPosition, PRINTER_PRESET_MODEL_SIZE, 0, nullptr, wxCB_READONLY); m_select_printer = new ComboBox(parent, wxID_ANY, wxEmptyString, wxDefaultPosition, PRINTER_PRESET_MODEL_SIZE, 0, nullptr, wxCB_READONLY);
comboBoxSizer->Add(m_select_printer, 0, wxEXPAND | wxALL, 0); comboBoxSizer->Add(m_select_printer, 0, wxEXPAND | wxALL, 0);
m_select_printer->SetValue(_L("Select printer")); m_select_printer->SetValue(_L("Select Printer"));
m_select_printer->SetLabelColor(DEFAULT_PROMPT_TEXT_COLOUR); m_select_printer->SetLabelColor(DEFAULT_PROMPT_TEXT_COLOUR);
m_select_printer->Bind(wxEVT_COMBOBOX, [this](wxCommandEvent e) { m_select_printer->Bind(wxEVT_COMBOBOX, [this](wxCommandEvent e) {
m_select_printer->SetLabelColor(*wxBLACK); m_select_printer->SetLabelColor(*wxBLACK);
@ -1585,7 +1585,7 @@ wxBoxSizer *CreatePrinterPresetDialog::create_printer_item(wxWindow *parent)
m_select_printer->Hide(); m_select_printer->Hide();
m_custom_vendor_text_ctrl = new wxTextCtrl(parent, wxID_ANY, "", wxDefaultPosition, NAME_OPTION_COMBOBOX_SIZE); m_custom_vendor_text_ctrl = new wxTextCtrl(parent, wxID_ANY, "", wxDefaultPosition, NAME_OPTION_COMBOBOX_SIZE);
m_custom_vendor_text_ctrl->SetHint(_L("Input custom vendor")); m_custom_vendor_text_ctrl->SetHint(_L("Input Custom Vendor"));
m_custom_vendor_text_ctrl->Bind(wxEVT_CHAR, [this](wxKeyEvent &event) { m_custom_vendor_text_ctrl->Bind(wxEVT_CHAR, [this](wxKeyEvent &event) {
int key = event.GetKeyCode(); int key = event.GetKeyCode();
if (cannot_input_key.find(key) != cannot_input_key.end()) { // "@" can not be inputed if (cannot_input_key.find(key) != cannot_input_key.end()) { // "@" can not be inputed
@ -1597,7 +1597,7 @@ wxBoxSizer *CreatePrinterPresetDialog::create_printer_item(wxWindow *parent)
comboBoxSizer->Add(m_custom_vendor_text_ctrl, 0, wxEXPAND | wxALL, 0); comboBoxSizer->Add(m_custom_vendor_text_ctrl, 0, wxEXPAND | wxALL, 0);
m_custom_vendor_text_ctrl->Hide(); m_custom_vendor_text_ctrl->Hide();
m_custom_model_text_ctrl = new wxTextCtrl(parent, wxID_ANY, "", wxDefaultPosition, NAME_OPTION_COMBOBOX_SIZE); m_custom_model_text_ctrl = new wxTextCtrl(parent, wxID_ANY, "", wxDefaultPosition, NAME_OPTION_COMBOBOX_SIZE);
m_custom_model_text_ctrl->SetHint(_L("Input custom model")); m_custom_model_text_ctrl->SetHint(_L("Input Custom Model"));
m_custom_model_text_ctrl->Bind(wxEVT_CHAR, [this](wxKeyEvent &event) { m_custom_model_text_ctrl->Bind(wxEVT_CHAR, [this](wxKeyEvent &event) {
int key = event.GetKeyCode(); int key = event.GetKeyCode();
if (cannot_input_key.find(key) != cannot_input_key.end()) { // "@" can not be inputed if (cannot_input_key.find(key) != cannot_input_key.end()) { // "@" can not be inputed
@ -1853,7 +1853,7 @@ wxBoxSizer *CreatePrinterPresetDialog::create_max_print_height_item(wxWindow *pa
wxBoxSizer * horizontal_sizer = new wxBoxSizer(wxHORIZONTAL); wxBoxSizer * horizontal_sizer = new wxBoxSizer(wxHORIZONTAL);
wxBoxSizer * optionSizer = new wxBoxSizer(wxVERTICAL); wxBoxSizer * optionSizer = new wxBoxSizer(wxVERTICAL);
wxStaticText *static_type_text = new wxStaticText(parent, wxID_ANY, _L("Max print height"), wxDefaultPosition, wxDefaultSize); wxStaticText *static_type_text = new wxStaticText(parent, wxID_ANY, _L("Max Print Height"), wxDefaultPosition, wxDefaultSize);
optionSizer->Add(static_type_text, 0, wxEXPAND | wxALL, 0); optionSizer->Add(static_type_text, 0, wxEXPAND | wxALL, 0);
optionSizer->SetMinSize(OPTION_SIZE); optionSizer->SetMinSize(OPTION_SIZE);
horizontal_sizer->Add(optionSizer, 0, wxEXPAND | wxALL | wxALIGN_CENTER_VERTICAL, FromDIP(10)); horizontal_sizer->Add(optionSizer, 0, wxEXPAND | wxALL | wxALIGN_CENTER_VERTICAL, FromDIP(10));
@ -2235,7 +2235,7 @@ void CreatePrinterPresetDialog::select_curr_radiobox(std::vector<std::pair<Radio
wxString curr_selected_type = radiobox_list[i].second; wxString curr_selected_type = radiobox_list[i].second;
this->Freeze(); this->Freeze();
if (curr_selected_type == m_create_type.base_template) { if (curr_selected_type == m_create_type.base_template) {
if (m_printer_model->GetValue() == _L("Select model")) { if (m_printer_model->GetValue() == _L("Select Model")) {
m_filament_preset_template_sizer->Clear(true); m_filament_preset_template_sizer->Clear(true);
m_filament_preset.clear(); m_filament_preset.clear();
m_process_preset_template_sizer->Clear(true); m_process_preset_template_sizer->Clear(true);
@ -2245,7 +2245,7 @@ void CreatePrinterPresetDialog::select_curr_radiobox(std::vector<std::pair<Radio
} }
m_page2->SetSizerAndFit(m_page2_sizer); m_page2->SetSizerAndFit(m_page2_sizer);
} else if (curr_selected_type == m_create_type.base_curr_printer) { } else if (curr_selected_type == m_create_type.base_curr_printer) {
if (m_printer_model->GetValue() == _L("Select model")) { if (m_printer_model->GetValue() == _L("Select Model")) {
m_filament_preset_template_sizer->Clear(true); m_filament_preset_template_sizer->Clear(true);
m_filament_preset.clear(); m_filament_preset.clear();
m_process_preset_template_sizer->Clear(true); m_process_preset_template_sizer->Clear(true);
@ -2313,7 +2313,7 @@ wxBoxSizer *CreatePrinterPresetDialog::create_printer_preset_item(wxWindow *pare
wxBoxSizer *horizontal_sizer = new wxBoxSizer(wxHORIZONTAL); wxBoxSizer *horizontal_sizer = new wxBoxSizer(wxHORIZONTAL);
wxBoxSizer * optionSizer = new wxBoxSizer(wxVERTICAL); wxBoxSizer * optionSizer = new wxBoxSizer(wxVERTICAL);
wxStaticText *static_vendor_text = new wxStaticText(parent, wxID_ANY, _L("Printer preset"), wxDefaultPosition, wxDefaultSize); wxStaticText *static_vendor_text = new wxStaticText(parent, wxID_ANY, _L("Printer Preset"), wxDefaultPosition, wxDefaultSize);
optionSizer->Add(static_vendor_text, 0, wxEXPAND | wxALL, 0); optionSizer->Add(static_vendor_text, 0, wxEXPAND | wxALL, 0);
optionSizer->SetMinSize(OPTION_SIZE); optionSizer->SetMinSize(OPTION_SIZE);
horizontal_sizer->Add(optionSizer, 0, wxEXPAND | wxALL | wxALIGN_CENTER_VERTICAL, FromDIP(10)); horizontal_sizer->Add(optionSizer, 0, wxEXPAND | wxALL | wxALIGN_CENTER_VERTICAL, FromDIP(10));
@ -2328,12 +2328,12 @@ wxBoxSizer *CreatePrinterPresetDialog::create_printer_preset_item(wxWindow *pare
wxBoxSizer *comboBox_sizer = new wxBoxSizer(wxHORIZONTAL); wxBoxSizer *comboBox_sizer = new wxBoxSizer(wxHORIZONTAL);
m_printer_vendor = new ComboBox(parent, wxID_ANY, wxEmptyString, wxDefaultPosition, PRINTER_PRESET_VENDOR_SIZE, 0, nullptr, wxCB_READONLY); m_printer_vendor = new ComboBox(parent, wxID_ANY, wxEmptyString, wxDefaultPosition, PRINTER_PRESET_VENDOR_SIZE, 0, nullptr, wxCB_READONLY);
m_printer_vendor->SetValue(_L("Select vendor")); m_printer_vendor->SetValue(_L("Select Vendor"));
m_printer_vendor->SetLabelColor(DEFAULT_PROMPT_TEXT_COLOUR); m_printer_vendor->SetLabelColor(DEFAULT_PROMPT_TEXT_COLOUR);
comboBox_sizer->Add(m_printer_vendor, 0, wxEXPAND, 0); comboBox_sizer->Add(m_printer_vendor, 0, wxEXPAND, 0);
m_printer_model = new ComboBox(parent, wxID_ANY, wxEmptyString, wxDefaultPosition, PRINTER_PRESET_MODEL_SIZE, 0, nullptr, wxCB_READONLY); m_printer_model = new ComboBox(parent, wxID_ANY, wxEmptyString, wxDefaultPosition, PRINTER_PRESET_MODEL_SIZE, 0, nullptr, wxCB_READONLY);
m_printer_model->SetLabelColor(DEFAULT_PROMPT_TEXT_COLOUR); m_printer_model->SetLabelColor(DEFAULT_PROMPT_TEXT_COLOUR);
m_printer_model->SetValue(_L("Select model")); m_printer_model->SetValue(_L("Select Model"));
comboBox_sizer->Add(m_printer_model, 0, wxEXPAND | wxLEFT, FromDIP(10)); comboBox_sizer->Add(m_printer_model, 0, wxEXPAND | wxLEFT, FromDIP(10));
vertical_sizer->Add(comboBox_sizer, 0, wxEXPAND | wxTOP, FromDIP(5)); vertical_sizer->Add(comboBox_sizer, 0, wxEXPAND | wxTOP, FromDIP(5));
@ -2380,7 +2380,7 @@ wxBoxSizer *CreatePrinterPresetDialog::create_presets_template_item(wxWindow *pa
m_preset_template_panel->SetBackgroundColour(PRINTER_LIST_COLOUR); m_preset_template_panel->SetBackgroundColour(PRINTER_LIST_COLOUR);
m_preset_template_panel->SetMinSize(wxSize(FromDIP(660), -1)); m_preset_template_panel->SetMinSize(wxSize(FromDIP(660), -1));
m_filament_sizer = new wxBoxSizer(wxVERTICAL); m_filament_sizer = new wxBoxSizer(wxVERTICAL);
wxStaticText *static_filament_preset_text = new wxStaticText(m_preset_template_panel, wxID_ANY, _L("Filament preset template"), wxDefaultPosition, wxDefaultSize); wxStaticText *static_filament_preset_text = new wxStaticText(m_preset_template_panel, wxID_ANY, _L("Filament Preset Template"), wxDefaultPosition, wxDefaultSize);
m_filament_sizer->Add(static_filament_preset_text, 0, wxEXPAND | wxALL, FromDIP(5)); m_filament_sizer->Add(static_filament_preset_text, 0, wxEXPAND | wxALL, FromDIP(5));
m_filament_preset_panel = new wxPanel(m_preset_template_panel); m_filament_preset_panel = new wxPanel(m_preset_template_panel);
m_filament_preset_template_sizer = new wxGridSizer(3, FromDIP(5), FromDIP(5)); m_filament_preset_template_sizer = new wxGridSizer(3, FromDIP(5), FromDIP(5));
@ -2412,7 +2412,7 @@ wxBoxSizer *CreatePrinterPresetDialog::create_presets_template_item(wxWindow *pa
split_panel->SetBackgroundColour(wxColour(*wxWHITE)); split_panel->SetBackgroundColour(wxColour(*wxWHITE));
m_filament_sizer->Add(split_panel, 0, wxEXPAND, 0); m_filament_sizer->Add(split_panel, 0, wxEXPAND, 0);
wxStaticText *static_process_preset_text = new wxStaticText(m_preset_template_panel, wxID_ANY, _L("Process preset template"), wxDefaultPosition, wxDefaultSize); wxStaticText *static_process_preset_text = new wxStaticText(m_preset_template_panel, wxID_ANY, _L("Process Preset Template"), wxDefaultPosition, wxDefaultSize);
m_filament_sizer->Add(static_process_preset_text, 0, wxEXPAND | wxALL, FromDIP(5)); m_filament_sizer->Add(static_process_preset_text, 0, wxEXPAND | wxALL, FromDIP(5));
m_process_preset_panel = new wxPanel(m_preset_template_panel); m_process_preset_panel = new wxPanel(m_preset_template_panel);
m_process_preset_panel->SetSize(PRESET_TEMPLATE_SIZE); m_process_preset_panel->SetSize(PRESET_TEMPLATE_SIZE);
@ -3637,15 +3637,16 @@ void ExportConfigsDialog::select_curr_radiobox(std::vector<std::pair<RadioBox *,
//m_presets_window->SetSizerAndFit(m_preset_sizer); //m_presets_window->SetSizerAndFit(m_preset_sizer);
m_presets_window->Layout(); m_presets_window->Layout();
m_presets_window->Fit(); m_presets_window->Fit();
int whidth = m_presets_window->GetSize().GetWidth(); int width = m_presets_window->GetSize().GetWidth();
int height = m_presets_window->GetSize().GetHeight(); int height = m_presets_window->GetSize().GetHeight();
m_scrolled_preset_window->SetMinSize(wxSize(std::min(1200, whidth), std::min(600, height))); m_scrolled_preset_window->SetMinSize(wxSize(std::min(1200, width), std::min(600, height)));
m_scrolled_preset_window->SetMaxSize(wxSize(std::min(1200, whidth), std::min(600, height))); m_scrolled_preset_window->SetMaxSize(wxSize(std::min(1200, width), std::min(600, height)));
m_scrolled_preset_window->SetSize(wxSize(std::min(1200, whidth), std::min(600, height))); m_scrolled_preset_window->SetSize(wxSize(std::min(1200, width), std::min(600, height)));
this->SetSizerAndFit(m_main_sizer); this->SetSizerAndFit(m_main_sizer);
Layout(); Layout();
Fit(); Fit();
Refresh(); Refresh();
adjust_dialog_in_screen(this);
this->Thaw(); this->Thaw();
} else { } else {
radiobox_list[i].first->SetValue(false); radiobox_list[i].first->SetValue(false);
@ -4255,19 +4256,22 @@ void EditFilamentPresetDialog::update_preset_tree()
} }
m_preset_tree_panel->SetSizerAndFit(m_preset_tree_sizer); m_preset_tree_panel->SetSizerAndFit(m_preset_tree_sizer);
m_preset_tree_panel->SetMinSize(wxSize(m_note_text->GetSize().GetWidth(), -1)); int width = m_preset_tree_panel->GetSize().GetWidth();
m_preset_tree_panel->SetSize(wxSize(m_note_text->GetSize().GetWidth(), -1));
int whidth = m_preset_tree_panel->GetSize().GetWidth();
int height = m_preset_tree_panel->GetSize().GetHeight(); int height = m_preset_tree_panel->GetSize().GetHeight();
m_preset_tree_window->SetMinSize(wxSize(std::min(1000, whidth), std::min(600, height))); if (width < m_note_text->GetSize().GetWidth()) {
m_preset_tree_window->SetMaxSize(wxSize(std::min(1000, whidth), std::min(600, height))); width = m_note_text->GetSize().GetWidth();
m_preset_tree_window->SetSize(wxSize(std::min(1000, whidth), std::min(600, height))); m_preset_tree_panel->SetMinSize(wxSize(width, -1));
}
m_preset_tree_window->SetMinSize(wxSize(std::min(1000, width), std::min(400, height)));
m_preset_tree_window->SetMaxSize(wxSize(std::min(1000, width), std::min(400, height)));
m_preset_tree_window->SetSize(wxSize(std::min(1000, width), std::min(400, height)));
this->SetSizerAndFit(m_main_sizer); this->SetSizerAndFit(m_main_sizer);
this->Layout(); this->Layout();
this->Fit(); this->Fit();
this->Refresh(); this->Refresh();
wxGetApp().UpdateDlgDarkUI(this); wxGetApp().UpdateDlgDarkUI(this);
adjust_dialog_in_screen(this);
this->Thaw(); this->Thaw();
} }