Hi Florian,

You can't do custom drawing this way (because the IKImageBrowserView renders 
into an openGL surface, so AppKit or CoreGraphics calls won't do anything).
So to do what you want you can either:
- make the view layer backed and add a sub-layer
- add an overlay transparent window on top of the image browser view
- add an overlay layer with setForegroundLayer: (that's the easiest solution 
but it is SnowLeopard only).

-- Thomas


On Nov 25, 2009, at 2:34 PM, Florian Soenens wrote:

> Hi list,
> 
> i'm trying to override an IKImageBrowserView to do some custom drawing but 
> i'm stuck.
> What i try to accomplish is that when the view contains zero items, some 
> custom drawing happens like drawing an NSAttributedString that says "Drop 
> items here..."
> Problem is that my drawing code gets never called.
> 
> Here's the drawRect method of my IKImageBrowserView:
> 
> - (void)drawRect:(NSRect)rect
> {
>       [super drawRect:rect];
>       
>       NSUInteger numItems = [[self dataSource] 
> numberOfItemsInImageBrowser:self];
>       
>       if(numItems <= 0)
>       {
>               NSLog(@"No items in me"); // This gets called, so i'm sure the 
> above code works
>               
>               NSRect bounds = [self bounds];
>               bounds.size.width = 200;
>               bounds.size.height = 200;
>               bounds.origin.x += 200;
>               bounds.origin.y += 200;
>               
>               //[NSGraphicsContext saveGraphicsState];
>               
>               [[NSColor yellowColor] set]; // Just for testing purposes
>               NSRectFill(bounds);
>               
>               //[NSGraphicsContext restoreGraphicsState];
>       }
> }
> 
> Uncommenting the NSGrahicsContext doesn't help either.
> 
> Anyone has any ideas or workarounds for this?
> Thanks in advance,
> Florian
> _______________________________________________
> 
> 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/tgoossens%40mac.com
> 
> This email sent to tgooss...@mac.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