private void FilterRooms()
{
//Filter search results
if (txtSearch.Text != searchStr && !string.IsNullOrWhiteSpace(txtSearch.Text))
{
for (int i = 0; i < RoomListCtrl.Items.Count; i++)
{
if (!(RoomListCtrl.Items[i] as LobbyDataControl).Data.Name.ToLower().Contains(txtSearch.Text.ToLower()))
{
RoomListCtrl.Items.RemoveAt(i);
i--;
}
}
}
//Filter by category
if (cmbSort.ItemIndex == 0) //Online
RoomListCtrl.Items = RoomListCtrl.Items.OrderByDescending(x => (x as LobbyDataControl).Data.Online).ToList();
//RoomListCtrl.Items.Sort((x, y) => (x as LobbyDataControl).Data.Players.CompareTo((y as LobbyDataControl).Data.Players));
else if (cmbSort.ItemIndex == 1)
RoomListCtrl.Items = RoomListCtrl.Items.OrderByDescending(x => (x as LobbyDataControl).Data.Rating).ToList();
else if (cmbSort.ItemIndex == 2)
RoomListCtrl.Items = RoomListCtrl.Items.OrderByDescending(x => (x as LobbyDataControl).Data.Plays).ToList();
else if (cmbSort.ItemIndex == 3)
RoomListCtrl.Items.Shuffle();
}