diff options
author | Mike Krus <mike.krus@kdab.com> | 2016-03-17 21:45:30 +0000 |
---|---|---|
committer | Sean Harmer <sean.harmer@kdab.com> | 2016-03-22 12:53:11 +0000 |
commit | 68667e9105744478bcfd2cf16efda71a350da372 (patch) | |
tree | bf88e711878abc9403b89a21a1927e999448a6d9 /src/render/framegraph/qclearbuffers.cpp | |
parent | e3c31c3a5a1061e2cf85e49398093b0a11437649 (diff) |
Added properties to QClearBuffers
- clearColor
- clearDepthValue
- clearStencilValue
Task-number: QTBUG-51460
Change-Id: Ib31efde0b6ab97ef1f57d4ce71fb2fbca218dc85
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'src/render/framegraph/qclearbuffers.cpp')
-rw-r--r-- | src/render/framegraph/qclearbuffers.cpp | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/src/render/framegraph/qclearbuffers.cpp b/src/render/framegraph/qclearbuffers.cpp index d0c323086..94371c637 100644 --- a/src/render/framegraph/qclearbuffers.cpp +++ b/src/render/framegraph/qclearbuffers.cpp @@ -48,6 +48,8 @@ namespace Qt3DRender { QClearBuffersPrivate::QClearBuffersPrivate() : QFrameGraphNodePrivate() , m_buffersType(QClearBuffers::None) + , m_clearDepthValue(1.f) + , m_clearStencilValue(0) { } @@ -56,6 +58,9 @@ void QClearBuffers::copy(const QNode *ref) QFrameGraphNode::copy(ref); const QClearBuffers *b = static_cast<const QClearBuffers*>(ref); d_func()->m_buffersType = b->d_func()->m_buffersType; + d_func()->m_clearColor = b->d_func()->m_clearColor; + d_func()->m_clearDepthValue = b->d_func()->m_clearDepthValue; + d_func()->m_clearStencilValue = b->d_func()->m_clearStencilValue; } QClearBuffers::QClearBuffers(QNode *parent) @@ -81,6 +86,24 @@ QClearBuffers::BufferType QClearBuffers::buffers() const return d->m_buffersType; } +QColor QClearBuffers::clearColor() const +{ + Q_D(const QClearBuffers); + return d->m_clearColor; +} + +float QClearBuffers::clearDepthValue() const +{ + Q_D(const QClearBuffers); + return d->m_clearDepthValue; +} + +int QClearBuffers::clearStencilValue() const +{ + Q_D(const QClearBuffers); + return d->m_clearStencilValue; +} + void QClearBuffers::setBuffers(QClearBuffers::BufferType buffers) { Q_D(QClearBuffers); @@ -90,6 +113,35 @@ void QClearBuffers::setBuffers(QClearBuffers::BufferType buffers) } } +void QClearBuffers::setClearColor(const QColor &color) +{ + Q_D(QClearBuffers); + if (d->m_clearColor != color) { + d->m_clearColor = color; + emit clearColorChanged(color); + } +} + +void QClearBuffers::setClearDepthValue(float clearDepthValue) +{ + Q_D(QClearBuffers); + if (d->m_clearDepthValue != clearDepthValue) { + if (clearDepthValue >= 0.f && clearDepthValue <= 1.f) { + d->m_clearDepthValue = clearDepthValue; + emit clearDepthValueChanged(clearDepthValue); + } else qWarning() << "Invalid clear depth value"; + } +} + +void QClearBuffers::setClearStencilValue(int clearStencilValue) +{ + Q_D(QClearBuffers); + if (d->m_clearStencilValue != clearStencilValue) { + d->m_clearStencilValue = clearStencilValue; + emit clearStencilValueChanged(clearStencilValue); + } +} + } // namespace Qt3DRender QT_END_NAMESPACE |