luk3yx
da5cbfd0fc
Support font_size for labels etc
2025-03-03 14:35:18 +13:00
luk3yx
bea549ec31
Support "size" and "spacing" list styles
...
These are only supported in inline styles so that flow can calculate the
size of the elements without having to look through the rest of the
tree.
2025-03-03 13:51:25 +13:00
luk3yx
8f3c3b1deb
Add window_position, window_padding, and window_anchor
...
Now flow can actually be used for HUDs
2025-02-21 18:38:25 +13:00
luk3yx
e3dc6d6750
Add on_key_enter callback and close_on_enter
...
Closes https://gitlab.com/luk3yx/minetest-flow/-/issues/4
2025-02-21 17:16:54 +13:00
luk3yx
7bad88cdcd
Make copyright headers consistent
2025-02-21 16:49:23 +13:00
luk3yx
df077dda95
Split code into more files
...
I hope I haven't broken anything
2025-02-21 16:39:51 +13:00
luk3yx
03ba40fb58
Fix last commit
2025-02-10 15:28:42 +13:00
luk3yx
25fc58afb5
Fix inline styles on centred labels
...
"font_size" still doesn't work properly though
2025-02-10 15:27:03 +13:00
luk3yx
adbcc432b2
Allow getting value of hypertext input
...
This is probably not the best but is the simplest
2025-01-15 13:46:49 +13:00
luk3yx
710a380d46
Do not add empty style elements
2024-12-30 11:08:13 +13:00
luk3yx
f306f01f57
Luanti rename, add ButtonURL support
2024-11-08 15:52:39 +13:00
luk3yx
136f2b1637
Explain why string.len is used
2024-09-14 20:23:12 +12:00
luk3yx
4563382551
Prevent crash when using numbers as labels
...
Closes https://gitlab.com/luk3yx/minetest-flow/-/merge_requests/1
2024-09-14 20:17:03 +12:00
luk3yx
e0626bdb42
Relicense to LGPL 2.1+
...
I think it's unlikely that flow will be used in the main menu, but now
licensing (hopefully) won't be an issue
2024-08-28 17:47:06 +12:00
Jo5629
38f09bedf3
Add pwdfield to default_value_fields ( #17 )
...
`pwdfield[]` doesn't actually have a "default" value, but flow uses default_value_fields for form input handling, and this seems better than adding a special case for it.
2024-08-17 12:01:33 +12:00
luk3yx
4a185105c3
Fix logic
2024-08-13 18:50:41 +12:00
luk3yx
e27b34700a
Remove unused code, add missing check
2024-08-13 18:49:29 +12:00
luk3yx
d990864834
Fix tests
2024-08-13 10:27:34 +12:00
luk3yx
150cef9399
Change prefix of auto-generated field names
...
Fixes behaviour with https://github.com/minetest/minetest/pull/14878
I've also added a workaround to preserve the current behaviour of
dropdowns that don't have index_event set.
2024-08-13 10:22:47 +12:00
Lazerbeak12345
1528e87864
feat: Embed support ( #15 )
...
Co-authored-by: luk3yx <luk3yx@users.noreply.github.com>
2024-07-25 19:40:18 +12:00
luk3yx
da87496e26
Add listcolors to invisible_elems
2024-06-30 21:32:35 +12:00
luk3yx
13136ab2dc
Add enter_after_edit parameter to Field
...
Closes https://gitlab.com/luk3yx/minetest-flow/-/issues/3
2024-06-18 15:02:14 +12:00
luk3yx
a3523c7073
The example form doesn't show a field by default
2024-05-18 19:25:56 +12:00
luk3yx
45363ee461
Minor performance improvement
...
It turns out that formspec_ast.find is quite slow, moving the
field_close_on_enter code to the new shorthand elements insertion
improves performance (at least on my rudimentary benchmarks of the
example form) and probably negates the overhead added by the inline
styles/tooltips code.
2024-05-18 19:24:12 +12:00
luk3yx
b42a9dc1be
Make luacheck happy
2024-05-15 10:52:13 +12:00
luk3yx
5215229d8c
Add inline styles and tooltips
2024-05-15 10:49:36 +12:00
luk3yx
6c48ccd446
Fix crash
2023-08-12 10:57:13 +12:00
luk3yx
918002d505
Even more input validation
2023-08-08 21:55:09 +12:00
luk3yx
6745777bfc
Make __newindex a table
2023-08-05 14:27:08 +12:00
luk3yx
f5b7bc796a
Add additional input validation
...
This makes it harder to crash mods that aren't expecting malicious
formspec input.
I don't like the large amount of unit tests but I don't see how to avoid
them and arguably those tests should have been there beforehand anyway.
2023-08-04 19:05:53 +12:00
luk3yx
57c1e20ace
Reset bgimg style when centering labels
2023-07-08 12:17:30 +12:00
luk3yx
eb7cd77a23
Fix tabheader positioning when both width and height specified
...
Tabheaders without both a width and height specified still won't work properly.
2023-07-05 14:30:53 +12:00
luk3yx
18538ffd46
Always centre labels with align_h = "centre"
...
Previously flow wouldn't correctly centre labels that it thought were
already as wide as the box they were in.
2023-07-04 09:38:10 +12:00
luk3yx
8a924bbc7c
Bugfix
2023-06-16 14:08:51 +12:00
luk3yx
4046fed55f
Translate labels before calculating their size
...
I've made a new naive_str_width function that tries to estimate the
width of UTF-8 text and is faster than strip_escape_sequences on LuaJIT
(I guess because there isn't an intermediate string being created).
Closes #4
2023-06-16 14:06:32 +12:00
Lazerbeak12345
5bb5dba625
feat: add locale support ( #9 )
...
Co-authored-by: luk3yx <luk3yx@users.noreply.github.com>
2023-06-11 22:10:19 +12:00
luk3yx
4ccabcef0f
Bugfix
2023-06-07 22:46:32 +12:00
luk3yx
a1e7eff2ff
Replace background[] with image[] in gui.Stack
2023-06-07 22:39:57 +12:00
luk3yx
c336abde7e
Fix bgimg in embedded render_to_formspec_string
2023-06-07 21:51:09 +12:00
luk3yx
20b99efaf3
Fix comment
2023-06-01 17:09:19 +12:00
luk3yx
c32ea53fd1
Fix compatibility hack
2023-06-01 17:08:33 +12:00
luk3yx
b4a72ade99
Add compatibility hack
2023-06-01 17:05:25 +12:00
Lazerbeak12345
35fa361f8d
fix: bgcolor settings for root node ( #7 )
2023-06-01 16:56:03 +12:00
luk3yx
238e432251
Don't save fields with an empty name
2023-05-30 16:26:45 +12:00
Lazerbeak12345
435efd014e
feat(flow.widgets): Add nil gui object ( #6 )
...
Skipped over by rendering library, and not included in output formspec.
2023-04-19 16:54:04 +12:00
luk3yx
7b25bc6083
Remove outdated comment
2023-04-12 20:14:17 +12:00
luk3yx
000bd976c2
Fix license comment
2023-04-12 20:11:36 +12:00
luk3yx
cdb4e61ca9
Remove unused debug code
2023-04-08 13:29:10 +12:00
Lazerbeak12345
60d2674a45
feat: Add render_to_formspec_string function ( #5 )
...
Co-authored-by: luk3yx <luk3yx@users.noreply.github.com>
2023-04-08 13:13:44 +12:00
luk3yx
fa13e188f9
Increase formspec version to 6
...
This should mean that older clients still show images that have the
"middle" parameter set
2023-04-07 08:49:15 +12:00