X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/655719367ac5e131d9642e5783f3ecf64d1a3385..03271fa7a501c008c5ea729f170a4cf7ef853937:/src/mac/carbon/control.cpp?ds=sidebyside diff --git a/src/mac/carbon/control.cpp b/src/mac/carbon/control.cpp index ba7d6a7a3c..66c8c8f7c5 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" @@ -85,11 +85,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 +96,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 ) ; }