From 484ab9ed87faaae54535490f0f1027d20104630e Mon Sep 17 00:00:00 2001 From: Andre Rummler Date: Wed, 5 Aug 2026 12:17:49 +0200 Subject: [PATCH] Fix folio auto-num context not applying to the active diagram BorderTitleBlock::slot_setAutoPageNum was removed in 471f876 ("Remove unused signal", 2023-10-17) without noticing autonumberingdockwidget.cpp still referenced it via old-style SIGNAL()/SLOT() macros, which fail silently at runtime instead of producing a compile error. This has remained broken on master ever since; a fix (57572a2, "Fix two broken signal connections") exists on the unmerged qt6-cmake-elevatormind-merged branch but that one only commented the lines out without solving the underlying issue. Removed the dead code entirely and call BorderTitleBlock::importTitleBlock() directly on the active diagram in on_m_folio_cb_activated() instead. The same mechanism is already used elsewhere in the codebase (undo command, new-diagram creation, XML loading) to push TitleBlockProperties into a diagram and trigger a folio numbering recompute via needFolioData(). --- sources/autoNum/ui/autonumberingdockwidget.cpp | 12 +++--------- sources/autoNum/ui/autonumberingdockwidget.h | 2 -- 2 files changed, 3 insertions(+), 11 deletions(-) diff --git a/sources/autoNum/ui/autonumberingdockwidget.cpp b/sources/autoNum/ui/autonumberingdockwidget.cpp index 664a00e90..a01cc538f 100644 --- a/sources/autoNum/ui/autonumberingdockwidget.cpp +++ b/sources/autoNum/ui/autonumberingdockwidget.cpp @@ -107,10 +107,6 @@ void AutoNumberingDockWidget::setProject(QETProject *project, this,SLOT(folioAutoNumChanged())); disconnect (m_project,SIGNAL(folioAutoNumAdded()), this,SLOT(folioAutoNumChanged())); - disconnect (this, - SIGNAL(folioAutoNumChanged(QString)), - &m_project_view->currentDiagram()->diagram()->border_and_titleblock, - SLOT (slot_setAutoPageNum(QString))); disconnect(m_project, SIGNAL(defaultTitleBlockPropertiesChanged()), this,SLOT(setActive())); @@ -146,10 +142,6 @@ void AutoNumberingDockWidget::setProject(QETProject *project, this,SLOT(folioAutoNumChanged())); connect (m_project,SIGNAL(folioAutoNumAdded()), this,SLOT(folioAutoNumChanged())); - connect (this, - SIGNAL(folioAutoNumChanged(QString)), - &m_project_view->currentDiagram()->diagram()->border_and_titleblock, - SLOT (slot_setAutoPageNum(QString))); connect(m_project, SIGNAL(defaultTitleBlockPropertiesChanged()), this,SLOT(setActive())); @@ -345,7 +337,9 @@ void AutoNumberingDockWidget::on_m_folio_cb_activated(int) { ip.folio = "%id/%total"; m_project->setDefaultTitleBlockProperties(ip); } - emit(folioAutoNumChanged(current_autonum)); + if (m_project_view && m_project_view->currentDiagram()) { + m_project_view->currentDiagram()->diagram()->border_and_titleblock.importTitleBlock(ip); + } refreshValueField(ui->m_folio_cb, ui->m_folio_value_le, AutoNumCategory::Folio); } diff --git a/sources/autoNum/ui/autonumberingdockwidget.h b/sources/autoNum/ui/autonumberingdockwidget.h index cdfb9f08e..0686a2989 100644 --- a/sources/autoNum/ui/autonumberingdockwidget.h +++ b/sources/autoNum/ui/autonumberingdockwidget.h @@ -66,8 +66,6 @@ class AutoNumberingDockWidget : public QDockWidget void on_m_element_value_le_editingFinished(); void on_m_folio_value_le_editingFinished(); - signals: - void folioAutoNumChanged(QString); private: enum class AutoNumCategory { Conductor, Element, Folio };