Amelioration mineure du comportement lors des selections multiples d'elements/conducteurs/textes.

git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@563 bfdf4180-ca20-0410-9c96-a3a8aa849046
This commit is contained in:
xavier
2009-04-04 18:48:15 +00:00
parent 2da668657d
commit 4244f907e4
4 changed files with 25 additions and 5 deletions

View File

@@ -588,6 +588,9 @@ void Conductor::mousePressEvent(QGraphicsSceneMouseEvent *e) {
} }
} }
QGraphicsPathItem::mousePressEvent(e); QGraphicsPathItem::mousePressEvent(e);
if (e -> modifiers() & Qt::ControlModifier) {
setSelected(!isSelected());
}
} }
/** /**
@@ -654,7 +657,9 @@ void Conductor::mouseReleaseEvent(QGraphicsSceneMouseEvent *e) {
has_to_save_profile = false; has_to_save_profile = false;
} }
setZValue(previous_z_value); setZValue(previous_z_value);
if (!(e -> modifiers() & Qt::ControlModifier)) {
QGraphicsPathItem::mouseReleaseEvent(e); QGraphicsPathItem::mouseReleaseEvent(e);
}
calculateTextItemPosition(); calculateTextItemPosition();
} }

View File

@@ -131,6 +131,16 @@ void DiagramTextItem::mouseDoubleClickEvent(QGraphicsSceneMouseEvent *event) {
} }
} }
/**
Gere le clic sur le champ de texte
*/
void DiagramTextItem::mousePressEvent(QGraphicsSceneMouseEvent *e) {
if (e -> modifiers() & Qt::ControlModifier) {
setSelected(!isSelected());
}
QGraphicsTextItem::mousePressEvent(e);
}
/** /**
Gere les mouvements de souris lies au champ de texte Gere les mouvements de souris lies au champ de texte
*/ */
@@ -165,7 +175,9 @@ void DiagramTextItem::mouseReleaseEvent(QGraphicsSceneMouseEvent *e) {
} }
diagram_ptr -> invalidateMovedElements(); diagram_ptr -> invalidateMovedElements();
} }
if (!(e -> modifiers() & Qt::ControlModifier)) {
QGraphicsTextItem::mouseReleaseEvent(e); QGraphicsTextItem::mouseReleaseEvent(e);
}
} }
/** /**

View File

@@ -52,6 +52,7 @@ class DiagramTextItem : public QGraphicsTextItem {
protected: protected:
virtual void focusOutEvent(QFocusEvent *); virtual void focusOutEvent(QFocusEvent *);
virtual void mouseDoubleClickEvent(QGraphicsSceneMouseEvent *); virtual void mouseDoubleClickEvent(QGraphicsSceneMouseEvent *);
virtual void mousePressEvent(QGraphicsSceneMouseEvent *);
virtual void mouseMoveEvent(QGraphicsSceneMouseEvent *); virtual void mouseMoveEvent(QGraphicsSceneMouseEvent *);
virtual void mouseReleaseEvent(QGraphicsSceneMouseEvent *); virtual void mouseReleaseEvent(QGraphicsSceneMouseEvent *);

View File

@@ -263,8 +263,8 @@ void Element::setPos(qreal x, qreal y) {
Gere l'enfoncement d'un bouton de la souris Gere l'enfoncement d'un bouton de la souris
*/ */
void Element::mousePressEvent(QGraphicsSceneMouseEvent *e) { void Element::mousePressEvent(QGraphicsSceneMouseEvent *e) {
if (!isSelected() && e -> modifiers() & Qt::ControlModifier) { if (e -> modifiers() & Qt::ControlModifier) {
setSelected(true); setSelected(!isSelected());
} }
QGraphicsItem::mousePressEvent(e); QGraphicsItem::mousePressEvent(e);
} }
@@ -302,7 +302,9 @@ void Element::mouseReleaseEvent(QGraphicsSceneMouseEvent *e) {
} }
diagram_ptr -> invalidateMovedElements(); diagram_ptr -> invalidateMovedElements();
} }
if (!(e -> modifiers() & Qt::ControlModifier)) {
QGraphicsItem::mouseReleaseEvent(e); QGraphicsItem::mouseReleaseEvent(e);
}
} }
/** /**