+ // wxASSERT_MSG( win->m_hasFocus, wxT("got focus out without any focus in?") );
+ // Replace with a warning, else we dump core a lot!
+ // if (!win->m_hasFocus)
+ // wxLogWarning(wxT("Radiobox got focus out without any focus in.") );
+
+ // we might have lost the focus, but may be not - it may have just gone to
+ // another button in the same radiobox, so we'll check for it in the next
+ // idle iteration (leave m_hasFocus == true for now)
+ win->m_lostFocus = true;
+
+ return FALSE;
+}
+}
+
+//-----------------------------------------------------------------------------
+// wxRadioBox
+//-----------------------------------------------------------------------------
+
+IMPLEMENT_DYNAMIC_CLASS(wxRadioBox,wxControl)
+
+void wxRadioBox::Init()
+{
+ m_needParent = true;
+ m_acceptsFocus = true;
+
+ m_hasFocus =
+ m_lostFocus = false;
+}
+
+bool wxRadioBox::Create( wxWindow *parent, wxWindowID id,
+ const wxString& title,
+ const wxPoint &pos, const wxSize &size,
+ const wxArrayString& choices, int majorDim,
+ long style, const wxValidator& validator,
+ const wxString &name )
+{
+ wxCArrayString chs(choices);
+
+ return Create( parent, id, title, pos, size, chs.GetCount(),
+ chs.GetStrings(), majorDim, style, validator, name );