Added a 'trash' icon on the Cylinders and Weigthsystem models

So, the Cylinders and Weigthsystems got a new Trash icon,
and the interface already intercepts the clicks ( on all
columns ) and send this to the 'remove' method on boch
models. On the model I'm just filtering the indexes that
are not 'DELETE' and creating a stub method to be filled
later.

Signed-off-by: Tomaz Canabrava <tcanabrava@kde.org>
This commit is contained in:
Tomaz Canabrava 2013-05-22 11:00:20 -03:00
parent 94ba79c0fe
commit 0b30c821ae
4 changed files with 63 additions and 4 deletions

View file

@ -38,18 +38,21 @@ private:
class CylindersModel : public QAbstractTableModel {
Q_OBJECT
public:
enum Column {TYPE, SIZE, MAXPRESS, START, END, O2, HE};
enum Column {REMOVE, TYPE, SIZE, MAXPRESS, START, END, O2, HE, COLUMNS};
explicit CylindersModel(QObject* parent = 0);
/*reimp*/ QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const;
/*reimp*/ int columnCount(const QModelIndex& parent = QModelIndex()) const;
/*reimp*/ QVariant data(const QModelIndex& index, int role = Qt::DisplayRole) const;
/*reimp*/ int rowCount(const QModelIndex& parent = QModelIndex()) const;
/*reimp*/ Qt::ItemFlags flags(const QModelIndex& index) const;
void add(cylinder_t *cyl);
void clear();
void update();
void setDive(struct dive *d);
public slots:
void remove(const QModelIndex& index);
private:
struct dive *current;
@ -61,16 +64,19 @@ private:
class WeightModel : public QAbstractTableModel {
Q_OBJECT
public:
enum Column {TYPE, WEIGHT};
enum Column {REMOVE, TYPE, WEIGHT, COLUMNS};
/*reimp*/ QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const;
/*reimp*/ int columnCount(const QModelIndex& parent = QModelIndex()) const;
/*reimp*/ QVariant data(const QModelIndex& index, int role = Qt::DisplayRole) const;
/*reimp*/ int rowCount(const QModelIndex& parent = QModelIndex()) const;
/*reimp*/ Qt::ItemFlags flags(const QModelIndex& index) const;
void add(weightsystem_t *weight);
void clear();
void update();
void setDive(struct dive *d);
public slots:
void remove(const QModelIndex& index);
private:
struct dive *current;