mirror of
https://github.com/espruino/Espruino.git
synced 2025-12-08 19:06:15 +00:00
3 lines
1.1 KiB
JavaScript
3 lines
1.1 KiB
JavaScript
(function(r,a){function p(){g.reset().setFont("6x8",2).setFontAlign(0,0);var h=g.getWidth(),k=g.getHeight(),d=a.title;d&&(d=l.translate(d),g.drawString(d,h/2,34),d=(g.stringWidth(d)+16)/2,g.fillRect(h/2-d,44,h/2+d,44));d=r.split("\n");var u=(k-16*d.length)/2;d.forEach((f,m)=>g.drawString(l.translate(f),h/2,u+16*m));var t=0;n.forEach(f=>t+=16+g.stringWidth(l.translate(f)));var b=(h-t)/2,e=k-40;n.forEach((f,m)=>{f=l.translate(f);var q=g.stringWidth(f);b+=(16+q)/2;var c=2+q/
|
|
2;c=[b-c,e-12,b+c,e-12,b+c+4,e-8,b+c+4,e+8,b+c,e+12,b-c,e+12,b-c-4,e+8,b-c-4,e-8,b-c,e-12];g.setColor(m==a.selected?g.theme.bgH:g.theme.bg).fillPoly(c).setColor(m==a.selected?g.theme.fgH:g.theme.fg).drawPoly(c).drawString(f,b,e+1);b+=(16+q)/2});g.setColor(g.theme.fg).flip()}a||(a={});a.buttons||(a.buttons={Yes:!0,No:!1});var l=require("locale"),n=Object.keys(a.buttons);a.selected||(a.selected=0);g.clear(1);Bangle.drawWidgets();if(!r)return Bangle.setUI(),Promise.resolve();p();return new Promise(h=>
|
|
{Bangle.setUI("leftright",k=>{0>k?0<a.selected&&(a.selected--,p()):0<k?a.selected<n.length-1&&(a.selected++,p()):(E.showPrompt(),h(a.buttons[n[a.selected]]))})})}) |