ExperimentalGear/scripts/titlescreen/fields/service/linkfield.lua

37 lines
1.0 KiB
Lua
Raw Normal View History

require("common.class")
2022-04-05 17:31:02 +02:00
local ServiceField = require("titlescreen.fields.service.servicefield")
---@class LinkServiceField: ServiceField
local LinkServiceField = {}
---Create a new Field instance
---@param o ServiceField
---@return LinkServiceField
function LinkServiceField:new(o)
o = Inherit(self, ServiceField, o)
o.value = o.value or nil
return o
end
function LinkServiceField:drawValue(deltaTime) end
function LinkServiceField:handleButtonInput(button)
if not self.value then
game.Log("LinkServiceField (" .. self.label .. ") does not have a valid link", game.LOGGER_ERROR)
end
if button == game.BUTTON_STA then
if self.parent and self.parent.viewHandler then
game.Log("LinkServiceField (" .. self.label .. ") navigate() called", game.LOGGER_INFO)
self.parent.viewHandler:navigate(self.value)
else
game.Log("LinkServiceField (" .. self.label .. ") can't access PageView instance to navigate", game.LOGGER_ERROR)
end
end
return false
end
return LinkServiceField