X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/77ffb5937e89927b621128789401db8921fe580f..74e0e33a85ab0514dd1c0a750d694da1f3a28f08:/include/wx/cocoa/NSApplication.h?ds=sidebyside diff --git a/include/wx/cocoa/NSApplication.h b/include/wx/cocoa/NSApplication.h index 77d0142648..112b9ce75d 100644 --- a/include/wx/cocoa/NSApplication.h +++ b/include/wx/cocoa/NSApplication.h @@ -6,25 +6,63 @@ // Created: 2004/01/26 // RCS-ID: $Id$ // Copyright: (c) 2003,2004 David Elliott -// Licence: wxWidgets licence +// Licence: wxWindows licence /////////////////////////////////////////////////////////////////////////////// #ifndef _WX_COCOA_NSAPPLICATION_H__ #define _WX_COCOA_NSAPPLICATION_H__ +#include "wx/cocoa/objc/objc_uniquifying.h" + // ======================================================================== // wxNSApplicationDelegate // ======================================================================== +/*! + @class wxNSApplicationDelegate + @discussion Implements an NSApplication delegate which can respond to messages sent by Cocoa to change Cocoa's behaviour. + + wxCocoa will set a singleton instance of this class as the NSApplication delegate upon startup unless wxWidgets is running + in a "plugin" manner in which case it would not be appropriate to do this. + + Although Cocoa will send notifications to the delegate it is also possible to register a different object to listen for + them. Because we want to support the plugin case, we use a separate notification observer object when we can. +*/ @interface wxNSApplicationDelegate : NSObject { } // Delegate methods - (BOOL)applicationShouldTerminateAfterLastWindowClosed:(NSApplication *)theApplication; +@end // interface wxNSApplicationDelegate : NSObject +WX_DECLARE_GET_OBJC_CLASS(wxNSApplicationDelegate,NSObject) + +// ======================================================================== +// wxNSApplicationObserver +// ======================================================================== +/*! + @class wxNSApplicationObserver + @discussion Observes most notifications sent by the NSApplication singleton. + + wxCocoa will create a singleton instance of this class upon startup and register it with the default notification center to + listen for several events sent by the NSApplication singleton. + + Because there can be any number of notification observers, this method allows wxCocoa to function properly even when it is + running as a plugin of some other (most likely not wxWidgets) application. +*/ +@interface wxNSApplicationObserver : NSObject +{ +} + +// Methods defined as (but not used here) as NSApplication delegate methods. - (void)applicationWillBecomeActive:(NSNotification *)notification; - (void)applicationDidBecomeActive:(NSNotification *)notification; - (void)applicationWillResignActive:(NSNotification *)notification; - (void)applicationDidResignActive:(NSNotification *)notification; -@end // interface wxNSApplicationDelegate : NSObject +- (void)applicationWillUpdate:(NSNotification *)notification; + +// Other notifications +- (void)controlTintChanged:(NSNotification *)notification; +@end // interface wxNSApplicationObserver : NSObject +WX_DECLARE_GET_OBJC_CLASS(wxNSApplicationObserver,NSObject) #endif //ndef _WX_COCOA_NSAPPLICATION_H__