Closed OrionsGuardian closed 3 days ago
Revised summary of functionality which should be added:
Further functionality to consider: Should the Selection menu options only select elements that are shown on the graph (ie. limit functionality to selected layers only ?) Should the Arrangements menu options also be limited to the currently visible graph elements ?
@OrionsGuardian - thanks for fixing the Layer View Bug. Now the Selection functionality to be limited to graph elements that belong to the active layers.
Prerequisites
[ ] Put an X between the brackets on this line if you have done all of the following:
Running the latest version of Constellation
Attached the Support Package via
Help
>Support Package
Checked the FAQs: https://github.com/constellation-app/constellation/wiki/FAQ
Checked that your issue isn’t already filed: https://github.com/constellation-app/constellation/issues
Checked that there is not already a module that provides the described functionality: https://github.com/constellation-app/constellation/wiki/Catalogue-of-Repositories
Description
There needs to be a way to select only the elements that are shown for the active layers.
Currently, if you have elements that belong to different layers, when you activate a single layer you will only see the elements that belong to the active layer ... But, if you click and drag the mouse over the graph to create a selection rectangle, it will select everything within the area including the hidden elements. Same issue if you use the 'Select All' shortcut. It will select all entries in the graph, regardless of whether they are visible or not.
To address this we could provide a "Select Layer Elements" button in each Layer segment. (the button should only be active if the layer is active) And also provide a "Select all active layer elements" button, as a shortcut to pressing the button in each active segment.
Some additional functionality to consider: While there are no layers active, and all graph elements are visible ... A user could select a set of graph elements, then activate some layers, then click on a new button to "Assign pre-selected graph elements to the currently active layers"
This would also provide an easier way to move elements between layers ... We can select elements from one layer and then switch to a different layer where they can then be assigned via the new button. There could be an assign button in each layer segment ... to assign only to that segment. And a global assign button, which assigns to the combination of active layers.
Steps to Reproduce
Create a new empty graph. Open the Layers View. Add a layer. Activate Layer 1 only. Create 2 nodes in the graph (they will be auto-allocated to layer 1) De-Activate layer 1, then activate Layer 2 only. Create 2 nodes in the graph (these will be auto-allocated to Layer 2)
Now, while only Layer 2 is active, click and drag a selection rectangle in the graph window, so that it is large enough to include the locations where the currently hidden Layer 1 nodes were created. Complete the selection and notice the status bar at the bottom shows 4/4 nodes selected. De-activate Layer 2. Notice that all 4 nodes are selected, when visually, while Layer 2 was active, you would only expect the Layer 2 nodes to be selected.
Expected behaviour: Selection functionality to be limited to graph elements that belong to the active layers.
Actual behaviour: Selection functionality does not consider active layers and selects everything.
Reproduces how often: 100%