Skip to content

Commit

Permalink
Overview Zone tile refresh
Browse files Browse the repository at this point in the history
.. updates when config changes, not just at restart.
  • Loading branch information
liversedge committed Aug 17, 2021
1 parent d7ae561 commit 0d2310e
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 9 deletions.
23 changes: 20 additions & 3 deletions src/Charts/OverviewItems.cpp
Expand Up @@ -606,10 +606,29 @@ ZoneOverviewItem::ZoneOverviewItem(ChartSpace *parent, QString name, RideFile::s
// we have a mid sized font for chart labels etc
chart->setFont(parent->midfont);

configwidget = new OverviewItemConfig(this);
configwidget->hide();

barset = NULL;
barseries = NULL;
barcategoryaxis = NULL;

// setup
configChanged(0);
}

void
ZoneOverviewItem::configChanged(qint32)
{
if (barcategoryaxis) delete barcategoryaxis;
if (barset) delete barset;
if (barseries) delete barseries;

// needs a set of bars
barset = new QBarSet(tr("Time In Zone"), this);
barset->setLabelFont(parent->midfont);

// config changed...
if (series == RideFile::hr) {
barset->setLabelColor(GColor(CHEARTRATE));
barset->setBorderColor(GColor(CHEARTRATE));
Expand All @@ -628,6 +647,7 @@ ZoneOverviewItem::ZoneOverviewItem(ChartSpace *parent, QString name, RideFile::s
barset->setBrush(GColor(CSPEED));
}

categories.clear();

//
// HEARTRATE
Expand Down Expand Up @@ -702,9 +722,6 @@ ZoneOverviewItem::ZoneOverviewItem(ChartSpace *parent, QString name, RideFile::s
chart->axisY(barseries)->setRange(0,100);
chart->axisY(barseries)->setGridLineVisible(false);

configwidget = new OverviewItemConfig(this);
configwidget->hide();

}

ZoneOverviewItem::~ZoneOverviewItem()
Expand Down
13 changes: 7 additions & 6 deletions src/Charts/OverviewItems.h
Expand Up @@ -385,16 +385,17 @@ class ZoneOverviewItem : public ChartSpaceItem
ZoneOverviewItem(ChartSpace *parent, QString name, RideFile::seriestype, bool polarized);
~ZoneOverviewItem();

void itemPaint(QPainter *painter, const QStyleOptionGraphicsItem *, QWidget *);
void itemGeometryChanged();
void setData(RideItem *item);
void setDateRange(DateRange);
void dragChanged(bool x);
void itemPaint(QPainter *painter, const QStyleOptionGraphicsItem *, QWidget *) override;
void itemGeometryChanged() override;
void setData(RideItem *item) override;
void setDateRange(DateRange) override;
void dragChanged(bool x) override;

QWidget *config() { return configwidget; }
QWidget *config() override { return configwidget; }

// create and config
static ChartSpaceItem *create(ChartSpace *parent) { return new ZoneOverviewItem(parent, tr("Power Zones"), RideFile::watts, false); }
void configChanged(qint32) override;

RideFile::seriestype series;
bool polarized;
Expand Down

0 comments on commit 0d2310e

Please sign in to comment.