1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
local lvgl = require("lvgl")
local widgets = require("widgets")
local legacy_ui = require("legacy_ui")
local database = require("database")
local main_menu = {}
function main_menu:Create(parent)
local menu = {}
menu.root = lvgl.Object(parent, {
flex = {
flex_direction = "column",
flex_wrap = "wrap",
justify_content = "flex-start",
align_items = "flex-start",
align_content = "flex-start",
},
w = lvgl.HOR_RES(),
h = lvgl.VER_RES(),
})
menu.root:center()
menu.status_bar = widgets.StatusBar(menu.root, {})
menu.list = lvgl.List(menu.root, {
w = lvgl.PCT(100),
h = lvgl.PCT(100),
flex_grow = 1,
})
menu.list:add_btn(nil, "Now Playing"):onClicked(function()
legacy_ui.open_now_playing();
end)
local indexes = database.get_indexes()
for id, name in ipairs(indexes) do
local btn = menu.list:add_btn(nil, name)
btn:onClicked(function()
legacy_ui.open_browse(id);
end)
end
menu.list:add_btn(nil, "Settings"):onClicked(function()
legacy_ui.open_settings();
end)
return menu
end
return main_menu
|