8 Replies Latest reply on Jun 7, 2018 3:42 PM by Dan Pihlaja

    Opinions... Context-sensitive shortcut keys?

    Josh Brady

      So we already have context-sensitive menus for part/assembly/sketch/drawing.  What would be your opinion on context-sensitive shortcut keys? 


      For example, I've created my own sorta context sensitive keys by mapping a macro to a shortcut.  Both functions are sorta conceptually the same... if a sketch is active,  it adds a coincident or collinear constraint.  If not, it checks to see if an assembly is active, in which case it adds a coincident mate.  I have corresponding macros for concentric and parallel mates. 


      I've also found myself wishing I could map "Mirror feature" and "Mirror sketch" to the same shortcut, again just depending on whether or not a sketch is active.  Of course, I could always write another macro, but I think it would be nice to be able to do through the UI.


      Too confusing?

        • Re: Opinions... Context-sensitive shortcut keys?
          Kevin Chandler

          I've been using the "S" shortcut menu more and more to get around this limitation.

          Not quite the same, but then again, all I have to remember is "S", and some days, that's...

          • Re: Opinions... Context-sensitive shortcut keys?
            Deepak Gupta

            I would be interested to see this. I know this might be little confusing in the start but being able to mirror sketch or entity, feature, part, etc. with same key would be so cool!!

            • Re: Opinions... Context-sensitive shortcut keys?
              Ryan Navarro

              That would be a nice enhancement!  I would have to use less key modifiers then (SHIFT+ key, CTRL+key) etc


              Since it could be somewhat confusing with the commands switching, this ties into another idea I had- that it would also be great to have some kind of option to permanently or temporarily overlay the shortcut commands on the icons (like mockup below)

              Or maybe more like what MS Office does when you hit the Alt+ key, a temporary overlay

              For some of those obscure commands I end up needing a reminder of what my shortcut keys are.

              • Re: Opinions... Context-sensitive shortcut keys?
                Kevin Chandler

                Now I'm wondering if https://www.autohotkey.com/ can come to the rescue.

                • Re: Opinions... Context-sensitive shortcut keys?
                  Dan Pihlaja

                  Well...you are right.  Mouse gestures are sort of context sensitive.  If you are in a drawing, you can get different gestures than when you are in a part.

                  On my SpaceMouse Pro, the buttons change depending on which area of Solidworks I am in (just like the Mouse Gestures).


                  Although Keyboard are "Sort of" context sensitive.   Example:


                  See the two pictures below.  The first one is in an assembly and the 2nd one is in a part.  So we know that there is some changing going on when we switch between assembly and part.



                  The item changed for the keyboard shortcut.


                  Although now that I am looking....that might be the only one.  LOL


                  I thought that maybe if I assigned a shortcut to a command from the part level that isn't available at the assembly level, then it would let me re-use the shortcut.....but it doesn't.  It won't let me use the shortcut without re-assigning it.


                  Here is one interesting thing that I found though.   To test the above out, at the part level, I assigned Move/Copy Bodies to SHIFT M (because I knew that this command is not available at the assembly level).  Then I switched to an assembly and looked at my keyboard shortcuts.   Although SHIFT M is not available to assign because it is already assigned....it does not show up in the keyboard shortcuts as an assigned key when I am looking at it from the assembly level.  I think that the interface would do better if it were similar to the Mouse Gestures interface....with a separate assignation for each area that you are in (with it greyed out if a particular function is not available in a particular are of Solidworks).