]> Nutra Git (v2) - gamesguru/feather.git/commitdiff
fixup! Qt 5.12 compat (refactor)
authorgg <chown_tee@proton.me>
Thu, 15 Jan 2026 21:03:33 +0000 (16:03 -0500)
committergg <chown_tee@proton.me>
Thu, 15 Jan 2026 21:03:33 +0000 (16:03 -0500)
src/MainWindow.cpp
src/widgets/PayToEdit.h

index ed2fe5b14930e469c9c32fc30d2dc853a6e9c497..39ccfa675580701ab5ef67ba785248a45d2d0ddb 100644 (file)
@@ -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<const QString &>::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
         }
     }
 
index d8916496766860bff3ae8c76d35ddd99518e8e7b..3df7fe41c0de8a43606af9947d55809dfe8c9c79 100644 (file)
@@ -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) {}