Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Lua: UI #1129

Open
chreden opened this issue Feb 27, 2023 · 0 comments
Open

Lua: UI #1129

chreden opened this issue Feb 27, 2023 · 0 comments
Assignees
Labels
scripting Lua integration
Milestone

Comments

@chreden
Copy link
Owner

chreden commented Feb 27, 2023

Some sort of wrapper for ImGui so plugins can make their own windows.

@chreden chreden added the scripting Lua integration label Feb 27, 2023
chreden added a commit that referenced this issue Mar 7, 2023
chreden added a commit that referenced this issue Mar 7, 2023
Begin, Button, Finish (End)
Might rework how they work
#1129
chreden added a commit that referenced this issue Mar 7, 2023
Temporarily make log for each users
Needs to be thread safe, it's not.
#1129
chreden added a commit that referenced this issue Mar 10, 2023
chreden added a commit that referenced this issue Mar 10, 2023
chreden added a commit that referenced this issue Mar 10, 2023
Checks for table type are done in the getters
#1129
chreden added a commit that referenced this issue Mar 10, 2023
chreden added a commit that referenced this issue Mar 11, 2023
Unregister events
Clear token store
Don't change level if the level is the same
#1129
chreden added a commit that referenced this issue Mar 12, 2023
chreden added a commit that referenced this issue Mar 12, 2023
chreden added a commit that referenced this issue Mar 13, 2023
chreden added a commit that referenced this issue Mar 14, 2023
chreden added a commit that referenced this issue Mar 14, 2023
Call render_toolbar for each plugin so they can have a button in the toolbar if they need one.
#1129
chreden added a commit that referenced this issue Mar 14, 2023
chreden added a commit that referenced this issue Mar 14, 2023
chreden added a commit that referenced this issue Mar 15, 2023
chreden added a commit that referenced this issue Mar 21, 2023
chreden added a commit that referenced this issue Mar 21, 2023
Add the initial ImGui bindings. These aren't complete but have been enough to make the monkey finder example plugin. More will be added in batches.

Add a way of unregistering from an event handler - this is required as trview hasn't had levels surviving and coming back before (Lua can now keep them alive).

Lua:

Add selected_item property to level.
Add local_levels property to trview.
Change trview:load to be a coroutine - this allows for plugins to load levels in the background. A mutex was added to log as otherwise this was causing crashes.
Plugins can now have render_toolbar and render_ui functions that the application will call if they're present. UI is for rendering regular windows and toolbar is for rendering a button into the bottom toolbar.

#1129
@chreden chreden self-assigned this Mar 23, 2023
@chreden chreden added this to the Next milestone Jun 23, 2023
chreden added a commit that referenced this issue Aug 25, 2023
chreden added a commit that referenced this issue Aug 31, 2023
chreden added a commit that referenced this issue Sep 1, 2023
chreden added a commit that referenced this issue Sep 2, 2023
chreden added a commit that referenced this issue Sep 8, 2023
Read input value, write it out
#1129
chreden added a commit that referenced this issue Sep 8, 2023
chreden added a commit that referenced this issue Sep 9, 2023
chreden added a commit that referenced this issue Sep 24, 2023
Add bindings for ImGui input functions. This will at least let plugins do some basic input instead of checkboxes and buttons.
Rearrange files for the imgui project to `inc` and `src` - will probably do this for the rest of the projects at some point too.
#1129
@chreden chreden modified the milestones: 3.0.0, Next Sep 24, 2023
@chreden chreden modified the milestones: v2.4.1, Next Oct 17, 2023
@chreden chreden modified the milestones: 2.5.0, Next Feb 18, 2024
@chreden chreden modified the milestones: 2.6.0, Next Jun 4, 2024
@chreden chreden modified the milestones: v2.7.0, Next Nov 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
scripting Lua integration
Projects
None yet
Development

No branches or pull requests

1 participant