mirror of
https://github.com/SoftFever/OrcaSlicer.git
synced 2025-07-13 01:37:53 -06:00
Fixed wrong filling of TextControl, when value is double.
This commit is contained in:
parent
badeb2f64c
commit
77bac4c17a
2 changed files with 11 additions and 13 deletions
|
@ -112,13 +112,13 @@ namespace Slic3r { namespace GUI {
|
||||||
if (vec->size() > 1)
|
if (vec->size() > 1)
|
||||||
break;
|
break;
|
||||||
double val = vec->get_at(0);
|
double val = vec->get_at(0);
|
||||||
text_value = val - int(val) == 0 ? wxString::Format(_T("%i"), int(val)) : wxNumberFormatter::ToString(val, 2);
|
text_value = val - int(val) == 0 ? wxString::Format(_T("%i"), int(val)) : wxNumberFormatter::ToString(val, 2, wxNumberFormatter::Style_None);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case coFloat:
|
case coFloat:
|
||||||
{
|
{
|
||||||
double val = m_opt.default_value->getFloat();
|
double val = m_opt.default_value->getFloat();
|
||||||
text_value = (val - int(val)) == 0 ? wxString::Format(_T("%i"), int(val)) : wxNumberFormatter::ToString(val, 2);
|
text_value = (val - int(val)) == 0 ? wxString::Format(_T("%i"), int(val)) : wxNumberFormatter::ToString(val, 2, wxNumberFormatter::Style_None);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case coFloats:
|
case coFloats:
|
||||||
|
@ -128,7 +128,7 @@ namespace Slic3r { namespace GUI {
|
||||||
if (vec->size() > 1)
|
if (vec->size() > 1)
|
||||||
break;
|
break;
|
||||||
double val = vec->get_at(0);
|
double val = vec->get_at(0);
|
||||||
text_value = val - int(val) == 0 ? wxString::Format(_T("%i"), int(val)) : wxNumberFormatter::ToString(val, 2);
|
text_value = val - int(val) == 0 ? wxString::Format(_T("%i"), int(val)) : wxNumberFormatter::ToString(val, 2, wxNumberFormatter::Style_None);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case coString:
|
case coString:
|
||||||
|
@ -161,13 +161,12 @@ namespace Slic3r { namespace GUI {
|
||||||
|
|
||||||
temp->Bind(wxEVT_KILL_FOCUS, ([this, temp](wxEvent& e)
|
temp->Bind(wxEVT_KILL_FOCUS, ([this, temp](wxEvent& e)
|
||||||
{
|
{
|
||||||
//! change value after kill focus
|
|
||||||
//! to avoid update_config during every one changes inside control
|
|
||||||
on_change_field();
|
|
||||||
on_kill_focus(e);
|
on_kill_focus(e);
|
||||||
temp->GetToolTip()->Enable(true);
|
temp->GetToolTip()->Enable(true);
|
||||||
}), temp->GetId());
|
}), temp->GetId());
|
||||||
|
|
||||||
|
temp->Bind(wxEVT_TEXT, ([this](wxCommandEvent) { on_change_field(); }), temp->GetId());
|
||||||
|
|
||||||
// recast as a wxWindow to fit the calling convention
|
// recast as a wxWindow to fit the calling convention
|
||||||
window = dynamic_cast<wxWindow*>(temp);
|
window = dynamic_cast<wxWindow*>(temp);
|
||||||
}
|
}
|
||||||
|
@ -489,9 +488,9 @@ void PointCtrl::BUILD()
|
||||||
|
|
||||||
auto default_pt = static_cast<ConfigOptionPoints*>(m_opt.default_value)->values.at(0);
|
auto default_pt = static_cast<ConfigOptionPoints*>(m_opt.default_value)->values.at(0);
|
||||||
double val = default_pt.x;
|
double val = default_pt.x;
|
||||||
wxString X = val - int(val) == 0 ? wxString::Format(_T("%i"), int(val)) : wxNumberFormatter::ToString(val, 2);
|
wxString X = val - int(val) == 0 ? wxString::Format(_T("%i"), int(val)) : wxNumberFormatter::ToString(val, 2, wxNumberFormatter::Style_None);
|
||||||
val = default_pt.y;
|
val = default_pt.y;
|
||||||
wxString Y = val - int(val) == 0 ? wxString::Format(_T("%i"), int(val)) : wxNumberFormatter::ToString(val, 2);
|
wxString Y = val - int(val) == 0 ? wxString::Format(_T("%i"), int(val)) : wxNumberFormatter::ToString(val, 2, wxNumberFormatter::Style_None);
|
||||||
|
|
||||||
x_textctrl = new wxTextCtrl(m_parent, wxID_ANY, X, wxDefaultPosition, field_size);
|
x_textctrl = new wxTextCtrl(m_parent, wxID_ANY, X, wxDefaultPosition, field_size);
|
||||||
y_textctrl = new wxTextCtrl(m_parent, wxID_ANY, Y, wxDefaultPosition, field_size);
|
y_textctrl = new wxTextCtrl(m_parent, wxID_ANY, Y, wxDefaultPosition, field_size);
|
||||||
|
@ -516,9 +515,9 @@ void PointCtrl::set_value(const Pointf value)
|
||||||
m_disable_change_event = true;
|
m_disable_change_event = true;
|
||||||
|
|
||||||
double val = value.x;
|
double val = value.x;
|
||||||
x_textctrl->SetValue(val - int(val) == 0 ? wxString::Format(_T("%i"), int(val)) : wxNumberFormatter::ToString(val, 2));
|
x_textctrl->SetValue(val - int(val) == 0 ? wxString::Format(_T("%i"), int(val)) : wxNumberFormatter::ToString(val, 2, wxNumberFormatter::Style_None));
|
||||||
val = value.y;
|
val = value.y;
|
||||||
y_textctrl->SetValue(val - int(val) == 0 ? wxString::Format(_T("%i"), int(val)) : wxNumberFormatter::ToString(val, 2));
|
y_textctrl->SetValue(val - int(val) == 0 ? wxString::Format(_T("%i"), int(val)) : wxNumberFormatter::ToString(val, 2, wxNumberFormatter::Style_None));
|
||||||
|
|
||||||
m_disable_change_event = false;
|
m_disable_change_event = false;
|
||||||
}
|
}
|
||||||
|
|
|
@ -287,11 +287,10 @@ boost::any ConfigOptionsGroup::config_value(std::string opt_key, int opt_index,
|
||||||
|
|
||||||
wxString double_to_string(double const value)
|
wxString double_to_string(double const value)
|
||||||
{
|
{
|
||||||
|
int precision = 10 * value - int(10 * value) == 0 ? 1 : 2;
|
||||||
return value - int(value) == 0 ?
|
return value - int(value) == 0 ?
|
||||||
wxString::Format(_T("%i"), int(value)) :
|
wxString::Format(_T("%i"), int(value)) :
|
||||||
10 * value - int(10 * value) == 0 ?
|
wxNumberFormatter::ToString(value, precision, wxNumberFormatter::Style_None);
|
||||||
wxNumberFormatter::ToString(value, 1) :
|
|
||||||
wxNumberFormatter::ToString(value, 2);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
boost::any ConfigOptionsGroup::get_config_value(DynamicPrintConfig& config, std::string opt_key, int opt_index/* = -1*/)
|
boost::any ConfigOptionsGroup::get_config_value(DynamicPrintConfig& config, std::string opt_key, int opt_index/* = -1*/)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue