, performClose: . close. windowShouldClose: IBAction. , .
@interface NSWindow (BorderlessClosing)
- (IBAction)performBorderlessClose:(id)sender;
@end
@implementation NSWindow (BorderlessClosing)
- (IBAction)performBorderlessClose:(id)sender {
if([[self delegate] respondsToSelector:@selector(windowShouldClose:)]) {
if(![[self delegate] windowShouldClose:self]) return;
} else if([self respondsToSelector:@selector(windowShouldClose:)]) {
if(![self windowShouldClose:self]) return;
}
[self close];
}
@end