From 23c3cf76bed9c770ee74b9ef0446209c8d69d5d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20Br=C3=A6strup=20Sayoc?= Date: Tue, 12 Jul 2022 17:21:21 +0200 Subject: [PATCH] [TechDraw] Improve readability of TaskWeldingSymbol.cpp --- src/Mod/TechDraw/Gui/TaskWeldingSymbol.cpp | 59 +++++++++------------- src/Mod/TechDraw/Gui/TaskWeldingSymbol.h | 1 + 2 files changed, 26 insertions(+), 34 deletions(-) diff --git a/src/Mod/TechDraw/Gui/TaskWeldingSymbol.cpp b/src/Mod/TechDraw/Gui/TaskWeldingSymbol.cpp index 3ee5b3a5c2..0ef271276f 100644 --- a/src/Mod/TechDraw/Gui/TaskWeldingSymbol.cpp +++ b/src/Mod/TechDraw/Gui/TaskWeldingSymbol.cpp @@ -126,14 +126,14 @@ TaskWeldingSymbol::TaskWeldingSymbol(TechDraw::DrawWeldSymbol* weld) : // or ViewProviderWeld.setEdit App::DocumentObject* obj = m_weldFeat->Leader.getValue(); - if ( (obj != nullptr) && - (obj->isDerivedFrom(TechDraw::DrawLeaderLine::getClassTypeId())) ) { - m_leadFeat = static_cast(obj); - } else { + if (obj == nullptr || + !obj->isDerivedFrom(TechDraw::DrawLeaderLine::getClassTypeId()) ) { Base::Console().Error("TaskWeldingSymbol - no leader for welding symbol. Can not proceed.\n"); return; } + m_leadFeat = static_cast(obj); + ui->setupUi(this); setUiEdit(); @@ -272,47 +272,36 @@ void TaskWeldingSymbol::setUiEdit() ui->pbArrowSymbol->setFocus(); } -void TaskWeldingSymbol::onArrowSymbolCreateClicked() +void TaskWeldingSymbol::symbolDialog(const char* source) { - QString source = tr("arrow"); - SymbolChooser* dlg = new SymbolChooser(this, m_currDir, source); + QString _source = tr(source); + SymbolChooser* dlg = new SymbolChooser(this, m_currDir, _source); connect(dlg, SIGNAL(symbolSelected(QString, QString)), - this, SLOT(onSymbolSelected(QString, QString))); + this, SLOT(onSymbolSelected(QString, QString))); dlg->setAttribute(Qt::WA_DeleteOnClose); dlg->exec(); } +void TaskWeldingSymbol::onArrowSymbolCreateClicked() +{ + symbolDialog("arrow"); +} + void TaskWeldingSymbol::onArrowSymbolClicked() { - QString source = tr("arrow"); - SymbolChooser* dlg = new SymbolChooser(this, m_currDir, source); - connect(dlg, SIGNAL(symbolSelected(QString, QString)), - this, SLOT(onSymbolSelected(QString, QString))); - dlg->setAttribute(Qt::WA_DeleteOnClose); - - dlg->exec(); + symbolDialog("arrow"); updateTiles(); m_weldFeat->requestPaint(); } void TaskWeldingSymbol::onOtherSymbolCreateClicked() { - QString source = tr("other"); - SymbolChooser* dlg = new SymbolChooser(this, m_currDir, source); - connect(dlg, SIGNAL(symbolSelected(QString, QString)), - this, SLOT(onSymbolSelected(QString, QString))); - dlg->setAttribute(Qt::WA_DeleteOnClose); - dlg->exec(); + symbolDialog("other"); } void TaskWeldingSymbol::onOtherSymbolClicked() { - QString source = tr("other"); - SymbolChooser* dlg = new SymbolChooser(this, m_currDir, source); - connect(dlg, SIGNAL(symbolSelected(QString, QString)), - this, SLOT(onSymbolSelected(QString, QString))); - dlg->setAttribute(Qt::WA_DeleteOnClose); - dlg->exec(); + symbolDialog("other"); updateTiles(); m_weldFeat->requestPaint(); } @@ -475,13 +464,15 @@ void TaskWeldingSymbol::getTileFeats(void) m_arrowFeat = nullptr; m_otherFeat = nullptr; - if (!tiles.empty()) { - TechDraw::DrawTileWeld* tempTile = tiles.at(0); - if (tempTile->TileRow.getValue() == 0) { - m_arrowFeat = tempTile; - } else { - m_otherFeat = tempTile; - } + if (tiles.empty()) { + return; + } + + TechDraw::DrawTileWeld* tempTile = tiles.at(0); + if (tempTile->TileRow.getValue() == 0) { + m_arrowFeat = tempTile; + } else { + m_otherFeat = tempTile; } if (tiles.size() > 1) { TechDraw::DrawTileWeld* tempTile = tiles.at(1); diff --git a/src/Mod/TechDraw/Gui/TaskWeldingSymbol.h b/src/Mod/TechDraw/Gui/TaskWeldingSymbol.h index 7aa9c82c89..8e5f4c0f8b 100644 --- a/src/Mod/TechDraw/Gui/TaskWeldingSymbol.h +++ b/src/Mod/TechDraw/Gui/TaskWeldingSymbol.h @@ -98,6 +98,7 @@ public: ~TaskWeldingSymbol(); public Q_SLOTS: + void symbolDialog(const char* source); void onArrowSymbolCreateClicked(); void onArrowSymbolClicked(); void onOtherSymbolCreateClicked();