From c4acfadabb7bed54f5825409f02db5f42e5ad483 Mon Sep 17 00:00:00 2001 From: Stefan Kuehnel Date: Mon, 9 Dec 2019 22:06:47 +0100 Subject: [PATCH 1/4] implemented simple version of a Berlin Clock --- apps/berlinc/add_to_apps.json | 12 ++++++ apps/berlinc/berlin-clock-icon.js | 1 + apps/berlinc/berlin-clock.js | 65 ++++++++++++++++++++++++++++++ apps/berlinc/berlin-clock.json | 5 +++ apps/berlinc/berlin-clock.png | Bin 0 -> 1620 bytes 5 files changed, 83 insertions(+) create mode 100644 apps/berlinc/add_to_apps.json create mode 100644 apps/berlinc/berlin-clock-icon.js create mode 100644 apps/berlinc/berlin-clock.js create mode 100644 apps/berlinc/berlin-clock.json create mode 100644 apps/berlinc/berlin-clock.png diff --git a/apps/berlinc/add_to_apps.json b/apps/berlinc/add_to_apps.json new file mode 100644 index 000000000..8e9815796 --- /dev/null +++ b/apps/berlinc/add_to_apps.json @@ -0,0 +1,12 @@ +// Create an entry in apps.json as follows: +{ "id": "berlinc", + "name": "Berlin Clock", + "icon": "app.png", + "description": "Berlin Clock", + "tags": "", + "storage": [ + {"name":"+berlinc","url":"app.json"}, + {"name":"-berlinc","url":"app.js"}, + {"name":"*berlinc","url":"app-icon.js","evaluate":true} + ] +} diff --git a/apps/berlinc/berlin-clock-icon.js b/apps/berlinc/berlin-clock-icon.js new file mode 100644 index 000000000..52a11577f --- /dev/null +++ b/apps/berlinc/berlin-clock-icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("mEwwJC/AH4A/AH4AgA==")); diff --git a/apps/berlinc/berlin-clock.js b/apps/berlinc/berlin-clock.js new file mode 100644 index 000000000..8c86ac5fc --- /dev/null +++ b/apps/berlinc/berlin-clock.js @@ -0,0 +1,65 @@ +(() => { + + // place your const, vars, functions or classes here + fields = [ 4 , 4 , 11 , 4 ]; + width = g.getWidth(); + height = g.getHeight(); + rowHeight = height/4; + rowlights = []; + + function drawBerlinClock() { + var now = new Date(); + rowlights[0] = now.getHours() / 5; + rowlights[1] = now.getHours() % 5; + rowlights[2] = now.getMinutes() / 5; + rowlights[3] = now.getMinutes() % 5; + + g.clear(); + + g.drawRect(0,0,width,height); + for (row = 0 ; row < 4 ; row++) { + nfields = fields[row]; + boxWidth = width/nfields; + + for (col = 0 ; col < nfields ; col++) { + x1 = col*boxWidth; + y1 = row*rowHeight; + x2 = (col+1)*boxWidth; + y2 = (row+1)*rowHeight; + + g.setColor(1,1,1); + g.drawRect(x1,y1,x2,y2); + if (col { + if (on) { + drawWidgets(); + // call your app function here + drawBerlinClock(); + }}); + + // call your app function here + + // refesh every 15 sec + setInterval(drawBerlinClock, 15E3); + + drawBerlinClock(); + +})(); diff --git a/apps/berlinc/berlin-clock.json b/apps/berlinc/berlin-clock.json new file mode 100644 index 000000000..e9e77aa1e --- /dev/null +++ b/apps/berlinc/berlin-clock.json @@ -0,0 +1,5 @@ +{ + "name":"Berlin Clock", + "icon":"*berlinc", + "src":"-berlinc" +} diff --git a/apps/berlinc/berlin-clock.png b/apps/berlinc/berlin-clock.png new file mode 100644 index 0000000000000000000000000000000000000000..582cb2e0853a5a2899a3afbd7eb19cde2ee7f6a0 GIT binary patch literal 1620 zcmV-a2CMmrP)1gXjloC|3_d8m;N2OpV(|i0q4YwBna<2! zK9thw%-*|urnNbV{Gax^?eD+#{x0kLJ~)lj_;W+1>qV*k8akT^^dvctZccUyj4}H~#M%Wwee_v` zHMv7o%BM8@dBrLshn{wGD9BDl?^eV5vSM3T96;NnHvtc6La=(qzq)xrX1d8bK-TN- zrd_f$_O`9nEmS+_S7HTXK<&u;LDIW|qlN&KJvM}tt6TVVqL-AvNv`B*{NzNpBfSQwQP5~Sf(Dp@Vq1+3Q`N9wBQN2`J_?M^u0FIMlt?p^8 z%U3%80kIwg!T{E9<8J18S&$k1`eO)@HP+=TZKo(z3_A3VFYJB=sn`2^Q$mRE>02(+W)np;)L1!GUvU2{O{<&F_nE6Qe#D~Xf|dD z+?d3-D1(IUiL`C2;PPv4CKw8H)v7h8^obJ&Z6D0CjVUe8Xq_NAymxUyPAMU^CCrIu z%1M71EC`5o2if_~7E&h??0jeQ1Y3N6p?}G72FmS*)xQD)%wBE=2tW6@(+MTi!fk9H1pWKew2(jTXVu4%vk26QvSQCbGmk`Z)Y! zBIhh)6vG2)h6mF8wC^|l$M(Eo9D?JiW}=_T2jUA>LC80foTera{^p)Wi`>}Gf;(|ZwEZQ zS^k|*9wyt=f4ZOo!xty7{%}HKD9tBZ50g$=%v&&vMa!#@Nsf>EkEEDA*ST6fiC+An zsNK1#>!x0obq@j$QqYU-ad3ZvbjqUU+%iw(0WahgmHV6yeLWqoYkSl4pzFQ(_Vp&I ztO{WI-48rGLwQb?#vgVvduyd9_6W)rFRoQJq3I(J?{Xmin45#=3l9BmL6Bp<*MZej zrsWN7oRPUr7IvrHoIHOjS=gPTCw>d)^LQK+B|=f2qbGjrWaOd5D<<9Dv>MTW0X3z> zyPy}9`<>1~?NCx@m8G$_@rRTy5zH12YM&P)=tU+L^fgY z^0Z&_6^qdVuwgN3wt_Ze(10?J@%{C2grBk42hsu74qEo^nd&v`X`IHN9lrxzS~GeF S(*#!l0000 Date: Mon, 9 Dec 2019 22:42:29 +0100 Subject: [PATCH 2/4] Fixed bug. Corrected add_to_apps.json --- apps.json | 11 +++++++++++ apps/berlinc/add_to_apps.json | 8 ++++---- apps/berlinc/berlin-clock.js | 4 ++-- 3 files changed, 17 insertions(+), 6 deletions(-) diff --git a/apps.json b/apps.json index 5507a76c9..78d3574ea 100644 --- a/apps.json +++ b/apps.json @@ -623,5 +623,16 @@ {"name":"-blobclk","url":"clock-blob.js"}, {"name":"*blobclk","url":"clock-blob-icon.js","evaluate":true} ] + }, + { "id": "berlinc", + "name": "Berlin Clock", + "icon": "app.png", + "description": "Berlin Clock", + "tags": "", + "storage": [ + {"name":"+berlinc","url":"berlin-clock.json"}, + {"name":"-berlinc","url":"berlin-clock.js"}, + {"name":"*berlinc","url":"berlin-clock-icon.js","evaluate":true} + ] } ] diff --git a/apps/berlinc/add_to_apps.json b/apps/berlinc/add_to_apps.json index 8e9815796..4c92880a9 100644 --- a/apps/berlinc/add_to_apps.json +++ b/apps/berlinc/add_to_apps.json @@ -1,12 +1,12 @@ // Create an entry in apps.json as follows: { "id": "berlinc", "name": "Berlin Clock", - "icon": "app.png", + "icon": "berlin-clock.png", "description": "Berlin Clock", "tags": "", "storage": [ - {"name":"+berlinc","url":"app.json"}, - {"name":"-berlinc","url":"app.js"}, - {"name":"*berlinc","url":"app-icon.js","evaluate":true} + {"name":"+berlinc","url":"berlin-clock.json"}, + {"name":"-berlinc","url":"berlin-clock.js"}, + {"name":"*berlinc","url":"berlin-clock-icon.js","evaluate":true} ] } diff --git a/apps/berlinc/berlin-clock.js b/apps/berlinc/berlin-clock.js index 8c86ac5fc..875ae805e 100644 --- a/apps/berlinc/berlin-clock.js +++ b/apps/berlinc/berlin-clock.js @@ -9,9 +9,9 @@ function drawBerlinClock() { var now = new Date(); - rowlights[0] = now.getHours() / 5; + rowlights[0] = Math.floor(now.getHours() / 5); rowlights[1] = now.getHours() % 5; - rowlights[2] = now.getMinutes() / 5; + rowlights[2] = Math.floor(now.getMinutes() / 5); rowlights[3] = now.getMinutes() % 5; g.clear(); From d976cd2d94a94c3c1c49e6d4bc8a57ed56818d3a Mon Sep 17 00:00:00 2001 From: Stefan Kuehnel Date: Sat, 14 Dec 2019 19:14:07 +0100 Subject: [PATCH 3/4] Created icon as .png and .js files --- apps/berlinc/berlin-clock-icon.js | 5 ++++- apps/berlinc/berlin-clock.png | Bin 1620 -> 199 bytes 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/apps/berlinc/berlin-clock-icon.js b/apps/berlinc/berlin-clock-icon.js index 52a11577f..2d5d0b439 100644 --- a/apps/berlinc/berlin-clock-icon.js +++ b/apps/berlinc/berlin-clock-icon.js @@ -1 +1,4 @@ -require("heatshrink").decompress(atob("mEwwJC/AH4A/AH4AgA==")); +var img = { + width : 48, height : 48, bpp : 4, + buffer : require("heatshrink").decompress(atob("xAAWxOZAAeP/4ADApX4C/4X/C/4XvxAAWF4o1QI4wX/C/4X/C9OIAC2L3e7AQQvBzAEBFAP4FoYEFC/4X/C/4XvxAAWFIIADApYsBAAX4C/4X/C/4XXf54AH")) +} diff --git a/apps/berlinc/berlin-clock.png b/apps/berlinc/berlin-clock.png index 582cb2e0853a5a2899a3afbd7eb19cde2ee7f6a0..abcb08df895da04ea48743b37ba1a8847f92e3da 100644 GIT binary patch delta 183 zcmcb@bDVL4L_G^L0|UcSohMs>6n}tEh%1nO$H4F(1Q^aTFf8$x+X@t7FY)wsWq-`W zC&Xzo?SEnnP)M}IHKHUqKdq!Zu_%=xA|Np{uSCH}&r;7YjCYwdP=URti(`mIZ*sx` zRtZ+e22W0w2_CJ2I*tl!48CagByi4YxOu}sq9Y4iBBgQ zZ;76qOQH!eYQP$e!AKAcJ}AB5-5IcA@d8w#^g@T3&dgpulz-Cc%-*|urnNbV{Gax^ z?eD+#{x0kLJ~)lj_;W+1>qV*0;V z;<>t_7g#4P@iwmk1qmdsUbfUStd9Y|TVP;i68~i*#Z&Y~>jipZkI1cLC-XG&6_#Ob zWSo3TMb<VnloLT~EMt9))wb_t9z`$fds1weiDS%fvYLsiPBH2ZnQDk6uT zc5^7mPDSrl!}_vfTUQ)F+oLxD4{1WMdd9!Hc|m5n$vQyR>+YsqvNZO#t<^15JLgwo z1!6$$$bb7m(z}AAh5(d3HiVR`TljRMmz2LruK4O$zQL{wjY9)Z0kt|Lq(2FsQU|U{ z&Lnw&nv-iz0UQ(1_C;r*+zXKT!Vl?Dy;NHGm#6;#j+0`o?rE&cS33Uzu^t4%0M>8g zZsvJekQx2@V+fHo*5xa0rzlknI`ob)Spqpmmw!>yKWNgnt%6whXm^XApJLUDL8`0V z*CWqymfo()hTHYJB z=sn`2^Q$mRE>02(+W)np;)L1!GUvU2{O{<&F_nE6Qe#D~Xf|dD+?d3-D1(IUiL`C2 z;D7RKZzdQDbJeOfr}T*v25leAvW+P%&S;$=IlOmqK~5megP0ekG0q%cjYX8Luf59F z*IsobYlouaRHM0~(;q09t|si8%+WECi+{%X&Xwsj+iG(Krv%FL75=}a@Lib3Y|Ie4 zCxKK>Okic}5Rq_UeN+~H!uVe{{lz}^`kQW`|!xqqTl z0$nper8HP{=8EHAOpF`dJh_{!DY|1~1bbl<4wSCc9kloM8JwY)z_G^mIKKhN3WERtBFmGXm z+WH8Q3O|NVINqP;hpz`Xd?0}cEM8H=+`36mP?GrceEI9%2{WYQhDKVxISl-_Sn>l$ zM(Eo9D?JiW}=_T2jUA>LC80foTera{^p)Wi`>}Gf;(|ZwEZQS%3bWPaY=Q z)PK650>c+4ul{gCVkpfgTMv^?S+ z&Oz-^QfHN=vA6MuqQHxcUJp$bNst%thoZ%hhv~ZHvseduC&kuI%18l3HevAcv|sWS zi_rqGVKHj9f;MB&fHIHq{q=E#pRw2n(gD^ETK4Xl>NV?WoW`FWzXM%bGkOQp1Xln6 N002ovPDHLkV1n_K9bf Date: Sat, 14 Dec 2019 19:22:52 +0100 Subject: [PATCH 4/4] Updated description and apps.json --- apps.json | 4 ++-- apps/berlinc/add_to_apps.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/apps.json b/apps.json index 78d3574ea..2e484574c 100644 --- a/apps.json +++ b/apps.json @@ -626,8 +626,8 @@ }, { "id": "berlinc", "name": "Berlin Clock", - "icon": "app.png", - "description": "Berlin Clock", + "icon": "berlin-clock.png", + "description": "Berlin Clock (see https://en.wikipedia.org/wiki/Mengenlehreuhr)", "tags": "", "storage": [ {"name":"+berlinc","url":"berlin-clock.json"}, diff --git a/apps/berlinc/add_to_apps.json b/apps/berlinc/add_to_apps.json index 4c92880a9..a3d2e84a8 100644 --- a/apps/berlinc/add_to_apps.json +++ b/apps/berlinc/add_to_apps.json @@ -2,7 +2,7 @@ { "id": "berlinc", "name": "Berlin Clock", "icon": "berlin-clock.png", - "description": "Berlin Clock", + "description": "Berlin Clock (see https://en.wikipedia.org/wiki/Mengenlehreuhr)", "tags": "", "storage": [ {"name":"+berlinc","url":"berlin-clock.json"},