+ wxASSERT(win==m_wxCocoaInterface);
+ wxCHECK_RET(win,wxT("notificationDidResignKey received but no wxWindow exists"));
+ win->CocoaDelegate_windowDidResignKey();
+}
+
+- (void)windowDidBecomeMain: (NSNotification *)notification
+{
+ wxCocoaNSWindow *win = wxCocoaNSWindow::GetFromCocoa([notification object]);
+ wxASSERT(win==m_wxCocoaInterface);
+ wxCHECK_RET(win,wxT("notificationDidBecomeMain received but no wxWindow exists"));
+ win->CocoaDelegate_windowDidBecomeMain();
+}
+
+- (void)windowDidResignMain: (NSNotification *)notification
+{
+ wxCocoaNSWindow *win = wxCocoaNSWindow::GetFromCocoa([notification object]);
+ wxASSERT(win==m_wxCocoaInterface);
+ wxCHECK_RET(win,wxT("notificationDidResignMain received but no wxWindow exists"));
+ win->CocoaDelegate_windowDidResignMain();
+}
+
+- (BOOL)windowShouldClose: (id)sender
+{
+ wxLogTrace(wxTRACE_COCOA,wxT("windowShouldClose"));
+ wxCocoaNSWindow *tlw = wxCocoaNSWindow::GetFromCocoa(sender);
+ wxASSERT(tlw==m_wxCocoaInterface);
+ if(tlw && !tlw->CocoaDelegate_windowShouldClose())
+ {
+ wxLogTrace(wxTRACE_COCOA,wxT("Window will not be closed"));
+ return NO;
+ }
+ wxLogTrace(wxTRACE_COCOA,wxT("Window will be closed"));
+ return YES;