Renamed ButtonGroup to VBox.

This commit is contained in:
2025-10-05 22:15:11 -04:00
parent bed93d1de4
commit 479ff952cf
2 changed files with 13 additions and 13 deletions

View File

@@ -11,7 +11,7 @@ local Sprite = require 'src.graphics.sprite'
local Cursor = require 'src.ui.cursor' local Cursor = require 'src.ui.cursor'
local Font = require 'src.ui.font' local Font = require 'src.ui.font'
local SoundEffect = require 'src.sound.sfx' local SoundEffect = require 'src.sound.sfx'
local ButtonGroup = require 'src.ui.btngrp' local VBox = require 'src.ui.vbox'
------------------------------------------------------------------------------ ------------------------------------------------------------------------------
@@ -35,7 +35,7 @@ function MainMenu:_init(name, index)
self.btn_font = Font('fonts/Concrete.ttf') self.btn_font = Font('fonts/Concrete.ttf')
-- Create UI elements. -- Create UI elements.
self.btns = ButtonGroup(15, 15) self.btns = VBox(15, 15)
self.btns:add_text_button('New Game', self.btn_font) self.btns:add_text_button('New Game', self.btn_font)
self.btns:add_text_button('Load Game', self.btn_font) self.btns:add_text_button('Load Game', self.btn_font)
self.btns:add_text_button('Options', self.btn_font) self.btns:add_text_button('Options', self.btn_font)

View File

@@ -12,14 +12,14 @@ local TextButton = require 'src.ui.textbtn'
-- Class definitions -- Class definitions
------------------------------------------------------------------------------ ------------------------------------------------------------------------------
local ButtonGroup = make_class(Drawable, Asset) local VBox = make_class(Drawable, Asset)
------------------------------------------------------------------------------ ------------------------------------------------------------------------------
-- Class methods -- Class methods
------------------------------------------------------------------------------ ------------------------------------------------------------------------------
function ButtonGroup:_init(x, y, spacing) function VBox:_init(x, y, spacing)
self.x = x ~= nil and x or 0 self.x = x ~= nil and x or 0
self.y = y ~= nil and y or 0 self.y = y ~= nil and y or 0
self.s = spacing ~= nil and spacing or 10 self.s = spacing ~= nil and spacing or 10
@@ -27,12 +27,12 @@ function ButtonGroup:_init(x, y, spacing)
end end
function ButtonGroup:add_text_button(text, font, callback, base_col, sel_color, press_col) function VBox:add_text_button(text, font, callback, base_col, sel_color, press_col)
table.insert(self.btns, TextButton(text, font, 0, 0, callback, base_col, sel_color, press_col)) table.insert(self.btns, TextButton(text, font, 0, 0, callback, base_col, sel_color, press_col))
end end
function ButtonGroup:load() function VBox:load()
local y = self.y local y = self.y
-- Load required assets if needed and then compute the coordinates of each button. -- Load required assets if needed and then compute the coordinates of each button.
@@ -49,7 +49,7 @@ function ButtonGroup:load()
end end
function ButtonGroup:unload() function VBox:unload()
for _, v in pairs(self.btns) do for _, v in pairs(self.btns) do
if v.is_a[Asset] then if v.is_a[Asset] then
v:unload() v:unload()
@@ -58,35 +58,35 @@ function ButtonGroup:unload()
end end
function ButtonGroup:update(dt) function VBox:update(dt)
for _, v in pairs(self.btns) do for _, v in pairs(self.btns) do
v:update(dt) v:update(dt)
end end
end end
function ButtonGroup:draw() function VBox:draw()
for _, v in pairs(self.btns) do for _, v in pairs(self.btns) do
v:draw() v:draw()
end end
end end
function ButtonGroup:mousemoved(x, y, dx, dy) function VBox:mousemoved(x, y, dx, dy)
for _, v in pairs(self.btns) do for _, v in pairs(self.btns) do
v:mousemoved(x, y, dx, dy) v:mousemoved(x, y, dx, dy)
end end
end end
function ButtonGroup:mousepressed(x, y, btn) function VBox:mousepressed(x, y, btn)
for _, v in pairs(self.btns) do for _, v in pairs(self.btns) do
v:mousepressed(x, y, btn) v:mousepressed(x, y, btn)
end end
end end
function ButtonGroup:mousereleased(x, y, btn) function VBox:mousereleased(x, y, btn)
for _, v in pairs(self.btns) do for _, v in pairs(self.btns) do
v:mousereleased(x, y, btn) v:mousereleased(x, y, btn)
end end
@@ -97,4 +97,4 @@ end
-- Module return -- Module return
------------------------------------------------------------------------------ ------------------------------------------------------------------------------
return ButtonGroup return VBox