Re: Strange NSCell subclass issue ...
Re: Strange NSCell subclass issue ...
- Subject: Re: Strange NSCell subclass issue ...
- From: Benjamin Stiglitz <email@hidden>
- Date: Tue, 31 Mar 2009 14:54:36 -0400
- Mail-followup-to: email@hidden
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 (email@hidden)
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:
This email sent to email@hidden