mirror of
https://github.com/qelectrotech/qelectrotech-source-mirror.git
synced 2026-09-28 21:34:12 +02:00
503c8c69b5
set_table_position and delete_table took a table's index, and set_element_text / delete_element_text a text field's index. An index shifts when an earlier item is deleted, so a run that deletes table 0 and then moves "table 1" moved the wrong table. Each now also takes the item's uuid, resolved at run time through qet.tableIndex() and qet.elementTextIndex() (the previous commit), as texts, shapes and pictures already are through textIndex() and friends. A text field's lookup is scoped to the op's element, since copies of a symbol share their fields' uuids. An index still works, and a build without the lookups is refused with the usual missing-methods hint only when a uuid is actually used. Tests: the generated script (no binary), and end to end: delete one table then move the other, both by uuid; and edit one copy's shared field by uuid, leaving the other copy's untouched. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>