Merge branch 'master' of git://github.com/vrld/Quickie.git
This commit is contained in:
commit
d51babb366
9 changed files with 12 additions and 31 deletions
|
@ -1,4 +1,4 @@
|
|||
local core = require((...):match("^(.+)%.[^%.]+") .. '.core')
|
||||
local core = require((...):match("(.-)[^%.]+$") .. 'core')
|
||||
|
||||
-- the widget
|
||||
return function(title, x,y, w,h, draw)
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
local core = require((...):match("^(.+)%.[^%.]+") .. '.core')
|
||||
local core = require((...):match("(.-)[^%.]+$") .. 'core')
|
||||
|
||||
return function(info, x,y, w,h, draw)
|
||||
local id = core.generateID()
|
||||
|
|
4
core.lua
4
core.lua
|
@ -1,5 +1,6 @@
|
|||
-- state
|
||||
local context = {maxid = 0}
|
||||
local draw_items = {n = 0}
|
||||
local NO_WIDGET = function()end
|
||||
|
||||
local function generateID()
|
||||
|
@ -97,7 +98,6 @@ local function save_unpack(t, i)
|
|||
return t[i], save_unpack(t, i+1)
|
||||
end
|
||||
|
||||
local draw_items = {n = 0}
|
||||
local function registerDraw(id, f, ...)
|
||||
assert(type(f) == 'function' or (getmetatable(f) or {}).__call,
|
||||
'Drawing function is not a callable type!')
|
||||
|
@ -151,7 +151,7 @@ return {
|
|||
hasKeyFocus = hasKeyFocus,
|
||||
makeTabable = makeTabable,
|
||||
|
||||
style = require((...):match("^(.+)%.[^%.]+") .. '.style-default'),
|
||||
style = require((...):match("(.-)[^%.]+$") .. '.style-default'),
|
||||
color = color,
|
||||
registerDraw = registerDraw,
|
||||
draw = draw,
|
||||
|
|
2
init.lua
2
init.lua
|
@ -1,4 +1,4 @@
|
|||
local BASE = (...) .. '.'
|
||||
local BASE = ((...):match('(.+)%.') or ...) .. '.'
|
||||
|
||||
return {
|
||||
core = require(BASE .. 'core'),
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
local core = require((...):match("^(.+)%.[^%.]+") .. '.core')
|
||||
local core = require((...):match("(.-)[^%.]+$") .. 'core')
|
||||
|
||||
return function(info, x,y,w,h, draw)
|
||||
info.text = info.text or ""
|
||||
|
@ -10,6 +10,7 @@ return function(info, x,y,w,h, draw)
|
|||
if core.isActive(id) then core.setKeyFocus(id) end
|
||||
|
||||
core.registerDraw(id, draw or core.style.Input, info.text, info.cursor, x,y,w,h)
|
||||
if not core.hasKeyFocus(id) then return false end
|
||||
|
||||
local changed = false
|
||||
-- editing
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
local core = require((...):match("^(.+)%.[^%.]+") .. '.core')
|
||||
local core = require((...):match("(.-)[^%.]+$") .. 'core')
|
||||
|
||||
return function(text, x,y,w,h,align, draw)
|
||||
local id = core.generateID()
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
local core = require((...):match("^(.+)%.[^%.]+") .. '.core')
|
||||
local core = require((...):match("(.-)[^%.]+$") .. 'core')
|
||||
|
||||
return function(info, x,y,w,h, draw)
|
||||
assert(type(info) == 'table' and info.value, "Incomplete slider value info")
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
local core = require((...):match("^(.+)%.[^%.]+") .. '.core')
|
||||
local core = require((...):match("(.-)[^%.]+$") .. 'core')
|
||||
|
||||
return function(info, x,y,w,h, draw)
|
||||
assert(type(info) == 'table' and type(info.value) == "table", "Incomplete slider value info")
|
||||
|
|
|
@ -12,10 +12,6 @@ end
|
|||
|
||||
local function Button(state, title, x,y,w,h)
|
||||
local c = color[state]
|
||||
if state ~= 'normal' then
|
||||
love.graphics.setColor(c.fg)
|
||||
love.graphics.rectangle('fill', x+3,y+3,w,h)
|
||||
end
|
||||
love.graphics.setColor(c.bg)
|
||||
love.graphics.rectangle('fill', x,y,w,h)
|
||||
love.graphics.setColor(c.fg)
|
||||
|
@ -39,10 +35,6 @@ end
|
|||
|
||||
local function Slider(state, fraction, x,y,w,h, vertical)
|
||||
local c = color[state]
|
||||
if state ~= 'normal' then
|
||||
love.graphics.setColor(c.fg)
|
||||
love.graphics.rectangle('fill', x+3,y+3,w,h)
|
||||
end
|
||||
love.graphics.setColor(c.bg)
|
||||
love.graphics.rectangle('fill', x,y,w,h)
|
||||
|
||||
|
@ -59,10 +51,6 @@ end
|
|||
|
||||
local function Slider2D(state, fraction, x,y,w,h, vertical)
|
||||
local c = color[state]
|
||||
if state ~= 'normal' then
|
||||
love.graphics.setColor(c.fg)
|
||||
love.graphics.rectangle('fill', x+3,y+3,w,h)
|
||||
end
|
||||
love.graphics.setColor(c.bg)
|
||||
love.graphics.rectangle('fill', x,y,w,h)
|
||||
|
||||
|
@ -83,10 +71,6 @@ end
|
|||
|
||||
local function Input(state, text, cursor, x,y,w,h)
|
||||
local c = color[state]
|
||||
if state ~= 'normal' then
|
||||
love.graphics.setColor(c.fg)
|
||||
love.graphics.rectangle('fill', x+3,y+3,w,h)
|
||||
end
|
||||
love.graphics.setColor(c.bg)
|
||||
love.graphics.rectangle('fill', x,y,w,h)
|
||||
love.graphics.setColor(c.fg)
|
||||
|
@ -107,17 +91,13 @@ end
|
|||
|
||||
local function Checkbox(state, checked, x,y,w,h)
|
||||
local c = color[state]
|
||||
if state ~= 'normal' then
|
||||
love.graphics.setColor(c.fg)
|
||||
love.graphics.rectangle('fill', x+3,y+3,w,h)
|
||||
end
|
||||
love.graphics.setColor(c.bg)
|
||||
love.graphics.rectangle('fill', x,y,w,h)
|
||||
love.graphics.setColor(c.fg)
|
||||
love.graphics.rectangle('line', x,y,w,h)
|
||||
if checked then
|
||||
local r = math.max(math.min(w/2,h/2) - 3, 2)
|
||||
love.graphics.circle('fill', x+w/2,y+h/2,r)
|
||||
local r = math.max(math.min(w/7,h/7), 2)
|
||||
love.graphics.rectangle('fill', x+r,y+r, w-2*r,h-2*r)
|
||||
end
|
||||
end
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue