X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ad81651f00edc6f489d9b6a0839d316a964fd521..d9e054bc6147fb286b6de2fcfe50e2ecf5649843:/src/mac/checkbox.cpp diff --git a/src/mac/checkbox.cpp b/src/mac/checkbox.cpp index aa589bd32d..85ebcf2391 100644 --- a/src/mac/checkbox.cpp +++ b/src/mac/checkbox.cpp @@ -13,12 +13,16 @@ #pragma implementation "checkbox.h" #endif +#include "wx/defs.h" + #include "wx/checkbox.h" +#if !USE_SHARED_LIBRARY IMPLEMENT_DYNAMIC_CLASS(wxCheckBox, wxControl) IMPLEMENT_DYNAMIC_CLASS(wxBitmapCheckBox, wxCheckBox) +#endif -#include +#include "wx/mac/uma.h" // Single check box item bool wxCheckBox::Create(wxWindow *parent, wxWindowID id, const wxString& label, @@ -32,7 +36,7 @@ bool wxCheckBox::Create(wxWindow *parent, wxWindowID id, const wxString& label, MacPreControlCreate( parent , id , label , pos , size ,style, validator , name , &bounds , title ) ; - m_macControl = UMANewControl( parent->GetMacRootWindow() , &bounds , title , true , 0 , 0 , 1, + m_macControl = ::NewControl( MAC_WXHWND(parent->MacGetRootWindow()) , &bounds , title , false , 0 , 0 , 1, kControlCheckBoxProc , (long) this ) ; MacPostControlCreate() ; @@ -42,12 +46,13 @@ bool wxCheckBox::Create(wxWindow *parent, wxWindowID id, const wxString& label, void wxCheckBox::SetValue(bool val) { - ::SetControlValue( m_macControl , val ) ; + ::SetControlValue( (ControlHandle) m_macControl , val ) ; + MacRedrawControl() ; } bool wxCheckBox::GetValue() const { - return ::GetControlValue( m_macControl ) ; + return ::GetControlValue( (ControlHandle) m_macControl ) ; } void wxCheckBox::Command (wxCommandEvent & event) @@ -56,9 +61,13 @@ void wxCheckBox::Command (wxCommandEvent & event) ProcessCommand (event); } -void wxCheckBox::MacHandleControlClick( ControlHandle control , SInt16 controlpart ) +void wxCheckBox::MacHandleControlClick( WXWidget control , wxInt16 controlpart ) { SetValue( !GetValue() ) ; + wxCommandEvent event(wxEVT_COMMAND_CHECKBOX_CLICKED, m_windowId ); + event.SetInt(GetValue()); + event.SetEventObject(this); + ProcessCommand(event); } // Bitmap checkbox