[Suggestion] Pie-Menu improvement(s)

Report observations made with the new Toponaming branch.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
User avatar
Petrikas
Posts: 122
Joined: Sat Dec 05, 2020 8:05 pm

[Suggestion] Pie-Menu improvement(s)

Post by Petrikas »

Hello,

Been waiting for a Link branch section for quite a while. Opening new bug/issue tickets for small improvements on GitHub felt a big excessive, it's nice that there's a place for such things now.

Now, I've been using pie menus since forever (~ year 2012? In Maya they were called Marking Menus as far as I remember), and every software that eventually gets this functionality, improves my workflow 5-fold.

Including FreeCAD Link! The existence of Pie-Menus is great, I'm currently trying to get as much functionality from them as possible. There are a few shortcomings though, some of them might be an easy fix (I keep saying that, but it's never the case)

1. Accessing the Pie Menu.
Currently a pie menu is accessing by 'clicking' a button. It's OK, but pie-menus should be gesture-based. Something that doesn't require too much thought. And gestures are usually performed when paired with an "Activate gestures" button. A button that you click-and-hold and perform a gesture.

So, for example, if the Q button opens a pie menu that changes the View of the viewport:

Currently:
Press and Depress Release Q button, perform 'gesture'. X amount of time passes. Something happens.

Should be:
Press (and hold) Q, perform 'gesture', Release Q. Something happens (immediately after release of Q).

From a UX standpoint, you want something to happen after your direct input (Moving your mouse is a very 'weak' input, as it isn't exact, it doesn't have a start or a finish, it doesn't "click").

Pushing a keyboard button (and holding), moving the mouse and releasing the button, subliminally, also feels like 1 action that you perform with both hands. Because it happens at the same time.

Whereas pushing and releasing a button with one hand, then performing a gesture with the other feels like 2 actions (requires some coordination)

The click-hold-move-release also used by (not limited to, but just the ones I'm aware of):
Blender
Maya
Fusion 360
(outside software)
MX Master
Doom Eternal (gestures are gestures!)(Also the only game I play :D )

Lastly, this type of gesturing allows second-level menus (which I don't think we're ready for yet) in the future, so it would be nice to start building muscle memory already.

I would like to continue this thread, if my suggested features are implemented. There are a lot of ways we can improve and make the Pie menu even more usable and intuitive! Once again, I cannot express my gratitude enough, simply for the fact itself, that the pie menus exist in this software already. These are just suggestions and they shouldn't be taken as something that "needs to be implemented, or else".

Thank you for coming to my TED talk.
Last edited by Petrikas on Tue Apr 19, 2022 4:53 pm, edited 1 time in total.
I sometimes make FreeCAD Tutorials | VertUI | MidnightUI
User avatar
bambuko
Veteran
Posts: 2169
Joined: Thu Oct 24, 2019 12:53 pm
Location: UK, England, North Devon

Re: [Suggestion] Pie-Menu improvement(s)

Post by bambuko »

If I understand it correctly at the moment I can assign a shortcut only to my own custom menus, but not to standard toolbar menus?

I have assigned Q as a shortcut to my own personal global menu- the behaviour is (at least for me) as follows:

press Q once - pie menu shows
click the mouse anywhere away from pie menu - pie menu disappears

so I don't understand this business of
"...Press and Depress Q button, perform 'gesture'. X amount of time passes. Something happens..."
this is not what happens when I try it?

BTW is it possible to have standard toolbars as pie menus?
I am using Link branch and Assembly3
you can also download ... and try it here
excellent Assembly3 tutorials here
User avatar
adrianinsaval
Veteran
Posts: 5541
Joined: Thu Apr 05, 2018 5:15 pm

Re: [Suggestion] Pie-Menu improvement(s)

Post by adrianinsaval »

press and depress refers to pressing and then letting go of the key, as opposed to the proposed behavior of holding the key to keep the pie menu open. the gesture is the movement of the mouse towards the desired pie menu item.
edwilliams16
Veteran
Posts: 3112
Joined: Thu Sep 24, 2020 10:31 pm
Location: Hawaii
Contact:

Re: [Suggestion] Pie-Menu improvement(s)

Post by edwilliams16 »

adrianinsaval wrote: Mon Apr 18, 2022 8:01 pm press and depress refers to pressing and then letting go of the key
Ah! In English, press and depress mean the same thing - almost, depress means press downward. What you meant was press and release.
User avatar
adrianinsaval
Veteran
Posts: 5541
Joined: Thu Apr 05, 2018 5:15 pm

Re: [Suggestion] Pie-Menu improvement(s)

Post by adrianinsaval »

yeah it looked weird to me when I read it but I figured from context that's what he meant.
Anyways, I think I agree that holding the key and performing the action on release would be a better behavior for consistency with other apps.
User avatar
bambuko
Veteran
Posts: 2169
Joined: Thu Oct 24, 2019 12:53 pm
Location: UK, England, North Devon

Re: [Suggestion] Pie-Menu improvement(s)

Post by bambuko »

edwilliams16 wrote: Tue Apr 19, 2022 3:42 pm ... In English, press and depress mean the same thing....
now you are making sense :P
when I said press once = press and release

adrianinsaval wrote: Tue Apr 19, 2022 3:58 pm ...I think I agree that holding the key and performing the action on release would be a better behavior for consistency with other apps.
I don't use other apps, so have no pre-conceived ideas on how it should behave.
I am just confused by all you guys talking about the same thing and meaning something different :mrgreen: :lol:

so we have:
press once
press and release
holding the key and performing the action on release
'clicking' a button

my head is spinning :oops:
I am using Link branch and Assembly3
you can also download ... and try it here
excellent Assembly3 tutorials here
User avatar
Petrikas
Posts: 122
Joined: Sat Dec 05, 2020 8:05 pm

Re: [Suggestion] Pie-Menu improvement(s)

Post by Petrikas »

Inflammable means flammable!?
I sometimes make FreeCAD Tutorials | VertUI | MidnightUI
User avatar
bambuko
Veteran
Posts: 2169
Joined: Thu Oct 24, 2019 12:53 pm
Location: UK, England, North Devon

Re: [Suggestion] Pie-Menu improvement(s)

Post by bambuko »

No - blame Latin for this particular confusion ;)
I am using Link branch and Assembly3
you can also download ... and try it here
excellent Assembly3 tutorials here
User avatar
adrianinsaval
Veteran
Posts: 5541
Joined: Thu Apr 05, 2018 5:15 pm

Re: [Suggestion] Pie-Menu improvement(s)

Post by adrianinsaval »

Petrikas wrote: Tue Apr 19, 2022 4:50 pm Inflammable means flammable!?
:lol: :lol: :lol: :lol:
Attachments
proxy-image.jpg
proxy-image.jpg (77 KiB) Viewed 1707 times
User avatar
onekk
Veteran
Posts: 6149
Joined: Sat Jan 17, 2015 7:48 am
Contact:

Re: [Suggestion] Pie-Menu improvement(s)

Post by onekk »

Petrikas wrote: Tue Apr 19, 2022 4:50 pm Inflammable means flammable!?
Yes, but probably you have to not blame Latins for this, as probably is some late modifications, of language.

A little example in latin bird is "Avis" that became "avicellum" to mean "little bird" and in Italian it ìbecame "uccello" to indicate the class and the "normal sized" animal, very strange, but you have also "French" and Spanish, and Portuguese and Romanian (that derive some of his term from latin), (Plus many terms that migrates from Latin to English and German, only to say some most spoken languages).

So not every "latin sounding" word could be directly coupled with "classical latin".

An example "senior" and "junior" are latin terms for "older" and "younger" and here in Italy many pronunce them as an "english term" ignoring that they are "standard latin word".

Same for "nike" that is the greek term for "victory" and is pronunced "english like".

But this is clearly OT.

Sorry for bothering

Regards

Carlo D.
GitHub page: https://github.com/onekk/freecad-doc.
- In deep articles on FreeCAD.
- Learning how to model with scripting.
- Various other stuffs.

Blog: https://okkmkblog.wordpress.com/
Post Reply