diff options
author | Berthold Stoeger <bstoeger@mail.tuwien.ac.at> | 2021-01-09 17:36:48 +0100 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2021-01-10 15:57:39 -0800 |
commit | 193513a61fc7fcfb31c1cb969f7fe05452abd67c (patch) | |
tree | f03f35cc5c5eb49c43e14d30cbe79ab7a82ada84 /profile-widget/diveprofileitem.h | |
parent | be9f9efb0eae6f09db4c61de7a5156b186dc2ad6 (diff) | |
download | subsurface-193513a61fc7fcfb31c1cb969f7fe05452abd67c.tar.gz |
profile: pass dive to plot function of profile-items
Instead of accessing the global displayed_dive variable,
pass the dive to the various profile items. This is a
step in making the profile code reentrant.
This removes the last user of the displayed_dc macro,
which can now be removed.
Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
Diffstat (limited to 'profile-widget/diveprofileitem.h')
-rw-r--r-- | profile-widget/diveprofileitem.h | 25 |
1 files changed, 13 insertions, 12 deletions
diff --git a/profile-widget/diveprofileitem.h b/profile-widget/diveprofileitem.h index 016d650a2..4d86714c1 100644 --- a/profile-widget/diveprofileitem.h +++ b/profile-widget/diveprofileitem.h @@ -28,6 +28,7 @@ class DiveTextItem; class DiveCartesianAxis; class QAbstractTableModel; struct plot_data; +struct dive; class AbstractProfilePolygonItem : public QObject, public QGraphicsPolygonItem { Q_OBJECT @@ -38,7 +39,7 @@ public: AbstractProfilePolygonItem(const DivePlotDataModel &model, const DiveCartesianAxis &hAxis, int hColumn, const DiveCartesianAxis &vAxis, int vColumn); virtual void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = 0) = 0; void clear(); - virtual void replot(); + virtual void replot(const dive *d); public slots: void setVisible(bool visible); @@ -67,7 +68,7 @@ class DiveProfileItem : public AbstractProfilePolygonItem { public: DiveProfileItem(const DivePlotDataModel &model, const DiveCartesianAxis &hAxis, int hColumn, const DiveCartesianAxis &vAxis, int vColumn); void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = 0) override; - void replot() override; + void replot(const dive *d) override; void plot_depth_sample(struct plot_data *entry, QFlags<Qt::AlignmentFlag> flags, const QColor &color); int maxCeiling(int row); @@ -81,7 +82,7 @@ class DiveMeanDepthItem : public AbstractProfilePolygonItem { Q_OBJECT public: DiveMeanDepthItem(const DivePlotDataModel &model, const DiveCartesianAxis &hAxis, int hColumn, const DiveCartesianAxis &vAxis, int vColumn); - void replot() override; + void replot(const dive *d) override; void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = 0) override; private: @@ -94,7 +95,7 @@ class DiveTemperatureItem : public AbstractProfilePolygonItem { Q_OBJECT public: DiveTemperatureItem(const DivePlotDataModel &model, const DiveCartesianAxis &hAxis, int hColumn, const DiveCartesianAxis &vAxis, int vColumn); - void replot() override; + void replot(const dive *d) override; void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = 0) override; private: @@ -105,7 +106,7 @@ class DiveHeartrateItem : public AbstractProfilePolygonItem { Q_OBJECT public: DiveHeartrateItem(const DivePlotDataModel &model, const DiveCartesianAxis &hAxis, int hColumn, const DiveCartesianAxis &vAxis, int vColumn); - void replot() override; + void replot(const dive *d) override; void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) override; private: @@ -117,7 +118,7 @@ class DivePercentageItem : public AbstractProfilePolygonItem { Q_OBJECT public: DivePercentageItem(const DivePlotDataModel &model, const DiveCartesianAxis &hAxis, int hColumn, const DiveCartesianAxis &vAxis, int vColumn, int i); - void replot() override; + void replot(const dive *d) override; void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) override; private: @@ -132,7 +133,7 @@ class DiveAmbPressureItem : public AbstractProfilePolygonItem { Q_OBJECT public: DiveAmbPressureItem(const DivePlotDataModel &model, const DiveCartesianAxis &hAxis, int hColumn, const DiveCartesianAxis &vAxis, int vColumn); - void replot() override; + void replot(const dive *d) override; void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) override; private: @@ -143,7 +144,7 @@ class DiveGFLineItem : public AbstractProfilePolygonItem { Q_OBJECT public: DiveGFLineItem(const DivePlotDataModel &model, const DiveCartesianAxis &hAxis, int hColumn, const DiveCartesianAxis &vAxis, int vColumn); - void replot() override; + void replot(const dive *d) override; void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) override; private: @@ -155,7 +156,7 @@ class DiveGasPressureItem : public AbstractProfilePolygonItem { public: using AbstractProfilePolygonItem::AbstractProfilePolygonItem; - void replot() override; + void replot(const dive *d) override; void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = 0) override; private: @@ -174,7 +175,7 @@ class DiveCalculatedCeiling : public AbstractProfilePolygonItem { public: DiveCalculatedCeiling(const DivePlotDataModel &model, const DiveCartesianAxis &hAxis, int hColumn, const DiveCartesianAxis &vAxis, int vColumn, ProfileWidget2 *profileWidget); - void replot() override; + void replot(const dive *d) override; void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = 0) override; private: @@ -186,7 +187,7 @@ class DiveReportedCeiling : public AbstractProfilePolygonItem { public: DiveReportedCeiling(const DivePlotDataModel &model, const DiveCartesianAxis &hAxis, int hColumn, const DiveCartesianAxis &vAxis, int vColumn); - void replot() override; + void replot(const dive *d) override; void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = 0) override; }; @@ -203,7 +204,7 @@ class PartialPressureGasItem : public AbstractProfilePolygonItem { public: PartialPressureGasItem(const DivePlotDataModel &model, const DiveCartesianAxis &hAxis, int hColumn, const DiveCartesianAxis &vAxis, int vColumn); void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = 0) override; - void replot() override; + void replot(const dive *d) override; void setThresholdSettingsKey(const double *prefPointerMin, const double *prefPointerMax); void setVisibilitySettingsKey(const QString &setVisibilitySettingsKey); void setColors(const QColor &normalColor, const QColor &alertColor); |