Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to know when a Cocoa app is about to quit?

I have a NSDocument based application. I'd like to know when the application is about to quit to validate some things. I'd hoped there might be a method such as a applicationWillQuit, but looking through the docs for both NSDocument and NSApplication I can't find anything similar.

like image 431
Joey FourSheds Avatar asked Dec 20 '22 10:12

Joey FourSheds


1 Answers

There is a notification you can use coming from your NSApplication:

NSNotificationCenter* nc = [NSNotificationCenter defaultCenter];
 [nc addObserver:self 
        selector:@selector(appWillTerminate:) 
            name:NSApplicationWillTerminateNotification 
          object:nil];

This is documented here: https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/ApplicationKit/Classes/nsapplication_Class/Reference/Reference.html

By passing the object as nil your method is being called whenever an object fires the notification.

like image 159
guitarflow Avatar answered Jan 08 '23 09:01

guitarflow