From 377ce29b7ffa7b03d57113c32dacd0be79f55651 Mon Sep 17 00:00:00 2001 From: Damiano Lombardi Date: Thu, 27 Jul 2023 10:17:57 +0200 Subject: [PATCH] TechDraw: Check for valid selection before asking for destination page --- src/Mod/TechDraw/Gui/Command.cpp | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/src/Mod/TechDraw/Gui/Command.cpp b/src/Mod/TechDraw/Gui/Command.cpp index 68594b892a..6466e5c3be 100644 --- a/src/Mod/TechDraw/Gui/Command.cpp +++ b/src/Mod/TechDraw/Gui/Command.cpp @@ -815,13 +815,6 @@ CmdTechDrawProjectionGroup::CmdTechDrawProjectionGroup() : Command("TechDraw_Pro void CmdTechDrawProjectionGroup::activated(int iMsg) { Q_UNUSED(iMsg); - TechDraw::DrawPage* page = DrawGuiUtil::findPage(this); - if (!page) { - return; - } - std::string PageName = page->getNameInDocument(); - // auto inlist = page->getInListEx(true); - // inlist.insert(page); //set projection direction from selected Face //use first object with a face selected @@ -886,6 +879,12 @@ void CmdTechDrawProjectionGroup::activated(int iMsg) return; } + TechDraw::DrawPage* page = DrawGuiUtil::findPage(this); + if (!page) { + return; + } + std::string PageName = page->getNameInDocument(); + Base::Vector3d projDir; Gui::WaitCursor wc; @@ -1365,11 +1364,6 @@ CmdTechDrawDraftView::CmdTechDrawDraftView() : Command("TechDraw_DraftView") void CmdTechDrawDraftView::activated(int iMsg) { Q_UNUSED(iMsg); - TechDraw::DrawPage* page = DrawGuiUtil::findPage(this); - if (!page) { - return; - } - std::string PageName = page->getNameInDocument(); std::vector objects = getSelection().getObjectsOfType(App::DocumentObject::getClassTypeId()); @@ -1380,6 +1374,12 @@ void CmdTechDrawDraftView::activated(int iMsg) return; } + TechDraw::DrawPage* page = DrawGuiUtil::findPage(this); + if (!page) { + return; + } + std::string PageName = page->getNameInDocument(); + std::pair dirs = DrawGuiUtil::get3DDirAndRot(); for (std::vector::iterator it = objects.begin(); it != objects.end(); ++it) {