From 579540dcbdb0fb59c57ebace0a493aab2c12e65c Mon Sep 17 00:00:00 2001 From: Matthias Kuehlewein Date: Mon, 16 Mar 2026 14:35:09 +0100 Subject: [PATCH] SymbolRenderWidget: Use more intuitive icons The popup menu in the symbol pane used the 'tool-edit' icon for selecting and deselecting objects for selected symbols. The menu item for editing a symbol had no icon. Create new icons that are better suited for displaying a selection. Add the 'tool-edit' icon to the 'Edit' menu item. --- images/deselect-objects.png | Bin 0 -> 441 bytes images/select-additional-objects.png | Bin 0 -> 705 bytes images/select-all-objects.png | Bin 0 -> 190 bytes resources.qrc | 3 +++ src/gui/widgets/symbol_render_widget.cpp | 10 +++++----- 5 files changed, 8 insertions(+), 5 deletions(-) create mode 100644 images/deselect-objects.png create mode 100644 images/select-additional-objects.png create mode 100644 images/select-all-objects.png diff --git a/images/deselect-objects.png b/images/deselect-objects.png new file mode 100644 index 0000000000000000000000000000000000000000..766861e05545d82ee86ab0e5a6d2b10cae120e8e GIT binary patch literal 441 zcmV;q0Y?6bP)B7otijVgHDR=||$`cz31s9<2kM+&_L!RKWG&-qdHK)eOdF)Rx<7(U6Z7qNB5` zLJ^e&?jT1lWCj7`mio;=UXxV2y*T}w5Xp@1*Ox9GLLdiAkf+}=OOxTyPLM21j?7ry z-We-I_1vx=vgXGdU(ZjyadilxQ$$9PoRIA^cc^vNj6BVF3<%I7Qn1v4Aqtd# j3;yTJI1W9?D~G@j`l!bg3=BPL00000NkvXXu0mjf&m_T# literal 0 HcmV?d00001 diff --git a/images/select-additional-objects.png b/images/select-additional-objects.png new file mode 100644 index 0000000000000000000000000000000000000000..fb3b0b064fec80881ddaf5b38e0b050c180e2016 GIT binary patch literal 705 zcmV;y0zUnTP)#Q^!*);F$;^Ibvzvxqny#L$SM{o@ ztECAN`9tbXvLQIJGZAJyN+Hs$a6^h^Ip;<_LjaI~0-3V$%z6NIPEWh{ZfORV7skN< zp)2{gRvPt%xFx%Jvh{n-LSuL|*#rPeL5d8II!;zy+`jKj^}|OH%F%8`~DXI zz{UB?BP;fXmuAJiH+&+6$Y7HX!r>J6erZzzaJ_MLF4poQ$r52b_nJ1u@S4%=HwtS`_4c3(@MGSJ|yf$~g&$fH086<6BQ* zu&U2@QlU=v?8B4sC{QYX9DGZQl9C_{iZ0Brso37zL>C64iw+e^1!3q?QLEMpYu&&? z^r!V3U-v(!0T%&K=_zJ%7z|x@z=9O5vuAW)3Rc&j7s~E0KRC3U#G8+=$0|gH0E#Y_l}3G`+=+h~nJ55p zaWLpI!rlDsu`8ic;S~0?<9)OQ^Mc1FL z0!RRq0mQ=q8q^WR4nXYJt(|tor(f;N1(+GgG}03Q>ZWDZW8DSJuA>Mvv*g{UwZ2sK z>$byvX$CsNrZi~D#Cai{l0zTew7_cfz_Tq`*pv?Hh#0sML!6z=bxd+tYL4|TnEBJ} nRJ{!uz6B@wGIsyVQ|Wimages/cursor-zoom.png images/cut.png images/delete.png + images/deselect-objects.png images/draw-circle.png images/draw-freehand.png images/draw-path.png @@ -72,6 +73,8 @@ images/rotate-map.png images/save.png images/scribble-fill-shapes.png + images/select-additional-objects.png + images/select-all-objects.png images/settings.png images/symbols.png images/symbol_point_explanation.png diff --git a/src/gui/widgets/symbol_render_widget.cpp b/src/gui/widgets/symbol_render_widget.cpp index c678700dd..aafbfa904 100644 --- a/src/gui/widgets/symbol_render_widget.cpp +++ b/src/gui/widgets/symbol_render_widget.cpp @@ -1,6 +1,6 @@ /* * Copyright 2012, 2013 Thomas Schöps - * Copyright 2014-2020, 2025 Kai Pastor + * Copyright 2014-2020, 2025, 2026 Kai Pastor * * This file is part of OpenOrienteering. * @@ -115,7 +115,7 @@ SymbolRenderWidget::SymbolRenderWidget(Map* map, bool mobile_mode, QWidget* pare /*QAction* new_combined_action =*/ new_menu->addAction(tr("Combined"), this, SLOT(newCombinedSymbol())); context_menu->addMenu(new_menu); - edit_action = context_menu->addAction(tr("Edit"), this, SLOT(editSymbol())); + edit_action = context_menu->addAction(QIcon(QStringLiteral(":/images/tool-edit.png")), tr("Edit"), this, SLOT(editSymbol())); duplicate_action = context_menu->addAction(QIcon(QStringLiteral(":/images/tool-duplicate.png")), tr("Duplicate"), this, SLOT(duplicateSymbol())); delete_action = context_menu->addAction(QIcon(QStringLiteral(":/images/minus.png")), tr("Delete"), this, SLOT(deleteSymbols())); scale_action = context_menu->addAction(QIcon(QStringLiteral(":/images/tool-scale.png")), tr("Scale..."), this, SLOT(scaleSymbol())); @@ -126,9 +126,9 @@ SymbolRenderWidget::SymbolRenderWidget(Map* map, bool mobile_mode, QWidget* pare switch_symbol_action = context_menu->addAction(QIcon(QStringLiteral(":/images/tool-switch-symbol.png")), tr("Switch symbol of selected objects"), this, SIGNAL(switchSymbolClicked())); fill_border_action = context_menu->addAction(QIcon(QStringLiteral(":/images/tool-fill-border.png")), tr("Fill / Create border for selected objects"), this, SIGNAL(fillBorderClicked())); // text will be filled in by updateContextMenuState() - select_objects_action = context_menu->addAction(QIcon(QStringLiteral(":/images/tool-edit.png")), {}, this, SLOT(selectObjectsExclusively())); - select_objects_additionally_action = context_menu->addAction(QIcon(QStringLiteral(":/images/tool-edit.png")), {}, this, SLOT(selectObjectsAdditionally())); - deselect_objects_action = context_menu->addAction(QIcon(QStringLiteral(":/images/tool-edit.png")), {}, this, SLOT(deselectObjects())); + select_objects_action = context_menu->addAction(QIcon(QStringLiteral(":/images/select-all-objects.png")), {}, this, SLOT(selectObjectsExclusively())); + select_objects_additionally_action = context_menu->addAction(QIcon(QStringLiteral(":/images/select-additional-objects.png")), {}, this, SLOT(selectObjectsAdditionally())); + deselect_objects_action = context_menu->addAction(QIcon(QStringLiteral(":/images/deselect-objects.png")), {}, this, SLOT(deselectObjects())); context_menu->addSeparator(); hide_action = context_menu->addAction({}, this, SLOT(setSelectedSymbolVisibility(bool))); hide_action->setCheckable(true);