#ifndef EDITITEMDIALOG_H #define EDITITEMDIALOG_H #include "QrCodeGenerator.h" #include "abstractdialog.h" class QDoubleSpinBox; class QLineEdit; class QSpinBox; class QLabel; class QTableView; class ItemDetailMapper; class EditItemDialog : public AbstractDialog { Q_OBJECT public: EditItemDialog(QTableView* tableView, QWidget* parent = nullptr); /// AbstractDialog interface void createContent() override; public slots: void accept() override; void reject() override; private slots: void updateQRCode(const QString text = ""); private: QTableView* m_tableView = nullptr; ItemDetailMapper* m_detailMapper; QLabel* m_nameLabel = nullptr; QLineEdit* m_nameEdit = nullptr; QLabel* m_descriptionLabel = nullptr; QLineEdit* m_descriptionEdit = nullptr; QLabel* m_infoLabel = nullptr; QLineEdit* m_infoEdit = nullptr; QLabel* m_amountLabel = nullptr; QSpinBox* m_amountBox = nullptr; QLabel* m_factorLabel = nullptr; QDoubleSpinBox* m_factorBox = nullptr; QLabel* m_qrCodeDisplay = nullptr; QrCodeGenerator m_generator; }; #endif // EDITITEMDIALOG_H