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