[TD]Section dialog revisions & editor

This commit is contained in:
wandererfan
2019-09-25 21:05:10 -04:00
committed by WandererFan
parent 303c84e90f
commit 55778c7458
12 changed files with 1776 additions and 689 deletions

View File

@@ -393,27 +393,27 @@ void CmdTechDrawNewViewSection::activated(int iMsg)
return;
}
TechDraw::DrawViewPart* dvp = static_cast<TechDraw::DrawViewPart*>(*baseObj.begin());
std::string BaseName = dvp->getNameInDocument();
std::string PageName = page->getNameInDocument();
double baseScale = dvp->getScale();
// std::string BaseName = dvp->getNameInDocument();
// std::string PageName = page->getNameInDocument();
// double baseScale = dvp->getScale();
Gui::WaitCursor wc;
openCommand("Create view");
std::string FeatName = getUniqueObjectName("Section");
// Gui::WaitCursor wc;
// openCommand("Create view");
// std::string FeatName = getUniqueObjectName("Section");
doCommand(Doc,"App.activeDocument().addObject('TechDraw::DrawViewSection','%s')",FeatName.c_str());
// doCommand(Doc,"App.activeDocument().addObject('TechDraw::DrawViewSection','%s')",FeatName.c_str());
App::DocumentObject *docObj = getDocument()->getObject(FeatName.c_str());
TechDraw::DrawViewSection* dsv = dynamic_cast<TechDraw::DrawViewSection *>(docObj);
if (!dsv) {
throw Base::TypeError("CmdTechDrawNewViewSection DVS not found\n");
}
dsv->Source.setValues(dvp->Source.getValues());
doCommand(Doc,"App.activeDocument().%s.BaseView = App.activeDocument().%s",FeatName.c_str(),BaseName.c_str());
doCommand(Doc,"App.activeDocument().%s.ScaleType = App.activeDocument().%s.ScaleType",FeatName.c_str(),BaseName.c_str());
doCommand(Doc,"App.activeDocument().%s.addView(App.activeDocument().%s)",PageName.c_str(),FeatName.c_str());
doCommand(Doc,"App.activeDocument().%s.Scale = %0.6f",FeatName.c_str(),baseScale);
Gui::Control().showDialog(new TaskDlgSectionView(dvp,dsv));
// App::DocumentObject *docObj = getDocument()->getObject(FeatName.c_str());
// TechDraw::DrawViewSection* dsv = dynamic_cast<TechDraw::DrawViewSection *>(docObj);
// if (!dsv) {
// throw Base::TypeError("CmdTechDrawNewViewSection DVS not found\n");
// }
// dsv->Source.setValues(dvp->Source.getValues());
// doCommand(Doc,"App.activeDocument().%s.BaseView = App.activeDocument().%s",FeatName.c_str(),BaseName.c_str());
// doCommand(Doc,"App.activeDocument().%s.ScaleType = App.activeDocument().%s.ScaleType",FeatName.c_str(),BaseName.c_str());
// doCommand(Doc,"App.activeDocument().%s.addView(App.activeDocument().%s)",PageName.c_str(),FeatName.c_str());
// doCommand(Doc,"App.activeDocument().%s.Scale = %0.6f",FeatName.c_str(),baseScale);
Gui::Control().showDialog(new TaskDlgSectionView(dvp));
updateActive(); //ok here since dialog doesn't call doc.recompute()
commitCommand();