aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/items/qquickshadereffect_p.h
diff options
context:
space:
mode:
authorKim Motoyoshi Kalland <kim.kalland@nokia.com>2012-01-11 17:34:58 +0100
committerQt by Nokia <qt-info@nokia.com>2012-01-16 15:07:33 +0100
commite79eedcb1eaf56280035550f4c6bb2395a51fd16 (patch)
tree45e6d0c6aa05ddd59762159b7dc27bd877f57134 /src/quick/items/qquickshadereffect_p.h
parent7911627f718d0e4876c42adbb5f3e02cf3c9f4eb (diff)
Added log and status properties to ShaderEffect.
Task-number: QTBUG-23531 Change-Id: I136f6d9642ff9d4074fe8dae1f5714a05349107a Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
Diffstat (limited to 'src/quick/items/qquickshadereffect_p.h')
-rw-r--r--src/quick/items/qquickshadereffect_p.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/quick/items/qquickshadereffect_p.h b/src/quick/items/qquickshadereffect_p.h
index 7536b42a73..4c575d985d 100644
--- a/src/quick/items/qquickshadereffect_p.h
+++ b/src/quick/items/qquickshadereffect_p.h
@@ -70,7 +70,10 @@ class Q_AUTOTEST_EXPORT QQuickShaderEffect : public QQuickItem
Q_PROPERTY(bool blending READ blending WRITE setBlending NOTIFY blendingChanged)
Q_PROPERTY(QVariant mesh READ mesh WRITE setMesh NOTIFY meshChanged)
Q_PROPERTY(CullMode culling READ cullMode WRITE setCullMode NOTIFY cullModeChanged)
+ Q_PROPERTY(QString log READ log NOTIFY logChanged)
+ Q_PROPERTY(Status status READ status NOTIFY statusChanged)
Q_ENUMS(CullMode)
+ Q_ENUMS(Status)
public:
enum CullMode
@@ -80,6 +83,13 @@ public:
FrontFaceCulling = QQuickShaderEffectMaterial::FrontFaceCulling
};
+ enum Status
+ {
+ Compiled,
+ Uncompiled,
+ Error
+ };
+
QQuickShaderEffect(QQuickItem *parent = 0);
~QQuickShaderEffect();
@@ -98,7 +108,11 @@ public:
CullMode cullMode() const { return m_cullMode; }
void setCullMode(CullMode face);
+ QString log() const { return m_log; }
+ Status status() const { return m_status; }
+
void ensureCompleted();
+ QString parseLog() { return m_parseLog; }
Q_SIGNALS:
void fragmentShaderChanged();
@@ -106,6 +120,8 @@ Q_SIGNALS:
void blendingChanged();
void meshChanged();
void cullModeChanged();
+ void logChanged();
+ void statusChanged();
protected:
virtual void geometryChanged(const QRectF &newGeometry, const QRectF &oldGeometry);
@@ -116,6 +132,7 @@ private Q_SLOTS:
void changeSource(int index);
void updateData();
void updateGeometry();
+ void updateLogAndStatus(const QString &log, int status);
private:
friend class QQuickCustomMaterialShader;
@@ -133,6 +150,8 @@ private:
QQuickShaderEffectMesh *m_mesh;
QQuickGridMesh m_defaultMesh;
CullMode m_cullMode;
+ QString m_log;
+ Status m_status;
struct SourceData
{
@@ -141,6 +160,7 @@ private:
QByteArray name;
};
QVector<SourceData> m_sources;
+ QString m_parseLog;
uint m_blending : 1;
uint m_dirtyData : 1;