Bug fix: Xref for slave element will be updated when diagram order change in project.

git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@3428 bfdf4180-ca20-0410-9c96-a3a8aa849046
This commit is contained in:
blacksun
2014-11-01 11:09:58 +00:00
parent 7f24ab49c1
commit 1252288ad1

View File

@@ -55,11 +55,14 @@ void SlaveElement::linkToElement(Element *elmt) {
if (elmt->linkType() == Master && !connected_elements.contains(elmt)) { if (elmt->linkType() == Master && !connected_elements.contains(elmt)) {
if(!isFree()) unlinkAllElements(); if(!isFree()) unlinkAllElements();
connected_elements << elmt; connected_elements << elmt;
connect(elmt, SIGNAL(xChanged()), this, SLOT(updateLabel()));
connect(elmt, SIGNAL(yChanged()), this, SLOT(updateLabel()));
connect(elmt, SIGNAL(elementInfoChange(DiagramContext)), this, SLOT(updateLabel()));
connect(diagram()->project(), SIGNAL(projectDiagramsOrderChanged(QETProject*,int,int)), this, SLOT(updateLabel()));
updateLabel(); updateLabel();
connect(elmt, SIGNAL(xChanged()), this, SLOT(updateLabel())); elmt -> linkToElement(this);
connect(elmt, SIGNAL(yChanged()), this, SLOT(updateLabel()));
connect(elmt, SIGNAL(elementInfoChange(DiagramContext)), this, SLOT(updateLabel()));
elmt->linkToElement(this);
} }
} }
@@ -85,12 +88,16 @@ void SlaveElement::unlinkElement(Element *elmt) {
//Ensure elmt is linked to this element //Ensure elmt is linked to this element
if (connected_elements.contains(elmt)) { if (connected_elements.contains(elmt)) {
connected_elements.removeOne(elmt); connected_elements.removeOne(elmt);
disconnect(elmt, SIGNAL(xChanged()), this, SLOT(updateLabel()));
disconnect(elmt, SIGNAL(yChanged()), this, SLOT(updateLabel())); disconnect(elmt, SIGNAL(xChanged()), this, SLOT(updateLabel()));
disconnect(elmt, SIGNAL(elementInfoChange(DiagramContext)), this, SLOT(updateLabel())); disconnect(elmt, SIGNAL(yChanged()), this, SLOT(updateLabel()));
disconnect(elmt, SIGNAL(elementInfoChange(DiagramContext)), this, SLOT(updateLabel()));
disconnect(diagram()->project(), SIGNAL(projectDiagramsOrderChanged(QETProject*,int,int)), this, SLOT(updateLabel()));
delete Xref_item; Xref_item = NULL; delete Xref_item; Xref_item = NULL;
updateLabel(); updateLabel();
elmt->unlinkElement(this); elmt -> unlinkElement(this);
} }
} }