Commit 31c23b076606514d46de1da86583d81b4a464238

Authored by Igor Kulikov
Committed by GitHub
2 parents b922e070 71676260

Merge pull request #870 from Terny22/digital-gauge-issues

fixed issues in updating digital-value with progress-bar-animation
... ... @@ -204,8 +204,13 @@ export default class CanvasDigitalGauge extends canvasGauges.BaseGauge {
204 204 }
205 205
206 206 var valueChanged = false;
207   -
208   - if (!this.elementValueClone.initialized || this.elementValueClone.renderedValue !== this.value || (options.showTimestamp && this.elementValueClone.renderedTimestamp !== this.timestamp)) {
  207 + if (!this.elementValueClone.initialized || angular.isDefined(this._value) && this.elementValueClone.renderedValue !== this._value || (options.showTimestamp && this.elementValueClone.renderedTimestamp !== this.timestamp)) {
  208 + if (angular.isDefined(this._value)) {
  209 + this.elementValueClone.renderedValue = this._value;
  210 + }
  211 + if (angular.isUndefined(this.elementValueClone.renderedValue)) {
  212 + this.elementValueClone.renderedValue = options.minValue;
  213 + }
209 214 let context = this.contextValueClone;
210 215 // clear the cache
211 216 context.clearRect(x, y, w, h);
... ... @@ -214,7 +219,7 @@ export default class CanvasDigitalGauge extends canvasGauges.BaseGauge {
214 219 context.drawImage(canvas.elementClone, x, y, w, h);
215 220 context.save();
216 221
217   - drawDigitalValue(context, options, this.value);
  222 + drawDigitalValue(context, options, this.elementValueClone.renderedValue);
218 223
219 224 if (options.showTimestamp) {
220 225 drawDigitalLabel(context, options);
... ... @@ -222,7 +227,6 @@ export default class CanvasDigitalGauge extends canvasGauges.BaseGauge {
222 227 }
223 228
224 229 this.elementValueClone.initialized = true;
225   - this.elementValueClone.renderedValue = this.value;
226 230
227 231 valueChanged = true;
228 232 }
... ...
... ... @@ -70,6 +70,10 @@ export default class TbCanvasDigitalGauge {
70 70 (settings.title && settings.title.length > 0 ?
71 71 settings.title : dataKey.label) : '');
72 72
  73 + if (!this.localSettings.unitTitle && this.localSettings.showTimestamp) {
  74 + this.localSettings.unitTitle = ' ';
  75 + }
  76 +
73 77 this.localSettings.titleFont = {};
74 78 var settingsTitleFont = settings.titleFont;
75 79 if (!settingsTitleFont) {
... ... @@ -206,6 +210,7 @@ export default class TbCanvasDigitalGauge {
206 210 var value = tvPair[1];
207 211 if(value !== this.gauge.value) {
208 212 this.gauge.value = value;
  213 + this.gauge._value = value;
209 214 } else if (this.localSettings.showTimestamp && this.gauge.timestamp != timestamp) {
210 215 this.gauge.timestamp = timestamp;
211 216 }
... ...