From 8a5c4a1a37d9eda84f99f622b56bc64ffd5cc2fb Mon Sep 17 00:00:00 2001 From: Roman Telezhynskyi Date: Wed, 23 Nov 2016 18:50:52 +0200 Subject: [PATCH] Check if a path is valid. Should contains at least one object. --HG-- branch : feature --- src/app/valentina/mainwindow.cpp | 3 ++- .../vtools/dialogs/tools/dialogpiecepath.cpp | 23 +++++++++++-------- 2 files changed, 15 insertions(+), 11 deletions(-) diff --git a/src/app/valentina/mainwindow.cpp b/src/app/valentina/mainwindow.cpp index ec5234dbf..16c4dcb00 100644 --- a/src/app/valentina/mainwindow.cpp +++ b/src/app/valentina/mainwindow.cpp @@ -964,7 +964,8 @@ void MainWindow::ToolDetail(bool checked) void MainWindow::ToolPiecePath(bool checked) { ToolSelectAllDrawObjects(); - SetToolButton(checked, Tool::PiecePath, "://cursor/path_cursor.png", tr("Select path objects."), + SetToolButton(checked, Tool::PiecePath, "://cursor/path_cursor.png", + tr("Select path objects, Shift - reverse direction curve"), &MainWindow::ClosedDialogPiecePath); } diff --git a/src/libs/vtools/dialogs/tools/dialogpiecepath.cpp b/src/libs/vtools/dialogs/tools/dialogpiecepath.cpp index d98a5ac1e..89fd992b8 100644 --- a/src/libs/vtools/dialogs/tools/dialogpiecepath.cpp +++ b/src/libs/vtools/dialogs/tools/dialogpiecepath.cpp @@ -140,18 +140,21 @@ void DialogPiecePath::ShowDialog(bool click) { if (click == false) { - emit ToolTip(""); - prepare = true; - - if (not m_showMode) + if (CreatePath().CountNodes() > 0) { - auto visPath = qobject_cast(vis); - SCASSERT(visPath != nullptr); - visPath->SetMode(Mode::Show); - visPath->RefreshGeometry(); + emit ToolTip(""); + prepare = true; + + if (not m_showMode) + { + auto visPath = qobject_cast(vis); + SCASSERT(visPath != nullptr); + visPath->SetMode(Mode::Show); + visPath->RefreshGeometry(); + } + setModal(true); + show(); } - setModal(true); - show(); } }