(On Hold) Rework Properties UI Editor #159
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "new-props-ux"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The first iteration of the Properties UI editor system was recently finished, and I am very happy with what it can do, but the implementation is a bit of a mess, and it has some limitations:
*: The new system might not immediately enable this either, but in the future it could be added, using the old dynamic panel registration system. Don't really want to bring that back though.
**: These would be doable in the old system too.
The idea with the new system is to store all the UI data in RNA as a flat CollectionProperty of UIElement PropertyGroups, which can have a type (panel, subpanel, label, row, property, operator) and a parent element.
Done:
TODO:
I've decided to put this on hold for now, as adding more flexibility to the system results in major UX challenges. For example, should users be allowed to add empty panels and labels? They weren't allowed before, and they are not very useful.
If we only allow users to add Properties and Operators directly, and panels, labels and rows are added implicitly, how could the user define nested panels?
Should users be allowed to add properties without a Row element? If yes, what if they change their mind and want another property side-by-side with this one? How do they then create the necessary Row element? Or, if a Property must always be parented to a Row element, it becomes quite tricky to manage the implicit removal and addition of those Row elements.
Now that Operators are a separate element from Properties, the resulting editing buttons create a huge visual mess just from one property and operator being next to each other.
Overall, the data structure is definitely more flexible, but the UX to support that level of flexibility feels inferior to the current system. Maybe I'll revisit this in the future, if I feel that the current system's problems are significant enough, but right now, it's not broken, so I'll stop trying to fix it.
New Properties UI Editorto (On Hold) New Properties UI Editor(On Hold) New Properties UI Editorto (On Hold) Rework Properties UI EditorCheckout
From your project repository, check out a new branch and test the changes.