kima2/src/gui/basketmodel.h

30 lines
934 B
C++

#ifndef BASKET_MODEL_H
#define BASKET_MODEL_H
#include <marketplace.h>
#include <QAbstractTableModel>
class BasketModel : public QAbstractTableModel
{
Q_OBJECT
public:
explicit BasketModel(Marketplace* market, QObject* parent = nullptr);
virtual int rowCount(const QModelIndex& parent = QModelIndex()) const override;
virtual int columnCount(const QModelIndex& parent = QModelIndex()) const override;
virtual QVariant data(const QModelIndex& index, int role = Qt::DisplayRole) const override;
virtual QVariant headerData(int section, Qt::Orientation orientation, int role) const override;
void addArticle(Seller* seller, int price, const std::string& desc);
void finishSale();
void cancelSale();
virtual bool removeRows(int row, int count, const QModelIndex& parent = QModelIndex()) override;
signals:
void basketDataChanged();
private:
Marketplace* marketplace_;
};
#endif