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

Data-driven UI #498

Open
Kenix3 opened this issue Apr 21, 2024 · 0 comments
Open

Data-driven UI #498

Kenix3 opened this issue Apr 21, 2024 · 0 comments
Milestone

Comments

@Kenix3
Copy link
Owner

Kenix3 commented Apr 21, 2024

Here are some thoughts on the matter. Validation and Dependency can be implemented later and separately.

We have different windows that we can sort enhancements/options to. We also have a "advanced configuration" window, that is the searchable window you showed off earlier. Both of these different window setups would be driven from the same data. We could have a top level button on the menu bar that lists out all of the windows, and the advanced/all window together.

So if we include things like what window it belongs to, and categorization, we can layout both windows programmatically.

The general metadata we will need:

  • Name (Short description)
  • Description (Long description, is this different from tooltip?)
  • Type (Checkbox, combobox, slider, etc)
  • CVar (Which cvar are we modifying for this option?)
  • Data sources (dropdown options, combobox options, etc)
  • Validation (Does the field need to have a certain min and max text length? Must it be an integer? Must it be in an integer with specific bounds? etc)
  • Dependency (What other options does this depend on? What happens when the dependency is unmet [disable, hide]? What values do there need to be in other options for the dependency to be met? Is it the same as the validation?)
  • Window (Window, Category, Subcategory are a unique triplet. Any can be blank.)
  • Category
  • Subcategory

Something like https://github.com/cparse/cparse could be used to allow for boolean logic. We would need to add functions for validation, like string length, number checking, and type checking.

@Kenix3 Kenix3 added this to the LUS 2.x.x milestone Apr 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant