fixes to graphics constraint logic
This commit is contained in:
parent
e37b8758cd
commit
375b7f680e
@ -230,7 +230,7 @@ function element.new(args, constraint, child_offset_x, child_offset_y)
|
|||||||
|
|
||||||
if type(constraint) == "function" then
|
if type(constraint) == "function" then
|
||||||
-- constrain per provided constraint function (can only get smaller than available space)
|
-- constrain per provided constraint function (can only get smaller than available space)
|
||||||
w, h = constraint(w, h)
|
w, h = constraint(f)
|
||||||
f.w = math.min(f.w, w)
|
f.w = math.min(f.w, w)
|
||||||
f.h = math.min(f.h, h)
|
f.h = math.min(f.h, h)
|
||||||
end
|
end
|
||||||
|
|||||||
@ -33,7 +33,13 @@ local function textbox(args)
|
|||||||
-- provide a constraint condition to element creation to prevent an pointlessly tall text box
|
-- provide a constraint condition to element creation to prevent an pointlessly tall text box
|
||||||
---@param frame graphics_frame
|
---@param frame graphics_frame
|
||||||
local function constrain(frame)
|
local function constrain(frame)
|
||||||
return frame.w, math.max(args.height, math.max(1, #util.strwrap(args.text, frame.w)))
|
local new_height = math.max(1, #util.strwrap(args.text, frame.w))
|
||||||
|
|
||||||
|
if args.height then
|
||||||
|
new_height = math.max(frame.h, new_height)
|
||||||
|
end
|
||||||
|
|
||||||
|
return frame.w, new_height
|
||||||
end
|
end
|
||||||
|
|
||||||
-- create new graphics element base object
|
-- create new graphics element base object
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user