Reset buttons: synchronization of instances/volumes

This commit is contained in:
Lukas Matena 2019-06-05 15:27:20 +02:00
parent 980c6673d4
commit 7b07a8da83
2 changed files with 9 additions and 0 deletions

View file

@ -216,6 +216,9 @@ ObjectManipulation::ObjectManipulation(wxWindow* parent) :
else else
return; return;
selection.synchronize_unselected_instances(Selection::SYNC_ROTATION_GENERAL);
selection.synchronize_unselected_volumes();
canvas->do_mirror(); canvas->do_mirror();
canvas->set_as_dirty(); canvas->set_as_dirty();
UpdateAndShow(true); UpdateAndShow(true);
@ -294,6 +297,8 @@ ObjectManipulation::ObjectManipulation(wxWindow* parent) :
else else
return; return;
selection.synchronize_unselected_instances(Selection::SYNC_ROTATION_GENERAL);
selection.synchronize_unselected_volumes();
canvas->do_rotate(); canvas->do_rotate();
UpdateAndShow(true); UpdateAndShow(true);

View file

@ -333,6 +333,8 @@ private:
void render_sidebar_rotation_hint(Axis axis) const; void render_sidebar_rotation_hint(Axis axis) const;
void render_sidebar_scale_hint(Axis axis) const; void render_sidebar_scale_hint(Axis axis) const;
void render_sidebar_size_hint(Axis axis, double length) const; void render_sidebar_size_hint(Axis axis, double length) const;
public:
enum SyncRotationType { enum SyncRotationType {
// Do not synchronize rotation. Either not rotating at all, or rotating by world Z axis. // Do not synchronize rotation. Either not rotating at all, or rotating by world Z axis.
SYNC_ROTATION_NONE = 0, SYNC_ROTATION_NONE = 0,
@ -343,6 +345,8 @@ private:
}; };
void synchronize_unselected_instances(SyncRotationType sync_rotation_type); void synchronize_unselected_instances(SyncRotationType sync_rotation_type);
void synchronize_unselected_volumes(); void synchronize_unselected_volumes();
private:
void ensure_on_bed(); void ensure_on_bed();
bool is_from_fully_selected_instance(unsigned int volume_idx) const; bool is_from_fully_selected_instance(unsigned int volume_idx) const;