diff --git a/src/Mod/TechDraw/App/DrawBrokenView.h b/src/Mod/TechDraw/App/DrawBrokenView.h
index 6d1c2c9e0f..564d59c36f 100644
--- a/src/Mod/TechDraw/App/DrawBrokenView.h
+++ b/src/Mod/TechDraw/App/DrawBrokenView.h
@@ -60,8 +60,7 @@ class TechDrawExport DrawBrokenView: public TechDraw::DrawViewPart
PROPERTY_HEADER_WITH_OVERRIDE(TechDraw::DrawBrokenView);
public:
- enum BreakType
- {
+ enum class BreakType : int {
NONE,
ZIGZAG,
SIMPLE
diff --git a/src/Mod/TechDraw/App/Preferences.cpp b/src/Mod/TechDraw/App/Preferences.cpp
index bcaf002226..6f9aa9261e 100644
--- a/src/Mod/TechDraw/App/Preferences.cpp
+++ b/src/Mod/TechDraw/App/Preferences.cpp
@@ -34,6 +34,7 @@
#include
#include "Preferences.h"
+#include "DrawBrokenView.h"
#include "LineGenerator.h"
//getters for parameters used in multiple places.
@@ -593,9 +594,10 @@ bool Preferences::useExactMatchOnDims()
return getPreferenceGroup("Dimensions")->GetBool("UseMatcher", true);
}
-int Preferences::BreakType()
+DrawBrokenView::BreakType Preferences::BreakType()
{
- return getPreferenceGroup("Decorations")->GetInt("BreakType", 2);
+ int temp = getPreferenceGroup("Decorations")->GetInt("BreakType", 2);
+ return static_cast(temp);
}
diff --git a/src/Mod/TechDraw/App/Preferences.h b/src/Mod/TechDraw/App/Preferences.h
index 33243531ea..c054c2433f 100644
--- a/src/Mod/TechDraw/App/Preferences.h
+++ b/src/Mod/TechDraw/App/Preferences.h
@@ -29,6 +29,7 @@
#include
#include
+#include "DrawBrokenView.h"
class QColor;
class QString;
@@ -136,7 +137,7 @@ public:
static bool showSectionLine();
static bool includeCutLine();
- static int BreakType();
+ static DrawBrokenView::BreakType BreakType();
static bool useExactMatchOnDims();
diff --git a/src/Mod/TechDraw/Gui/QGIBreakLine.cpp b/src/Mod/TechDraw/Gui/QGIBreakLine.cpp
index 894253e37a..4a4df4a99e 100644
--- a/src/Mod/TechDraw/Gui/QGIBreakLine.cpp
+++ b/src/Mod/TechDraw/Gui/QGIBreakLine.cpp
@@ -71,21 +71,21 @@ QGIBreakLine::QGIBreakLine()
void QGIBreakLine::draw()
{
- if (breakType() == 0) {
+ if (breakType() == DrawBrokenView::BreakType::NONE) {
// none
m_background->hide();
m_line0->hide();
m_line1->hide();
}
- if (breakType() == 1) {
+ if (breakType() == DrawBrokenView::BreakType::ZIGZAG) {
drawLargeZigZag();
m_background->show();
m_line0->show();
m_line1->show();
}
- if (breakType() == 2) {
+ if (breakType() == DrawBrokenView::BreakType::SIMPLE) {
// simple line from pref
drawSimpleLines();
m_background->hide();
diff --git a/src/Mod/TechDraw/Gui/QGIBreakLine.h b/src/Mod/TechDraw/Gui/QGIBreakLine.h
index c8a5912a24..4607d54186 100644
--- a/src/Mod/TechDraw/Gui/QGIBreakLine.h
+++ b/src/Mod/TechDraw/Gui/QGIBreakLine.h
@@ -36,6 +36,7 @@
#include "QGCustomText.h"
#include "QGIDecoration.h"
+using BreakType = TechDraw::DrawBrokenView::BreakType;
namespace TechDrawGui
{
@@ -59,8 +60,8 @@ public:
void setLinePen(QPen isoPen);
void setBreakColor(QColor c);
- void setBreakType(int style) { m_breakType = style; }
- int breakType() const { return m_breakType; }
+ void setBreakType(BreakType style) { m_breakType = style; }
+ BreakType breakType() const { return m_breakType; }
protected:
@@ -84,7 +85,7 @@ private:
double m_left;
double m_right;
- int m_breakType{0};
+ BreakType m_breakType = BreakType::NONE;
};
}
diff --git a/src/Mod/TechDraw/Gui/QGIViewPart.cpp b/src/Mod/TechDraw/Gui/QGIViewPart.cpp
index 1ecd5bb5b9..9d9d614c22 100644
--- a/src/Mod/TechDraw/Gui/QGIViewPart.cpp
+++ b/src/Mod/TechDraw/Gui/QGIViewPart.cpp
@@ -1043,7 +1043,7 @@ void QGIViewPart::drawBreakLines()
return;
}
- auto breakType = vp->BreakLineType.getValue();
+ DrawBrokenView::BreakType breakType = static_cast(vp->BreakLineType.getValue());
auto breaks = dbv->Breaks.getValues();
for (auto& breakObj : breaks) {
QGIBreakLine* breakLine = new QGIBreakLine();
diff --git a/src/Mod/TechDraw/Gui/ViewProviderViewPart.cpp b/src/Mod/TechDraw/Gui/ViewProviderViewPart.cpp
index fcead39ce0..0b19e1d9cd 100644
--- a/src/Mod/TechDraw/Gui/ViewProviderViewPart.cpp
+++ b/src/Mod/TechDraw/Gui/ViewProviderViewPart.cpp
@@ -132,7 +132,7 @@ ViewProviderViewPart::ViewProviderViewPart()
// properties that affect BrokenViews
BreakLineType.setEnums(DrawBrokenView::BreakTypeEnums);
- ADD_PROPERTY_TYPE(BreakLineType, (Preferences::BreakType()), bvgroup, App::Prop_None,
+ ADD_PROPERTY_TYPE(BreakLineType, (static_cast(Preferences::BreakType())), bvgroup, App::Prop_None,
"Adjusts the type of break line depiction on broken views");
ADD_PROPERTY_TYPE(BreakLineStyle, (Preferences::BreakLineStyle()), bvgroup, App::Prop_None,
"Set break line style if applicable");