Fix Tree::deselect_all not deselecting root

This commit is contained in:
Dawid Marzec 2023-01-14 17:05:07 +01:00
parent d20c520d96
commit 45930e95e9

View file

@ -4219,14 +4219,20 @@ Tree::SelectMode Tree::get_select_mode() const {
}
void Tree::deselect_all() {
TreeItem *item = get_next_selected(get_root());
while (item) {
for (int i = 0; i < columns.size(); i++) {
item->deselect(i);
if (root) {
TreeItem *item = root;
while (item) {
if (select_mode == SELECT_ROW) {
item->deselect(0);
} else {
for (int i = 0; i < columns.size(); i++) {
item->deselect(i);
}
}
TreeItem *prev_item = item;
item = get_next_selected(root);
ERR_FAIL_COND(item == prev_item);
}
TreeItem *prev_item = item;
item = get_next_selected(get_root());
ERR_FAIL_COND(item == prev_item);
}
selected_item = nullptr;