Fix crash when pressing Ctrl+A while a gizmo is open (#8416):
There were two separate issues. Missing update when select_all was invoked in the scene and missing check when SLA supports/hollow gizmo were asked to select all points/holes.
This commit is contained in:
parent
388126b26e
commit
a96eaf5426
@ -1576,6 +1576,10 @@ void GLCanvas3D::select_all()
|
||||
{
|
||||
m_selection.add_all();
|
||||
m_dirty = true;
|
||||
wxGetApp().obj_manipul()->set_dirty();
|
||||
m_gizmos.reset_all_states();
|
||||
m_gizmos.update_data();
|
||||
post_event(SimpleEvent(EVT_GLCANVAS_OBJECT_SELECT));
|
||||
}
|
||||
|
||||
void GLCanvas3D::deselect_all()
|
||||
|
@ -847,7 +847,7 @@ void GLGizmoHollow::select_point(int i)
|
||||
m_selected.assign(m_selected.size(), i == AllPoints);
|
||||
m_selection_empty = (i == NoPoints);
|
||||
|
||||
if (i == AllPoints) {
|
||||
if (i == AllPoints && ! drain_holes.empty()) {
|
||||
m_new_hole_radius = drain_holes[0].radius;
|
||||
m_new_hole_height = drain_holes[0].height;
|
||||
}
|
||||
|
@ -998,7 +998,7 @@ void GLGizmoSlaSupports::select_point(int i)
|
||||
point_and_selection.selected = ( i == AllPoints );
|
||||
m_selection_empty = (i == NoPoints);
|
||||
|
||||
if (i == AllPoints)
|
||||
if (i == AllPoints && ! m_editing_cache.empty())
|
||||
m_new_point_head_diameter = m_editing_cache[0].support_point.head_front_radius * 2.f;
|
||||
}
|
||||
else {
|
||||
|
Loading…
Reference in New Issue
Block a user