[TD]fix vertex display in manual frame mode
This commit is contained in:
committed by
Max Wilfinger
parent
98c042a587
commit
396d8c503d
@@ -120,12 +120,9 @@ void CmdTechDrawToggleFrame::activated(int iMsg)
|
||||
|
||||
bool CmdTechDrawToggleFrame::isActive()
|
||||
{
|
||||
if (PreferencesGui::getViewFrameMode() != ViewFrameMode::Manual) {
|
||||
return false;
|
||||
}
|
||||
|
||||
auto mvp = dynamic_cast<MDIViewPage *>(Gui::getMainWindow()->activeWindow());
|
||||
return mvp != nullptr;
|
||||
bool havePage = DrawGuiUtil::needPage(this);
|
||||
bool haveView = DrawGuiUtil::needView(this);
|
||||
return (havePage && haveView && PreferencesGui::getViewFrameMode() == ViewFrameMode::Manual);
|
||||
}
|
||||
|
||||
//===========================================================================
|
||||
|
||||
@@ -447,7 +447,9 @@ void MDIViewPage::contextMenuEvent(QContextMenuEvent* event)
|
||||
menu.addAction(m_exportDXFAction);
|
||||
menu.addAction(m_exportPDFAction);
|
||||
menu.addAction(m_printAllAction);
|
||||
if (PreferencesGui::getViewFrameMode() != ViewFrameMode::Manual) {
|
||||
if (PreferencesGui::getViewFrameMode() == ViewFrameMode::Manual) {
|
||||
m_toggleFrameAction->setEnabled(true);
|
||||
} else {
|
||||
m_toggleFrameAction->setEnabled(false);
|
||||
}
|
||||
menu.exec(event->globalPos());
|
||||
|
||||
@@ -470,6 +470,7 @@ void QGIViewPart::drawAllVertexes()
|
||||
// dvp and vp already validated
|
||||
auto dvp(static_cast<TechDraw::DrawViewPart*>(getViewObject()));
|
||||
auto vp(static_cast<ViewProviderViewPart*>(getViewProvider(getViewObject())));
|
||||
ViewProviderPage* vpPage = vp->getViewProviderPage();
|
||||
QColor vertexColor = PreferencesGui::getAccessibleQColor(PreferencesGui::vertexQColor());
|
||||
|
||||
const std::vector<TechDraw::VertexPtr>& verts = dvp->getVertexGeometry();
|
||||
@@ -485,7 +486,8 @@ void QGIViewPart::drawAllVertexes()
|
||||
cmItem->setZValue(ZVALUE::VERTEX);
|
||||
bool showMark =
|
||||
( (!isExporting() && vp->ArcCenterMarks.getValue()) ||
|
||||
(isExporting() && Preferences::printCenterMarks()) );
|
||||
(isExporting() && Preferences::printCenterMarks()) ||
|
||||
(vpPage->getFrameState() && PreferencesGui::getViewFrameMode() == ViewFrameMode::Manual));
|
||||
cmItem->setVisible(showMark);
|
||||
} else {
|
||||
//regular Vertex
|
||||
@@ -498,7 +500,8 @@ void QGIViewPart::drawAllVertexes()
|
||||
item->setRadius(getVertexSize());
|
||||
item->setPrettyNormal();
|
||||
item->setZValue(ZVALUE::VERTEX);
|
||||
item->setVisible(m_isHovered || isSelected());
|
||||
item->setVisible(m_isHovered || isSelected() ||
|
||||
(vpPage->getFrameState() && PreferencesGui::getViewFrameMode() == ViewFrameMode::Manual));
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1353,6 +1356,13 @@ void QGIViewPart::hoverLeaveEvent(QGraphicsSceneHoverEvent *event)
|
||||
return;
|
||||
}
|
||||
|
||||
auto vp(static_cast<ViewProviderViewPart*>(getViewProvider(getViewObject())));
|
||||
ViewProviderPage* vpPage = vp->getViewProviderPage();
|
||||
if (vpPage->getFrameState() &&
|
||||
PreferencesGui::getViewFrameMode() == ViewFrameMode::Manual) {
|
||||
return;
|
||||
}
|
||||
|
||||
bool hideCenters = hideCenterMarks();
|
||||
|
||||
for (auto& child : childItems()) {
|
||||
|
||||
Reference in New Issue
Block a user