diff options
author | Tomaz Canabrava <tomaz.canabrava@intel.com> | 2014-05-25 17:49:26 -0300 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2014-05-26 13:18:53 -0700 |
commit | eec0b327a3bb5f2d27594693d79a5bc86439c1e2 (patch) | |
tree | 3287cc269fd8b4ff547ccc6220a1d69c308eb94c | |
parent | 9b9abd5f2a93b6155df6663b4b1577408e1acc56 (diff) | |
download | subsurface-eec0b327a3bb5f2d27594693d79a5bc86439c1e2.tar.gz |
Make the planner show something.
This is working in the wrong way, mostly because I'm setting the
plannermodel to ADD state ( and the planner graphic to the
correct PLAN state ), but I don't know why - when on PLAN state
on the model, things just don't work.
Signed-off-by: Tomaz Canabrava <tomaz.canabrava@intel.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
-rw-r--r-- | qt-ui/mainwindow.cpp | 19 | ||||
-rw-r--r-- | qt-ui/profile/profilewidget2.cpp | 4 |
2 files changed, 16 insertions, 7 deletions
diff --git a/qt-ui/mainwindow.cpp b/qt-ui/mainwindow.cpp index 827401a58..ac02527cb 100644 --- a/qt-ui/mainwindow.cpp +++ b/qt-ui/mainwindow.cpp @@ -383,18 +383,19 @@ void MainWindow::createFakeDiveForAddAndPlan() ui.InfoWidget->updateDiveInfo(selected_dive); } - void MainWindow::on_actionDivePlanner_triggered() { - if (!plannerStateClean()) + if(!plannerStateClean()) return; - int i; - struct dive *dive; + dive_list()->rememberSelection(); + dive_list()->unselectDives(); - DivePlannerPointsModel::instance()->setPlanMode(DivePlannerPointsModel::PLAN); + DivePlannerPointsModel::instance()->setPlanMode(DivePlannerPointsModel::ADD); DivePlannerPointsModel::instance()->clear(); CylindersModel::instance()->clear(); + int i; + struct dive *dive; for_each_dive (i, dive) { if (dive->selected) { DivePlannerPointsModel::instance()->copyCylindersFrom(dive); @@ -402,8 +403,16 @@ void MainWindow::on_actionDivePlanner_triggered() break; } } + createFakeDiveForAddAndPlan(); + + ui.InfoWidget->setCurrentIndex(0); + ui.infoPane->setCurrentIndex(MAINTAB); + ui.newProfile->setPlanState(); ui.infoPane->setCurrentIndex(PLANNERWIDGET); + DivePlannerPointsModel::instance()->clear(); + DivePlannerPointsModel::instance()->createSimpleDive(); + ui.ListWidget->reload(DiveTripModel::CURRENT); } void MainWindow::on_actionAddDive_triggered() diff --git a/qt-ui/profile/profilewidget2.cpp b/qt-ui/profile/profilewidget2.cpp index c3e010c83..28a07404f 100644 --- a/qt-ui/profile/profilewidget2.cpp +++ b/qt-ui/profile/profilewidget2.cpp @@ -363,7 +363,7 @@ void ProfileWidget2::plotDives(QList<dive *> dives) //TODO: This is a temporary hack to help me understand the Planner. // It seems that each time the 'createTemporaryPlan' runs, a new // dive is created, and thus, we can plot that. hm... - if (currentState == ADD) { + if (currentState == ADD || currentState == PLAN) { DivePlannerPointsModel *plannerModel = DivePlannerPointsModel::instance(); plannerModel->createTemporaryPlan(); if (!plannerModel->getDiveplan().dp) { @@ -509,7 +509,7 @@ void ProfileWidget2::plotDives(QList<dive *> dives) prefs.animation = animSpeedBackup; } - if (currentState == ADD) { // TODO: figure a way to move this from here. + if (currentState == ADD || currentState == PLAN) { // TODO: figure a way to move this from here. repositionDiveHandlers(); DivePlannerPointsModel *model = DivePlannerPointsModel::instance(); model->deleteTemporaryPlan(); |