← Back to team overview

kicad-developers team mailing list archive

Re: Indication of modifier buttons to tools and dialogs

 

Yes, that's what I meant, it would be for the current mode, and would
change based on what you are doing.  It would also be hide-able so that
advanced users get the screen real estate back.

There are no problems with combined modifiers, you just list each action in
a different box.  In fact, you could even have the modifiers change the
box, so when you hold down the Ctrl key, it shows you exactly what will
happen when you do various things with it held down

Maybe once I have some more things done off my to-do list I will spend some
more time making a mockup of this.

Best,
Jon

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

> Yes, you are correct, but putting the buttons and their function in the
> same box would get problems with combined modifiers shift+ctrl options etc.
>
> But I was thinking of only showing current mode and not all possible modes
> at the same time. Mostly you would learn them anyway kinda quick, you would
> only need to know they can be learned. by indicating which buttons are
> available as modifiers in this tool.
>
> On 03/15/2017 02:54 PM, Jon Evans wrote:
>
>> 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.
>>
>> -Jon
>>
>> On Wed, Mar 15, 2017 at 8:36 AM, Kristoffer Ödmark
>> <kristofferodmark90@xxxxxxxxx <mailto: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>
>>         <mailto: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>
>>                 <mailto: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>
>>                     <https://launchpad.net/~kicad-developers
>>         <https://launchpad.net/~kicad-developers>>
>>                     Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>>         <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
>>                     <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx
>>         <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>>
>>                     Unsubscribe :
>>         https://launchpad.net/~kicad-developers
>>         <https://launchpad.net/~kicad-developers>
>>                     <https://launchpad.net/~kicad-developers
>>         <https://launchpad.net/~kicad-developers>>
>>                     More help   : https://help.launchpad.net/ListHelp
>>         <https://help.launchpad.net/ListHelp>
>>                     <https://help.launchpad.net/ListHelp
>>         <https://help.launchpad.net/ListHelp>>
>>
>>
>>             --
>>              -Kristoffer
>>
>>             _______________________________________________
>>             Mailing list: https://launchpad.net/~kicad-developers
>>         <https://launchpad.net/~kicad-developers>
>>             <https://launchpad.net/~kicad-developers
>>         <https://launchpad.net/~kicad-developers>>
>>             Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>>         <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
>>             <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx
>>         <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>>
>>             Unsubscribe : https://launchpad.net/~kicad-developers
>>         <https://launchpad.net/~kicad-developers>
>>             <https://launchpad.net/~kicad-developers
>>         <https://launchpad.net/~kicad-developers>>
>>             More help   : https://help.launchpad.net/ListHelp
>>         <https://help.launchpad.net/ListHelp>
>>             <https://help.launchpad.net/ListHelp
>>         <https://help.launchpad.net/ListHelp>>
>>
>>
>>
>>     --
>>      -Kristoffer
>>
>>
>>
> --
>  -Kristoffer
>

Follow ups

References