diff options
author | Paul Lemire <paul.lemire@kdab.com> | 2014-09-19 08:37:03 +0200 |
---|---|---|
committer | Sean Harmer <sean.harmer@kdab.com> | 2014-09-30 12:16:39 +0200 |
commit | 94bb50fba66435a078f30b1da9cf5507522ab136 (patch) | |
tree | 1c48f4e4463dd0f28fcd38efb259017987bbc8d6 /src/render/frontend/qshaderprogram.cpp | |
parent | 616e8083872c953a31acc871749e05c621c18bd1 (diff) |
Improved/Refactored cloning and doClone off all subclasses
Note: As we are using QScene during cloning, it is important that node hierarchy
be created and added in the proper order (parent then child).
Change-Id: I8fd53f7ca696ec9aca19cc70dc116ccba4154911
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'src/render/frontend/qshaderprogram.cpp')
-rw-r--r-- | src/render/frontend/qshaderprogram.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/render/frontend/qshaderprogram.cpp b/src/render/frontend/qshaderprogram.cpp index e9d4c5c5b..4c39b64aa 100644 --- a/src/render/frontend/qshaderprogram.cpp +++ b/src/render/frontend/qshaderprogram.cpp @@ -86,9 +86,12 @@ QShaderProgram::QShaderProgram(QShaderProgramPrivate &dd, QNode *parent) { } -QShaderProgram *QShaderProgram::doClone(QNode *clonedParent) const +QShaderProgram *QShaderProgram::doClone(bool isClone) const { - return new QShaderProgram(clonedParent); + QShaderProgram *clone = new QShaderProgram(); + clone->copy(this); + clone->d_func()->m_isClone = isClone; + return clone; } void QShaderProgram::setVertexShaderSourceFile(const QString& vertexShaderSourceFile) |