const wxValidator& validator,
const wxString& name)
{
- Rect bounds ;
- Str255 title ;
+ m_macIsUserPane = FALSE ;
- MacPreControlCreate( parent , id , label , pos , size ,style, validator , name , &bounds , title ) ;
+ if ( !wxControl::Create(parent, id, pos, size, style, validator, name) )
+ return false;
+
+ m_label = label ;
- m_macControl = ::NewControl( MAC_WXHWND(parent->MacGetRootWindow()) , &bounds , title , false , 0 , 0 , 1,
- kControlRadioButtonProc , (long) this ) ;
+ Rect bounds = wxMacGetBoundsForControl( this , pos , size ) ;
- MacPostControlCreate() ;
+ verify_noerr ( CreateRadioButtonControl( MAC_WXHWND(parent->MacGetTopLevelWindowRef()) , &bounds , CFSTR("") ,
+ 0 , false /* no autotoggle */ , (ControlRef*) &m_macControl ) ) ;
+
+ MacPostControlCreate(pos,size) ;
m_cycle = this ;
void wxRadioButton::SetValue(bool val)
{
wxRadioButton *cycle;
- if ( GetControl32BitValue( (ControlHandle) m_macControl ) == val )
+ if ( GetControl32BitValue( (ControlRef) m_macControl ) == val )
return ;
- ::SetControl32BitValue( (ControlHandle) m_macControl , val ) ;
+ ::SetControl32BitValue( (ControlRef) m_macControl , val ) ;
if (val)
{
cycle=this->NextInCycle();
bool wxRadioButton::GetValue() const
{
- return ::GetControl32BitValue( (ControlHandle) m_macControl ) ;
+ return ::GetControl32BitValue( (ControlRef) m_macControl ) ;
}
void wxRadioButton::Command (wxCommandEvent & event)
ProcessCommand (event);
}
-void wxRadioButton::MacHandleControlClick( WXWidget control , wxInt16 controlpart )
+wxInt32 wxRadioButton::MacControlHit(WXEVENTHANDLERREF WXUNUSED(handler) , WXEVENTREF WXUNUSED(event) )
{
+ // if already set -> no action
if ( GetValue() )
- return ;
+ return noErr;
wxRadioButton *cycle, *old = NULL ;
cycle=this->NextInCycle();
event2.SetEventObject(this);
event2.SetInt( true );
ProcessCommand(event2);
+ return noErr ;
}
wxRadioButton *wxRadioButton::AddInCycle(wxRadioButton *cycle)