mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
Show the calculated deco stops in the planner table
Signed-off-by: Robert C. Helling <helling@atdotde.de> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
d054e8c457
commit
7d42b53bba
2 changed files with 23 additions and 0 deletions
|
@ -769,6 +769,27 @@ void DivePlannerPointsModel::clear()
|
|||
CylindersModel::instance()->clear();
|
||||
}
|
||||
|
||||
void DivePlannerPointsModel::addDecoToModel()
|
||||
{
|
||||
struct divedatapoint *dp;
|
||||
|
||||
bool oldRecalc = plannerModel->setRecalc(false);
|
||||
plannerModel->removeDeco();
|
||||
|
||||
unsigned int lastdepth = 0;
|
||||
for (dp = diveplan.dp; dp != NULL; dp = dp->next) {
|
||||
if (dp->time == 0) // magic entry for available tank
|
||||
continue;
|
||||
if (!dp->entered) {
|
||||
if (dp->depth) {
|
||||
if (dp->depth == lastdepth || dp->o2 != dp->next->o2 || dp->he != dp->next->he)
|
||||
plannerModel->addStop(dp->depth, dp->time, dp->next->o2, dp->next->he, 0, false);
|
||||
lastdepth = dp->depth;
|
||||
}
|
||||
}
|
||||
}
|
||||
plannerModel->setRecalc(oldRecalc);
|
||||
}
|
||||
|
||||
void DivePlannerPointsModel::createTemporaryPlan()
|
||||
{
|
||||
|
@ -809,6 +830,7 @@ void DivePlannerPointsModel::createTemporaryPlan()
|
|||
#endif
|
||||
if (plannerModel->recalcQ()) {
|
||||
plan(&diveplan, &cache, &tempDive, stagingDive, isPlanner());
|
||||
addDecoToModel();
|
||||
if (mode == ADD || mode == PLAN) {
|
||||
// copy the samples and events, but don't overwrite the cylinders
|
||||
copy_samples(tempDive, current_dive);
|
||||
|
|
|
@ -99,6 +99,7 @@ private:
|
|||
QVector<sample> backupSamples; // For editing added dives.
|
||||
struct dive *stagingDive;
|
||||
QVector<QPair<int, int> > oldGases;
|
||||
void addDecoToModel();
|
||||
};
|
||||
|
||||
class DiveHandler : public QObject, public QGraphicsEllipseItem {
|
||||
|
|
Loading…
Add table
Reference in a new issue