[qet] [2734] element text item: element isn't movable by defaut, |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/qet Archives
]
Revision: 2734
Author: blacksun
Date: 2014-01-11 19:09:04 +0100 (Sat, 11 Jan 2014)
Log Message:
-----------
element text item: element isn't movable by defaut,
for move text we must hold ctrl key
Modified Paths:
--------------
trunk/sources/qetgraphicsitem/elementtextitem.cpp
trunk/sources/qetgraphicsitem/elementtextitem.h
Modified: trunk/sources/qetgraphicsitem/elementtextitem.cpp
===================================================================
--- trunk/sources/qetgraphicsitem/elementtextitem.cpp 2014-01-11 08:31:39 UTC (rev 2733)
+++ trunk/sources/qetgraphicsitem/elementtextitem.cpp 2014-01-11 18:09:04 UTC (rev 2734)
@@ -31,15 +31,7 @@
follow_parent_rotations(false),
original_rotation_angle_(0.0),
first_move_(true)
-{
- // par defaut, les DiagramTextItem sont Selectable et Movable
- // cela nous convient, on ne touche pas a ces flags
-
- adjustItemPosition(1);
- // ajuste la position du QGraphicsItem lorsque le QTextDocument change
- connect(document(), SIGNAL(blockCountChanged(int)), this, SLOT(adjustItemPosition(int)));
- connect(document(), SIGNAL(contentsChanged()), this, SLOT(adjustItemPosition()));
-}
+{build();}
/**
Constructeur
@@ -53,10 +45,11 @@
follow_parent_rotations(false),
original_rotation_angle_(0.0),
first_move_(true)
-{
- // par defaut, les DiagramTextItem sont Selectable et Movable
- // cela nous convient, on ne touche pas a ces flags
-
+{build();}
+
+void ElementTextItem::build() {
+ setFlag(QGraphicsItem::ItemIsMovable, false);
+ setToolTip(tr("Maintenir ctrl pour d\351placer", "tool tip for element text item"));
adjustItemPosition(1);
// ajuste la position du QGraphicsItem lorsque le QTextDocument change
connect(document(), SIGNAL(blockCountChanged(int)), this, SLOT(adjustItemPosition(int)));
@@ -224,9 +217,10 @@
void ElementTextItem::mousePressEvent(QGraphicsSceneMouseEvent *e) {
first_move_ = true;
if (e -> modifiers() & Qt::ControlModifier) {
- setSelected(!isSelected());
+ setSelected(true);
+ setFlag(QGraphicsItem::ItemIsMovable, true);
}
- DiagramTextItem::mousePressEvent(e);
+ else DiagramTextItem::mousePressEvent(e);
}
/**
@@ -307,4 +301,5 @@
if (!(e -> modifiers() & Qt::ControlModifier)) {
QGraphicsTextItem::mouseReleaseEvent(e);
}
+ setFlag(QGraphicsItem::ItemIsMovable, false);
}
Modified: trunk/sources/qetgraphicsitem/elementtextitem.h
===================================================================
--- trunk/sources/qetgraphicsitem/elementtextitem.h 2014-01-11 08:31:39 UTC (rev 2733)
+++ trunk/sources/qetgraphicsitem/elementtextitem.h 2014-01-11 18:09:04 UTC (rev 2734)
@@ -72,6 +72,10 @@
virtual void mousePressEvent(QGraphicsSceneMouseEvent *);
virtual void mouseMoveEvent(QGraphicsSceneMouseEvent *);
virtual void mouseReleaseEvent(QGraphicsSceneMouseEvent *);
+ virtual void focusOutEvent(QFocusEvent *e) {DiagramTextItem::focusOutEvent(e); setFlag(QGraphicsItem::ItemIsMovable, false);}
+
+ private:
+ void build();
};
/**