← Back to team overview

kicad-developers team mailing list archive

Re: Indication of modifier buttons to tools and dialogs


Hi Kristoffer,

I didn't show in my mockup, but you could easily use a UI like this to show
modifier keys info as well.


On Wed, Mar 15, 2017 at 8:36 AM, Kristoffer Ödmark <
kristofferodmark90@xxxxxxxxx> wrote:

> Hello Jon,
> I do not think that the hotkeys are a problem. The right-click menu shows
> how they are bound already and the right click menu is adaptable. I
> personally like the way that works a lot.
> It is more a problem regarding the modifiers, Ie buttons that must be held
> while doing something, they are not selecting stuff, but modifiying already
> existing functionality, usually slightly.
> - Kristoffer
> On 03/15/2017 02:29 PM, Jon Evans wrote:
>> Hi Kristoffer, John,
>> I agree this is an important problem to solve.
>> I am not convinced that this is the perfect solution, but I wanted to
>> share a way a commercial tool does it.
>> Here's a screenshot from Mentor Graphics Xpedition showing what I mean:
>> http://i.imgur.com/H0wDK0F.png
>> At the bottom of the screen is a list of keyboard shortcuts, that change
>> based on what you are doing.  So, when you are in "place components"
>> mode the list is different than if you are routing a track, for
>> example.  The developers chose the most common things to do for each
>> "tool" that can be active, and assigned them to function-keys.
>> Note that in Xpedition, the hotkeys themselves change, i.e. the icons on
>> the bottom of the screen always correspond to the function keys F1-F12.
>> But, even without adopting that scheme (which would conflict with some
>> of our existing hotkeys), we could use the UI concept of a larger "quick
>> reference" to hotkeys (I'm including mouse actions in the definition of
>> hotkeys here) at the bottom of the screen, for example a quick mockup:
>> http://i.imgur.com/wB0Yecy.png
>> Then we would just need to define up to N hotkeys for each tool / tool
>> mode that should be hinted to the user. (Where N is some number that
>> looks not too cramped)
>> -Jon
>> On Wed, Mar 15, 2017 at 7:11 AM, Kristoffer Ödmark
>> <kristofferodmark90@xxxxxxxxx <mailto:kristofferodmark90@xxxxxxxxx>>
>> wrote:
>>     Yes, the status line is way to small it. However it could maybe be
>>     used to show which modifiers are in use. Not what they do.
>>     I believe that knowing which modifiers are in use would be enough,
>>     because many modifiers would probably be very self explanatory once
>>     activated, for example the angle-snap, having a grid snap etc.
>>     Then the idea of having an explanatory panel available somehow
>>     on-demand would probably be best.
>>     Attached is an idea mockup for putting on the left side in the
>>     status line.
>>     It shows when the arc tool is active and has ctrl and shift modifers
>>     where ctrl is currently held and angle snap-active.
>>     On 03/15/2017 12:11 PM, John Beard wrote:
>>         Hi Kristoffer,
>>         I agree that the "secrecy" of KiCad shortcuts is a pretty major
>>         issue.
>>         It serves to make people good at KiCad think it's great, while new
>>         users struggle (probably in silence) because they don't know
>>         there's a
>>         better way.
>>         Expanding documentation is important here (he says, not having
>>         documented his new features yet) but it's unreasonable to expect
>>         users
>>         to wade through hundreds of screens of prose to be told
>> incidentally
>>         that the arc tool snaps angles when you hold control.
>>         I certainly think some sort of easily accessible (at minimum
>>         hotkey +
>>         some sort of obvious visual affordance) method for a user to get
>>         contextual help is very important. Ideally something that doesn't
>>         break the user's flow. Popping a dialog that you have to dismiss
>>         is a
>>         little clunky, I feel. Perhaps some sort of panel that appears
>> only
>>         while you're holding a key down?
>>         I'm not a huge fan of the Inkscape-style status line, though it's
>>         certainly better than nothing. It feels squeezed to me, since the
>>         information is really more like a list of possible modifiers than
>> a
>>         one-liner. We do have a little area of the status bar that tells
>> you
>>         what tool you're in, but that's nowhere near big enough to naively
>>         plonk screeds of text.
>>         tl;dr agree but no ideas yet!
>>         Cheers,
>>         John
>>         On Wed, Mar 15, 2017 at 6:34 PM, Kristoffer Ödmark
>>         <kristofferodmark90@xxxxxxxxx
>>         <mailto:kristofferodmark90@xxxxxxxxx>> wrote:
>>             Hello all!
>>             I just wanted to highlight an emerging problem to catch it
>>             in its cradle.
>>             The new tool and dialog patches that has been merged are
>>             great. But they
>>             also introduce secret functionaly, examples:
>>             Ctrl + click:   highlights net ( modifier to select tool )
>>             ctrl + drag:    snap angles in arc tool
>>             shift + click:  adds/removes to selection in select mode
>>             shift + scroll: changes increment values in 3d-previewer
>>             These are the few examples I found right now, what I would
>>             like to see is a
>>             standardized way of informing the users to this before more
>>             tools get these
>>             hidden functionality.
>>             The way that current shortcuts are indicated I think are
>>             great ( the grey
>>             text next to their selection in menus Maybe we could expand
>>             on this to
>>             create tooltips to the menus with a list of modifier keys
>>             for the hovered
>>             tool in the menu.
>>             Another way that Gimp uses is to put this information at the
>>             bottom
>>             information bar, Maybe we could do that as well by modifying
>>             the current
>>             position information bar
>>             Yet another way would be to have tool specific settings
>>             given screen
>>             real-estate, much in the way of gimp and inkscape.
>>             At least I think this issue should be addressed and agreed
>>             upon before tools
>>             specify their different modifiers willy-nilly all over the
>>             place and you
>>             need a kicad-phd to remember them all. Just having an idea
>>             on how to do it
>>             can enable a good team-effort of supporting it.
>>             --
>>              -Kristoffer
>>             _______________________________________________
>>             Mailing list: https://launchpad.net/~kicad-developers
>>             <https://launchpad.net/~kicad-developers>
>>             Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>>             <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
>>             Unsubscribe : https://launchpad.net/~kicad-developers
>>             <https://launchpad.net/~kicad-developers>
>>             More help   : https://help.launchpad.net/ListHelp
>>             <https://help.launchpad.net/ListHelp>
>>     --
>>      -Kristoffer
>>     _______________________________________________
>>     Mailing list: https://launchpad.net/~kicad-developers
>>     <https://launchpad.net/~kicad-developers>
>>     Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>>     <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
>>     Unsubscribe : https://launchpad.net/~kicad-developers
>>     <https://launchpad.net/~kicad-developers>
>>     More help   : https://help.launchpad.net/ListHelp
>>     <https://help.launchpad.net/ListHelp>
> --
>  -Kristoffer

Follow ups