Discussion:
Keyboard shortcuts for (long) options menu
Jorge Arellano Cid
2012-11-01 06:41:58 UTC
Permalink
Hi there,

I Just committed a patch for those long option menus that take
a long time to scroll to the desired item.

It jumps to the next menuitem whose label starts with the
pressed key. If there's more than one item starting with the same
letter, it goes to the next one, then wraps.

This works when the OPTION menu is _focused_, not displayed.
FLTK has a hacked way of handling menus which will change in
FLTK3 [1] [2] (It still amazes me how some simple things can take
so much guess work with FLTK).

Making shortcuts work when the menu is displayed would involve
copying a lot of code and dealing with hackish FLTK internals,
which is not stable, and most probably not worth the effort. It
seems wiser to use this workaround until FLTK3 solves the problem
[2].

So far it works quite well for a page with a very long option
menu I happen to use very often. Please test.

How? just focus the option menu with two clicks (one popups,
the next one closes it, but leaving it focused), then press the
desired key (first letter of your item label), and voila.

BTW, I remember corvid made a comment on this long ago, but
couldn't find the post...

@corvid: you may feel like adding utf8 support.

HTH


[1] http://fltk.org/newsgroups.php?s1060+gfltk.general+v1070+T0+Qmenu+scrolling
[2] http://fltk.org/newsgroups.php?s1080+gfltk.general+v1087+T0+Qmenu+scrolling
--
Cheers
Jorge.-
corvid
2012-11-01 18:14:46 UTC
Permalink
Post by Jorge Arellano Cid
BTW, I remember corvid made a comment on this long ago, but
couldn't find the post...
This doesn't immediately sound familiar to me...
Jorge Arellano Cid
2012-11-01 19:37:03 UTC
Permalink
Post by corvid
Post by Jorge Arellano Cid
BTW, I remember corvid made a comment on this long ago, but
couldn't find the post...
This doesn't immediately sound familiar to me...
IIRC it was something along the lines of something you'd like to
have but had not time enough to devote to.
--
Cheers
Jorge.-
Loading...