From f359a1fb11fc53919fcb1a42fc5f9e9eaafe8eb1 Mon Sep 17 00:00:00 2001 From: Bent Witthold Date: Fri, 31 Oct 2025 15:02:14 +0100 Subject: [PATCH] Displaying status messages from the core. Using non-smart pointer for GenericCore to connect to its signal. --- mainwindow.cpp | 14 ++++++++++++-- mainwindow.h | 5 ++++- 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/mainwindow.cpp b/mainwindow.cpp index 4c50172..3cb460e 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -8,7 +8,7 @@ MainWindow::MainWindow(QWidget* parent) , ui(new Ui::MainWindow) { ui->setupUi(this); - m_core = std::make_shared(); + m_core = new GenericCore(); /// application icon const QString iconString = "://feature.png"; @@ -21,11 +21,21 @@ MainWindow::MainWindow(QWidget* parent) #else setWindowIcon(QIcon(iconString)); #endif + connect(m_core, &GenericCore::displayStatusMessage, this, &MainWindow::displayStatusMessage); + connect(this, &MainWindow::displayStatusMessage, this, &MainWindow::showStatusMessage); } -MainWindow::~MainWindow() { delete ui; } +MainWindow::~MainWindow() { + delete ui; + delete m_core; +} void MainWindow::on_pushButton_clicked() { const QString prefix("Backend provided by: "); ui->label->setText(prefix + m_core->toString()); } + +void MainWindow::showStatusMessage(const QString text) { + qInfo() << text; + ui->statusbar->showMessage(text); +} diff --git a/mainwindow.h b/mainwindow.h index a153e28..3b4d8d2 100644 --- a/mainwindow.h +++ b/mainwindow.h @@ -19,12 +19,15 @@ class MainWindow : public QMainWindow { MainWindow(QWidget* parent = nullptr); ~MainWindow(); + signals: + void displayStatusMessage(QString message); private slots: void on_pushButton_clicked(); + void showStatusMessage(const QString text); private: Ui::MainWindow* ui; - std::shared_ptr m_core; + GenericCore* m_core; }; #endif // MAINWINDOW_H