Merge pull request #1942 from pidajo/wristlight

[New App] Wristlight
pull/1954/head
Gordon Williams 2022-06-13 15:34:55 +01:00 committed by GitHub
commit 271d0b2047
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 78 additions and 0 deletions

BIN
apps/wristlight/Icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

View File

@ -0,0 +1,9 @@
# Wrist Light
A flash light on your wrist with different colors
![](screenshot.png)
![](screenshot_red.png)
## Creator
[@pidajo](https://github.com/pidajo)

52
apps/wristlight/app.js Normal file
View File

@ -0,0 +1,52 @@
function draw(color) {
if (color == undefined) {
color = -1;
}
g.clear();
g.setColor(color);
g.fillRect(0, 0, g.getWidth(), g.getHeight());
}
function draw2Pattern() {
colors = ["ff0000", "8080ff", "00ff00",
"ffffff"];
drawPattern(2, colors);
}
function draw3Pattern() {
colors = ["ff0000", "00ff00", "0000ff",
"ff00ff", "ffffff", "00ffff",
"ffff00", "ff8000", "ff0080"];
drawPattern(3, colors);
}
function drawPattern(size, colors) {
g.clear();
var w = g.getWidth() / size;
var h = g.getHeight() / size;
for (var i = 0; i < size; i++) {
for (var j = 0; j < size; j++) {
var color = colors[i*size + j];
g.setColor("#" + color);
g.fillRect(j * w, i * h, j * w + w, i * h + h);
}
}
Bangle.on("touch", function(btn, xy) {
var x = parseInt((xy.x) / w);
var y = parseInt((xy.y) / h);
draw("#" + colors[y * size + x]);
});
}
// Clear the screen once, at startup
// draw immediately at first
draw3Pattern();
/*
require("Storage").write("wristlight.info",{
"id":"wristlight",
"name":"Wrist Light",
"src":"wristlight.app.js",
"icon":"wristlight.img"
});
*/

View File

@ -0,0 +1,16 @@
{ "id": "wristlight",
"name": "Wrist Light",
"shortName":"Wrist Light",
"icon": "wristlight48.png",
"version":"0.01",
"description": "A flash light with different colors on your wrist",
"tags": "flash,light",
"allow_emulator":true,
"supports": ["BANGLEJS", "BANGLEJS2"],
"readme":"README.md",
"screenshots" : [ { "url":"screenshot.png" }, { "url":"screenshot_red.png" } ],
"storage": [
{"name":"wristlight.app.js","url":"app.js"},
{"name":"wristlight.img","url":"wristlight-icon.js","evaluate":true}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 261 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 160 B

View File

@ -0,0 +1 @@
atob("MDCEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMzMzMzMAN3d3d3d3QDu7u7u7gAAAAAADMzMzMzMDd3d3d3d3dDu7u7u7uAAAAAAzMzMzMzMDd3d3d3d3dDu7u7u7u4AAAAMzMzMzMzMDd3d3d3d3dDu7u7u7u7gAAAMzMzMzMzMDd3d3d3d3dDu7u7u7u7gAAAMzMzMzMzMDd3d3d3d3dDu7u7u7u7gAAAMzMzMzMzMDd3d3d3d3dDu7u7u7u7gAAAMzMzMzMzMDd3d3d3d3dDu7u7u7u7gAAAMzMzMzMzMDd3d3d3d3dDu7u7u7u7gAAAMzMzMzMzMDd3d3d3d3dDu7u7u7u7gAAAMzMzMzMzMDd3d3d3d3dDu7u7u7u7gAAAMzMzMzMzMDd3d3d3d3dDu7u7u7u7gAAAMzMzMzMzMDd3d3d3d3dDu7u7u7u7gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAu7u7u7uwAAAA//8AAAAHd3d3d3cAAAALu7u7u7u7AAD/////AAB3d3d3d3dwAAALu7u7u7u7AA//////8AB3d3d3d3dwAAALu7u7u7u7AP///////wB3d3d3d3dwAAALu7u7u7u7AP///////wB3d3d3d3dwAAALu7u7u7u7D/////////B3d3d3d3dwAAALu7u7u7u7D/////////B3d3d3d3dwAAALu7u7u7u7D/////////B3d3d3d3dwAAALu7u7u7u7A////////zB3d3d3d3dwAAALu7u7u7u7AP///////wB3d3d3d3dwAAALu7u7u7u7AP///////wB3d3d3d3dwAAALu7u7u7u7AA//////8AB3d3d3d3dwAAALu7u7u7u7AAD/////AAB3d3d3d3dwAAAMu7u7u7u8AAACMzMgAAB3d3d3d3dwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALu7u7u7u7AIiIiIiIiACIiIiIiIiAAAALu7u7u7u7CYiIiIiIiJCIiIiIiIiAAAALu7u7u7u7CYiIiIiIiJCIiIiIiIiAAAALu7u7u7u7CYiIiIiIiJCIiIiIiIiAAAALu7u7u7u7CYiIiIiIiJCIiIiIiIiAAAALu7u7u7u7CYiIiIiIiJCIiIiIiIiAAAALu7u7u7u7CYiIiIiIiJCIiIiIiIiAAAALu7u7u7u7CYiIiIiIiJCIiIiIiIiAAAALu7u7u7u7CYiIiIiIiJCIiIiIiIiAAAALu7u7u7u7CYiIiIiIiJCIiIiIiIiAAAAAu7u7u7u7CYiIiIiIiJCIiIiIiIgAAAAAq7u7u7u7CYiIiIiIiJCIiIiIiIAAAAAAALu7u7u7CoiIiIiIiKCIiIiIiAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==")

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB