From 5aa417d57c50ec4caa6c1c62835731c4c0984a67 Mon Sep 17 00:00:00 2001 From: David Elliott Date: Tue, 26 Aug 2003 19:30:10 +0000 Subject: [PATCH] Send activate/deactivate events for become/resign key git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@23242 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- include/wx/cocoa/toplevel.h | 2 ++ src/cocoa/toplevel.mm | 22 +++++++++++++++++++--- 2 files changed, 21 insertions(+), 3 deletions(-) diff --git a/include/wx/cocoa/toplevel.h b/include/wx/cocoa/toplevel.h index 075d6dee87..6283dabdfb 100644 --- a/include/wx/cocoa/toplevel.h +++ b/include/wx/cocoa/toplevel.h @@ -62,6 +62,8 @@ public: virtual void Cocoa_close(void); virtual bool Cocoa_windowShouldClose(void); virtual void Cocoa_wxMenuItemAction(wxMenuItem& item); + virtual void CocoaNotification_DidBecomeKey(void); + virtual void CocoaNotification_DidResignKey(void); protected: void SetNSWindow(WX_NSWindow cocoaNSWindow); WX_NSWindow m_cocoaNSWindow; diff --git a/src/cocoa/toplevel.mm b/src/cocoa/toplevel.mm index 02a017515b..a3b1398a35 100644 --- a/src/cocoa/toplevel.mm +++ b/src/cocoa/toplevel.mm @@ -132,6 +132,22 @@ void wxTopLevelWindowCocoa::Cocoa_wxMenuItemAction(wxMenuItem& item) { } +void wxTopLevelWindowCocoa::CocoaNotification_DidBecomeKey(void) +{ + wxLogDebug("wxTopLevelWindowCocoa=%p::CocoaNotification_DidBecomeKey",this); + wxActivateEvent event(wxEVT_ACTIVATE, TRUE, GetId()); + event.SetEventObject(this); + GetEventHandler()->ProcessEvent(event); +} + +void wxTopLevelWindowCocoa::CocoaNotification_DidResignKey(void) +{ + wxLogDebug("wxTopLevelWindowCocoa=%p::CocoaNotification_DidResignKey",this); + wxActivateEvent event(wxEVT_ACTIVATE, FALSE, GetId()); + event.SetEventObject(this); + GetEventHandler()->ProcessEvent(event); +} + void wxTopLevelWindowCocoa::Cocoa_close(void) { m_closed = true; @@ -248,7 +264,7 @@ void wxTopLevelWindowCocoa::CocoaSetWxWindowSize(int width, int height) void wxTopLevelWindowCocoa::DoMoveWindow(int x, int y, int width, int height) { - wxLogDebug("wxTopLevelWindow=%p::DoMoveWindow(%d,%d,%d,%d)",this,x,y,width,height); +// wxLogDebug("wxTopLevelWindow=%p::DoMoveWindow(%d,%d,%d,%d)",this,x,y,width,height); NSRect cocoaRect = NSMakeRect(x,y,width,height); [m_cocoaNSWindow setFrame: cocoaRect display:NO]; @@ -261,7 +277,7 @@ void wxTopLevelWindowCocoa::DoGetSize(int *w, int *h) const *w=(int)cocoaRect.size.width; if(h) *h=(int)cocoaRect.size.height; - wxLogDebug("wxTopLevelWindow=%p::DoGetSize = (%d,%d)",this,(int)cocoaRect.size.width,(int)cocoaRect.size.height); +// wxLogDebug("wxTopLevelWindow=%p::DoGetSize = (%d,%d)",this,(int)cocoaRect.size.width,(int)cocoaRect.size.height); } void wxTopLevelWindowCocoa::DoGetPosition(int *x, int *y) const @@ -271,6 +287,6 @@ void wxTopLevelWindowCocoa::DoGetPosition(int *x, int *y) const *x=(int)cocoaRect.origin.x; if(y) *y=(int)cocoaRect.origin.y; - wxLogDebug("wxTopLevelWindow=%p::DoGetPosition = (%d,%d)",this,(int)cocoaRect.origin.x,(int)cocoaRect.origin.y); +// wxLogDebug("wxTopLevelWindow=%p::DoGetPosition = (%d,%d)",this,(int)cocoaRect.origin.x,(int)cocoaRect.origin.y); } -- 2.45.2