diff --git a/sources/diagram.cpp b/sources/diagram.cpp index bf37c2bd3..0c419722f 100644 --- a/sources/diagram.cpp +++ b/sources/diagram.cpp @@ -878,8 +878,8 @@ Terminal* findTerminal(int conductor_index, QDomElement& conductor, QHashuuid() != element_uuid) continue; element_found = true; - QUuid terminal_uuid = QUuid(conductor.attribute(terminal_index)); + QUuid terminal_uuid; + PropertiesInterface::propertyUuid(conductor, terminal_index, &terminal_uuid); for (auto terminal: element->terminals()) { if (terminal->uuid() != terminal_uuid) continue; @@ -901,7 +902,10 @@ Terminal* findTerminal(int conductor_index, QDomElement& conductor, QHash added_conductors; - foreach (QDomElement f, QET::findInDomElement(root, "conductors", "conductor")) + foreach (QDomElement conductorElement, QET::findInDomElement(root, "conductors", "conductor")) { - if (!Conductor::valideXml(f)) continue; + if (!Conductor::valideXml(conductorElement)) continue; //Check if terminal that conductor must be linked is know - Terminal* p1 = findTerminal(1, f, table_adr_id, added_elements); - Terminal* p2 = findTerminal(2, f, table_adr_id, added_elements); + Terminal* p1 = findTerminal(1, conductorElement, table_adr_id, added_elements); + Terminal* p2 = findTerminal(2, conductorElement, table_adr_id, added_elements); if (p1 && p2 && p1 != p2) // why the condition for unequal is required? { @@ -1093,7 +1097,7 @@ bool Diagram::fromXml(QDomElement &document, QPointF position, bool consider_inf if (c->isValid()) { addItem(c); - c -> fromXml(f); + c -> fromXml(conductorElement); added_conductors << c; } else diff --git a/sources/qetgraphicsitem/terminal.cpp b/sources/qetgraphicsitem/terminal.cpp index c16e3eee7..127cf2241 100644 --- a/sources/qetgraphicsitem/terminal.cpp +++ b/sources/qetgraphicsitem/terminal.cpp @@ -734,6 +734,7 @@ QDomElement Terminal::toXml(QDomDocument &doc) const { // Do not store terminal data in its own child QDomElement terminalDataElement = d->toXml(doc); + int y = terminalDataElement.().length(); // TODO: seems to be not correct! for (int i=0; i < terminalDataElement.childNodes().length(); i++) { qdo.appendChild(terminalDataElement.childNodes().at(i)); }