forked from FOSS/BangleApps
Tidy graphics
parent
4ca3a2a124
commit
8c416bab55
|
@ -2,20 +2,32 @@
|
||||||
|
|
||||||
Bangle.setLCDPower(1);
|
Bangle.setLCDPower(1);
|
||||||
Bangle.setLCDTimeout(0);
|
Bangle.setLCDTimeout(0);
|
||||||
|
|
||||||
var btm = g.getHeight() - 1;
|
var btm = g.getHeight() - 1;
|
||||||
|
var img = {
|
||||||
function onCore(c) {
|
width : 146,
|
||||||
var px = g.getWidth() / 2;
|
height : 48,
|
||||||
g.setFontAlign(0, 0);
|
bpp : 4,
|
||||||
g.clearRect(0, 24, g.getWidth(), g.getHeight() - 24);
|
transparent : 0,
|
||||||
|
palette : new Uint16Array([ 65535, 65535, 2854, 1419 ]),
|
||||||
var core = "Core: " + c.core + c.unit;
|
buffer :
|
||||||
var skin = "Skin: " + c.skin + c.unit;
|
require("heatshrink")
|
||||||
|
.decompress(atob(
|
||||||
g.setFontVector(24).drawString(core, px, 45);
|
"AEUDmczmBD/I4xJ/AAMCkBHFAAJG8kQABJAJHFSVURAAUQRphHCkQGBJAySngJHDJRhHEJALZDAgiSBEQ0RPBIAKHAwQQI4xIEaoQFEEZpIULSRHFkDZDBwZIMEYhITa44SKSAxIDSARIDJ4IjKJCpHNEoiQGJDA2CJCQSOCYaQGJDBsCGiKQGTZIJCI4xBEJBAAEFpQAPDQoMGBQyOGIJJPGF6AALC5glCbJAQEgZCEAoowTSBypJBwKQMIQaSBAgZIJWw5ITB5RTDSBLbEAAjDOPRIVabIiQFJBCQKPYhIVCRxIEBg7WDSBpIVbJ5IQJIqQBgZIiCh7ZLJIriDbhJI3JoxIebIZITI6BIjCZ5IRI4RIPHAYAJJH4AIUAJIzHIhI/SAwzBJH6QGJH5HIHApI2HCIAJL4pITkATOJQJIMHCJeFJD8zaZCQHJCEBJCUCJCKPBJBhWGJEcia5oACJBSfHJB4QMJA6SLI4ZIKPAg3QJCUAJCbbBJETbPJAbbKbIhIBYJpIQbZ5UDbZzZFPBxIVSRIOBJA5JISAhIIF4ZIUfQpJHEwQKDJAhJHbJbBJJCIZECY4KGSQoABBIZOBSBbbIJC6IEBQqSJJoyQLbZBIRbYoAKJAaSHJAjbCF541RSRISLSRkgJAKQKbY5ISJJyQDSRyQMbYxITChhHFSRhGMbY5IUCpRHHJJZITiBIVbpBHJbpJHPFhBITfI4ANIwcgI6AAV"))
|
||||||
g.setFontVector(24).drawString(skin, px, 65);
|
|
||||||
}
|
}
|
||||||
Bangle.on('CoreTemp', onCore);
|
|
||||||
|
function onCore(c) {
|
||||||
|
var core = "Core: " + c.core + "°" + c.unit;
|
||||||
|
var skin = "Skin: " + c.skin + "°" + c.unit;
|
||||||
|
|
||||||
|
var px = g.getWidth() / 2;
|
||||||
|
g.setFontAlign(0, 0);
|
||||||
|
g.clearRect(0, 24, g.getWidth(), g.getHeight() - 24);
|
||||||
|
g.drawImage(img, 0, 30);
|
||||||
|
g.setColor(0xC618); // Light gray
|
||||||
|
g.setFont("6x8", 3).drawString(core, px, 48 + 48);
|
||||||
|
g.setFont("6x8", 3).drawString(skin, px, 48 + 48 + 24);
|
||||||
|
} Bangle.on('CoreTemp', onCore);
|
||||||
|
|
||||||
g.clear();
|
g.clear();
|
||||||
Bangle.loadWidgets();
|
Bangle.loadWidgets();
|
||||||
|
@ -23,4 +35,3 @@ Bangle.drawWidgets();
|
||||||
|
|
||||||
g.reset().setFont("6x8", 2).setFontAlign(0, 0);
|
g.reset().setFont("6x8", 2).setFontAlign(0, 0);
|
||||||
g.drawString("Please wait...", g.getWidth() / 2, g.getHeight() / 2 - 16);
|
g.drawString("Please wait...", g.getWidth() / 2, g.getHeight() / 2 - 16);
|
||||||
|
|
||||||
|
|
|
@ -1,47 +1,69 @@
|
||||||
// Widget to show sensor status
|
// TODO Change to generic multiple sensor
|
||||||
(() => {
|
(() => {
|
||||||
var settings = {};
|
var settings = {};
|
||||||
var count=0;
|
var count = 0;
|
||||||
|
|
||||||
|
var img0 = {
|
||||||
|
width : 24,
|
||||||
|
height : 24,
|
||||||
|
bpp : 4,
|
||||||
|
transparent : 0,
|
||||||
|
buffer :
|
||||||
|
require("heatshrink")
|
||||||
|
.decompress(atob(
|
||||||
|
"AA0IxGIBAtms0ABQOIwAKFsAWCDAkGBYQUCBwIKEBYgmBBYoHBC4oKDBAILECwRSFDQQLBsBLDBYg4CNYoKBwALGDQYLCQpALaF45jBBZBfJMIZ3GZgwkGZYibCDIMGWoILDWYbBDd4gMFWoTvFYYgAFEYYHDA=="))
|
||||||
|
};
|
||||||
|
var img1 = {
|
||||||
|
width : 24,
|
||||||
|
height : 24,
|
||||||
|
bpp : 3,
|
||||||
|
transparent : 0,
|
||||||
|
buffer :
|
||||||
|
require("heatshrink")
|
||||||
|
.decompress(atob(
|
||||||
|
"AAkCpMgAwYFBiVJkgHCAoMAyQIBwAIBAoMEyEABAUkBAkEBAdICIkBBAIdBBAcJEwo1BBAI4EAoJBEKAMAiAIEAAIvBLgosBBCYjFJQIIFKwJHFBARZFBwRrCNAKbCC4J0CpApFR4REGBAWShIxDPQSSCYogvEA="))
|
||||||
|
};
|
||||||
|
|
||||||
// draw your widget
|
// draw your widget
|
||||||
function draw() {
|
function draw() {
|
||||||
if (!settings.enabled) return;
|
if (!settings.enabled)
|
||||||
|
return;
|
||||||
g.reset();
|
g.reset();
|
||||||
g.setFontAlign(0,0);
|
g.setFontAlign(0, 0);
|
||||||
g.clearRect(this.x,this.y,this.x+23,this.y+23);
|
g.clearRect(this.x, this.y, this.x + 23, this.y + 23);
|
||||||
g.setColor((count&1)?"#00ff00":"#80ff00");
|
g.drawImage((count & 1) img1: img0, this.x, this.y);
|
||||||
g.fillCircle(this.x+6,this.y+6,4);
|
|
||||||
g.fillCircle(this.x+16,this.y+16,4);
|
|
||||||
g.setColor(-1); // change color back to be nice to other apps
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Set a listener to 'twinkle'
|
// Set a listener to 'blink'
|
||||||
function onTemp(temp) {
|
function onTemp(temp) {
|
||||||
count=count+1;
|
count = count + 1;
|
||||||
WIDGETS["sensors"].draw();
|
WIDGETS["coretemp"].draw();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Called by sensor app to update status
|
// Called by sensor app to update status
|
||||||
function reload() {
|
function reload() {
|
||||||
settings = require("Storage").readJSON("coretemp.json",1)||{};
|
settings = require("Storage").readJSON("coretemp.json", 1) || {};
|
||||||
// settings.fileNbr |= 0;
|
|
||||||
|
|
||||||
Bangle.removeListener('CoreTemp',onTemp);
|
Bangle.removeListener('CoreTemp', onTemp);
|
||||||
|
|
||||||
if (settings.enabled) {
|
if (settings.enabled) {
|
||||||
WIDGETS["sensors"].width = 24;
|
WIDGETS["coretemp"].width = 24;
|
||||||
Bangle.on('CoreTemp', onTemp);
|
Bangle.on('CoreTemp', onTemp);
|
||||||
} else {
|
} else {
|
||||||
WIDGETS["sensors"].width = 0;
|
WIDGETS["coretemp"].width = 0;
|
||||||
|
count = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
// add the widget
|
// add the widget
|
||||||
WIDGETS["sensors"]={area:"tl",width:24,draw:draw,reload:function() {
|
WIDGETS["coretemp"] = {
|
||||||
reload();
|
area : "tl",
|
||||||
Bangle.drawWidgets(); // relayout all widgets
|
width : 24,
|
||||||
}};
|
draw : draw,
|
||||||
|
reload : function() {
|
||||||
|
reload();
|
||||||
|
Bangle.drawWidgets(); // relayout all widgets
|
||||||
|
}
|
||||||
|
};
|
||||||
// load settings, set correct widget width
|
// load settings, set correct widget width
|
||||||
reload();
|
reload();
|
||||||
|
|
||||||
})()
|
})()
|
||||||
|
|
Loading…
Reference in New Issue