Skip to content

Commit 1b6dbea

Browse files
authored
Merge pull request #28 from Navatusein/dev
Dev
2 parents e3c62df + d3d7a9b commit 1b6dbea

File tree

4 files changed

+25
-2
lines changed

4 files changed

+25
-2
lines changed

lib/program-lib.lua

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
-- Program Lib
22
-- Author: Navatusein
33
-- License: MIT
4-
-- Version: 3.3
4+
-- Version: 3.4
55

66
local event = require("event")
77
local thread = require("thread")
@@ -78,6 +78,7 @@ function program:new(logger, enableAutoUpdate, version, repository, archiveName)
7878

7979
obj.logo = nil
8080
obj.init = nil
81+
obj.onExit = nil
8182

8283
---Register logo
8384
---@param logo string[]
@@ -91,6 +92,12 @@ function program:new(logger, enableAutoUpdate, version, repository, archiveName)
9192
self.init = callback
9293
end
9394

95+
---Register onExit function
96+
---@param callback function
97+
function obj:registerOnExit(callback)
98+
self.onExit = callback
99+
end
100+
94101
---Register timer
95102
---@param callback function
96103
---@param times? number
@@ -290,6 +297,10 @@ function program:new(logger, enableAutoUpdate, version, repository, archiveName)
290297
end
291298
end
292299

300+
if self.onExit then
301+
try(self.onExit)()
302+
end
303+
293304
self.gpu.freeAllBuffers()
294305

295306
self.gpu.setResolution(self.defaultWidth, self.defaultHeight)

main.lua

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -114,8 +114,13 @@ local function guiLoop()
114114
})
115115
end
116116

117+
local function onExit()
118+
config.lineController:disable()
119+
end
120+
117121
program:registerLogo(logo)
118122
program:registerInit(init)
123+
program:registerOnExit(onExit)
119124
program:registerThread(loop)
120125
program:registerTimer(guiLoop, math.huge, 1)
121126
program:start()

src/line-controller.lua

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,13 @@ function lineController:new()
6464
return "Disable"
6565
end
6666

67+
---Disable line controller
68+
function obj:disable()
69+
if self.controllerProxy ~= nil then
70+
self.controllerProxy.setWorkAllowed(false)
71+
end
72+
end
73+
6774
setmetatable(obj, self)
6875
self.__index = self
6976
return obj

version.lua

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
local versions = {
2-
programVersion = "1.0.4",
2+
programVersion = "1.0.5",
33
configVersion = 1
44
}
55

0 commit comments

Comments
 (0)