X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/d0a5e34a0838a4bff109a58644539bf72243e65b..31ad423e4fb556ec225a63b161154d3bf3445c1b:/src/cocoa/radiobut.mm diff --git a/src/cocoa/radiobut.mm b/src/cocoa/radiobut.mm index a4d9d46d5e..4962d81f45 100644 --- a/src/cocoa/radiobut.mm +++ b/src/cocoa/radiobut.mm @@ -6,12 +6,15 @@ // Created: 2003/03/16 // RCS-ID: $Id: // Copyright: (c) 2003 David Elliott -// Licence: wxWindows license +// Licence: wxWidgets licence ///////////////////////////////////////////////////////////////////////////// -#include "wx/app.h" -#include "wx/radiobut.h" -#include "wx/log.h" +#include "wx/wxprec.h" +#ifndef WX_PRECOMP + #include "wx/log.h" + #include "wx/app.h" + #include "wx/radiobut.h" +#endif //WX_PRECOMP #import #include "wx/cocoa/string.h" @@ -57,7 +60,7 @@ bool wxRadioButton::Create(wxWindow *parent, wxWindowID winid, { m_radioMaster = radioButton->m_radioMaster; wxASSERT_MSG(m_radioMaster, - "Previous radio button should be part of a group"); + wxT("Previous radio button should be part of a group")); // Don't crash, assume user meant wxRB_SINGLE if(m_radioMaster) m_radioMaster->m_radioSlaves.Append(this); @@ -71,6 +74,9 @@ bool wxRadioButton::Create(wxWindow *parent, wxWindowID winid, [m_cocoaNSView release]; [GetNSButton() setButtonType: NSRadioButton]; [GetNSButton() setTitle:wxNSStringWithWxString(label)]; + // If it's the first in a group, it should be selected + if(style&wxRB_GROUP) + [GetNSButton() setState: NSOnState]; [GetNSControl() sizeToFit]; if(m_parent) @@ -89,7 +95,7 @@ wxRadioButton::~wxRadioButton() m_radioSlaves.GetFirst(); wxASSERT(slaveNode); wxASSERT(slaveNode->GetData() == this); - m_radioSlaves.DeleteNode(slaveNode); + m_radioSlaves.Erase(slaveNode); // Now find the new master wxRadioButton *newMaster = NULL; @@ -105,7 +111,7 @@ wxRadioButton::~wxRadioButton() wxASSERT(radioButton->m_radioMaster == this); radioButton->m_radioMaster = newMaster; newMaster->m_radioSlaves.Append(radioButton); - m_radioSlaves.DeleteNode(slaveNode); + m_radioSlaves.Erase(slaveNode); } } else if(m_radioMaster) @@ -114,7 +120,7 @@ wxRadioButton::~wxRadioButton() m_radioMaster = NULL; } // normal stuff - DisassociateNSButton(m_cocoaNSView); + DisassociateNSButton(GetNSButton()); } void wxRadioButton::SetValue(bool value) @@ -134,7 +140,7 @@ bool wxRadioButton::GetValue() const void wxRadioButton::Cocoa_wxNSButtonAction(void) { - wxLogDebug("wxRadioButton"); + wxLogTrace(wxTRACE_COCOA,wxT("wxRadioButton")); if(m_radioMaster && ([GetNSButton() state] == NSOnState)) { for(wxRadioButtonList::compatibility_iterator slaveNode =