From 3588479ff594c07b4a53b1fb7f2fdb50b13bd528 Mon Sep 17 00:00:00 2001 From: WandererFan Date: Wed, 27 Jul 2016 20:27:20 -0400 Subject: [PATCH] Add LineWidth property for Dimension lines --- src/Mod/TechDraw/App/DrawViewDimension.cpp | 4 +++- src/Mod/TechDraw/App/DrawViewDimension.h | 1 + src/Mod/TechDraw/Gui/QGIViewDimension.cpp | 11 ++++++----- 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/src/Mod/TechDraw/App/DrawViewDimension.cpp b/src/Mod/TechDraw/App/DrawViewDimension.cpp index 9f79cd064..869f8e62f 100644 --- a/src/Mod/TechDraw/App/DrawViewDimension.cpp +++ b/src/Mod/TechDraw/App/DrawViewDimension.cpp @@ -94,6 +94,7 @@ DrawViewDimension::DrawViewDimension(void) ADD_PROPERTY_TYPE(Fontsize,(4) ,"Format",(App::PropertyType)(App::Prop_None),"Dimension text size in mm"); ADD_PROPERTY_TYPE(CentreLines,(0) ,"Format",(App::PropertyType)(App::Prop_None),"Arc Dimension Center Mark"); ADD_PROPERTY_TYPE(FormatSpec,("%value%") ,"Format",(App::PropertyType)(App::Prop_None),"Dimension Format"); + ADD_PROPERTY_TYPE(LineWidth,(0.5) ,"Format",(App::PropertyType)(App::Prop_None),"Dimension line weight"); Type.setEnums(TypeEnums); //dimension type: length, radius etc ADD_PROPERTY(Type,((long)0)); @@ -129,7 +130,8 @@ void DrawViewDimension::onChanged(const App::Property* prop) prop == &Font || prop == &Fontsize || prop == &CentreLines || - prop == &FormatSpec) { + prop == &FormatSpec || + prop == &LineWidth) { try { App::DocumentObjectExecReturn *ret = recompute(); delete ret; diff --git a/src/Mod/TechDraw/App/DrawViewDimension.h b/src/Mod/TechDraw/App/DrawViewDimension.h index 53dacbc5c..449c85e8c 100644 --- a/src/Mod/TechDraw/App/DrawViewDimension.h +++ b/src/Mod/TechDraw/App/DrawViewDimension.h @@ -56,6 +56,7 @@ public: App::PropertyFloat Fontsize; App::PropertyBool CentreLines; App::PropertyString FormatSpec; + App::PropertyFloat LineWidth; //TODO: do we need a property for the actual dimension value? how else to access from Py? //wf: expose getValue & getFormatedValue diff --git a/src/Mod/TechDraw/Gui/QGIViewDimension.cpp b/src/Mod/TechDraw/Gui/QGIViewDimension.cpp index d22aa8b8c..a39284935 100644 --- a/src/Mod/TechDraw/Gui/QGIViewDimension.cpp +++ b/src/Mod/TechDraw/Gui/QGIViewDimension.cpp @@ -183,14 +183,13 @@ QGIViewDimension::QGIViewDimension() : dlabel, SIGNAL(hover(bool)), this , SLOT (hover(bool))); - m_pen.setWidthF(0.5); - m_clPen.setWidthF(m_pen.widthF() * 0.80); - m_clPen.setColor(QColor(128,128,128)); // TODO: centre line colour preference? - addToGroup(dimLines); addToGroup(datumLabel); addToGroup(centerMark); + m_pen.setStyle(Qt::SolidLine); + m_clPen.setColor(QColor(128,128,128)); // TODO: centre line colour preference? + toggleBorder(false); } @@ -313,7 +312,9 @@ void QGIViewDimension::draw() if(!refObj->hasGeometry()) { //nothing to draw yet (restoring) return; } - m_pen.setStyle(Qt::SolidLine); + + m_pen.setWidthF(dim->LineWidth.getValue()); + m_clPen.setWidthF(m_pen.widthF() * 0.80); //magic number!!!! // Crude method of determining state [TODO] improve if(isSelected()) {