1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-11 13:10:58 +00:00

Expose FileDialog callbacks for getting custom icons

This commit is contained in:
kobewi
2025-06-30 19:07:12 +02:00
parent d705613db3
commit f88b51995b
6 changed files with 138 additions and 13 deletions

View File

@@ -208,11 +208,20 @@ void ItemList::set_item_icon(int p_idx, const Ref<Texture2D> &p_icon) {
}
ERR_FAIL_INDEX(p_idx, items.size());
if (items[p_idx].icon == p_icon) {
Item &item = items.write[p_idx];
if (item.icon == p_icon) {
return;
}
items.write[p_idx].icon = p_icon;
const Callable redraw = callable_mp((CanvasItem *)this, &CanvasItem::queue_redraw);
if (item.icon.is_valid()) {
item.icon->disconnect_changed(redraw);
}
item.icon = p_icon;
if (p_icon.is_valid()) {
p_icon->connect_changed(redraw);
}
queue_redraw();
shape_changed = true;
}