diff options
-rw-r--r-- | qt-ui/diveplanner.cpp | 41 | ||||
-rw-r--r-- | qt-ui/diveplanner.h | 14 |
2 files changed, 55 insertions, 0 deletions
diff --git a/qt-ui/diveplanner.cpp b/qt-ui/diveplanner.cpp index c6f9e23d6..61ca64b34 100644 --- a/qt-ui/diveplanner.cpp +++ b/qt-ui/diveplanner.cpp @@ -792,4 +792,45 @@ void Button::mousePressEvent(QGraphicsSceneMouseEvent* event) DivePlannerWidget::DivePlannerWidget(QWidget* parent, Qt::WindowFlags f): QWidget(parent, f), ui(new Ui::DivePlanner()) { ui->setupUi(this); + ui->tablePoints->setModel(DivePlannerPointsModel::instance()); } + +int DivePlannerPointsModel::columnCount(const QModelIndex& parent) const +{ + return COLUMNS; +} + +QVariant DivePlannerPointsModel::data(const QModelIndex& index, int role) const +{ + return QVariant(); +} + +QVariant DivePlannerPointsModel::headerData(int section, Qt::Orientation orientation, int role) const +{ + if (role == Qt::DisplayRole){ + switch(section){ + case DEPTH: return tr("Final Depth"); + case DURATION: return tr("Duration"); + case GAS: return tr("Used Gas"); + case CCSETPOINT: return tr("CC Set Point"); + } + } + return QVariant(); +} + +int DivePlannerPointsModel::rowCount(const QModelIndex& parent) const +{ + return 0; +} + +DivePlannerPointsModel::DivePlannerPointsModel(QObject* parent): QAbstractTableModel(parent) +{ + +} + +DivePlannerPointsModel* DivePlannerPointsModel::instance() +{ + static DivePlannerPointsModel* self = new DivePlannerPointsModel(); + return self; +} + diff --git a/qt-ui/diveplanner.h b/qt-ui/diveplanner.h index 03e4d2bbe..dad13cd05 100644 --- a/qt-ui/diveplanner.h +++ b/qt-ui/diveplanner.h @@ -4,6 +4,7 @@ #include <QGraphicsView> #include <QGraphicsPathItem> #include <QDialog> +#include <QAbstractTableModel> namespace Ui{ class DivePlanner; @@ -13,6 +14,19 @@ class QListView; class QStringListModel; class QModelIndex; +class DivePlannerPointsModel : public QAbstractTableModel{ + Q_OBJECT +public: + static DivePlannerPointsModel* instance(); + enum Sections{DEPTH, DURATION, GAS, CCSETPOINT, COLUMNS}; + virtual int columnCount(const QModelIndex& parent = QModelIndex()) const; + virtual QVariant data(const QModelIndex& index, int role = Qt::DisplayRole) const; + virtual int rowCount(const QModelIndex& parent = QModelIndex()) const; + virtual QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const; +private: + explicit DivePlannerPointsModel(QObject* parent = 0); +}; + class Button : public QObject, public QGraphicsRectItem { Q_OBJECT public: |