+ m_wxCocoaInterface = NULL;
+ return [super init];
+}
+
+- (void)setWxCocoaInterface: (wxCocoaNSWindow *)wxCocoaInterface
+{
+ m_wxCocoaInterface = wxCocoaInterface;
+}
+
+- (wxCocoaNSWindow *)wxCocoaInterface
+{
+ return m_wxCocoaInterface;
+}
+
+// Delegate message handlers
+- (void)windowDidBecomeKey: (NSNotification *)notification
+{
+ wxCocoaNSWindow *win = wxCocoaNSWindow::GetFromCocoa([notification object]);
+ wxASSERT(win==m_wxCocoaInterface);
+ wxCHECK_RET(win,wxT("notificationDidBecomeKey received but no wxWindow exists"));
+ win->CocoaDelegate_windowDidBecomeKey();
+}
+
+- (void)windowDidResignKey: (NSNotification *)notification
+{
+ wxCocoaNSWindow *win = wxCocoaNSWindow::GetFromCocoa([notification object]);
+ 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();