mirror of
https://github.com/qelectrotech/qelectrotech-source-mirror.git
synced 2025-12-18 22:00:35 +01:00
Correction de la facon dont la zValue des conducteurs est geree.
git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@811 bfdf4180-ca20-0410-9c96-a3a8aa849046
This commit is contained in:
@@ -595,15 +595,11 @@ void Conductor::mousePressEvent(QGraphicsSceneMouseEvent *e) {
|
|||||||
if (hasClickedOn(press_point, segment -> secondPoint())) {
|
if (hasClickedOn(press_point, segment -> secondPoint())) {
|
||||||
moving_point = true;
|
moving_point = true;
|
||||||
moving_segment = false;
|
moving_segment = false;
|
||||||
previous_z_value = zValue();
|
|
||||||
setZValue(5000.0);
|
|
||||||
moved_segment = segment;
|
moved_segment = segment;
|
||||||
break;
|
break;
|
||||||
} else if (hasClickedOn(press_point, segment -> middle())) {
|
} else if (hasClickedOn(press_point, segment -> middle())) {
|
||||||
moving_point = false;
|
moving_point = false;
|
||||||
moving_segment = true;
|
moving_segment = true;
|
||||||
previous_z_value = zValue();
|
|
||||||
setZValue(5000.0);
|
|
||||||
moved_segment = segment;
|
moved_segment = segment;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -680,7 +676,6 @@ void Conductor::mouseReleaseEvent(QGraphicsSceneMouseEvent *e) {
|
|||||||
saveProfile();
|
saveProfile();
|
||||||
has_to_save_profile = false;
|
has_to_save_profile = false;
|
||||||
}
|
}
|
||||||
setZValue(previous_z_value);
|
|
||||||
if (!(e -> modifiers() & Qt::ControlModifier)) {
|
if (!(e -> modifiers() & Qt::ControlModifier)) {
|
||||||
QGraphicsPathItem::mouseReleaseEvent(e);
|
QGraphicsPathItem::mouseReleaseEvent(e);
|
||||||
}
|
}
|
||||||
@@ -737,6 +732,27 @@ void Conductor::hoverMoveEvent(QGraphicsSceneHoverEvent *e) {
|
|||||||
QGraphicsPathItem::hoverMoveEvent(e);
|
QGraphicsPathItem::hoverMoveEvent(e);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
Gere les changements relatifs au conducteur
|
||||||
|
Reimplemente ici pour :
|
||||||
|
* positionner le conducteur en avant-plan lorsqu'il est selectionne
|
||||||
|
@param change
|
||||||
|
@param value
|
||||||
|
*/
|
||||||
|
QVariant Conductor::itemChange(GraphicsItemChange change, const QVariant &value) {
|
||||||
|
if (change == QGraphicsItem::ItemSelectedChange) {
|
||||||
|
if (value.toBool()) {
|
||||||
|
// le conducteur vient de se faire selectionner
|
||||||
|
previous_z_value = zValue();
|
||||||
|
setZValue(qAbs(previous_z_value) + 10000);
|
||||||
|
} else {
|
||||||
|
// le conducteur vient de se faire deselectionner
|
||||||
|
setZValue(previous_z_value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return(QGraphicsPathItem::itemChange(change, value));
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@return Le rectangle delimitant l'espace de dessin du conducteur
|
@return Le rectangle delimitant l'espace de dessin du conducteur
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -93,6 +93,7 @@ class Conductor : public QObject, public QGraphicsPathItem {
|
|||||||
virtual void hoverEnterEvent(QGraphicsSceneHoverEvent *);
|
virtual void hoverEnterEvent(QGraphicsSceneHoverEvent *);
|
||||||
virtual void hoverLeaveEvent(QGraphicsSceneHoverEvent *);
|
virtual void hoverLeaveEvent(QGraphicsSceneHoverEvent *);
|
||||||
virtual void hoverMoveEvent(QGraphicsSceneHoverEvent *);
|
virtual void hoverMoveEvent(QGraphicsSceneHoverEvent *);
|
||||||
|
virtual QVariant itemChange(GraphicsItemChange, const QVariant &);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
/// caracteristiques du conducteur
|
/// caracteristiques du conducteur
|
||||||
|
|||||||
Reference in New Issue
Block a user