Removed debug outputs, fixed rendering for upper limit, improved rendering for +/- icons, changelog version order fixed

pull/224/head
msdeibel 2020-04-04 16:31:41 +02:00
parent d4ab3c075d
commit 72d389e1da
3 changed files with 73 additions and 67 deletions

View File

@ -867,7 +867,7 @@
{ "id": "wohrm",
"name": "Workout HRM",
"icon": "app.png",
"version":"0.05",
"version":"0.06",
"description": "Workout heart rate monitor notifies you with a buzz if your heart rate goes above or below the set limits.",
"tags": "hrm,workout",
"type": "app",

View File

@ -1,5 +1,6 @@
0.05: Improved buzz timing and rendering
0.04: Only buzz on high confidence (>85%)
0.03: Optimized rendering for the background
0.02: Adapted to new App code layout
0.01: Only tested on the emulator.
0.02: Adapted to new App code layout
0.03: Optimized rendering for the background
0.04: Only buzz on high confidence (>85%)
0.05: Improved buzz timing and rendering
0.06: Removed debug outputs, fixed rendering for upper limit, improved rendering for +/- icons, changelog version order fixed

View File

@ -1,8 +1,8 @@
/* eslint-disable no-undef */
const Setter = {
NONE: "none",
UPPER: 'upper',
LOWER: 'lower'
NONE: "none",
UPPER: 'upper',
LOWER: 'lower'
};
const shortBuzzTimeInMs = 80;
@ -100,7 +100,7 @@ function renderUpperLimit() {
g.setColor(255,255,255);
}
g.setFontVector(13);
g.drawString("Upper : " + upperLimit, 130,50);
g.drawString("Upper: " + upperLimit, 125, 50);
upperLimitChanged = false;
}
@ -134,7 +134,7 @@ function renderLowerLimit() {
g.setColor(255,255,255);
}
g.setFontVector(13);
g.drawString("Lower : " + lowerLimit, 20,190);
g.drawString("Lower: " + lowerLimit, 20,190);
lowerLimitChanged = false;
}
@ -158,38 +158,47 @@ function renderConfidenceBars(){
confidenceChanged = false;
}
function renderButtonIcons() {
g.setColor(255,255,255);
function renderPlusMinusIcons() {
if (limitSetter === Setter.NONE) {
g.setColor(0, 0, 0);
} else {
g.setColor(1, 1, 1);
}
g.setFontVector(14);
//+ for Btn1
g.drawString("+", 222,50);
g.drawString("+", 222, 50);
//- for Btn3
g.drawString("-", 222,165);
return;
}
function renderHomeIcon() {
//Home for Btn2
g.setColor(1, 1, 1);
g.drawLine(220, 118, 227, 110);
g.drawLine(227, 110, 234, 118);
g.drawPoly([222,117,222,125,232,125,232,117], false);
g.drawRect(226,120,229,125);
//- for Btn3
g.drawString("-", 222,165);
}
function buzz()
{
function buzz() {
// Do not buzz if not confident
if(hrConfidence < 85) { return; }
if(currentHeartRate > upperLimit)
{
Bangle.buzz(shortBuzzTimeInMs);
setTimeout(() => { Bangle.buzz(shortBuzzTimeInMs); }, shortBuzzTimeInMs * 2);
Bangle.buzz(shortBuzzTimeInMs);
setTimeout(() => { Bangle.buzz(shortBuzzTimeInMs); }, shortBuzzTimeInMs * 2);
}
if(currentHeartRate < lowerLimit)
{
Bangle.buzz(longBuzzTimeInMs);
Bangle.buzz(longBuzzTimeInMs);
}
}
@ -209,51 +218,49 @@ function setLimitSetterToLower() {
resetHighlightTimeout();
limitSetter = Setter.LOWER;
console.log("Limit setter is lower");
upperLimitChanged = true;
lowerLimitChanged = true;
renderUpperLimit();
renderLowerLimit();
renderPlusMinusIcons();
}
function setLimitSetterToUpper() {
resetHighlightTimeout();
limitSetter = Setter.UPPER;
console.log("Limit setter is upper");
upperLimitChanged = true;
lowerLimitChanged = true;
renderLowerLimit();
renderUpperLimit();
renderPlusMinusIcons();
}
function setLimitSetterToNone() {
limitSetter = Setter.NONE;
console.log("Limit setter is none");
upperLimitChanged = true;
lowerLimitChanged = true;
renderLowerLimit();
renderUpperLimit();
renderPlusMinusIcons();
}
function incrementLimit(){
function incrementLimit() {
resetHighlightTimeout();
if (limitSetter === Setter.UPPER) {
upperLimit++;
renderUpperLimit();
console.log("Upper limit: " + upperLimit);
upperLimitChanged = true;
} else if(limitSetter === Setter.LOWER) {
lowerLimit++;
renderLowerLimit();
console.log("Lower limit: " + lowerLimit);
lowerLimitChanged = true;
}
}
@ -264,12 +271,10 @@ function decrementLimit(){
if (limitSetter === Setter.UPPER) {
upperLimit--;
renderUpperLimit();
console.log("Upper limit: " + upperLimit);
upperLimitChanged = true;
} else if(limitSetter === Setter.LOWER) {
lowerLimit--;
renderLowerLimit();
console.log("Lower limit: " + lowerLimit);
lowerLimitChanged = true;
}
}
@ -293,8 +298,8 @@ Bangle.on('lcdPower', (on) => {
g.clear();
if (on) {
Bangle.drawWidgets();
renderButtonIcons();
// call your app function here
renderHomeIcon();
renderLowerLimitBackground();
renderUpperLimitBackground();
lowerLimitChanged = true;
@ -317,7 +322,7 @@ Bangle.loadWidgets();
Bangle.drawWidgets();
//drawTrainingHeartRate();
renderButtonIcons();
renderHomeIcon();
renderLowerLimitBackground();
renderUpperLimitBackground();