--- a/ui/winui/table.h Thu Oct 12 16:03:35 2023 +0200 +++ b/ui/winui/table.h Fri Oct 13 11:26:47 2023 +0200 @@ -48,7 +48,8 @@ std::vector<UiTableColumn> header; ui_getvaluefunc getvalue; int maxrows; - int selection = 0; + int lastSelection; + std::vector<int> selection; UiTable(winrt::Microsoft::UI::Xaml::Controls::ScrollViewer scrollW, winrt::Microsoft::UI::Xaml::Controls::Grid grid); @@ -59,6 +60,12 @@ void clear(); void row_background(int row, winrt::Microsoft::UI::Xaml::Media::Brush brush, winrt::Microsoft::UI::Xaml::Media::Brush borderBrush); + + void change_rows_bg(std::vector<int> rows, winrt::Microsoft::UI::Xaml::Media::Brush brush, winrt::Microsoft::UI::Xaml::Media::Brush borderBrush); + + bool is_row_selected(int row); + + void remove_from_selection(int row); } UiTable; extern "C" void ui_table_update(UiList * list, int i);