From ebf0f9da0da35adf6db01af727b56a5cb4a2e6b9 Mon Sep 17 00:00:00 2001 From: wandererfan Date: Wed, 29 Jan 2020 10:00:40 -0500 Subject: [PATCH] [TD]Default color and weight for markup lines --- src/Mod/TechDraw/Gui/DlgPrefsTechDraw1.ui | 32 +++++++++++++++++++ src/Mod/TechDraw/Gui/DlgPrefsTechDraw1Imp.cpp | 4 +++ src/Mod/TechDraw/Gui/TaskLeaderLine.cpp | 26 ++++++++++++++- src/Mod/TechDraw/Gui/TaskLeaderLine.h | 6 ++-- src/Mod/TechDraw/Gui/TaskRichAnno.cpp | 27 +++++++++++++++- src/Mod/TechDraw/Gui/TaskRichAnno.h | 4 ++- 6 files changed, 94 insertions(+), 5 deletions(-) diff --git a/src/Mod/TechDraw/Gui/DlgPrefsTechDraw1.ui b/src/Mod/TechDraw/Gui/DlgPrefsTechDraw1.ui index 4d43784398..74e0ee470d 100644 --- a/src/Mod/TechDraw/Gui/DlgPrefsTechDraw1.ui +++ b/src/Mod/TechDraw/Gui/DlgPrefsTechDraw1.ui @@ -481,6 +481,38 @@ + + + + + true + + + + Markups + + + + + + + Default color for annotations + + + + 0 + 0 + 0 + + + + Color + + + Mod/TechDraw/Markups + + + diff --git a/src/Mod/TechDraw/Gui/DlgPrefsTechDraw1Imp.cpp b/src/Mod/TechDraw/Gui/DlgPrefsTechDraw1Imp.cpp index 9994b72040..33549d7d1b 100644 --- a/src/Mod/TechDraw/Gui/DlgPrefsTechDraw1Imp.cpp +++ b/src/Mod/TechDraw/Gui/DlgPrefsTechDraw1Imp.cpp @@ -74,6 +74,8 @@ void DlgPrefsTechDraw1Imp::saveSettings() pcbSectionLine->onSave(); pcbCenterColor->onSave(); pcbVertexColor->onSave(); + + pcbMarkup->onSave(); } void DlgPrefsTechDraw1Imp::loadSettings() @@ -108,6 +110,8 @@ void DlgPrefsTechDraw1Imp::loadSettings() pcbSectionLine->onRestore(); pcbCenterColor->onRestore(); pcbVertexColor->onRestore(); + + pcbMarkup->onRestore(); } /** diff --git a/src/Mod/TechDraw/Gui/TaskLeaderLine.cpp b/src/Mod/TechDraw/Gui/TaskLeaderLine.cpp index 27b9f55c8c..55c6d72811 100644 --- a/src/Mod/TechDraw/Gui/TaskLeaderLine.cpp +++ b/src/Mod/TechDraw/Gui/TaskLeaderLine.cpp @@ -225,7 +225,9 @@ void TaskLeaderLine::setUiPrimary() ui->dsbWeight->setUnit(Base::Unit::Length); ui->dsbWeight->setMinimum(0); - ui->dsbWeight->setValue(0.5); + ui->dsbWeight->setValue(prefWeight()); + + ui->cpLineColor->setColor(prefLineColor().asValue()); } //switch widgets related to ViewProvider on/off @@ -660,6 +662,28 @@ int TaskLeaderLine::getPrefArrowStyle() return style; } +double TaskLeaderLine::prefWeight() const +{ + Base::Reference hGrp = App::GetApplication().GetUserParameter() + .GetGroup("BaseApp")->GetGroup("Preferences")-> + GetGroup("Mod/TechDraw/Decorations"); + std::string lgName = hGrp->GetASCII("LineGroup","FC 0.70mm"); + auto lg = TechDraw::LineGroup::lineGroupFactory(lgName); + double weight = lg->getWeight("Thin"); + delete lg; //Coverity CID 174670 + return weight; +} + +App::Color TaskLeaderLine::prefLineColor(void) +{ + Base::Reference hGrp = App::GetApplication().GetUserParameter(). + GetGroup("BaseApp")->GetGroup("Preferences")->GetGroup("Mod/TechDraw/Markups"); + App::Color result; + result.setPackedValue(hGrp->GetUnsigned("Color", 0x00000000)); + return result; +} + + //****************************************************************************** bool TaskLeaderLine::accept() diff --git a/src/Mod/TechDraw/Gui/TaskLeaderLine.h b/src/Mod/TechDraw/Gui/TaskLeaderLine.h index b2d61df277..2c96d635b8 100644 --- a/src/Mod/TechDraw/Gui/TaskLeaderLine.h +++ b/src/Mod/TechDraw/Gui/TaskLeaderLine.h @@ -113,8 +113,10 @@ protected: void enableVPUi(bool b); void setEditCursor(QCursor c); - QGIView* findParentQGIV(); - int getPrefArrowStyle(); + QGIView* findParentQGIV(); + int getPrefArrowStyle(); + double prefWeight() const; + App::Color prefLineColor(void); void saveState(void); void restoreState(void); diff --git a/src/Mod/TechDraw/Gui/TaskRichAnno.cpp b/src/Mod/TechDraw/Gui/TaskRichAnno.cpp index 61434f2c6a..205aa9ac11 100644 --- a/src/Mod/TechDraw/Gui/TaskRichAnno.cpp +++ b/src/Mod/TechDraw/Gui/TaskRichAnno.cpp @@ -198,7 +198,10 @@ void TaskRichAnno::setUiPrimary() } ui->dsbWidth->setUnit(Base::Unit::Length); ui->dsbWidth->setMinimum(0); - ui->dsbWidth->setValue(0.5); + ui->dsbWidth->setValue(prefWeight()); + + ui->cpFrameColor->setColor(prefLineColor().asValue()); + } void TaskRichAnno::enableTextUi(bool b) @@ -288,6 +291,28 @@ void TaskRichAnno::onEditorExit(void) m_rte = nullptr; } +double TaskRichAnno::prefWeight() const +{ + Base::Reference hGrp = App::GetApplication().GetUserParameter() + .GetGroup("BaseApp")->GetGroup("Preferences")-> + GetGroup("Mod/TechDraw/Decorations"); + std::string lgName = hGrp->GetASCII("LineGroup","FC 0.70mm"); + auto lg = TechDraw::LineGroup::lineGroupFactory(lgName); + double weight = lg->getWeight("Graphic"); + delete lg; //Coverity CID 174670 + return weight; +} + +App::Color TaskRichAnno::prefLineColor(void) +{ + Base::Reference hGrp = App::GetApplication().GetUserParameter(). + GetGroup("BaseApp")->GetGroup("Preferences")->GetGroup("Mod/TechDraw/Markups"); + App::Color result; + result.setPackedValue(hGrp->GetUnsigned("Color", 0x00000000)); + return result; +} + + //****************************************************************************** void TaskRichAnno::createAnnoFeature() { diff --git a/src/Mod/TechDraw/Gui/TaskRichAnno.h b/src/Mod/TechDraw/Gui/TaskRichAnno.h index fedb395ee0..cded4653d6 100644 --- a/src/Mod/TechDraw/Gui/TaskRichAnno.h +++ b/src/Mod/TechDraw/Gui/TaskRichAnno.h @@ -99,7 +99,9 @@ protected: void setUiEdit(void); void enableTextUi(bool b); void enableVPUi(bool b); - + double prefWeight() const; + App::Color prefLineColor(void); + private: Ui_TaskRichAnno * ui; bool blockUpdate;