From 519b13c1e33d126b6736c24e45094315e75c9452 Mon Sep 17 00:00:00 2001 From: Marco Heiming Date: Wed, 26 Jan 2022 12:49:39 +0100 Subject: [PATCH] Add new screenshots and update README --- apps/circlesclock/README.md | 4 +++- apps/circlesclock/app.js | 18 ++++++++---------- apps/circlesclock/screenshot-dark-4.png | Bin 0 -> 3972 bytes apps/circlesclock/screenshot-dark.png | Bin 3857 -> 3926 bytes apps/circlesclock/screenshot-light-4.png | Bin 0 -> 3990 bytes apps/circlesclock/screenshot-light.png | Bin 3823 -> 3933 bytes 6 files changed, 11 insertions(+), 11 deletions(-) create mode 100644 apps/circlesclock/screenshot-dark-4.png create mode 100644 apps/circlesclock/screenshot-light-4.png diff --git a/apps/circlesclock/README.md b/apps/circlesclock/README.md index 628979555..242adcf4b 100644 --- a/apps/circlesclock/README.md +++ b/apps/circlesclock/README.md @@ -1,6 +1,6 @@ # Circles clock -A clock with circles for different data at the bottom in a probably familiar style +A clock with three or four circles for different data at the bottom in a probably familiar style By default the time, date and day of week is shown. @@ -18,6 +18,8 @@ It can show the following information (this can be configured): ## Screenshots ![Screenshot dark theme](screenshot-dark.png) ![Screenshot light theme](screenshot-light.png) +![Screenshot dark theme with four circles](screenshot-dark-4.png) +![Screenshot light theme with four circles](screenshot-light-4.png) ## Creator Marco ([myxor](https://github.com/myxor)) diff --git a/apps/circlesclock/app.js b/apps/circlesclock/app.js index 1d2e14912..221fc637b 100644 --- a/apps/circlesclock/app.js +++ b/apps/circlesclock/app.js @@ -45,9 +45,6 @@ let settings = storage.readJSON("circlesclock.json", 1) || { settings.stepGoal = d != undefined && d.settings != undefined ? d.settings.goal : 10000; } - -const circleCount = settings.circleCount || 3; - /* * Read location from myLocation app */ @@ -57,6 +54,7 @@ function getLocation() { let location = getLocation(); const showWidgets = settings.showWidgets || false; +const circleCount = settings.circleCount || 3; let hrtValue; let now = Math.round(new Date().getTime() / 1000); @@ -92,16 +90,16 @@ const h3 = Math.round(8 * h / 8 - hOffset - 3); // circle y position */ const parts = circleCount * 2; const circlePosX = [ - Math.round(1 * w / parts), - Math.round(3 * w / parts), - Math.round(5 * w / parts), - Math.round(7 * w / parts), + Math.round(1 * w / parts), // circle1 + Math.round(3 * w / parts), // circle2 + Math.round(5 * w / parts), // circle3 + Math.round(7 * w / parts), // circle4 ]; const radiusOuter = circleCount == 3 ? 25 : 20; const radiusInner = circleCount == 3 ? 20 : 15; -const circleFont = circleCount == 3 ? "Vector:15" : "Vector:13"; -const circleFontBig = circleCount == 3 ? "Vector:16" : "Vector:14"; +const circleFont = circleCount == 3 ? "Vector:15" : "Vector:12"; +const circleFontBig = circleCount == 3 ? "Vector:16" : "Vector:13"; const defaultCircleTypes = ["steps", "hr", "battery", "weather"]; @@ -190,7 +188,7 @@ function getCirclePosition(type) { if (circlePositionsCache[type] >= 0) { return circlePosX[circlePositionsCache[type]]; } - for (let i = 1; i <= 3; i++) { + for (let i = 1; i <= circleCount; i++) { const setting = settings['circle' + i]; if (setting == type) { circlePositionsCache[type] = i - 1; diff --git a/apps/circlesclock/screenshot-dark-4.png b/apps/circlesclock/screenshot-dark-4.png new file mode 100644 index 0000000000000000000000000000000000000000..4f1a1b457630f486ffdfc37257f3cb4e002a91c6 GIT binary patch literal 3972 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 literal 0 HcmV?d00001 diff --git a/apps/circlesclock/screenshot-dark.png b/apps/circlesclock/screenshot-dark.png index 00c0e3399cf9a1f4fbd299e259d245e7a9519db7..4bf8cae9f523f74cb34cd4393d7dbd098a1c3ca1 100644 GIT binary patch delta 3899 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 literal 3823 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