(function() { WIDGETS["qmsched"] = { area: "tl", width: ((require("Storage").readJSON("setting.json", 1) || {}).quiet|0) ? 24 : 0, draw: function() { const mode = (require("Storage").readJSON("setting.json", 1) || {}).quiet|0; if (mode===0) { // Off if (this.width!==0) { this.width = 0; Bangle.drawWidgets(); } return; } // not Off: make sure width is correct if (this.width!==24) { this.width = 24; Bangle.drawWidgets(); return; // drawWidgets will call draw again } let x = this.x, y = this.y; g.reset().clearRect(x, y, x+23, y+23); // quiet mode: draw red one-way-street sign (dim red on Bangle.js 1) x = this.x+11;y = this.y+11; // center of widget g.setColor(process.env.HWVERSION===2 ? 1 : 0.8, 0, 0).fillCircle(x, y, 8); g.setColor(g.theme.bg).fillRect(x-6, y-2, x+6, y+2); if (mode>1) {return;} // no alarms // alarms still on: draw alarm icon in bottom-right corner x = this.x+18;y = this.y+17; // center of alarm g.setColor(1, 1, 0) .fillCircle(x, y, 3) // alarm body .fillRect(x-5, y+2, x+5, y+3) // bottom ridge .fillRect(x-1, y-5, x+1, y+5).drawLine(x, y-6, x, y+6) // top+bottom .drawLine(x+5, y-3, x+3, y-5).drawLine(x-5, y-3, x-3, y-5); // wriggles }, }; })();