accellog 0.04: Localisation, change Exit->Back to allow back-arrow to appear on 2v13 firmware

master
Gordon Williams 2022-04-26 15:05:42 +01:00
parent 5d3d0b6e2c
commit f572c66a8a
3 changed files with 24 additions and 24 deletions

View File

@ -1,3 +1,4 @@
0.01: New App!
0.02: Use the new multiplatform 'Layout' library
0.03: Exit as first menu option, dont show decimal places for seconds
0.04: Localisation, change Exit->Back to allow back-arrow to appear on 2v13 firmware

View File

@ -7,21 +7,21 @@ function getFileName(n) {
function showMenu() {
var menu = {
"" : { title : "Accel Logger" },
"Exit" : function() {
"" : { title : /*LANG*/"Accel Logger" },
"< Back" : function() {
load();
},
"File No" : {
/*LANG*/"File No" : {
value : fileNumber,
min : 0,
max : MAXLOGS,
onchange : v => { fileNumber=v; }
},
"Start" : function() {
/*LANG*/"Start" : function() {
E.showMenu();
startRecord();
},
"View Logs" : function() {
/*LANG*/"View Logs" : function() {
viewLogs();
},
};
@ -37,29 +37,29 @@ function viewLog(n) {
if (ll) length = Math.round( (ll.split(",")[0]|0)/1000 );
var menu = {
"" : { title : "Log "+n }
"" : { title : "Log "+n },
"< Back" : () => { viewLogs(); }
};
menu[records+" Records"] = "";
menu[length+" Seconds"] = "";
menu["DELETE"] = function() {
E.showPrompt("Delete Log "+n).then(ok=>{
menu[records+/*LANG*/" Records"] = "";
menu[length+/*LANG*/" Seconds"] = "";
menu[/*LANG*/"DELETE"] = function() {
E.showPrompt(/*LANG*/"Delete Log "+n).then(ok=>{
if (ok) {
E.showMessage("Erasing...");
E.showMessage(/*LANG*/"Erasing...");
f.erase();
viewLogs();
} else viewLog(n);
});
};
menu["< Back"] = function() {
viewLogs();
};
E.showMenu(menu);
}
function viewLogs() {
var menu = {
"" : { title : "Logs" }
"" : { title : /*LANG*/"Logs" },
"< Back" : () => { showMenu(); }
};
var hadLogs = false;
@ -67,14 +67,13 @@ function viewLogs() {
var f = require("Storage").open(getFileName(i), "r");
if (f.readLine()!==undefined) {
(function(i) {
menu["Log "+i] = () => viewLog(i);
menu[/*LANG*/"Log "+i] = () => viewLog(i);
})(i);
hadLogs = true;
}
}
if (!hadLogs)
menu["No Logs Found"] = function(){};
menu["< Back"] = function() { showMenu(); };
menu[/*LANG*/"No Logs Found"] = function(){};
E.showMenu(menu);
}
@ -83,7 +82,7 @@ function startRecord(force) {
// check for existing file
var f = require("Storage").open(getFileName(fileNumber), "r");
if (f.readLine()!==undefined)
return E.showPrompt("Overwrite Log "+fileNumber+"?").then(ok=>{
return E.showPrompt(/*LANG*/"Overwrite Log "+fileNumber+"?").then(ok=>{
if (ok) startRecord(true); else showMenu();
});
}
@ -93,14 +92,14 @@ function startRecord(force) {
var Layout = require("Layout");
var layout = new Layout({ type: "v", c: [
{type:"txt", font:"6x8", label:"Samples", pad:2},
{type:"txt", font:"6x8", label:/*LANG*/"Samples", pad:2},
{type:"txt", id:"samples", font:"6x8:2", label:" - ", pad:5, bgCol:g.theme.bg},
{type:"txt", font:"6x8", label:"Time", pad:2},
{type:"txt", font:"6x8", label:/*LANG*/"Time", pad:2},
{type:"txt", id:"time", font:"6x8:2", label:" - ", pad:5, bgCol:g.theme.bg},
{type:"txt", font:"6x8:2", label:"RECORDING", bgCol:"#f00", pad:5, fillx:1},
{type:"txt", font:"6x8:2", label:/*LANG*/"RECORDING", bgCol:"#f00", pad:5, fillx:1},
]
},{btns:[ // Buttons...
{label:"STOP", cb:()=>{
{label:/*LANG*/"STOP", cb:()=>{
Bangle.removeListener('accel', accelHandler);
showMenu();
}}

View File

@ -2,7 +2,7 @@
"id": "accellog",
"name": "Acceleration Logger",
"shortName": "Accel Log",
"version": "0.03",
"version": "0.04",
"description": "Logs XYZ acceleration data to a CSV file that can be downloaded to your PC",
"icon": "app.png",
"tags": "outdoor",