X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/77ffb5937e89927b621128789401db8921fe580f..6eaa4426e06c03017b47beaf4235d9f079edf5fe:/src/mac/carbon/control.cpp?ds=sidebyside diff --git a/src/mac/carbon/control.cpp b/src/mac/carbon/control.cpp index 297d1a73b5..ef90b54ce0 100644 --- a/src/mac/carbon/control.cpp +++ b/src/mac/carbon/control.cpp @@ -6,14 +6,10 @@ // Created: 1998-01-01 // RCS-ID: $Id$ // Copyright: (c) Stefan Csomor -// Licence: wxWidgets licence +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#ifdef __GNUG__ -#pragma implementation "control.h" -#endif - -#include "wx/defs.h" +#include "wx/wxprec.h" #include "wx/control.h" #include "wx/panel.h" @@ -31,9 +27,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" @@ -44,11 +38,13 @@ wxControl::wxControl() { } -bool wxControl::Create(wxWindow *parent, wxWindowID id, - const wxPoint& pos, - const wxSize& size, long style, - const wxValidator& validator, - const wxString& name) +bool wxControl::Create(wxWindow *parent, + wxWindowID id, + const wxPoint& pos, + const wxSize& size, + long style, + const wxValidator& validator, + const wxString& name) { bool rval = wxWindow::Create(parent, id, pos, size, style, name); @@ -61,18 +57,17 @@ bool wxControl::Create(wxWindow *parent, wxWindowID id, } #endif - if (rval) - { #if wxUSE_VALIDATORS + if (rval) SetValidator(validator); #endif - } + return rval; } wxControl::~wxControl() { - m_isBeingDeleted = TRUE; + m_isBeingDeleted = true; } bool wxControl::ProcessCommand (wxCommandEvent & event) @@ -85,29 +80,16 @@ 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 ; - - GetEventParameter( (EventRef) wxTheApp->MacGetCurrentEvent(), kEventParamKeyMacCharCodes, typeChar, NULL,sizeof(char), NULL,&charCode ); - 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 + UInt32 keyCode, modifiers ; + + GetEventParameter( (EventRef) wxTheApp->MacGetCurrentEvent(), kEventParamKeyMacCharCodes, typeChar, NULL, sizeof(char), NULL,&charCode ); + GetEventParameter( (EventRef) wxTheApp->MacGetCurrentEvent(), kEventParamKeyCode, typeUInt32, NULL, sizeof(UInt32), NULL, &keyCode ); + GetEventParameter( (EventRef) wxTheApp->MacGetCurrentEvent(), kEventParamKeyModifiers, typeUInt32, NULL, sizeof(UInt32), NULL, &modifiers ); + + m_peer->HandleKey( keyCode , charCode , modifiers ) ; }