ENH: add k value tips for cali
jira: none Change-Id: I73f997ea4843d52a6dce3fac905f42779beb54c2
This commit is contained in:
parent
2a00a0d889
commit
06a50c35fe
|
@ -288,22 +288,24 @@ void AMSMaterialsSetting::create_panel_normal(wxWindow* parent)
|
||||||
void AMSMaterialsSetting::create_panel_kn(wxWindow* parent)
|
void AMSMaterialsSetting::create_panel_kn(wxWindow* parent)
|
||||||
{
|
{
|
||||||
auto sizer = new wxBoxSizer(wxVERTICAL);
|
auto sizer = new wxBoxSizer(wxVERTICAL);
|
||||||
|
auto cali_title_sizer = new wxBoxSizer(wxHORIZONTAL);
|
||||||
// title
|
// title
|
||||||
m_ratio_text = new wxStaticText(parent, wxID_ANY, _L("Factors of Flow Dynamics Calibration"));
|
m_ratio_text = new wxStaticText(parent, wxID_ANY, _L("Factors of Flow Dynamics Calibration"));
|
||||||
m_ratio_text->SetForegroundColour(wxColour(50, 58, 61));
|
m_ratio_text->SetForegroundColour(wxColour(50, 58, 61));
|
||||||
m_ratio_text->SetFont(Label::Head_14);
|
m_ratio_text->SetFont(Label::Head_14);
|
||||||
|
|
||||||
m_ratio_text->Bind(wxEVT_ENTER_WINDOW, [this](auto& e) {SetCursor(wxCURSOR_HAND); });
|
std::string language = wxGetApp().app_config->get("language");
|
||||||
m_ratio_text->Bind(wxEVT_LEAVE_WINDOW, [this](auto& e) {SetCursor(wxCURSOR_ARROW); });
|
wxString region = "en";
|
||||||
|
if (language.find("zh") == 0)
|
||||||
m_ratio_text->Bind(wxEVT_LEFT_DOWN, [this](auto& e) {
|
region = "zh";
|
||||||
std::string language = wxGetApp().app_config->get("language");
|
wxString link_url = wxString::Format("https://wiki.bambulab.com/%s/software/bambu-studio/calibration_pa", region);
|
||||||
wxString region = "en";
|
m_wiki_ctrl = new wxHyperlinkCtrl(parent, wxID_ANY, "Wiki", link_url);
|
||||||
if (language.find("zh") == 0)
|
m_wiki_ctrl->SetNormalColour(*wxBLUE);
|
||||||
region = "zh";
|
m_wiki_ctrl->SetHoverColour(wxColour(0, 0, 200));
|
||||||
wxLaunchDefaultBrowser(wxString::Format("https://wiki.bambulab.com/%s/software/bambu-studio/calibration_pa", region));
|
m_wiki_ctrl->SetVisitedColour(*wxBLUE);
|
||||||
});
|
m_wiki_ctrl->SetFont(Label::Head_14);
|
||||||
|
cali_title_sizer->Add(m_ratio_text, 0, wxALIGN_CENTER_VERTICAL);
|
||||||
|
cali_title_sizer->Add(m_wiki_ctrl, 0, wxALIGN_CENTER_VERTICAL);
|
||||||
|
|
||||||
wxBoxSizer *m_sizer_cali_resutl = new wxBoxSizer(wxHORIZONTAL);
|
wxBoxSizer *m_sizer_cali_resutl = new wxBoxSizer(wxHORIZONTAL);
|
||||||
// pa profile
|
// pa profile
|
||||||
|
@ -352,13 +354,21 @@ void AMSMaterialsSetting::create_panel_kn(wxWindow* parent)
|
||||||
m_n_param->Hide();
|
m_n_param->Hide();
|
||||||
m_input_n_val->Hide();
|
m_input_n_val->Hide();
|
||||||
|
|
||||||
|
// tips info
|
||||||
|
m_k_value_tips = new wxStaticText(parent, wxID_ANY, _L("Tips: When starting a print, disable dynamic flow calibration to enable custom values for this task."));
|
||||||
|
m_k_value_tips->SetForegroundColour(wxColour(50, 58, 61));
|
||||||
|
m_k_value_tips->Wrap(FromDIP(300));
|
||||||
|
m_k_value_tips->Hide();
|
||||||
|
|
||||||
sizer->Add(0, 0, 0, wxTOP, FromDIP(10));
|
sizer->Add(0, 0, 0, wxTOP, FromDIP(10));
|
||||||
sizer->Add(m_ratio_text, 0, wxLEFT | wxRIGHT | wxEXPAND, FromDIP(20));
|
sizer->Add(cali_title_sizer, 0, wxLEFT | wxRIGHT | wxEXPAND, FromDIP(20));
|
||||||
sizer->Add(0, 0, 0, wxTOP, FromDIP(16));
|
sizer->Add(0, 0, 0, wxTOP, FromDIP(12));
|
||||||
sizer->Add(m_sizer_cali_resutl, 0, wxLEFT | wxRIGHT, FromDIP(20));
|
sizer->Add(m_sizer_cali_resutl, 0, wxLEFT | wxRIGHT, FromDIP(20));
|
||||||
sizer->Add(0, 0, 0, wxTOP, FromDIP(10));
|
sizer->Add(0, 0, 0, wxTOP, FromDIP(10));
|
||||||
sizer->Add(kn_val_sizer, 0, wxLEFT | wxRIGHT | wxEXPAND, FromDIP(20));
|
sizer->Add(kn_val_sizer, 0, wxLEFT | wxRIGHT | wxEXPAND, FromDIP(20));
|
||||||
sizer->Add(0, 0, 0, wxTOP, FromDIP(10));
|
sizer->Add(0, 0, 0, wxTOP, FromDIP(10));
|
||||||
|
sizer->Add(m_k_value_tips, 0, wxLEFT | wxRIGHT | wxEXPAND, FromDIP(20));
|
||||||
|
sizer->Add(0, 0, 0, wxTOP, FromDIP(10));
|
||||||
parent->SetSizer(sizer);
|
parent->SetSizer(sizer);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -843,17 +853,8 @@ bool AMSMaterialsSetting::Show(bool show)
|
||||||
m_input_nozzle_min->GetTextCtrl()->SetSize(wxSize(-1, FromDIP(20)));
|
m_input_nozzle_min->GetTextCtrl()->SetSize(wxSize(-1, FromDIP(20)));
|
||||||
//m_clr_picker->set_color(m_clr_picker->GetParent()->GetBackgroundColour());
|
//m_clr_picker->set_color(m_clr_picker->GetParent()->GetBackgroundColour());
|
||||||
|
|
||||||
/*if (obj && (obj->is_function_supported(PrinterFunction::FUNC_EXTRUSION_CALI) || obj->is_high_printer_type())) {
|
|
||||||
m_ratio_text->Show();
|
|
||||||
m_k_param->Show();
|
|
||||||
m_input_k_val->Show();
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
m_ratio_text->Hide();
|
|
||||||
m_k_param->Hide();
|
|
||||||
m_input_k_val->Hide();
|
|
||||||
}*/
|
|
||||||
m_ratio_text->Show();
|
m_ratio_text->Show();
|
||||||
|
m_wiki_ctrl->Show();
|
||||||
m_k_param->Show();
|
m_k_param->Show();
|
||||||
m_input_k_val->Show();
|
m_input_k_val->Show();
|
||||||
Layout();
|
Layout();
|
||||||
|
@ -1120,8 +1121,16 @@ void AMSMaterialsSetting::on_select_cali_result(wxCommandEvent &evt)
|
||||||
{
|
{
|
||||||
m_pa_cali_select_id = evt.GetSelection();
|
m_pa_cali_select_id = evt.GetSelection();
|
||||||
if (m_pa_cali_select_id >= 0) {
|
if (m_pa_cali_select_id >= 0) {
|
||||||
|
if (m_pa_cali_select_id > 0) {
|
||||||
|
m_k_value_tips->Show();
|
||||||
|
} else {
|
||||||
|
m_k_value_tips->Hide();
|
||||||
|
}
|
||||||
m_input_k_val->GetTextCtrl()->SetValue(float_to_string_with_precision(m_pa_profile_items[m_pa_cali_select_id].k_value));
|
m_input_k_val->GetTextCtrl()->SetValue(float_to_string_with_precision(m_pa_profile_items[m_pa_cali_select_id].k_value));
|
||||||
m_input_n_val->GetTextCtrl()->SetValue(float_to_string_with_precision(m_pa_profile_items[m_pa_cali_select_id].n_coef));
|
m_input_n_val->GetTextCtrl()->SetValue(float_to_string_with_precision(m_pa_profile_items[m_pa_cali_select_id].n_coef));
|
||||||
|
Layout();
|
||||||
|
Fit();
|
||||||
|
Refresh();
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
m_input_k_val->GetTextCtrl()->SetValue(std::to_string(0.00));
|
m_input_k_val->GetTextCtrl()->SetValue(std::to_string(0.00));
|
||||||
|
@ -1344,8 +1353,16 @@ void AMSMaterialsSetting::on_select_filament(wxCommandEvent &evt)
|
||||||
}
|
}
|
||||||
|
|
||||||
if (cali_select_idx >= 0) {
|
if (cali_select_idx >= 0) {
|
||||||
|
if (cali_select_idx > 0) {
|
||||||
|
m_k_value_tips->Show();
|
||||||
|
} else {
|
||||||
|
m_k_value_tips->Hide();
|
||||||
|
}
|
||||||
m_input_k_val->GetTextCtrl()->SetValue(float_to_string_with_precision(m_pa_profile_items[cali_select_idx].k_value));
|
m_input_k_val->GetTextCtrl()->SetValue(float_to_string_with_precision(m_pa_profile_items[cali_select_idx].k_value));
|
||||||
m_input_n_val->GetTextCtrl()->SetValue(float_to_string_with_precision(m_pa_profile_items[cali_select_idx].n_coef));
|
m_input_n_val->GetTextCtrl()->SetValue(float_to_string_with_precision(m_pa_profile_items[cali_select_idx].n_coef));
|
||||||
|
Layout();
|
||||||
|
Fit();
|
||||||
|
Refresh();
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
m_input_k_val->GetTextCtrl()->SetValue(float_to_string_with_precision(m_pa_profile_items[0].k_value));
|
m_input_k_val->GetTextCtrl()->SetValue(float_to_string_with_precision(m_pa_profile_items[0].k_value));
|
||||||
|
|
|
@ -160,6 +160,7 @@ protected:
|
||||||
wxStaticText * m_title_temperature;
|
wxStaticText * m_title_temperature;
|
||||||
TextInput * m_input_nozzle_min;
|
TextInput * m_input_nozzle_min;
|
||||||
TextInput* m_input_nozzle_max;
|
TextInput* m_input_nozzle_max;
|
||||||
|
wxStaticText* m_k_value_tips;
|
||||||
ScalableBitmap * degree;
|
ScalableBitmap * degree;
|
||||||
wxStaticBitmap * bitmap_max_degree;
|
wxStaticBitmap * bitmap_max_degree;
|
||||||
wxStaticBitmap * bitmap_min_degree;
|
wxStaticBitmap * bitmap_min_degree;
|
||||||
|
@ -171,6 +172,7 @@ protected:
|
||||||
|
|
||||||
wxPanel * m_panel_kn;
|
wxPanel * m_panel_kn;
|
||||||
wxStaticText* m_ratio_text;
|
wxStaticText* m_ratio_text;
|
||||||
|
wxHyperlinkCtrl * m_wiki_ctrl;
|
||||||
wxStaticText* m_k_param;
|
wxStaticText* m_k_param;
|
||||||
TextInput* m_input_k_val;
|
TextInput* m_input_k_val;
|
||||||
wxStaticText* m_n_param;
|
wxStaticText* m_n_param;
|
||||||
|
|
Loading…
Reference in New Issue