Displaying status messages from the core. Using non-smart pointer for GenericCore to connect to its signal.

This commit is contained in:
2025-10-31 15:02:14 +01:00
parent 9c67fdabdc
commit f359a1fb11
2 changed files with 16 additions and 3 deletions

View File

@ -8,7 +8,7 @@ MainWindow::MainWindow(QWidget* parent)
, ui(new Ui::MainWindow) {
ui->setupUi(this);
m_core = std::make_shared<GenericCore>();
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);
}

View File

@ -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<GenericCore> m_core;
GenericCore* m_core;
};
#endif // MAINWINDOW_H