Files
tromi_mobile/scene/touch_config.lua
SweetSea-ButImNotSweet 2c1f7485ad Not important updates
2024-05-20 19:23:00 +07:00

105 lines
2.7 KiB
Lua

local TouchConfigScene = SCENE:extend()
TouchConfigScene.title = "Touchscreen config\n(you can tap anywhere on touch screen to select this)"
local widgetList = {
select_widget = BUTTON.new{
text = "Select key\n[Rotate right 2]",
x = 10, y = 10, w = 120, h = 110
},
BUTTON.new{
text = "[—]\nSmaller",
x = 140, y = 10, w = 70, h = 50,
},
BUTTON.new{
text = "Size: 50\nTap to reset",
x = 220, y = 10, w = 110, h = 50,
},
BUTTON.new{
text = "[+]\nBigger",
x = 340, y = 10, w = 70, h = 50,
},
BUTTON.new{
text = "[—]\nBlurrier",
x = 140, y = 70, w = 70, h = 50,
},
BUTTON.new{
text = "Opacity: 50%\nTap to reset",
x = 220, y = 70, w = 110, h = 50,
},
BUTTON.new{
text = "[+]\nClearer",
x = 340, y = 70, w = 70, h = 50,
},
BUTTON.new{
text = "SAVE and\nback to MENU",
x = 480, y = 10, w = 150, h = 50,
codeWhenReleased = function() SCENE = TitleScene() end
},
BUTTON.new{
text = "DISCARD\nchanges",
x = 480, y = 70, w = 70, h = 50,
codeWhenReleased = function() SCENE = TitleScene() end
},
BUTTON.new{
text = "RESET to\nDEFAULT",
x = 560, y = 70, w = 70, h = 50,
codeWhenReleased = function() SCENE = TitleScene() end
},
}
local function widgetList_update()
for _, v in pairs(widgetList) do v:update() end
end
local function widgetList_draw()
for _, v in pairs(widgetList) do v:draw() end
end
local function widgetList_isHovering(x, y)
for _, v in pairs(widgetList) do v:isHovering(x, y) end
end
local function widgetList_press()
for _, v in pairs(widgetList) do v:press() end
end
local function widgetList_release()
for _, v in pairs(widgetList) do v:release() end
end
function TouchConfigScene:new()
-- TODO
end
function TouchConfigScene:update()
-- TODO
end
function TouchConfigScene:render()
MainBackground()
widgetList_draw()
end
---@param e SCENE_onInput
function TouchConfigScene:onInputMove(e)
if e.type == "mouse" then
widgetList_isHovering(e.x, e.y)
end
end
---@param e SCENE_onInput
function TouchConfigScene:onInputPress(e)
if e.input == 'menu_back' then SCENE = InputConfigScene() end
if e.type == "mouse" then widgetList_press() end
if e.type == "touch" then
widgetList_isHovering(e.x,e.y)
widgetList_press()
end
end
function TouchConfigScene:onInputRelease(e)
if e.type == "mouse" then
widgetList_release()
widgetList_isHovering(x, y)
elseif e.type == "touch" then
widgetList_release()
end
end
return TouchConfigScene