X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/655719367ac5e131d9642e5783f3ecf64d1a3385..9e03e02d0ca493bc65f083600f1427d2ac8028ff:/src/mac/carbon/control.cpp diff --git a/src/mac/carbon/control.cpp b/src/mac/carbon/control.cpp index ba7d6a7a3c..2fc1cfed14 100644 --- a/src/mac/carbon/control.cpp +++ b/src/mac/carbon/control.cpp @@ -9,11 +9,11 @@ // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) #pragma implementation "control.h" #endif -#include "wx/defs.h" +#include "wx/wxprec.h" #include "wx/control.h" #include "wx/panel.h" @@ -31,9 +31,7 @@ #include "wx/sizer.h" #include "wx/stattext.h" -#if !USE_SHARED_LIBRARY IMPLEMENT_ABSTRACT_CLASS(wxControl, wxWindow) -#endif #include "wx/mac/uma.h" #include "wx/mac/private.h" @@ -85,11 +83,9 @@ bool wxControl::ProcessCommand (wxCommandEvent & event) void wxControl::OnKeyDown( wxKeyEvent &event ) { - if ( (ControlRef) m_macControl == NULL ) + if ( m_peer == NULL || !m_peer->Ok() ) return ; -#if TARGET_CARBON - char charCode ; UInt32 keyCode ; UInt32 modifiers ; @@ -98,16 +94,6 @@ void wxControl::OnKeyDown( wxKeyEvent &event ) GetEventParameter( (EventRef) wxTheApp->MacGetCurrentEvent(), kEventParamKeyCode, typeUInt32, NULL, sizeof(UInt32), NULL, &keyCode ); GetEventParameter((EventRef) wxTheApp->MacGetCurrentEvent(), kEventParamKeyModifiers, typeUInt32, NULL, sizeof(UInt32), NULL, &modifiers); - ::HandleControlKey( (ControlRef) m_macControl , keyCode , charCode , modifiers ) ; - -#else - EventRecord *ev = (EventRecord*) wxTheApp->MacGetCurrentEvent() ; - short keycode ; - short keychar ; - keychar = short(ev->message & charCodeMask); - keycode = short(ev->message & keyCodeMask) >> 8 ; - - ::HandleControlKey( (ControlRef) m_macControl , keycode , keychar , ev->modifiers ) ; -#endif + m_peer->HandleKey( keyCode , charCode , modifiers ) ; }