X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b635e17fef75d05881f5b5db85ec5f21d1cb3750..7f1de2b26e841b21110dadf3b9f2d543703eaf45:/src/mac/carbon/tglbtn.cpp?ds=sidebyside diff --git a/src/mac/carbon/tglbtn.cpp b/src/mac/carbon/tglbtn.cpp index aa7ee2bb3e..c41c9610f3 100644 --- a/src/mac/carbon/tglbtn.cpp +++ b/src/mac/carbon/tglbtn.cpp @@ -56,25 +56,19 @@ bool wxToggleButton::Create(wxWindow *parent, wxWindowID id, const wxValidator& validator, const wxString& name) { + m_macIsUserPane = FALSE ; + if ( !wxControl::Create(parent, id, pos, size, style, validator, name) ) return false; - - Rect bounds ; - Str255 title ; - - if ( UMAHasAquaLayout() ) - { - m_macHorizontalBorder = kMacOSXHorizontalBorder; - m_macVerticalBorder = kMacOSXVerticalBorder; - } - MacPreControlCreate( parent , id , label , pos , size ,style, validator , name , &bounds , title ) ; + m_label = label ; - m_macControl = ::NewControl( MAC_WXHWND(parent->MacGetRootWindow()) , &bounds , title , false , 0 , kControlBehaviorToggles , 1, - kControlBevelButtonNormalBevelProc , (long) this ) ; - wxASSERT_MSG( (ControlHandle) m_macControl != NULL , wxT("No valid mac control") ) ; + Rect bounds = wxMacGetBoundsForControl( this , pos , size ) ; + + verify_noerr ( CreateBevelButtonControl( MAC_WXHWND(parent->MacGetTopLevelWindowRef()) , &bounds , CFSTR("") , + kControlBevelButtonNormalBevel , kControlBehaviorToggles , NULL , 0 , 0 , 0 , (ControlRef*) &m_macControl ) ) ; - MacPostControlCreate() ; + MacPostControlCreate(pos,size) ; return TRUE; } @@ -88,22 +82,17 @@ wxSize wxToggleButton::DoGetBestSize() const if (lBtn > wBtn) wBtn = lBtn; - if ( UMAHasAquaLayout() ) - { - wBtn += 2 * kMacOSXHorizontalBorder ; - hBtn += 2 * kMacOSXVerticalBorder ; - } return wxSize ( wBtn , hBtn ) ; } void wxToggleButton::SetValue(bool val) { - ::SetControl32BitValue( (ControlHandle) m_macControl , val ) ; + ::SetControl32BitValue( (ControlRef) m_macControl , val ) ; } bool wxToggleButton::GetValue() const { - return GetControl32BitValue( (ControlHandle) m_macControl ) ; + return GetControl32BitValue( (ControlRef) m_macControl ) ; } void wxToggleButton::Command(wxCommandEvent & event) @@ -112,15 +101,13 @@ void wxToggleButton::Command(wxCommandEvent & event) ProcessCommand(event); } -void wxToggleButton::MacHandleControlClick( WXWidget WXUNUSED(control) , wxInt16 controlpart , bool WXUNUSED(mouseStillDown) ) +wxInt32 wxToggleButton::MacControlHit(WXEVENTHANDLERREF WXUNUSED(handler) , WXEVENTREF WXUNUSED(event) ) { - if ( controlpart != kControlNoPart ) - { - wxCommandEvent event(wxEVT_COMMAND_TOGGLEBUTTON_CLICKED, m_windowId); - event.SetInt(GetValue()); - event.SetEventObject(this); - ProcessCommand(event); - } + wxCommandEvent event(wxEVT_COMMAND_TOGGLEBUTTON_CLICKED, m_windowId); + event.SetInt(GetValue()); + event.SetEventObject(this); + ProcessCommand(event); + return noErr ; } #endif // wxUSE_TOGGLEBTN