On Thu, Mar 4, 2010 at 5:39 AM, Eric Gorr <mail...@ericgorr.net> wrote: > The only method (currently) for closing the panel which seems difficult to > determine is whether or not the user has clicked in the close (red) button. > However, it does appear that -windowShouldClose: is the easiest way to do it.
It might be the easiest, but it seems to me like you might want a more general-purpose solution, rather than reimplementing the same logic in every panel's delegate. // Warning, typed in mail. Probably won't work. @interface MyPanel : NSPanel { BOOL saveVisibility; } @implementation MyPanel - (void)writePreferredVisibilityToUserDefaults:(BOOL)shouldBeVisible { // ... } - (void)orderWindow:(NSWindowOrderingMode)order relativeTo:(NSInteger)windowNum { if (order != NSWindowOut) [self writePreferredVisibilityToUserDefaults:YES]; [super orderWindow:order relativeTo:windowNum]; } - (void)performClose:(id)sender { saveVisibility = YES; [super performClose:sender]; } - (void)close { if (saveVisibility) [self writePreferredVisibilityToUserDefaults:NO]; [super close]; } --Kyle Sluder _______________________________________________ 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