diff options
author | Robert C. Helling <helling@atdotde.de> | 2015-01-30 11:16:55 +0100 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2015-01-31 14:09:50 -0800 |
commit | 1e45858ee6e40da932be301e39d3fced6b393490 (patch) | |
tree | a745c1ef7cd8a10c7187a8fa34a80a58301439c4 | |
parent | c70ba77199ce87322402f976230402e39f6c133f (diff) | |
download | subsurface-1e45858ee6e40da932be301e39d3fced6b393490.tar.gz |
Update ceiling when changing dive mode
Without this patch, the user effectively cannot change the dive mode as
any change is overwritten by replot copying current_dive over
displayed_dive. The way out is not to call replot but only update the deco
ceiling directly.
Signed-off-by: Robert C. Helling <helling@atdotde.de>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
-rw-r--r-- | qt-ui/maintab.cpp | 2 | ||||
-rw-r--r-- | qt-ui/profile/profilewidget2.cpp | 5 | ||||
-rw-r--r-- | qt-ui/profile/profilewidget2.h | 1 |
3 files changed, 7 insertions, 1 deletions
diff --git a/qt-ui/maintab.cpp b/qt-ui/maintab.cpp index 5fc0eb0ad..7335711e9 100644 --- a/qt-ui/maintab.cpp +++ b/qt-ui/maintab.cpp @@ -1018,7 +1018,7 @@ void MainTab::divetype_Changed(int index) displayed_dive.dc.divemode = (enum dive_comp_type) index; update_setpoint_events(&displayed_dive.dc); markChangedWidget(ui.DiveType); - MainWindow::instance()->graphics()->replot(); + MainWindow::instance()->graphics()->recalcCeiling(); } void MainTab::on_watertemp_textChanged(const QString &text) diff --git a/qt-ui/profile/profilewidget2.cpp b/qt-ui/profile/profilewidget2.cpp index 57c89b99f..db3d0be35 100644 --- a/qt-ui/profile/profilewidget2.cpp +++ b/qt-ui/profile/profilewidget2.cpp @@ -648,6 +648,11 @@ void ProfileWidget2::plotDive(struct dive *d, bool force) } } +void ProfileWidget2::recalcCeiling() +{ + diveCeiling->recalc(); +} + void ProfileWidget2::settingsChanged() { // if we are showing calculated ceilings then we have to replot() diff --git a/qt-ui/profile/profilewidget2.h b/qt-ui/profile/profilewidget2.h index abcf9fd23..a25780c7e 100644 --- a/qt-ui/profile/profilewidget2.h +++ b/qt-ui/profile/profilewidget2.h @@ -82,6 +82,7 @@ public: double getFontPrintScale(); void setFontPrintScale(double scale); void clearHandlers(); + void recalcCeiling(); void setToolTipVisibile(bool visible); State currentState; |