diff options
Diffstat (limited to 'gui')
-rw-r--r-- | gui/designwidget.cc | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/gui/designwidget.cc b/gui/designwidget.cc index 33a8ed93..93b53926 100644 --- a/gui/designwidget.cc +++ b/gui/designwidget.cc @@ -512,6 +512,19 @@ void DesignWidget::onItemSelectionChanged() if (treeWidget->selectedItems().size() == 0)
return;
+ if (treeWidget->selectedItems().size() > 1)
+ {
+ std::vector<DecalXY> decals;
+ for (auto clickItem : treeWidget->selectedItems()) {
+ IdString value = static_cast<IdStringTreeItem *>(clickItem)->getData();
+ ElementType type = static_cast<ElementTreeItem *>(clickItem)->getType();
+ std::vector<DecalXY> d = getDecals(type, value);
+ std::move(d.begin(), d.end(), std::back_inserter(decals));
+ }
+ Q_EMIT selected(decals);
+ return;
+ }
+
QTreeWidgetItem *clickItem = treeWidget->selectedItems().at(0);
if (!clickItem->parent())
|