if ( (int)item == m_widestItem )
m_findWidest = true;
+ int sel = GetSelection();
+
if ( IsCreated() )
wxVListBox::SetItemCount( wxVListBox::GetItemCount()-1 );
+
+ // Fix selection
+ if ( (int)item < sel )
+ SetSelection(sel-1);
+ else if ( (int)item == sel )
+ SetSelection(wxNOT_FOUND);
}
int wxVListBoxComboPopup::FindString(const wxString& s, bool bCase) const
if ( GetVListBoxComboPopup()->IsCurrent((size_t)item) ||
(flags & wxODCB_PAINTING_CONTROL) )
{
- int focusFlag = wxCONTROL_SELECTED;
+ int bgFlags = wxCONTROL_SELECTED;
if ( (flags & wxODCB_PAINTING_CONTROL) != wxODCB_PAINTING_CONTROL )
- focusFlag |= wxCONTROL_ISSUBMENU;
-
- DrawFocusBackground(dc, rect, focusFlag );
+ {
+ bgFlags |= wxCONTROL_ISSUBMENU;
+ PrepareBackground(dc, rect, bgFlags);
+ }
+ else if ( HasFlag(wxCB_READONLY) )
+ PrepareBackground(dc, rect, bgFlags);
}
//else: do nothing for the normal items
}