If you re-initialise (1) the meter using MeterWidget::analogMeter method then it doesn't draw the needle - expected to be at zero (2). The reason is the value old_analog is only set in the constructor after which it gets updated to the value of the needle. If that's zero the needle draw function is skipped as there is no change in needle value.
The solution is to initialise old_analog to -999 in the analogMeter method.
- it's quite cool; you can place a number of meters on the same display location and step through them with buttons or gestures.
- I think there's a case for an initial needle value for the analogMeter method.
If you re-initialise (1) the meter using MeterWidget::analogMeter method then it doesn't draw the needle - expected to be at zero (2). The reason is the value old_analog is only set in the constructor after which it gets updated to the value of the needle. If that's zero the needle draw function is skipped as there is no change in needle value.
The solution is to initialise old_analog to -999 in the analogMeter method.