diff options
author | Dirk Hohndel <dirk@hohndel.org> | 2013-09-18 21:33:53 -0500 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2013-09-18 22:18:10 -0500 |
commit | 882b2c146b2dfc164c1dd2fadf606e92c77addd8 (patch) | |
tree | 24f07b6c0c1c8a2a5c5ef482d1a16f4456605290 /qt-ui | |
parent | 40462d5008de546d12038b3b062052e180b02930 (diff) | |
download | subsurface-882b2c146b2dfc164c1dd2fadf606e92c77addd8.tar.gz |
Use Planner dialog to add dive
Right now this is just calling the same code and setting a flag whether we
are planning or adding a dive.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'qt-ui')
-rw-r--r-- | qt-ui/diveplanner.cpp | 10 | ||||
-rw-r--r-- | qt-ui/diveplanner.h | 14 | ||||
-rw-r--r-- | qt-ui/mainwindow.cpp | 14 |
3 files changed, 24 insertions, 14 deletions
diff --git a/qt-ui/diveplanner.cpp b/qt-ui/diveplanner.cpp index ba578fed1..5356aa71f 100644 --- a/qt-ui/diveplanner.cpp +++ b/qt-ui/diveplanner.cpp @@ -894,6 +894,16 @@ void DivePlannerWidget::lastStopChanged(bool checked) plannerModel->setLastStop6m(checked); } +void DivePlannerPointsModel::setPlanMode(bool isPlan) +{ + mode = isPlan ? PLAN : ADD; +} + +bool DivePlannerPointsModel::isPlanner() +{ + return mode == PLAN; +} + int DivePlannerPointsModel::columnCount(const QModelIndex& parent) const { return COLUMNS; diff --git a/qt-ui/diveplanner.h b/qt-ui/diveplanner.h index 8dd8db3e3..2f7000a6d 100644 --- a/qt-ui/diveplanner.h +++ b/qt-ui/diveplanner.h @@ -29,9 +29,12 @@ public: 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; - virtual bool setData(const QModelIndex& index, const QVariant& value, int role = Qt::EditRole); - virtual Qt::ItemFlags flags(const QModelIndex& index) const; + virtual bool setData(const QModelIndex& index, const QVariant& value, int role = Qt::EditRole); + virtual Qt::ItemFlags flags(const QModelIndex& index) const; void removeSelectedPoints(const QVector<int>& rows); + enum Modes { PLAN, ADD }; + void setPlanMode(bool); + bool isPlanner(); /** * @return the row number. @@ -50,9 +53,9 @@ public slots: void setLastStop6m(bool value); void createPlan(); void remove(const QModelIndex& index); - void cancelPlan(); - void createTemporaryPlan(); - void deleteTemporaryPlan(); + void cancelPlan(); + void createTemporaryPlan(); + void deleteTemporaryPlan(); signals: void planCreated(); @@ -61,6 +64,7 @@ signals: private: explicit DivePlannerPointsModel(QObject* parent = 0); struct diveplan diveplan; + Modes mode; QVector<divedatapoint> divepoints; struct dive *tempDive; void deleteTemporaryPlan(struct divedatapoint *dp); diff --git a/qt-ui/mainwindow.cpp b/qt-ui/mainwindow.cpp index 8d6315d86..0b1f57ca9 100644 --- a/qt-ui/mainwindow.cpp +++ b/qt-ui/mainwindow.cpp @@ -209,6 +209,7 @@ void MainWindow::enableDcShortcuts() void MainWindow::on_actionDivePlanner_triggered() { disableDcShortcuts(); + DivePlannerPointsModel::instance()->setPlanMode(true); ui->stackedWidget->setCurrentIndex(1); ui->infoPane->setCurrentIndex(1); } @@ -254,15 +255,10 @@ void MainWindow::on_actionEditDeviceNames_triggered() void MainWindow::on_actionAddDive_triggered() { - struct dive *dive; - dive = alloc_dive(); - record_dive(dive); - process_dives(FALSE, FALSE); - - ui->InfoWidget->reload(); - ui->globe->reload(); - ui->ListWidget->reload(DiveTripModel::TREE); - ui->ListWidget->setFocus(); + disableDcShortcuts(); + DivePlannerPointsModel::instance()->setPlanMode(false); + ui->stackedWidget->setCurrentIndex(1); + ui->infoPane->setCurrentIndex(1); } void MainWindow::on_actionRenumber_triggered() |