-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathtabbar.lua
More file actions
60 lines (47 loc) · 1.87 KB
/
tabbar.lua
File metadata and controls
60 lines (47 loc) · 1.87 KB
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
51
52
53
54
55
56
57
58
59
60
local ennui = require("ennui")
local TabBar = ennui.Widgets.Tabbar
local StackPanel = ennui.Widgets.Stackpanel
local Text = ennui.Widgets.Text
local Checkbox = ennui.Widgets.Checkbox
local Slider = ennui.Widgets.Slider
local Window = ennui.Widgets.Window
local host = ennui.Widgets.Host()
:setSize(love.graphics.getDimensions())
local window = Window("TabBar Example")
:setSize(400, 350)
:setPosition(100, 100)
local tabBar = TabBar()
:setSize(ennui.Size.fill(), ennui.Size.fill())
local generalPanel = StackPanel()
:setSpacing(10)
:setPadding(10)
:setSize(ennui.Size.fill(), ennui.Size.fill())
generalPanel:addChild(Text("General Settings"):setColor(1, 1, 0.5))
generalPanel:addChild(Checkbox("Start on boot"))
generalPanel:addChild(Checkbox("Check for updates"):setChecked(true))
generalPanel:addChild(Checkbox("Send anonymous usage data"))
local audioPanel = StackPanel()
:setSpacing(10)
:setPadding(10)
:setSize(ennui.Size.fill(), ennui.Size.fill())
audioPanel:addChild(Text("Audio Settings"):setColor(1, 1, 0.5))
audioPanel:addChild(Text("Master Volume:"):setColor(0.8, 0.8, 0.8))
audioPanel:addChild(Slider(0, 100, 80))
audioPanel:addChild(Text("Music Volume:"):setColor(0.8, 0.8, 0.8))
audioPanel:addChild(Slider(0, 100, 60))
audioPanel:addChild(Checkbox("Mute when minimized"))
local displayPanel = StackPanel()
:setSpacing(10)
:setPadding(10)
:setSize(ennui.Size.fill(), ennui.Size.fill())
displayPanel:addChild(Text("Display Settings"):setColor(1, 1, 0.5))
displayPanel:addChild(Checkbox("Fullscreen"))
displayPanel:addChild(Checkbox("V-Sync"):setChecked(true))
displayPanel:addChild(Text("Brightness:"):setColor(0.8, 0.8, 0.8))
displayPanel:addChild(Slider(0, 100, 50))
tabBar:addTab("General", generalPanel)
tabBar:addTab("Audio", audioPanel)
tabBar:addTab("Display", displayPanel)
window:setContent(tabBar)
host:addChild(window)
return host