Fix 12h and 24h clocks, fix #81

pull/148/head
Gordon Williams 2020-01-23 10:04:53 +00:00
parent bac71a1115
commit 7f77ffa477
7 changed files with 48 additions and 50 deletions

View File

@ -437,10 +437,10 @@
{ "id": "sclock", { "id": "sclock",
"name": "Simple Clock", "name": "Simple 24hr Clock",
"icon": "clock-simple.png", "icon": "clock-simple.png",
"version":"0.02", "version":"0.03",
"description": "Simple Digital Clock", "description": "Simple Digital 24 Hour Clock",
"tags": "clock", "tags": "clock",
"type":"clock", "type":"clock",
"allow_emulator":true, "allow_emulator":true,
@ -451,17 +451,17 @@
] ]
}, },
{ "id": "stclck", { "id": "stclck",
"name": "Simple 12H Clock", "name": "Simple 12hr Clock",
"icon": "clock-simple.png", "icon": "clock-simple.png",
"version":"0.02", "version":"0.03",
"description": "Simple Digital 12-Hour Clock", "description": "Simple Digital 12 Hour Clock",
"tags": "clock", "tags": "clock",
"type":"clock", "type":"clock",
"allow_emulator":true, "allow_emulator":true,
"storage": [ "storage": [
{"name":"+sclock","url":"clock-simple.json"}, {"name":"+stclck","url":"clock-simple.json"},
{"name":"-sclock","url":"clock-simple.js"}, {"name":"-stclck","url":"clock-simple.js"},
{"name":"*sclock","url":"clock-simple-icon.js","evaluate":true} {"name":"*stclck","url":"clock-simple-icon.js","evaluate":true}
] ]
}, },
{ "id": "gesture", { "id": "gesture",

View File

@ -1 +1,2 @@
0.02: Modified for use with new bootloader and firmware 0.02: Modified for use with new bootloader and firmware
0.03: Actually make into 24h clock since there's a 12h variant

View File

@ -11,42 +11,34 @@ const yposYear = 175;
const yposGMT = 220; const yposGMT = 220;
function drawSimpleClock() { function drawSimpleClock() {
// get date
var d = new Date();
var da = d.toString().split(" ");
// get date // drawSting centered
var d = new Date(); g.setFontAlign(0, 0);
var da = d.toString().split(" ");
// drawSting centered // draw time
g.setFontAlign(0, 0); var time = da[4].substr(0, 5).split(":");
var hours = time[0],
minutes = time[1];
g.setFont(font, timeFontSize);
g.drawString(`${hours}:${minutes}`, xyCenter, yposTime, true);
// draw time // draw Day, name of month, Date
var time = da[4].substr(0, 5); var date = [da[0], da[1], da[2]].join(" ");
var hoursminutes = time.split(":"); g.setFont(font, dateFontSize);
var meridian = "AM";
if (Number(hoursminutes[0]) > 12) {
hoursminutes[0] = String(Number(hoursminutes[0]) - 12);
meridian = "PM";
}
g.setFont(font, timeFontSize);
g.drawString(`${hoursminutes[0]}:${hoursminutes[1]}`, xyCenter, yposTime, true);
g.setFont(font, gmtFontSize);
g.drawString(meridian, xyCenter + 100, yposTime + 10, true);
// draw Day, name of month, Date g.drawString(date, xyCenter, yposDate, true);
var date = [da[0], da[1], da[2]].join(" ");
g.setFont(font, dateFontSize);
g.drawString(date, xyCenter, yposDate, true); // draw year
g.setFont(font, dateFontSize);
// draw year g.drawString(d.getFullYear(), xyCenter, yposYear, true);
g.setFont(font, dateFontSize);
g.drawString(d.getFullYear(), xyCenter, yposYear, true);
// draw gmt
var gmt = da[5];
g.setFont(font, gmtFontSize);
g.drawString(gmt, xyCenter, yposGMT, true);
// draw gmt
var gmt = da[5];
g.setFont(font, gmtFontSize);
g.drawString(gmt, xyCenter, yposGMT, true);
} }
// handle switch display on by pressing BTN1 // handle switch display on by pressing BTN1

View File

@ -1,5 +1,6 @@
{ {
"name":"Simple Clock","type":"clock", "name":"24h Clock",
"type":"clock",
"icon":"*sclock", "icon":"*sclock",
"src":"-sclock", "src":"-sclock",
"sortorder":-10 "sortorder":-10

View File

@ -1 +1,2 @@
0.02: Modified for use with new bootloader and firmware 0.02: Modified for use with new bootloader and firmware
0.03: Actually made this work

View File

@ -20,15 +20,19 @@ function drawSimpleClock() {
// draw time // draw time
var time = da[4].substr(0, 5).split(":"); var time = da[4].substr(0, 5).split(":");
var hours = time[0], var hours = parseInt(time[0],10),
minutes = time[1]; minutes = time[1];
var meridian = "AM"; var meridian = "AM";
if (Number(hours) > 12) { if (hours == 0) {
hours -= String(Number(hours) - 12); hours = 12;
meridian = "PM";
}
if (hours > 12) {
hours -= 12;
meridian = "PM"; meridian = "PM";
} }
g.setFont(font, timeFontSize); g.setFont(font, timeFontSize);
g.drawString(`${hours}:${minutes}`, xyCenter, yposTime, true); g.drawString(`${(" "+hours).substr(-2)}:${minutes}`, xyCenter, yposTime, true);
g.setFont(font, gmtFontSize); g.setFont(font, gmtFontSize);
g.drawString(meridian, xyCenter + 102, yposTime + 10, true); g.drawString(meridian, xyCenter + 102, yposTime + 10, true);
@ -49,9 +53,8 @@ function drawSimpleClock() {
} }
// handle switch display on by pressing BTN1 // handle switch display on by pressing BTN1
Bangle.on("lcdPower", function(on) { Bangle.on('lcdPower', function(on) {
if (on) if (on) drawSimpleClock();
drawSimpleClock();
}); });
// clean app screen // clean app screen

View File

@ -1,7 +1,7 @@
{ {
"name": "Simple 12H Clock", "name": "12h Clock",
"type": "clock", "type": "clock",
"icon": "*sclock", "icon": "*stclck",
"src": "-sclock", "src": "-stclck",
"sortorder": -10 "sortorder": -10
} }