Hi All,

I'm getting a 'EXC_BAD_ACCESS' error when calling the fill on a NSBezierPath.
Below is an outline of my code.


@interface Shape : NSObject {
        NSBezierPath *path;
}
- (void)paint;
@end

@implementation Shape
- (void) paint {
        [[NSColor redColor] set];
        [path fill];
}
@end

@interface Square : Shape <Moveable> {}
- (Square *) initSquare;
- (void)initBezierPath;
@end

@implementation Square
- (Square *) initSquare {
        self = [super init];
        if (self) {
                path = [[NSBezierPath alloc] init];             
                [self initBezierPath];
        }
        return self;
}
- (void) initBezierPath {
        path = [NSBezierPath bezierPathWithRoundedRect:NSMakeRect(0,0,10,10)
                                       xRadius:5
                                       yRadius:5];
        [path closePath];
}
@end

it works if I change initBezierPath content to:

path = [path init];
[path appendBezierPathWithRoundedRect:r
                              xRadius:5
                              yRadius:5];
[path closePath]; 

 From the main body I initialise a Square and call it's paint method in the 
drawRect method of an NSView.

Any help would be greatly appreciated.

Billy Flatman
b.flat...@googlemail.com


_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to