mirror of
https://github.com/SoftFever/OrcaSlicer.git
synced 2025-10-19 06:41:14 -06:00
Merge remote-tracking branch 'origin/main' into dev/gizmo
This commit is contained in:
commit
5f001c89fd
69 changed files with 8100 additions and 4614 deletions
|
@ -277,6 +277,7 @@ void ConfigManipulation::update_print_fff_config(DynamicPrintConfig* config, con
|
|||
sparse_infill_density == 0 &&
|
||||
! config->opt_bool("enable_support") &&
|
||||
config->opt_int("enforce_support_layers") == 0 &&
|
||||
config->opt_bool("ensure_vertical_shell_thickness") &&
|
||||
! config->opt_bool("detect_thin_wall") &&
|
||||
! config->opt_bool("overhang_reverse") &&
|
||||
config->opt_enum<TimelapseType>("timelapse_type") == TimelapseType::tlTraditional))
|
||||
|
@ -304,6 +305,7 @@ void ConfigManipulation::update_print_fff_config(DynamicPrintConfig* config, con
|
|||
new_conf.set_key_value("sparse_infill_density", new ConfigOptionPercent(0));
|
||||
new_conf.set_key_value("enable_support", new ConfigOptionBool(false));
|
||||
new_conf.set_key_value("enforce_support_layers", new ConfigOptionInt(0));
|
||||
new_conf.set_key_value("ensure_vertical_shell_thickness", new ConfigOptionBool(true));
|
||||
new_conf.set_key_value("detect_thin_wall", new ConfigOptionBool(false));
|
||||
new_conf.set_key_value("overhang_reverse", new ConfigOptionBool(false));
|
||||
new_conf.set_key_value("timelapse_type", new ConfigOptionEnum<TimelapseType>(tlTraditional));
|
||||
|
@ -524,7 +526,7 @@ void ConfigManipulation::toggle_print_fff_options(DynamicPrintConfig *config, co
|
|||
}
|
||||
|
||||
bool have_perimeters = config->opt_int("wall_loops") > 0;
|
||||
for (auto el : { "extra_perimeters_on_overhangs", "detect_thin_wall", "detect_overhang_wall",
|
||||
for (auto el : { "extra_perimeters_on_overhangs", "ensure_vertical_shell_thickness", "detect_thin_wall", "detect_overhang_wall",
|
||||
"seam_position", "staggered_inner_seams", "wall_infill_order", "outer_wall_line_width",
|
||||
"inner_wall_speed", "outer_wall_speed", "small_perimeter_speed", "small_perimeter_threshold" })
|
||||
toggle_field(el, have_perimeters);
|
||||
|
|
|
@ -2478,7 +2478,6 @@ bool GUI_App::on_init_inner()
|
|||
#endif // __WXMSW__
|
||||
|
||||
preset_updater = new PresetUpdater();
|
||||
#if orca_todo
|
||||
Bind(EVT_SLIC3R_VERSION_ONLINE, [this](const wxCommandEvent& evt) {
|
||||
if (this->plater_ != nullptr) {
|
||||
// this->plater_->get_notification_manager()->push_notification(NotificationType::NewAppAvailable);
|
||||
|
@ -2567,7 +2566,6 @@ bool GUI_App::on_init_inner()
|
|||
});
|
||||
dlg.ShowModal();
|
||||
});
|
||||
#endif
|
||||
}
|
||||
else {
|
||||
#ifdef __WXMSW__
|
||||
|
@ -4265,7 +4263,7 @@ void GUI_App::check_new_version_sf(bool show_tips, int by_user)
|
|||
error);
|
||||
})
|
||||
.timeout_connect(1)
|
||||
.on_complete([&](std::string body, unsigned http_status) {
|
||||
.on_complete([this,by_user](std::string body, unsigned http_status) {
|
||||
// Http response OK
|
||||
if (http_status != 200)
|
||||
return;
|
||||
|
@ -4291,30 +4289,28 @@ void GUI_App::check_new_version_sf(bool show_tips, int by_user)
|
|||
std::string best_release_content;
|
||||
std::string best_pre_content;
|
||||
const std::regex reg_num("([0-9]+)");
|
||||
for (auto json_version : root) {
|
||||
std::string tag = json_version.second.get<std::string>("tag_name");
|
||||
if (tag[0] == 'v')
|
||||
tag.erase(0, 1);
|
||||
for (std::regex_iterator it = std::sregex_iterator(tag.begin(), tag.end(), reg_num);
|
||||
it != std::sregex_iterator(); ++it) {
|
||||
}
|
||||
Semver tag_version = get_version(tag, matcher);
|
||||
if (current_version == tag_version)
|
||||
i_am_pre = json_version.second.get<bool>("prerelease");
|
||||
if (json_version.second.get<bool>("prerelease")) {
|
||||
if (best_pre < tag_version) {
|
||||
best_pre = tag_version;
|
||||
best_pre_url = json_version.second.get<std::string>("html_url");
|
||||
best_pre_content = json_version.second.get<std::string>("body");
|
||||
best_pre.set_prerelease("Preview");
|
||||
}
|
||||
} else {
|
||||
if (best_release < tag_version) {
|
||||
best_release = tag_version;
|
||||
best_release_url = json_version.second.get<std::string>("html_url");
|
||||
best_release_content = json_version.second.get<std::string>("body");
|
||||
}
|
||||
}
|
||||
std::string tag = root.get<std::string>("tag_name");
|
||||
if (tag[0] == 'v')
|
||||
tag.erase(0, 1);
|
||||
for (std::regex_iterator it = std::sregex_iterator(tag.begin(), tag.end(), reg_num);
|
||||
it != std::sregex_iterator(); ++it) {
|
||||
}
|
||||
Semver tag_version = get_version(tag, matcher);
|
||||
if (current_version == tag_version)
|
||||
i_am_pre = root.get<bool>("prerelease");
|
||||
if (root.get<bool>("prerelease")) {
|
||||
if (best_pre < tag_version) {
|
||||
best_pre = tag_version;
|
||||
best_pre_url = root.get<std::string>("html_url");
|
||||
best_pre_content = root.get<std::string>("body");
|
||||
best_pre.set_prerelease("Preview");
|
||||
}
|
||||
} else {
|
||||
if (best_release < tag_version) {
|
||||
best_release = tag_version;
|
||||
best_release_url = root.get<std::string>("html_url");
|
||||
best_release_content = root.get<std::string>("body");
|
||||
}
|
||||
}
|
||||
|
||||
// if release is more recent than beta, use release anyway
|
||||
|
@ -4324,8 +4320,11 @@ void GUI_App::check_new_version_sf(bool show_tips, int by_user)
|
|||
best_pre_content = best_release_content;
|
||||
}
|
||||
// if we're the most recent, don't do anything
|
||||
if ((i_am_pre ? best_pre : best_release) <= current_version)
|
||||
if ((i_am_pre ? best_pre : best_release) <= current_version) {
|
||||
if (by_user != 0)
|
||||
this->no_new_version();
|
||||
return;
|
||||
}
|
||||
|
||||
// BOOST_LOG_TRIVIAL(info) << format("Got %1% online version: `%2%`. Sending to GUI thread...",
|
||||
// SLIC3R_APP_NAME, i_am_pre ? best_pre.to_string(): best_release.to_string());
|
||||
|
|
|
@ -1077,6 +1077,13 @@ void Sidebar::update_all_preset_comboboxes()
|
|||
m_bed_type_list->SelectAndNotify((int)bed_type - 1);
|
||||
}
|
||||
m_bed_type_list->Enable();
|
||||
auto str_bed_type = wxGetApp().app_config->get_printer_setting(wxGetApp().preset_bundle->printers.get_selected_preset_name(), "curr_bed_type");
|
||||
if(!str_bed_type.empty()){
|
||||
int bed_type_value = atoi(str_bed_type.c_str());
|
||||
if(bed_type_value == 0)
|
||||
bed_type_value = 1;
|
||||
m_bed_type_list->SelectAndNotify(bed_type_value - 1);
|
||||
}
|
||||
} else {
|
||||
connection_btn->Show();
|
||||
ams_btn->Hide();
|
||||
|
|
|
@ -1941,6 +1941,8 @@ void TabPrint::build()
|
|||
optgroup->append_single_option_line("bridge_angle");
|
||||
optgroup->append_single_option_line("minimum_sparse_infill_area");
|
||||
optgroup->append_single_option_line("infill_combination");
|
||||
optgroup->append_single_option_line("detect_narrow_internal_solid_infill");
|
||||
optgroup->append_single_option_line("ensure_vertical_shell_thickness");
|
||||
|
||||
page = add_options_page(L("Speed"), "empty");
|
||||
optgroup = page->new_optgroup(L("Initial layer speed"), L"param_speed_first", 15);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue