internal bridge speed

This commit is contained in:
SoftFever 2023-08-10 17:34:51 +08:00
parent bb89336285
commit 89ec02444a
11 changed files with 37 additions and 18 deletions

View file

@ -563,7 +563,7 @@ void ConfigManipulation::toggle_print_fff_options(DynamicPrintConfig *config, co
toggle_field(el, has_solid_infill);
for (auto el : { "infill_direction", "sparse_infill_line_width",
"sparse_infill_speed", "bridge_speed", "bridge_angle" })
"sparse_infill_speed", "bridge_speed", "internal_bridge_speed", "bridge_angle" })
toggle_field(el, have_infill || has_solid_infill);
toggle_field("top_shell_thickness", ! has_spiral_vase && has_top_solid_infill);

View file

@ -101,7 +101,7 @@ std::map<std::string, std::vector<SimpleSettingData>> SettingsFactory::PART_CAT
}},
{ L("Speed"), {{"outer_wall_speed", "",1},{"inner_wall_speed", "",2},{"sparse_infill_speed", "",3},{"top_surface_speed", "",4}, {"internal_solid_infill_speed", "",5},
{"enable_overhang_speed", "",6}, {"overhang_speed_classic", "",6}, {"overhang_1_4_speed", "",7}, {"overhang_2_4_speed", "",8}, {"overhang_3_4_speed", "",9}, {"overhang_4_4_speed", "",10},
{"bridge_speed", "",11}, {"gap_infill_speed", "",12}
{"bridge_speed", "",11}, {"gap_infill_speed", "",12}, {"internal_bridge_speed", "", 13}
}}
};

View file

@ -75,7 +75,7 @@ void OG_CustomCtrl::init_ctrl_lines()
for (const Line& line : og_lines)
{
if (line.is_separator()) {
ctrl_lines.emplace_back(CtrlLine(0, this, line));
ctrl_lines.emplace_back(CtrlLine(3, this, line));
continue;
}
@ -728,9 +728,9 @@ void OG_CustomCtrl::CtrlLine::render_separator(wxDC& dc, wxCoord v_pos)
wxPoint begin(ctrl->m_h_gap, v_pos);
wxPoint end(ctrl->GetSize().GetWidth() - ctrl->m_h_gap, v_pos);
wxPen pen, old_pen = pen = dc.GetPen();
pen.SetColour(*wxLIGHT_GREY);
dc.SetPen(pen);
wxPen old_pen = dc.GetPen();
// pen.SetColour(*wxLIGHT_GREY);
dc.SetPen(*wxTRANSPARENT_PEN);
dc.DrawLine(begin, end);
dc.SetPen(old_pen);
}

View file

@ -212,10 +212,12 @@ void OptionsGroup::append_line(const Line& line)
//BBS: get line for opt_key
Line* OptionsGroup::get_line(const std::string& opt_key)
{
for (int index = 0; index < m_lines.size(); index++)
for (auto& l : m_lines)
{
if (m_lines[index].get_first_option_key() == opt_key)
return &(m_lines[index]);
if(l.is_separator())
continue;
if (l.get_first_option_key() == opt_key)
return &l;
}
return nullptr;

View file

@ -69,6 +69,8 @@ public:
wxWindow* extra_widget_win {nullptr};
//BBS: add api to get the first option's key
std::string& get_first_option_key() {
if(m_options.empty())
return std::string();
return m_options[0].opt_id;
}

View file

@ -1954,7 +1954,11 @@ void TabPrint::build()
line.append_option(optgroup->get_option("overhang_3_4_speed"));
line.append_option(optgroup->get_option("overhang_4_4_speed"));
optgroup->append_line(line);
optgroup->append_single_option_line("bridge_speed");
optgroup->append_separator();
line = { L("Bridge"), L("Set speed for external and internal bridges") };
line.append_option(optgroup->get_option("bridge_speed"));
line.append_option(optgroup->get_option("internal_bridge_speed"));
optgroup->append_line(line);
optgroup = page->new_optgroup(L("Travel speed"), L"param_travel_speed", 15);
optgroup->append_single_option_line("travel_speed");
@ -2677,9 +2681,8 @@ void TabFilament::build()
optgroup->append_single_option_line("bed_temperature_difference");
optgroup = page->new_optgroup(L("Print temperature"), L"param_temperature");
optgroup->split_multi_line = true;
optgroup->option_label_at_right = true;
optgroup->append_single_option_line("chamber_temperature");
optgroup->append_separator();
line = { L("Nozzle"), L("Nozzle temperature when printing") };