feat(0035e): Group hereda iconografia de hijos homogeneos

apply_group_inherited_visuals(GraphData*, db_path) recorre los nodos
Group del grafo y, para cada uno, consulta los type_ref distintos de
sus hijos (entities con group_id apuntando al Group). Si todos
comparten un solo tipo, reasigna el type_id del Group al type_id de
ese tipo y fija shape_override = SHAPE_SQUARE para preservar el
cuadrado distintivo. Heterogeneo o sin hijos: el Group conserva su
visual generico (slate + ti-stack-2). Se invoca desde main.cpp y
reload_graph antes de apply_group_filter para que la reasignacion
sobreviva al compactado del array.
This commit is contained in:
2026-05-04 14:21:01 +02:00
parent 52495af779
commit c27d8e7ffc
3 changed files with 145 additions and 0 deletions
+2
View File
@@ -666,6 +666,8 @@ static bool load_input(bool first_load) {
std::fprintf(stderr, "[graph_explorer] load failed: %s\n", stats.error_msg);
return false;
}
// Issue 0035e: iconografia heredada de hijos homogeneos (antes del filtro).
ge::apply_group_inherited_visuals(&g_graph, g_input.uri);
// Filtro de grupos colapsados (issue 0035b). Se aplica tras la carga
// bruta — el loader sigue siendo agnostico al concepto de grupo.
ge::apply_group_filter(&g_graph, g_input.uri, g_app.group_expanded);