mirror of
https://github.com/qelectrotech/qelectrotech-source-mirror.git
synced 2025-12-22 09:40:52 +01:00
Il est desormais possible de deplacer les champs de texte des elements.
git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/branches/0.3@967 bfdf4180-ca20-0410-9c96-a3a8aa849046
This commit is contained in:
@@ -813,6 +813,7 @@ void Diagram::invalidateMovedElements() {
|
||||
conductors_to_move.clear();
|
||||
conductors_to_update.clear();
|
||||
texts_to_move.clear();
|
||||
elements_texts_to_move.clear();
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -825,6 +826,8 @@ void Diagram::fetchMovedElements() {
|
||||
elements_to_move << elmt;
|
||||
} else if (IndependentTextItem *iti = qgraphicsitem_cast<IndependentTextItem *>(item)) {
|
||||
texts_to_move << iti;
|
||||
} else if (ElementTextItem *eti = qgraphicsitem_cast<ElementTextItem *>(item)) {
|
||||
elements_texts_to_move << eti;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -847,13 +850,14 @@ void Diagram::fetchMovedElements() {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
moved_elements_fetched = true;
|
||||
}
|
||||
|
||||
/**
|
||||
Deplace les elements, conducteurs et textes selectionnes en gerant au
|
||||
mieux les conducteurs (seuls les conducteurs dont un seul des elements
|
||||
est deplace sont recalcules, les autres sont deplaces).
|
||||
Deplace les elements, conducteurs et textes independants selectionnes en
|
||||
gerant au mieux les conducteurs (seuls les conducteurs dont un seul des
|
||||
elements est deplace sont recalcules, les autres sont deplaces).
|
||||
@param diff Translation a effectuer
|
||||
@param dontmove QGraphicsItem (optionnel) a ne pas deplacer ; note : ce
|
||||
parametre ne concerne que les elements et les champs de texte.
|
||||
@@ -887,6 +891,26 @@ void Diagram::moveElements(const QPointF &diff, QGraphicsItem *dontmove) {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
Deplace les champs de textes selectionnes ET rattaches a un element
|
||||
@param diff Translation a effectuer, exprimee dans les coordonnees de la
|
||||
scene
|
||||
@param dontmove ElementTextItem (optionnel) a ne pas deplacer
|
||||
*/
|
||||
void Diagram::moveElementsTexts(const QPointF &diff, ElementTextItem *dontmove) {
|
||||
// inutile de deplacer les autres textes s'il n'y a pas eu de mouvement concret
|
||||
if (diff.isNull()) return;
|
||||
current_movement += diff;
|
||||
|
||||
// deplace les champs de texte rattaches a un element
|
||||
foreach(ElementTextItem *eti, elementTextsToMove()) {
|
||||
if (dontmove && eti == dontmove) continue;
|
||||
QPointF applied_movement = eti -> mapMovementToParent(eti-> mapMovementFromScene(diff));
|
||||
eti -> setPos(eti -> pos() + applied_movement);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
Permet de savoir si un element est utilise sur un schema
|
||||
@param location Emplacement d'un element
|
||||
|
||||
Reference in New Issue
Block a user