profile: turn static into member variable

When the settings change, the depth axis is redrawn
to reflect metric/imperial units. To check whether the
units changed, the old length unit is saved in a static
variable. This makes no sense and allows for only one
depth axis. Make this a normal member variable that is
initialized in the constructor.

Also remove the settingsChanged() call in the constructor,
since this is a no-op (the depth unit is unchanged).

Contains a whitespace fix.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
This commit is contained in:
Berthold Stoeger 2020-12-24 19:13:16 +01:00 committed by Dirk Hohndel
parent 9c0b6436fd
commit e61466e178
2 changed files with 4 additions and 4 deletions

View file

@ -361,17 +361,16 @@ QColor DepthAxis::colorForValue(double) const
return QColor(Qt::red);
}
DepthAxis::DepthAxis(ProfileWidget2 *widget) : DiveCartesianAxis(widget)
DepthAxis::DepthAxis(ProfileWidget2 *widget) : DiveCartesianAxis(widget),
unitSystem(prefs.units.length)
{
connect(&diveListNotifier, &DiveListNotifier::settingsChanged, this, &DepthAxis::settingsChanged);
changed = true;
settingsChanged();
}
void DepthAxis::settingsChanged()
{
static int unitSystem = prefs.units.length;
if ( unitSystem == prefs.units.length )
if (unitSystem == prefs.units.length)
return;
changed = true;
updateTicks();

View file

@ -84,6 +84,7 @@ public:
private:
QString textForValue(double value) const override;
QColor colorForValue(double value) const override;
int unitSystem;
private
slots:
void settingsChanged();