ExperimentalGear/scripts/titlescreen/service/pages/version_info.lua

52 lines
1.5 KiB
Lua
Raw Normal View History

require("common.class")
require("common.gameconfig")
local Version = require("common.version")
local ServicePage = require("titlescreen.service.servicepage")
local ServiceField = require("titlescreen.service.servicefield")
local UpdateField = require("titlescreen.service.fields.update_field")
---@class VersionInfoPage: ServicePage
local VersionInfoPage = {}
---Create a new VersionInfoPage instance
---
---Inherits from ServicePage
---@param o ServicePage
---@return VersionInfoPage
function VersionInfoPage:new(o)
o = Inherit(self, ServicePage, o)
o.title = o.title or "SYSTEM INFORMATION"
o.footer = o.footer or {
"START BUTTON = UPDATE",
"BACK BUTTON = EXIT"
}
o:addField(ServiceField:new{label = "USC BRANCH", value = Config["UpdateChannel"]})
o:addField(UpdateField:new{label = "USC VERSION"})
o:addField(ServiceField:new{label = "EG SKIN VERSION", value = Version.getLongVersion()})
o.selectedIndex = 2
o.content[2]:focus()
return o
end
function VersionInfoPage:handleButtonInput(button)
local stop_processing = false
local field = self.content[self.selectedIndex]
if field and field.handleButtonInput then
stop_processing = field:handleButtonInput(button)
end
-- default behaviour
if not stop_processing then
if button == game.BUTTON_BCK then
if self.viewHandler then
self.viewHandler:back()
end
end
end
end
return VersionInfoPage