Font is outermost
parent
6d1d6397ed
commit
77c57fc5e9
|
|
@ -34,6 +34,7 @@ const minStepPctUpdateRings = 3; // If the current step is less percent than la
|
||||||
let nextUpdateMs;
|
let nextUpdateMs;
|
||||||
var drawingSteps = false;
|
var drawingSteps = false;
|
||||||
var innerMostRing = 0;
|
var innerMostRing = 0;
|
||||||
|
var outerMostRing = 0;
|
||||||
var prevStepDisplayed = 0;
|
var prevStepDisplayed = 0;
|
||||||
var prevRing = Array(3).fill().map(() => ({ start: null, end: null, max: null }));
|
var prevRing = Array(3).fill().map(() => ({ start: null, end: null, max: null }));
|
||||||
|
|
||||||
|
|
@ -518,13 +519,13 @@ function drawClock() {
|
||||||
|
|
||||||
g.reset();
|
g.reset();
|
||||||
g.setColor(g.theme.bg);
|
g.setColor(g.theme.bg);
|
||||||
innerMostRing = getInnerMostRing();
|
getInnerOuterMostRing();
|
||||||
let edge = ringEdge + (innerMostRing * ringIterOffset);
|
let edge = ringEdge + (innerMostRing * ringIterOffset);
|
||||||
g.fillEllipse(edge+ringThick,edge+ringThick,w-edge-ringThick,h-edge-ringThick); // Clears the text within the circle
|
g.fillEllipse(edge+ringThick,edge+ringThick,w-edge-ringThick,h-edge-ringThick); // Clears the text within the circle
|
||||||
drawAllRings(date, null);
|
drawAllRings(date, null);
|
||||||
setLargeFont();
|
setLargeFont();
|
||||||
|
|
||||||
g.setColor(settings.fg);
|
g.setColor(settings.rings[outerMostRing - 1].fg);
|
||||||
g.setFontAlign(1,0); // right aligned
|
g.setFontAlign(1,0); // right aligned
|
||||||
g.drawString(hh, (w/2) - 1, h/2);
|
g.drawString(hh, (w/2) - 1, h/2);
|
||||||
|
|
||||||
|
|
@ -902,15 +903,23 @@ function queueDraw() {
|
||||||
}, delay);
|
}, delay);
|
||||||
}
|
}
|
||||||
|
|
||||||
function getInnerMostRing() {
|
function getInnerOuterMostRing() {
|
||||||
var innerMost = 0;
|
let innerMost = 0;
|
||||||
for (let i = settings.rings.length - 1; i >= 0; i--) {
|
let outerMost = 0;
|
||||||
if (settings.rings[i].type !== "None") {
|
for (let i = 0; i < settings.rings.length; i++) {
|
||||||
innerMost = i+1;
|
let j = settings.rings.length - 1 - i;
|
||||||
break;
|
if (outerMost === 0 && settings.rings[i].type !== "None") {
|
||||||
|
outerMost = i + 1;
|
||||||
|
}
|
||||||
|
if (innerMost === 0 && settings.rings[j].type !== "None") {
|
||||||
|
innerMost = j + 1;
|
||||||
|
}
|
||||||
|
if (outerMost !== 0 && innerMost !== 0) {
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return innerMost;
|
innerMostRing = innerMost;
|
||||||
|
outerMostRing = outerMost;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Stop updates when LCD is off, restart when on
|
// Stop updates when LCD is off, restart when on
|
||||||
|
|
@ -938,7 +947,7 @@ Bangle.setUI("clockupdown", btn=> {
|
||||||
|
|
||||||
loadSettings();
|
loadSettings();
|
||||||
loadLocation();
|
loadLocation();
|
||||||
innerMostRing = getInnerMostRing();
|
getInnerOuterMostRing();
|
||||||
var infoMode = infoList[settings.idxInfo];
|
var infoMode = infoList[settings.idxInfo];
|
||||||
updateSunRiseSunSet(new Date(), location.lat, location.lon, true);
|
updateSunRiseSunSet(new Date(), location.lat, location.lon, true);
|
||||||
nextUpdateMs = getDelayMs(1000, settings.rings, Date.now())[0];
|
nextUpdateMs = getDelayMs(1000, settings.rings, Date.now())[0];
|
||||||
|
|
@ -948,4 +957,4 @@ Bangle.loadWidgets();
|
||||||
* we are not drawing the widgets as we are taking over the whole screen
|
* we are not drawing the widgets as we are taking over the whole screen
|
||||||
*/
|
*/
|
||||||
widget_utils.hide();
|
widget_utils.hide();
|
||||||
redrawWholeFace()
|
redrawWholeFace();
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,6 @@
|
||||||
// default settings
|
// default settings
|
||||||
let s = {
|
let s = {
|
||||||
rings: [{}, {}, {}],
|
rings: [{}, {}, {}],
|
||||||
color: 'Green',
|
|
||||||
fg: '#0f0',
|
fg: '#0f0',
|
||||||
check_idle: true,
|
check_idle: true,
|
||||||
batt_hours: false,
|
batt_hours: false,
|
||||||
|
|
@ -125,16 +124,6 @@ function save() {
|
||||||
'Ring 1': () => showRingMenu(0),
|
'Ring 1': () => showRingMenu(0),
|
||||||
'Ring 2': () => showRingMenu(1),
|
'Ring 2': () => showRingMenu(1),
|
||||||
'Ring 3': () => showRingMenu(2),
|
'Ring 3': () => showRingMenu(2),
|
||||||
'Hour Color': {
|
|
||||||
value: 0 | color_options.indexOf(s.color),
|
|
||||||
min: 0, max: color_options.length - 1,
|
|
||||||
format: v => color_options[v],
|
|
||||||
onchange: v => {
|
|
||||||
s.color = color_options[v];
|
|
||||||
s.fg = fg_code[v];
|
|
||||||
save();
|
|
||||||
},
|
|
||||||
},
|
|
||||||
'Battery Life Format' : {
|
'Battery Life Format' : {
|
||||||
value: !!s.batt_hours,
|
value: !!s.batt_hours,
|
||||||
format: value => value?"Days":"%",
|
format: value => value?"Days":"%",
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue