Improve game list manager

This commit is contained in:
Loic Guegan 2022-12-25 17:30:22 +01:00
parent cd9f55f5ad
commit f7eab5a593
3 changed files with 37 additions and 15 deletions

View file

@ -39,3 +39,32 @@ void GameListManager::Clear(){
void GameListManager::ClearDisplayedRow(){
game_list->DeleteAllItems();
}
void GameListManager::MarkItemAsOpen(long item){
game_list->SetItemBackgroundColour(item, *wxGREEN);
}
void GameListManager::MarkItemAsDeleted(long item){
game_list->SetItemBackgroundColour(item, *wxRED);
}
std::vector<long> GameListManager::GetSelectedItems(){
std::vector<long> items;
long selected = -1;
while ((selected = game_list->GetNextItem(selected, wxLIST_NEXT_ALL,
wxLIST_STATE_SELECTED)) !=
wxNOT_FOUND) {
items.push_back(selected);
}
return(items);
}
long GameListManager::GetItemGameId(long item){
wxListItem listItem;
listItem.m_itemId = item; // sets row
listItem.m_col = 0; // sets column to Id (column 0)
game_list->GetItem(listItem); // gets item
return std::stol(listItem.GetText().ToStdString());
}