Lista de verificación de la migración
- Sigue usando
node.pos,node.size,boundingRect,getBounding(),setPos(),setSize(): no se requieren cambios en las firmas. - Sustituye las llamadas a
repositionNodesVueMode()porapplyNodePositions(). - Si dependías de que
node.sizereflejara el contenido medido/renderizado, cambia agetBounding()/boundingRect. Con el renderizador de Vue,sizeahora refleja estrictamente el valor solicitado. El renderizador clásico sigue aumentandosizepara ajustarse a los widgets. - Usa las APIs de geometría de nodos y grupos, no el almacén de respaldo; no importes
layoutStoreni dependas de su formato interno. - Las escrituras mediante una referencia eliminada actualizan el objeto desvinculado, no el estado de diseño compartido.
Qué cambió
LGraphNode.pos, size, boundingRect, getBounding(), setPos() y
setSize() conservan las mismas firmas. Estas llamadas siguen siendo
compatibles a nivel de código fuente. El comportamiento cambió en los tres
casos siguientes.
size frente a los límites renderizados
node.size es el tamaño que solicitaste y el que se serializa. Con el
renderizador Vue, el renderizado nunca lo cambia. getBounding() y
boundingRect devuelven los límites renderizados, que pueden ser mayores que
size cuando el contenido del widget necesita más espacio. Con el renderizador
de lienzo clásico, el nodo todavía crece para ajustarse a sus widgets llamando a
setSize(), por lo que node.size y el tamaño guardado pueden cambiar después
de un dibujo. Usa los límites renderizados cuando necesites la huella real del
nodo en pantalla.
El lienzo recalcula getBounding() y boundingRect al inicio de cada
fotograma. Después de cambiar pos o size, llama a node.updateArea() antes
de leerlos en el mismo fotograma. Con el renderizador Vue, el crecimiento por
contenido DOM solo aparece después de medir el nodo.
repositionNodesVueMode() pasa a llamarse applyNodePositions()
repositionNodesVueMode() sigue siendo invocable como alias obsoleto.