From d769fba4b8c4e11bbd74e4dcd469c1453ef0cfcc Mon Sep 17 00:00:00 2001 From: Maxime Gimeno Date: Fri, 11 Dec 2015 13:11:36 +0100 Subject: [PATCH 1/2] Polylines in point_set_selection fix --- Polyhedron/demo/Polyhedron/Scene.cpp | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/Polyhedron/demo/Polyhedron/Scene.cpp b/Polyhedron/demo/Polyhedron/Scene.cpp index bc971d164cb..d028be88f98 100644 --- a/Polyhedron/demo/Polyhedron/Scene.cpp +++ b/Polyhedron/demo/Polyhedron/Scene.cpp @@ -114,24 +114,26 @@ Scene::erase(int index) return -1; CGAL::Three::Scene_item* item = m_entries[index]; + CGAL::Three::Scene_group_item* group = + qobject_cast(item); + if(group) + { + m_group_entries.removeAll(group); + } Q_FOREACH(CGAL::Three::Scene_group_item* group, m_group_entries) { if(group->getChildren().contains(item)) group->removeChild(item); - if (group->getChildren().isEmpty()) - { - m_group_entries.removeOne(group); - m_entries.removeOne(group); - } } Q_EMIT itemAboutToBeDestroyed(item); delete item; m_entries.removeAt(index); selected_item = -1; - + group_added(); QStandardItemModel::beginResetModel(); Q_EMIT updated(); QStandardItemModel::endResetModel(); + Q_EMIT restoreCollapsedState(); if(--index >= 0) return index; if(!m_entries.isEmpty()) From dc24228f64027e422f6cdf33043d65126119116c Mon Sep 17 00:00:00 2001 From: Maxime Gimeno Date: Fri, 11 Dec 2015 13:20:55 +0100 Subject: [PATCH 2/2] Fix for selection_tool - Restored the emit newItem --- Polyhedron/demo/Polyhedron/Scene.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Polyhedron/demo/Polyhedron/Scene.cpp b/Polyhedron/demo/Polyhedron/Scene.cpp index d028be88f98..d570ade1c71 100644 --- a/Polyhedron/demo/Polyhedron/Scene.cpp +++ b/Polyhedron/demo/Polyhedron/Scene.cpp @@ -78,7 +78,7 @@ Scene::addItem(CGAL::Three::Scene_item* item) } Q_EMIT updated(); Item_id id = m_entries.size() - 1; - //Q_EMIT newItem(id); + Q_EMIT newItem(id); return id; }