gnustep-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: ScrollWheel, Xdps and NSEvent modification


From: Richard Frith-Macdonald
Subject: Re: ScrollWheel, Xdps and NSEvent modification
Date: Sat, 2 Mar 2002 17:52:37 +0000

On Saturday, March 2, 2002, at 10:58 AM, Richard Frith-Macdonald wrote:


On Friday, March 1, 2002, at 09:21 AM, Richard Frith-Macdonald wrote:


So ... the method you are proposing has too few arguments, it needs to be -

+mouseEventWithType:location:modifierFlags:timestamp:windowNumber:context:
eventNumber:clickCount:pressure:deltaX:deltaY:deltaZ:

Actually, having looked at the latest MacOS-X stuff, it appears we need one more argument to specify the mouse button number (for input devices with more than
three buttons).

+mouseEventWithType:location:modifierFlags:timestamp:windowNumber:context:
eventNumber:clickCount:pressure:buttonNumber:deltaX:deltaY:deltaZ:

I guess it makes sense to make this a public method ... though we will
probably want to change it when Apple make their version public.

I've already modified NSEvent to change the click count field from an int to a short,and add a button number field. I don't think either the number of clicks or the number of buttons on a mouse is particularly likely to exceed
65535 :-)

I have also been through and documented most of the methods in NSEvent, and
corrected the exceptions being raised (most of them were wrong).

In doing so, I noticed that the archiving support for NSEvent is now broken
(I tagged that with FIXMEs).

I guess it's apparent from the above, that I think that the data structure needs to be extended to contain the delta values as well as the basic mouse
info - but I don't want to put work into fixing the coding/decoding and
the broken backend code until/unless we are all agreed on exactly what the
behavior should be.

Assuming their distributed headers are for real, the current MacOS code must either not work correctly for scrollwheels, or must be breaking the OpenStep API. It's my feeling that GNUstep should stick to stated policy, and support
both the new API and the old.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]