summaryrefslogtreecommitdiffstats
path: root/qt-ui/profile
diff options
context:
space:
mode:
Diffstat (limited to 'qt-ui/profile')
-rw-r--r--qt-ui/profile/profilewidget2.cpp12
-rw-r--r--qt-ui/profile/profilewidget2.h3
2 files changed, 5 insertions, 10 deletions
diff --git a/qt-ui/profile/profilewidget2.cpp b/qt-ui/profile/profilewidget2.cpp
index 9e37f9559..5b190dfba 100644
--- a/qt-ui/profile/profilewidget2.cpp
+++ b/qt-ui/profile/profilewidget2.cpp
@@ -69,7 +69,6 @@ ProfileWidget2::ProfileWidget2(QWidget *parent) : QGraphicsView(parent),
backgroundFile(":poster"),
toolTipItem(new ToolTipItem()),
isPlotZoomed(prefs.zoomed_plot),
- forceReplot(false),
profileYAxis(new DepthAxis()),
gasYAxis(new PartialGasPressureAxis()),
temperatureAxis(new TemperatureAxis()),
@@ -254,8 +253,7 @@ void ProfileWidget2::setupItemOnScene()
void ProfileWidget2::replot()
{
dataModel->clear();
- forceReplot = true;
- plotDive(); // simply plot the displayed_dive again
+ plotDive(0, true); // simply plot the displayed_dive again
}
void ProfileWidget2::setupItemSizes()
@@ -354,7 +352,7 @@ void ProfileWidget2::setupSceneAndFlags()
}
// Currently just one dive, but the plan is to enable All of the selected dives.
-void ProfileWidget2::plotDive(struct dive *d)
+void ProfileWidget2::plotDive(struct dive *d, bool force)
{
static bool firstCall = true;
QTime measureDuration; // let's measure how long this takes us (maybe we'll turn of TTL calculation later
@@ -371,11 +369,9 @@ void ProfileWidget2::plotDive(struct dive *d)
// computer of the same dive, so we check the unique id of the dive
// and the selected dive computer number against the ones we are
// showing (can't compare the dive pointers as those might change).
- if (d->id == displayed_dive.id && dc_number == dataModel->dcShown() && !forceReplot)
+ if (d->id == displayed_dive.id && dc_number == dataModel->dcShown() && !force)
return;
- forceReplot = false;
-
// this copies the dive and makes copies of all the relevant additional data
copy_dive(d, &displayed_dive);
} else {
@@ -961,7 +957,7 @@ void ProfileWidget2::deleteCurrentDC()
delete_current_divecomputer();
mark_divelist_changed(true);
// we need to force it since it's likely the same dive and same dc_number - but that's a different dive computer now
- forceReplot = true;
+ MainWindow::instance()->graphics()->plotDive(0, true);
MainWindow::instance()->refreshDisplay();
}
diff --git a/qt-ui/profile/profilewidget2.h b/qt-ui/profile/profilewidget2.h
index 6ed132b38..2d9e921f0 100644
--- a/qt-ui/profile/profilewidget2.h
+++ b/qt-ui/profile/profilewidget2.h
@@ -67,7 +67,7 @@ public:
};
ProfileWidget2(QWidget *parent = 0);
- void plotDive(struct dive *d = 0);
+ void plotDive(struct dive *d = 0, bool force = false);
virtual bool eventFilter(QObject *, QEvent *);
void setupItem(AbstractProfilePolygonItem *item, DiveCartesianAxis *hAxis, DiveCartesianAxis *vAxis, DivePlotDataModel *model, int vData, int hData, int zValue);
void setPrintMode(bool mode, bool grayscale = false);
@@ -135,7 +135,6 @@ private:
QString backgroundFile;
ToolTipItem *toolTipItem;
bool isPlotZoomed;
- bool forceReplot;
// All those here should probably be merged into one structure,
// So it's esyer to replicate for more dives later.
// In the meantime, keep it here.