Sony's Changes to GNUstep GUI Library: Adding Touch
blog.deliciousrobots.com
blog.deliciousrobots.com
I wonder if the straight reverse engineering/possible decompiling is why it was pulled so fast. Also, it's subtle, but there is a reason Apple didnt simply graft touch onto AppKit like this project is/was attempting.
// Adding and removing targets and actions
//- (void)addTarget:(id)targetaction:(SEL)action;
//- (void)removeTarget:(id)targetaction:(SEL)action;
// Adding and removing targets and actions
/***
- (void)addTarget:(id)targetaction:(SEL)action
{
}
- (void)removeTarget:(id)targetaction:(SEL)action
{
}
***/
This is an unused interface in SNGestureRecognizer. The name of one of the methods, addTarget, is the same as something from UIKit's UIControl. It's hardly a smoking gun, as it is unused and doesn't even match the method signature of the one from UIKit: - (void)addTarget:(id)target action:(SEL)action forEvents:(int)eventMask;
It's certainly not the result of a reverse engineering dump. If anything, Sony engineers thought for a second that they would mimic UIKit's interfaces and then quickly scrapped the idea. The other commented regions look like you might expect from a normal codebase: /*** Cannot assume touches will come simultaneously
// Not a valid pan if # of touches on view doesn't match
if ([touches count] != numberOfTouchesRequired ||
//[_view touchCount] != numberOfTouchesRequired)
[_hitTestedView touchCount] != numberOfTouchesRequired)
{
if (_state == SNGestureRecognizerStatePossible)
[self changeState: SNGestureRecognizerStateFailed];
else
[self changeState: SNGestureRecognizerStateCancelled];
return;
}
***/The naming in every place that it can is lifted directly from UIKit, and then their changes use different naming conventions. For example the new instance variables in NSView.h.
Where were the new instance variables in NSView.h copied from? I've been comparing them to class-dumps ( http://code.google.com/p/iphone-dev/source/browse/#svn/trunk... ) of Apple's code and I don't see anything like what you are describing. Care to show some examples?
That line (and the one later for previousLocationInView:) is straightforward "class-dump output". Did you bother to look at the file? :(