From e69e6011331b0ac51be0b03768f8ee583ebae379 Mon Sep 17 00:00:00 2001 From: Martin Brodbeck Date: Mon, 30 Jul 2018 19:26:10 +0200 Subject: [PATCH] code refacturing --- src/gui/mainwindow.cpp | 27 ++++++++++++++------------- src/gui/mainwindow.h | 1 + 2 files changed, 15 insertions(+), 13 deletions(-) diff --git a/src/gui/mainwindow.cpp b/src/gui/mainwindow.cpp index 625cf11..6510334 100644 --- a/src/gui/mainwindow.cpp +++ b/src/gui/mainwindow.cpp @@ -27,13 +27,10 @@ MainWindow::MainWindow() ui_.basketView->setModel(model); ui_.basketView->setColumnHidden(0, true); // hide the uuid - SaleModel* saleModel = new SaleModel(getMarketplace(), ui_.salesView); - ui_.salesView->setModel(saleModel); - ui_.salesView->setColumnHidden(2, true); - ui_.salesView->resizeColumnToContents(0); - setWindowTitle("KIMA2 - Kasse Nr. " + QSettings().value("global/cashPointNo").toString()); + setSaleModel(); + connect(ui_.actionQuit, &QAction::triggered, qApp, QApplication::quit); connect(ui_.actionEditSeller, &QAction::triggered, this, &MainWindow::onActionEditSellerTriggered); @@ -42,21 +39,22 @@ MainWindow::MainWindow() connect(ui_.paidButton, &QPushButton::clicked, this, &MainWindow::onPaidButtonTriggered); connect(ui_.basketView->selectionModel(), &QItemSelectionModel::selectionChanged, this, &MainWindow::onBasketViewSelectionChanged); - connect(ui_.salesView->selectionModel(), &QItemSelectionModel::selectionChanged, this, - &MainWindow::onSalesViewSelectionChanged); connect(ui_.cancelArticleButton, &QPushButton::clicked, this, &MainWindow::onCancelArticleButtonClicked); connect(ui_.cancelSaleButton, &QPushButton::clicked, this, &MainWindow::onCancelSaleButtonClicked); connect(ui_.cancelAllArticlesButton, &QPushButton::clicked, this, &MainWindow::onCancelAllArticlesButtonClicked); - connect(static_cast(ui_.basketView->model()), &BasketModel::basketDataChanged, - static_cast(ui_.salesView->model()), &SaleModel::onBasketDataChanged); connect(ui_.aboutQtAction, &QAction::triggered, this, &MainWindow::onAboutQt); connect(ui_.aboutAction, &QAction::triggered, this, &MainWindow::onAbout); connect(ui_.reportAction, &QAction::triggered, this, [=]() { ReportDialog(this).exec(); }); connect(ui_.configAction, &QAction::triggered, this, [=]() { - SettingsDialog(this).exec(); + int result = SettingsDialog(this).exec(); + if (result == QDialog::Accepted) { + delete ui_.salesView->model(); + marketplace_->loadFromDb(); + setSaleModel(); + } this->setWindowTitle("KIMA2 - Kasse Nr. " + QSettings().value("global/cashPointNo").toString()); }); @@ -67,8 +65,7 @@ void MainWindow::onActionEditSellerTriggered() auto dialog = std::make_unique(this); int retCode = dialog->exec(); - auto oldModel = ui_.salesView->model(); - ui_.salesView->setModel(nullptr); + delete ui_.salesView->model(); if (retCode == QDialog::Accepted) { marketplace_->sortSellers(); @@ -81,8 +78,12 @@ void MainWindow::onActionEditSellerTriggered() STATUSBAR_TIMEOUT); } + setSaleModel(); +} + +void MainWindow::setSaleModel() +{ ui_.salesView->setModel(new SaleModel(getMarketplace(), ui_.salesView)); - delete oldModel; ui_.salesView->setColumnHidden(2, true); ui_.salesView->resizeColumnToContents(0); connect(static_cast(ui_.basketView->model()), &BasketModel::basketDataChanged, diff --git a/src/gui/mainwindow.h b/src/gui/mainwindow.h index 14ae9c0..da01814 100644 --- a/src/gui/mainwindow.h +++ b/src/gui/mainwindow.h @@ -32,6 +32,7 @@ class MainWindow : public QMainWindow void onActionEditSellerTriggered(); void onSellerNoEditCheckSellerNo(); void onPaidButtonTriggered(); + void setSaleModel(); Ui::MainWindow ui_; std::unique_ptr marketplace_;