Re: NSWindow - Sheets - background alpha value
Re: NSWindow - Sheets - background alpha value
- Subject: Re: NSWindow - Sheets - background alpha value
- From: PGM <email@hidden>
- Date: Sun, 25 Nov 2007 23:31:13 +0100
On 25-Nov-07, at 22:56 PM, Ricky Sharp wrote:
On Nov 25, 2007, at 3:22 PM, PGM wrote:
How do I override the Leopard defaults to display sheets with an
alpha of 1.0?
My application uses a lot of NSWindow sheets - for a good reason.
I do NOT want a semi-transparent background, nor do my users.
Make the contentView of your window a custom view where you fill
the rect with a solid colour. I actually used this to get rid of
the pinstripes in Tiger, and it is not transparent in Leopard. I
post the code down here, though that might be superfluous as it is
really simple.
Cheers, Patrick
@interface PMPanelBackgroundView : NSView {
}
@end
#import "PMPanelBackgroundView.h"
@implementation PMPanelBackgroundView
- (void)drawRect:(NSRect)rect
{
[[NSColor colorWithCalibratedWhite:0.9337 alpha:0.98] set];
NSRectFill(rect);
}
@end
If the goal here is to be 98% opqaue, you'll want to use
NSRectFillUsingOperation instead. Otherwise, to reinforce the fact
that total opaqueness is desired, just set the alpha to 1.0.
I just copied the code from my app and forgot to change the alpha to
one to match Keith's question. I actually don't remember whether my
goal was 98% opaque, it's a while since I wrote this.
Patrick
_______________________________________________
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