# HG changeset patch # User jbe # Date 1496742815 -7200 # Node ID d887ac8b91f86ae12d203f261bb1f7dffb717d1e # Parent d1c16b6611ddc98acf13587b4eac73a2832183e2# Parent be5db15e2d9a2bef100c12e3c582146a377faf28 merge diff -r d1c16b6611dd -r d887ac8b91f8 framework/env/ui/container.lua --- a/framework/env/ui/container.lua Tue Jun 06 11:39:32 2017 +0200 +++ b/framework/env/ui/container.lua Tue Jun 06 11:53:35 2017 +0200 @@ -18,7 +18,7 @@ --]]-- function ui.container(args) - local attr, label, label_attr, legend, legend_attr, content + local attr, label, label_attr, legend, legend_attr, value_container_attr, content local auto_args = args.auto_args if auto_args then attr = auto_args.container_attr @@ -26,6 +26,7 @@ label_attr = auto_args.label_attr legend = auto_args.legend legend_attr = auto_args.legend_attr + value_container_attr = auto_args.value_container_attr if label and auto_args.attr and auto_args.attr.id then label_attr = table.new(label_attr) label_attr["for"] = auto_args.attr.id @@ -52,7 +53,14 @@ slot.put(" ") end if type(content) == "function" then - content() + if value_container_attr then + ui.container{ + attr = value_container_attr, + content = content + } + else + content() + end elseif content then slot.put(encode.html(content)) end @@ -82,7 +90,7 @@ end end } - elseif fieldset and label then + elseif legend and label then error("ui.container{...} may either get a label or a legend.") else return ui.tag{ tag = "div", attr = attr, content = content } diff -r d1c16b6611dd -r d887ac8b91f8 framework/env/ui/form_element.lua