From c1d743ddbd84a439cefc6c7d32155ea405e8da4a Mon Sep 17 00:00:00 2001 From: Matthias Richter Date: Wed, 23 Jan 2013 12:32:16 +0100 Subject: Add gui.group{arguments-gui.group.push, func}. Convenience function that wraps func() in a push/pop pair, i.e. gui.group{grow=grow, spacing=spacing, size=size, pos=pos, function() do_stuff() end} is equivalent to gui.group.push{grow=grow, spacing=spacing, size=size, pos=pos} do_stuff() gui.group.pop() --- group.lua | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/group.lua b/group.lua index 50e413e..4889cd4 100644 --- a/group.lua +++ b/group.lua @@ -138,6 +138,14 @@ return setmetatable({ beginFrame = beginFrame, endFrame = endFrame, default = default, -}, {__index = function(_,k) - return ({size = current.size, pos = current.pos})[k] -end}) +}, { + __index = function(_,k) + return ({size = current.size, pos = current.pos})[k] + end, + __call = function(_, info) + assert(type(info) == 'table' and type(info[1]) == 'function') + push(info) + info[1]() + pop() + end, +}) -- cgit v1.2.3-70-g09d2