10 Commits

Author SHA1 Message Date
Quentin
37296c1498 lua: sub folders support, check for .lua file extension, refactor and simplify internals. (#1775) 2023-07-22 13:05:43 +02:00
Quentin
73d23dd34b fix(lua): move bindings to cpp files (#1757) 2023-07-18 13:07:33 +02:00
Quentin
664b5c6c40 feat(lua): much more complete imgui bindings, allow lua imgui callbacks from outside yimmenu classic tabs through gui.add_imgui(func) but also inside yimmenu classic tabs through tab:add_imgui(func) (#1736) 2023-07-17 14:55:42 +02:00
Quentin
0417fbf0f9 fix(lua): better exception handling (#1734) 2023-07-16 23:32:34 +02:00
Quentin
0a5cca8c12 fix(lua) (#1697)
- sandbox stuff.
- Fix lua scripts that could run when their lua state was destroyed, causing chaos.
2023-07-13 09:36:13 +02:00
Quentin
76afd97185 Lua: can make new tabs from lua scripts, doc generation for available tabs to use (#1593)
* lua api: add globals.get_uint and globals.set_uint

* lua doc: remove duplicate function check as we can overload so it doesn't make sense

* lua doc gen: add support for parsing the tabs enum

* gui: custom lua tabs don't have a `func` rendering function but can still have elements to draw

* lua doc: update generated doc

* chore: code style

* chore: minor spelling mistake

* chore: code style

* gui_service: add runtime removal of tabs

* refactor: make it so that it's less likely defining tabs and their translation key in a wrong way.

* lua api: ability to add custom tabs to the gui from lua
2023-07-05 00:30:57 +02:00
Quentin
b44b2f04e6 Feat lua file watch (#1584)
* feat lua: file watcher for lua script file: reload scripts if they got changed since they were initially loaded
* feat lua auto reload: enable / disable the feature through the ui and settings
2023-07-02 22:32:46 +02:00
Quentin
4c71be4142 Lua doc (#1552) 2023-07-02 00:59:02 +02:00
Quentin
dc18216263 lua: change the way native functions are binded (#1543) 2023-06-27 20:13:05 +02:00
maybegreat48
03c1a96b67 Lua Scripting (#1334)
Closes #83
Fixes #1309
Fixes #1287
Fixes #1129 (actually fixed now)
2023-06-06 09:40:40 +02:00