X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/1a87edf286921de9b182f3d19adb6bb63ba85ebd..2cf3a6d7bef6f20bea35062dd3d4dbf0aec9efb5:/src/mac/classic/radiobox.cpp diff --git a/src/mac/classic/radiobox.cpp b/src/mac/classic/radiobox.cpp index 9fe0e52e8f..e29ce47f4c 100644 --- a/src/mac/classic/radiobox.cpp +++ b/src/mac/classic/radiobox.cpp @@ -1,40 +1,39 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: radiobox.cpp +// Name: src/mac/classic/radiobox.cpp // Purpose: wxRadioBox // Author: Stefan Csomor // Modified by: JS Lair (99/11/15) first implementation // Created: 1998-01-01 // RCS-ID: $Id$ // Copyright: (c) Stefan Csomor -// Licence: wxWindows licence +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#ifdef __GNUG__ -#pragma implementation "radioboxbase.h" -#pragma implementation "radiobox.h" -#endif - //------------------------------------------------------------------------------------- // headers //------------------------------------------------------------------------------------- -#include "wx/defs.h" -#include "wx/arrstr.h" +#include "wx/wxprec.h" + +#if wxUSE_RADIOBOX #include "wx/radiobox.h" -#include "wx/radiobut.h" + +#ifndef WX_PRECOMP + #include "wx/radiobut.h" + #include "wx/arrstr.h" +#endif + #include "wx/mac/uma.h" -#if !USE_SHARED_LIBRARY IMPLEMENT_DYNAMIC_CLASS(wxRadioBox, wxControl) -#endif //------------------------------------------------------------------------------------- // ¥ wxRadioBox() //------------------------------------------------------------------------------------- // Default constructor BEGIN_EVENT_TABLE(wxRadioBox, wxControl) -EVT_RADIOBUTTON( -1 , wxRadioBox::OnRadioButton ) + EVT_RADIOBUTTON( wxID_ANY , wxRadioBox::OnRadioButton ) END_EVENT_TABLE() void wxRadioBox::OnRadioButton( wxCommandEvent &outer ) @@ -44,7 +43,7 @@ void wxRadioBox::OnRadioButton( wxCommandEvent &outer ) wxCommandEvent event(wxEVT_COMMAND_RADIOBOX_SELECTED, m_windowId); int i = GetSelection() ; event.SetInt( i ); - event.SetString( GetString( i ) ); + event.SetString(GetString(i)); event.SetEventObject( this ); ProcessCommand(event); } @@ -54,7 +53,6 @@ wxRadioBox::wxRadioBox() { m_noItems = 0; m_noRowsOrCols = 0; - m_majorDim = 0 ; m_radioButtonCycle = NULL; } @@ -117,14 +115,11 @@ bool wxRadioBox::Create(wxWindow *parent, wxWindowID id, const wxString& label, int i; - m_noItems = n; + m_noItems = (unsigned int)n; m_noRowsOrCols = majorDim; m_radioButtonCycle = NULL; - if (majorDim==0) - m_majorDim = n ; - else - m_majorDim = majorDim ; + SetMajorDim(majorDim == 0 ? n : majorDim, style); Rect bounds ; Str255 title ; @@ -164,14 +159,12 @@ bool wxRadioBox::Create(wxWindow *parent, wxWindowID id, const wxString& label, bool wxRadioBox::Enable(bool enable) { - int i; - wxRadioButton *current; - if (!wxControl::Enable(enable)) return false; - current = m_radioButtonCycle; - for (i = 0; i < m_noItems; i++) { + wxRadioButton *current = m_radioButtonCycle; + for (unsigned int i = 0; i < m_noItems; i++) + { current->Enable(enable); current = current->NextInCycle(); } @@ -179,21 +172,19 @@ bool wxRadioBox::Enable(bool enable) } //------------------------------------------------------------------------------------- -// ¥ Enable(int, bool) +// ¥ Enable(unsigned int, bool) //------------------------------------------------------------------------------------- // Enables or disables an given button -bool wxRadioBox::Enable(int item, bool enable) +bool wxRadioBox::Enable(unsigned int item, bool enable) { - int i; - wxRadioButton *current; - - if ((item < 0) || (item >= m_noItems)) + if (!IsValid(item)) return false; - i = 0; - current = m_radioButtonCycle; - while (i != item) { + unsigned int i = 0; + wxRadioButton *current = m_radioButtonCycle; + while (i != item) + { i++; current = current->NextInCycle(); } @@ -215,15 +206,14 @@ wxString wxRadioBox::GetLabel() const //------------------------------------------------------------------------------------- // Returns the label for the given button -wxString wxRadioBox::GetString(int item) const +wxString wxRadioBox::GetString(unsigned int item) const { - int i; wxRadioButton *current; - if ((item < 0) || (item >= m_noItems)) + if (!IsValid(item)) return wxEmptyString; - i = 0; + unsigned int i = 0; current = m_radioButtonCycle; while (i != item) { i++; @@ -275,16 +265,15 @@ void wxRadioBox::SetLabel(const wxString& label) //------------------------------------------------------------------------------------- // Sets the label of a given button -void wxRadioBox::SetString(int item,const wxString& label) +void wxRadioBox::SetString(unsigned int item,const wxString& label) { - int i; - wxRadioButton *current; - - if ((item < 0) || (item >= m_noItems)) + if (!IsValid(item)) return; - i=0; - current=m_radioButtonCycle; - while (i!=item) { + + unsigned int i=0; + wxRadioButton *current=m_radioButtonCycle; + while (i!=item) + { i++; current=current->NextInCycle(); } @@ -302,7 +291,7 @@ void wxRadioBox::SetSelection(int item) int i; wxRadioButton *current; - if ((item < 0) || (item >= m_noItems)) + if (!IsValid(item)) return; i=0; current=m_radioButtonCycle; @@ -321,13 +310,13 @@ void wxRadioBox::SetSelection(int item) bool wxRadioBox::Show(bool show) { - int i; wxRadioButton *current; wxControl::Show(show); current=m_radioButtonCycle; - for (i=0;iShow(show); current=current->NextInCycle(); } @@ -335,24 +324,22 @@ bool wxRadioBox::Show(bool show) } //------------------------------------------------------------------------------------- -// ¥ Show(int, bool) +// ¥ Show(unsigned int, bool) //------------------------------------------------------------------------------------- // Shows or hides the given button -void wxRadioBox::Show(int item, bool show) +bool wxRadioBox::Show(unsigned int item, bool show) { - int i; - wxRadioButton *current; + if (!IsValid(item)) + return false; - if ((item < 0) || (item >= m_noItems)) - return; - i=0; - current=m_radioButtonCycle; + unsigned int i = 0; + wxRadioButton *current=m_radioButtonCycle; while (i!=item) { i++; current=current->NextInCycle(); } - current->Show(show); + return current->Show(show); } //------------------------------------------------------------------------------------- @@ -395,7 +382,7 @@ void wxRadioBox::SetFocus() void wxRadioBox::DoSetSize(int x, int y, int width, int height, int sizeFlags) { - int i; + unsigned int i; wxRadioButton *current; // define the position @@ -408,9 +395,9 @@ void wxRadioBox::DoSetSize(int x, int y, int width, int height, int sizeFlags) x_offset = x; y_offset = y; GetPosition(&x_current, &y_current); - if ((x == -1) && !(sizeFlags & wxSIZE_ALLOW_MINUS_ONE)) + if ((x == wxDefaultCoord) && !(sizeFlags & wxSIZE_ALLOW_MINUS_ONE)) x_offset = x_current; - if ((y == -1)&& !(sizeFlags & wxSIZE_ALLOW_MINUS_ONE)) + if ((y == wxDefaultCoord)&& !(sizeFlags & wxSIZE_ALLOW_MINUS_ONE)) y_offset = y_current; // define size @@ -433,13 +420,13 @@ void wxRadioBox::DoSetSize(int x, int y, int width, int height, int sizeFlags) eachHeight[i] = (int)((3*eachHeight[i])/2); if (maxWidth