From 44b1f468583ea260406111b40dd13475decc2601 Mon Sep 17 00:00:00 2001 From: wandererfan Date: Wed, 6 Nov 2019 12:54:02 -0500 Subject: [PATCH] [TD]Allow skip restore cosmetics - temporary work around due to format changes during v019 devl --- src/Mod/TechDraw/App/Cosmetic.cpp | 28 +++++++++++++++++++++++++--- src/Mod/TechDraw/App/Cosmetic.h | 2 ++ 2 files changed, 27 insertions(+), 3 deletions(-) diff --git a/src/Mod/TechDraw/App/Cosmetic.cpp b/src/Mod/TechDraw/App/Cosmetic.cpp index 309b594a5b..8d4087bad7 100644 --- a/src/Mod/TechDraw/App/Cosmetic.cpp +++ b/src/Mod/TechDraw/App/Cosmetic.cpp @@ -150,8 +150,7 @@ CosmeticVertex::CosmeticVertex() : TechDraw::Vertex() size = 3.0; style = 1; visible = true; - //TODO: sort out 2x visible variables - hlrVisible = true; //yuck + hlrVisible = true; cosmetic = true; createNewTag(); @@ -165,7 +164,7 @@ CosmeticVertex::CosmeticVertex(const TechDraw::CosmeticVertex* cv) : TechDraw::V size = cv->size; style = cv->style; visible = cv->visible; - hlrVisible = true; //yuck + hlrVisible = true; cosmetic = true; createNewTag(); @@ -241,6 +240,9 @@ void CosmeticVertex::Save(Base::Writer &writer) const void CosmeticVertex::Restore(Base::XMLReader &reader) { + if (!CosmeticVertex::restoreCosmetic()) { + return; + } TechDraw::Vertex::Restore(reader); reader.readElement("PermaPoint"); permaPoint.x = reader.getAttributeAsFloat("X"); @@ -461,6 +463,10 @@ void CosmeticEdge::Save(Base::Writer &writer) const void CosmeticEdge::Restore(Base::XMLReader &reader) { + if (!CosmeticVertex::restoreCosmetic()) { + return; + } +// Base::Console().Message("CE::Restore - reading elements\n"); reader.readElement("Style"); m_format.m_style = reader.getAttributeAsInteger("value"); reader.readElement("Weight"); @@ -1213,6 +1219,10 @@ void CenterLine::Save(Base::Writer &writer) const void CenterLine::Restore(Base::XMLReader &reader) { + if (!CosmeticVertex::restoreCosmetic()) { + return; + } +// Base::Console().Message("CL::Restore - reading elements\n"); // read my Element reader.readElement("Start"); // get the value of my Attribute @@ -1498,6 +1508,9 @@ void GeomFormat::Save(Base::Writer &writer) const void GeomFormat::Restore(Base::XMLReader &reader) { + if (!CosmeticVertex::restoreCosmetic()) { + return; + } // read my Element reader.readElement("GeomIndex"); // get the value of my Attribute @@ -1566,3 +1579,12 @@ PyObject* GeomFormat::getPyObject(void) return new GeomFormatPy(new GeomFormat(this->copy())); } +bool CosmeticVertex::restoreCosmetic(void) +{ + Base::Reference hGrp = App::GetApplication().GetUserParameter() + .GetGroup("BaseApp")->GetGroup("Preferences")->GetGroup("Mod/TechDraw/General"); + bool result = hGrp->GetBool("restoreCosmetic", 1l); + return result; +} + + diff --git a/src/Mod/TechDraw/App/Cosmetic.h b/src/Mod/TechDraw/App/Cosmetic.h index e2bc89c823..691145f21c 100644 --- a/src/Mod/TechDraw/App/Cosmetic.h +++ b/src/Mod/TechDraw/App/Cosmetic.h @@ -78,6 +78,8 @@ public: void dump(char* title); Base::Vector3d scaled(double factor); + static bool restoreCosmetic(void); + // Persistence implementer --------------------- virtual unsigned int getMemSize(void) const; virtual void Save(Base::Writer &/*writer*/) const;