From 6ffca6cbdd5f6ffe0d1fd5343bf79390621e5d10 Mon Sep 17 00:00:00 2001 From: giomba Date: Sun, 20 Sep 2020 12:12:24 +0200 Subject: [PATCH] fixed statusBar and color --- argento/EditWindow.cpp | 2 ++ argento/MainWindow.cpp | 7 +++++-- argento/MainWindow.h | 2 +- argento/main.cpp | 1 - argento/status.cpp | 4 +++- 5 files changed, 11 insertions(+), 5 deletions(-) diff --git a/argento/EditWindow.cpp b/argento/EditWindow.cpp index 1bc3947..7502a39 100644 --- a/argento/EditWindow.cpp +++ b/argento/EditWindow.cpp @@ -62,6 +62,7 @@ void EditWindow::on_buttonSalva_clicked() { /* update ui */ model->select(); mapper->toFirst(); + close(); } else { model->database().rollback(); qDebug() << model->lastError(); @@ -69,6 +70,7 @@ void EditWindow::on_buttonSalva_clicked() { } } else { Ui::status(Ui::INFO, "nothing done"); + close(); } } diff --git a/argento/MainWindow.cpp b/argento/MainWindow.cpp index 6be8f8c..4e5863b 100644 --- a/argento/MainWindow.cpp +++ b/argento/MainWindow.cpp @@ -1,14 +1,17 @@ #include "MainWindow.h" #include "ui_MainWindow.h" -QStatusBar* statusBar = nullptr; +namespace Ui { + QStatusBar* statusBar = nullptr; +} MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); + Ui::statusBar = statusBar(); QSqlDatabase db = QSqlDatabase::database(); if (db.isOpen()) { - status(Ui::INFO, QString("Connected to %1").arg(db.hostName())); + status(Ui::INFO, QString("Connected to %1 at %2").arg(db.databaseName()).arg(db.hostName())); } else { status(Ui::ERROR, "Cannot connect to database: " + db.lastError().text()); } diff --git a/argento/MainWindow.h b/argento/MainWindow.h index 81b86f5..28810aa 100644 --- a/argento/MainWindow.h +++ b/argento/MainWindow.h @@ -10,6 +10,7 @@ namespace Ui { class MainWindow; + extern QStatusBar* statusBar; } class MainWindow : public QMainWindow { @@ -26,4 +27,3 @@ private slots: }; -extern QStatusBar* statusBar; diff --git a/argento/main.cpp b/argento/main.cpp index dbfa5fa..fade7fa 100644 --- a/argento/main.cpp +++ b/argento/main.cpp @@ -24,7 +24,6 @@ int main(int argc, char *argv[]) db.open(); MainWindow window; - statusBar = window.statusBar(); window.show(); return a.exec(); diff --git a/argento/status.cpp b/argento/status.cpp index 78a2260..f9c6333 100644 --- a/argento/status.cpp +++ b/argento/status.cpp @@ -10,7 +10,7 @@ namespace Ui { /* choose background color */ if (statusBar != nullptr) { switch (type) { - case INFO: statusBar->setStyleSheet("color: #007;"); break; + case INFO: /* statusBar->setStyleSheet("color: #007;"); */ break; case SUCCESS: statusBar->setStyleSheet("color: #0a0;"); break; case WARNING: statusBar->setStyleSheet("color: #f50;"); break; case ERROR: statusBar->setStyleSheet("color: #d00;"); break; @@ -43,6 +43,8 @@ namespace Ui { if (statusBar != nullptr) { statusBar->showMessage(message, timeout); statusBar->repaint(); + } else { + qDebug() << "[WW] status bar not ready"; } }