From 1a7fb5d2cc33d2712497ca5525ff34c0e3d94dc6 Mon Sep 17 00:00:00 2001 From: Markus Deibel Date: Fri, 27 Mar 2020 06:49:16 +0100 Subject: [PATCH] Minor tweaks --- apps/wohrm/app.js | 125 ++++++++++++++++++++++++++-------------------- 1 file changed, 70 insertions(+), 55 deletions(-) diff --git a/apps/wohrm/app.js b/apps/wohrm/app.js index 5a9264f0b..75c51a578 100644 --- a/apps/wohrm/app.js +++ b/apps/wohrm/app.js @@ -23,6 +23,56 @@ let hrOrConfidenceChanged = true; let setterHighlightTimeout; +function renderUpperLimitBackground() { + g.setColor(1,0,0); + g.fillRect(125,40, 210, 70); + g.fillRect(180,70, 210, 200); + + //Round top left corner + g.fillEllipse(115,40,135,70); + + //Round top right corner + g.setColor(0,0,0); + g.fillRect(205,40, 210, 45); + g.setColor(1,0,0); + g.fillEllipse(190,40,210,50); + + //Round inner corner + g.fillRect(174,71, 179, 76); + g.setColor(0,0,0); + g.fillEllipse(160,71,179,82); + + //Round bottom + g.setColor(1,0,0); + g.fillEllipse(180,190, 210, 210); +} + +function renderLowerLimitBackground() { + g.setColor(0,0,1); + g.fillRect(10, 180, 100, 210); + g.fillRect(10, 50, 40, 180); + + //Rounded top + g.setColor(0,0,1); + g.fillEllipse(10,40, 40, 60); + + //Round bottom right corner + g.setColor(0,0,1); + g.fillEllipse(90,180,110,210); + + //Round inner corner + g.setColor(0,0,1); + g.fillRect(40,175,45,180); + g.setColor(0,0,0); + g.fillEllipse(41,170,60,179); + + //Round bottom left corner + g.setColor(0,0,0); + g.fillRect(10,205, 15, 210); + g.setColor(0,0,1); + g.fillEllipse(10,200,30,210); +} + function drawTrainingHeartRate() { //Only redraw if the display is on if (Bangle.isLCDOn()) { @@ -37,40 +87,21 @@ function drawTrainingHeartRate() { renderConfidenceBars(); } - buzz(); + //buzz(); } function renderUpperLimit() { if(!upperLimitChanged) { return; } - g.setColor(255,0,0); + g.setColor(1,0,0); g.fillRect(125,40, 210, 70); - g.fillRect(180,70, 210, 200); - - //Round top left corner - g.fillEllipse(115,40,135,70); - - //Round top right corner - g.setColor(0,0,0); - g.fillRect(205,40, 210, 45); - g.setColor(255,0,0); - g.fillEllipse(190,40,210,50); - - //Round inner corner - g.fillRect(174,71, 179, 76); - g.setColor(0,0,0); - g.fillEllipse(160,71,179,82); - - //Round bottom - g.setColor(255,0,0); - g.fillEllipse(180,190, 210, 210); - + if(limitSetter === Setter.UPPER){ g.setColor(255,255, 0); } else { g.setColor(255,255,255); } - g.setFontVector(10); + g.setFontVector(13); g.drawString("Upper : " + upperLimit, 130,50); upperLimitChanged = false; @@ -80,13 +111,12 @@ function renderCurrentHeartRate() { if(!hrOrConfidenceChanged) { return; } g.setColor(255,255,255); - g.fillRect(45, 110, 165, 140); - g.setColor(0,0,0); - g.setFontVector(13); + g.fillRect(45, 110, 165, 150); - g.drawString("Current:" , 65,117); + g.setColor(0,0,0); + g.setFontVector(24); g.setFontAlign(1, -1, 0); - g.drawString(currentHeartRate, 155, 117); + g.drawString(currentHeartRate, 130, 117); //Reset alignment to defaults g.setFontAlign(-1, -1, 0); @@ -95,36 +125,15 @@ function renderCurrentHeartRate() { function renderLowerLimit() { if(!lowerLimitChanged) { return; } - g.setColor(0,0,255); + g.setColor(0,0,1); g.fillRect(10, 180, 100, 210); - g.fillRect(10, 50, 40, 180); - - //Rounded top - g.setColor(0,0,255); - g.fillEllipse(10,40, 40, 60); - - //Round bottom right corner - g.setColor(0,0,255); - g.fillEllipse(90,180,110,210); - - //Round inner corner - g.setColor(0,0,255); - g.fillRect(40,175,45,180); - g.setColor(0,0,0); - g.fillEllipse(41,170,60,179); - - //Round bottom left corner - g.setColor(0,0,0); - g.fillRect(10,205, 15, 210); - g.setColor(0,0,255); - g.fillEllipse(10,200,30,210); - + if(limitSetter === Setter.LOWER){ g.setColor(255,255, 0); } else { g.setColor(255,255,255); } - g.setFontVector(10); + g.setFontVector(13); g.drawString("Lower : " + lowerLimit, 20,190); lowerLimitChanged = false; @@ -143,8 +152,8 @@ function renderConfidenceBars(){ g.setColor(255, 255, 255); } - g.fillRect(45, 110, 55, 140); - g.fillRect(165, 110, 175, 140); + g.fillRect(45, 110, 55, 150); + g.fillRect(165, 110, 175, 150); } function renderButtonIcons() { @@ -276,6 +285,10 @@ Bangle.on('lcdPower', (on) => { if (on) { Bangle.drawWidgets(); // call your app function here + renderLowerLimitBackground(); + renderUpperLimitBackground(); + lowerLimitChanged = true; + upperLimitChanged = true; drawTrainingHeartRate(); } }); @@ -292,7 +305,9 @@ setWatch(setLimitSetterToUpper, BTN5, { edge: "rising", debounce: 50, repeat: tr g.clear(); Bangle.loadWidgets(); Bangle.drawWidgets(); -drawTrainingHeartRate(); +//drawTrainingHeartRate(); // refesh every sec +renderLowerLimitBackground(); +renderUpperLimitBackground(); setInterval(drawTrainingHeartRate, 1000);