Compare commits

..

2 commits

Author SHA1 Message Date
42c5f35576 enable/disable delete button 2018-07-23 12:58:27 +02:00
609003fc06 enable/disable button 2018-07-23 12:49:19 +02:00
6 changed files with 49 additions and 10 deletions

View file

@ -6,19 +6,14 @@
#include <regex> #include <regex>
#include <QItemSelectionModel>
constexpr int STATUSBAR_TIMEOUT = 5000; constexpr int STATUSBAR_TIMEOUT = 5000;
MainWindow::MainWindow() MainWindow::MainWindow()
{ {
ui_.setupUi(this); ui_.setupUi(this);
connect(ui_.actionQuit, &QAction::triggered, qApp, QApplication::quit);
connect(ui_.actionEditSeller, &QAction::triggered, this,
&MainWindow::on_actionEditSeller_triggered);
connect(ui_.sellerNoEdit, &QLineEdit::returnPressed, this,
&MainWindow::on_sellerNoEdit_checkSellerNo);
connect(ui_.paidButton, &QPushButton::clicked, this, &MainWindow::on_paidButton_triggered);
marketplace_ = std::make_unique<Marketplace>(); marketplace_ = std::make_unique<Marketplace>();
marketplace_->loadFromDb(); marketplace_->loadFromDb();
statusBar()->showMessage("Gespeicherte Daten wurden geladen.", STATUSBAR_TIMEOUT); statusBar()->showMessage("Gespeicherte Daten wurden geladen.", STATUSBAR_TIMEOUT);
@ -26,6 +21,16 @@ MainWindow::MainWindow()
BasketModel* model = new BasketModel(getMarketplace(), ui_.basketView); BasketModel* model = new BasketModel(getMarketplace(), ui_.basketView);
ui_.basketView->setModel(model); ui_.basketView->setModel(model);
ui_.basketView->setColumnHidden(0, true); // hide the uuid ui_.basketView->setColumnHidden(0, true); // hide the uuid
connect(ui_.actionQuit, &QAction::triggered, qApp, QApplication::quit);
connect(ui_.actionEditSeller, &QAction::triggered, this,
&MainWindow::on_actionEditSeller_triggered);
connect(ui_.sellerNoEdit, &QLineEdit::returnPressed, this,
&MainWindow::on_sellerNoEdit_checkSellerNo);
connect(ui_.paidButton, &QPushButton::clicked, this, &MainWindow::on_paidButton_triggered);
connect(ui_.basketView->selectionModel(), &QItemSelectionModel::selectionChanged, this,
&MainWindow::onBasketViewSelectionChanged);
} }
void MainWindow::on_actionEditSeller_triggered() void MainWindow::on_actionEditSeller_triggered()
@ -85,4 +90,14 @@ void MainWindow::on_sellerNoEdit_checkSellerNo()
} }
ui_.sellerNoEdit->clear(); ui_.sellerNoEdit->clear();
}
void MainWindow::onBasketViewSelectionChanged(const QItemSelection& selected,
[[maybe_unused]] const QItemSelection& deselected)
{
if (selected.size() > 0) {
ui_.cancelArticleButton->setEnabled(true);
} else {
ui_.cancelArticleButton->setEnabled(false);
}
} }

View file

@ -17,6 +17,10 @@ class MainWindow : public QMainWindow
MainWindow(); MainWindow();
Marketplace* getMarketplace() { return marketplace_.get(); } Marketplace* getMarketplace() { return marketplace_.get(); }
private slots:
void onBasketViewSelectionChanged(const QItemSelection& selected,
const QItemSelection& deselected);
private: private:
void on_actionEditSeller_triggered(); void on_actionEditSeller_triggered();
void on_sellerNoEdit_checkSellerNo(); void on_sellerNoEdit_checkSellerNo();

View file

@ -194,7 +194,7 @@
<item> <item>
<layout class="QVBoxLayout" name="verticalLayout_5"> <layout class="QVBoxLayout" name="verticalLayout_5">
<item> <item>
<widget class="QPushButton" name="pushButton_5"> <widget class="QPushButton" name="cancelArticleButton">
<property name="enabled"> <property name="enabled">
<bool>false</bool> <bool>false</bool>
</property> </property>
@ -204,9 +204,9 @@
</widget> </widget>
</item> </item>
<item> <item>
<widget class="QPushButton" name="pushButton_4"> <widget class="QPushButton" name="cancleAllArticlesButton">
<property name="enabled"> <property name="enabled">
<bool>false</bool> <bool>true</bool>
</property> </property>
<property name="text"> <property name="text">
<string>Alles stornieren</string> <string>Alles stornieren</string>

View file

@ -8,6 +8,7 @@
SellerDialog::SellerDialog(QWidget* parent, Qt::WindowFlags f) : QDialog(parent, f) SellerDialog::SellerDialog(QWidget* parent, Qt::WindowFlags f) : QDialog(parent, f)
{ {
ui_.setupUi(this); ui_.setupUi(this);
ui_.editButton->setVisible(false);
SellerModel* model = SellerModel* model =
new SellerModel(dynamic_cast<MainWindow*>(parent)->getMarketplace(), ui_.tableView); new SellerModel(dynamic_cast<MainWindow*>(parent)->getMarketplace(), ui_.tableView);
ui_.tableView->setModel(model); ui_.tableView->setModel(model);
@ -16,6 +17,8 @@ SellerDialog::SellerDialog(QWidget* parent, Qt::WindowFlags f) : QDialog(parent,
connect(ui_.deleteButton, &QPushButton::clicked, this, &SellerDialog::on_deleteButton_clicked); connect(ui_.deleteButton, &QPushButton::clicked, this, &SellerDialog::on_deleteButton_clicked);
connect(model, &SellerModel::duplicateSellerNo, this, connect(model, &SellerModel::duplicateSellerNo, this,
&SellerDialog::on_model_duplicateSellerNo); &SellerDialog::on_model_duplicateSellerNo);
connect(ui_.tableView->selectionModel(), &QItemSelectionModel::selectionChanged, this,
&SellerDialog::onSellerViewSelectionChanged);
} }
void SellerDialog::on_newButton_clicked() void SellerDialog::on_newButton_clicked()
@ -72,4 +75,14 @@ void SellerDialog::accept()
} }
} }
QDialog::accept(); QDialog::accept();
}
void SellerDialog::onSellerViewSelectionChanged(const QItemSelection& selected,
[[maybe_unused]] const QItemSelection& deselected)
{
if (selected.size() > 0) {
ui_.deleteButton->setEnabled(true);
} else {
ui_.deleteButton->setEnabled(false);
}
} }

View file

@ -15,6 +15,10 @@ class SellerDialog : public QDialog
SellerDialog(QWidget* parent = nullptr, SellerDialog(QWidget* parent = nullptr,
Qt::WindowFlags f = Qt::WindowTitleHint | Qt::WindowSystemMenuHint); Qt::WindowFlags f = Qt::WindowTitleHint | Qt::WindowSystemMenuHint);
private slots:
void onSellerViewSelectionChanged(const QItemSelection& selected,
const QItemSelection& deselected);
private: private:
void on_newButton_clicked(); void on_newButton_clicked();
void on_deleteButton_clicked(); void on_deleteButton_clicked();

View file

@ -65,6 +65,9 @@
</item> </item>
<item> <item>
<widget class="QPushButton" name="deleteButton"> <widget class="QPushButton" name="deleteButton">
<property name="enabled">
<bool>false</bool>
</property>
<property name="text"> <property name="text">
<string>Löschen</string> <string>Löschen</string>
</property> </property>