Compare commits
3 Commits
83531ad29c
...
404c970f36
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
404c970f36 | ||
|
|
8d00f8633e | ||
|
|
5c8ee270fc |
3
.gitignore
vendored
@@ -7,3 +7,6 @@ DOC.md
|
||||
NOTIFICATION.md
|
||||
SLEEP.md
|
||||
mods.png
|
||||
SETTINGS.md
|
||||
SAVE.md
|
||||
LIGHT.md
|
||||
|
||||
@@ -1,32 +1,41 @@
|
||||
; Quick Settings Timer/Chrono
|
||||
; Adds a countdown timer and stopwatch to the quick settings panel
|
||||
; Quick Settings Timer/Chrono/Alarm
|
||||
; Adds a countdown timer, stopwatch, and alarm system to the quick settings panel
|
||||
; Timer state lives in Values.timerManager so it persists across menu opens/closes
|
||||
|
||||
AFFECT [[1658694193319203921]]
|
||||
TRAVERSE [[6502786168]]
|
||||
LOCATE AFTER ALL
|
||||
INSERT {
|
||||
property ~&214620122227&~ timerManager: _timerManager
|
||||
property alias timerManager: _timerManager
|
||||
|
||||
~&6502786168&~ {
|
||||
~&5972374&~: _timerManager
|
||||
property ~&6503679477&~ timerMode: ~&6504329801&~
|
||||
property bool timerMode: ~&6504329801&~
|
||||
property ~&197088788&~ totalMs: 0
|
||||
property ~&197088788&~ remainMs: 0
|
||||
property ~&6503679477&~ isRunning: ~&214625660372&~
|
||||
property bool isRunning: ~&214625660372&~
|
||||
property ~&7083178290016&~ ~&478322454160073828&~: "00:00"
|
||||
property ~&6503679477&~ ~&16765420033347753489&~: ~&214625660372&~
|
||||
property bool ~&16765420033347753489&~: ~&214625660372&~
|
||||
property ~&197088788&~ presetMs: 60000
|
||||
property ~&6503679477&~ addMode: ~&6504329801&~
|
||||
property bool addMode: ~&6504329801&~
|
||||
property bool blinkLightOnNotification: ~&214625660372&~
|
||||
property ~&197102514&~ _blinkLight: ~&6504117156&~
|
||||
property bool hasFrontlight: ~&214625660372&~
|
||||
|
||||
/* Alarm state*/
|
||||
property bool alarmMode: ~&214625660372&~
|
||||
property ~&197102514&~ alarms: []
|
||||
property ~&197088788&~ nextAlarmId: 1
|
||||
property ~&7083178290016&~ alarmNotificationText: ""
|
||||
property ~&197088788&~ lastNotifiedMinute: -1 /* absolute epoch-minute of the last fired alarm*/
|
||||
|
||||
function fmt(ms) {
|
||||
~&197102514&~ ~&180970&~ = ~&6502909715&~.~&197079679&~(ms);
|
||||
~&197102514&~ ~&180977&~ = ~&6502909715&~.~&214626058827&~(~&180970&~ / 3600000);
|
||||
~&197102514&~ ~&180982&~ = ~&6502909715&~.~&214626058827&~((~&180970&~ % 3600000) / 60000);
|
||||
~&197102514&~ m = ~&6502909715&~.~&214626058827&~((~&180970&~ % 3600000) / 60000);
|
||||
~&197102514&~ ~&180988&~ = ~&6502909715&~.~&214626058827&~((~&180970&~ % 60000) / 1000);
|
||||
~&197102514&~ mm = ~&180982&~.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~);
|
||||
~&197102514&~ mm = m.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~);
|
||||
~&197102514&~ ss = ~&180988&~.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~);
|
||||
|
||||
~&5972376&~ (~&180977&~ > 0) {
|
||||
~&7083121450889&~ ~&180977&~.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~) + ~&"180931&~ + mm + ~&"180931&~ + ss;
|
||||
}
|
||||
@@ -34,36 +43,122 @@ AFFECT [[1658694193319203921]]
|
||||
}
|
||||
|
||||
function refresh() {
|
||||
~&5972376&~ (timerMode) {
|
||||
~&478322454160073828&~ = fmt(remainMs > 0 ? remainMs : 0);
|
||||
~&5972376&~ (_timerManager.alarmMode) ~&7083121450889&~;
|
||||
~&5972376&~ (_timerManager.timerMode) {
|
||||
_timerManager.~&478322454160073828&~ = _timerManager.fmt(_timerManager.remainMs > 0 ? _timerManager.remainMs : 0);
|
||||
} ~&6503784146&~ {
|
||||
~&478322454160073828&~ = fmt(totalMs);
|
||||
_timerManager.~&478322454160073828&~ = _timerManager.fmt(_timerManager.totalMs);
|
||||
}
|
||||
}
|
||||
|
||||
function go() {
|
||||
~&5972376&~ (timerMode) {
|
||||
~&5972376&~ (remainMs <= 0) ~&7083121450889&~;
|
||||
~&5972376&~ (_timerManager.timerMode) {
|
||||
~&5972376&~ (_timerManager.remainMs <= 0) ~&7083121450889&~;
|
||||
}
|
||||
~&16765420033347753489&~ = ~&214625660372&~;
|
||||
isRunning = ~&6504329801&~;
|
||||
_timerManager.~&16765420033347753489&~ = ~&214625660372&~;
|
||||
_timerManager.isRunning = ~&6504329801&~;
|
||||
_tick.~&214641748151&~();
|
||||
}
|
||||
|
||||
function ~&6504295855&~() {
|
||||
isRunning = ~&214625660372&~;
|
||||
_timerManager.isRunning = ~&214625660372&~;
|
||||
_tick.~&6504295855&~();
|
||||
}
|
||||
|
||||
function doReset() {
|
||||
~&6504295855&~();
|
||||
~&16765420033347753489&~ = ~&214625660372&~;
|
||||
~&5972376&~ (timerMode) {
|
||||
remainMs = totalMs;
|
||||
_timerManager.~&6504295855&~();
|
||||
_timerManager.~&16765420033347753489&~ = ~&214625660372&~;
|
||||
~&5972376&~ (_timerManager.timerMode) {
|
||||
_timerManager.remainMs = _timerManager.totalMs;
|
||||
} ~&6503784146&~ {
|
||||
totalMs = 0;
|
||||
_timerManager.totalMs = 0;
|
||||
}
|
||||
_timerManager.refresh();
|
||||
}
|
||||
|
||||
/* Alarm management*/
|
||||
function addAlarm(~&180977&~, m) {
|
||||
~&197102514&~ ~&180970&~ = { ~&5972374&~: _timerManager.nextAlarmId, hour: ~&180977&~, minute: m, ~&233726547792244&~: ~&6504329801&~ };
|
||||
_timerManager.alarms = _timerManager.alarms.~&7082546043425&~([~&180970&~]);
|
||||
_timerManager.nextAlarmId++;
|
||||
_timerManager.saveAlarms();
|
||||
}
|
||||
|
||||
function removeAlarm(~&5972374&~) {
|
||||
_timerManager.alarms = _timerManager.alarms.~&7082656280847&~(function(~&180970&~) {
|
||||
~&7083121450889&~ ~&180970&~.~&5972374&~ !== ~&5972374&~;
|
||||
});
|
||||
_timerManager.saveAlarms();
|
||||
}
|
||||
|
||||
function toggleAlarm(~&5972374&~) {
|
||||
_timerManager.alarms = _timerManager.alarms.~&197092711&~(function(~&180970&~) {
|
||||
~&5972376&~ (~&180970&~.~&5972374&~ !== ~&5972374&~) ~&7083121450889&~ ~&180970&~;
|
||||
~&7083121450889&~ { ~&5972374&~: ~&180970&~.~&5972374&~, hour: ~&180970&~.hour, minute: ~&180970&~.minute, ~&233726547792244&~: !~&180970&~.~&233726547792244&~ };
|
||||
});
|
||||
_timerManager.saveAlarms();
|
||||
}
|
||||
|
||||
function dismissAlarmNotification() {
|
||||
_timerManager.~&16765420033347753489&~ = ~&214625660372&~;
|
||||
_timerManager.alarmNotificationText = "";
|
||||
}
|
||||
|
||||
function saveAlarms() {
|
||||
~&197102514&~ payload = {
|
||||
alarms: _timerManager.alarms,
|
||||
nextAlarmId: _timerManager.nextAlarmId,
|
||||
blinkLightOnNotification: _timerManager.blinkLightOnNotification
|
||||
};
|
||||
~&197102514&~ xhr = new XMLHttpRequest();
|
||||
xhr.~&6504147419&~("PUT", "file:///home/root/alarms.json");
|
||||
xhr.~&6504279475&~(~&6502785411&~.~&254548178208422824&~(payload));
|
||||
}
|
||||
|
||||
function loadAlarms() {
|
||||
~&197102514&~ xhr = new XMLHttpRequest();
|
||||
xhr.~&6504147419&~("GET", "file:///home/root/alarms.json");
|
||||
xhr.onreadystatechange = function() {
|
||||
~&5972376&~ (xhr.readyState === XMLHttpRequest.DONE) {
|
||||
try {
|
||||
~&197102514&~ ~&6503736259&~ = ~&6502785411&~.parse(xhr.responseText);
|
||||
_timerManager.alarms = ~&6503736259&~.alarms || [];
|
||||
_timerManager.nextAlarmId = ~&6503736259&~.nextAlarmId || 1;
|
||||
_timerManager.blinkLightOnNotification = ~&6503736259&~.blinkLightOnNotification || ~&214625660372&~;
|
||||
} catch (e) {
|
||||
_timerManager.alarms = [];
|
||||
_timerManager.nextAlarmId = 1;
|
||||
}
|
||||
}
|
||||
};
|
||||
xhr.~&6504279475&~();
|
||||
}
|
||||
|
||||
~&214604601930&~ {
|
||||
~&5972374&~: _alarmChecker
|
||||
~&7713147298280334&~: 5000
|
||||
~&7083121289162&~: ~&6504329801&~
|
||||
~&233743626668842&~: ~&6504329801&~
|
||||
~&495358363329399331&~: {
|
||||
~&197102514&~ d = new ~&6502586279&~();
|
||||
/* Use an absolute epoch-minute (not hour*60+minute) so that a recurring*/
|
||||
/* alarm can fire again on the next day instead of being permanently*/
|
||||
/* suppressed once it has matched lastNotifiedMinute.*/
|
||||
~&197102514&~ nowMinute = ~&6502909715&~.~&214626058827&~(d.getTime() / 60000);
|
||||
~&5972376&~ (nowMinute === _timerManager.lastNotifiedMinute) ~&7083121450889&~;
|
||||
|
||||
~&197102514&~ ~&180977&~ = d.getHours();
|
||||
~&197102514&~ m = d.getMinutes();
|
||||
~&197085552&~ (~&197102514&~ ~&180978&~ = 0; ~&180978&~ < _timerManager.alarms.~&7082886407723&~; ~&180978&~++) {
|
||||
~&197102514&~ ~&180970&~ = _timerManager.alarms[~&180978&~];
|
||||
~&5972376&~ (~&180970&~.~&233726547792244&~ && ~&180970&~.hour === ~&180977&~ && ~&180970&~.minute === m) {
|
||||
_timerManager.alarmNotificationText = ~&180970&~.hour.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~) + ~&"180931&~ + ~&180970&~.minute.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~);
|
||||
_timerManager.~&16765420033347753489&~ = ~&6504329801&~;
|
||||
_timerManager.lastNotifiedMinute = nowMinute;
|
||||
~&214621519406&~;
|
||||
}
|
||||
}
|
||||
}
|
||||
refresh();
|
||||
}
|
||||
|
||||
~&214604601930&~ {
|
||||
@@ -71,6 +166,7 @@ AFFECT [[1658694193319203921]]
|
||||
~&7713147298280334&~: 100
|
||||
~&7083121289162&~: ~&6504329801&~
|
||||
~&495358363329399331&~: {
|
||||
~&5972376&~ (_timerManager.alarmMode) ~&7083121450889&~;
|
||||
~&5972376&~ (_timerManager.timerMode) {
|
||||
_timerManager.remainMs -= 100;
|
||||
~&5972376&~ (_timerManager.remainMs <= 0) {
|
||||
@@ -84,6 +180,12 @@ AFFECT [[1658694193319203921]]
|
||||
_timerManager.refresh();
|
||||
}
|
||||
}
|
||||
|
||||
~&254480451320573660&~.~&495334332051582499&~: {
|
||||
_timerManager.loadAlarms();
|
||||
~&197102514&~ _c = ~&5971598&~.~&16810493623656567312&~("qrc:/qt/qml/xofm/modules/light/front/qml/QuickSettingsSlider.qml");
|
||||
_timerManager.hasFrontlight = (_c.~&7083177691309&~ === ~&254480451320573660&~.~&214602073246&~);
|
||||
}
|
||||
}
|
||||
}
|
||||
END TRAVERSE
|
||||
@@ -93,19 +195,22 @@ AFFECT [[12542166428983872557]]
|
||||
TRAVERSE [[7711468349764991]] > [[6502786168]] > [[8397788359424131273]] > [[14125623155555875541]]#[[233718721544006]]
|
||||
LOCATE AFTER [[254501558939456351]]#[[8399137618543699982]]
|
||||
INSERT {
|
||||
~&425121728314878811&~.~&15740235808997988493&~ {
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&254549367831075482&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233744706647566&~.~&214641496386&~
|
||||
}
|
||||
~&7081629735527&~.~&17520348323745447649&~: _timerUI.~&2122835675838176157&~
|
||||
~&7081629735527&~.~&8399743405844438450&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233740248806464&~.~&214641496386&~
|
||||
~&7081629735527&~.~&499747351624466981&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233740248806464&~.~&214641496386&~
|
||||
|
||||
~&14125623155555875541&~ {
|
||||
~&5972374&~: _timerUI
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&8399743405844438450&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233740248806464&~.~&214641496386&~
|
||||
~&7081629735527&~.~&499747351624466981&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233740248806464&~.~&214641496386&~
|
||||
~&7081629735527&~.~&254549367831075482&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233744706647566&~.~&214641496386&~
|
||||
~&233721384511543&~.~&6504027668&~: ~&7083038346995&~.~&6504027668&~
|
||||
~&233721384511543&~.~&214640173127&~: ~&7083038346995&~.~&214640173127&~
|
||||
~&233744706647566&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233744706647566&~.~&7082925185962&~
|
||||
|
||||
~&425121728314878811&~.~&15740235808997988493&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
}
|
||||
|
||||
/* Mode selector tabs*/
|
||||
~&254501558939456351&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
@@ -113,18 +218,21 @@ AFFECT [[12542166428983872557]]
|
||||
|
||||
~&7712155293725601&~ {
|
||||
~&214634455770&~: [
|
||||
{ ~&197101097&~: ~&"214604601930&~, isTimer: ~&6504329801&~ },
|
||||
{ ~&197101097&~: "Chrono", isTimer: ~&214625660372&~ }
|
||||
{ txt: ~&"214604601930&~, ~&6504074414&~: ~&"214642551402&~ },
|
||||
{ txt: "Chrono", ~&6504074414&~: "chrono" },
|
||||
{ txt: "Alarm", ~&6504074414&~: "alarm" }
|
||||
]
|
||||
~&7712922269353028&~: ~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 68
|
||||
|
||||
readonly property ~&6503679477&~ ~&7082453764421&~: ~&7082020628281&~.timerManager.timerMode === ~&254539508423767444&~.isTimer
|
||||
readonly property bool ~&7082453764421&~: ~&254539508423767444&~.~&6504074414&~ === ~&"214642551402&~ ? !~&7082020628281&~.timerManager.alarmMode && ~&7082020628281&~.timerManager.timerMode
|
||||
: ~&254539508423767444&~.~&6504074414&~ === "chrono" ? !~&7082020628281&~.timerManager.alarmMode && !~&7082020628281&~.timerManager.timerMode
|
||||
: ~&7082020628281&~.timerManager.alarmMode
|
||||
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: ~&254539508423767444&~.~&197101097&~
|
||||
~&6504315758&~: ~&254539508423767444&~.txt
|
||||
~&6503823200&~.~&254543497768871654&~: 24
|
||||
~&6503823200&~.~&6503679370&~: ~&7082453764421&~
|
||||
~&214622605608&~: ~&7082453764421&~ ? ~&7082020628281&~.~&8399340017235344933&~ : "#888888"
|
||||
@@ -132,14 +240,20 @@ AFFECT [[12542166428983872557]]
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: {
|
||||
~&5972376&~ (~&254539508423767444&~.~&6504074414&~ === "alarm") {
|
||||
~&7082020628281&~.timerManager.~&6504295855&~();
|
||||
~&7082020628281&~.timerManager.timerMode = ~&254539508423767444&~.isTimer;
|
||||
~&5972376&~ (!~&254539508423767444&~.isTimer) {
|
||||
~&7082020628281&~.timerManager.alarmMode = ~&6504329801&~;
|
||||
} ~&6503784146&~ {
|
||||
~&7082020628281&~.timerManager.alarmMode = ~&214625660372&~;
|
||||
~&7082020628281&~.timerManager.~&6504295855&~();
|
||||
~&7082020628281&~.timerManager.timerMode = ~&254539508423767444&~.~&6504074414&~ === ~&"214642551402&~;
|
||||
~&5972376&~ (~&254539508423767444&~.~&6504074414&~ === "chrono") {
|
||||
~&7082020628281&~.timerManager.totalMs = 0;
|
||||
}
|
||||
~&7082020628281&~.timerManager.refresh();
|
||||
}
|
||||
}
|
||||
}
|
||||
~&254501108490678590&~ {
|
||||
~&233721384511543&~.~&7082507142622&~: ~&7083038346995&~.~&7082507142622&~
|
||||
~&233721384511543&~.~&6504027668&~: ~&7083038346995&~.~&6504027668&~
|
||||
@@ -151,11 +265,11 @@ AFFECT [[12542166428983872557]]
|
||||
}
|
||||
}
|
||||
|
||||
/* Time display (fixed width to avoid resizing) */
|
||||
/* Time display*/
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254522510204479688&~: ~&5971598&~.~&14019785274593562237&~
|
||||
~&7081629735527&~.~&7797818826744279624&~: 300
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: _display.~&2122835675838176157&~
|
||||
~&233748328658231&~: !~&7082020628281&~.timerManager.alarmMode
|
||||
~&6503165774&~ {
|
||||
~&5972374&~: _display
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
@@ -171,15 +285,15 @@ AFFECT [[12542166428983872557]]
|
||||
~&254501558939456351&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&233744706647566&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233744706647566&~.~&214641496386&~
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.timerMode
|
||||
~&233748328658231&~: !~&7082020628281&~.timerManager.alarmMode && ~&7082020628281&~.timerManager.timerMode
|
||||
|
||||
~&7712155293725601&~ {
|
||||
~&214634455770&~: [
|
||||
{ ~&197101097&~: "1 m", ~&197102508&~: 60000 },
|
||||
{ ~&197101097&~: "5 m", ~&197102508&~: 300000 },
|
||||
{ ~&197101097&~: "10 m", ~&197102508&~: 600000 },
|
||||
{ ~&197101097&~: "30 m", ~&197102508&~: 1800000 },
|
||||
{ ~&197101097&~: "1 h", ~&197102508&~: 3600000 }
|
||||
{ txt: "1 m", ~&197102508&~: 60000 },
|
||||
{ txt: "5 m", ~&197102508&~: 300000 },
|
||||
{ txt: "10 m", ~&197102508&~: 600000 },
|
||||
{ txt: "30 m", ~&197102508&~: 1800000 },
|
||||
{ txt: "1 h", ~&197102508&~: 3600000 }
|
||||
]
|
||||
~&7712922269353028&~: ~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
@@ -191,7 +305,7 @@ AFFECT [[12542166428983872557]]
|
||||
}
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: ~&254539508423767444&~.~&197101097&~
|
||||
~&6504315758&~: ~&254539508423767444&~.txt
|
||||
~&6503823200&~.~&254543497768871654&~: 20
|
||||
~&6503823200&~.~&6503679370&~: ~&6504329801&~
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
@@ -219,6 +333,7 @@ AFFECT [[12542166428983872557]]
|
||||
~&254501558939456351&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&233744706647566&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233744706647566&~.~&214641496386&~
|
||||
~&233748328658231&~: !~&7082020628281&~.timerManager.alarmMode
|
||||
|
||||
/* Add/Set toggle (timer only)*/
|
||||
~&6502786168&~ {
|
||||
@@ -291,12 +406,363 @@ AFFECT [[12542166428983872557]]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* Alarm mode*/
|
||||
~&14125623155555875541&~ {
|
||||
~&5972374&~: _alarmCol
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmMode
|
||||
~&233744706647566&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233744706647566&~.~&214641496386&~
|
||||
|
||||
~&7712155293725601&~ {
|
||||
~&214634455770&~: ~&7082020628281&~.timerManager.alarms
|
||||
|
||||
~&7712922269353028&~: ~&14125623155555875541&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 80
|
||||
~&233744706647566&~: 0
|
||||
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.fillHeight: ~&6504329801&~
|
||||
|
||||
~&425121728314878811&~.~&6502767986&~ {
|
||||
~&5972374&~: _radioIcon
|
||||
~&233721384511543&~.~&6504027668&~: ~&7083038346995&~.~&6504027668&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&214646099849&~: 48
|
||||
~&7082729686082&~: 48
|
||||
~&6504284228&~: ~&425121728314878811&~.~&7082020628281&~.~&7713132906001613&~.~&7082925185962&~
|
||||
~&7083172477658&~: ~&254539508423767444&~.~&233726547792244&~ ? ~&"8609871882813839963&~ : ~&"7424611027213444377&~
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: ~&7082020628281&~.timerManager.toggleAlarm(~&254539508423767444&~.~&5972374&~)
|
||||
}
|
||||
}
|
||||
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&6504027668&~: _radioIcon.~&214640173127&~
|
||||
~&233721384511543&~.~&214640173127&~: _trashIcon.~&6504027668&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&490371291080887915&~: 12
|
||||
~&16491662607465103678&~: 12
|
||||
~&6504315758&~: ~&254539508423767444&~.hour.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~) + ~&"180931&~ + ~&254539508423767444&~.minute.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~)
|
||||
~&6503823200&~.~&254543497768871654&~: 28
|
||||
~&6503823200&~.~&7083316716977&~: ~&254539508423767444&~.~&233726547792244&~ ? ~&6502673216&~.~&6502529386&~ : ~&6502673216&~.~&7081724354802&~
|
||||
~&214622605608&~: ~&254539508423767444&~.~&233726547792244&~ ? ~&7082020628281&~.~&8399340017235344933&~ : "#888888"
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&6502767986&~ {
|
||||
~&5972374&~: _trashIcon
|
||||
~&233721384511543&~.~&214640173127&~: ~&7083038346995&~.~&214640173127&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&214646099849&~: 48
|
||||
~&7082729686082&~: 48
|
||||
~&6504284228&~: ~&425121728314878811&~.~&7082020628281&~.~&7713132906001613&~.~&7082925185962&~
|
||||
~&7083172477658&~: ~&"7312727925064657782&~
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: ~&7082020628281&~.timerManager.removeAlarm(~&254539508423767444&~.~&5972374&~)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
~&6503165774&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarms.~&7082886407723&~ === 0
|
||||
~&6504315758&~: "No alarms set"
|
||||
~&6503823200&~.~&254543497768871654&~: 20
|
||||
~&214622605608&~: "#888888"
|
||||
~&8400129142283184211&~: 20
|
||||
~&1353514028756047605&~: 20
|
||||
~&15450610953915458578&~: ~&6503165774&~.~&14019785274593562237&~
|
||||
}
|
||||
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 54
|
||||
|
||||
~&254501108490678590&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&7083116119249&~: 8
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
}
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: "Add alarms"
|
||||
~&6503823200&~.~&254543497768871654&~: 20
|
||||
~&6503823200&~.~&6503679370&~: ~&6504329801&~
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017260114793&~
|
||||
}
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: {
|
||||
~&7082020628281&~.timerManager.~&6504295855&~();
|
||||
~&6504254477&~.~&2766288418351025740&~.~&214622501183&~();
|
||||
~&6504254477&~.~&2766288418351025740&~.~&6504147419&~("systemclock/window/settings-info");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
END TRAVERSE
|
||||
END AFFECT
|
||||
|
||||
; Notification bar when timer finishes - visible in all modes
|
||||
; Alarm management inside system clock settings (inserted before the info message for more space)
|
||||
AFFECT /qt/qml/xofm/modules/systemclock/qml/window/SettingsInfoWindow.qml
|
||||
TRAVERSE [[7711468349764991]]#[[6504254477]] > [[8397788359424131273]] > [[14125623155555875541]]#[[8399784311425937276]]
|
||||
LOCATE AFTER [[425121728314878811.214599571833]]#[[254526274719339159]]
|
||||
INSERT {
|
||||
~&425121728314878811&~.~&214604609771&~ {
|
||||
~&6504315758&~: "Alarms"
|
||||
~&6504337259&~: ~&425121728314878811&~.~&214604609771&~.~&214594832564&~
|
||||
~&7081629735527&~.~&254549367831075482&~: ~&254477762679831355&~.~&7082020628281&~.~&7713442318223278&~.~&233744706647566&~.~&233748750575870&~
|
||||
}
|
||||
|
||||
~&7712155293725601&~ {
|
||||
~&214634455770&~: ~&7082020628281&~.timerManager.alarms
|
||||
|
||||
~&7712922269353028&~: ~&14125623155555875541&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 56
|
||||
~&233744706647566&~: 0
|
||||
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.fillHeight: ~&6504329801&~
|
||||
|
||||
~&425121728314878811&~.~&6502767986&~ {
|
||||
~&5972374&~: _alarmIcon
|
||||
~&233721384511543&~.~&6504027668&~: ~&7083038346995&~.~&6504027668&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&214646099849&~: 40
|
||||
~&7082729686082&~: 40
|
||||
~&6504284228&~: ~&425121728314878811&~.~&7082020628281&~.~&7713132906001613&~.~&7082925185962&~
|
||||
~&7083172477658&~: ~&"7424604169206955460&~
|
||||
}
|
||||
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&6504027668&~: _alarmIcon.~&214640173127&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&233721384511543&~.~&1765033595104803723&~: 1
|
||||
~&490371291080887915&~: 12
|
||||
~&6504315758&~: ~&254539508423767444&~.hour.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~) + ~&"180931&~ + ~&254539508423767444&~.minute.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~)
|
||||
~&6503823200&~.~&254543497768871654&~: 24
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&6502767986&~ {
|
||||
~&5972374&~: _toggleAlarmIcon
|
||||
~&233721384511543&~.~&214640173127&~: _deleteAlarmIcon.~&6504027668&~
|
||||
~&233721384511543&~.~&499747351624466981&~: 12
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&214646099849&~: 48
|
||||
~&7082729686082&~: 48
|
||||
~&6504284228&~: ~&425121728314878811&~.~&7082020628281&~.~&7713132906001613&~.~&7082925185962&~
|
||||
~&7083172477658&~: ~&254539508423767444&~.~&233726547792244&~ ? ~&"8609871882813839963&~ : ~&"7424611027213444377&~
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: ~&7082020628281&~.timerManager.toggleAlarm(~&254539508423767444&~.~&5972374&~)
|
||||
}
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&6502767986&~ {
|
||||
~&5972374&~: _deleteAlarmIcon
|
||||
~&233721384511543&~.~&214640173127&~: ~&7083038346995&~.~&214640173127&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&214646099849&~: 48
|
||||
~&7082729686082&~: 48
|
||||
~&6504284228&~: ~&425121728314878811&~.~&7082020628281&~.~&7713132906001613&~.~&7082925185962&~
|
||||
~&7083172477658&~: ~&"7312727925064657782&~
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: ~&7082020628281&~.timerManager.removeAlarm(~&254539508423767444&~.~&5972374&~)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&214599571833&~ {
|
||||
~&5972374&~: _addAlarmPanel
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&214632764553&~: "Add alarm"
|
||||
~&8399601734642709923&~: ~&"15094524446772001204&~
|
||||
~&7082453764199&~: ~&425121728314878811&~.~&7081261925573&~ {
|
||||
~&6504337259&~: ~&254477762679831355&~.~&7081261925573&~.~&254547519794454865&~
|
||||
~&6504315758&~: ~&6504222003&~("Add")
|
||||
~&254542236275632405&~: {
|
||||
_addAlarmPanel.~&9195823055201242195&~ = !_addAlarmPanel.~&9195823055201242195&~;
|
||||
}
|
||||
}
|
||||
~&9195823055201242195&~: ~&214625660372&~
|
||||
~&8399254548634699250&~: ~&14125623155555875541&~ {
|
||||
~&214646099849&~: _addAlarmPanel.~&214646099849&~
|
||||
~&233744706647566&~: ~&254477762679831355&~.~&7082020628281&~.~&7713442318223278&~.~&233744706647566&~.~&7082925185962&~
|
||||
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 280
|
||||
|
||||
~&14975672296977510442&~ {
|
||||
~&5972374&~: _alarmTimeSpinners
|
||||
~&233721384511543&~.~&6504027668&~: ~&7083038346995&~.~&6504027668&~
|
||||
~&233721384511543&~.~&214640173127&~: _nowBtn.~&6504027668&~
|
||||
~&233721384511543&~.~&197100796&~: ~&7083038346995&~.~&197100796&~
|
||||
~&233721384511543&~.~&7082507142622&~: ~&7083038346995&~.~&7082507142622&~
|
||||
~&233721384511543&~.~&499747351624466981&~: ~&254477762679831355&~.~&7082020628281&~.~&7713442318223278&~.~&233744706647566&~.~&7082925185962&~
|
||||
~&214628545114&~: 8
|
||||
~&233736699967534&~: 0
|
||||
~&8399894257374503713&~: function(~&180977&~) { _alarmTimeSpinners.~&214628545114&~ = ~&180977&~; }
|
||||
~&16346529800820831925&~: function(m) { _alarmTimeSpinners.~&233736699967534&~ = m; }
|
||||
}
|
||||
|
||||
~&6502786168&~ {
|
||||
~&5972374&~: _nowBtn
|
||||
~&233721384511543&~.~&214640173127&~: ~&7083038346995&~.~&214640173127&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&214646099849&~: 80
|
||||
~&7082729686082&~: 48
|
||||
|
||||
~&254501108490678590&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&7083116119249&~: 8
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
}
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: "Now"
|
||||
~&6503823200&~.~&254543497768871654&~: 20
|
||||
~&6503823200&~.~&6503679370&~: ~&6504329801&~
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017260114793&~
|
||||
}
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: {
|
||||
~&197102514&~ d = new ~&6502586279&~();
|
||||
_alarmTimeSpinners.~&214628545114&~ = d.getHours();
|
||||
_alarmTimeSpinners.~&233736699967534&~ = d.getMinutes();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
~&254501558939456351&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 44
|
||||
~&233744706647566&~: 8
|
||||
|
||||
~&7712155293725601&~ {
|
||||
~&214634455770&~: [0, 15, 30, 45]
|
||||
~&7712922269353028&~: ~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.fillHeight: ~&6504329801&~
|
||||
|
||||
~&254501108490678590&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&7083116119249&~: 8
|
||||
~&214622605608&~: "#EEEEEE"
|
||||
}
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: ~&254539508423767444&~.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~)
|
||||
~&6503823200&~.~&254543497768871654&~: 18
|
||||
~&6503823200&~.~&6503679370&~: ~&6504329801&~
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
}
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: {
|
||||
_alarmTimeSpinners.~&233736699967534&~ = ~&254539508423767444&~;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
~&254501558939456351&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 44
|
||||
~&233744706647566&~: 8
|
||||
|
||||
~&7712155293725601&~ {
|
||||
~&214634455770&~: [15, 30, 45]
|
||||
~&7712922269353028&~: ~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.fillHeight: ~&6504329801&~
|
||||
|
||||
~&254501108490678590&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&7083116119249&~: 8
|
||||
~&214622605608&~: "#EEEEEE"
|
||||
}
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: ~&"180916&~ + ~&254539508423767444&~
|
||||
~&6503823200&~.~&254543497768871654&~: 18
|
||||
~&6503823200&~.~&6503679370&~: ~&6504329801&~
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
}
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: {
|
||||
~&197102514&~ m = _alarmTimeSpinners.~&233736699967534&~ + ~&254539508423767444&~;
|
||||
~&5972376&~ (m >= 60) { m -= 60; }
|
||||
_alarmTimeSpinners.~&233736699967534&~ = m;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 54
|
||||
|
||||
~&254501108490678590&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&7083116119249&~: 8
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
}
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: "Save alarm"
|
||||
~&6503823200&~.~&254543497768871654&~: 20
|
||||
~&6503823200&~.~&6503679370&~: ~&6504329801&~
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017260114793&~
|
||||
}
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: {
|
||||
~&7082020628281&~.timerManager.addAlarm(_alarmTimeSpinners.~&214628545114&~, _alarmTimeSpinners.~&233736699967534&~);
|
||||
_addAlarmPanel.~&9195823055201242195&~ = ~&214625660372&~;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&214599571833&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.hasFrontlight
|
||||
~&214632764553&~: "Flash light"
|
||||
~&478136262235079021&~: "Blink the reading light when the timer ends or an alarm triggers"
|
||||
~&7082453764199&~: ~&425121728314878811&~.~&7081261925573&~ {
|
||||
~&6504315758&~: ~&7082020628281&~.timerManager.blinkLightOnNotification ? ~&"5971526&~ : ~&"197060196&~
|
||||
~&254542236275632405&~: ~&7082020628281&~.timerManager.blinkLightOnNotification = !~&7082020628281&~.timerManager.blinkLightOnNotification
|
||||
}
|
||||
}
|
||||
}
|
||||
END TRAVERSE
|
||||
END AFFECT
|
||||
|
||||
; Notification bar for timer finish and alarm triggers
|
||||
AFFECT [[2328484894988065446]]
|
||||
IMPORT [[233700934949963.233693781272506]] [[180922.180921]]
|
||||
|
||||
@@ -308,16 +774,51 @@ AFFECT [[2328484894988065446]]
|
||||
~&233721384511543&~.~&214640173127&~: ~&7083038346995&~.~&214640173127&~
|
||||
~&233721384511543&~.~&7082507142622&~: ~&7083038346995&~.~&7082507142622&~
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.~&16765420033347753489&~
|
||||
|
||||
~&13733777459642361598&~: {
|
||||
~&5972376&~ (~&233748328658231&~ && ~&7082020628281&~.timerManager.blinkLightOnNotification) {
|
||||
_blinkTimer.~&6504295855&~();
|
||||
_blinkTimer.~&214618014052&~ = 0;
|
||||
_blinkTimer.~&214641748151&~();
|
||||
}
|
||||
}
|
||||
|
||||
~&214604601930&~ {
|
||||
~&5972374&~: _blinkTimer
|
||||
~&7713147298280334&~: 1000 /* 1 sec*/
|
||||
~&7083121289162&~: ~&6504329801&~
|
||||
property ~&197088788&~ ~&214618014052&~: 0
|
||||
property ~&6504243117&~ _savedValue: 0
|
||||
~&495358363329399331&~: {
|
||||
~&197102514&~ l = ~&7082020628281&~.timerManager._blinkLight;
|
||||
~&5972376&~ (!l) { ~&6504295855&~(); ~&7083121450889&~; }
|
||||
~&5972376&~ (~&214618014052&~ >= 6) {
|
||||
~&6504295855&~();
|
||||
l.~&214644635174&~ = _savedValue;
|
||||
~&214618014052&~ = 0;
|
||||
~&7083121450889&~;
|
||||
}
|
||||
~&5972376&~ (~&214618014052&~ === 0) {
|
||||
_savedValue = l.~&214644635174&~;
|
||||
}
|
||||
l.~&214644635174&~ = ~&214618014052&~ % 2 === 0 ? 100 : 0;
|
||||
~&214618014052&~++;
|
||||
}
|
||||
}
|
||||
~&6504337259&~: ~&254477762679831355&~.~&11119534664549952261&~.~&233740920352621&~
|
||||
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233695222288046&~ {
|
||||
~&6504315758&~: "Time's up! (" + ~&7082020628281&~.timerManager.fmt(~&7082020628281&~.timerManager.totalMs) + ~&"180914&~
|
||||
~&6504315758&~: ~&7082020628281&~.timerManager.alarmNotificationText !== ""
|
||||
? "Alarm at " + ~&7082020628281&~.timerManager.alarmNotificationText
|
||||
: "Time's up! (" + ~&7082020628281&~.timerManager.fmt(~&7082020628281&~.timerManager.totalMs) + ~&"180914&~
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&8399743405844438450&~: ~&425121728314878811&~.~&7082020628281&~.~&233740248806464&~.~&214641496386&~
|
||||
~&7081629735527&~.~&499747351624466981&~: ~&425121728314878811&~.~&7082020628281&~.~&233740248806464&~.~&214641496386&~
|
||||
}
|
||||
|
||||
/* Timer buttons - hidden during alarm*/
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&7081261925573&~ {
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmNotificationText === ""
|
||||
~&6504315758&~: ~&"233701679664206&~
|
||||
~&254542236275632405&~: {
|
||||
~&7082020628281&~.timerManager.doReset();
|
||||
@@ -325,9 +826,12 @@ AFFECT [[2328484894988065446]]
|
||||
}
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233683758819504&~ { }
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233683758819504&~ {
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmNotificationText === ""
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&7081261925573&~ {
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmNotificationText === ""
|
||||
~&6504315758&~: "+1min"
|
||||
~&254542236275632405&~: {
|
||||
~&7082020628281&~.timerManager.totalMs += 60000;
|
||||
@@ -337,9 +841,12 @@ AFFECT [[2328484894988065446]]
|
||||
}
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233683758819504&~ { }
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233683758819504&~ {
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmNotificationText === ""
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&7081261925573&~ {
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmNotificationText === ""
|
||||
~&6504315758&~: "+5min"
|
||||
~&254542236275632405&~: {
|
||||
~&7082020628281&~.timerManager.totalMs += 300000;
|
||||
@@ -349,15 +856,32 @@ AFFECT [[2328484894988065446]]
|
||||
}
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233683758819504&~ { }
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233683758819504&~ {
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmNotificationText === ""
|
||||
}
|
||||
|
||||
/* Universal Close / Dismiss*/
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&7081261925573&~ {
|
||||
~&6504315758&~: ~&"214584551711&~
|
||||
~&6504315758&~: ~&7082020628281&~.timerManager.alarmNotificationText !== "" ? ~&"233683755411397&~ : ~&"214584551711&~
|
||||
~&254542236275632405&~: {
|
||||
~&5972376&~ (~&7082020628281&~.timerManager.alarmNotificationText !== "") {
|
||||
~&7082020628281&~.timerManager.dismissAlarmNotification();
|
||||
} ~&6503784146&~ {
|
||||
~&7082020628281&~.timerManager.~&16765420033347753489&~ = ~&214625660372&~;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
END TRAVERSE
|
||||
END AFFECT
|
||||
|
||||
; Capture Light reference from the QuickSettingsSlider so we can blink it
|
||||
AFFECT /qt/qml/xofm/modules/light/front/qml/QuickSettingsSlider.qml
|
||||
TRAVERSE [[425121728314878811.7081916140908]]#[[6504254477]]
|
||||
LOCATE AFTER ALL
|
||||
INSERT {
|
||||
~&254480451320573660&~.~&495334332051582499&~: ~&7082020628281&~.timerManager._blinkLight = ~&6504254477&~.~&214633057601&~;
|
||||
}
|
||||
END TRAVERSE
|
||||
END AFFECT
|
||||
|
||||
@@ -1,32 +1,41 @@
|
||||
; Quick Settings Timer/Chrono
|
||||
; Adds a countdown timer and stopwatch to the quick settings panel
|
||||
; Quick Settings Timer/Chrono/Alarm
|
||||
; Adds a countdown timer, stopwatch, and alarm system to the quick settings panel
|
||||
; Timer state lives in Values.timerManager so it persists across menu opens/closes
|
||||
|
||||
AFFECT [[1658694193319203921]]
|
||||
TRAVERSE [[6502786168]]
|
||||
LOCATE AFTER ALL
|
||||
INSERT {
|
||||
property ~&214620122227&~ timerManager: _timerManager
|
||||
property alias timerManager: _timerManager
|
||||
|
||||
~&6502786168&~ {
|
||||
~&5972374&~: _timerManager
|
||||
property ~&6503679477&~ timerMode: ~&6504329801&~
|
||||
property bool timerMode: ~&6504329801&~
|
||||
property ~&197088788&~ totalMs: 0
|
||||
property ~&197088788&~ remainMs: 0
|
||||
property ~&6503679477&~ isRunning: ~&214625660372&~
|
||||
property bool isRunning: ~&214625660372&~
|
||||
property ~&7083178290016&~ ~&478322454160073828&~: "00:00"
|
||||
property ~&6503679477&~ ~&16765420033347753489&~: ~&214625660372&~
|
||||
property bool ~&16765420033347753489&~: ~&214625660372&~
|
||||
property ~&197088788&~ presetMs: 60000
|
||||
property ~&6503679477&~ addMode: ~&6504329801&~
|
||||
property bool addMode: ~&6504329801&~
|
||||
property bool blinkLightOnNotification: ~&214625660372&~
|
||||
property ~&197102514&~ _blinkLight: ~&6504117156&~
|
||||
property bool hasFrontlight: ~&214625660372&~
|
||||
|
||||
/* Alarm state*/
|
||||
property bool alarmMode: ~&214625660372&~
|
||||
property ~&197102514&~ alarms: []
|
||||
property ~&197088788&~ nextAlarmId: 1
|
||||
property ~&7083178290016&~ alarmNotificationText: ""
|
||||
property ~&197088788&~ lastNotifiedMinute: -1 /* absolute epoch-minute of the last fired alarm*/
|
||||
|
||||
function fmt(ms) {
|
||||
~&197102514&~ ~&180970&~ = ~&6502909715&~.~&197079679&~(ms);
|
||||
~&197102514&~ ~&180977&~ = ~&6502909715&~.~&214626058827&~(~&180970&~ / 3600000);
|
||||
~&197102514&~ ~&180982&~ = ~&6502909715&~.~&214626058827&~((~&180970&~ % 3600000) / 60000);
|
||||
~&197102514&~ m = ~&6502909715&~.~&214626058827&~((~&180970&~ % 3600000) / 60000);
|
||||
~&197102514&~ ~&180988&~ = ~&6502909715&~.~&214626058827&~((~&180970&~ % 60000) / 1000);
|
||||
~&197102514&~ mm = ~&180982&~.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~);
|
||||
~&197102514&~ mm = m.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~);
|
||||
~&197102514&~ ss = ~&180988&~.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~);
|
||||
|
||||
~&5972376&~ (~&180977&~ > 0) {
|
||||
~&7083121450889&~ ~&180977&~.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~) + ~&"180931&~ + mm + ~&"180931&~ + ss;
|
||||
}
|
||||
@@ -34,36 +43,122 @@ AFFECT [[1658694193319203921]]
|
||||
}
|
||||
|
||||
function refresh() {
|
||||
~&5972376&~ (timerMode) {
|
||||
~&478322454160073828&~ = fmt(remainMs > 0 ? remainMs : 0);
|
||||
~&5972376&~ (_timerManager.alarmMode) ~&7083121450889&~;
|
||||
~&5972376&~ (_timerManager.timerMode) {
|
||||
_timerManager.~&478322454160073828&~ = _timerManager.fmt(_timerManager.remainMs > 0 ? _timerManager.remainMs : 0);
|
||||
} ~&6503784146&~ {
|
||||
~&478322454160073828&~ = fmt(totalMs);
|
||||
_timerManager.~&478322454160073828&~ = _timerManager.fmt(_timerManager.totalMs);
|
||||
}
|
||||
}
|
||||
|
||||
function go() {
|
||||
~&5972376&~ (timerMode) {
|
||||
~&5972376&~ (remainMs <= 0) ~&7083121450889&~;
|
||||
~&5972376&~ (_timerManager.timerMode) {
|
||||
~&5972376&~ (_timerManager.remainMs <= 0) ~&7083121450889&~;
|
||||
}
|
||||
~&16765420033347753489&~ = ~&214625660372&~;
|
||||
isRunning = ~&6504329801&~;
|
||||
_timerManager.~&16765420033347753489&~ = ~&214625660372&~;
|
||||
_timerManager.isRunning = ~&6504329801&~;
|
||||
_tick.~&214641748151&~();
|
||||
}
|
||||
|
||||
function ~&6504295855&~() {
|
||||
isRunning = ~&214625660372&~;
|
||||
_timerManager.isRunning = ~&214625660372&~;
|
||||
_tick.~&6504295855&~();
|
||||
}
|
||||
|
||||
function doReset() {
|
||||
~&6504295855&~();
|
||||
~&16765420033347753489&~ = ~&214625660372&~;
|
||||
~&5972376&~ (timerMode) {
|
||||
remainMs = totalMs;
|
||||
_timerManager.~&6504295855&~();
|
||||
_timerManager.~&16765420033347753489&~ = ~&214625660372&~;
|
||||
~&5972376&~ (_timerManager.timerMode) {
|
||||
_timerManager.remainMs = _timerManager.totalMs;
|
||||
} ~&6503784146&~ {
|
||||
totalMs = 0;
|
||||
_timerManager.totalMs = 0;
|
||||
}
|
||||
_timerManager.refresh();
|
||||
}
|
||||
|
||||
/* Alarm management*/
|
||||
function addAlarm(~&180977&~, m) {
|
||||
~&197102514&~ ~&180970&~ = { ~&5972374&~: _timerManager.nextAlarmId, hour: ~&180977&~, minute: m, ~&233726547792244&~: ~&6504329801&~ };
|
||||
_timerManager.alarms = _timerManager.alarms.~&7082546043425&~([~&180970&~]);
|
||||
_timerManager.nextAlarmId++;
|
||||
_timerManager.saveAlarms();
|
||||
}
|
||||
|
||||
function removeAlarm(~&5972374&~) {
|
||||
_timerManager.alarms = _timerManager.alarms.~&7082656280847&~(function(~&180970&~) {
|
||||
~&7083121450889&~ ~&180970&~.~&5972374&~ !== ~&5972374&~;
|
||||
});
|
||||
_timerManager.saveAlarms();
|
||||
}
|
||||
|
||||
function toggleAlarm(~&5972374&~) {
|
||||
_timerManager.alarms = _timerManager.alarms.~&197092711&~(function(~&180970&~) {
|
||||
~&5972376&~ (~&180970&~.~&5972374&~ !== ~&5972374&~) ~&7083121450889&~ ~&180970&~;
|
||||
~&7083121450889&~ { ~&5972374&~: ~&180970&~.~&5972374&~, hour: ~&180970&~.hour, minute: ~&180970&~.minute, ~&233726547792244&~: !~&180970&~.~&233726547792244&~ };
|
||||
});
|
||||
_timerManager.saveAlarms();
|
||||
}
|
||||
|
||||
function dismissAlarmNotification() {
|
||||
_timerManager.~&16765420033347753489&~ = ~&214625660372&~;
|
||||
_timerManager.alarmNotificationText = "";
|
||||
}
|
||||
|
||||
function saveAlarms() {
|
||||
~&197102514&~ payload = {
|
||||
alarms: _timerManager.alarms,
|
||||
nextAlarmId: _timerManager.nextAlarmId,
|
||||
blinkLightOnNotification: _timerManager.blinkLightOnNotification
|
||||
};
|
||||
~&197102514&~ xhr = new XMLHttpRequest();
|
||||
xhr.~&6504147419&~("PUT", "file:///home/root/alarms.json");
|
||||
xhr.~&6504279475&~(~&6502785411&~.~&254548178208422824&~(payload));
|
||||
}
|
||||
|
||||
function loadAlarms() {
|
||||
~&197102514&~ xhr = new XMLHttpRequest();
|
||||
xhr.~&6504147419&~("GET", "file:///home/root/alarms.json");
|
||||
xhr.onreadystatechange = function() {
|
||||
~&5972376&~ (xhr.readyState === XMLHttpRequest.DONE) {
|
||||
try {
|
||||
~&197102514&~ ~&6503736259&~ = ~&6502785411&~.parse(xhr.responseText);
|
||||
_timerManager.alarms = ~&6503736259&~.alarms || [];
|
||||
_timerManager.nextAlarmId = ~&6503736259&~.nextAlarmId || 1;
|
||||
_timerManager.blinkLightOnNotification = ~&6503736259&~.blinkLightOnNotification || ~&214625660372&~;
|
||||
} catch (e) {
|
||||
_timerManager.alarms = [];
|
||||
_timerManager.nextAlarmId = 1;
|
||||
}
|
||||
}
|
||||
};
|
||||
xhr.~&6504279475&~();
|
||||
}
|
||||
|
||||
~&214604601930&~ {
|
||||
~&5972374&~: _alarmChecker
|
||||
~&7713147298280334&~: 5000
|
||||
~&7083121289162&~: ~&6504329801&~
|
||||
~&233743626668842&~: ~&6504329801&~
|
||||
~&495358363329399331&~: {
|
||||
~&197102514&~ d = new ~&6502586279&~();
|
||||
/* Use an absolute epoch-minute (not hour*60+minute) so that a recurring*/
|
||||
/* alarm can fire again on the next day instead of being permanently*/
|
||||
/* suppressed once it has matched lastNotifiedMinute.*/
|
||||
~&197102514&~ nowMinute = ~&6502909715&~.~&214626058827&~(d.getTime() / 60000);
|
||||
~&5972376&~ (nowMinute === _timerManager.lastNotifiedMinute) ~&7083121450889&~;
|
||||
|
||||
~&197102514&~ ~&180977&~ = d.getHours();
|
||||
~&197102514&~ m = d.getMinutes();
|
||||
~&197085552&~ (~&197102514&~ ~&180978&~ = 0; ~&180978&~ < _timerManager.alarms.~&7082886407723&~; ~&180978&~++) {
|
||||
~&197102514&~ ~&180970&~ = _timerManager.alarms[~&180978&~];
|
||||
~&5972376&~ (~&180970&~.~&233726547792244&~ && ~&180970&~.hour === ~&180977&~ && ~&180970&~.minute === m) {
|
||||
_timerManager.alarmNotificationText = ~&180970&~.hour.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~) + ~&"180931&~ + ~&180970&~.minute.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~);
|
||||
_timerManager.~&16765420033347753489&~ = ~&6504329801&~;
|
||||
_timerManager.lastNotifiedMinute = nowMinute;
|
||||
~&214621519406&~;
|
||||
}
|
||||
}
|
||||
}
|
||||
refresh();
|
||||
}
|
||||
|
||||
~&214604601930&~ {
|
||||
@@ -71,6 +166,7 @@ AFFECT [[1658694193319203921]]
|
||||
~&7713147298280334&~: 100
|
||||
~&7083121289162&~: ~&6504329801&~
|
||||
~&495358363329399331&~: {
|
||||
~&5972376&~ (_timerManager.alarmMode) ~&7083121450889&~;
|
||||
~&5972376&~ (_timerManager.timerMode) {
|
||||
_timerManager.remainMs -= 100;
|
||||
~&5972376&~ (_timerManager.remainMs <= 0) {
|
||||
@@ -84,6 +180,12 @@ AFFECT [[1658694193319203921]]
|
||||
_timerManager.refresh();
|
||||
}
|
||||
}
|
||||
|
||||
~&254480451320573660&~.~&495334332051582499&~: {
|
||||
_timerManager.loadAlarms();
|
||||
~&197102514&~ _c = ~&5971598&~.~&16810493623656567312&~("qrc:/qt/qml/xofm/modules/light/front/qml/QuickSettingsSlider.qml");
|
||||
_timerManager.hasFrontlight = (_c.~&7083177691309&~ === ~&254480451320573660&~.~&214602073246&~);
|
||||
}
|
||||
}
|
||||
}
|
||||
END TRAVERSE
|
||||
@@ -93,19 +195,22 @@ AFFECT [[12542166428983872557]]
|
||||
TRAVERSE [[7711468349764991]] > [[6502786168]] > [[8397788359424131273]] > [[14125623155555875541]]#[[233718721544006]]
|
||||
LOCATE AFTER [[254501558939456351]]#[[8399137618543699982]]
|
||||
INSERT {
|
||||
~&425121728314878811&~.~&15740235808997988493&~ {
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&254549367831075482&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233744706647566&~.~&214641496386&~
|
||||
}
|
||||
~&7081629735527&~.~&17520348323745447649&~: _timerUI.~&2122835675838176157&~
|
||||
~&7081629735527&~.~&8399743405844438450&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233740248806464&~.~&214641496386&~
|
||||
~&7081629735527&~.~&499747351624466981&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233740248806464&~.~&214641496386&~
|
||||
|
||||
~&14125623155555875541&~ {
|
||||
~&5972374&~: _timerUI
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&8399743405844438450&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233740248806464&~.~&214641496386&~
|
||||
~&7081629735527&~.~&499747351624466981&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233740248806464&~.~&214641496386&~
|
||||
~&7081629735527&~.~&254549367831075482&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233744706647566&~.~&214641496386&~
|
||||
~&233721384511543&~.~&6504027668&~: ~&7083038346995&~.~&6504027668&~
|
||||
~&233721384511543&~.~&214640173127&~: ~&7083038346995&~.~&214640173127&~
|
||||
~&233744706647566&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233744706647566&~.~&7082925185962&~
|
||||
|
||||
~&425121728314878811&~.~&15740235808997988493&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
}
|
||||
|
||||
/* Mode selector tabs*/
|
||||
~&254501558939456351&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
@@ -113,18 +218,21 @@ AFFECT [[12542166428983872557]]
|
||||
|
||||
~&7712155293725601&~ {
|
||||
~&214634455770&~: [
|
||||
{ ~&197101097&~: ~&"214604601930&~, isTimer: ~&6504329801&~ },
|
||||
{ ~&197101097&~: "Chrono", isTimer: ~&214625660372&~ }
|
||||
{ txt: ~&"214604601930&~, ~&6504074414&~: ~&"214642551402&~ },
|
||||
{ txt: "Chrono", ~&6504074414&~: "chrono" },
|
||||
{ txt: "Alarm", ~&6504074414&~: "alarm" }
|
||||
]
|
||||
~&7712922269353028&~: ~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 68
|
||||
|
||||
readonly property ~&6503679477&~ ~&7082453764421&~: ~&7082020628281&~.timerManager.timerMode === ~&254539508423767444&~.isTimer
|
||||
readonly property bool ~&7082453764421&~: ~&254539508423767444&~.~&6504074414&~ === ~&"214642551402&~ ? !~&7082020628281&~.timerManager.alarmMode && ~&7082020628281&~.timerManager.timerMode
|
||||
: ~&254539508423767444&~.~&6504074414&~ === "chrono" ? !~&7082020628281&~.timerManager.alarmMode && !~&7082020628281&~.timerManager.timerMode
|
||||
: ~&7082020628281&~.timerManager.alarmMode
|
||||
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: ~&254539508423767444&~.~&197101097&~
|
||||
~&6504315758&~: ~&254539508423767444&~.txt
|
||||
~&6503823200&~.~&254543497768871654&~: 24
|
||||
~&6503823200&~.~&6503679370&~: ~&7082453764421&~
|
||||
~&214622605608&~: ~&7082453764421&~ ? ~&7082020628281&~.~&8399340017235344933&~ : "#888888"
|
||||
@@ -132,14 +240,20 @@ AFFECT [[12542166428983872557]]
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: {
|
||||
~&5972376&~ (~&254539508423767444&~.~&6504074414&~ === "alarm") {
|
||||
~&7082020628281&~.timerManager.~&6504295855&~();
|
||||
~&7082020628281&~.timerManager.timerMode = ~&254539508423767444&~.isTimer;
|
||||
~&5972376&~ (!~&254539508423767444&~.isTimer) {
|
||||
~&7082020628281&~.timerManager.alarmMode = ~&6504329801&~;
|
||||
} ~&6503784146&~ {
|
||||
~&7082020628281&~.timerManager.alarmMode = ~&214625660372&~;
|
||||
~&7082020628281&~.timerManager.~&6504295855&~();
|
||||
~&7082020628281&~.timerManager.timerMode = ~&254539508423767444&~.~&6504074414&~ === ~&"214642551402&~;
|
||||
~&5972376&~ (~&254539508423767444&~.~&6504074414&~ === "chrono") {
|
||||
~&7082020628281&~.timerManager.totalMs = 0;
|
||||
}
|
||||
~&7082020628281&~.timerManager.refresh();
|
||||
}
|
||||
}
|
||||
}
|
||||
~&254501108490678590&~ {
|
||||
~&233721384511543&~.~&7082507142622&~: ~&7083038346995&~.~&7082507142622&~
|
||||
~&233721384511543&~.~&6504027668&~: ~&7083038346995&~.~&6504027668&~
|
||||
@@ -151,11 +265,11 @@ AFFECT [[12542166428983872557]]
|
||||
}
|
||||
}
|
||||
|
||||
/* Time display (fixed width to avoid resizing) */
|
||||
/* Time display*/
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254522510204479688&~: ~&5971598&~.~&14019785274593562237&~
|
||||
~&7081629735527&~.~&7797818826744279624&~: 300
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: _display.~&2122835675838176157&~
|
||||
~&233748328658231&~: !~&7082020628281&~.timerManager.alarmMode
|
||||
~&6503165774&~ {
|
||||
~&5972374&~: _display
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
@@ -171,15 +285,15 @@ AFFECT [[12542166428983872557]]
|
||||
~&254501558939456351&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&233744706647566&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233744706647566&~.~&214641496386&~
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.timerMode
|
||||
~&233748328658231&~: !~&7082020628281&~.timerManager.alarmMode && ~&7082020628281&~.timerManager.timerMode
|
||||
|
||||
~&7712155293725601&~ {
|
||||
~&214634455770&~: [
|
||||
{ ~&197101097&~: "1 m", ~&197102508&~: 60000 },
|
||||
{ ~&197101097&~: "5 m", ~&197102508&~: 300000 },
|
||||
{ ~&197101097&~: "10 m", ~&197102508&~: 600000 },
|
||||
{ ~&197101097&~: "30 m", ~&197102508&~: 1800000 },
|
||||
{ ~&197101097&~: "1 h", ~&197102508&~: 3600000 }
|
||||
{ txt: "1 m", ~&197102508&~: 60000 },
|
||||
{ txt: "5 m", ~&197102508&~: 300000 },
|
||||
{ txt: "10 m", ~&197102508&~: 600000 },
|
||||
{ txt: "30 m", ~&197102508&~: 1800000 },
|
||||
{ txt: "1 h", ~&197102508&~: 3600000 }
|
||||
]
|
||||
~&7712922269353028&~: ~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
@@ -191,7 +305,7 @@ AFFECT [[12542166428983872557]]
|
||||
}
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: ~&254539508423767444&~.~&197101097&~
|
||||
~&6504315758&~: ~&254539508423767444&~.txt
|
||||
~&6503823200&~.~&254543497768871654&~: 20
|
||||
~&6503823200&~.~&6503679370&~: ~&6504329801&~
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
@@ -219,6 +333,7 @@ AFFECT [[12542166428983872557]]
|
||||
~&254501558939456351&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&233744706647566&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233744706647566&~.~&214641496386&~
|
||||
~&233748328658231&~: !~&7082020628281&~.timerManager.alarmMode
|
||||
|
||||
/* Add/Set toggle (timer only)*/
|
||||
~&6502786168&~ {
|
||||
@@ -291,12 +406,363 @@ AFFECT [[12542166428983872557]]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* Alarm mode*/
|
||||
~&14125623155555875541&~ {
|
||||
~&5972374&~: _alarmCol
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmMode
|
||||
~&233744706647566&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233744706647566&~.~&214641496386&~
|
||||
|
||||
~&7712155293725601&~ {
|
||||
~&214634455770&~: ~&7082020628281&~.timerManager.alarms
|
||||
|
||||
~&7712922269353028&~: ~&14125623155555875541&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 80
|
||||
~&233744706647566&~: 0
|
||||
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.fillHeight: ~&6504329801&~
|
||||
|
||||
~&425121728314878811&~.~&6502767986&~ {
|
||||
~&5972374&~: _radioIcon
|
||||
~&233721384511543&~.~&6504027668&~: ~&7083038346995&~.~&6504027668&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&214646099849&~: 48
|
||||
~&7082729686082&~: 48
|
||||
~&6504284228&~: ~&425121728314878811&~.~&7082020628281&~.~&7713132906001613&~.~&7082925185962&~
|
||||
~&7083172477658&~: ~&254539508423767444&~.~&233726547792244&~ ? ~&"8609871882813839963&~ : ~&"7424611027213444377&~
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: ~&7082020628281&~.timerManager.toggleAlarm(~&254539508423767444&~.~&5972374&~)
|
||||
}
|
||||
}
|
||||
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&6504027668&~: _radioIcon.~&214640173127&~
|
||||
~&233721384511543&~.~&214640173127&~: _trashIcon.~&6504027668&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&490371291080887915&~: 12
|
||||
~&16491662607465103678&~: 12
|
||||
~&6504315758&~: ~&254539508423767444&~.hour.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~) + ~&"180931&~ + ~&254539508423767444&~.minute.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~)
|
||||
~&6503823200&~.~&254543497768871654&~: 28
|
||||
~&6503823200&~.~&7083316716977&~: ~&254539508423767444&~.~&233726547792244&~ ? ~&6502673216&~.~&6502529386&~ : ~&6502673216&~.~&7081724354802&~
|
||||
~&214622605608&~: ~&254539508423767444&~.~&233726547792244&~ ? ~&7082020628281&~.~&8399340017235344933&~ : "#888888"
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&6502767986&~ {
|
||||
~&5972374&~: _trashIcon
|
||||
~&233721384511543&~.~&214640173127&~: ~&7083038346995&~.~&214640173127&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&214646099849&~: 48
|
||||
~&7082729686082&~: 48
|
||||
~&6504284228&~: ~&425121728314878811&~.~&7082020628281&~.~&7713132906001613&~.~&7082925185962&~
|
||||
~&7083172477658&~: ~&"7312727925064657782&~
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: ~&7082020628281&~.timerManager.removeAlarm(~&254539508423767444&~.~&5972374&~)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
~&6503165774&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarms.~&7082886407723&~ === 0
|
||||
~&6504315758&~: "No alarms set"
|
||||
~&6503823200&~.~&254543497768871654&~: 20
|
||||
~&214622605608&~: "#888888"
|
||||
~&8400129142283184211&~: 20
|
||||
~&1353514028756047605&~: 20
|
||||
~&15450610953915458578&~: ~&6503165774&~.~&14019785274593562237&~
|
||||
}
|
||||
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 54
|
||||
|
||||
~&254501108490678590&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&7083116119249&~: 8
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
}
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: "Add alarms"
|
||||
~&6503823200&~.~&254543497768871654&~: 20
|
||||
~&6503823200&~.~&6503679370&~: ~&6504329801&~
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017260114793&~
|
||||
}
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: {
|
||||
~&7082020628281&~.timerManager.~&6504295855&~();
|
||||
~&6504254477&~.~&2766288418351025740&~.~&214622501183&~();
|
||||
~&6504254477&~.~&2766288418351025740&~.~&6504147419&~("systemclock/window/settings-info");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
END TRAVERSE
|
||||
END AFFECT
|
||||
|
||||
; Notification bar when timer finishes - visible in all modes
|
||||
; Alarm management inside system clock settings (inserted before the info message for more space)
|
||||
AFFECT /qt/qml/xofm/modules/systemclock/qml/window/SettingsInfoWindow.qml
|
||||
TRAVERSE [[7711468349764991]]#[[6504254477]] > [[8397788359424131273]] > [[14125623155555875541]]#[[8399784311425937276]]
|
||||
LOCATE AFTER [[425121728314878811.214599571833]]#[[254526274719339159]]
|
||||
INSERT {
|
||||
~&425121728314878811&~.~&214604609771&~ {
|
||||
~&6504315758&~: "Alarms"
|
||||
~&6504337259&~: ~&425121728314878811&~.~&214604609771&~.~&214594832564&~
|
||||
~&7081629735527&~.~&254549367831075482&~: ~&254477762679831355&~.~&7082020628281&~.~&7713442318223278&~.~&233744706647566&~.~&233748750575870&~
|
||||
}
|
||||
|
||||
~&7712155293725601&~ {
|
||||
~&214634455770&~: ~&7082020628281&~.timerManager.alarms
|
||||
|
||||
~&7712922269353028&~: ~&14125623155555875541&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 56
|
||||
~&233744706647566&~: 0
|
||||
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.fillHeight: ~&6504329801&~
|
||||
|
||||
~&425121728314878811&~.~&6502767986&~ {
|
||||
~&5972374&~: _alarmIcon
|
||||
~&233721384511543&~.~&6504027668&~: ~&7083038346995&~.~&6504027668&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&214646099849&~: 40
|
||||
~&7082729686082&~: 40
|
||||
~&6504284228&~: ~&425121728314878811&~.~&7082020628281&~.~&7713132906001613&~.~&7082925185962&~
|
||||
~&7083172477658&~: ~&"7424604169206955460&~
|
||||
}
|
||||
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&6504027668&~: _alarmIcon.~&214640173127&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&233721384511543&~.~&1765033595104803723&~: 1
|
||||
~&490371291080887915&~: 12
|
||||
~&6504315758&~: ~&254539508423767444&~.hour.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~) + ~&"180931&~ + ~&254539508423767444&~.minute.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~)
|
||||
~&6503823200&~.~&254543497768871654&~: 24
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&6502767986&~ {
|
||||
~&5972374&~: _toggleAlarmIcon
|
||||
~&233721384511543&~.~&214640173127&~: _deleteAlarmIcon.~&6504027668&~
|
||||
~&233721384511543&~.~&499747351624466981&~: 12
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&214646099849&~: 48
|
||||
~&7082729686082&~: 48
|
||||
~&6504284228&~: ~&425121728314878811&~.~&7082020628281&~.~&7713132906001613&~.~&7082925185962&~
|
||||
~&7083172477658&~: ~&254539508423767444&~.~&233726547792244&~ ? ~&"8609871882813839963&~ : ~&"7424611027213444377&~
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: ~&7082020628281&~.timerManager.toggleAlarm(~&254539508423767444&~.~&5972374&~)
|
||||
}
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&6502767986&~ {
|
||||
~&5972374&~: _deleteAlarmIcon
|
||||
~&233721384511543&~.~&214640173127&~: ~&7083038346995&~.~&214640173127&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&214646099849&~: 48
|
||||
~&7082729686082&~: 48
|
||||
~&6504284228&~: ~&425121728314878811&~.~&7082020628281&~.~&7713132906001613&~.~&7082925185962&~
|
||||
~&7083172477658&~: ~&"7312727925064657782&~
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: ~&7082020628281&~.timerManager.removeAlarm(~&254539508423767444&~.~&5972374&~)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&214599571833&~ {
|
||||
~&5972374&~: _addAlarmPanel
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&214632764553&~: "Add alarm"
|
||||
~&8399601734642709923&~: ~&"15094524446772001204&~
|
||||
~&7082453764199&~: ~&425121728314878811&~.~&7081261925573&~ {
|
||||
~&6504337259&~: ~&254477762679831355&~.~&7081261925573&~.~&254547519794454865&~
|
||||
~&6504315758&~: ~&6504222003&~("Add")
|
||||
~&254542236275632405&~: {
|
||||
_addAlarmPanel.~&9195823055201242195&~ = !_addAlarmPanel.~&9195823055201242195&~;
|
||||
}
|
||||
}
|
||||
~&9195823055201242195&~: ~&214625660372&~
|
||||
~&8399254548634699250&~: ~&14125623155555875541&~ {
|
||||
~&214646099849&~: _addAlarmPanel.~&214646099849&~
|
||||
~&233744706647566&~: ~&254477762679831355&~.~&7082020628281&~.~&7713442318223278&~.~&233744706647566&~.~&7082925185962&~
|
||||
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 280
|
||||
|
||||
~&14975672296977510442&~ {
|
||||
~&5972374&~: _alarmTimeSpinners
|
||||
~&233721384511543&~.~&6504027668&~: ~&7083038346995&~.~&6504027668&~
|
||||
~&233721384511543&~.~&214640173127&~: _nowBtn.~&6504027668&~
|
||||
~&233721384511543&~.~&197100796&~: ~&7083038346995&~.~&197100796&~
|
||||
~&233721384511543&~.~&7082507142622&~: ~&7083038346995&~.~&7082507142622&~
|
||||
~&233721384511543&~.~&499747351624466981&~: ~&254477762679831355&~.~&7082020628281&~.~&7713442318223278&~.~&233744706647566&~.~&7082925185962&~
|
||||
~&214628545114&~: 8
|
||||
~&233736699967534&~: 0
|
||||
~&8399894257374503713&~: function(~&180977&~) { _alarmTimeSpinners.~&214628545114&~ = ~&180977&~; }
|
||||
~&16346529800820831925&~: function(m) { _alarmTimeSpinners.~&233736699967534&~ = m; }
|
||||
}
|
||||
|
||||
~&6502786168&~ {
|
||||
~&5972374&~: _nowBtn
|
||||
~&233721384511543&~.~&214640173127&~: ~&7083038346995&~.~&214640173127&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&214646099849&~: 80
|
||||
~&7082729686082&~: 48
|
||||
|
||||
~&254501108490678590&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&7083116119249&~: 8
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
}
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: "Now"
|
||||
~&6503823200&~.~&254543497768871654&~: 20
|
||||
~&6503823200&~.~&6503679370&~: ~&6504329801&~
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017260114793&~
|
||||
}
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: {
|
||||
~&197102514&~ d = new ~&6502586279&~();
|
||||
_alarmTimeSpinners.~&214628545114&~ = d.getHours();
|
||||
_alarmTimeSpinners.~&233736699967534&~ = d.getMinutes();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
~&254501558939456351&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 44
|
||||
~&233744706647566&~: 8
|
||||
|
||||
~&7712155293725601&~ {
|
||||
~&214634455770&~: [0, 15, 30, 45]
|
||||
~&7712922269353028&~: ~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.fillHeight: ~&6504329801&~
|
||||
|
||||
~&254501108490678590&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&7083116119249&~: 8
|
||||
~&214622605608&~: "#EEEEEE"
|
||||
}
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: ~&254539508423767444&~.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~)
|
||||
~&6503823200&~.~&254543497768871654&~: 18
|
||||
~&6503823200&~.~&6503679370&~: ~&6504329801&~
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
}
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: {
|
||||
_alarmTimeSpinners.~&233736699967534&~ = ~&254539508423767444&~;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
~&254501558939456351&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 44
|
||||
~&233744706647566&~: 8
|
||||
|
||||
~&7712155293725601&~ {
|
||||
~&214634455770&~: [15, 30, 45]
|
||||
~&7712922269353028&~: ~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.fillHeight: ~&6504329801&~
|
||||
|
||||
~&254501108490678590&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&7083116119249&~: 8
|
||||
~&214622605608&~: "#EEEEEE"
|
||||
}
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: ~&"180916&~ + ~&254539508423767444&~
|
||||
~&6503823200&~.~&254543497768871654&~: 18
|
||||
~&6503823200&~.~&6503679370&~: ~&6504329801&~
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
}
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: {
|
||||
~&197102514&~ m = _alarmTimeSpinners.~&233736699967534&~ + ~&254539508423767444&~;
|
||||
~&5972376&~ (m >= 60) { m -= 60; }
|
||||
_alarmTimeSpinners.~&233736699967534&~ = m;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 54
|
||||
|
||||
~&254501108490678590&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&7083116119249&~: 8
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
}
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: "Save alarm"
|
||||
~&6503823200&~.~&254543497768871654&~: 20
|
||||
~&6503823200&~.~&6503679370&~: ~&6504329801&~
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017260114793&~
|
||||
}
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: {
|
||||
~&7082020628281&~.timerManager.addAlarm(_alarmTimeSpinners.~&214628545114&~, _alarmTimeSpinners.~&233736699967534&~);
|
||||
_addAlarmPanel.~&9195823055201242195&~ = ~&214625660372&~;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&214599571833&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.hasFrontlight
|
||||
~&214632764553&~: "Flash light"
|
||||
~&478136262235079021&~: "Blink the reading light when the timer ends or an alarm triggers"
|
||||
~&7082453764199&~: ~&425121728314878811&~.~&7081261925573&~ {
|
||||
~&6504315758&~: ~&7082020628281&~.timerManager.blinkLightOnNotification ? ~&"5971526&~ : ~&"197060196&~
|
||||
~&254542236275632405&~: ~&7082020628281&~.timerManager.blinkLightOnNotification = !~&7082020628281&~.timerManager.blinkLightOnNotification
|
||||
}
|
||||
}
|
||||
}
|
||||
END TRAVERSE
|
||||
END AFFECT
|
||||
|
||||
; Notification bar for timer finish and alarm triggers
|
||||
AFFECT [[2328484894988065446]]
|
||||
IMPORT [[233700934949963.233693781272506]] [[180922.180921]]
|
||||
|
||||
@@ -308,16 +774,51 @@ AFFECT [[2328484894988065446]]
|
||||
~&233721384511543&~.~&214640173127&~: ~&7083038346995&~.~&214640173127&~
|
||||
~&233721384511543&~.~&7082507142622&~: ~&7083038346995&~.~&7082507142622&~
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.~&16765420033347753489&~
|
||||
|
||||
~&13733777459642361598&~: {
|
||||
~&5972376&~ (~&233748328658231&~ && ~&7082020628281&~.timerManager.blinkLightOnNotification) {
|
||||
_blinkTimer.~&6504295855&~();
|
||||
_blinkTimer.~&214618014052&~ = 0;
|
||||
_blinkTimer.~&214641748151&~();
|
||||
}
|
||||
}
|
||||
|
||||
~&214604601930&~ {
|
||||
~&5972374&~: _blinkTimer
|
||||
~&7713147298280334&~: 1000 /* 1 sec*/
|
||||
~&7083121289162&~: ~&6504329801&~
|
||||
property ~&197088788&~ ~&214618014052&~: 0
|
||||
property ~&6504243117&~ _savedValue: 0
|
||||
~&495358363329399331&~: {
|
||||
~&197102514&~ l = ~&7082020628281&~.timerManager._blinkLight;
|
||||
~&5972376&~ (!l) { ~&6504295855&~(); ~&7083121450889&~; }
|
||||
~&5972376&~ (~&214618014052&~ >= 6) {
|
||||
~&6504295855&~();
|
||||
l.~&214644635174&~ = _savedValue;
|
||||
~&214618014052&~ = 0;
|
||||
~&7083121450889&~;
|
||||
}
|
||||
~&5972376&~ (~&214618014052&~ === 0) {
|
||||
_savedValue = l.~&214644635174&~;
|
||||
}
|
||||
l.~&214644635174&~ = ~&214618014052&~ % 2 === 0 ? 100 : 0;
|
||||
~&214618014052&~++;
|
||||
}
|
||||
}
|
||||
~&6504337259&~: ~&254477762679831355&~.~&11119534664549952261&~.~&233740920352621&~
|
||||
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233695222288046&~ {
|
||||
~&6504315758&~: "Time's up! (" + ~&7082020628281&~.timerManager.fmt(~&7082020628281&~.timerManager.totalMs) + ~&"180914&~
|
||||
~&6504315758&~: ~&7082020628281&~.timerManager.alarmNotificationText !== ""
|
||||
? "Alarm at " + ~&7082020628281&~.timerManager.alarmNotificationText
|
||||
: "Time's up! (" + ~&7082020628281&~.timerManager.fmt(~&7082020628281&~.timerManager.totalMs) + ~&"180914&~
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&8399743405844438450&~: ~&425121728314878811&~.~&7082020628281&~.~&233740248806464&~.~&214641496386&~
|
||||
~&7081629735527&~.~&499747351624466981&~: ~&425121728314878811&~.~&7082020628281&~.~&233740248806464&~.~&214641496386&~
|
||||
}
|
||||
|
||||
/* Timer buttons - hidden during alarm*/
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&7081261925573&~ {
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmNotificationText === ""
|
||||
~&6504315758&~: ~&"233701679664206&~
|
||||
~&254542236275632405&~: {
|
||||
~&7082020628281&~.timerManager.doReset();
|
||||
@@ -325,9 +826,12 @@ AFFECT [[2328484894988065446]]
|
||||
}
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233683758819504&~ { }
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233683758819504&~ {
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmNotificationText === ""
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&7081261925573&~ {
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmNotificationText === ""
|
||||
~&6504315758&~: "+1min"
|
||||
~&254542236275632405&~: {
|
||||
~&7082020628281&~.timerManager.totalMs += 60000;
|
||||
@@ -337,9 +841,12 @@ AFFECT [[2328484894988065446]]
|
||||
}
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233683758819504&~ { }
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233683758819504&~ {
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmNotificationText === ""
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&7081261925573&~ {
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmNotificationText === ""
|
||||
~&6504315758&~: "+5min"
|
||||
~&254542236275632405&~: {
|
||||
~&7082020628281&~.timerManager.totalMs += 300000;
|
||||
@@ -349,15 +856,32 @@ AFFECT [[2328484894988065446]]
|
||||
}
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233683758819504&~ { }
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233683758819504&~ {
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmNotificationText === ""
|
||||
}
|
||||
|
||||
/* Universal Close / Dismiss*/
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&7081261925573&~ {
|
||||
~&6504315758&~: ~&"214584551711&~
|
||||
~&6504315758&~: ~&7082020628281&~.timerManager.alarmNotificationText !== "" ? ~&"233683755411397&~ : ~&"214584551711&~
|
||||
~&254542236275632405&~: {
|
||||
~&5972376&~ (~&7082020628281&~.timerManager.alarmNotificationText !== "") {
|
||||
~&7082020628281&~.timerManager.dismissAlarmNotification();
|
||||
} ~&6503784146&~ {
|
||||
~&7082020628281&~.timerManager.~&16765420033347753489&~ = ~&214625660372&~;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
END TRAVERSE
|
||||
END AFFECT
|
||||
|
||||
; Capture Light reference from the QuickSettingsSlider so we can blink it
|
||||
AFFECT /qt/qml/xofm/modules/light/front/qml/QuickSettingsSlider.qml
|
||||
TRAVERSE [[425121728314878811.7081916140908]]#[[6504254477]]
|
||||
LOCATE AFTER ALL
|
||||
INSERT {
|
||||
~&254480451320573660&~.~&495334332051582499&~: ~&7082020628281&~.timerManager._blinkLight = ~&6504254477&~.~&214633057601&~;
|
||||
}
|
||||
END TRAVERSE
|
||||
END AFFECT
|
||||
|
||||
@@ -1,32 +1,41 @@
|
||||
; Quick Settings Timer/Chrono
|
||||
; Adds a countdown timer and stopwatch to the quick settings panel
|
||||
; Quick Settings Timer/Chrono/Alarm
|
||||
; Adds a countdown timer, stopwatch, and alarm system to the quick settings panel
|
||||
; Timer state lives in Values.timerManager so it persists across menu opens/closes
|
||||
|
||||
AFFECT [[1658694193319203921]]
|
||||
TRAVERSE [[6502786168]]
|
||||
LOCATE AFTER ALL
|
||||
INSERT {
|
||||
property ~&214620122227&~ timerManager: _timerManager
|
||||
property alias timerManager: _timerManager
|
||||
|
||||
~&6502786168&~ {
|
||||
~&5972374&~: _timerManager
|
||||
property ~&6503679477&~ timerMode: ~&6504329801&~
|
||||
property bool timerMode: ~&6504329801&~
|
||||
property ~&197088788&~ totalMs: 0
|
||||
property ~&197088788&~ remainMs: 0
|
||||
property ~&6503679477&~ isRunning: ~&214625660372&~
|
||||
property bool isRunning: ~&214625660372&~
|
||||
property ~&7083178290016&~ ~&478322454160073828&~: "00:00"
|
||||
property ~&6503679477&~ ~&16765420033347753489&~: ~&214625660372&~
|
||||
property bool ~&16765420033347753489&~: ~&214625660372&~
|
||||
property ~&197088788&~ presetMs: 60000
|
||||
property ~&6503679477&~ addMode: ~&6504329801&~
|
||||
property bool addMode: ~&6504329801&~
|
||||
property bool blinkLightOnNotification: ~&214625660372&~
|
||||
property ~&197102514&~ _blinkLight: ~&6504117156&~
|
||||
property bool hasFrontlight: ~&214625660372&~
|
||||
|
||||
/* Alarm state*/
|
||||
property bool alarmMode: ~&214625660372&~
|
||||
property ~&197102514&~ alarms: []
|
||||
property ~&197088788&~ nextAlarmId: 1
|
||||
property ~&7083178290016&~ alarmNotificationText: ""
|
||||
property ~&197088788&~ lastNotifiedMinute: -1 /* absolute epoch-minute of the last fired alarm*/
|
||||
|
||||
function fmt(ms) {
|
||||
~&197102514&~ ~&180970&~ = ~&6502909715&~.~&197079679&~(ms);
|
||||
~&197102514&~ ~&180977&~ = ~&6502909715&~.~&214626058827&~(~&180970&~ / 3600000);
|
||||
~&197102514&~ ~&180982&~ = ~&6502909715&~.~&214626058827&~((~&180970&~ % 3600000) / 60000);
|
||||
~&197102514&~ m = ~&6502909715&~.~&214626058827&~((~&180970&~ % 3600000) / 60000);
|
||||
~&197102514&~ ~&180988&~ = ~&6502909715&~.~&214626058827&~((~&180970&~ % 60000) / 1000);
|
||||
~&197102514&~ mm = ~&180982&~.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~);
|
||||
~&197102514&~ mm = m.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~);
|
||||
~&197102514&~ ss = ~&180988&~.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~);
|
||||
|
||||
~&5972376&~ (~&180977&~ > 0) {
|
||||
~&7083121450889&~ ~&180977&~.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~) + ~&"180931&~ + mm + ~&"180931&~ + ss;
|
||||
}
|
||||
@@ -34,36 +43,122 @@ AFFECT [[1658694193319203921]]
|
||||
}
|
||||
|
||||
function refresh() {
|
||||
~&5972376&~ (timerMode) {
|
||||
~&478322454160073828&~ = fmt(remainMs > 0 ? remainMs : 0);
|
||||
~&5972376&~ (_timerManager.alarmMode) ~&7083121450889&~;
|
||||
~&5972376&~ (_timerManager.timerMode) {
|
||||
_timerManager.~&478322454160073828&~ = _timerManager.fmt(_timerManager.remainMs > 0 ? _timerManager.remainMs : 0);
|
||||
} ~&6503784146&~ {
|
||||
~&478322454160073828&~ = fmt(totalMs);
|
||||
_timerManager.~&478322454160073828&~ = _timerManager.fmt(_timerManager.totalMs);
|
||||
}
|
||||
}
|
||||
|
||||
function go() {
|
||||
~&5972376&~ (timerMode) {
|
||||
~&5972376&~ (remainMs <= 0) ~&7083121450889&~;
|
||||
~&5972376&~ (_timerManager.timerMode) {
|
||||
~&5972376&~ (_timerManager.remainMs <= 0) ~&7083121450889&~;
|
||||
}
|
||||
~&16765420033347753489&~ = ~&214625660372&~;
|
||||
isRunning = ~&6504329801&~;
|
||||
_timerManager.~&16765420033347753489&~ = ~&214625660372&~;
|
||||
_timerManager.isRunning = ~&6504329801&~;
|
||||
_tick.~&214641748151&~();
|
||||
}
|
||||
|
||||
function ~&6504295855&~() {
|
||||
isRunning = ~&214625660372&~;
|
||||
_timerManager.isRunning = ~&214625660372&~;
|
||||
_tick.~&6504295855&~();
|
||||
}
|
||||
|
||||
function doReset() {
|
||||
~&6504295855&~();
|
||||
~&16765420033347753489&~ = ~&214625660372&~;
|
||||
~&5972376&~ (timerMode) {
|
||||
remainMs = totalMs;
|
||||
_timerManager.~&6504295855&~();
|
||||
_timerManager.~&16765420033347753489&~ = ~&214625660372&~;
|
||||
~&5972376&~ (_timerManager.timerMode) {
|
||||
_timerManager.remainMs = _timerManager.totalMs;
|
||||
} ~&6503784146&~ {
|
||||
totalMs = 0;
|
||||
_timerManager.totalMs = 0;
|
||||
}
|
||||
_timerManager.refresh();
|
||||
}
|
||||
|
||||
/* Alarm management*/
|
||||
function addAlarm(~&180977&~, m) {
|
||||
~&197102514&~ ~&180970&~ = { ~&5972374&~: _timerManager.nextAlarmId, hour: ~&180977&~, minute: m, ~&233726547792244&~: ~&6504329801&~ };
|
||||
_timerManager.alarms = _timerManager.alarms.~&7082546043425&~([~&180970&~]);
|
||||
_timerManager.nextAlarmId++;
|
||||
_timerManager.saveAlarms();
|
||||
}
|
||||
|
||||
function removeAlarm(~&5972374&~) {
|
||||
_timerManager.alarms = _timerManager.alarms.~&7082656280847&~(function(~&180970&~) {
|
||||
~&7083121450889&~ ~&180970&~.~&5972374&~ !== ~&5972374&~;
|
||||
});
|
||||
_timerManager.saveAlarms();
|
||||
}
|
||||
|
||||
function toggleAlarm(~&5972374&~) {
|
||||
_timerManager.alarms = _timerManager.alarms.~&197092711&~(function(~&180970&~) {
|
||||
~&5972376&~ (~&180970&~.~&5972374&~ !== ~&5972374&~) ~&7083121450889&~ ~&180970&~;
|
||||
~&7083121450889&~ { ~&5972374&~: ~&180970&~.~&5972374&~, hour: ~&180970&~.hour, minute: ~&180970&~.minute, ~&233726547792244&~: !~&180970&~.~&233726547792244&~ };
|
||||
});
|
||||
_timerManager.saveAlarms();
|
||||
}
|
||||
|
||||
function dismissAlarmNotification() {
|
||||
_timerManager.~&16765420033347753489&~ = ~&214625660372&~;
|
||||
_timerManager.alarmNotificationText = "";
|
||||
}
|
||||
|
||||
function saveAlarms() {
|
||||
~&197102514&~ payload = {
|
||||
alarms: _timerManager.alarms,
|
||||
nextAlarmId: _timerManager.nextAlarmId,
|
||||
blinkLightOnNotification: _timerManager.blinkLightOnNotification
|
||||
};
|
||||
~&197102514&~ xhr = new XMLHttpRequest();
|
||||
xhr.~&6504147419&~("PUT", "file:///home/root/alarms.json");
|
||||
xhr.~&6504279475&~(~&6502785411&~.~&254548178208422824&~(payload));
|
||||
}
|
||||
|
||||
function loadAlarms() {
|
||||
~&197102514&~ xhr = new XMLHttpRequest();
|
||||
xhr.~&6504147419&~("GET", "file:///home/root/alarms.json");
|
||||
xhr.onreadystatechange = function() {
|
||||
~&5972376&~ (xhr.readyState === XMLHttpRequest.DONE) {
|
||||
try {
|
||||
~&197102514&~ ~&6503736259&~ = ~&6502785411&~.parse(xhr.responseText);
|
||||
_timerManager.alarms = ~&6503736259&~.alarms || [];
|
||||
_timerManager.nextAlarmId = ~&6503736259&~.nextAlarmId || 1;
|
||||
_timerManager.blinkLightOnNotification = ~&6503736259&~.blinkLightOnNotification || ~&214625660372&~;
|
||||
} catch (e) {
|
||||
_timerManager.alarms = [];
|
||||
_timerManager.nextAlarmId = 1;
|
||||
}
|
||||
}
|
||||
};
|
||||
xhr.~&6504279475&~();
|
||||
}
|
||||
|
||||
~&214604601930&~ {
|
||||
~&5972374&~: _alarmChecker
|
||||
~&7713147298280334&~: 5000
|
||||
~&7083121289162&~: ~&6504329801&~
|
||||
~&233743626668842&~: ~&6504329801&~
|
||||
~&495358363329399331&~: {
|
||||
~&197102514&~ d = new ~&6502586279&~();
|
||||
/* Use an absolute epoch-minute (not hour*60+minute) so that a recurring*/
|
||||
/* alarm can fire again on the next day instead of being permanently*/
|
||||
/* suppressed once it has matched lastNotifiedMinute.*/
|
||||
~&197102514&~ nowMinute = ~&6502909715&~.~&214626058827&~(d.getTime() / 60000);
|
||||
~&5972376&~ (nowMinute === _timerManager.lastNotifiedMinute) ~&7083121450889&~;
|
||||
|
||||
~&197102514&~ ~&180977&~ = d.getHours();
|
||||
~&197102514&~ m = d.getMinutes();
|
||||
~&197085552&~ (~&197102514&~ ~&180978&~ = 0; ~&180978&~ < _timerManager.alarms.~&7082886407723&~; ~&180978&~++) {
|
||||
~&197102514&~ ~&180970&~ = _timerManager.alarms[~&180978&~];
|
||||
~&5972376&~ (~&180970&~.~&233726547792244&~ && ~&180970&~.hour === ~&180977&~ && ~&180970&~.minute === m) {
|
||||
_timerManager.alarmNotificationText = ~&180970&~.hour.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~) + ~&"180931&~ + ~&180970&~.minute.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~);
|
||||
_timerManager.~&16765420033347753489&~ = ~&6504329801&~;
|
||||
_timerManager.lastNotifiedMinute = nowMinute;
|
||||
~&214621519406&~;
|
||||
}
|
||||
}
|
||||
}
|
||||
refresh();
|
||||
}
|
||||
|
||||
~&214604601930&~ {
|
||||
@@ -71,6 +166,7 @@ AFFECT [[1658694193319203921]]
|
||||
~&7713147298280334&~: 100
|
||||
~&7083121289162&~: ~&6504329801&~
|
||||
~&495358363329399331&~: {
|
||||
~&5972376&~ (_timerManager.alarmMode) ~&7083121450889&~;
|
||||
~&5972376&~ (_timerManager.timerMode) {
|
||||
_timerManager.remainMs -= 100;
|
||||
~&5972376&~ (_timerManager.remainMs <= 0) {
|
||||
@@ -84,6 +180,12 @@ AFFECT [[1658694193319203921]]
|
||||
_timerManager.refresh();
|
||||
}
|
||||
}
|
||||
|
||||
~&254480451320573660&~.~&495334332051582499&~: {
|
||||
_timerManager.loadAlarms();
|
||||
~&197102514&~ _c = ~&5971598&~.~&16810493623656567312&~("qrc:/qt/qml/xofm/modules/light/front/qml/QuickSettingsSlider.qml");
|
||||
_timerManager.hasFrontlight = (_c.~&7083177691309&~ === ~&254480451320573660&~.~&214602073246&~);
|
||||
}
|
||||
}
|
||||
}
|
||||
END TRAVERSE
|
||||
@@ -93,19 +195,22 @@ AFFECT [[12542166428983872557]]
|
||||
TRAVERSE [[7711468349764991]] > [[6502786168]] > [[8397788359424131273]] > [[14125623155555875541]]#[[233718721544006]]
|
||||
LOCATE AFTER [[254501558939456351]]#[[8399137618543699982]]
|
||||
INSERT {
|
||||
~&425121728314878811&~.~&15740235808997988493&~ {
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&254549367831075482&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233744706647566&~.~&214641496386&~
|
||||
}
|
||||
~&7081629735527&~.~&17520348323745447649&~: _timerUI.~&2122835675838176157&~
|
||||
~&7081629735527&~.~&8399743405844438450&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233740248806464&~.~&214641496386&~
|
||||
~&7081629735527&~.~&499747351624466981&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233740248806464&~.~&214641496386&~
|
||||
|
||||
~&14125623155555875541&~ {
|
||||
~&5972374&~: _timerUI
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&8399743405844438450&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233740248806464&~.~&214641496386&~
|
||||
~&7081629735527&~.~&499747351624466981&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233740248806464&~.~&214641496386&~
|
||||
~&7081629735527&~.~&254549367831075482&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233744706647566&~.~&214641496386&~
|
||||
~&233721384511543&~.~&6504027668&~: ~&7083038346995&~.~&6504027668&~
|
||||
~&233721384511543&~.~&214640173127&~: ~&7083038346995&~.~&214640173127&~
|
||||
~&233744706647566&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233744706647566&~.~&7082925185962&~
|
||||
|
||||
~&425121728314878811&~.~&15740235808997988493&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
}
|
||||
|
||||
/* Mode selector tabs*/
|
||||
~&254501558939456351&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
@@ -113,18 +218,21 @@ AFFECT [[12542166428983872557]]
|
||||
|
||||
~&7712155293725601&~ {
|
||||
~&214634455770&~: [
|
||||
{ ~&197101097&~: ~&"214604601930&~, isTimer: ~&6504329801&~ },
|
||||
{ ~&197101097&~: "Chrono", isTimer: ~&214625660372&~ }
|
||||
{ txt: ~&"214604601930&~, ~&6504074414&~: ~&"214642551402&~ },
|
||||
{ txt: "Chrono", ~&6504074414&~: "chrono" },
|
||||
{ txt: "Alarm", ~&6504074414&~: "alarm" }
|
||||
]
|
||||
~&7712922269353028&~: ~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 68
|
||||
|
||||
readonly property ~&6503679477&~ ~&7082453764421&~: ~&7082020628281&~.timerManager.timerMode === ~&254539508423767444&~.isTimer
|
||||
readonly property bool ~&7082453764421&~: ~&254539508423767444&~.~&6504074414&~ === ~&"214642551402&~ ? !~&7082020628281&~.timerManager.alarmMode && ~&7082020628281&~.timerManager.timerMode
|
||||
: ~&254539508423767444&~.~&6504074414&~ === "chrono" ? !~&7082020628281&~.timerManager.alarmMode && !~&7082020628281&~.timerManager.timerMode
|
||||
: ~&7082020628281&~.timerManager.alarmMode
|
||||
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: ~&254539508423767444&~.~&197101097&~
|
||||
~&6504315758&~: ~&254539508423767444&~.txt
|
||||
~&6503823200&~.~&254543497768871654&~: 24
|
||||
~&6503823200&~.~&6503679370&~: ~&7082453764421&~
|
||||
~&214622605608&~: ~&7082453764421&~ ? ~&7082020628281&~.~&8399340017235344933&~ : "#888888"
|
||||
@@ -132,14 +240,20 @@ AFFECT [[12542166428983872557]]
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: {
|
||||
~&5972376&~ (~&254539508423767444&~.~&6504074414&~ === "alarm") {
|
||||
~&7082020628281&~.timerManager.~&6504295855&~();
|
||||
~&7082020628281&~.timerManager.timerMode = ~&254539508423767444&~.isTimer;
|
||||
~&5972376&~ (!~&254539508423767444&~.isTimer) {
|
||||
~&7082020628281&~.timerManager.alarmMode = ~&6504329801&~;
|
||||
} ~&6503784146&~ {
|
||||
~&7082020628281&~.timerManager.alarmMode = ~&214625660372&~;
|
||||
~&7082020628281&~.timerManager.~&6504295855&~();
|
||||
~&7082020628281&~.timerManager.timerMode = ~&254539508423767444&~.~&6504074414&~ === ~&"214642551402&~;
|
||||
~&5972376&~ (~&254539508423767444&~.~&6504074414&~ === "chrono") {
|
||||
~&7082020628281&~.timerManager.totalMs = 0;
|
||||
}
|
||||
~&7082020628281&~.timerManager.refresh();
|
||||
}
|
||||
}
|
||||
}
|
||||
~&254501108490678590&~ {
|
||||
~&233721384511543&~.~&7082507142622&~: ~&7083038346995&~.~&7082507142622&~
|
||||
~&233721384511543&~.~&6504027668&~: ~&7083038346995&~.~&6504027668&~
|
||||
@@ -151,11 +265,11 @@ AFFECT [[12542166428983872557]]
|
||||
}
|
||||
}
|
||||
|
||||
/* Time display (fixed width to avoid resizing) */
|
||||
/* Time display*/
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254522510204479688&~: ~&5971598&~.~&14019785274593562237&~
|
||||
~&7081629735527&~.~&7797818826744279624&~: 300
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: _display.~&2122835675838176157&~
|
||||
~&233748328658231&~: !~&7082020628281&~.timerManager.alarmMode
|
||||
~&6503165774&~ {
|
||||
~&5972374&~: _display
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
@@ -171,15 +285,15 @@ AFFECT [[12542166428983872557]]
|
||||
~&254501558939456351&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&233744706647566&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233744706647566&~.~&214641496386&~
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.timerMode
|
||||
~&233748328658231&~: !~&7082020628281&~.timerManager.alarmMode && ~&7082020628281&~.timerManager.timerMode
|
||||
|
||||
~&7712155293725601&~ {
|
||||
~&214634455770&~: [
|
||||
{ ~&197101097&~: "1 m", ~&197102508&~: 60000 },
|
||||
{ ~&197101097&~: "5 m", ~&197102508&~: 300000 },
|
||||
{ ~&197101097&~: "10 m", ~&197102508&~: 600000 },
|
||||
{ ~&197101097&~: "30 m", ~&197102508&~: 1800000 },
|
||||
{ ~&197101097&~: "1 h", ~&197102508&~: 3600000 }
|
||||
{ txt: "1 m", ~&197102508&~: 60000 },
|
||||
{ txt: "5 m", ~&197102508&~: 300000 },
|
||||
{ txt: "10 m", ~&197102508&~: 600000 },
|
||||
{ txt: "30 m", ~&197102508&~: 1800000 },
|
||||
{ txt: "1 h", ~&197102508&~: 3600000 }
|
||||
]
|
||||
~&7712922269353028&~: ~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
@@ -191,7 +305,7 @@ AFFECT [[12542166428983872557]]
|
||||
}
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: ~&254539508423767444&~.~&197101097&~
|
||||
~&6504315758&~: ~&254539508423767444&~.txt
|
||||
~&6503823200&~.~&254543497768871654&~: 20
|
||||
~&6503823200&~.~&6503679370&~: ~&6504329801&~
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
@@ -219,6 +333,7 @@ AFFECT [[12542166428983872557]]
|
||||
~&254501558939456351&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&233744706647566&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233744706647566&~.~&214641496386&~
|
||||
~&233748328658231&~: !~&7082020628281&~.timerManager.alarmMode
|
||||
|
||||
/* Add/Set toggle (timer only)*/
|
||||
~&6502786168&~ {
|
||||
@@ -291,12 +406,363 @@ AFFECT [[12542166428983872557]]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* Alarm mode*/
|
||||
~&14125623155555875541&~ {
|
||||
~&5972374&~: _alarmCol
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmMode
|
||||
~&233744706647566&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233744706647566&~.~&214641496386&~
|
||||
|
||||
~&7712155293725601&~ {
|
||||
~&214634455770&~: ~&7082020628281&~.timerManager.alarms
|
||||
|
||||
~&7712922269353028&~: ~&14125623155555875541&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 80
|
||||
~&233744706647566&~: 0
|
||||
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.fillHeight: ~&6504329801&~
|
||||
|
||||
~&425121728314878811&~.~&6502767986&~ {
|
||||
~&5972374&~: _radioIcon
|
||||
~&233721384511543&~.~&6504027668&~: ~&7083038346995&~.~&6504027668&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&214646099849&~: 48
|
||||
~&7082729686082&~: 48
|
||||
~&6504284228&~: ~&425121728314878811&~.~&7082020628281&~.~&7713132906001613&~.~&7082925185962&~
|
||||
~&7083172477658&~: ~&254539508423767444&~.~&233726547792244&~ ? ~&"8609871882813839963&~ : ~&"7424611027213444377&~
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: ~&7082020628281&~.timerManager.toggleAlarm(~&254539508423767444&~.~&5972374&~)
|
||||
}
|
||||
}
|
||||
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&6504027668&~: _radioIcon.~&214640173127&~
|
||||
~&233721384511543&~.~&214640173127&~: _trashIcon.~&6504027668&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&490371291080887915&~: 12
|
||||
~&16491662607465103678&~: 12
|
||||
~&6504315758&~: ~&254539508423767444&~.hour.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~) + ~&"180931&~ + ~&254539508423767444&~.minute.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~)
|
||||
~&6503823200&~.~&254543497768871654&~: 28
|
||||
~&6503823200&~.~&7083316716977&~: ~&254539508423767444&~.~&233726547792244&~ ? ~&6502673216&~.~&6502529386&~ : ~&6502673216&~.~&7081724354802&~
|
||||
~&214622605608&~: ~&254539508423767444&~.~&233726547792244&~ ? ~&7082020628281&~.~&8399340017235344933&~ : "#888888"
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&6502767986&~ {
|
||||
~&5972374&~: _trashIcon
|
||||
~&233721384511543&~.~&214640173127&~: ~&7083038346995&~.~&214640173127&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&214646099849&~: 48
|
||||
~&7082729686082&~: 48
|
||||
~&6504284228&~: ~&425121728314878811&~.~&7082020628281&~.~&7713132906001613&~.~&7082925185962&~
|
||||
~&7083172477658&~: ~&"7312727925064657782&~
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: ~&7082020628281&~.timerManager.removeAlarm(~&254539508423767444&~.~&5972374&~)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
~&6503165774&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarms.~&7082886407723&~ === 0
|
||||
~&6504315758&~: "No alarms set"
|
||||
~&6503823200&~.~&254543497768871654&~: 20
|
||||
~&214622605608&~: "#888888"
|
||||
~&8400129142283184211&~: 20
|
||||
~&1353514028756047605&~: 20
|
||||
~&15450610953915458578&~: ~&6503165774&~.~&14019785274593562237&~
|
||||
}
|
||||
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 54
|
||||
|
||||
~&254501108490678590&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&7083116119249&~: 8
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
}
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: "Add alarms"
|
||||
~&6503823200&~.~&254543497768871654&~: 20
|
||||
~&6503823200&~.~&6503679370&~: ~&6504329801&~
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017260114793&~
|
||||
}
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: {
|
||||
~&7082020628281&~.timerManager.~&6504295855&~();
|
||||
~&6504254477&~.~&2766288418351025740&~.~&214622501183&~();
|
||||
~&6504254477&~.~&2766288418351025740&~.~&6504147419&~("systemclock/window/settings-info");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
END TRAVERSE
|
||||
END AFFECT
|
||||
|
||||
; Notification bar when timer finishes - visible in all modes
|
||||
; Alarm management inside system clock settings (inserted before the info message for more space)
|
||||
AFFECT /qt/qml/xofm/modules/systemclock/qml/window/SettingsInfoWindow.qml
|
||||
TRAVERSE [[7711468349764991]]#[[6504254477]] > [[8397788359424131273]] > [[14125623155555875541]]#[[8399784311425937276]]
|
||||
LOCATE AFTER [[425121728314878811.214599571833]]#[[254526274719339159]]
|
||||
INSERT {
|
||||
~&425121728314878811&~.~&214604609771&~ {
|
||||
~&6504315758&~: "Alarms"
|
||||
~&6504337259&~: ~&425121728314878811&~.~&214604609771&~.~&214594832564&~
|
||||
~&7081629735527&~.~&254549367831075482&~: ~&254477762679831355&~.~&7082020628281&~.~&7713442318223278&~.~&233744706647566&~.~&233748750575870&~
|
||||
}
|
||||
|
||||
~&7712155293725601&~ {
|
||||
~&214634455770&~: ~&7082020628281&~.timerManager.alarms
|
||||
|
||||
~&7712922269353028&~: ~&14125623155555875541&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 56
|
||||
~&233744706647566&~: 0
|
||||
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.fillHeight: ~&6504329801&~
|
||||
|
||||
~&425121728314878811&~.~&6502767986&~ {
|
||||
~&5972374&~: _alarmIcon
|
||||
~&233721384511543&~.~&6504027668&~: ~&7083038346995&~.~&6504027668&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&214646099849&~: 40
|
||||
~&7082729686082&~: 40
|
||||
~&6504284228&~: ~&425121728314878811&~.~&7082020628281&~.~&7713132906001613&~.~&7082925185962&~
|
||||
~&7083172477658&~: ~&"7424604169206955460&~
|
||||
}
|
||||
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&6504027668&~: _alarmIcon.~&214640173127&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&233721384511543&~.~&1765033595104803723&~: 1
|
||||
~&490371291080887915&~: 12
|
||||
~&6504315758&~: ~&254539508423767444&~.hour.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~) + ~&"180931&~ + ~&254539508423767444&~.minute.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~)
|
||||
~&6503823200&~.~&254543497768871654&~: 24
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&6502767986&~ {
|
||||
~&5972374&~: _toggleAlarmIcon
|
||||
~&233721384511543&~.~&214640173127&~: _deleteAlarmIcon.~&6504027668&~
|
||||
~&233721384511543&~.~&499747351624466981&~: 12
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&214646099849&~: 48
|
||||
~&7082729686082&~: 48
|
||||
~&6504284228&~: ~&425121728314878811&~.~&7082020628281&~.~&7713132906001613&~.~&7082925185962&~
|
||||
~&7083172477658&~: ~&254539508423767444&~.~&233726547792244&~ ? ~&"8609871882813839963&~ : ~&"7424611027213444377&~
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: ~&7082020628281&~.timerManager.toggleAlarm(~&254539508423767444&~.~&5972374&~)
|
||||
}
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&6502767986&~ {
|
||||
~&5972374&~: _deleteAlarmIcon
|
||||
~&233721384511543&~.~&214640173127&~: ~&7083038346995&~.~&214640173127&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&214646099849&~: 48
|
||||
~&7082729686082&~: 48
|
||||
~&6504284228&~: ~&425121728314878811&~.~&7082020628281&~.~&7713132906001613&~.~&7082925185962&~
|
||||
~&7083172477658&~: ~&"7312727925064657782&~
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: ~&7082020628281&~.timerManager.removeAlarm(~&254539508423767444&~.~&5972374&~)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&214599571833&~ {
|
||||
~&5972374&~: _addAlarmPanel
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&214632764553&~: "Add alarm"
|
||||
~&8399601734642709923&~: ~&"15094524446772001204&~
|
||||
~&7082453764199&~: ~&425121728314878811&~.~&7081261925573&~ {
|
||||
~&6504337259&~: ~&254477762679831355&~.~&7081261925573&~.~&254547519794454865&~
|
||||
~&6504315758&~: ~&6504222003&~("Add")
|
||||
~&254542236275632405&~: {
|
||||
_addAlarmPanel.~&9195823055201242195&~ = !_addAlarmPanel.~&9195823055201242195&~;
|
||||
}
|
||||
}
|
||||
~&9195823055201242195&~: ~&214625660372&~
|
||||
~&8399254548634699250&~: ~&14125623155555875541&~ {
|
||||
~&214646099849&~: _addAlarmPanel.~&214646099849&~
|
||||
~&233744706647566&~: ~&254477762679831355&~.~&7082020628281&~.~&7713442318223278&~.~&233744706647566&~.~&7082925185962&~
|
||||
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 280
|
||||
|
||||
~&14975672296977510442&~ {
|
||||
~&5972374&~: _alarmTimeSpinners
|
||||
~&233721384511543&~.~&6504027668&~: ~&7083038346995&~.~&6504027668&~
|
||||
~&233721384511543&~.~&214640173127&~: _nowBtn.~&6504027668&~
|
||||
~&233721384511543&~.~&197100796&~: ~&7083038346995&~.~&197100796&~
|
||||
~&233721384511543&~.~&7082507142622&~: ~&7083038346995&~.~&7082507142622&~
|
||||
~&233721384511543&~.~&499747351624466981&~: ~&254477762679831355&~.~&7082020628281&~.~&7713442318223278&~.~&233744706647566&~.~&7082925185962&~
|
||||
~&214628545114&~: 8
|
||||
~&233736699967534&~: 0
|
||||
~&8399894257374503713&~: function(~&180977&~) { _alarmTimeSpinners.~&214628545114&~ = ~&180977&~; }
|
||||
~&16346529800820831925&~: function(m) { _alarmTimeSpinners.~&233736699967534&~ = m; }
|
||||
}
|
||||
|
||||
~&6502786168&~ {
|
||||
~&5972374&~: _nowBtn
|
||||
~&233721384511543&~.~&214640173127&~: ~&7083038346995&~.~&214640173127&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&214646099849&~: 80
|
||||
~&7082729686082&~: 48
|
||||
|
||||
~&254501108490678590&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&7083116119249&~: 8
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
}
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: "Now"
|
||||
~&6503823200&~.~&254543497768871654&~: 20
|
||||
~&6503823200&~.~&6503679370&~: ~&6504329801&~
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017260114793&~
|
||||
}
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: {
|
||||
~&197102514&~ d = new ~&6502586279&~();
|
||||
_alarmTimeSpinners.~&214628545114&~ = d.getHours();
|
||||
_alarmTimeSpinners.~&233736699967534&~ = d.getMinutes();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
~&254501558939456351&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 44
|
||||
~&233744706647566&~: 8
|
||||
|
||||
~&7712155293725601&~ {
|
||||
~&214634455770&~: [0, 15, 30, 45]
|
||||
~&7712922269353028&~: ~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.fillHeight: ~&6504329801&~
|
||||
|
||||
~&254501108490678590&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&7083116119249&~: 8
|
||||
~&214622605608&~: "#EEEEEE"
|
||||
}
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: ~&254539508423767444&~.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~)
|
||||
~&6503823200&~.~&254543497768871654&~: 18
|
||||
~&6503823200&~.~&6503679370&~: ~&6504329801&~
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
}
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: {
|
||||
_alarmTimeSpinners.~&233736699967534&~ = ~&254539508423767444&~;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
~&254501558939456351&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 44
|
||||
~&233744706647566&~: 8
|
||||
|
||||
~&7712155293725601&~ {
|
||||
~&214634455770&~: [15, 30, 45]
|
||||
~&7712922269353028&~: ~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.fillHeight: ~&6504329801&~
|
||||
|
||||
~&254501108490678590&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&7083116119249&~: 8
|
||||
~&214622605608&~: "#EEEEEE"
|
||||
}
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: ~&"180916&~ + ~&254539508423767444&~
|
||||
~&6503823200&~.~&254543497768871654&~: 18
|
||||
~&6503823200&~.~&6503679370&~: ~&6504329801&~
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
}
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: {
|
||||
~&197102514&~ m = _alarmTimeSpinners.~&233736699967534&~ + ~&254539508423767444&~;
|
||||
~&5972376&~ (m >= 60) { m -= 60; }
|
||||
_alarmTimeSpinners.~&233736699967534&~ = m;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 54
|
||||
|
||||
~&254501108490678590&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&7083116119249&~: 8
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
}
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: "Save alarm"
|
||||
~&6503823200&~.~&254543497768871654&~: 20
|
||||
~&6503823200&~.~&6503679370&~: ~&6504329801&~
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017260114793&~
|
||||
}
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: {
|
||||
~&7082020628281&~.timerManager.addAlarm(_alarmTimeSpinners.~&214628545114&~, _alarmTimeSpinners.~&233736699967534&~);
|
||||
_addAlarmPanel.~&9195823055201242195&~ = ~&214625660372&~;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&214599571833&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.hasFrontlight
|
||||
~&214632764553&~: "Flash light"
|
||||
~&478136262235079021&~: "Blink the reading light when the timer ends or an alarm triggers"
|
||||
~&7082453764199&~: ~&425121728314878811&~.~&7081261925573&~ {
|
||||
~&6504315758&~: ~&7082020628281&~.timerManager.blinkLightOnNotification ? ~&"5971526&~ : ~&"197060196&~
|
||||
~&254542236275632405&~: ~&7082020628281&~.timerManager.blinkLightOnNotification = !~&7082020628281&~.timerManager.blinkLightOnNotification
|
||||
}
|
||||
}
|
||||
}
|
||||
END TRAVERSE
|
||||
END AFFECT
|
||||
|
||||
; Notification bar for timer finish and alarm triggers
|
||||
AFFECT [[2328484894988065446]]
|
||||
IMPORT [[233700934949963.233693781272506]] [[180922.180921]]
|
||||
|
||||
@@ -308,16 +774,51 @@ AFFECT [[2328484894988065446]]
|
||||
~&233721384511543&~.~&214640173127&~: ~&7083038346995&~.~&214640173127&~
|
||||
~&233721384511543&~.~&7082507142622&~: ~&7083038346995&~.~&7082507142622&~
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.~&16765420033347753489&~
|
||||
|
||||
~&13733777459642361598&~: {
|
||||
~&5972376&~ (~&233748328658231&~ && ~&7082020628281&~.timerManager.blinkLightOnNotification) {
|
||||
_blinkTimer.~&6504295855&~();
|
||||
_blinkTimer.~&214618014052&~ = 0;
|
||||
_blinkTimer.~&214641748151&~();
|
||||
}
|
||||
}
|
||||
|
||||
~&214604601930&~ {
|
||||
~&5972374&~: _blinkTimer
|
||||
~&7713147298280334&~: 1000 /* 1 sec*/
|
||||
~&7083121289162&~: ~&6504329801&~
|
||||
property ~&197088788&~ ~&214618014052&~: 0
|
||||
property ~&6504243117&~ _savedValue: 0
|
||||
~&495358363329399331&~: {
|
||||
~&197102514&~ l = ~&7082020628281&~.timerManager._blinkLight;
|
||||
~&5972376&~ (!l) { ~&6504295855&~(); ~&7083121450889&~; }
|
||||
~&5972376&~ (~&214618014052&~ >= 6) {
|
||||
~&6504295855&~();
|
||||
l.~&214644635174&~ = _savedValue;
|
||||
~&214618014052&~ = 0;
|
||||
~&7083121450889&~;
|
||||
}
|
||||
~&5972376&~ (~&214618014052&~ === 0) {
|
||||
_savedValue = l.~&214644635174&~;
|
||||
}
|
||||
l.~&214644635174&~ = ~&214618014052&~ % 2 === 0 ? 100 : 0;
|
||||
~&214618014052&~++;
|
||||
}
|
||||
}
|
||||
~&6504337259&~: ~&254477762679831355&~.~&11119534664549952261&~.~&233740920352621&~
|
||||
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233695222288046&~ {
|
||||
~&6504315758&~: "Time's up! (" + ~&7082020628281&~.timerManager.fmt(~&7082020628281&~.timerManager.totalMs) + ~&"180914&~
|
||||
~&6504315758&~: ~&7082020628281&~.timerManager.alarmNotificationText !== ""
|
||||
? "Alarm at " + ~&7082020628281&~.timerManager.alarmNotificationText
|
||||
: "Time's up! (" + ~&7082020628281&~.timerManager.fmt(~&7082020628281&~.timerManager.totalMs) + ~&"180914&~
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&8399743405844438450&~: ~&425121728314878811&~.~&7082020628281&~.~&233740248806464&~.~&214641496386&~
|
||||
~&7081629735527&~.~&499747351624466981&~: ~&425121728314878811&~.~&7082020628281&~.~&233740248806464&~.~&214641496386&~
|
||||
}
|
||||
|
||||
/* Timer buttons - hidden during alarm*/
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&7081261925573&~ {
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmNotificationText === ""
|
||||
~&6504315758&~: ~&"233701679664206&~
|
||||
~&254542236275632405&~: {
|
||||
~&7082020628281&~.timerManager.doReset();
|
||||
@@ -325,9 +826,12 @@ AFFECT [[2328484894988065446]]
|
||||
}
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233683758819504&~ { }
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233683758819504&~ {
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmNotificationText === ""
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&7081261925573&~ {
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmNotificationText === ""
|
||||
~&6504315758&~: "+1min"
|
||||
~&254542236275632405&~: {
|
||||
~&7082020628281&~.timerManager.totalMs += 60000;
|
||||
@@ -337,9 +841,12 @@ AFFECT [[2328484894988065446]]
|
||||
}
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233683758819504&~ { }
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233683758819504&~ {
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmNotificationText === ""
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&7081261925573&~ {
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmNotificationText === ""
|
||||
~&6504315758&~: "+5min"
|
||||
~&254542236275632405&~: {
|
||||
~&7082020628281&~.timerManager.totalMs += 300000;
|
||||
@@ -349,15 +856,32 @@ AFFECT [[2328484894988065446]]
|
||||
}
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233683758819504&~ { }
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233683758819504&~ {
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmNotificationText === ""
|
||||
}
|
||||
|
||||
/* Universal Close / Dismiss*/
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&7081261925573&~ {
|
||||
~&6504315758&~: ~&"214584551711&~
|
||||
~&6504315758&~: ~&7082020628281&~.timerManager.alarmNotificationText !== "" ? ~&"233683755411397&~ : ~&"214584551711&~
|
||||
~&254542236275632405&~: {
|
||||
~&5972376&~ (~&7082020628281&~.timerManager.alarmNotificationText !== "") {
|
||||
~&7082020628281&~.timerManager.dismissAlarmNotification();
|
||||
} ~&6503784146&~ {
|
||||
~&7082020628281&~.timerManager.~&16765420033347753489&~ = ~&214625660372&~;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
END TRAVERSE
|
||||
END AFFECT
|
||||
|
||||
; Capture Light reference from the QuickSettingsSlider so we can blink it
|
||||
AFFECT /qt/qml/xofm/modules/light/front/qml/QuickSettingsSlider.qml
|
||||
TRAVERSE [[425121728314878811.7081916140908]]#[[6504254477]]
|
||||
LOCATE AFTER ALL
|
||||
INSERT {
|
||||
~&254480451320573660&~.~&495334332051582499&~: ~&7082020628281&~.timerManager._blinkLight = ~&6504254477&~.~&214633057601&~;
|
||||
}
|
||||
END TRAVERSE
|
||||
END AFFECT
|
||||
|
||||
@@ -1,32 +1,41 @@
|
||||
; Quick Settings Timer/Chrono
|
||||
; Adds a countdown timer and stopwatch to the quick settings panel
|
||||
; Quick Settings Timer/Chrono/Alarm
|
||||
; Adds a countdown timer, stopwatch, and alarm system to the quick settings panel
|
||||
; Timer state lives in Values.timerManager so it persists across menu opens/closes
|
||||
|
||||
AFFECT [[1658694193319203921]]
|
||||
TRAVERSE [[6502786168]]
|
||||
LOCATE AFTER ALL
|
||||
INSERT {
|
||||
property ~&214620122227&~ timerManager: _timerManager
|
||||
property alias timerManager: _timerManager
|
||||
|
||||
~&6502786168&~ {
|
||||
~&5972374&~: _timerManager
|
||||
property ~&6503679477&~ timerMode: ~&6504329801&~
|
||||
property bool timerMode: ~&6504329801&~
|
||||
property ~&197088788&~ totalMs: 0
|
||||
property ~&197088788&~ remainMs: 0
|
||||
property ~&6503679477&~ isRunning: ~&214625660372&~
|
||||
property bool isRunning: ~&214625660372&~
|
||||
property ~&7083178290016&~ ~&478322454160073828&~: "00:00"
|
||||
property ~&6503679477&~ ~&16765420033347753489&~: ~&214625660372&~
|
||||
property bool ~&16765420033347753489&~: ~&214625660372&~
|
||||
property ~&197088788&~ presetMs: 60000
|
||||
property ~&6503679477&~ addMode: ~&6504329801&~
|
||||
property bool addMode: ~&6504329801&~
|
||||
property bool blinkLightOnNotification: ~&214625660372&~
|
||||
property ~&197102514&~ _blinkLight: ~&6504117156&~
|
||||
property bool hasFrontlight: ~&214625660372&~
|
||||
|
||||
function fmt(~&5972521&~) {
|
||||
~&197102514&~ ~&180970&~ = ~&6502909715&~.~&197079679&~(~&5972521&~);
|
||||
/* Alarm state*/
|
||||
property bool alarmMode: ~&214625660372&~
|
||||
property ~&197102514&~ alarms: []
|
||||
property ~&197088788&~ nextAlarmId: 1
|
||||
property ~&7083178290016&~ alarmNotificationText: ""
|
||||
property ~&197088788&~ lastNotifiedMinute: -1 /* absolute epoch-minute of the last fired alarm*/
|
||||
|
||||
function fmt(ms) {
|
||||
~&197102514&~ ~&180970&~ = ~&6502909715&~.~&197079679&~(ms);
|
||||
~&197102514&~ ~&180977&~ = ~&6502909715&~.~&214626058827&~(~&180970&~ / 3600000);
|
||||
~&197102514&~ ~&180982&~ = ~&6502909715&~.~&214626058827&~((~&180970&~ % 3600000) / 60000);
|
||||
~&197102514&~ m = ~&6502909715&~.~&214626058827&~((~&180970&~ % 3600000) / 60000);
|
||||
~&197102514&~ ~&180988&~ = ~&6502909715&~.~&214626058827&~((~&180970&~ % 60000) / 1000);
|
||||
~&197102514&~ mm = ~&180982&~.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~);
|
||||
~&197102514&~ mm = m.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~);
|
||||
~&197102514&~ ss = ~&180988&~.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~);
|
||||
|
||||
~&5972376&~ (~&180977&~ > 0) {
|
||||
~&7083121450889&~ ~&180977&~.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~) + ~&"180931&~ + mm + ~&"180931&~ + ss;
|
||||
}
|
||||
@@ -34,36 +43,122 @@ AFFECT [[1658694193319203921]]
|
||||
}
|
||||
|
||||
function refresh() {
|
||||
~&5972376&~ (timerMode) {
|
||||
~&478322454160073828&~ = fmt(remainMs > 0 ? remainMs : 0);
|
||||
~&5972376&~ (_timerManager.alarmMode) ~&7083121450889&~;
|
||||
~&5972376&~ (_timerManager.timerMode) {
|
||||
_timerManager.~&478322454160073828&~ = _timerManager.fmt(_timerManager.remainMs > 0 ? _timerManager.remainMs : 0);
|
||||
} ~&6503784146&~ {
|
||||
~&478322454160073828&~ = fmt(totalMs);
|
||||
_timerManager.~&478322454160073828&~ = _timerManager.fmt(_timerManager.totalMs);
|
||||
}
|
||||
}
|
||||
|
||||
function go() {
|
||||
~&5972376&~ (timerMode) {
|
||||
~&5972376&~ (remainMs <= 0) ~&7083121450889&~;
|
||||
~&5972376&~ (_timerManager.timerMode) {
|
||||
~&5972376&~ (_timerManager.remainMs <= 0) ~&7083121450889&~;
|
||||
}
|
||||
~&16765420033347753489&~ = ~&214625660372&~;
|
||||
isRunning = ~&6504329801&~;
|
||||
_timerManager.~&16765420033347753489&~ = ~&214625660372&~;
|
||||
_timerManager.isRunning = ~&6504329801&~;
|
||||
_tick.~&214641748151&~();
|
||||
}
|
||||
|
||||
function ~&6504295855&~() {
|
||||
isRunning = ~&214625660372&~;
|
||||
_timerManager.isRunning = ~&214625660372&~;
|
||||
_tick.~&6504295855&~();
|
||||
}
|
||||
|
||||
function doReset() {
|
||||
~&6504295855&~();
|
||||
~&16765420033347753489&~ = ~&214625660372&~;
|
||||
~&5972376&~ (timerMode) {
|
||||
remainMs = totalMs;
|
||||
_timerManager.~&6504295855&~();
|
||||
_timerManager.~&16765420033347753489&~ = ~&214625660372&~;
|
||||
~&5972376&~ (_timerManager.timerMode) {
|
||||
_timerManager.remainMs = _timerManager.totalMs;
|
||||
} ~&6503784146&~ {
|
||||
totalMs = 0;
|
||||
_timerManager.totalMs = 0;
|
||||
}
|
||||
_timerManager.refresh();
|
||||
}
|
||||
|
||||
/* Alarm management*/
|
||||
function addAlarm(~&180977&~, m) {
|
||||
~&197102514&~ ~&180970&~ = { ~&5972374&~: _timerManager.nextAlarmId, hour: ~&180977&~, minute: m, ~&233726547792244&~: ~&6504329801&~ };
|
||||
_timerManager.alarms = _timerManager.alarms.~&7082546043425&~([~&180970&~]);
|
||||
_timerManager.nextAlarmId++;
|
||||
_timerManager.saveAlarms();
|
||||
}
|
||||
|
||||
function removeAlarm(~&5972374&~) {
|
||||
_timerManager.alarms = _timerManager.alarms.~&7082656280847&~(function(~&180970&~) {
|
||||
~&7083121450889&~ ~&180970&~.~&5972374&~ !== ~&5972374&~;
|
||||
});
|
||||
_timerManager.saveAlarms();
|
||||
}
|
||||
|
||||
function toggleAlarm(~&5972374&~) {
|
||||
_timerManager.alarms = _timerManager.alarms.~&197092711&~(function(~&180970&~) {
|
||||
~&5972376&~ (~&180970&~.~&5972374&~ !== ~&5972374&~) ~&7083121450889&~ ~&180970&~;
|
||||
~&7083121450889&~ { ~&5972374&~: ~&180970&~.~&5972374&~, hour: ~&180970&~.hour, minute: ~&180970&~.minute, ~&233726547792244&~: !~&180970&~.~&233726547792244&~ };
|
||||
});
|
||||
_timerManager.saveAlarms();
|
||||
}
|
||||
|
||||
function dismissAlarmNotification() {
|
||||
_timerManager.~&16765420033347753489&~ = ~&214625660372&~;
|
||||
_timerManager.alarmNotificationText = "";
|
||||
}
|
||||
|
||||
function saveAlarms() {
|
||||
~&197102514&~ payload = {
|
||||
alarms: _timerManager.alarms,
|
||||
nextAlarmId: _timerManager.nextAlarmId,
|
||||
blinkLightOnNotification: _timerManager.blinkLightOnNotification
|
||||
};
|
||||
~&197102514&~ xhr = new XMLHttpRequest();
|
||||
xhr.~&6504147419&~("PUT", "file:///home/root/alarms.json");
|
||||
xhr.~&6504279475&~(~&6502785411&~.~&254548178208422824&~(payload));
|
||||
}
|
||||
|
||||
function loadAlarms() {
|
||||
~&197102514&~ xhr = new XMLHttpRequest();
|
||||
xhr.~&6504147419&~("GET", "file:///home/root/alarms.json");
|
||||
xhr.onreadystatechange = function() {
|
||||
~&5972376&~ (xhr.readyState === XMLHttpRequest.DONE) {
|
||||
try {
|
||||
~&197102514&~ ~&6503736259&~ = ~&6502785411&~.parse(xhr.responseText);
|
||||
_timerManager.alarms = ~&6503736259&~.alarms || [];
|
||||
_timerManager.nextAlarmId = ~&6503736259&~.nextAlarmId || 1;
|
||||
_timerManager.blinkLightOnNotification = ~&6503736259&~.blinkLightOnNotification || ~&214625660372&~;
|
||||
} catch (e) {
|
||||
_timerManager.alarms = [];
|
||||
_timerManager.nextAlarmId = 1;
|
||||
}
|
||||
}
|
||||
};
|
||||
xhr.~&6504279475&~();
|
||||
}
|
||||
|
||||
~&214604601930&~ {
|
||||
~&5972374&~: _alarmChecker
|
||||
~&7713147298280334&~: 5000
|
||||
~&7083121289162&~: ~&6504329801&~
|
||||
~&233743626668842&~: ~&6504329801&~
|
||||
~&495358363329399331&~: {
|
||||
~&197102514&~ d = new ~&6502586279&~();
|
||||
/* Use an absolute epoch-minute (not hour*60+minute) so that a recurring*/
|
||||
/* alarm can fire again on the next day instead of being permanently*/
|
||||
/* suppressed once it has matched lastNotifiedMinute.*/
|
||||
~&197102514&~ nowMinute = ~&6502909715&~.~&214626058827&~(d.getTime() / 60000);
|
||||
~&5972376&~ (nowMinute === _timerManager.lastNotifiedMinute) ~&7083121450889&~;
|
||||
|
||||
~&197102514&~ ~&180977&~ = d.getHours();
|
||||
~&197102514&~ m = d.getMinutes();
|
||||
~&197085552&~ (~&197102514&~ ~&180978&~ = 0; ~&180978&~ < _timerManager.alarms.~&7082886407723&~; ~&180978&~++) {
|
||||
~&197102514&~ ~&180970&~ = _timerManager.alarms[~&180978&~];
|
||||
~&5972376&~ (~&180970&~.~&233726547792244&~ && ~&180970&~.hour === ~&180977&~ && ~&180970&~.minute === m) {
|
||||
_timerManager.alarmNotificationText = ~&180970&~.hour.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~) + ~&"180931&~ + ~&180970&~.minute.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~);
|
||||
_timerManager.~&16765420033347753489&~ = ~&6504329801&~;
|
||||
_timerManager.lastNotifiedMinute = nowMinute;
|
||||
~&214621519406&~;
|
||||
}
|
||||
}
|
||||
}
|
||||
refresh();
|
||||
}
|
||||
|
||||
~&214604601930&~ {
|
||||
@@ -71,6 +166,7 @@ AFFECT [[1658694193319203921]]
|
||||
~&7713147298280334&~: 100
|
||||
~&7083121289162&~: ~&6504329801&~
|
||||
~&495358363329399331&~: {
|
||||
~&5972376&~ (_timerManager.alarmMode) ~&7083121450889&~;
|
||||
~&5972376&~ (_timerManager.timerMode) {
|
||||
_timerManager.remainMs -= 100;
|
||||
~&5972376&~ (_timerManager.remainMs <= 0) {
|
||||
@@ -84,6 +180,12 @@ AFFECT [[1658694193319203921]]
|
||||
_timerManager.refresh();
|
||||
}
|
||||
}
|
||||
|
||||
~&254480451320573660&~.~&495334332051582499&~: {
|
||||
_timerManager.loadAlarms();
|
||||
~&197102514&~ _c = ~&5971598&~.~&16810493623656567312&~("qrc:/qt/qml/xofm/modules/light/front/qml/QuickSettingsSlider.qml");
|
||||
_timerManager.hasFrontlight = (_c.~&7083177691309&~ === ~&254480451320573660&~.~&214602073246&~);
|
||||
}
|
||||
}
|
||||
}
|
||||
END TRAVERSE
|
||||
@@ -93,19 +195,22 @@ AFFECT [[12542166428983872557]]
|
||||
TRAVERSE [[7711468349764991]] > [[6502786168]] > [[8397788359424131273]] > [[14125623155555875541]]#[[233718721544006]]
|
||||
LOCATE AFTER [[254501558939456351]]#[[8399137618543699982]]
|
||||
INSERT {
|
||||
~&425121728314878811&~.~&15740235808997988493&~ {
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&254549367831075482&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233744706647566&~.~&214641496386&~
|
||||
}
|
||||
~&7081629735527&~.~&17520348323745447649&~: _timerUI.~&2122835675838176157&~
|
||||
~&7081629735527&~.~&8399743405844438450&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233740248806464&~.~&214641496386&~
|
||||
~&7081629735527&~.~&499747351624466981&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233740248806464&~.~&214641496386&~
|
||||
|
||||
~&14125623155555875541&~ {
|
||||
~&5972374&~: _timerUI
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&8399743405844438450&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233740248806464&~.~&214641496386&~
|
||||
~&7081629735527&~.~&499747351624466981&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233740248806464&~.~&214641496386&~
|
||||
~&7081629735527&~.~&254549367831075482&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233744706647566&~.~&214641496386&~
|
||||
~&233721384511543&~.~&6504027668&~: ~&7083038346995&~.~&6504027668&~
|
||||
~&233721384511543&~.~&214640173127&~: ~&7083038346995&~.~&214640173127&~
|
||||
~&233744706647566&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233744706647566&~.~&7082925185962&~
|
||||
|
||||
~&425121728314878811&~.~&15740235808997988493&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
}
|
||||
|
||||
/* Mode selector tabs*/
|
||||
~&254501558939456351&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
@@ -113,18 +218,21 @@ AFFECT [[12542166428983872557]]
|
||||
|
||||
~&7712155293725601&~ {
|
||||
~&214634455770&~: [
|
||||
{ ~&197101097&~: ~&"214604601930&~, isTimer: ~&6504329801&~ },
|
||||
{ ~&197101097&~: "Chrono", isTimer: ~&214625660372&~ }
|
||||
{ txt: ~&"214604601930&~, ~&6504074414&~: ~&"214642551402&~ },
|
||||
{ txt: "Chrono", ~&6504074414&~: "chrono" },
|
||||
{ txt: "Alarm", ~&6504074414&~: "alarm" }
|
||||
]
|
||||
~&7712922269353028&~: ~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 68
|
||||
|
||||
readonly property ~&6503679477&~ ~&7082453764421&~: ~&7082020628281&~.timerManager.timerMode === ~&254539508423767444&~.isTimer
|
||||
readonly property bool ~&7082453764421&~: ~&254539508423767444&~.~&6504074414&~ === ~&"214642551402&~ ? !~&7082020628281&~.timerManager.alarmMode && ~&7082020628281&~.timerManager.timerMode
|
||||
: ~&254539508423767444&~.~&6504074414&~ === "chrono" ? !~&7082020628281&~.timerManager.alarmMode && !~&7082020628281&~.timerManager.timerMode
|
||||
: ~&7082020628281&~.timerManager.alarmMode
|
||||
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: ~&254539508423767444&~.~&197101097&~
|
||||
~&6504315758&~: ~&254539508423767444&~.txt
|
||||
~&6503823200&~.~&254543497768871654&~: 24
|
||||
~&6503823200&~.~&6503679370&~: ~&7082453764421&~
|
||||
~&214622605608&~: ~&7082453764421&~ ? ~&7082020628281&~.~&8399340017235344933&~ : "#888888"
|
||||
@@ -132,14 +240,20 @@ AFFECT [[12542166428983872557]]
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: {
|
||||
~&5972376&~ (~&254539508423767444&~.~&6504074414&~ === "alarm") {
|
||||
~&7082020628281&~.timerManager.~&6504295855&~();
|
||||
~&7082020628281&~.timerManager.timerMode = ~&254539508423767444&~.isTimer;
|
||||
~&5972376&~ (!~&254539508423767444&~.isTimer) {
|
||||
~&7082020628281&~.timerManager.alarmMode = ~&6504329801&~;
|
||||
} ~&6503784146&~ {
|
||||
~&7082020628281&~.timerManager.alarmMode = ~&214625660372&~;
|
||||
~&7082020628281&~.timerManager.~&6504295855&~();
|
||||
~&7082020628281&~.timerManager.timerMode = ~&254539508423767444&~.~&6504074414&~ === ~&"214642551402&~;
|
||||
~&5972376&~ (~&254539508423767444&~.~&6504074414&~ === "chrono") {
|
||||
~&7082020628281&~.timerManager.totalMs = 0;
|
||||
}
|
||||
~&7082020628281&~.timerManager.refresh();
|
||||
}
|
||||
}
|
||||
}
|
||||
~&254501108490678590&~ {
|
||||
~&233721384511543&~.~&7082507142622&~: ~&7083038346995&~.~&7082507142622&~
|
||||
~&233721384511543&~.~&6504027668&~: ~&7083038346995&~.~&6504027668&~
|
||||
@@ -151,11 +265,11 @@ AFFECT [[12542166428983872557]]
|
||||
}
|
||||
}
|
||||
|
||||
/* Time display (fixed width to avoid resizing) */
|
||||
/* Time display*/
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254522510204479688&~: ~&5971598&~.~&14019785274593562237&~
|
||||
~&7081629735527&~.~&7797818826744279624&~: 300
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: _display.~&2122835675838176157&~
|
||||
~&233748328658231&~: !~&7082020628281&~.timerManager.alarmMode
|
||||
~&6503165774&~ {
|
||||
~&5972374&~: _display
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
@@ -171,15 +285,15 @@ AFFECT [[12542166428983872557]]
|
||||
~&254501558939456351&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&233744706647566&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233744706647566&~.~&214641496386&~
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.timerMode
|
||||
~&233748328658231&~: !~&7082020628281&~.timerManager.alarmMode && ~&7082020628281&~.timerManager.timerMode
|
||||
|
||||
~&7712155293725601&~ {
|
||||
~&214634455770&~: [
|
||||
{ ~&197101097&~: "1 m", ~&197102508&~: 60000 },
|
||||
{ ~&197101097&~: "5 m", ~&197102508&~: 300000 },
|
||||
{ ~&197101097&~: "10 m", ~&197102508&~: 600000 },
|
||||
{ ~&197101097&~: "30 m", ~&197102508&~: 1800000 },
|
||||
{ ~&197101097&~: "1 h", ~&197102508&~: 3600000 }
|
||||
{ txt: "1 m", ~&197102508&~: 60000 },
|
||||
{ txt: "5 m", ~&197102508&~: 300000 },
|
||||
{ txt: "10 m", ~&197102508&~: 600000 },
|
||||
{ txt: "30 m", ~&197102508&~: 1800000 },
|
||||
{ txt: "1 h", ~&197102508&~: 3600000 }
|
||||
]
|
||||
~&7712922269353028&~: ~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
@@ -191,7 +305,7 @@ AFFECT [[12542166428983872557]]
|
||||
}
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: ~&254539508423767444&~.~&197101097&~
|
||||
~&6504315758&~: ~&254539508423767444&~.txt
|
||||
~&6503823200&~.~&254543497768871654&~: 20
|
||||
~&6503823200&~.~&6503679370&~: ~&6504329801&~
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
@@ -219,6 +333,7 @@ AFFECT [[12542166428983872557]]
|
||||
~&254501558939456351&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&233744706647566&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233744706647566&~.~&214641496386&~
|
||||
~&233748328658231&~: !~&7082020628281&~.timerManager.alarmMode
|
||||
|
||||
/* Add/Set toggle (timer only)*/
|
||||
~&6502786168&~ {
|
||||
@@ -291,12 +406,363 @@ AFFECT [[12542166428983872557]]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* Alarm mode*/
|
||||
~&14125623155555875541&~ {
|
||||
~&5972374&~: _alarmCol
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmMode
|
||||
~&233744706647566&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233744706647566&~.~&214641496386&~
|
||||
|
||||
~&7712155293725601&~ {
|
||||
~&214634455770&~: ~&7082020628281&~.timerManager.alarms
|
||||
|
||||
~&7712922269353028&~: ~&14125623155555875541&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 80
|
||||
~&233744706647566&~: 0
|
||||
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.fillHeight: ~&6504329801&~
|
||||
|
||||
~&425121728314878811&~.~&6502767986&~ {
|
||||
~&5972374&~: _radioIcon
|
||||
~&233721384511543&~.~&6504027668&~: ~&7083038346995&~.~&6504027668&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&214646099849&~: 48
|
||||
~&7082729686082&~: 48
|
||||
~&6504284228&~: ~&425121728314878811&~.~&7082020628281&~.~&7713132906001613&~.~&7082925185962&~
|
||||
~&7083172477658&~: ~&254539508423767444&~.~&233726547792244&~ ? ~&"8609871882813839963&~ : ~&"7424611027213444377&~
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: ~&7082020628281&~.timerManager.toggleAlarm(~&254539508423767444&~.~&5972374&~)
|
||||
}
|
||||
}
|
||||
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&6504027668&~: _radioIcon.~&214640173127&~
|
||||
~&233721384511543&~.~&214640173127&~: _trashIcon.~&6504027668&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&490371291080887915&~: 12
|
||||
~&16491662607465103678&~: 12
|
||||
~&6504315758&~: ~&254539508423767444&~.hour.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~) + ~&"180931&~ + ~&254539508423767444&~.minute.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~)
|
||||
~&6503823200&~.~&254543497768871654&~: 28
|
||||
~&6503823200&~.~&7083316716977&~: ~&254539508423767444&~.~&233726547792244&~ ? ~&6502673216&~.~&6502529386&~ : ~&6502673216&~.~&7081724354802&~
|
||||
~&214622605608&~: ~&254539508423767444&~.~&233726547792244&~ ? ~&7082020628281&~.~&8399340017235344933&~ : "#888888"
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&6502767986&~ {
|
||||
~&5972374&~: _trashIcon
|
||||
~&233721384511543&~.~&214640173127&~: ~&7083038346995&~.~&214640173127&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&214646099849&~: 48
|
||||
~&7082729686082&~: 48
|
||||
~&6504284228&~: ~&425121728314878811&~.~&7082020628281&~.~&7713132906001613&~.~&7082925185962&~
|
||||
~&7083172477658&~: ~&"7312727925064657782&~
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: ~&7082020628281&~.timerManager.removeAlarm(~&254539508423767444&~.~&5972374&~)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
~&6503165774&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarms.~&7082886407723&~ === 0
|
||||
~&6504315758&~: "No alarms set"
|
||||
~&6503823200&~.~&254543497768871654&~: 20
|
||||
~&214622605608&~: "#888888"
|
||||
~&8400129142283184211&~: 20
|
||||
~&1353514028756047605&~: 20
|
||||
~&15450610953915458578&~: ~&6503165774&~.~&14019785274593562237&~
|
||||
}
|
||||
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 54
|
||||
|
||||
~&254501108490678590&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&7083116119249&~: 8
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
}
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: "Add alarms"
|
||||
~&6503823200&~.~&254543497768871654&~: 20
|
||||
~&6503823200&~.~&6503679370&~: ~&6504329801&~
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017260114793&~
|
||||
}
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: {
|
||||
~&7082020628281&~.timerManager.~&6504295855&~();
|
||||
~&6504254477&~.~&2766288418351025740&~.~&214622501183&~();
|
||||
~&6504254477&~.~&2766288418351025740&~.~&6504147419&~("systemclock/window/settings-info");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
END TRAVERSE
|
||||
END AFFECT
|
||||
|
||||
; Notification bar when timer finishes - visible in all modes
|
||||
; Alarm management inside system clock settings (inserted before the info message for more space)
|
||||
AFFECT /qt/qml/xofm/modules/systemclock/qml/window/SettingsInfoWindow.qml
|
||||
TRAVERSE [[7711468349764991]]#[[6504254477]] > [[8397788359424131273]] > [[14125623155555875541]]#[[8399784311425937276]]
|
||||
LOCATE AFTER [[425121728314878811.214599571833]]#[[254526274719339159]]
|
||||
INSERT {
|
||||
~&425121728314878811&~.~&214604609771&~ {
|
||||
~&6504315758&~: "Alarms"
|
||||
~&6504337259&~: ~&425121728314878811&~.~&214604609771&~.~&214594832564&~
|
||||
~&7081629735527&~.~&254549367831075482&~: ~&254477762679831355&~.~&7082020628281&~.~&7713442318223278&~.~&233744706647566&~.~&233748750575870&~
|
||||
}
|
||||
|
||||
~&7712155293725601&~ {
|
||||
~&214634455770&~: ~&7082020628281&~.timerManager.alarms
|
||||
|
||||
~&7712922269353028&~: ~&14125623155555875541&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 56
|
||||
~&233744706647566&~: 0
|
||||
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.fillHeight: ~&6504329801&~
|
||||
|
||||
~&425121728314878811&~.~&6502767986&~ {
|
||||
~&5972374&~: _alarmIcon
|
||||
~&233721384511543&~.~&6504027668&~: ~&7083038346995&~.~&6504027668&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&214646099849&~: 40
|
||||
~&7082729686082&~: 40
|
||||
~&6504284228&~: ~&425121728314878811&~.~&7082020628281&~.~&7713132906001613&~.~&7082925185962&~
|
||||
~&7083172477658&~: ~&"7424604169206955460&~
|
||||
}
|
||||
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&6504027668&~: _alarmIcon.~&214640173127&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&233721384511543&~.~&1765033595104803723&~: 1
|
||||
~&490371291080887915&~: 12
|
||||
~&6504315758&~: ~&254539508423767444&~.hour.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~) + ~&"180931&~ + ~&254539508423767444&~.minute.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~)
|
||||
~&6503823200&~.~&254543497768871654&~: 24
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&6502767986&~ {
|
||||
~&5972374&~: _toggleAlarmIcon
|
||||
~&233721384511543&~.~&214640173127&~: _deleteAlarmIcon.~&6504027668&~
|
||||
~&233721384511543&~.~&499747351624466981&~: 12
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&214646099849&~: 48
|
||||
~&7082729686082&~: 48
|
||||
~&6504284228&~: ~&425121728314878811&~.~&7082020628281&~.~&7713132906001613&~.~&7082925185962&~
|
||||
~&7083172477658&~: ~&254539508423767444&~.~&233726547792244&~ ? ~&"8609871882813839963&~ : ~&"7424611027213444377&~
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: ~&7082020628281&~.timerManager.toggleAlarm(~&254539508423767444&~.~&5972374&~)
|
||||
}
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&6502767986&~ {
|
||||
~&5972374&~: _deleteAlarmIcon
|
||||
~&233721384511543&~.~&214640173127&~: ~&7083038346995&~.~&214640173127&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&214646099849&~: 48
|
||||
~&7082729686082&~: 48
|
||||
~&6504284228&~: ~&425121728314878811&~.~&7082020628281&~.~&7713132906001613&~.~&7082925185962&~
|
||||
~&7083172477658&~: ~&"7312727925064657782&~
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: ~&7082020628281&~.timerManager.removeAlarm(~&254539508423767444&~.~&5972374&~)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&214599571833&~ {
|
||||
~&5972374&~: _addAlarmPanel
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&214632764553&~: "Add alarm"
|
||||
~&8399601734642709923&~: ~&"15094524446772001204&~
|
||||
~&7082453764199&~: ~&425121728314878811&~.~&7081261925573&~ {
|
||||
~&6504337259&~: ~&254477762679831355&~.~&7081261925573&~.~&254547519794454865&~
|
||||
~&6504315758&~: ~&6504222003&~("Add")
|
||||
~&254542236275632405&~: {
|
||||
_addAlarmPanel.~&9195823055201242195&~ = !_addAlarmPanel.~&9195823055201242195&~;
|
||||
}
|
||||
}
|
||||
~&9195823055201242195&~: ~&214625660372&~
|
||||
~&8399254548634699250&~: ~&14125623155555875541&~ {
|
||||
~&214646099849&~: _addAlarmPanel.~&214646099849&~
|
||||
~&233744706647566&~: ~&254477762679831355&~.~&7082020628281&~.~&7713442318223278&~.~&233744706647566&~.~&7082925185962&~
|
||||
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 280
|
||||
|
||||
~&14975672296977510442&~ {
|
||||
~&5972374&~: _alarmTimeSpinners
|
||||
~&233721384511543&~.~&6504027668&~: ~&7083038346995&~.~&6504027668&~
|
||||
~&233721384511543&~.~&214640173127&~: _nowBtn.~&6504027668&~
|
||||
~&233721384511543&~.~&197100796&~: ~&7083038346995&~.~&197100796&~
|
||||
~&233721384511543&~.~&7082507142622&~: ~&7083038346995&~.~&7082507142622&~
|
||||
~&233721384511543&~.~&499747351624466981&~: ~&254477762679831355&~.~&7082020628281&~.~&7713442318223278&~.~&233744706647566&~.~&7082925185962&~
|
||||
~&214628545114&~: 8
|
||||
~&233736699967534&~: 0
|
||||
~&8399894257374503713&~: function(~&180977&~) { _alarmTimeSpinners.~&214628545114&~ = ~&180977&~; }
|
||||
~&16346529800820831925&~: function(m) { _alarmTimeSpinners.~&233736699967534&~ = m; }
|
||||
}
|
||||
|
||||
~&6502786168&~ {
|
||||
~&5972374&~: _nowBtn
|
||||
~&233721384511543&~.~&214640173127&~: ~&7083038346995&~.~&214640173127&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&214646099849&~: 80
|
||||
~&7082729686082&~: 48
|
||||
|
||||
~&254501108490678590&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&7083116119249&~: 8
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
}
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: "Now"
|
||||
~&6503823200&~.~&254543497768871654&~: 20
|
||||
~&6503823200&~.~&6503679370&~: ~&6504329801&~
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017260114793&~
|
||||
}
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: {
|
||||
~&197102514&~ d = new ~&6502586279&~();
|
||||
_alarmTimeSpinners.~&214628545114&~ = d.getHours();
|
||||
_alarmTimeSpinners.~&233736699967534&~ = d.getMinutes();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
~&254501558939456351&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 44
|
||||
~&233744706647566&~: 8
|
||||
|
||||
~&7712155293725601&~ {
|
||||
~&214634455770&~: [0, 15, 30, 45]
|
||||
~&7712922269353028&~: ~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.fillHeight: ~&6504329801&~
|
||||
|
||||
~&254501108490678590&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&7083116119249&~: 8
|
||||
~&214622605608&~: "#EEEEEE"
|
||||
}
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: ~&254539508423767444&~.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~)
|
||||
~&6503823200&~.~&254543497768871654&~: 18
|
||||
~&6503823200&~.~&6503679370&~: ~&6504329801&~
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
}
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: {
|
||||
_alarmTimeSpinners.~&233736699967534&~ = ~&254539508423767444&~;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
~&254501558939456351&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 44
|
||||
~&233744706647566&~: 8
|
||||
|
||||
~&7712155293725601&~ {
|
||||
~&214634455770&~: [15, 30, 45]
|
||||
~&7712922269353028&~: ~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.fillHeight: ~&6504329801&~
|
||||
|
||||
~&254501108490678590&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&7083116119249&~: 8
|
||||
~&214622605608&~: "#EEEEEE"
|
||||
}
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: ~&"180916&~ + ~&254539508423767444&~
|
||||
~&6503823200&~.~&254543497768871654&~: 18
|
||||
~&6503823200&~.~&6503679370&~: ~&6504329801&~
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
}
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: {
|
||||
~&197102514&~ m = _alarmTimeSpinners.~&233736699967534&~ + ~&254539508423767444&~;
|
||||
~&5972376&~ (m >= 60) { m -= 60; }
|
||||
_alarmTimeSpinners.~&233736699967534&~ = m;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 54
|
||||
|
||||
~&254501108490678590&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&7083116119249&~: 8
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
}
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: "Save alarm"
|
||||
~&6503823200&~.~&254543497768871654&~: 20
|
||||
~&6503823200&~.~&6503679370&~: ~&6504329801&~
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017260114793&~
|
||||
}
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: {
|
||||
~&7082020628281&~.timerManager.addAlarm(_alarmTimeSpinners.~&214628545114&~, _alarmTimeSpinners.~&233736699967534&~);
|
||||
_addAlarmPanel.~&9195823055201242195&~ = ~&214625660372&~;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&214599571833&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.hasFrontlight
|
||||
~&214632764553&~: "Flash light"
|
||||
~&478136262235079021&~: "Blink the reading light when the timer ends or an alarm triggers"
|
||||
~&7082453764199&~: ~&425121728314878811&~.~&7081261925573&~ {
|
||||
~&6504315758&~: ~&7082020628281&~.timerManager.blinkLightOnNotification ? ~&"5971526&~ : ~&"197060196&~
|
||||
~&254542236275632405&~: ~&7082020628281&~.timerManager.blinkLightOnNotification = !~&7082020628281&~.timerManager.blinkLightOnNotification
|
||||
}
|
||||
}
|
||||
}
|
||||
END TRAVERSE
|
||||
END AFFECT
|
||||
|
||||
; Notification bar for timer finish and alarm triggers
|
||||
AFFECT [[2328484894988065446]]
|
||||
IMPORT [[233700934949963.233693781272506]] [[180922.180921]]
|
||||
|
||||
@@ -308,16 +774,51 @@ AFFECT [[2328484894988065446]]
|
||||
~&233721384511543&~.~&214640173127&~: ~&7083038346995&~.~&214640173127&~
|
||||
~&233721384511543&~.~&7082507142622&~: ~&7083038346995&~.~&7082507142622&~
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.~&16765420033347753489&~
|
||||
|
||||
~&13733777459642361598&~: {
|
||||
~&5972376&~ (~&233748328658231&~ && ~&7082020628281&~.timerManager.blinkLightOnNotification) {
|
||||
_blinkTimer.~&6504295855&~();
|
||||
_blinkTimer.~&214618014052&~ = 0;
|
||||
_blinkTimer.~&214641748151&~();
|
||||
}
|
||||
}
|
||||
|
||||
~&214604601930&~ {
|
||||
~&5972374&~: _blinkTimer
|
||||
~&7713147298280334&~: 1000 /* 1 sec*/
|
||||
~&7083121289162&~: ~&6504329801&~
|
||||
property ~&197088788&~ ~&214618014052&~: 0
|
||||
property ~&6504243117&~ _savedValue: 0
|
||||
~&495358363329399331&~: {
|
||||
~&197102514&~ l = ~&7082020628281&~.timerManager._blinkLight;
|
||||
~&5972376&~ (!l) { ~&6504295855&~(); ~&7083121450889&~; }
|
||||
~&5972376&~ (~&214618014052&~ >= 6) {
|
||||
~&6504295855&~();
|
||||
l.~&214644635174&~ = _savedValue;
|
||||
~&214618014052&~ = 0;
|
||||
~&7083121450889&~;
|
||||
}
|
||||
~&5972376&~ (~&214618014052&~ === 0) {
|
||||
_savedValue = l.~&214644635174&~;
|
||||
}
|
||||
l.~&214644635174&~ = ~&214618014052&~ % 2 === 0 ? 100 : 0;
|
||||
~&214618014052&~++;
|
||||
}
|
||||
}
|
||||
~&6504337259&~: ~&254477762679831355&~.~&11119534664549952261&~.~&233740920352621&~
|
||||
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233695222288046&~ {
|
||||
~&6504315758&~: "Time's up! (" + ~&7082020628281&~.timerManager.fmt(~&7082020628281&~.timerManager.totalMs) + ~&"180914&~
|
||||
~&6504315758&~: ~&7082020628281&~.timerManager.alarmNotificationText !== ""
|
||||
? "Alarm at " + ~&7082020628281&~.timerManager.alarmNotificationText
|
||||
: "Time's up! (" + ~&7082020628281&~.timerManager.fmt(~&7082020628281&~.timerManager.totalMs) + ~&"180914&~
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&8399743405844438450&~: ~&425121728314878811&~.~&7082020628281&~.~&233740248806464&~.~&214641496386&~
|
||||
~&7081629735527&~.~&499747351624466981&~: ~&425121728314878811&~.~&7082020628281&~.~&233740248806464&~.~&214641496386&~
|
||||
}
|
||||
|
||||
/* Timer buttons - hidden during alarm*/
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&7081261925573&~ {
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmNotificationText === ""
|
||||
~&6504315758&~: ~&"233701679664206&~
|
||||
~&254542236275632405&~: {
|
||||
~&7082020628281&~.timerManager.doReset();
|
||||
@@ -325,9 +826,12 @@ AFFECT [[2328484894988065446]]
|
||||
}
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233683758819504&~ { }
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233683758819504&~ {
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmNotificationText === ""
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&7081261925573&~ {
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmNotificationText === ""
|
||||
~&6504315758&~: "+1min"
|
||||
~&254542236275632405&~: {
|
||||
~&7082020628281&~.timerManager.totalMs += 60000;
|
||||
@@ -337,9 +841,12 @@ AFFECT [[2328484894988065446]]
|
||||
}
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233683758819504&~ { }
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233683758819504&~ {
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmNotificationText === ""
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&7081261925573&~ {
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmNotificationText === ""
|
||||
~&6504315758&~: "+5min"
|
||||
~&254542236275632405&~: {
|
||||
~&7082020628281&~.timerManager.totalMs += 300000;
|
||||
@@ -349,15 +856,32 @@ AFFECT [[2328484894988065446]]
|
||||
}
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233683758819504&~ { }
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233683758819504&~ {
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmNotificationText === ""
|
||||
}
|
||||
|
||||
/* Universal Close / Dismiss*/
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&7081261925573&~ {
|
||||
~&6504315758&~: ~&"214584551711&~
|
||||
~&6504315758&~: ~&7082020628281&~.timerManager.alarmNotificationText !== "" ? ~&"233683755411397&~ : ~&"214584551711&~
|
||||
~&254542236275632405&~: {
|
||||
~&5972376&~ (~&7082020628281&~.timerManager.alarmNotificationText !== "") {
|
||||
~&7082020628281&~.timerManager.dismissAlarmNotification();
|
||||
} ~&6503784146&~ {
|
||||
~&7082020628281&~.timerManager.~&16765420033347753489&~ = ~&214625660372&~;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
END TRAVERSE
|
||||
END AFFECT
|
||||
|
||||
; Capture Light reference from the QuickSettingsSlider so we can blink it
|
||||
AFFECT /qt/qml/xofm/modules/light/front/qml/QuickSettingsSlider.qml
|
||||
TRAVERSE [[425121728314878811.7081916140908]]#[[6504254477]]
|
||||
LOCATE AFTER ALL
|
||||
INSERT {
|
||||
~&254480451320573660&~.~&495334332051582499&~: ~&7082020628281&~.timerManager._blinkLight = ~&6504254477&~.~&214633057601&~;
|
||||
}
|
||||
END TRAVERSE
|
||||
END AFFECT
|
||||
|
||||
@@ -1,32 +1,41 @@
|
||||
; Quick Settings Timer/Chrono
|
||||
; Adds a countdown timer and stopwatch to the quick settings panel
|
||||
; Quick Settings Timer/Chrono/Alarm
|
||||
; Adds a countdown timer, stopwatch, and alarm system to the quick settings panel
|
||||
; Timer state lives in Values.timerManager so it persists across menu opens/closes
|
||||
|
||||
AFFECT [[1658694193319203921]]
|
||||
TRAVERSE [[6502786168]]
|
||||
LOCATE AFTER ALL
|
||||
INSERT {
|
||||
property ~&214620122227&~ timerManager: _timerManager
|
||||
property alias timerManager: _timerManager
|
||||
|
||||
~&6502786168&~ {
|
||||
~&5972374&~: _timerManager
|
||||
property ~&6503679477&~ timerMode: ~&6504329801&~
|
||||
property bool timerMode: ~&6504329801&~
|
||||
property ~&197088788&~ totalMs: 0
|
||||
property ~&197088788&~ remainMs: 0
|
||||
property ~&6503679477&~ isRunning: ~&214625660372&~
|
||||
property bool isRunning: ~&214625660372&~
|
||||
property ~&7083178290016&~ ~&478322454160073828&~: "00:00"
|
||||
property ~&6503679477&~ ~&16765420033347753489&~: ~&214625660372&~
|
||||
property bool ~&16765420033347753489&~: ~&214625660372&~
|
||||
property ~&197088788&~ presetMs: 60000
|
||||
property ~&6503679477&~ addMode: ~&6504329801&~
|
||||
property bool addMode: ~&6504329801&~
|
||||
property bool blinkLightOnNotification: ~&214625660372&~
|
||||
property ~&197102514&~ _blinkLight: ~&6504117156&~
|
||||
property bool hasFrontlight: ~&214625660372&~
|
||||
|
||||
function fmt(~&5972521&~) {
|
||||
~&197102514&~ ~&180970&~ = ~&6502909715&~.~&197079679&~(~&5972521&~);
|
||||
/* Alarm state*/
|
||||
property bool alarmMode: ~&214625660372&~
|
||||
property ~&197102514&~ alarms: []
|
||||
property ~&197088788&~ nextAlarmId: 1
|
||||
property ~&7083178290016&~ alarmNotificationText: ""
|
||||
property ~&197088788&~ lastNotifiedMinute: -1 /* absolute epoch-minute of the last fired alarm*/
|
||||
|
||||
function fmt(ms) {
|
||||
~&197102514&~ ~&180970&~ = ~&6502909715&~.~&197079679&~(ms);
|
||||
~&197102514&~ ~&180977&~ = ~&6502909715&~.~&214626058827&~(~&180970&~ / 3600000);
|
||||
~&197102514&~ ~&180982&~ = ~&6502909715&~.~&214626058827&~((~&180970&~ % 3600000) / 60000);
|
||||
~&197102514&~ m = ~&6502909715&~.~&214626058827&~((~&180970&~ % 3600000) / 60000);
|
||||
~&197102514&~ ~&180988&~ = ~&6502909715&~.~&214626058827&~((~&180970&~ % 60000) / 1000);
|
||||
~&197102514&~ mm = ~&180982&~.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~);
|
||||
~&197102514&~ mm = m.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~);
|
||||
~&197102514&~ ss = ~&180988&~.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~);
|
||||
|
||||
~&5972376&~ (~&180977&~ > 0) {
|
||||
~&7083121450889&~ ~&180977&~.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~) + ~&"180931&~ + mm + ~&"180931&~ + ss;
|
||||
}
|
||||
@@ -34,36 +43,122 @@ AFFECT [[1658694193319203921]]
|
||||
}
|
||||
|
||||
function refresh() {
|
||||
~&5972376&~ (timerMode) {
|
||||
~&478322454160073828&~ = fmt(remainMs > 0 ? remainMs : 0);
|
||||
~&5972376&~ (_timerManager.alarmMode) ~&7083121450889&~;
|
||||
~&5972376&~ (_timerManager.timerMode) {
|
||||
_timerManager.~&478322454160073828&~ = _timerManager.fmt(_timerManager.remainMs > 0 ? _timerManager.remainMs : 0);
|
||||
} ~&6503784146&~ {
|
||||
~&478322454160073828&~ = fmt(totalMs);
|
||||
_timerManager.~&478322454160073828&~ = _timerManager.fmt(_timerManager.totalMs);
|
||||
}
|
||||
}
|
||||
|
||||
function go() {
|
||||
~&5972376&~ (timerMode) {
|
||||
~&5972376&~ (remainMs <= 0) ~&7083121450889&~;
|
||||
~&5972376&~ (_timerManager.timerMode) {
|
||||
~&5972376&~ (_timerManager.remainMs <= 0) ~&7083121450889&~;
|
||||
}
|
||||
~&16765420033347753489&~ = ~&214625660372&~;
|
||||
isRunning = ~&6504329801&~;
|
||||
_timerManager.~&16765420033347753489&~ = ~&214625660372&~;
|
||||
_timerManager.isRunning = ~&6504329801&~;
|
||||
_tick.~&214641748151&~();
|
||||
}
|
||||
|
||||
function ~&6504295855&~() {
|
||||
isRunning = ~&214625660372&~;
|
||||
_timerManager.isRunning = ~&214625660372&~;
|
||||
_tick.~&6504295855&~();
|
||||
}
|
||||
|
||||
function doReset() {
|
||||
~&6504295855&~();
|
||||
~&16765420033347753489&~ = ~&214625660372&~;
|
||||
~&5972376&~ (timerMode) {
|
||||
remainMs = totalMs;
|
||||
_timerManager.~&6504295855&~();
|
||||
_timerManager.~&16765420033347753489&~ = ~&214625660372&~;
|
||||
~&5972376&~ (_timerManager.timerMode) {
|
||||
_timerManager.remainMs = _timerManager.totalMs;
|
||||
} ~&6503784146&~ {
|
||||
totalMs = 0;
|
||||
_timerManager.totalMs = 0;
|
||||
}
|
||||
_timerManager.refresh();
|
||||
}
|
||||
|
||||
/* Alarm management*/
|
||||
function addAlarm(~&180977&~, m) {
|
||||
~&197102514&~ ~&180970&~ = { ~&5972374&~: _timerManager.nextAlarmId, hour: ~&180977&~, minute: m, ~&233726547792244&~: ~&6504329801&~ };
|
||||
_timerManager.alarms = _timerManager.alarms.~&7082546043425&~([~&180970&~]);
|
||||
_timerManager.nextAlarmId++;
|
||||
_timerManager.saveAlarms();
|
||||
}
|
||||
|
||||
function removeAlarm(~&5972374&~) {
|
||||
_timerManager.alarms = _timerManager.alarms.~&7082656280847&~(function(~&180970&~) {
|
||||
~&7083121450889&~ ~&180970&~.~&5972374&~ !== ~&5972374&~;
|
||||
});
|
||||
_timerManager.saveAlarms();
|
||||
}
|
||||
|
||||
function toggleAlarm(~&5972374&~) {
|
||||
_timerManager.alarms = _timerManager.alarms.~&197092711&~(function(~&180970&~) {
|
||||
~&5972376&~ (~&180970&~.~&5972374&~ !== ~&5972374&~) ~&7083121450889&~ ~&180970&~;
|
||||
~&7083121450889&~ { ~&5972374&~: ~&180970&~.~&5972374&~, hour: ~&180970&~.hour, minute: ~&180970&~.minute, ~&233726547792244&~: !~&180970&~.~&233726547792244&~ };
|
||||
});
|
||||
_timerManager.saveAlarms();
|
||||
}
|
||||
|
||||
function dismissAlarmNotification() {
|
||||
_timerManager.~&16765420033347753489&~ = ~&214625660372&~;
|
||||
_timerManager.alarmNotificationText = "";
|
||||
}
|
||||
|
||||
function saveAlarms() {
|
||||
~&197102514&~ payload = {
|
||||
alarms: _timerManager.alarms,
|
||||
nextAlarmId: _timerManager.nextAlarmId,
|
||||
blinkLightOnNotification: _timerManager.blinkLightOnNotification
|
||||
};
|
||||
~&197102514&~ xhr = new XMLHttpRequest();
|
||||
xhr.~&6504147419&~("PUT", "file:///home/root/alarms.json");
|
||||
xhr.~&6504279475&~(~&6502785411&~.~&254548178208422824&~(payload));
|
||||
}
|
||||
|
||||
function loadAlarms() {
|
||||
~&197102514&~ xhr = new XMLHttpRequest();
|
||||
xhr.~&6504147419&~("GET", "file:///home/root/alarms.json");
|
||||
xhr.onreadystatechange = function() {
|
||||
~&5972376&~ (xhr.readyState === XMLHttpRequest.DONE) {
|
||||
try {
|
||||
~&197102514&~ ~&6503736259&~ = ~&6502785411&~.parse(xhr.responseText);
|
||||
_timerManager.alarms = ~&6503736259&~.alarms || [];
|
||||
_timerManager.nextAlarmId = ~&6503736259&~.nextAlarmId || 1;
|
||||
_timerManager.blinkLightOnNotification = ~&6503736259&~.blinkLightOnNotification || ~&214625660372&~;
|
||||
} catch (e) {
|
||||
_timerManager.alarms = [];
|
||||
_timerManager.nextAlarmId = 1;
|
||||
}
|
||||
}
|
||||
};
|
||||
xhr.~&6504279475&~();
|
||||
}
|
||||
|
||||
~&214604601930&~ {
|
||||
~&5972374&~: _alarmChecker
|
||||
~&7713147298280334&~: 5000
|
||||
~&7083121289162&~: ~&6504329801&~
|
||||
~&233743626668842&~: ~&6504329801&~
|
||||
~&495358363329399331&~: {
|
||||
~&197102514&~ d = new ~&6502586279&~();
|
||||
/* Use an absolute epoch-minute (not hour*60+minute) so that a recurring*/
|
||||
/* alarm can fire again on the next day instead of being permanently*/
|
||||
/* suppressed once it has matched lastNotifiedMinute.*/
|
||||
~&197102514&~ nowMinute = ~&6502909715&~.~&214626058827&~(d.getTime() / 60000);
|
||||
~&5972376&~ (nowMinute === _timerManager.lastNotifiedMinute) ~&7083121450889&~;
|
||||
|
||||
~&197102514&~ ~&180977&~ = d.getHours();
|
||||
~&197102514&~ m = d.getMinutes();
|
||||
~&197085552&~ (~&197102514&~ ~&180978&~ = 0; ~&180978&~ < _timerManager.alarms.~&7082886407723&~; ~&180978&~++) {
|
||||
~&197102514&~ ~&180970&~ = _timerManager.alarms[~&180978&~];
|
||||
~&5972376&~ (~&180970&~.~&233726547792244&~ && ~&180970&~.hour === ~&180977&~ && ~&180970&~.minute === m) {
|
||||
_timerManager.alarmNotificationText = ~&180970&~.hour.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~) + ~&"180931&~ + ~&180970&~.minute.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~);
|
||||
_timerManager.~&16765420033347753489&~ = ~&6504329801&~;
|
||||
_timerManager.lastNotifiedMinute = nowMinute;
|
||||
~&214621519406&~;
|
||||
}
|
||||
}
|
||||
}
|
||||
refresh();
|
||||
}
|
||||
|
||||
~&214604601930&~ {
|
||||
@@ -71,6 +166,7 @@ AFFECT [[1658694193319203921]]
|
||||
~&7713147298280334&~: 100
|
||||
~&7083121289162&~: ~&6504329801&~
|
||||
~&495358363329399331&~: {
|
||||
~&5972376&~ (_timerManager.alarmMode) ~&7083121450889&~;
|
||||
~&5972376&~ (_timerManager.timerMode) {
|
||||
_timerManager.remainMs -= 100;
|
||||
~&5972376&~ (_timerManager.remainMs <= 0) {
|
||||
@@ -84,6 +180,12 @@ AFFECT [[1658694193319203921]]
|
||||
_timerManager.refresh();
|
||||
}
|
||||
}
|
||||
|
||||
~&254480451320573660&~.~&495334332051582499&~: {
|
||||
_timerManager.loadAlarms();
|
||||
~&197102514&~ _c = ~&5971598&~.~&16810493623656567312&~("qrc:/qt/qml/xofm/modules/light/front/qml/QuickSettingsSlider.qml");
|
||||
_timerManager.hasFrontlight = (_c.~&7083177691309&~ === ~&254480451320573660&~.~&214602073246&~);
|
||||
}
|
||||
}
|
||||
}
|
||||
END TRAVERSE
|
||||
@@ -93,19 +195,22 @@ AFFECT [[12542166428983872557]]
|
||||
TRAVERSE [[7711468349764991]] > [[6502786168]] > [[8397788359424131273]] > [[14125623155555875541]]#[[233718721544006]]
|
||||
LOCATE AFTER [[254501558939456351]]#[[8399137618543699982]]
|
||||
INSERT {
|
||||
~&425121728314878811&~.~&15740235808997988493&~ {
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&254549367831075482&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233744706647566&~.~&214641496386&~
|
||||
}
|
||||
~&7081629735527&~.~&17520348323745447649&~: _timerUI.~&2122835675838176157&~
|
||||
~&7081629735527&~.~&8399743405844438450&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233740248806464&~.~&214641496386&~
|
||||
~&7081629735527&~.~&499747351624466981&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233740248806464&~.~&214641496386&~
|
||||
|
||||
~&14125623155555875541&~ {
|
||||
~&5972374&~: _timerUI
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&8399743405844438450&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233740248806464&~.~&214641496386&~
|
||||
~&7081629735527&~.~&499747351624466981&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233740248806464&~.~&214641496386&~
|
||||
~&7081629735527&~.~&254549367831075482&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233744706647566&~.~&214641496386&~
|
||||
~&233721384511543&~.~&6504027668&~: ~&7083038346995&~.~&6504027668&~
|
||||
~&233721384511543&~.~&214640173127&~: ~&7083038346995&~.~&214640173127&~
|
||||
~&233744706647566&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233744706647566&~.~&7082925185962&~
|
||||
|
||||
~&425121728314878811&~.~&15740235808997988493&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
}
|
||||
|
||||
/* Mode selector tabs*/
|
||||
~&254501558939456351&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
@@ -113,18 +218,21 @@ AFFECT [[12542166428983872557]]
|
||||
|
||||
~&7712155293725601&~ {
|
||||
~&214634455770&~: [
|
||||
{ ~&197101097&~: ~&"214604601930&~, isTimer: ~&6504329801&~ },
|
||||
{ ~&197101097&~: "Chrono", isTimer: ~&214625660372&~ }
|
||||
{ txt: ~&"214604601930&~, ~&6504074414&~: ~&"214642551402&~ },
|
||||
{ txt: "Chrono", ~&6504074414&~: "chrono" },
|
||||
{ txt: "Alarm", ~&6504074414&~: "alarm" }
|
||||
]
|
||||
~&7712922269353028&~: ~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 68
|
||||
|
||||
readonly property ~&6503679477&~ ~&7082453764421&~: ~&7082020628281&~.timerManager.timerMode === ~&254539508423767444&~.isTimer
|
||||
readonly property bool ~&7082453764421&~: ~&254539508423767444&~.~&6504074414&~ === ~&"214642551402&~ ? !~&7082020628281&~.timerManager.alarmMode && ~&7082020628281&~.timerManager.timerMode
|
||||
: ~&254539508423767444&~.~&6504074414&~ === "chrono" ? !~&7082020628281&~.timerManager.alarmMode && !~&7082020628281&~.timerManager.timerMode
|
||||
: ~&7082020628281&~.timerManager.alarmMode
|
||||
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: ~&254539508423767444&~.~&197101097&~
|
||||
~&6504315758&~: ~&254539508423767444&~.txt
|
||||
~&6503823200&~.~&254543497768871654&~: 24
|
||||
~&6503823200&~.~&6503679370&~: ~&7082453764421&~
|
||||
~&214622605608&~: ~&7082453764421&~ ? ~&7082020628281&~.~&8399340017235344933&~ : "#888888"
|
||||
@@ -132,14 +240,20 @@ AFFECT [[12542166428983872557]]
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: {
|
||||
~&5972376&~ (~&254539508423767444&~.~&6504074414&~ === "alarm") {
|
||||
~&7082020628281&~.timerManager.~&6504295855&~();
|
||||
~&7082020628281&~.timerManager.timerMode = ~&254539508423767444&~.isTimer;
|
||||
~&5972376&~ (!~&254539508423767444&~.isTimer) {
|
||||
~&7082020628281&~.timerManager.alarmMode = ~&6504329801&~;
|
||||
} ~&6503784146&~ {
|
||||
~&7082020628281&~.timerManager.alarmMode = ~&214625660372&~;
|
||||
~&7082020628281&~.timerManager.~&6504295855&~();
|
||||
~&7082020628281&~.timerManager.timerMode = ~&254539508423767444&~.~&6504074414&~ === ~&"214642551402&~;
|
||||
~&5972376&~ (~&254539508423767444&~.~&6504074414&~ === "chrono") {
|
||||
~&7082020628281&~.timerManager.totalMs = 0;
|
||||
}
|
||||
~&7082020628281&~.timerManager.refresh();
|
||||
}
|
||||
}
|
||||
}
|
||||
~&254501108490678590&~ {
|
||||
~&233721384511543&~.~&7082507142622&~: ~&7083038346995&~.~&7082507142622&~
|
||||
~&233721384511543&~.~&6504027668&~: ~&7083038346995&~.~&6504027668&~
|
||||
@@ -151,11 +265,11 @@ AFFECT [[12542166428983872557]]
|
||||
}
|
||||
}
|
||||
|
||||
/* Time display (fixed width to avoid resizing) */
|
||||
/* Time display*/
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254522510204479688&~: ~&5971598&~.~&14019785274593562237&~
|
||||
~&7081629735527&~.~&7797818826744279624&~: 300
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: _display.~&2122835675838176157&~
|
||||
~&233748328658231&~: !~&7082020628281&~.timerManager.alarmMode
|
||||
~&6503165774&~ {
|
||||
~&5972374&~: _display
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
@@ -171,15 +285,15 @@ AFFECT [[12542166428983872557]]
|
||||
~&254501558939456351&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&233744706647566&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233744706647566&~.~&214641496386&~
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.timerMode
|
||||
~&233748328658231&~: !~&7082020628281&~.timerManager.alarmMode && ~&7082020628281&~.timerManager.timerMode
|
||||
|
||||
~&7712155293725601&~ {
|
||||
~&214634455770&~: [
|
||||
{ ~&197101097&~: "1 m", ~&197102508&~: 60000 },
|
||||
{ ~&197101097&~: "5 m", ~&197102508&~: 300000 },
|
||||
{ ~&197101097&~: "10 m", ~&197102508&~: 600000 },
|
||||
{ ~&197101097&~: "30 m", ~&197102508&~: 1800000 },
|
||||
{ ~&197101097&~: "1 h", ~&197102508&~: 3600000 }
|
||||
{ txt: "1 m", ~&197102508&~: 60000 },
|
||||
{ txt: "5 m", ~&197102508&~: 300000 },
|
||||
{ txt: "10 m", ~&197102508&~: 600000 },
|
||||
{ txt: "30 m", ~&197102508&~: 1800000 },
|
||||
{ txt: "1 h", ~&197102508&~: 3600000 }
|
||||
]
|
||||
~&7712922269353028&~: ~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
@@ -191,7 +305,7 @@ AFFECT [[12542166428983872557]]
|
||||
}
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: ~&254539508423767444&~.~&197101097&~
|
||||
~&6504315758&~: ~&254539508423767444&~.txt
|
||||
~&6503823200&~.~&254543497768871654&~: 20
|
||||
~&6503823200&~.~&6503679370&~: ~&6504329801&~
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
@@ -219,6 +333,7 @@ AFFECT [[12542166428983872557]]
|
||||
~&254501558939456351&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&233744706647566&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233744706647566&~.~&214641496386&~
|
||||
~&233748328658231&~: !~&7082020628281&~.timerManager.alarmMode
|
||||
|
||||
/* Add/Set toggle (timer only)*/
|
||||
~&6502786168&~ {
|
||||
@@ -291,12 +406,363 @@ AFFECT [[12542166428983872557]]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* Alarm mode*/
|
||||
~&14125623155555875541&~ {
|
||||
~&5972374&~: _alarmCol
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmMode
|
||||
~&233744706647566&~: ~&254477762679831355&~.~&214603824602&~.~&7713684474795983&~.~&7713442318223278&~.~&233744706647566&~.~&214641496386&~
|
||||
|
||||
~&7712155293725601&~ {
|
||||
~&214634455770&~: ~&7082020628281&~.timerManager.alarms
|
||||
|
||||
~&7712922269353028&~: ~&14125623155555875541&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 80
|
||||
~&233744706647566&~: 0
|
||||
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.fillHeight: ~&6504329801&~
|
||||
|
||||
~&425121728314878811&~.~&6502767986&~ {
|
||||
~&5972374&~: _radioIcon
|
||||
~&233721384511543&~.~&6504027668&~: ~&7083038346995&~.~&6504027668&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&214646099849&~: 48
|
||||
~&7082729686082&~: 48
|
||||
~&6504284228&~: ~&425121728314878811&~.~&7082020628281&~.~&7713132906001613&~.~&7082925185962&~
|
||||
~&7083172477658&~: ~&254539508423767444&~.~&233726547792244&~ ? ~&"8609871882813839963&~ : ~&"7424611027213444377&~
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: ~&7082020628281&~.timerManager.toggleAlarm(~&254539508423767444&~.~&5972374&~)
|
||||
}
|
||||
}
|
||||
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&6504027668&~: _radioIcon.~&214640173127&~
|
||||
~&233721384511543&~.~&214640173127&~: _trashIcon.~&6504027668&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&490371291080887915&~: 12
|
||||
~&16491662607465103678&~: 12
|
||||
~&6504315758&~: ~&254539508423767444&~.hour.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~) + ~&"180931&~ + ~&254539508423767444&~.minute.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~)
|
||||
~&6503823200&~.~&254543497768871654&~: 28
|
||||
~&6503823200&~.~&7083316716977&~: ~&254539508423767444&~.~&233726547792244&~ ? ~&6502673216&~.~&6502529386&~ : ~&6502673216&~.~&7081724354802&~
|
||||
~&214622605608&~: ~&254539508423767444&~.~&233726547792244&~ ? ~&7082020628281&~.~&8399340017235344933&~ : "#888888"
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&6502767986&~ {
|
||||
~&5972374&~: _trashIcon
|
||||
~&233721384511543&~.~&214640173127&~: ~&7083038346995&~.~&214640173127&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&214646099849&~: 48
|
||||
~&7082729686082&~: 48
|
||||
~&6504284228&~: ~&425121728314878811&~.~&7082020628281&~.~&7713132906001613&~.~&7082925185962&~
|
||||
~&7083172477658&~: ~&"7312727925064657782&~
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: ~&7082020628281&~.timerManager.removeAlarm(~&254539508423767444&~.~&5972374&~)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
~&6503165774&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarms.~&7082886407723&~ === 0
|
||||
~&6504315758&~: "No alarms set"
|
||||
~&6503823200&~.~&254543497768871654&~: 20
|
||||
~&214622605608&~: "#888888"
|
||||
~&8400129142283184211&~: 20
|
||||
~&1353514028756047605&~: 20
|
||||
~&15450610953915458578&~: ~&6503165774&~.~&14019785274593562237&~
|
||||
}
|
||||
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 54
|
||||
|
||||
~&254501108490678590&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&7083116119249&~: 8
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
}
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: "Add alarms"
|
||||
~&6503823200&~.~&254543497768871654&~: 20
|
||||
~&6503823200&~.~&6503679370&~: ~&6504329801&~
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017260114793&~
|
||||
}
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: {
|
||||
~&7082020628281&~.timerManager.~&6504295855&~();
|
||||
~&6504254477&~.~&2766288418351025740&~.~&214622501183&~();
|
||||
~&6504254477&~.~&2766288418351025740&~.~&6504147419&~("systemclock/window/settings-info");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
END TRAVERSE
|
||||
END AFFECT
|
||||
|
||||
; Notification bar when timer finishes - visible in all modes
|
||||
; Alarm management inside system clock settings (inserted before the info message for more space)
|
||||
AFFECT /qt/qml/xofm/modules/systemclock/qml/window/SettingsInfoWindow.qml
|
||||
TRAVERSE [[7711468349764991]]#[[6504254477]] > [[8397788359424131273]] > [[14125623155555875541]]#[[8399784311425937276]]
|
||||
LOCATE AFTER [[425121728314878811.214599571833]]#[[254526274719339159]]
|
||||
INSERT {
|
||||
~&425121728314878811&~.~&214604609771&~ {
|
||||
~&6504315758&~: "Alarms"
|
||||
~&6504337259&~: ~&425121728314878811&~.~&214604609771&~.~&214594832564&~
|
||||
~&7081629735527&~.~&254549367831075482&~: ~&254477762679831355&~.~&7082020628281&~.~&7713442318223278&~.~&233744706647566&~.~&233748750575870&~
|
||||
}
|
||||
|
||||
~&7712155293725601&~ {
|
||||
~&214634455770&~: ~&7082020628281&~.timerManager.alarms
|
||||
|
||||
~&7712922269353028&~: ~&14125623155555875541&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 56
|
||||
~&233744706647566&~: 0
|
||||
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.fillHeight: ~&6504329801&~
|
||||
|
||||
~&425121728314878811&~.~&6502767986&~ {
|
||||
~&5972374&~: _alarmIcon
|
||||
~&233721384511543&~.~&6504027668&~: ~&7083038346995&~.~&6504027668&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&214646099849&~: 40
|
||||
~&7082729686082&~: 40
|
||||
~&6504284228&~: ~&425121728314878811&~.~&7082020628281&~.~&7713132906001613&~.~&7082925185962&~
|
||||
~&7083172477658&~: ~&"7424604169206955460&~
|
||||
}
|
||||
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&6504027668&~: _alarmIcon.~&214640173127&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&233721384511543&~.~&1765033595104803723&~: 1
|
||||
~&490371291080887915&~: 12
|
||||
~&6504315758&~: ~&254539508423767444&~.hour.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~) + ~&"180931&~ + ~&254539508423767444&~.minute.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~)
|
||||
~&6503823200&~.~&254543497768871654&~: 24
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&6502767986&~ {
|
||||
~&5972374&~: _toggleAlarmIcon
|
||||
~&233721384511543&~.~&214640173127&~: _deleteAlarmIcon.~&6504027668&~
|
||||
~&233721384511543&~.~&499747351624466981&~: 12
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&214646099849&~: 48
|
||||
~&7082729686082&~: 48
|
||||
~&6504284228&~: ~&425121728314878811&~.~&7082020628281&~.~&7713132906001613&~.~&7082925185962&~
|
||||
~&7083172477658&~: ~&254539508423767444&~.~&233726547792244&~ ? ~&"8609871882813839963&~ : ~&"7424611027213444377&~
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: ~&7082020628281&~.timerManager.toggleAlarm(~&254539508423767444&~.~&5972374&~)
|
||||
}
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&6502767986&~ {
|
||||
~&5972374&~: _deleteAlarmIcon
|
||||
~&233721384511543&~.~&214640173127&~: ~&7083038346995&~.~&214640173127&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&214646099849&~: 48
|
||||
~&7082729686082&~: 48
|
||||
~&6504284228&~: ~&425121728314878811&~.~&7082020628281&~.~&7713132906001613&~.~&7082925185962&~
|
||||
~&7083172477658&~: ~&"7312727925064657782&~
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: ~&7082020628281&~.timerManager.removeAlarm(~&254539508423767444&~.~&5972374&~)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&214599571833&~ {
|
||||
~&5972374&~: _addAlarmPanel
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&214632764553&~: "Add alarm"
|
||||
~&8399601734642709923&~: ~&"15094524446772001204&~
|
||||
~&7082453764199&~: ~&425121728314878811&~.~&7081261925573&~ {
|
||||
~&6504337259&~: ~&254477762679831355&~.~&7081261925573&~.~&254547519794454865&~
|
||||
~&6504315758&~: ~&6504222003&~("Add")
|
||||
~&254542236275632405&~: {
|
||||
_addAlarmPanel.~&9195823055201242195&~ = !_addAlarmPanel.~&9195823055201242195&~;
|
||||
}
|
||||
}
|
||||
~&9195823055201242195&~: ~&214625660372&~
|
||||
~&8399254548634699250&~: ~&14125623155555875541&~ {
|
||||
~&214646099849&~: _addAlarmPanel.~&214646099849&~
|
||||
~&233744706647566&~: ~&254477762679831355&~.~&7082020628281&~.~&7713442318223278&~.~&233744706647566&~.~&7082925185962&~
|
||||
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 280
|
||||
|
||||
~&14975672296977510442&~ {
|
||||
~&5972374&~: _alarmTimeSpinners
|
||||
~&233721384511543&~.~&6504027668&~: ~&7083038346995&~.~&6504027668&~
|
||||
~&233721384511543&~.~&214640173127&~: _nowBtn.~&6504027668&~
|
||||
~&233721384511543&~.~&197100796&~: ~&7083038346995&~.~&197100796&~
|
||||
~&233721384511543&~.~&7082507142622&~: ~&7083038346995&~.~&7082507142622&~
|
||||
~&233721384511543&~.~&499747351624466981&~: ~&254477762679831355&~.~&7082020628281&~.~&7713442318223278&~.~&233744706647566&~.~&7082925185962&~
|
||||
~&214628545114&~: 8
|
||||
~&233736699967534&~: 0
|
||||
~&8399894257374503713&~: function(~&180977&~) { _alarmTimeSpinners.~&214628545114&~ = ~&180977&~; }
|
||||
~&16346529800820831925&~: function(m) { _alarmTimeSpinners.~&233736699967534&~ = m; }
|
||||
}
|
||||
|
||||
~&6502786168&~ {
|
||||
~&5972374&~: _nowBtn
|
||||
~&233721384511543&~.~&214640173127&~: ~&7083038346995&~.~&214640173127&~
|
||||
~&233721384511543&~.~&3441383163516681764&~: ~&7083038346995&~.~&3441383163516681764&~
|
||||
~&214646099849&~: 80
|
||||
~&7082729686082&~: 48
|
||||
|
||||
~&254501108490678590&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&7083116119249&~: 8
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
}
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: "Now"
|
||||
~&6503823200&~.~&254543497768871654&~: 20
|
||||
~&6503823200&~.~&6503679370&~: ~&6504329801&~
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017260114793&~
|
||||
}
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: {
|
||||
~&197102514&~ d = new ~&6502586279&~();
|
||||
_alarmTimeSpinners.~&214628545114&~ = d.getHours();
|
||||
_alarmTimeSpinners.~&233736699967534&~ = d.getMinutes();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
~&254501558939456351&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 44
|
||||
~&233744706647566&~: 8
|
||||
|
||||
~&7712155293725601&~ {
|
||||
~&214634455770&~: [0, 15, 30, 45]
|
||||
~&7712922269353028&~: ~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.fillHeight: ~&6504329801&~
|
||||
|
||||
~&254501108490678590&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&7083116119249&~: 8
|
||||
~&214622605608&~: "#EEEEEE"
|
||||
}
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: ~&254539508423767444&~.~&7713616118928163&~().~&7713428190834284&~(2, ~&'180921&~)
|
||||
~&6503823200&~.~&254543497768871654&~: 18
|
||||
~&6503823200&~.~&6503679370&~: ~&6504329801&~
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
}
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: {
|
||||
_alarmTimeSpinners.~&233736699967534&~ = ~&254539508423767444&~;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
~&254501558939456351&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 44
|
||||
~&233744706647566&~: 8
|
||||
|
||||
~&7712155293725601&~ {
|
||||
~&214634455770&~: [15, 30, 45]
|
||||
~&7712922269353028&~: ~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.fillHeight: ~&6504329801&~
|
||||
|
||||
~&254501108490678590&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&7083116119249&~: 8
|
||||
~&214622605608&~: "#EEEEEE"
|
||||
}
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: ~&"180916&~ + ~&254539508423767444&~
|
||||
~&6503823200&~.~&254543497768871654&~: 18
|
||||
~&6503823200&~.~&6503679370&~: ~&6504329801&~
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
}
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: {
|
||||
~&197102514&~ m = _alarmTimeSpinners.~&233736699967534&~ + ~&254539508423767444&~;
|
||||
~&5972376&~ (m >= 60) { m -= 60; }
|
||||
_alarmTimeSpinners.~&233736699967534&~ = m;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
~&6502786168&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&17520348323745447649&~: 54
|
||||
|
||||
~&254501108490678590&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&7083116119249&~: 8
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017235344933&~
|
||||
}
|
||||
~&6503165774&~ {
|
||||
~&233721384511543&~.~&7712879746914881&~: ~&7083038346995&~
|
||||
~&6504315758&~: "Save alarm"
|
||||
~&6503823200&~.~&254543497768871654&~: 20
|
||||
~&6503823200&~.~&6503679370&~: ~&6504329801&~
|
||||
~&214622605608&~: ~&7082020628281&~.~&8399340017260114793&~
|
||||
}
|
||||
~&254494525842443467&~ {
|
||||
~&233721384511543&~.~&6503816592&~: ~&7083038346995&~
|
||||
~&254542236275632405&~: {
|
||||
~&7082020628281&~.timerManager.addAlarm(_alarmTimeSpinners.~&214628545114&~, _alarmTimeSpinners.~&233736699967534&~);
|
||||
_addAlarmPanel.~&9195823055201242195&~ = ~&214625660372&~;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&214599571833&~ {
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.hasFrontlight
|
||||
~&214632764553&~: "Flash light"
|
||||
~&478136262235079021&~: "Blink the reading light when the timer ends or an alarm triggers"
|
||||
~&7082453764199&~: ~&425121728314878811&~.~&7081261925573&~ {
|
||||
~&6504315758&~: ~&7082020628281&~.timerManager.blinkLightOnNotification ? ~&"5971526&~ : ~&"197060196&~
|
||||
~&254542236275632405&~: ~&7082020628281&~.timerManager.blinkLightOnNotification = !~&7082020628281&~.timerManager.blinkLightOnNotification
|
||||
}
|
||||
}
|
||||
}
|
||||
END TRAVERSE
|
||||
END AFFECT
|
||||
|
||||
; Notification bar for timer finish and alarm triggers
|
||||
AFFECT [[2328484894988065446]]
|
||||
IMPORT [[233700934949963.233693781272506]] [[180922.180921]]
|
||||
|
||||
@@ -308,16 +774,51 @@ AFFECT [[2328484894988065446]]
|
||||
~&233721384511543&~.~&214640173127&~: ~&7083038346995&~.~&214640173127&~
|
||||
~&233721384511543&~.~&7082507142622&~: ~&7083038346995&~.~&7082507142622&~
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.~&16765420033347753489&~
|
||||
|
||||
~&13733777459642361598&~: {
|
||||
~&5972376&~ (~&233748328658231&~ && ~&7082020628281&~.timerManager.blinkLightOnNotification) {
|
||||
_blinkTimer.~&6504295855&~();
|
||||
_blinkTimer.~&214618014052&~ = 0;
|
||||
_blinkTimer.~&214641748151&~();
|
||||
}
|
||||
}
|
||||
|
||||
~&214604601930&~ {
|
||||
~&5972374&~: _blinkTimer
|
||||
~&7713147298280334&~: 1000 /* 1 sec*/
|
||||
~&7083121289162&~: ~&6504329801&~
|
||||
property ~&197088788&~ ~&214618014052&~: 0
|
||||
property ~&6504243117&~ _savedValue: 0
|
||||
~&495358363329399331&~: {
|
||||
~&197102514&~ l = ~&7082020628281&~.timerManager._blinkLight;
|
||||
~&5972376&~ (!l) { ~&6504295855&~(); ~&7083121450889&~; }
|
||||
~&5972376&~ (~&214618014052&~ >= 6) {
|
||||
~&6504295855&~();
|
||||
l.~&214644635174&~ = _savedValue;
|
||||
~&214618014052&~ = 0;
|
||||
~&7083121450889&~;
|
||||
}
|
||||
~&5972376&~ (~&214618014052&~ === 0) {
|
||||
_savedValue = l.~&214644635174&~;
|
||||
}
|
||||
l.~&214644635174&~ = ~&214618014052&~ % 2 === 0 ? 100 : 0;
|
||||
~&214618014052&~++;
|
||||
}
|
||||
}
|
||||
~&6504337259&~: ~&254477762679831355&~.~&11119534664549952261&~.~&233740920352621&~
|
||||
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233695222288046&~ {
|
||||
~&6504315758&~: "Time's up! (" + ~&7082020628281&~.timerManager.fmt(~&7082020628281&~.timerManager.totalMs) + ~&"180914&~
|
||||
~&6504315758&~: ~&7082020628281&~.timerManager.alarmNotificationText !== ""
|
||||
? "Alarm at " + ~&7082020628281&~.timerManager.alarmNotificationText
|
||||
: "Time's up! (" + ~&7082020628281&~.timerManager.fmt(~&7082020628281&~.timerManager.totalMs) + ~&"180914&~
|
||||
~&7081629735527&~.~&254529418434902000&~: ~&6504329801&~
|
||||
~&7081629735527&~.~&8399743405844438450&~: ~&425121728314878811&~.~&7082020628281&~.~&233740248806464&~.~&214641496386&~
|
||||
~&7081629735527&~.~&499747351624466981&~: ~&425121728314878811&~.~&7082020628281&~.~&233740248806464&~.~&214641496386&~
|
||||
}
|
||||
|
||||
/* Timer buttons - hidden during alarm*/
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&7081261925573&~ {
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmNotificationText === ""
|
||||
~&6504315758&~: ~&"233701679664206&~
|
||||
~&254542236275632405&~: {
|
||||
~&7082020628281&~.timerManager.doReset();
|
||||
@@ -325,9 +826,12 @@ AFFECT [[2328484894988065446]]
|
||||
}
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233683758819504&~ { }
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233683758819504&~ {
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmNotificationText === ""
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&7081261925573&~ {
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmNotificationText === ""
|
||||
~&6504315758&~: "+1min"
|
||||
~&254542236275632405&~: {
|
||||
~&7082020628281&~.timerManager.totalMs += 60000;
|
||||
@@ -337,9 +841,12 @@ AFFECT [[2328484894988065446]]
|
||||
}
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233683758819504&~ { }
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233683758819504&~ {
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmNotificationText === ""
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&7081261925573&~ {
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmNotificationText === ""
|
||||
~&6504315758&~: "+5min"
|
||||
~&254542236275632405&~: {
|
||||
~&7082020628281&~.timerManager.totalMs += 300000;
|
||||
@@ -349,15 +856,32 @@ AFFECT [[2328484894988065446]]
|
||||
}
|
||||
}
|
||||
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233683758819504&~ { }
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&233683758819504&~ {
|
||||
~&233748328658231&~: ~&7082020628281&~.timerManager.alarmNotificationText === ""
|
||||
}
|
||||
|
||||
/* Universal Close / Dismiss*/
|
||||
~&425121728314878811&~.~&11119534664549952261&~.~&7081261925573&~ {
|
||||
~&6504315758&~: ~&"214584551711&~
|
||||
~&6504315758&~: ~&7082020628281&~.timerManager.alarmNotificationText !== "" ? ~&"233683755411397&~ : ~&"214584551711&~
|
||||
~&254542236275632405&~: {
|
||||
~&5972376&~ (~&7082020628281&~.timerManager.alarmNotificationText !== "") {
|
||||
~&7082020628281&~.timerManager.dismissAlarmNotification();
|
||||
} ~&6503784146&~ {
|
||||
~&7082020628281&~.timerManager.~&16765420033347753489&~ = ~&214625660372&~;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
END TRAVERSE
|
||||
END AFFECT
|
||||
|
||||
; Capture Light reference from the QuickSettingsSlider so we can blink it
|
||||
AFFECT /qt/qml/xofm/modules/light/front/qml/QuickSettingsSlider.qml
|
||||
TRAVERSE [[425121728314878811.7081916140908]]#[[6504254477]]
|
||||
LOCATE AFTER ALL
|
||||
INSERT {
|
||||
~&254480451320573660&~.~&495334332051582499&~: ~&7082020628281&~.timerManager._blinkLight = ~&6504254477&~.~&214633057601&~;
|
||||
}
|
||||
END TRAVERSE
|
||||
END AFFECT
|
||||
|
||||
20
README.md
@@ -91,14 +91,20 @@ Use [quicksettings-clock-serif](https://github.com/rmitchellscott) by rmitchells
|
||||
---
|
||||
|
||||
### `quickSettingsTimer.qmd`
|
||||
<!-- [](https://vellum.delivery/#/package/quicksettings-timer/) -->
|
||||
- Adds a countdown timer and stopwatch to the Quick Settings panel, under the light slider.
|
||||
- Switch between Timer (presets: 1min, 5min, 10min, 30min, 1h) and Chrono (start/stop) modes.
|
||||
- Preset buttons respect the add/set mode toggle : <img src="images/plus.svg" width="20" height="20"> increments, <img src="images/plus_circle.svg" width="20" height="20"> replaces.
|
||||
- Notification bar shows "Time's up! (duration)" when the timer finishes.
|
||||
[](https://vellum.delivery/#/package/quicksettings-timer/)
|
||||
- Adds a countdown timer, stopwatch, and alarm system to the Quick Settings panel, under the light slider.
|
||||
- Timer: presets: 1min, 5min, 10min, 30min, 1h; add/set mode toggle (<img src="images/plus.svg" width="20" height="20"> increments, <img src="images/plus_circle.svg" width="20" height="20"> replaces), start/stop/reset controls.
|
||||
- Chrono: start/stop with lap-style elapsed time display.
|
||||
- Alarm: configure recurring alarms in the system clock settings menu with a time picker (hour/minute spinners), quick-off buttons (00/15/30/45, +15/+30/+45), and a "Now" button. Each alarm has an enable/disable toggle and a delete button.
|
||||
- Flash light toggle in the alarm settings page: when enabled, the reading light blinks 3 times when the timer finishes or an alarm triggers. (Only on devices with a reading light.)
|
||||
- Persistence: alarms and the flash light toggle are saved to `file:///home/root/alarms.json` on changes and auto-loaded on startup.
|
||||
- Notification bar: shows "Time's up! (duration)" when the timer finishes, or "Alarm at HH:MM" when an alarm triggers. Timer offers Restart/+1min/+5min buttons; alarm offers a Dismiss button.
|
||||
- Quick access: an "Add alarms" button in Quick Settings opens the system clock alarm management page directly.
|
||||
- Setting page: Go to `Settings > Help > System Time` to manage alarms and the flash light toggle.
|
||||
|
||||
<img src="images/quickSettingsTimer_1.png" width="300"> <img src="images/quickSettingsTimer_2.png" width="300">
|
||||
<img src="images/quickSettingsTimer_3.png" width="600">
|
||||
<img src="images/quickSettingsTimer_1.png" width="200"><img src="images/quickSettingsTimer_2.png" width="200"><img src="images/quickSettingsTimer_3.png" width="200">
|
||||
<img src="images/quickSettingsTimer_4.png" width="600">
|
||||
<img src="images/quickSettingsTimer_5.png" width="600">
|
||||
|
||||
**Available for:** `3.24.0.149`, `3.25.1.1`, `3.26.0.68`, `3.27.1.0`, `3.27.3.0`
|
||||
|
||||
|
||||
2
hash.sh
@@ -2,7 +2,7 @@
|
||||
|
||||
# Configuration
|
||||
QMLDIFF="./qmldiff"
|
||||
HASHTAB="hashtab_3.23"
|
||||
HASHTAB="hashtabs/hashtab_3.26.0.68"
|
||||
|
||||
# Usage
|
||||
if [ $# -lt 1 ]; then
|
||||
|
||||
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 17 KiB |
BIN
images/quickSettingsTimer_4.png
Normal file
|
After Width: | Height: | Size: 11 KiB |
BIN
images/quickSettingsTimer_5.png
Normal file
|
After Width: | Height: | Size: 176 KiB |