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(a){if(!a)return Bangle.setUI();var p=function(f){g.reset();var b=Math.floor((h-a.h)/2)-c.scroll*a.h,k=b+a.c*a.h;k<=h&&(b+=h-k);0<b&&(b=0);k=b;for(var l=0;l<a.c;l++)(void 0===f||f===l)&&b>-a.h+1&&b<h&&(g.setColor(l==c.scroll?g.theme.fgH:g.theme.fg).setBgColor(l==c.scroll?g.theme.bgH:g.theme.bg).setClipRect(d,e+Math.max(0,b),d+m-1,e+Math.min(h,b+a.h)-1),a.draw(l,{x:d,y:e+b,w:m,h:a.h},l==c.scroll)||l==c.scroll&&g.setColor(g.theme.fgH).drawRect(d,e+b,d+m-1,e+b+a.h-1).drawRect(d+
|
|
1,e+b+1,d+m-2,e+b+a.h-2)),b+=a.h;g.setClipRect(d,e,d+m-1,e+h-1);f=m/2;0>k&&(k=[d+f,e,d+f-14,e+14,d+f+14,e+14],g.setColor(g.theme.fg).fillPoly(k).setColor(g.theme.bg).drawPoly(k,!0));b>h&&(k=[d+f,e+h,d+f-14,e+h-14,d+f+14,e+h-14],g.setColor(g.theme.fg).fillPoly(k).setColor(g.theme.bg).drawPoly(k,!0))};Bangle.setUI({mode:"updown",back:a.back,remove:a.remove,redraw:p},f=>{f?(c.scroll+=f,0>c.scroll&&(c.scroll=a.c-1),c.scroll>=a.c&&(c.scroll=0),c.draw()):a.select(c.scroll)});var n=Bangle.appRect,m=n.w,
|
|
h=n.h,d=n.x,e=n.y,c={scroll:0|a.scroll,draw:p,drawItem:f=>p(f),isActive:()=>Bangle.uiRedraw==p};g.reset().clearRect(n);c.draw();return c}) |