-
Notifications
You must be signed in to change notification settings - Fork 0
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
"Element" selectionScope is adding additional elements to the selectionSet #767
Comments
Somewhat related, I wonder if the selection scope stuff options would be better exposed in the property pane. So far our users do not understand how the selection scope works. If we added a small toolbar or something in the property pane which allowed the user to navigate up to the parent element (change to select the parent) or navigate to a child via a flyout menu or something (select the child element) I think that would be easier for users to discover and grasp. |
To enable it you need to provide |
To add some context, I'd like to explain what the unified selection system does that causes the described issue. The workflow is as follows:
More details about the two concepts are in the
|
What has been considered so far:
So, TL;DR: we don't have a solution that wouldn't break existing workflows. User workflows need to be investigated, considering both - read-only and the new read-write - scenarios. Will try to get some UX input on the matter. |
I feel like it's important to note that there have been user complaints about how selection scopes work in read-only apps. The situations were related to deep parent-child relationships, e.g.:
With the above example elements' hierarchy, users wanted to pick PhysicalObject in the view and see properties of the Segment. However, having 3 selection scopes doesn't suffice here - they can only target:
It's important to note that what you get depends on what you happen to click in graphics view, and you don't really know that until you click. So if Pipe was a graphical element and you happened to click on it, then "Assembly" scope would select Segment for the user. Because of this, I believe adding additional selection scopes would probably only make things more complicated, but wouldn't solve this issue. So far, such complaints were resolved by suggesting users to traverse selected elements' hierarchy using Properrty widget's ancestor navigation feature. However, it's not the most convenient, because of the need to adjust selection every time they select an element. |
We also had a need where a physical object is tied to a spatial one (in another partition). Since they are on different partition, they can't use the parent-child relationship. We would still want some features to be the same, for example the way multiple elements get highlighted even if only one is displayed in the property panel. It would be nice to give us more control over those steps to add our custom rules. |
Adding details about another issue related to selection scopes. Let's imagine a situation where there's a parent element with two children:
If user clicks on Pipe1 with Assembly scope, the Pipeline element will get selected. Whoever listens to selection changes will only see the Pipeline, but won't know anything about the original element that was clicked on. For example, the property widget will show properties for the Pipeline. However, if you click on Pipe1 with Element scope, the property widget will show properties for Pipe1 and ancestor navigation buttons. The buttons allow user to see properties of the Pipeline and then get back to seeing properties of Pipe1. We end up in a situation, where property widget shows properties of the same element (Pipeline), but depending on the selection scope used to select it, users either see ancestor navigation buttons or don't. |
I have schema elements that can have child elements. When the user selects the parent element, using the "Element" selectionScope, the unified selection module adds the child elements to the selectionSet. So instead of the single element that was selected being in the selectionSet, there are 3. This makes it look like the user multi-selected 3 elements to tools that use the selectionSet. For example we have manipulators that look at the selectionSet, and only if a single element is selected do we create manipulators. If there are multiple elements in the selectionSet we don't create any manipulators. So in this case, the user sees no manipulators even though they selected a single element.
It seems like for the "Element" selectionScope, the selectionSet should just be the elements the user manually selected.
The text was updated successfully, but these errors were encountered: