diff options
Diffstat (limited to 'src/quick/util/qdeclarativestate_p.h')
-rw-r--r-- | src/quick/util/qdeclarativestate_p.h | 210 |
1 files changed, 0 insertions, 210 deletions
diff --git a/src/quick/util/qdeclarativestate_p.h b/src/quick/util/qdeclarativestate_p.h deleted file mode 100644 index 5c2606e7cd..0000000000 --- a/src/quick/util/qdeclarativestate_p.h +++ /dev/null @@ -1,210 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). -** Contact: http://www.qt-project.org/ -** -** This file is part of the QtDeclarative module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 as published by the Free Software Foundation -** and appearing in the file LICENSE.GPL included in the packaging of this -** file. Please review the following information to ensure the GNU General -** Public License version 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef QDECLARATIVESTATE_H -#define QDECLARATIVESTATE_H - -#include <qdeclarative.h> -#include <qdeclarativeproperty.h> -#include <QtCore/qobject.h> -#include <QtCore/qsharedpointer.h> -#include <private/qtquickglobal_p.h> - -QT_BEGIN_HEADER - -QT_BEGIN_NAMESPACE - -class QDeclarativeActionEvent; -class QDeclarativeAbstractBinding; -class QDeclarativeBinding; -class QDeclarativeExpression; -class Q_QUICK_PRIVATE_EXPORT QDeclarativeAction -{ -public: - QDeclarativeAction(); - QDeclarativeAction(QObject *, const QString &, const QVariant &); - QDeclarativeAction(QObject *, const QString &, - QDeclarativeContext *, const QVariant &); - - bool restore:1; - bool actionDone:1; - bool reverseEvent:1; - bool deletableToBinding:1; - - QDeclarativeProperty property; - QVariant fromValue; - QVariant toValue; - - QDeclarativeAbstractBinding *fromBinding; - QWeakPointer<QDeclarativeAbstractBinding> toBinding; - QDeclarativeActionEvent *event; - - //strictly for matching - QObject *specifiedObject; - QString specifiedProperty; - - void deleteFromBinding(); -}; - -class Q_AUTOTEST_EXPORT QDeclarativeActionEvent -{ -public: - virtual ~QDeclarativeActionEvent(); - - enum EventType { Script, SignalHandler, ParentChange, AnchorChanges }; - enum Reason { ActualChange, FastForward }; - - virtual EventType type() const = 0; - - virtual void execute(Reason reason = ActualChange); - virtual bool isReversable(); - virtual void reverse(Reason reason = ActualChange); - virtual void saveOriginals() {} - virtual bool needsCopy() { return false; } - virtual void copyOriginals(QDeclarativeActionEvent *) {} - - virtual bool isRewindable() { return isReversable(); } - virtual void rewind() {} - virtual void saveCurrentValues() {} - virtual void saveTargetValues() {} - - virtual bool changesBindings(); - virtual void clearBindings(); - virtual bool override(QDeclarativeActionEvent*other); -}; - -//### rename to QDeclarativeStateChange? -class QDeclarativeStateGroup; -class QDeclarativeState; -class QDeclarativeStateOperationPrivate; -class Q_QUICK_EXPORT QDeclarativeStateOperation : public QObject -{ - Q_OBJECT -public: - QDeclarativeStateOperation(QObject *parent = 0) - : QObject(parent) {} - typedef QList<QDeclarativeAction> ActionList; - - virtual ActionList actions(); - - QDeclarativeState *state() const; - void setState(QDeclarativeState *state); - -protected: - QDeclarativeStateOperation(QObjectPrivate &dd, QObject *parent = 0); - -private: - Q_DECLARE_PRIVATE(QDeclarativeStateOperation) - Q_DISABLE_COPY(QDeclarativeStateOperation) -}; - -typedef QDeclarativeStateOperation::ActionList QDeclarativeStateActions; - -class QDeclarativeTransition; -class QDeclarativeStatePrivate; -class Q_QUICK_EXPORT QDeclarativeState : public QObject -{ - Q_OBJECT - - Q_PROPERTY(QString name READ name WRITE setName) - Q_PROPERTY(QDeclarativeBinding *when READ when WRITE setWhen) - Q_PROPERTY(QString extend READ extends WRITE setExtends) - Q_PROPERTY(QDeclarativeListProperty<QDeclarativeStateOperation> changes READ changes) - Q_CLASSINFO("DefaultProperty", "changes") - Q_CLASSINFO("DeferredPropertyNames", "changes") - -public: - QDeclarativeState(QObject *parent=0); - virtual ~QDeclarativeState(); - - QString name() const; - void setName(const QString &); - bool isNamed() const; - - /*'when' is a QDeclarativeBinding to limit state changes oscillation - due to the unpredictable order of evaluation of bound expressions*/ - bool isWhenKnown() const; - QDeclarativeBinding *when() const; - void setWhen(QDeclarativeBinding *); - - QString extends() const; - void setExtends(const QString &); - - QDeclarativeListProperty<QDeclarativeStateOperation> changes(); - int operationCount() const; - QDeclarativeStateOperation *operationAt(int) const; - - QDeclarativeState &operator<<(QDeclarativeStateOperation *); - - void apply(QDeclarativeTransition *, QDeclarativeState *revert); - void cancel(); - - QDeclarativeStateGroup *stateGroup() const; - void setStateGroup(QDeclarativeStateGroup *); - - bool containsPropertyInRevertList(QObject *target, const QString &name) const; - bool changeValueInRevertList(QObject *target, const QString &name, const QVariant &revertValue); - bool changeBindingInRevertList(QObject *target, const QString &name, QDeclarativeAbstractBinding *binding); - bool removeEntryFromRevertList(QObject *target, const QString &name); - void addEntryToRevertList(const QDeclarativeAction &action); - void removeAllEntriesFromRevertList(QObject *target); - void addEntriesToRevertList(const QList<QDeclarativeAction> &actions); - QVariant valueInRevertList(QObject *target, const QString &name) const; - QDeclarativeAbstractBinding *bindingInRevertList(QObject *target, const QString &name) const; - - bool isStateActive() const; - -Q_SIGNALS: - void completed(); - -private: - Q_DECLARE_PRIVATE(QDeclarativeState) - Q_DISABLE_COPY(QDeclarativeState) -}; - -QT_END_NAMESPACE - -QML_DECLARE_TYPE(QDeclarativeStateOperation) -QML_DECLARE_TYPE(QDeclarativeState) - -QT_END_HEADER - -#endif // QDECLARATIVESTATE_H |