Merge pull request #1162 from M14aAUI/master

New Clock for Bangle.js 2
pull/1164/head^2
Gordon Williams 2022-01-04 10:01:01 +00:00 committed by GitHub
commit 1696d9ce76
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 80 additions and 0 deletions

View File

@ -5094,6 +5094,24 @@
{"name":"ltherm.img","url":"icon.js","evaluate":true}
]
},
{
"id": "supf",
"name": "Simple Clock with Date",
"shortName": "supf Clock",
"version": "0.01",
"description": "Simple Clock with seconds and date in custom language. Install 'Languages' to get localized names.",
"icon": "icon.png",
"screenshots": [{"url":"screenshot_supf.png"}],
"type": "clock",
"tags": "clock",
"supports": ["BANGLEJS2"],
"allow_emulator": true,
"readme": "README.md",
"storage": [
{"name":"supf.app.js","url":"app.js"},
{"name":"supf.img","url":"icon.js","evaluate":true}
]
},
{ "id": "andark",
"name": "Analog Dark",
"shortName":"AnDark",

1
apps/supf/ChangeLog Normal file
View File

@ -0,0 +1 @@
0.01: New App

4
apps/supf/README.md Normal file
View File

@ -0,0 +1,4 @@
# Simple Clock with Date
Simple Clock with seconds and date in custom language. Install 'Languages' to get localized names.
![](screenshot_supf.png)

56
apps/supf/app.js Normal file
View File

@ -0,0 +1,56 @@
require("Font7x11Numeric7Seg").add(Graphics);
function draw() {
var d = new Date();
var size = Math.floor(g.getWidth()/(7*6));
var x = (g.getWidth()/2) - size*6,
y = (g.getHeight()/2) - size*7 - 0;
// y variable for ':'
var y_dop = 70 - 0;
g.reset().clearRect(0,y,g.getWidth(),y+size*28);
// draw hours in 24h format
g.setFont("7x11Numeric7Seg",size).setFontAlign(1,-1);
if (d.getHours().toString.length < 2) {
g.drawString('0'+d.getHours(), 58, y);
}
else {
g.drawString(d.getHours(), 58, y);
}
g.setFont("7x11Numeric7Seg",size/2).setFontAlign(1,-1);
g.drawString(":",64,y_dop);
g.setFont("7x11Numeric7Seg",size).setFontAlign(1,-1);
// draw minutes
g.drawString(("0"+d.getMinutes()).substr(-2),118,y);
g.setFont("7x11Numeric7Seg",size/2).setFontAlign(1,-1);
g.drawString(":",124,y_dop);
// draw seconds
g.setFont("7x11Numeric7Seg",size).setFontAlign(1,-1);
g.drawString(("0"+d.getSeconds()).substr(-2),178,y);
// date
g.setFont("6x8",size/2).setFontAlign(0,-1);
// draw name of day
g.drawString(require('locale').dow(new Date()),g.getWidth()/2, y + size*16);
// draw date and name of month
g.drawString(d.getDate()+' '+require('locale').month(new Date()),g.getWidth()/2, y + size*20);
// draw year
g.drawString((d.getFullYear()),g.getWidth()/2, y + size*24);
}
// Only update when display turns on
if (process.env.BOARD!="SMAQ3") // hack for Q3 which is always-on
Bangle.on('lcdPower', function(on) {
if (secondInterval)
clearInterval(secondInterval);
secondInterval = undefined;
if (on)
secondInterval = setInterval(draw, 1000);
draw();
});
g.clear();
var secondInterval = setInterval(draw, 1000);
draw();
// Show launcher when button pressed
Bangle.setUI("clock");
Bangle.loadWidgets();
Bangle.drawWidgets();

1
apps/supf/icon.js Normal file
View File

@ -0,0 +1 @@
require("heatshrink").decompress(atob("ogA/AH4A/AElAdbgcEDq46FgEEQX5HGACZbBDjQeCDrocbAH4A/AH4A0gX/AAPzgEBAoX/BgIFDiEAn4FCkAdFgYXEDpQXBAocwDow4BHwIIDEAIdCHAIdDAQM/Dp4UBAQodxmYABDrK5DDrY7BmQdaPRAd4d6CPESo4ACDoQACDowXDHwMBDpI+Bn4jEAH4A/AH4A/AB9ADjcEogdbogA+K7oddWyywBDzQcHAH4A/AGAA="))

BIN
apps/supf/icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB