sokoban.love/0081-draw_settings_menu

99 lines
2.3 KiB
Plaintext
Raw Normal View History

draw_settings_menu = function()
App.color(Menu_background)
local w,h = 200, love.graphics.getFont():getHeight()*8
local x,y = Safe_width-30-w, Menu_bottom
Settings_menu_area = {x=x, y=y, w=w, h=h}
love.graphics.rectangle('fill', x,y, w,h)
App.color(Normal_color)
-- font size slider
love.graphics.print('font size', x+10,y+10)
y = y+10+Line_height
local sx = x+App.width('bg')+50 -- align all sliders
Settings_font_slider = {
name='font',
-- x limits
x0=sx+20, x1=Safe_width-30,
-- central y
y0=y+10,
-- slider knob dimensions
w=10, h=10,
-- extremes
lo=20, hi=40, -- font sizes
value=Current_pane.editor_state.font_height
}
draw_slider(Settings_font_slider)
y = y+10
-- colors
love.graphics.print('colors', x+10,y+10)
y = y+10+Line_height
-- colors/foreground
love.graphics.print('fg', x+20, y)
App.color(Foreground_color)
love.graphics.rectangle('fill', sx-20,y+5, 20,20)
Settings_foreground_sliders = {
r = {
name='fg/r',
x0 = sx+20, x1=Safe_width-30,
y0 = y,
w=10, h=10,
lo = 0, hi=1,
value = Foreground_color.r
},
g = {
name='fg/g',
x0 = sx+20, x1=Safe_width-30,
y0 = y+15,
w=10, h=10,
lo = 0, hi=1,
value = Foreground_color.g
},
b = {
name='fg/b',
x0 = sx+20, x1=Safe_width-30,
y0 = y+30,
w=10, h=10,
lo = 0, hi=1,
value = Foreground_color.b
},
}
App.color(Normal_color)
draw_slider(Settings_foreground_sliders.r)
draw_slider(Settings_foreground_sliders.g)
draw_slider(Settings_foreground_sliders.b)
y = y+10+Line_height+10
-- colors/background
love.graphics.print('bg', x+20, y)
App.color(Background_color)
love.graphics.rectangle('fill', sx-20,y+5, 20,20)
App.color(Normal_color)
Settings_background_sliders = {
r = {
name='bg/r',
x0 = sx+20, x1=Safe_width-30,
y0 = y,
w=10, h=10,
lo = 0, hi=1,
value = Background_color.r
},
g = {
name='bg/g',
x0 = sx+20, x1=Safe_width-30,
y0 = y+15,
w=10, h=10,
lo = 0, hi=1,
value = Background_color.g
},
b = {
name='bg/b',
x0 = sx+20, x1=Safe_width-30,
y0 = y+30,
w=10, h=10,
lo = 0, hi=1,
value = Background_color.b
},
}
App.color(Normal_color)
draw_slider(Settings_background_sliders.r)
draw_slider(Settings_background_sliders.g)
draw_slider(Settings_background_sliders.b)
end