ENH: optimize the sequent-print behavior

1. don't sort automatically
2. enable the dragging on the object list to adjust the arrange order
3. adjust the object list order after auto-arrange
4. turn off label by default
5. add the snapshot key for label
6. check the the validation of the order

Change-Id: I91461c475cda5335b01a9a608143aa1df31741ab
This commit is contained in:
lane.wei 2022-11-30 21:43:41 +08:00 committed by Lane.Wei
parent 819e1192b7
commit c3a6b207b5
8 changed files with 115 additions and 36 deletions

View file

@ -9823,7 +9823,7 @@ void Plater::on_config_change(const DynamicPrintConfig &config)
{
bool update_scheduled = false;
bool bed_shape_changed = false;
bool print_sequence_changed = false;
//bool print_sequence_changed = false;
t_config_option_keys diff_keys = p->config->diff(config);
for (auto opt_key : diff_keys) {
if (opt_key == "filament_colour") {
@ -9878,7 +9878,7 @@ void Plater::on_config_change(const DynamicPrintConfig &config)
}
else if (opt_key == "print_sequence") {
update_scheduled = true;
print_sequence_changed = true;
//print_sequence_changed = true;
}
else if (opt_key == "printer_model") {
p->reset_gcode_toolpaths();
@ -9904,8 +9904,8 @@ void Plater::on_config_change(const DynamicPrintConfig &config)
std::string info_text = _u8L("Print By Object: \nSuggest to use auto-arrange to avoid collisions when printing.");
notify_manager->bbl_show_seqprintinfo_notification(info_text);
//always show label when switch to sequence print
if (print_sequence_changed)
this->show_view3D_labels(true);
//if (print_sequence_changed)
// this->show_view3D_labels(true);
}
else
notify_manager->bbl_close_seqprintinfo_notification();