Allow identifier change via direct edit in certain views #151
Labels
No labels
bug
ci
design
duplicate
engine
enhancement
maintenance
prospective
question
regression
stub
todo
ui
wontfix
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Blocks
#150 Make it easy to reassign already-used identifiers
StudioInfinity/dyna3
Reference
StudioInfinity/dyna3#151
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
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?
We would like to allow direct change of id of an element via those views which are capable of displaying the ids of elements (such as the outline, and perhaps the graphical view when a (single?) element is selected -- although maybe it would make more sense when a single element is selected that the outline view simply scrolls to that element automagically, showing the element's information that way, rather than via anything else in/around the graphical view; then each view can concentrate on what it does well).
When a view is showing the id of an element, there are at least two possible different interfaces we might allow for changing said id:
In either of the above two scenarios (there might be other possibilities we could contemplate), the actual identifier change comes down to typing into a text box. There are then at least a couple of ways that the identifier change could take place:
My inclination is that "Enter to submit" is a less modern/currently comfortable option, leading to some inclination toward one of the other options. I don't know that "live update" is really necessary here, especially as it might happen that you traverse multiple in-use IDs (with the associated concerns about what happens when renaming to them) en route to the ID you desire. So "close/change focus to submit" might be the happy medium, although we can certainly discuss/consider other options not listed.
One step toward implementing this could be to build a component that provides an editable view of an identifier with built-in collision handling, similarly to how the
RegulatorInputcomponent provides an editable view of a regulator with built-in validation.@Vectornaut wrote in #151 (comment):
Indeed, and that step is presumably agnostic to the choice of where that component might appear (only in an outline view, sometimes "popped up" in the graphics view, etc.)