Names to use for 'more mouse buttons' ?
rickstockton at reno-computerhelp.com
Tue Aug 16 00:20:19 BST 2011
As you know already, here is the data field scheme:
There are two "available" bits within the current enum and flags. (Total
width 16 bits; 15 usable without creating a risk of interpretation as a
"sign" bit under certain compilers.) The first of these bits (x2000) is
used for raw Button #10, AKA the "Task" Button.
But the second available bit x4000, will be used to repesent a special
value of "button": "HigherButtonNumber". This value indicates that
(A) the event was caused by a "raw" Button number of 11, OR GREATER; and
(B) the 32-bit Button State Mask contains AT LEAST one such button.
But the Qt programmer will not have the actual Button number yet -- it
must be obtained by calling a new get() function, because
QMouseEvent::button() contains only "HigherButtonNumber."
---> What should be the name of this "upgraded" Qt::MouseButton enum,
and it's corresponding flags? (It's 32 bits wide, and programmers COULD
use the new one exclusively- the enum and function will handle all
buttons, #0 thru #31. But for BC purposes, it has to be a different enum.)
---> How do I add corresponding 'buttonByNumber() functions? (getter and
setter for use in test code). Or maybe -- as a matter of policy, does Qt
want to insist on a wordy enumeration, instead of integer math?? If it
is desirable what should the field name and function prototypes look like?
Do we agree that 3 mouse buttons in Qt5 is the WRONG roadmap, and that
you'd like me to continue trying to work through this?? If so, I feel
that 4.9 constitutes a good target. Once we have the buttons, we can do
some awesome shortcut tools, and create impressive and UI Kewl-ness.
Both within KDE, and within usercode written against the Qt and KDE
If you all think that we're already "world class" with only 3 buttons,
or 5 buttons, then please TELL ME: I'll shut up, go away, and stop
wasting everyone's time with this "issue." I've asked for some coaching
assistance several times, and the silence has been deafening -- if
that's been intended as a message, please tell me the message more directly.
Thanks either way!
More information about the kde-core-devel