aboutsummaryrefslogtreecommitdiff
path: root/src/base_tab
diff options
context:
space:
mode:
authorLoic Guegan <manzerbredes@mailbox.org>2022-12-26 06:48:11 +0100
committerLoic Guegan <manzerbredes@mailbox.org>2022-12-26 06:48:11 +0100
commit54cb4dc6c630bfc8bd9e48a0020e4d6abb352b29 (patch)
treec1aa5a62e340fb502692339ceea0715855ac0f2f /src/base_tab
parent723f7cc91bd8fb548cfaad3f0c104439f686a3e0 (diff)
Debug GameListManager
Diffstat (limited to 'src/base_tab')
-rw-r--r--src/base_tab/GameListManager.cpp9
-rw-r--r--src/base_tab/GameListManager.hpp3
2 files changed, 12 insertions, 0 deletions
diff --git a/src/base_tab/GameListManager.cpp b/src/base_tab/GameListManager.cpp
index 35b6158..fef0241 100644
--- a/src/base_tab/GameListManager.cpp
+++ b/src/base_tab/GameListManager.cpp
@@ -29,10 +29,17 @@ void GameListManager::DisplayRow(long id){
game_list->SetItem(index, 4, row.Round);
game_list->SetItem(index, 5, row.Result);
game_list->SetItem(index, 6, row.Eco);
+
+ if(std::find(opened_items.begin(), opened_items.end(), index) != opened_items.end())
+ MarkItemAsOpen(index);
+ if(std::find(deleted_items.begin(), deleted_items.end(), index) != deleted_items.end())
+ MarkItemAsDeleted(index);
}
void GameListManager::Clear(){
game_list->DeleteAllItems();
+ deleted_items.clear();
+ opened_items.clear();
rows.clear();
}
@@ -41,10 +48,12 @@ void GameListManager::ClearDisplayedRow(){
}
void GameListManager::MarkItemAsOpen(long item){
+ opened_items.push_back(item);
game_list->SetItemBackgroundColour(item, *wxGREEN);
}
void GameListManager::MarkItemAsDeleted(long item){
+ deleted_items.push_back(item);
game_list->SetItemBackgroundColour(item, *wxRED);
}
diff --git a/src/base_tab/GameListManager.hpp b/src/base_tab/GameListManager.hpp
index c1452cb..2e22dc4 100644
--- a/src/base_tab/GameListManager.hpp
+++ b/src/base_tab/GameListManager.hpp
@@ -1,6 +1,8 @@
#pragma once
#include "ochess.hpp"
+#include <algorithm>
+#include <vector>
#define TERMS_IN(COL) (row.COL.find(terms) != std::string::npos)
@@ -19,6 +21,7 @@ class GameListManager {
wxListCtrl *game_list;
long game_counter;
std::vector<RType> rows;
+ std::vector<long> deleted_items, opened_items;
void DisplayRow(long id);
void ClearDisplayedRow();