+void wxListBoxBase::DeselectAll(int itemToLeaveSelected)
+{
+ if ( HasMultipleSelection() )
+ {
+ wxArrayInt selections;
+ GetSelections(selections);
+
+ size_t count = selections.GetCount();
+ for ( size_t n = 0; n < count; n++ )
+ {
+ int item = selections[n];
+ if ( item != itemToLeaveSelected )
+ Deselect(item);
+ }
+ }
+ else // single selection
+ {
+ int sel = GetSelection();
+ if ( sel != -1 && sel != itemToLeaveSelected )
+ {
+ Deselect(sel);
+ }
+ }
+}
+