X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/6bc3b8e9680e8aa3d50ae4bb41dad22c6dd3ce1b..67193066b2d16ca36529216f70d093690d7e1123:/src/mac/classic/radiobut.cpp diff --git a/src/mac/classic/radiobut.cpp b/src/mac/classic/radiobut.cpp index 36f7358259..f58db33087 100644 --- a/src/mac/classic/radiobut.cpp +++ b/src/mac/classic/radiobut.cpp @@ -1,25 +1,23 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: radiobut.cpp +// Name: src/mac/classic/radiobut.cpp // Purpose: wxRadioButton // Author: AUTHOR // Modified by: JS Lair (99/11/15) adding the cyclic groupe notion for radiobox // Created: ??/??/98 // RCS-ID: $Id$ // Copyright: (c) AUTHOR -// Licence: wxWindows licence +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#ifdef __GNUG__ -#pragma implementation "radiobut.h" -#endif +#include "wx/wxprec.h" -#include "wx/defs.h" +#ifdef __BORLANDC__ + #pragma hdrstop +#endif #include "wx/radiobut.h" -#if !USE_SHARED_LIBRARY IMPLEMENT_DYNAMIC_CLASS(wxRadioButton, wxControl) -#endif #include "wx/mac/uma.h" @@ -35,38 +33,38 @@ bool wxRadioButton::Create(wxWindow *parent, wxWindowID id, Rect bounds ; Str255 title ; - + MacPreControlCreate( parent , id , label , pos , size ,style, validator , name , &bounds , title ) ; - m_macControl = (WXWidget) ::NewControl( MAC_WXHWND(parent->MacGetRootWindow()) , &bounds , title , false , 0 , 0 , 1, + m_macControl = (WXWidget) ::NewControl( MAC_WXHWND(parent->MacGetRootWindow()) , &bounds , title , false , 0 , 0 , 1, kControlRadioButtonProc , (long) this ) ; - + MacPostControlCreate() ; - m_cycle = this ; - - if (HasFlag(wxRB_GROUP)) - { - AddInCycle( NULL ) ; - } - else - { - /* search backward for last group start */ - wxRadioButton *chief = (wxRadioButton*) NULL; - wxWindowList::Node *node = parent->GetChildren().GetLast(); - while (node) + m_cycle = this ; + + if (HasFlag(wxRB_GROUP)) { - wxWindow *child = node->GetData(); - if (child->IsKindOf( CLASSINFO( wxRadioButton ) ) ) - { - chief = (wxRadioButton*) child; - if (child->HasFlag(wxRB_GROUP)) break; - } - node = node->GetPrevious(); + AddInCycle( NULL ) ; + } + else + { + /* search backward for last group start */ + wxRadioButton *chief = (wxRadioButton*) NULL; + wxWindowList::Node *node = parent->GetChildren().GetLast(); + while (node) + { + wxWindow *child = node->GetData(); + if (child->IsKindOf( CLASSINFO( wxRadioButton ) ) ) + { + chief = (wxRadioButton*) child; + if (child->HasFlag(wxRB_GROUP)) break; + } + node = node->GetPrevious(); + } + AddInCycle( chief ) ; } - AddInCycle( chief ) ; - } - return TRUE; + return true; } void wxRadioButton::SetValue(bool val) @@ -74,9 +72,9 @@ void wxRadioButton::SetValue(bool val) wxRadioButton *cycle; if ( GetControl32BitValue( (ControlHandle) m_macControl ) == val ) return ; - + ::SetControl32BitValue( (ControlHandle) m_macControl , val ) ; - if (val) + if (val) { cycle=this->NextInCycle(); if (cycle!=NULL) { @@ -100,12 +98,12 @@ void wxRadioButton::Command (wxCommandEvent & event) ProcessCommand (event); } -void wxRadioButton::MacHandleControlClick( WXWidget control , wxInt16 controlpart , bool WXUNUSED(mouseStillDown)) +void wxRadioButton::MacHandleControlClick( WXWidget control , wxInt16 controlpart , bool WXUNUSED(mouseStillDown)) { if ( GetValue() ) - return ; - - wxRadioButton *cycle, *old = NULL ; + return ; + + wxRadioButton *cycle, *old = NULL ; cycle=this->NextInCycle(); if (cycle!=NULL) { while (cycle!=this) { @@ -134,17 +132,17 @@ void wxRadioButton::MacHandleControlClick( WXWidget control , wxInt16 controlpar wxRadioButton *wxRadioButton::AddInCycle(wxRadioButton *cycle) { wxRadioButton *next,*current; - + if (cycle==NULL) { m_cycle=this; return(this); } else { current=cycle; - while ((next=current->m_cycle)!=cycle) + while ((next=current->m_cycle)!=cycle) current=current->m_cycle; m_cycle=cycle; current->m_cycle=this; return(cycle); } -} +}