modules/menusystem: remove deprecated functions and objects
This commit is contained in:
parent
c9e3f5b82a
commit
ab6475b3cf
2 changed files with 0 additions and 226 deletions
|
@ -31,7 +31,6 @@ MenuSystem.Parent = require(cwd .. "parent")
|
|||
MenuSystem.ListBox = require(cwd .. "listbox")
|
||||
MenuSystem.FlowBox = require(cwd .. "flowbox")
|
||||
MenuSystem.Grid = require(cwd .. "grid")
|
||||
MenuSystem.TextMenu = require(cwd .. "textmenu")
|
||||
|
||||
-- load widgets object
|
||||
MenuSystem.Widget = require(cwd .. "widgets")
|
||||
|
@ -148,10 +147,6 @@ function MenuSystem:update(dt)
|
|||
|
||||
end
|
||||
|
||||
function MenuSystem:keyreleased(key, code)
|
||||
-- TODO:depreciated function
|
||||
end
|
||||
|
||||
-- MOUSE FUNCTIONS
|
||||
-- Send mouse inputs to the menu
|
||||
|
||||
|
|
|
@ -1,221 +0,0 @@
|
|||
local cwd = (...):gsub('%.textmenu$', '') .. "."
|
||||
local Menu = require(cwd .. "parent")
|
||||
|
||||
local TextMenu = Menu:extend()
|
||||
|
||||
function TextMenu:new(menusystem, name, x, y, font, slots)
|
||||
self.slots = slots
|
||||
TextMenu.super.new(self, menusystem, name, x, y, 0, 0)
|
||||
self.ox = x
|
||||
self.oy = y
|
||||
self.font = font
|
||||
self.align = "left"
|
||||
|
||||
self.begin = 1
|
||||
|
||||
self:getBoundingBox()
|
||||
end
|
||||
|
||||
function TextMenu:getBoundingBox()
|
||||
self:setWidthAuto()
|
||||
self.widget.h = self.font:getHeight()
|
||||
self.h = self.widget.h * self.slots
|
||||
|
||||
if self.align == "right" then
|
||||
self.x = self.ox - self.w
|
||||
elseif self.align == "center" then
|
||||
self.x = self.ox - self.w / 2
|
||||
else
|
||||
self.x = self.ox
|
||||
end
|
||||
|
||||
self.y = self.oy
|
||||
end
|
||||
|
||||
function TextMenu:centerText()
|
||||
self:setAlign("center")
|
||||
end
|
||||
|
||||
function TextMenu:setAlign(align)
|
||||
self.align = align
|
||||
self.font:setAlign("center")
|
||||
end
|
||||
|
||||
function TextMenu:update(dt)
|
||||
self:getBoundingBox()
|
||||
if self.widget.selected ~= 0 then
|
||||
if self.widget.selected < self.begin then
|
||||
self.begin = self.widget.selected
|
||||
end
|
||||
if self.widget.selected > self.begin + self.slots - 1 then
|
||||
self.begin = self.widget.selected - self.slots + 1
|
||||
end
|
||||
end
|
||||
|
||||
if self.begin < 1 then
|
||||
self.begin = 1
|
||||
end
|
||||
end
|
||||
|
||||
function TextMenu:setWidthAuto()
|
||||
local width = self.w
|
||||
|
||||
for i,v in ipairs(self.widget.list) do
|
||||
local stringWidth = self.font:getWidth(v.beginlabel .. v.label .. v.endlabel)
|
||||
width = math.max(stringWidth, width)
|
||||
end
|
||||
if width ~= self.w then
|
||||
self.canvas.needRedraw = true
|
||||
end
|
||||
self.w = width
|
||||
end
|
||||
|
||||
function TextMenu:getWidth()
|
||||
self:setWidthAuto()
|
||||
return self.w
|
||||
end
|
||||
|
||||
function TextMenu:getHeight()
|
||||
return self.h
|
||||
end
|
||||
|
||||
function TextMenu:keyreleased(key, code)
|
||||
|
||||
if key == 'up' then
|
||||
self:moveCursor(self.widget.selected - 1)
|
||||
end
|
||||
|
||||
if key == 'down' then
|
||||
self:moveCursor(self.widget.selected + 1)
|
||||
end
|
||||
|
||||
if key == "A" then
|
||||
if (self.widget.selected > 0) and (self.widget.selected <= #self.widget.list) then
|
||||
self.widget.list[self.widget.selected]:action()
|
||||
end
|
||||
end
|
||||
|
||||
if key == "B" then
|
||||
self:cancelAction()
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
function TextMenu:mousemoved(x, y)
|
||||
local selectedPrevous = self.widget.selected
|
||||
self.widget.selected = self.begin + math.floor(y / self.widget.h)
|
||||
if self.widget.selected < 1 then
|
||||
self.widget.selected = 1
|
||||
end
|
||||
if self.widget.selected > #self.widget.list then
|
||||
self.widget.selected = #self.widget.list
|
||||
end
|
||||
|
||||
if self.widget.selected ~= selectedPrevious then
|
||||
self.canvas.needRedraw = true
|
||||
end
|
||||
end
|
||||
|
||||
function TextMenu:mousepressed(x, y, button, isTouch)
|
||||
self.widget.selected = self.begin + math.floor(y / self.widget.h)
|
||||
if self.widget.selected < 1 then
|
||||
self.widget.selected = 1
|
||||
end
|
||||
if self.widget.selected > #self.widget.list then
|
||||
self.widget.selected = #self.widget.list
|
||||
end
|
||||
if #self.widget.list > 0 then
|
||||
self.widget.list[self.widget.selected]:action()
|
||||
end
|
||||
|
||||
if self.widget.selected ~= selectedPrevious then
|
||||
self.canvas.needRedraw = true
|
||||
end
|
||||
end
|
||||
|
||||
function TextMenu:drawCanvas()
|
||||
print("redraw menu")
|
||||
|
||||
self.canvas.texture = love.graphics.newCanvas(self.w, self.h)
|
||||
love.graphics.setCanvas( self.canvas.texture )
|
||||
|
||||
local ox, x
|
||||
|
||||
local widgety = 0
|
||||
local ox = self.w / 2
|
||||
local x = 0
|
||||
|
||||
self.font:set()
|
||||
for i, v in ipairs(self.widget.list) do
|
||||
if (i >= self.begin) and (i < self.begin + self.slots) then
|
||||
self:drawWidget(i, widgety)
|
||||
|
||||
widgety = widgety + self.widget.h
|
||||
end
|
||||
end
|
||||
utils.draw.resetColor()
|
||||
|
||||
love.graphics.setCanvas( )
|
||||
end
|
||||
|
||||
function TextMenu:drawWidget(widgetID, y)
|
||||
local widget = self.widget.list[widgetID]
|
||||
print(widget)
|
||||
if widget.canvas.needRedraw == true then
|
||||
self:drawWidgetCanvas(widget)
|
||||
widget.canvas.needRedraw = false
|
||||
end
|
||||
|
||||
if self.widget.selected == widgetID and self.focus == true then
|
||||
love.graphics.setColor(1, 1, 0, 1)
|
||||
else
|
||||
love.graphics.setColor(1, 1, 1, 1)
|
||||
end
|
||||
|
||||
love.graphics.draw(widget.canvas.texture, 0, y)
|
||||
end
|
||||
|
||||
function TextMenu:drawWidgetCanvas(widget)
|
||||
widget.canvas.texture = love.graphics.newCanvas(self.w, self.widget.h)
|
||||
|
||||
love.graphics.setCanvas( widget.canvas.texture )
|
||||
|
||||
self.font:draw(widget.label, math.floor(self.w / 2), 0, -1, self.align)
|
||||
self.font:draw(widget.beginlabel, math.floor(0), 0, -1, "left")
|
||||
self.font:draw(widget.endlabel, math.floor(self.w), 0, -1, "right")
|
||||
|
||||
love.graphics.setCanvas( self.canvas.texture )
|
||||
end
|
||||
|
||||
function TextMenu:resetView()
|
||||
self.begin = 1
|
||||
self.canvas.needRedraw = true
|
||||
end
|
||||
|
||||
function Menu:moveView(begin, absolute)
|
||||
--local absolute = absolute or true
|
||||
self.widget.selected = 0
|
||||
|
||||
if (absolute) then
|
||||
self.begin = begin
|
||||
else
|
||||
self.begin = self.begin + begin
|
||||
end
|
||||
-- ne sert à rien ici, c'est juste pour éviter des crash
|
||||
|
||||
self.canvas.needRedraw = true
|
||||
end
|
||||
|
||||
function Menu:getView()
|
||||
return self.begin
|
||||
end
|
||||
|
||||
function Menu:isViewAtBeggining()
|
||||
return (self.begin <= 1)
|
||||
end
|
||||
|
||||
function Menu:isViewAtEnd()
|
||||
return ((self.begin + self.slots) > (#self.widget.list))
|
||||
end
|
||||
|
||||
return TextMenu
|
Loading…
Reference in a new issue