From 88dbb2db6c6a48a449bb13b5425431f28eee8e0c Mon Sep 17 00:00:00 2001 From: YuSanka Date: Thu, 10 Aug 2023 10:43:45 +0200 Subject: [PATCH] Fix for SPE-1835 : Scaling one part of an object after cutting with connectors, when open Scale gizmo with "S"-shortcut. --- src/slic3r/GUI/GLCanvas3D.cpp | 5 ----- src/slic3r/GUI/Gizmos/GLGizmoScale.cpp | 6 ++++++ src/slic3r/GUI/Gizmos/GLGizmoScale.hpp | 2 ++ 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/slic3r/GUI/GLCanvas3D.cpp b/src/slic3r/GUI/GLCanvas3D.cpp index ad42dd2738..4ae60fb1c0 100644 --- a/src/slic3r/GUI/GLCanvas3D.cpp +++ b/src/slic3r/GUI/GLCanvas3D.cpp @@ -3592,11 +3592,6 @@ void GLCanvas3D::on_mouse(wxMouseEvent& evt) update_sequential_clearance(true); } } - else if (evt.LeftUp() && - m_gizmos.get_current_type() == GLGizmosManager::EType::Scale && - m_gizmos.get_current()->get_state() == GLGizmoBase::EState::On) { - wxGetApp().obj_list()->selection_changed(); - } return; } diff --git a/src/slic3r/GUI/Gizmos/GLGizmoScale.cpp b/src/slic3r/GUI/Gizmos/GLGizmoScale.cpp index 1a7251ddf7..6cc852c6a6 100644 --- a/src/slic3r/GUI/Gizmos/GLGizmoScale.cpp +++ b/src/slic3r/GUI/Gizmos/GLGizmoScale.cpp @@ -99,6 +99,12 @@ void GLGizmoScale3D::enable_ununiversal_scale(bool enable) m_grabbers[i].enabled = enable; } +void GLGizmoScale3D::on_set_state() +{ + if (m_state == On) + wxGetApp().obj_list()->selection_changed(); +} + void GLGizmoScale3D::data_changed(bool is_serializing) { set_scale(Vec3d::Ones()); } diff --git a/src/slic3r/GUI/Gizmos/GLGizmoScale.hpp b/src/slic3r/GUI/Gizmos/GLGizmoScale.hpp index 6a7b4a331e..6e304061ab 100644 --- a/src/slic3r/GUI/Gizmos/GLGizmoScale.hpp +++ b/src/slic3r/GUI/Gizmos/GLGizmoScale.hpp @@ -74,6 +74,8 @@ protected: virtual void on_register_raycasters_for_picking() override; virtual void on_unregister_raycasters_for_picking() override; + void on_set_state() override; + private: void render_grabbers_connection(unsigned int id_1, unsigned int id_2, const ColorRGBA& color);