From bbc98d1d46f755b24273d0a10ca7890d03b16da4 Mon Sep 17 00:00:00 2001 From: hughbarney Date: Fri, 12 Feb 2021 20:34:10 +0000 Subject: [PATCH] added gps and hrm power status widgets --- apps.json | 22 ++++++++++++++++++++++ apps/widgps/ChangeLog | 2 ++ apps/widgps/README.md | 10 ++++++++++ apps/widgps/widget.js | 28 ++++++++++++++++++++++++++++ apps/widgps/widget.png | Bin 0 -> 328 bytes apps/widhrt/ChangeLog | 2 ++ apps/widhrt/README.md | 8 ++++++++ apps/widhrt/widget.js | 28 ++++++++++++++++++++++++++++ apps/widhrt/widget.png | Bin 0 -> 848 bytes 9 files changed, 100 insertions(+) create mode 100644 apps/widgps/ChangeLog create mode 100644 apps/widgps/README.md create mode 100644 apps/widgps/widget.js create mode 100644 apps/widgps/widget.png create mode 100644 apps/widhrt/ChangeLog create mode 100644 apps/widhrt/README.md create mode 100644 apps/widhrt/widget.js create mode 100644 apps/widhrt/widget.png diff --git a/apps.json b/apps.json index d5dcc9b3e..9674a54f6 100644 --- a/apps.json +++ b/apps.json @@ -2794,5 +2794,27 @@ {"name":"walkersclock.app.js","url":"app.js"}, {"name":"walkersclock.img","url":"icon.js","evaluate":true} ] +}, +{ "id": "widgps", + "name": "GPS Widget", + "icon": "widget.png", + "version":"0.01", + "description": "Show the power on/off status of the GPS", + "tags": "widget,gps", + "type":"widget", + "storage": [ + {"name":"widgps.wid.js","url":"widget.js"} + ] +}, +{ "id": "widhrt", + "name": "HRM Widget", + "icon": "widget.png", + "version":"0.01", + "description": "Show the power on/off status of the Heart Rate Monitor", + "tags": "widget, hrm", + "type":"widget", + "storage": [ + {"name":"widhrt.wid.js","url":"widget.js"} + ] } ] diff --git a/apps/widgps/ChangeLog b/apps/widgps/ChangeLog new file mode 100644 index 000000000..20a17d487 --- /dev/null +++ b/apps/widgps/ChangeLog @@ -0,0 +1,2 @@ +0.01: First version + diff --git a/apps/widgps/README.md b/apps/widgps/README.md new file mode 100644 index 000000000..372747486 --- /dev/null +++ b/apps/widgps/README.md @@ -0,0 +1,10 @@ +# GPS Power Status Widget + +A simple widget that shows the on/off status of the GPS. + +The GPS can quickly run the battery down if it is on all the time so +it is useful to know if it has been switched on or not. + +- Uses Bangle.isGPSOn() +- Shows in grey when the GPS is off +- Shows in amber when the GPS is on diff --git a/apps/widgps/widget.js b/apps/widgps/widget.js new file mode 100644 index 000000000..1a8fb6f13 --- /dev/null +++ b/apps/widgps/widget.js @@ -0,0 +1,28 @@ +(function(){ + var img = E.toArrayBuffer(atob("GBiBAAAAAAAAAAAAAA//8B//+BgYGBgYGBgYGBgYGBgYGBgYGB//+B//+BgYGBgYGBgYGBgYGBgYGBgYGB//+A//8AAAAAAAAAAAAA==")); + + function draw() { + g.reset(); + if (Bangle.isGPSOn()) { + g.setColor(1,0.8,0); // on = amber + } else { + g.setColor(0.3,0.3,0.3); // off = grey + } + g.drawImage(img, 10+this.x, 2+this.y); + } + + var timerInterval; + Bangle.on('lcdPower', function(on) { + if (on) { + WIDGETS.gps.draw(); + if (!timerInterval) timerInterval = setInterval(()=>WIDGETS["gps"].draw(), 2000); + } else { + if (timerInterval) { + clearInterval(timerInterval); + timerInterval = undefined; + } + } + }); + + WIDGETS.gps={area:"tr",width:24,draw:draw}; +})(); diff --git a/apps/widgps/widget.png b/apps/widgps/widget.png new file mode 100644 index 0000000000000000000000000000000000000000..3677154aa85ff94b29711aa39cc82fec235362a5 GIT binary patch literal 328 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1|-9oezpTCwj^(N7l!{JxM1({$v~06o-U3d z8I5mmp5|?G5NUlF|L9oI8i&{mZT(zpI)!?o*B)ry$mE^4T(72~TT-${ruVtGhsT3S z)hBe=^k&S|ER~Bn-@s|WQ1w3lxgY172G)X%&kZ~g%~ z@qbwTk7`@B$2Ktm=JK)yCX$A|jf%4bFN;N7Dms#q_N`7`U43oL-u-(Y00V--)78&q Iol`;+0LDRz>i_@% literal 0 HcmV?d00001 diff --git a/apps/widhrt/ChangeLog b/apps/widhrt/ChangeLog new file mode 100644 index 000000000..20a17d487 --- /dev/null +++ b/apps/widhrt/ChangeLog @@ -0,0 +1,2 @@ +0.01: First version + diff --git a/apps/widhrt/README.md b/apps/widhrt/README.md new file mode 100644 index 000000000..67058c810 --- /dev/null +++ b/apps/widhrt/README.md @@ -0,0 +1,8 @@ +# Heart Rate Power Monitor Widget + +A simple widget that shows the on/off status of the Heart Rate +Monitor. + +- Uses Bangle.isHRTOn(). +- Shows in grey when the HRT is off +- Shows in red when the HRT is on diff --git a/apps/widhrt/widget.js b/apps/widhrt/widget.js new file mode 100644 index 000000000..41de2b5d3 --- /dev/null +++ b/apps/widhrt/widget.js @@ -0,0 +1,28 @@ +(function(){ + var img = E.toArrayBuffer(atob("FhaBAAAAAAAAAAAAAcDgD8/AYeGDAwMMDAwwADDAAMOABwYAGAwAwBgGADAwAGGAAMwAAeAAAwAAAAAAAAAAAAA=")); + + function draw() { + g.reset(); + if (Bangle.isHRMOn()) { + g.setColor(1,0,0); // on = red + } else { + g.setColor(0.3,0.3,0.3); // off = grey + } + g.drawImage(img, 10+this.x, 2+this.y); + } + + var timerInterval; + Bangle.on('lcdPower', function(on) { + if (on) { + WIDGETS.widhrt.draw(); + if (!timerInterval) timerInterval = setInterval(()=>WIDGETS["widhrt"].draw(), 2000); + } else { + if (timerInterval) { + clearInterval(timerInterval); + timerInterval = undefined; + } + } + }); + + WIDGETS.widhrt={area:"tr",width:24,draw:draw}; +})(); diff --git a/apps/widhrt/widget.png b/apps/widhrt/widget.png new file mode 100644 index 0000000000000000000000000000000000000000..4d8f5b7301f96377cd75574cf84d6f39b5ed44f6 GIT binary patch literal 848 zcmV-W1F!svP)MV7RDVA+4flSDQkih@c16CL$p;N)5V|1ucy%?IG4;&fs^BqS-#nF1MJUE*l zGXw{LcAy@p!h1sXKqv6QxVKkmT{8OK14n^XN}~#B06KsnXVvL?6Tn+rV1%1=|uMsm~SW zn!oIz(7bj$C z^2zKB8o*Q0cG*Icrd70`*aYlgcFxTJ8**UEmUYU5@2Alws0eTW_k$jyuZw(93_KD( zUd9RDj{X+yOxm3VW=XO$uD~@B{G0qvrM18>k^icTNEPr#h-84egbapJhgWX(N1ew2(rN>CRjfD4b`&cQ*n~Hfg z?{mgTe4lt*T_x~<0-5(YX&876)L6vT;1y*u_FRrUM$(2}Yz+X5L+-Byo}rsRpJR`a z97Z3+5W#QkI`j|y8FH{yy0Q=b*f0Yu7yV0tx1xU0 aKja??4m||(3#qLD0000