X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/345264343a2fa3ee7362a4afb91b669216ee51fe..46b11427d6c54d4b3ed9cd40b6770876b9eb94da:/src/msw/radiobox.cpp diff --git a/src/msw/radiobox.cpp b/src/msw/radiobox.cpp index e9f53d0f46..0bdcb7d346 100644 --- a/src/msw/radiobox.cpp +++ b/src/msw/radiobox.cpp @@ -150,6 +150,11 @@ bool wxRadioBox::Create(wxWindow *parent, if ( !wxStaticBox::Create(parent, id, title, pos, size, style, name) ) return false; + // the code elsewhere in this file supposes that either wxRA_SPECIFY_COLS + // or wxRA_SPECIFY_ROWS is set, ensure that this is indeed the case + if ( !(style & (wxRA_SPECIFY_ROWS | wxRA_SPECIFY_COLS)) ) + style |= wxRA_SPECIFY_COLS; + #if wxUSE_VALIDATORS SetValidator(val); #else @@ -183,7 +188,7 @@ bool wxRadioBox::Create(wxWindow *parent, styleBtn, 0, 0, 0, 0, // will be set in SetSize() GetHwndOf(parent), - (HMENU)subid.GetValue(), + (HMENU)wxUIntToPtr(subid.GetValue()), wxGetInstance(), NULL); @@ -210,7 +215,8 @@ bool wxRadioBox::Create(wxWindow *parent, wxEmptyString, WS_GROUP | BS_AUTORADIOBUTTON | WS_CHILD, 0, 0, 0, 0, GetHwndOf(parent), - (HMENU)m_dummyId.GetValue(), wxGetInstance(), NULL); + (HMENU)wxUIntToPtr(m_dummyId.GetValue()), + wxGetInstance(), NULL); m_radioButtons->SetFont(GetFont()); @@ -248,7 +254,7 @@ bool wxRadioBox::Create(wxWindow *parent, wxRadioBox::~wxRadioBox() { - m_isBeingDeleted = true; + SendDestroyEvent(); delete m_radioButtons; if ( m_dummyHwnd ) @@ -456,7 +462,9 @@ void wxRadioBox::DoSetItemToolTip(unsigned int item, wxToolTip *tooltip) if ( tooltip != NULL ) tooltip->Add(hwndRbtn); else // unset the tooltip - wxToolTip::Remove(hwndRbtn); + wxToolTip::Remove(hwndRbtn, 0, wxRect(0,0,0,0)); + // the second parameter can be zero since it's ignored by Remove() + // as we pass a rect for which wxRect::IsEmpty()==true... } #endif // wxUSE_TOOLTIPS