Config screen and Config context menu #4106
Draft
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
current preview:

This PR is still very early, the code is messy, and the context menu doesn't have any functionality, and there is no support for list type configuration, and there is no separate texture created for the sake of testing other UI textures. But other parts are already working and I would like to get some feedback on whether a CategoryTab-based ui like RecipesGui would be better, but I'm not very good at drawing because the jei client config has too many Categories, so I used the current design.
The scrollbar also needs to add mouse drag support and may need to support smoother scrolling
There is also the compatibility of the config UI with other systems, for example we may need to add a lot of config listeners to respond to configuration changes, or add a discard/apply button to let the player decide