summaryrefslogtreecommitdiffstats
path: root/src/declarative/qml/qdeclarativebinding_p.h
diff options
context:
space:
mode:
authorBea Lam <bea.lam@nokia.com>2011-01-27 05:34:34 (GMT)
committerBea Lam <bea.lam@nokia.com>2011-01-27 05:37:10 (GMT)
commit43b8305367156c1ceb09eb4a056bdae3f325b5eb (patch)
tree8d792838920476495cba22c802939b719619a55d /src/declarative/qml/qdeclarativebinding_p.h
parent357f1163f75e4b23a5b87dd6b3d742d167cd9c10 (diff)
downloadQt-43b8305367156c1ceb09eb4a056bdae3f325b5eb.zip
Qt-43b8305367156c1ceb09eb4a056bdae3f325b5eb.tar.gz
Qt-43b8305367156c1ceb09eb4a056bdae3f325b5eb.tar.bz2
Allow property bindings to be easily created from JavaScript
Properties can now be assigned a function that returns the binding value. Task-number: QTBUG-14964 Reviewed-by: Aaron Kennedy
Diffstat (limited to 'src/declarative/qml/qdeclarativebinding_p.h')
-rw-r--r--src/declarative/qml/qdeclarativebinding_p.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/declarative/qml/qdeclarativebinding_p.h b/src/declarative/qml/qdeclarativebinding_p.h
index 19e7099..0260b95 100644
--- a/src/declarative/qml/qdeclarativebinding_p.h
+++ b/src/declarative/qml/qdeclarativebinding_p.h
@@ -147,14 +147,21 @@ class Q_DECLARATIVE_PRIVATE_EXPORT QDeclarativeBinding : public QDeclarativeExpr
{
Q_OBJECT
public:
+ enum EvaluateFlag { RequiresThisObject = 0x01 };
+ Q_DECLARE_FLAGS(EvaluateFlags, EvaluateFlag)
+
QDeclarativeBinding(const QString &, QObject *, QDeclarativeContext *, QObject *parent=0);
QDeclarativeBinding(const QString &, QObject *, QDeclarativeContextData *, QObject *parent=0);
QDeclarativeBinding(void *, QDeclarativeRefCount *, QObject *, QDeclarativeContextData *,
const QString &, int, QObject *parent);
+ QDeclarativeBinding(const QScriptValue &, QObject *, QDeclarativeContextData *, QObject *parent=0);
void setTarget(const QDeclarativeProperty &);
QDeclarativeProperty property() const;
+ void setEvaluateFlags(EvaluateFlags flags);
+ EvaluateFlags evaluateFlags() const;
+
bool enabled() const;
// Inherited from QDeclarativeAbstractBinding
@@ -177,6 +184,8 @@ private:
Q_DECLARE_PRIVATE(QDeclarativeBinding)
};
+Q_DECLARE_OPERATORS_FOR_FLAGS(QDeclarativeBinding::EvaluateFlags)
+
QT_END_NAMESPACE
Q_DECLARE_METATYPE(QDeclarativeBinding*)