diff options
author | Paul Lemire <paul.lemire@kdab.com> | 2014-07-28 13:13:10 +0200 |
---|---|---|
committer | Sean Harmer <sean.harmer@kdab.com> | 2014-08-13 20:18:56 +0200 |
commit | 3c0fa219bea4f928ce2ee178e8d228f36adf1e3e (patch) | |
tree | e839b5ac52994d41c38b7a93a3b90b4d1fe20994 | |
parent | 5cd58e1f72ad7fc9260cb20c37b748d5cba96081 (diff) |
QRotateTransform implements doClone and copy methods
Change-Id: I38e33099df1759bfe959023fcc95ac4fd7f639e8
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
-rw-r--r-- | src/core/transforms/qrotatetransform.cpp | 15 | ||||
-rw-r--r-- | src/core/transforms/qrotatetransform.h | 4 |
2 files changed, 18 insertions, 1 deletions
diff --git a/src/core/transforms/qrotatetransform.cpp b/src/core/transforms/qrotatetransform.cpp index 918ca0c58..439e47297 100644 --- a/src/core/transforms/qrotatetransform.cpp +++ b/src/core/transforms/qrotatetransform.cpp @@ -61,12 +61,27 @@ QRotateTransform::QRotateTransform(QNode *parent) { } +void QRotateTransform::copy(const QNode *ref) +{ + Q_D(QRotateTransform); + QAbstractTransform::copy(ref); + const QRotateTransform *transform = qobject_cast<const QRotateTransform *>(ref); + if (ref != Q_NULLPTR) { + d->m_axis = transform->axis(); + d->m_angleDeg = transform->angleDeg(); + } +} QRotateTransform::QRotateTransform(QRotateTransformPrivate &dd, QNode *parent) : QAbstractTransform(dd, parent) { } +QRotateTransform *QRotateTransform::doClone(QNode *clonedParent) const +{ + return new QRotateTransform(clonedParent); +} + float QRotateTransform::angleDeg() const { Q_D(const QRotateTransform); diff --git a/src/core/transforms/qrotatetransform.h b/src/core/transforms/qrotatetransform.h index 466d010a6..6e849494f 100644 --- a/src/core/transforms/qrotatetransform.h +++ b/src/core/transforms/qrotatetransform.h @@ -63,6 +63,8 @@ class QT3DCORESHARED_EXPORT QRotateTransform : public QAbstractTransform public: explicit QRotateTransform(QNode *parent = 0); + void copy(const QNode *ref) Q_DECL_OVERRIDE; + float angleDeg() const; float angleRad() const; QVector3D axis() const; @@ -80,7 +82,7 @@ Q_SIGNALS: protected: Q_DECLARE_PRIVATE(QRotateTransform) QRotateTransform(QRotateTransformPrivate &dd, QNode *parent = 0); - + QRotateTransform *doClone(QNode *clonedParent) const Q_DECL_OVERRIDE; }; } // namespace Qt3D |