Skip to content

Commit ead952d

Browse files
author
wangjunxiang
committed
Merge branch 'release_0715' of http://10.33.23.250:9080/orca_soft/orca_flashforge into release_0715
2 parents 9d8d0c7 + 7cb6f66 commit ead952d

1 file changed

Lines changed: 28 additions & 1 deletion

File tree

src/slic3r/GUI/MulticolorModelDialog.cpp

Lines changed: 28 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -646,7 +646,14 @@ void MulticolorModelDialog::build_ui()
646646
count_btn->SetMinSize(wxSize(FromDIP(56), FromDIP(36)));
647647
count_btn->SetMaxSize(wxSize(FromDIP(56), FromDIP(36)));
648648
count_btn->Enable(count <= max_selectable_color_count);
649-
count_btn->Bind(wxEVT_BUTTON, [this, count](wxCommandEvent &) { set_pending_color_count(count, true); });
649+
count_btn->Bind(wxEVT_BUTTON, [this, count](wxCommandEvent &) {
650+
set_pending_color_count(count, true);
651+
if (m_color_count_input != nullptr) {
652+
wxTextCtrl *text_ctrl = m_color_count_input->GetTextCtrl();
653+
text_ctrl->SetFocus();
654+
text_ctrl->SelectAll();
655+
}
656+
});
650657
m_color_count_buttons.emplace_back(count, count_btn);
651658
count_buttons_sizer->Add(count_btn, 0, wxRIGHT, FromDIP(10));
652659
}
@@ -669,6 +676,19 @@ void MulticolorModelDialog::build_ui()
669676
if (!m_updating_color_count_controls)
670677
set_pending_color_count(m_color_count_input->GetValue(), true);
671678
});
679+
wxTextCtrl *color_count_text_ctrl = m_color_count_input->GetTextCtrl();
680+
color_count_text_ctrl->Bind(wxEVT_TEXT, [this, color_count_text_ctrl](wxCommandEvent &) {
681+
if (m_updating_color_count_controls)
682+
return;
683+
684+
long value = 0;
685+
if (!color_count_text_ctrl->GetValue().ToLong(&value))
686+
return;
687+
if (value < m_color_count_input->GetMin() || value > m_color_count_input->GetMax())
688+
return;
689+
690+
set_pending_color_count(static_cast<int>(value), true);
691+
});
672692
count_input_sizer->Add(m_color_count_slider, 1, wxALIGN_CENTER_VERTICAL | wxRIGHT, FromDIP(10));
673693
count_input_sizer->Add(m_color_count_input, 0, wxALIGN_CENTER_VERTICAL);
674694
settings_sizer->Add(count_input_sizer, 0, wxEXPAND | wxBOTTOM, FromDIP(14));
@@ -986,6 +1006,13 @@ void MulticolorModelDialog::apply_pending_color_count(bool force)
9861006
if (m_preview_mode == PreviewMode::Quantized)
9871007
m_canvas->set_model(m_result.quantized_model);
9881008
refresh_quantization_controls();
1009+
if (m_color_count_input != nullptr) {
1010+
wxTextCtrl *text_ctrl = m_color_count_input->GetTextCtrl();
1011+
text_ctrl->CallAfter([text_ctrl]() {
1012+
text_ctrl->SetFocus();
1013+
text_ctrl->SelectAll();
1014+
});
1015+
}
9891016
}
9901017

9911018
void MulticolorModelDialog::auto_quantize()

0 commit comments

Comments
 (0)