Rework/New: Object & Mesh Select Pies #21

Merged
Demeter Dzadik merged 10 commits from selection_pies into main 2024-09-08 13:06:57 +02:00
Collaborator

Rework Selection Pies (A)

These two pie menus had similar operations but their layouts weren't consistent with each other.
They also had drop-down menus with less frequently used operations, which I think is fine, but they were missing entries and weren't very well organized imo.
Also a lot of the pie menu was taken up by operations which already have easy to use built-in shortcuts.

Before After
Object
Mesh

What's exposed and what's tucked away

I think the purpose of pie menus is to speed up workflow by exposing the most commonly used operators and properties to very quick access.

  • Felt weird to include Circle and Box select but not Lasso, especially when all of them have very fast shortcuts. These are B, C, and Ctrl+Click. So these were moved to the drop-down.
  • Replaced "Select All Toggle" with "Select/Deselect All" because it took 2 actions to Select All, which was slow.
  • "Select Parent/Children" are more often used than any other entry out of "Select Grouped". So, I lifted those operations to the top level, and put the menu in the drop-down. You can hold Shift on these operators to extend current selection, which is in the tooltip. They are grayed out if the active object has no parents/siblings/children.
  • I don't think "Select By Type" is used frequently at all, so it's been moved to the drop-down.
  • "Select Loops" is a sub-pie, per feedback.
  • Drop-down menu doesn't include any operation that's already at the top level of the pie.
  • Drop-down menu includes a new "Select Camera" dynamic menu that lists all cameras in the scene. Suggested by @xan2622.

Icons

As you can tell, I used a lot of icons. I try not to stretch their meaning too much, so for a couple things I did not use an icon because I just couldn't find anything remotely relevant. For Select Linked, I wanted to explicitly use an icon that isn't the library linking icon, to suggest to users that this menu has nothing to do with library linking. I used the "Duplicate" icon, since you'd usually get shared object data by duplicating objects. The rest I feel are justified without further explanation.

New Name-based Selection Pie (Ctrl+F)

In addition to reworking the existing selection pies, the PR also adds a new name-based selection pie.
image

  • Search for an Object in the scene (hence why Ctrl+F)
  • Flip the selection (as long as objects are named symmetrically. Number of objects that failed to flip will be reported.)
  • Select object with incremented/decremented name (the last sequence of digits in the name is incremented/decremented, and there's special handling for .001 specifically.)
  • Select objects that are constrained to this object.
  • Select objects that this object is constrained to.

Entries don't appear or are grayed out if no corresponding object exists.

# Rework Selection Pies (A) These two pie menus had similar operations but their layouts weren't consistent with each other. They also had drop-down menus with less frequently used operations, which I think is fine, but they were missing entries and weren't very well organized imo. Also a lot of the pie menu was taken up by operations which already have easy to use built-in shortcuts. | | Before| After | |----------|----------|----------| | Object | <img src="/attachments/015f0170-cbd0-488d-9ae9-16feeb6dee3f" width=400> | <img src="/attachments/2db882fd-86ec-4ecb-a6d0-25fe8628bf66" width=400> | | Mesh | <img src="/attachments/7d53d766-44e1-494b-8f6d-1bf98f786010" width=400> | <img src="/attachments/d8864d27-f0f6-4447-be78-da948b8baeff" width=400> | ### What's exposed and what's tucked away I think the purpose of pie menus is to speed up workflow by exposing the most commonly used operators and properties to very quick access. - Felt weird to include Circle and Box select but not Lasso, especially when all of them have very fast shortcuts. These are B, C, and Ctrl+Click. So these were moved to the drop-down. - Replaced "Select All Toggle" with "Select/Deselect All" because it took 2 actions to Select All, which was slow. - "Select Parent/Children" are more often used than any other entry out of "Select Grouped". So, I lifted those operations to the top level, and put the menu in the drop-down. You can hold Shift on these operators to extend current selection, which is in the tooltip. They are grayed out if the active object has no parents/siblings/children. - I don't think "Select By Type" is used frequently at all, so it's been moved to the drop-down. - "Select Loops" is a sub-pie, per feedback. - Drop-down menu doesn't include any operation that's already at the top level of the pie. - Drop-down menu includes a new "Select Camera" dynamic menu that lists all cameras in the scene. Suggested by @xan2622. ### Icons As you can tell, I used a lot of icons. I try not to stretch their meaning too much, so for a couple things I did not use an icon because I just couldn't find anything remotely relevant. For Select Linked, I wanted to explicitly use an icon that isn't the library linking icon, to suggest to users that this menu has nothing to do with library linking. I used the "Duplicate" icon, since you'd usually get shared object data by duplicating objects. The rest I feel are justified without further explanation. # New Name-based Selection Pie (Ctrl+F) In addition to reworking the existing selection pies, the PR also adds a new name-based selection pie. ![image](/attachments/8f560267-2c88-49ad-99cc-b7d6987c335b) - Search for an Object in the scene (hence why Ctrl+F) - Flip the selection (as long as objects are named symmetrically. Number of objects that failed to flip will be reported.) - Select object with incremented/decremented name (the last sequence of digits in the name is incremented/decremented, and there's special handling for .001 specifically.) - Select objects that are constrained to this object. - Select objects that this object is constrained to. Entries don't appear or are grayed out if no corresponding object exists.
Demeter Dzadik added 1 commit 2024-08-31 23:45:17 +02:00
Demeter Dzadik added 3 commits 2024-09-01 01:37:11 +02:00
Demeter Dzadik changed title from Rework: Object & Mesh Select Pies to Rework/New: Object & Mesh Select Pies 2024-09-01 01:37:17 +02:00
Demeter Dzadik added 2 commits 2024-09-01 01:54:43 +02:00
Contributor

I am not against some change per se, but I confess that I didn't expect "Select All" not to be placed at the top and I kind of expected with this UI rework that Deselect All would be placed at the bottom. I guess I'll have to update my core memory. 🤷😀

Just a few observations:

  • there's a typo on "Deselect All" (currently "Deslect All") in the Object Select and Mesh Select pie menus (A)
  • after selecting all objects (with A > Select All), if you call the Object Select pie menu once more, the "Select All" slice is not grayed out
  • if there's nothing selected, pressing A (to show the Object Select pie menu) still shows a clickable "Deselect All" slice
  • in the Mesh Select pie menu, I hoped that Select Loops and Select Ring could be accessible.
  • regarding cameras, could there be a sub-menu to select other cameras? Mock-up:
    object_select_mockup_954
I am not against some change per se, but I confess that I didn't expect "Select All" not to be placed at the top and I kind of expected with this UI rework that Deselect All would be placed at the bottom. I guess I'll have to update my core memory. 🤷😀 Just a few observations: - there's a typo on "Deselect All" (currently "Deslect All") in the _Object Select_ and _Mesh Select_ pie menus (A) - after selecting all objects (with A > Select All), if you call the _Object Select_ pie menu once more, the "Select All" slice is not grayed out - if there's nothing selected, pressing A (to show the _Object Select_ pie menu) still shows a clickable "Deselect All" slice - in the _Mesh Select_ pie menu, I hoped that Select Loops and Select Ring could be accessible. - regarding cameras, could there be a sub-menu to select other cameras? Mock-up: <img width="643" alt="object_select_mockup_954" src="attachments/910eb09e-80c2-4ec3-85d2-537ec02ef277">
Contributor

Here is a mock-up concept for the Object Select pie menu (with "Select All" at the top):

image

  • "Select All" is still at the top, which is consistent with the previous pie menu (even if it was Select All Toggle), this way not breaking core memory
  • Quick access to Box Select, Circle, Select, Lasso Select
  • Since you wanted to add "hierarchical" buttons I have added, "Parent", "Children", "Direct Children", "All Children" as buttons + I added "Type" and "Collection"
  • You wanted to remove the "Select Active Camera" slice but I think the user should be able to quickly select the camera, it's a important piece of the scene
  • I have added the "Select another camera" sub-menu, as suggested in my previous post

And here is one for the Mesh Select pie menu:

$RMRQOZV

Here is a mock-up concept for the _Object Select_ pie menu (with "Select All" at the top): ![image](/attachments/c5116cc5-2f16-4846-88eb-78b8effe63d0) - "Select All" is still at the top, which is consistent with the previous pie menu (even if it was Select All Toggle), this way not breaking core memory - Quick access to Box Select, Circle, Select, Lasso Select - Since you wanted to add "hierarchical" buttons I have added, "Parent", "Children", "Direct Children", "All Children" as buttons + I added "Type" and "Collection" - You wanted to remove the "Select Active Camera" slice but I think the user should be able to quickly select the camera, it's a important piece of the scene - I have added the "Select another camera" sub-menu, as suggested in my previous post And here is one for the _Mesh Select_ pie menu: ![$RMRQOZV](/attachments/b5573002-bcca-4513-83aa-485f6dbc3c22)
Author
Collaborator

Thanks for the feedback! Although your first image isn't working, I tried to gather it from the text. But if you can edit the post to fix that image, I'll take another look.

Will fix the typo, good catch.
I think you're right about keeping "Select Active Camera". It could take the spot of "Select All Children".
I like your idea of having a dynamic drop-down of other cameras, will definitely add that.

I could rotate the up/down and left/right positions so Select All goes back on top. Will think about it, but no promises. On one hand, reducing how much I piss off existing users seems wise. On the other hand, I do feel like having the most commonly used operator on the right is the most intuitive if you don't have pre-existing bias.

As for putting a million buttons on the top level, this is really not what pie menus are good at. This would look and feel infinitely better in a regular, rectangular pop-up panel. The strength of pie menus is gestures. If we need more selection operators to be accessible with gestures, I'd rather consider sub-pies or more pies on different shortcuts. The drop-down that's in there now is an exception I was willing to make because I find Blender's built-in selection menu a bit disorganized.

I actually think a rectangular pop-up menu would be a cool idea with how many selection operations there are, but for the moment I'm gonna say this is out of scope for the add-on.

I would have nothing against adding another pie dedicated to just the Select Loop menu's 4 entries. It's just a matter of finding a shortcut for it. It could also be a sub-pie, since mesh edit mode still has an available empty space. I'll think about that. Lmk if you have any thoughts on that.

Thanks for the feedback! Although your first image isn't working, I tried to gather it from the text. But if you can edit the post to fix that image, I'll take another look. Will fix the typo, good catch. I think you're right about keeping "Select Active Camera". It could take the spot of "Select All Children". I like your idea of having a dynamic drop-down of other cameras, will definitely add that. I could rotate the up/down and left/right positions so Select All goes back on top. Will think about it, but no promises. On one hand, reducing how much I piss off existing users seems wise. On the other hand, I do feel like having the most commonly used operator on the right is the most intuitive if you don't have pre-existing bias. As for putting a million buttons on the top level, this is really not what pie menus are good at. This would look and feel infinitely better in a regular, rectangular pop-up panel. The strength of pie menus is gestures. If we need more selection operators to be accessible with gestures, I'd rather consider sub-pies or more pies on different shortcuts. The drop-down that's in there now is an exception I was willing to make because I find Blender's built-in selection menu a bit disorganized. I actually think a rectangular pop-up menu would be a cool idea with how many selection operations there are, but for the moment I'm gonna say this is out of scope for the add-on. I would have nothing against adding another pie dedicated to just the Select Loop menu's 4 entries. It's just a matter of finding a shortcut for it. It could also be a sub-pie, since mesh edit mode still has an available empty space. I'll think about that. Lmk if you have any thoughts on that.
Demeter Dzadik added 3 commits 2024-09-06 00:04:47 +02:00
Author
Collaborator

Addressed the parts of your feedback that I agreed with, including putting Select All back on top. Updated PR description including images. I'm pretty happy with this, so I'll merge this in a few days if there's no further feedback.


I would have nothing against adding another pie dedicated to just the Select Loop menu's 4 entries. It's just a matter of finding a shortcut for it. It could also be a sub-pie, since mesh edit mode still has an available empty space.

Again, lmk if you have any thoughts on this!

Addressed the parts of your feedback that I agreed with, including putting Select All back on top. Updated PR description including images. I'm pretty happy with this, so I'll merge this in a few days if there's no further feedback. --- > I would have nothing against adding another pie dedicated to just the Select Loop menu's 4 entries. It's just a matter of finding a shortcut for it. It could also be a sub-pie, since mesh edit mode still has an available empty space. Again, lmk if you have any thoughts on this!
Contributor

Addressed the parts of your feedback that I agreed with, including putting Select All back on top.

Thank you very much for this.

I would have nothing against adding another pie dedicated to just the Select Loop menu's 4 entries. It's just a matter of finding a shortcut for it. It could also be a sub-pie, since mesh edit mode still has an available empty space.

I think there are now a lot of pies, I don't think there should me more tbh.

But I would be happy to see a sub-pie to select Loops and Rings on the Mesh Select pie menu. 👍

> Addressed the parts of your feedback that I agreed with, including putting Select All back on top. Thank you very much for this. > I would have nothing against adding another pie dedicated to just the Select Loop menu's 4 entries. It's just a matter of finding a shortcut for it. It could also be a sub-pie, since mesh edit mode still has an available empty space. I think there are now a lot of pies, I don't think there should me more tbh. But I would be happy to see a sub-pie to select Loops and Rings on the Mesh Select pie menu. 👍
Demeter Dzadik force-pushed selection_pies from 8ca070c9af to 48353b37bd 2024-09-08 04:26:14 +02:00 Compare
Demeter Dzadik added 1 commit 2024-09-08 04:43:31 +02:00
Author
Collaborator

Added the Select Loops sub-pie, updated PR description accordingly, but putting the image of the sub-pie here:
image

Will likely publish with the next version on Sunday evening.

Added the Select Loops sub-pie, updated PR description accordingly, but putting the image of the sub-pie here: ![image](/attachments/269a2205-d22b-43c4-849b-28c043a21f28) Will likely publish with the next version on Sunday evening.
Demeter Dzadik force-pushed selection_pies from 75a87cb5eb to b5288e7d81 2024-09-08 04:47:40 +02:00 Compare
Demeter Dzadik merged commit ca162788dd into main 2024-09-08 13:06:57 +02:00
Demeter Dzadik deleted branch selection_pies 2024-09-08 13:06:58 +02:00
Sign in to join this conversation.
No reviewers
No Milestone
No project
No Assignees
2 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: extensions/space_view3d_pie_menus#21
No description provided.