From 9178b8b5959811518d0315b6ba10a0f4a31ff97e Mon Sep 17 00:00:00 2001 From: Ian Ward Date: Fri, 8 Nov 2024 08:24:04 +0000 Subject: [PATCH] Scrolly app --- apps/scrolly/ChangeLog | 1 + apps/scrolly/README.md | 25 ++++ apps/scrolly/app-icon.js | 1 + apps/scrolly/app.js | 262 ++++++++++++++++++++++++++++++++++++ apps/scrolly/app.png | Bin 0 -> 313 bytes apps/scrolly/metadata.json | 21 +++ apps/scrolly/screenshot.gif | Bin 0 -> 44907 bytes 7 files changed, 310 insertions(+) create mode 100644 apps/scrolly/ChangeLog create mode 100644 apps/scrolly/README.md create mode 100644 apps/scrolly/app-icon.js create mode 100644 apps/scrolly/app.js create mode 100644 apps/scrolly/app.png create mode 100644 apps/scrolly/metadata.json create mode 100644 apps/scrolly/screenshot.gif diff --git a/apps/scrolly/ChangeLog b/apps/scrolly/ChangeLog new file mode 100644 index 000000000..1a3bc1757 --- /dev/null +++ b/apps/scrolly/ChangeLog @@ -0,0 +1 @@ +0.01: New app! diff --git a/apps/scrolly/README.md b/apps/scrolly/README.md new file mode 100644 index 000000000..8bfab780b --- /dev/null +++ b/apps/scrolly/README.md @@ -0,0 +1,25 @@ +# ![Image](app.png "icon") Scrolly + +**Note:** This app requires a [keyboard library](https://banglejs.com/apps/?c=textinput#) + +Scrolly is a simple app designed to display scrolling text across your screen in a clean and dynamic way. Perfect for announcements or just for fun! + +![Image](screenshot.gif "screenshot") + +## Usage + +* **Edit Text:** Tap the text area or the pencil icon to modify your message. +* **Access Settings:** Tap the gear icon to open the settings menu. +* **Start Scrolling:** Tap the play icon to begin the scrolling text. + +## Features + +* **Customizable Scroll Speed:** Control how fast or slow the text moves. +* **Multiple Scroll Directions:** Choose from 0, 90, 180, or 270 degree rotation of the screen +* **No Screen Dimming:** Optionally keep your screen bright and active while the text scrolls +* **Countdown:** Start your scroll with an optional countdown timer, giving your audience a brief pause before the message begins to move. +* **Persistent settings:** Automatically remembers your last entered message and settings when you exit the app, so you can pick up right where you left off without having to re-enter everything. + +## Author + +Woogal [github](https://github.com/retcurve) diff --git a/apps/scrolly/app-icon.js b/apps/scrolly/app-icon.js new file mode 100644 index 000000000..e2ae389a9 --- /dev/null +++ b/apps/scrolly/app-icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("mEwgI63nfcAp4AEgeAgPAApoXHAqpNdAAJBFApYAJNa5NZAGQA==")) diff --git a/apps/scrolly/app.js b/apps/scrolly/app.js new file mode 100644 index 000000000..8bbcb60b4 --- /dev/null +++ b/apps/scrolly/app.js @@ -0,0 +1,262 @@ +Bangle.loadWidgets(); + +Graphics.prototype.setFontDoto = function(scale) { + // Actual height 40 (39 - 0) + // 1 BPP + return this.setFontCustom( + E.toString(require('heatshrink').decompress(atob('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'))), + 32, + atob("GAwQFBQUFAwQEBQUEBQQFBQUFBQUFBQUFBQQEBQUFBQUFBQUFBQUFBQQFBQUFBQUFBQUFBQUFBQUFBQQFBAUFBAUFBQUFBQUFBAUFBAUFBQUFBQUFBQUFBQUFBQMFBQAFgsQACcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADBQUExQGFBAUFBgXABQUEBYNDBAUFAwQCxQYHBwdFBQUFBQUFBQUFBQUFBAQEBAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEBAQEBQUFBQUFBQUFBQUFBQUFBQ="), + 40+(scale<<8)+(1<<16) + ); +}; + +// Load settings +const SETTINGS = 'scrolly.json'; +let settings = Object.assign({ + maxBright: true, + doNotDim: true, + speed: 50, + rotate: 0, + countdown: true, + lastText: '', + rememberText: true +}, require('Storage').readJSON(SETTINGS, true) || {}); + +let x; +let scrollInterval, countdownInterval; +let countdownNum; +let text = settings.lastText; +let originalOptions = Bangle.getOptions(); +let brightness = require('Storage').readJSON('setting.json').brightness; + +// Main interface +var Layout = require("Layout"); +var layout = new Layout( { + type: 'v', c: [ + { // Text area + type: 'txt', + font: '6x8:2', + label: text ? text : 'Enter text...', // Show prompt if text not set + col: text ? g.theme.fg2 : '#555', // Grey text if prompt shown + id: 'text', + wrap: true, + height: Bangle.appRect.h - 52, // Icons are 32px, padding 10px top and bottom + width: g.getWidth(), + valign:0, + cb: l=> editText() // Tapping the text area triggers the same editor as the pen icon + }, + { + type: 'h', c: [ + { // Edit icon + type: 'img', + pad: 10, + src: require("heatshrink").decompress(atob("kEg4kA///6f8gH41VStP6gGYBYPv2dV1uyykkvOe+/LrVNteW2sA3Bc4hnM4APM5mY5geM51m3ogL5mGs1r7geK48bswgL5lxiO2EAJBIDwMRiIgC3ggHDwURilGs25B4weDiNCkgPIDwkikV7xgeLkUvrpPGDw311guFDw9aD0sMyIeMB4O2DxgPCsIeLgHNW4MSDxUA5IPBsgeKgHOB4Nmp4eJgHLB4W/DxMM522s279PDDxEM7HuxPc5kwB5Pd5nMFhAPDDZQAyA=")), + cb: l=> editText() + }, + { // Settings icon + type: 'img', + pad: 10, + src: require("heatshrink").decompress(atob("kEg4UA///6ec1VSqOMEzUVqoHFqoHUisBA4NAiglDr/1qtUCofq1YZDqte1Wq2oZBDoNaA4OlA4dqA4OpqtQA4Pq1EqEANAF4Oq0EK1QvCguqwEC1VQA4wPKD4IPFF4InBF4MAH4xHCvQHB1oHDL4ofBq4HB6pvDqt//p/DisFR4QHCV64HJiolEAAw=")), + cb: l=> showSettings() + }, + { // Scroll icon + type: 'img', + pad: 10, + src: require("heatshrink").decompress(atob("kEg4UB8EH/4AC+mnqoAQqAgBA4goCgoGCqgxDA4VAA4cVCwgYEA4kBDwogCGoMD+AHFgWsFAYHC1XAA4Q2BA4OwA42oA4wYCgoHEDAIHNC42rMAQHD0AvGI4ZPCCwQHDgYWCM4J3HA4qHBS5CnHYwTIFDwoQECwTJDAwoAFA")), + id: 'scrollBtn', + cb: l=>{ + if (text) { + scrollText(); + } else { + E.showAlert('No text to scroll').then(() => { + layout.setUI(); + layout.render(); + }); + } + } + }, + ] + } + ] +}, {back: load}); + +// Display scrolling text +function scrollText() { + require("widget_utils").hide(); + + Bangle.setUI({ + mode:"custom", + btn: () => { // Button returns to main interface + if (scrollInterval) // Stop scroll + clearInterval(scrollInterval); + if (countdownInterval) // Stop countdown + clearInterval(countdownInterval); + + // Reset screen to original settings + g.setRotation(0); + Bangle.setOptions(originalOptions); + Bangle.setLCDBrightness(brightness); + + // Draw the main interface + require("widget_utils").show(); + g.clearRect(Bangle.appRect); + layout.setUI(); + layout.render(); + } + }); + + // Setup screen + if (settings.doNotDim) { // Don't lock or turn off the backlight while scrolling + Bangle.setOptions({backlightTimeout: 0, lockTimeout: 0}); + Bangle.setBacklight(1); + } else { // For some reason the screen locking resets the font style and alignment, so don't allow this to happen while scrolling + Bangle.setOptions({lockTimeout: 0}); + } + if (settings.maxBright) { + Bangle.setLCDBrightness(1); + } + g.setRotation(settings.rotate); + + g.setFontDoto(4); + g.setColor(g.theme.fg); + g.setBgColor(g.theme.bg); + + if (settings.countdown) { // Display a countdown timer before scrolling + g.setFontAlign(0, 0); + countdownNum = 3; + countdown(); + countdownInterval = setInterval(() => { + if (countdownNum == 0) { + clearInterval(countdownInterval); + startScrolling(); + } else { + countdown(); + } + }, 1000); + } else { // No countdown, so just scroll + startScrolling(); + } +} + +// Start the scroll animation +function startScrolling() { + g.clear(); + g.setFontAlign(-1, 0); // Vertical align text + + x=g.getWidth(); // Start the text just off screen + + scrollInterval = setInterval(() => { + g.clear(); + g.drawString(text, x, g.getHeight()/2); + x=x-10; + if (x<-g.stringWidth(text)) { // Loop the text + x=g.getWidth(); + } + }, settings.speed); +} + +// Show countdown timer +function countdown() { + g.clear(); + g.drawString(countdownNum, g.getWidth()/2, g.getHeight()/2); + countdownNum--; +} + +// Load keyboard and set text +function editText() { + try { + require("textinput").input({text:text}).then(result => { + text = result; + if (settings.rememberText) { + setSetting('lastText', text); + } + layout.text.label = text ? text : 'Enter text...'; // Show prompt if text not set + layout.text.col = text ? g.theme.fg2 : '#555'; // Grey text if prompt shown + layout.setUI(); + layout.render(); + Bangle.drawWidgets(); + }); + } catch (error) { + E.showAlert('Please install a keyboard app').then(() => { + layout.setUI(); + layout.render(); + }); + } +} + +// Save setting key +function setSetting(key,value) { + settings[key] = value; + require('Storage').writeJSON(SETTINGS, settings); +} + +// Helper method which uses int-based menu item for set of string values and their labels +function stringItems(key, startvalue, values, labels) { + return { + value: (startvalue === undefined ? 0 : values.indexOf(startvalue)), + format: v => labels[v], + min: 0, + max: values.length - 1, + wrap: true, + step: 1, + onchange: v => { + setSetting(key,values[v]); + } + }; +} + +// Helper method which breaks string set settings down to local settings object +function stringInSettings(name, values, labels) { + return stringItems(name,settings[name], values, labels); +} + +// Settings menu +function showSettings() { + E.showMenu({ + '' : { 'title' : 'Settings' }, + '< Back' : () => { + g.clearRect(Bangle.appRect); + layout.setUI(); + layout.render(); + }, + 'Rotate': stringInSettings('rotate', [0, 1, 2, 3], [0, 90, 180, 270]), + 'Speed': stringInSettings('speed', [10, 50, 80], ['Fast', 'Medium', 'Slow']), + 'Max bright': { + value: !!settings.maxBright, + onchange: v => { + setSetting('maxBright', v); + }, + }, + "Don't dim": { + value: !!settings.doNotDim, + onchange: v => { + setSetting('doNotDim', v); + }, + }, + 'Countdown': { + value: !!settings.countdown, + onchange: v => { + setSetting('countdown', v); + }, + }, + 'Remember text': { + value: !!settings.rememberText, + onchange: v => { + setSetting('rememberText', v); + if (v) { + setSetting('lastText', text); + } else { + setSetting('lastText', ''); + } + }, + } + }); +} + +// Initial layout render +g.clear(); +Bangle.drawWidgets(); +layout.render(); + + diff --git a/apps/scrolly/app.png b/apps/scrolly/app.png new file mode 100644 index 0000000000000000000000000000000000000000..09b09a617f423553db1f77a00a8d23bd7ede13f7 GIT binary patch literal 313 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1|-9oezpTC#^NA%Cx&(BWL^R}pFLe1Lo%G- z&UnamSb?YIvGXe+v^tex-m5cdS;pI9}!89W$H{P8GKk=5{#L( z7FstJ*L^!2)K$BEz1{2GtIt+su%s{?aa3kFx8Ih>Y{N7jAx>v!ws-nx3RxyJC?7kZ zdZoJlQRZ6LBhN0i@EV9M&^}~8HzgrmaJf)|&$$Z?-WhXa(iH{TIT|__^DY*2P)d5E zYSfVO?|Qz*qN!dBuKhYqd3pc< literal 0 HcmV?d00001 diff --git a/apps/scrolly/metadata.json b/apps/scrolly/metadata.json new file mode 100644 index 000000000..6194813af --- /dev/null +++ b/apps/scrolly/metadata.json @@ -0,0 +1,21 @@ +{ + "id": "scrolly", + "name": "Scrolly", + "shortName":"Scrolly", + "icon": "app.png", + "screenshots" : [ { "url":"screenshot.gif" } ], + "version":"0.01", + "description": "Scrolly is a simple app designed to display scrolling text across your screen in a clean and dynamic way. Perfect for announcements or just for fun!", + "readme":"README.md", + "type": "app", + "tags": "tool", + "supports": ["BANGLEJS2"], + "dependencies": {"textinput":"type"}, + "storage": [ + {"name":"scrolly.app.js","url":"app.js"}, + {"name":"scrolly.img","url":"app-icon.js","evaluate":true} + ], + "data": [ + {"name":"scrolly.json"} + ] +} diff --git a/apps/scrolly/screenshot.gif b/apps/scrolly/screenshot.gif new file mode 100644 index 0000000000000000000000000000000000000000..ed9a3e7463841ca9c6ad048047105f90bad0d23f GIT binary patch literal 44907 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 Xq*LXe(-yPt6-SmfGd#l#Z)N@m>%63N literal 0 HcmV?d00001