From bf4f9a3c61eb2a8d6a80d550c687bb998ec6d3c9 Mon Sep 17 00:00:00 2001 From: Roman Telezhynskyi Date: Sat, 3 Dec 2016 19:51:25 +0200 Subject: [PATCH] Check if option Reverse is available. --HG-- branch : feature --- src/libs/vtools/dialogs/tools/dialogpiecepath.cpp | 5 +++-- src/libs/vtools/dialogs/tools/dialogseamallowance.cpp | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/libs/vtools/dialogs/tools/dialogpiecepath.cpp b/src/libs/vtools/dialogs/tools/dialogpiecepath.cpp index a21fc3587..5d039e29a 100644 --- a/src/libs/vtools/dialogs/tools/dialogpiecepath.cpp +++ b/src/libs/vtools/dialogs/tools/dialogpiecepath.cpp @@ -246,7 +246,6 @@ void DialogPiecePath::ShowContextMenu(const QPoint &pos) } QMenu *menu = new QMenu(this); - QAction *actionDelete = menu->addAction(QIcon::fromTheme("edit-delete"), tr("Delete")); QListWidgetItem *rowItem = ui->listWidget->item(row); SCASSERT(rowItem != nullptr); @@ -260,13 +259,15 @@ void DialogPiecePath::ShowContextMenu(const QPoint &pos) actionReverse->setChecked(rowNode.GetReverse()); } + QAction *actionDelete = menu->addAction(QIcon::fromTheme("edit-delete"), tr("Delete")); + QAction *selectedAction = menu->exec(ui->listWidget->viewport()->mapToGlobal(pos)); if (selectedAction == actionDelete) { delete ui->listWidget->item(row); ValidObjects(PathIsValid()); } - else if (selectedAction == actionReverse) + else if (rowNode.GetTypeTool() != Tool::NodePoint && selectedAction == actionReverse) { rowNode.SetReverse(not rowNode.GetReverse()); rowItem->setData(Qt::UserRole, QVariant::fromValue(rowNode)); diff --git a/src/libs/vtools/dialogs/tools/dialogseamallowance.cpp b/src/libs/vtools/dialogs/tools/dialogseamallowance.cpp index 9407993e9..8dea602d6 100644 --- a/src/libs/vtools/dialogs/tools/dialogseamallowance.cpp +++ b/src/libs/vtools/dialogs/tools/dialogseamallowance.cpp @@ -334,7 +334,7 @@ void DialogSeamAllowance::ShowMainPathContextMenu(const QPoint &pos) delete ui->listWidgetMainPath->item(row); ValidObjects(MainPathIsValid()); } - else if (selectedAction == actionReverse) + else if (rowNode.GetTypeTool() != Tool::NodePoint && selectedAction == actionReverse) { rowNode.SetReverse(not rowNode.GetReverse()); rowItem->setData(Qt::UserRole, QVariant::fromValue(rowNode));