summaryrefslogtreecommitdiffstats
path: root/src/declarative/graphicsitems/qmlgraphicsitem.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/declarative/graphicsitems/qmlgraphicsitem.cpp')
-rw-r--r--src/declarative/graphicsitems/qmlgraphicsitem.cpp51
1 files changed, 27 insertions, 24 deletions
diff --git a/src/declarative/graphicsitems/qmlgraphicsitem.cpp b/src/declarative/graphicsitems/qmlgraphicsitem.cpp
index db59cf2..68a565d 100644
--- a/src/declarative/graphicsitems/qmlgraphicsitem.cpp
+++ b/src/declarative/graphicsitems/qmlgraphicsitem.cpp
@@ -39,6 +39,19 @@
**
****************************************************************************/
+#include "qmlgraphicsitem_p.h"
+#include "qmlgraphicsitem.h"
+
+#include "qmlgraphicsevents_p_p.h"
+
+#include <qfxperf_p_p.h>
+#include <qmlengine.h>
+#include <qmlopenmetaobject_p.h>
+#include <qmlstate_p.h>
+#include <qmlview.h>
+#include <qmlstategroup_p.h>
+#include <qmlcomponent.h>
+
#include <QDebug>
#include <QPen>
#include <QFile>
@@ -47,22 +60,9 @@
#include <QNetworkRequest>
#include <QGraphicsSceneMouseEvent>
#include <QtScript/qscriptengine.h>
-#include <private/qfxperf_p_p.h>
#include <QtGui/qgraphicstransform.h>
#include <QtGui/qgraphicseffect.h>
-
-#include <qmlengine.h>
-#include <private/qmlopenmetaobject_p.h>
-#include <private/qmlstate_p.h>
-#include <private/qlistmodelinterface_p.h>
-
-#include "qmlview.h"
-#include <private/qmlstategroup_p.h>
-
-#include "qmlgraphicsitem_p.h"
-#include "qmlgraphicsitem.h"
-#include <private/qmlgraphicsevents_p_p.h>
-#include <qmlcomponent.h>
+#include <qlistmodelinterface_p.h>
QT_BEGIN_NAMESPACE
@@ -1442,13 +1442,14 @@ QmlGraphicsKeysAttached *QmlGraphicsKeysAttached::qmlAttachedProperties(QObject
\internal
*/
-static inline void qfxitem_registerAnchorLine() {
- static bool registered = false;
- if (!registered) {
+// ### Must fix
+struct RegisterAnchorLineAtStartup {
+ RegisterAnchorLineAtStartup() {
qRegisterMetaType<QmlGraphicsAnchorLine>("QmlGraphicsAnchorLine");
- registered = true;
}
-}
+};
+static RegisterAnchorLineAtStartup registerAnchorLineAtStartup;
+
/*!
\fn QmlGraphicsItem::QmlGraphicsItem(QmlGraphicsItem *parent)
@@ -1459,7 +1460,6 @@ QmlGraphicsItem::QmlGraphicsItem(QmlGraphicsItem* parent)
: QGraphicsObject(*(new QmlGraphicsItemPrivate), parent, 0)
{
Q_D(QmlGraphicsItem);
- qfxitem_registerAnchorLine();
d->init(parent);
}
@@ -1469,7 +1469,6 @@ QmlGraphicsItem::QmlGraphicsItem(QmlGraphicsItemPrivate &dd, QmlGraphicsItem *pa
: QGraphicsObject(dd, parent, 0)
{
Q_D(QmlGraphicsItem);
- qfxitem_registerAnchorLine();
d->init(parent);
}
@@ -1492,6 +1491,7 @@ QmlGraphicsItem::~QmlGraphicsItem()
d->dependantAnchors.clear();
delete d->_anchorLines; d->_anchorLines = 0;
delete d->_anchors; d->_anchors = 0;
+ delete d->_stateGroup; d->_stateGroup = 0;
}
/*!
@@ -2621,7 +2621,7 @@ QmlStateGroup *QmlGraphicsItemPrivate::states()
{
Q_Q(QmlGraphicsItem);
if (!_stateGroup) {
- _stateGroup = new QmlStateGroup(q);
+ _stateGroup = new QmlStateGroup;
if (!_componentComplete)
_stateGroup->classBegin();
QObject::connect(_stateGroup, SIGNAL(stateChanged(QString)),
@@ -2994,6 +2994,9 @@ QDebug operator<<(QDebug debug, QmlGraphicsItem *item)
return debug;
}
+int QmlGraphicsItemPrivate::heightIdx = -1;
+int QmlGraphicsItemPrivate::widthIdx = -1;
+
int QmlGraphicsItemPrivate::consistentTime = -1;
void QmlGraphicsItemPrivate::setConsistentTime(int t)
{
@@ -3031,8 +3034,8 @@ int QmlGraphicsItemPrivate::restart(QTime &t)
return n;
}
-#include "qmlgraphicsitem.moc"
-#include "moc_qmlgraphicsitem.cpp"
+#include <qmlgraphicsitem.moc>
+#include <moc_qmlgraphicsitem.cpp>
QT_END_NAMESPACE