Hi Fred,
I am still trying to get my apps to work under GNUstep. I have already worked
around a couple of incompatibilities between Cocoa and GNUstep that caused
trouble.
I now ended up at the following problem:
I have some NSView subclass on a window
ValueElementCarrier : ElementCarrier : ComponentCarrier :
ControlCarrier : NSView
ValueElementCarrier has a subview
FormTextField : NSTextField
over its complete rect.
@implementation FormTextField
- (void)mouseDown:(NSEvent *)theEvent
{
NSLog(@"%@ mouseDown ..", self);
...
[super mouseDown:theEvent];
}
- (BOOL)becomeFirstResponder
{
BOOL result = ([(FBFormWindow *)[self window] designMode] ? NO : [super
becomeFirstResponder]);
NSLog(@"%@ becomeFirstResponder %d", self, result);
return result;
}
- (BOOL)acceptsFirstMouse: (NSEvent*)theEvent
{
BOOL result = [super acceptsFirstMouse:theEvent];
NSLog(@"%@ acceptsFirstMouse %d", self, result);
return result;
}
@end
When I click on this FormTextField on MacOSX I get
13/05/20 17:23:40,783 InterfaceBuilder[93679]: <FormTextField: 0x102cd30>
acceptsFirstMouse 1
13/05/20 17:23:40,783 InterfaceBuilder[93679]: <FormTextField: 0x102cd30>
becomeFirstResponder 0
13/05/20 17:23:40,784 InterfaceBuilder[93679]: <FormTextField: 0x102cd30>
mouseDown ..
When I do the same on GNUstep I get
13/05/20 17:23:40,783 InterfaceBuilder[93679]: <FormTextField: 0x102cd30>
becomeFirstResponder 0
but no call of acceptsFirstMouse and no call of mouseDown!? This renders my up
inoperable! :-(
Any idea? Should this behaviour be fixed in GNUstep (handled equally)?
Thanks,
Andreas