blob: eeea0b82c6d72d3c5fd9b83d3af1dfdfcfb6a1d9 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
#ifndef DIVEIMPORTEDMODEL_H
#define DIVEIMPORTEDMODEL_H
#include <QAbstractTableModel>
class DiveImportedModel : public QAbstractTableModel
{
Q_OBJECT
public:
enum roleTypes { DateTime = Qt::UserRole + 1, Duration, Depth, Selected};
DiveImportedModel(QObject *parent = 0);
void setDiveTable(struct dive_table *table);
int columnCount(const QModelIndex& index = QModelIndex()) const;
int rowCount(const QModelIndex& index = QModelIndex()) const;
QVariant data(const QModelIndex& index, int role) const;
QVariant headerData(int section, Qt::Orientation orientation, int role) const;
void setImportedDivesIndexes(int first, int last);
Qt::ItemFlags flags(const QModelIndex &index) const;
Q_INVOKABLE void clearTable();
QHash<int, QByteArray> roleNames() const;
Q_INVOKABLE void repopulate();
Q_INVOKABLE void recordDives();
public
slots:
void changeSelected(QModelIndex clickedIndex);
void selectRow(int row);
void selectAll();
void selectNone();
private:
int firstIndex;
int lastIndex;
bool *checkStates;
struct dive_table *diveTable;
};
#endif
|