summaryrefslogtreecommitdiffstats
path: root/src/gui
diff options
context:
space:
mode:
authorQt Continuous Integration System <qt-info@nokia.com>2010-07-22 22:54:32 (GMT)
committerQt Continuous Integration System <qt-info@nokia.com>2010-07-22 22:54:32 (GMT)
commitb6fdfd54442e9a2545c083bdbdb49042b6440ff4 (patch)
tree78194844d1de4bff76edecfe3b7e2861bafec8e3 /src/gui
parent618aa624538eb0f591cfa817e1520bc8810792c7 (diff)
parenta305eb2d69d82a28dfd8af4f70d50943474831a8 (diff)
downloadQt-b6fdfd54442e9a2545c083bdbdb49042b6440ff4.zip
Qt-b6fdfd54442e9a2545c083bdbdb49042b6440ff4.tar.gz
Qt-b6fdfd54442e9a2545c083bdbdb49042b6440ff4.tar.bz2
Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-qml into 4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/qt-qml: (34 commits) Fix TextInput echoMode autotest on Linux Reuse QML lexer to simplify .pragma script logic Fix TextEdit text attribute and text stored in the internal QTextDocument having different contents Remove QDeclarativeItem::childrenChanged() signal overload Update QtGui and QtDeclarative def files Make rootContext and engine pointers in QDeclarativeView API const Add additional QVariant benchmarks. Allow MouseArea dragging to filter mouse events from descendants Expand QDeclarativeExtensionPlugin docs Add missing snippet files Expand QtObject doc Indicate default values Use snippets instead to avoid quoting license headers Rename remaining 'wantsFocus'. Bounding rect of text was not always calculated correctly. Add QML tutorials to the tutorials page QML focus API updates. Do not show copyright header in documentation. Ensure redirects (and indeed all reply process) is done in the right thread. Only ignore the same target value for a Behavior when it is running. ...
Diffstat (limited to 'src/gui')
-rw-r--r--src/gui/graphicsview/qgraphicsitem.cpp12
-rw-r--r--src/gui/graphicsview/qgraphicsitem_p.h1
2 files changed, 13 insertions, 0 deletions
diff --git a/src/gui/graphicsview/qgraphicsitem.cpp b/src/gui/graphicsview/qgraphicsitem.cpp
index 6249822..56182d1 100644
--- a/src/gui/graphicsview/qgraphicsitem.cpp
+++ b/src/gui/graphicsview/qgraphicsitem.cpp
@@ -1150,6 +1150,7 @@ void QGraphicsItemPrivate::setParentItemHelper(QGraphicsItem *newParent, const Q
if (q_ptr == fsi || q_ptr->isAncestorOf(fsi)) {
parentFocusScopeItem = fsi;
p->d_ptr->focusScopeItem = 0;
+ fsi->d_ptr->focusScopeItemChange(false);
}
break;
}
@@ -1182,6 +1183,7 @@ void QGraphicsItemPrivate::setParentItemHelper(QGraphicsItem *newParent, const Q
while (p) {
if (p->d_ptr->flags & QGraphicsItem::ItemIsFocusScope) {
p->d_ptr->focusScopeItem = newFocusScopeItem;
+ newFocusScopeItem->d_ptr->focusScopeItemChange(true);
// Ensure the new item is no longer the subFocusItem. The
// only way to set focus on a child of a focus scope is
// by setting focus on the scope itself.
@@ -5587,6 +5589,16 @@ void QGraphicsItemPrivate::subFocusItemChange()
/*!
\internal
+ Subclasses can reimplement this function to be notified when an item
+ becomes a focusScopeItem (or is no longer a focusScopeItem).
+*/
+void QGraphicsItemPrivate::focusScopeItemChange(bool isSubFocusItem)
+{
+}
+
+/*!
+ \internal
+
Subclasses can reimplement this function to be notified when its
siblingIndex order is changed.
*/
diff --git a/src/gui/graphicsview/qgraphicsitem_p.h b/src/gui/graphicsview/qgraphicsitem_p.h
index 5b9a710..d60dffb 100644
--- a/src/gui/graphicsview/qgraphicsitem_p.h
+++ b/src/gui/graphicsview/qgraphicsitem_p.h
@@ -482,6 +482,7 @@ public:
void clearSubFocus(QGraphicsItem *rootItem = 0);
void resetFocusProxy();
virtual void subFocusItemChange();
+ virtual void focusScopeItemChange(bool isSubFocusItem);
static void children_append(QDeclarativeListProperty<QGraphicsObject> *list, QGraphicsObject *item);
static int children_count(QDeclarativeListProperty<QGraphicsObject> *list);