From 4bd64e71bfba3dedb2d2ea2fe2508cd0af57a6d1 Mon Sep 17 00:00:00 2001 From: Mikayla Fischler Date: Mon, 14 Oct 2024 00:52:28 -0400 Subject: [PATCH] number field enforce limits on set --- graphics/elements/form/NumberField.lua | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/graphics/elements/form/NumberField.lua b/graphics/elements/form/NumberField.lua index 46a471e..cc7a602 100644 --- a/graphics/elements/form/NumberField.lua +++ b/graphics/elements/form/NumberField.lua @@ -146,7 +146,17 @@ return function (args) -- set the value (must be a number) ---@param val number number to show function e.set_value(val) - if tonumber(val) then ifield.set_value("" .. tonumber(val)) end + local num, max, min = tonumber(val), tonumber(args.max), tonumber(args.min) + + if max and num > max then + _set_value(max) + elseif min and num < min then + _set_value(min) + elseif num then + _set_value(num) + end + + ifield.set_value(e.value) end -- set minimum input value