From fd61d98b7163bfbfd5c369fe7e11f1348fd1f4d2 Mon Sep 17 00:00:00 2001 From: gg Date: Thu, 15 Jan 2026 16:03:33 -0500 Subject: [PATCH] fixup! Qt 5.12 compat (refactor) --- src/MainWindow.cpp | 22 +++++++++++++++++++++- src/widgets/PayToEdit.h | 1 + 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/src/MainWindow.cpp b/src/MainWindow.cpp index ed2fe5b1..39ccfa67 100644 --- a/src/MainWindow.cpp +++ b/src/MainWindow.cpp @@ -529,9 +529,18 @@ void MainWindow::initMenu() { toggleTab->menuAction->setText(toggleTab->name); toggleTab->menuAction->setCheckable(true); toggleTab->menuAction->setChecked(show); +#if QT_VERSION >= QT_VERSION_CHECK(5, 15, 0) ui->tabWidget->setTabVisible(ui->tabWidget->indexOf(toggleTab->tab), show); +#else + ui->tabWidget->setTabEnabled(ui->tabWidget->indexOf(toggleTab->tab), show); +#endif } +#if QT_VERSION >= QT_VERSION_CHECK(5, 15, 0) connect(m_tabShowHideSignalMapper, &QSignalMapper::mappedString, this, &MainWindow::menuToggleTabVisible); +#else + // Qt 5.14 and older use the overloaded 'mapped' signal + connect(m_tabShowHideSignalMapper, QOverload::of(&QSignalMapper::mapped), this, &MainWindow::menuToggleTabVisible); +#endif // [Tools] connect(ui->actionSignVerify, &QAction::triggered, this, &MainWindow::menuSignVerifyClicked); @@ -709,7 +718,11 @@ void MainWindow::menuToggleTabVisible(const QString &key){ } conf()->set(Config::enabledTabs, enabledTabs); +#if QT_VERSION >= QT_VERSION_CHECK(5, 15, 0) ui->tabWidget->setTabVisible(ui->tabWidget->indexOf(toggleTab->tab), show); +#else + ui->tabWidget->setTabEnabled(ui->tabWidget->indexOf(toggleTab->tab), show); +#endif toggleTab->menuAction->setText(toggleTab->name); } @@ -989,8 +1002,15 @@ void MainWindow::onWebsocketStatusChanged(bool enabled) { } if (plugin->requiresWebsocket()) { + int tabIndex = this->findTab(plugin->displayName()); + bool shouldShow = enabled && enabledTabs.contains(plugin->displayName()); // TODO: unload plugins - ui->tabWidget->setTabVisible(this->findTab(plugin->displayName()), enabled && enabledTabs.contains(plugin->displayName())); + if (tabIndex != -1) +#if QT_VERSION >= QT_VERSION_CHECK(5, 15, 0) + ui->tabWidget->setTabVisible(tabIndex, shouldShow); +#else + ui->tabWidget->setTabEnabled(tabIndex, shouldShow); +#endif } } diff --git a/src/widgets/PayToEdit.h b/src/widgets/PayToEdit.h index d8916496..3df7fe41 100644 --- a/src/widgets/PayToEdit.h +++ b/src/widgets/PayToEdit.h @@ -19,6 +19,7 @@ struct PartialTxOutput { }; struct PayToLineError { + PayToLineError() = default; // To satisfy Qt 5.12 QVector requirements explicit PayToLineError(QString lineContent, QString error, int idx = 0, bool isMultiline = false) : lineContent(lineContent), error(error), idx(idx), isMultiline(isMultiline) {} -- 2.52.0