On Tue, Mar 31, 2009 at 07:37:03PM +0100, Mic Pringle wrote: > Hi, > > I have subclassed NSCell and implemented only the following method ... > > - (void)drawWithFrame:(NSRect)cellFrame inView:(NSView *)controlView > { > NSImage *separator = [NSImage imageNamed:@"Separator.png"]; > [separator setScalesWhenResized:YES]; > [separator setFlipped:YES]; > NSGraphicsContext *context = [NSGraphicsContext currentContext]; > [context saveGraphicsState]; > NSImageInterpolation interpolation = [context imageInterpolation]; > [context setImageInterpolation:NSImageInterpolationHigh]; > [separator setSize:NSMakeSize(cellFrame.size.width, 2.0f)]; > [separator drawInRect:NSMakeRect(cellFrame.origin.x, > cellFrame.size.height - 10.0f, cellFrame.size.width, 2.0f) > fromRect:NSZeroRect > operation:NSCompositeSourceOver > fraction:1.0f]; > [context setImageInterpolation:interpolation]; > [context restoreGraphicsState]; > } > > I have then subclassed NSTableView and set the dataCell of the first > column to the above subclass. > > All works fine, except for the fact that the image drawn (separator) > in the drawWithFrame method is only drawn in the very first cell. I > have three rows displayed in the table view, and can clarify this as I > can click on them and get the blue highlight. > > Any ideas as to why this would only draw the first cell and not all three ?
Your y coordinate is based off of the height instead of the top; see NSMin/NSMaxY. -Ben _______________________________________________ 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