BangleApps/apps/widalt/widalt.wid.js

49 lines
1.8 KiB
JavaScript
Raw Normal View History

2022-08-02 07:27:26 +00:00
(()=>{
var alt="";
var lastDraw=0;
2022-08-02 12:46:41 +00:00
var lastAlt=0;
function readAltitude() {
try {Bangle.getPressure().then((p)=>{
2022-08-02 14:33:27 +00:00
print("pressure read, altitude "+p.altitude.toFixed(0));
2022-08-02 12:46:41 +00:00
if (Math.floor(p.altitude)!=lastAlt) {
2022-08-02 14:33:27 +00:00
print("altitude changed!");
2022-08-02 12:46:41 +00:00
lastAlt=Math.floor(p.altitude);
alt=p.altitude.toFixed(0);
var w = WIDGETS["widalt"].width;
2022-08-02 14:33:27 +00:00
WIDGETS["widalt"].width = 1 + (alt.length)*12+16;
2022-08-02 12:46:41 +00:00
if (w!=WIDGETS["widalt"].width) Bangle.drawWidgets();
WIDGETS["widalt"].draw();
2022-08-02 14:24:09 +00:00
setTimeout(readAltitude,60000);
2022-08-02 12:46:41 +00:00
}
});}
catch(err) {
2022-08-02 14:33:27 +00:00
print("ERROR");
2022-08-02 14:24:09 +00:00
setTimeout(readAltitude,1000);
2022-08-02 12:46:41 +00:00
}
}
readAltitude();
2022-08-02 07:27:26 +00:00
function draw() {
2022-08-02 12:46:41 +00:00
//if (Date().getTime()-lastDraw<6000) return;//!!!!!
2022-08-02 07:27:26 +00:00
if (!Bangle.isLCDOn()) return;
2022-08-02 12:46:41 +00:00
//lastDraw=Date().getTime();
2022-08-02 14:33:27 +00:00
print("drawing");
2022-08-02 07:27:26 +00:00
g.reset();
g.setColor(g.theme.bg);
g.fillRect(this.x, this.y, this.x + this.width, this.y + 23);
2022-08-02 11:48:47 +00:00
g.setColor(g.theme.fg);
2022-08-02 14:33:27 +00:00
g.drawImage(atob("EBCBAAAAAAAIAAwgFXAX0BCYIIggTD/EYPZADkACf/4AAAAA"), this.x, this.y+4);
2022-08-02 12:46:41 +00:00
g.setFontCustom(atob("AAAAABwAAOAAAgAAHAADwAD4AB8AB8AA+AAeAADAAAAOAAP+AH/8B4DwMAGBgAwMAGBgAwOAOA//gD/4AD4AAAAAAAABgAAcAwDAGAwAwP/+B//wAAGAAAwAAGAAAAAAAAIAwHgOA4DwMA+BgOwMDmBg4wOeGA/gwDwGAAAAAAAAAGAHA8A4DwMAGBhAwMMGBjgwOcOA+/gDj4AAAAABgAAcAAHgADsAA5gAOMAHBgBwMAP/+B//wABgAAMAAAAAAAgD4OB/AwOYGBjAwMYGBjBwMe8Bh/AIHwAAAAAAAAAfAAP8AHxwB8GAdgwPMGBxgwMOOAB/gAH4AAAAAAABgAAMAABgAwMAeBgPgMHwBj4AN8AB+AAPAABAAAAAAAMfAH38B/xwMcGBhgwMMGBjgwP+OA+/gDj4AAAAAAAAOAAH4AA/gQMMGBgzwME8BhvAOPgA/4AD8AAEAAAAAAGAwA4OAHBwAAA="), 46, atob("BAgMDAwMDAwMDAwMBQ=="), 21+(1<<8)+(1<<16));
2022-08-02 07:27:26 +00:00
g.setFontAlign(-1, 0);
2022-08-02 14:33:27 +00:00
g.drawString(alt, this.x+16, this.y + 12);
2022-08-02 07:27:26 +00:00
}
WIDGETS["widalt"] = {
area: "tr",
2022-08-02 11:48:47 +00:00
width: 6,
2022-08-02 07:27:26 +00:00
draw: draw
};
})();