Fix of #5619 - Copying Item with Printable Property

This commit is contained in:
YuSanka 2021-01-18 15:19:02 +01:00
parent 9a2310ae98
commit 1efa129b67
3 changed files with 5 additions and 3 deletions

View file

@ -1377,7 +1377,7 @@ void GLCanvas3D::update_instance_printable_state_for_object(const size_t obj_idx
} }
} }
void GLCanvas3D::update_instance_printable_state_for_objects(std::vector<size_t>& object_idxs) void GLCanvas3D::update_instance_printable_state_for_objects(const std::vector<size_t>& object_idxs)
{ {
for (size_t obj_idx : object_idxs) for (size_t obj_idx : object_idxs)
update_instance_printable_state_for_object(obj_idx); update_instance_printable_state_for_object(obj_idx);

View file

@ -565,7 +565,7 @@ public:
void toggle_sla_auxiliaries_visibility(bool visible, const ModelObject* mo = nullptr, int instance_idx = -1); void toggle_sla_auxiliaries_visibility(bool visible, const ModelObject* mo = nullptr, int instance_idx = -1);
void toggle_model_objects_visibility(bool visible, const ModelObject* mo = nullptr, int instance_idx = -1); void toggle_model_objects_visibility(bool visible, const ModelObject* mo = nullptr, int instance_idx = -1);
void update_instance_printable_state_for_object(size_t obj_idx); void update_instance_printable_state_for_object(size_t obj_idx);
void update_instance_printable_state_for_objects(std::vector<size_t>& object_idxs); void update_instance_printable_state_for_objects(const std::vector<size_t>& object_idxs);
void set_config(const DynamicPrintConfig* config); void set_config(const DynamicPrintConfig* config);
void set_process(BackgroundSlicingProcess* process); void set_process(BackgroundSlicingProcess* process);

View file

@ -6111,8 +6111,10 @@ void Plater::changed_objects(const std::vector<size_t>& object_idxs)
// pulls the correct data, update the 3D scene. // pulls the correct data, update the 3D scene.
this->p->update_restart_background_process(true, false); this->p->update_restart_background_process(true, false);
} }
else else {
p->view3D->reload_scene(false); p->view3D->reload_scene(false);
p->view3D->get_canvas3d()->update_instance_printable_state_for_objects(object_idxs);
}
// update print // update print
this->p->schedule_background_process(); this->p->schedule_background_process();