// 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"
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 ;
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 ) ;
}