TechDraw: InsertView switch the MDI to page when triggered.

This commit is contained in:
PaddleStroke
2024-04-02 13:58:56 +02:00
parent 246496eed1
commit b6d8bb094a
3 changed files with 15 additions and 1 deletions

View File

@@ -314,6 +314,14 @@ void CmdTechDrawView::activated(int iMsg)
}
std::string PageName = page->getNameInDocument();
// switch to the page if it's not current active window
auto* vpp = dynamic_cast<ViewProviderPage*>
(Gui::Application::Instance->getViewProvider(page));
if (vpp) {
vpp->switchToMdiViewPage();
}
//set projection direction from selected Face
//use first object with a face selected
std::vector<App::DocumentObject*> shapes, xShapes;

View File

@@ -275,7 +275,7 @@ bool ViewProviderPage::doubleClicked(void)
show();
if (m_mdiView) {
Gui::getMainWindow()->setActiveWindow(m_mdiView);
switchToMdiViewPage();
}
return true;
}
@@ -339,6 +339,11 @@ void ViewProviderPage::createMDIViewPage()
m_mdiView->setWindowTitle(tabTitle + QString::fromLatin1("[*]"));
m_mdiView->setWindowIcon(Gui::BitmapFactory().pixmap("TechDraw_TreePage"));
Gui::getMainWindow()->addWindow(m_mdiView);
switchToMdiViewPage();
}
void ViewProviderPage::switchToMdiViewPage()
{
Gui::getMainWindow()->setActiveWindow(m_mdiView);
m_graphicsView->setFocus();
}

View File

@@ -107,6 +107,7 @@ public:
MDIViewPage* getMDIViewPage() const;
bool showMDIViewPage();
void removeMDIView();
void switchToMdiViewPage();
Gui::MDIView* getMDIView() const override;