issue 826 sort group names in alphabetical case insensitive order

--HG--
branch : feature
This commit is contained in:
Ronan Le Tiec 2018-03-25 18:21:55 +02:00
parent e3f48b797f
commit 6ce7ac1248
2 changed files with 12 additions and 9 deletions

View file

@ -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);

View file

@ -157,12 +157,14 @@ void VDrawTool::ContextMenu(QGraphicsSceneContextMenuEvent *event, quint32 itemI
{
QMenu *menuAddToGroup = menu.addMenu(QIcon::fromTheme("list-add"), tr("Add to group"));
QMap<quint32,QString>::iterator i;
for(i = groupsNotContainingItem.begin();i != groupsNotContainingItem.end(); ++i)
QStringList list = QStringList(groupsNotContainingItem.values());
list.sort(Qt::CaseInsensitive);
for(int i=0; i<list.count(); ++i)
{
QAction *actionAddToGroup = menuAddToGroup->addAction(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<quint32,QString>::iterator i;
for(i = groupsContainingItem.begin();i != groupsContainingItem.end(); ++i)
QStringList list = QStringList(groupsContainingItem.values());
list.sort(Qt::CaseInsensitive);
for(int i=0; i<list.count(); ++i)
{
QAction *actionRemoveFromGroup = menuRemoveFromGroup->addAction(i.value());
QAction *actionRemoveFromGroup = menuRemoveFromGroup->addAction(list[i]);
actionsRemoveFromGroup->addAction(actionRemoveFromGroup);
actionRemoveFromGroup->setData(i.key());
actionRemoveFromGroup->setData(groupsContainingItem.key(list[i]));
}
}