From 6ce7ac12483c067aa4c906ddea5be77657a1e2e0 Mon Sep 17 00:00:00 2001 From: Ronan Le Tiec Date: Sun, 25 Mar 2018 18:21:55 +0200 Subject: [PATCH] issue 826 sort group names in alphabetical case insensitive order --HG-- branch : feature --- src/app/valentina/mainwindow.cpp | 1 - src/libs/vtools/tools/drawTools/vdrawtool.h | 20 ++++++++++++-------- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/src/app/valentina/mainwindow.cpp b/src/app/valentina/mainwindow.cpp index fc80894f9..562a834af 100644 --- a/src/app/valentina/mainwindow.cpp +++ b/src/app/valentina/mainwindow.cpp @@ -4124,7 +4124,6 @@ void MainWindow::InitDocksContain() groupsWidget = new VWidgetGroups(doc, this); ui->dockWidgetGroups->setWidget(groupsWidget); connect(doc,&VAbstractPattern::UpdateGroups , groupsWidget, &VWidgetGroups::UpdateGroups); - connect(doc,&VAbstractPattern::UpdateGroups , groupsWidget, &VWidgetGroups::UpdateGroups); detailsWidget = new VWidgetDetails(pattern, doc, this); connect(doc, &VPattern::FullUpdateFromFile, detailsWidget, &VWidgetDetails::UpdateList); diff --git a/src/libs/vtools/tools/drawTools/vdrawtool.h b/src/libs/vtools/tools/drawTools/vdrawtool.h index 2a3cb65ab..be218194d 100644 --- a/src/libs/vtools/tools/drawTools/vdrawtool.h +++ b/src/libs/vtools/tools/drawTools/vdrawtool.h @@ -157,12 +157,14 @@ void VDrawTool::ContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 itemI { QMenu *menuAddToGroup = menu.addMenu(QIcon::fromTheme("list-add"), tr("Add to group")); - QMap::iterator i; - for(i = groupsNotContainingItem.begin();i != groupsNotContainingItem.end(); ++i) + QStringList list = QStringList(groupsNotContainingItem.values()); + list.sort(Qt::CaseInsensitive); + + for(int i=0; iaddAction(i.value()); + QAction *actionAddToGroup = menuAddToGroup->addAction(list[i]); actionsAddToGroup->addAction(actionAddToGroup); - actionAddToGroup->setData(i.key()); + actionAddToGroup->setData(groupsNotContainingItem.key(list[i])); } } @@ -173,12 +175,14 @@ void VDrawTool::ContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 itemI { QMenu *menuRemoveFromGroup = menu.addMenu(QIcon::fromTheme("list-remove"), tr("Remove from group")); - QMap::iterator i; - for(i = groupsContainingItem.begin();i != groupsContainingItem.end(); ++i) + QStringList list = QStringList(groupsContainingItem.values()); + list.sort(Qt::CaseInsensitive); + + for(int i=0; iaddAction(i.value()); + QAction *actionRemoveFromGroup = menuRemoveFromGroup->addAction(list[i]); actionsRemoveFromGroup->addAction(actionRemoveFromGroup); - actionRemoveFromGroup->setData(i.key()); + actionRemoveFromGroup->setData(groupsContainingItem.key(list[i])); } }