diff options
Diffstat (limited to 'src/corelib/statemachine')
-rw-r--r-- | src/corelib/statemachine/qabstractstate.h | 2 | ||||
-rw-r--r-- | src/corelib/statemachine/qabstracttransition.cpp | 2 | ||||
-rw-r--r-- | src/corelib/statemachine/qabstracttransition.h | 2 | ||||
-rw-r--r-- | src/corelib/statemachine/qabstracttransition_p.h | 3 | ||||
-rw-r--r-- | src/corelib/statemachine/qeventtransition.cpp | 4 | ||||
-rw-r--r-- | src/corelib/statemachine/qeventtransition.h | 4 | ||||
-rw-r--r-- | src/corelib/statemachine/qeventtransition_p.h | 1 | ||||
-rw-r--r-- | src/corelib/statemachine/qfinalstate.h | 2 | ||||
-rw-r--r-- | src/corelib/statemachine/qhistorystate.h | 4 | ||||
-rw-r--r-- | src/corelib/statemachine/qsignaltransition.h | 4 | ||||
-rw-r--r-- | src/corelib/statemachine/qstate.cpp | 2 | ||||
-rw-r--r-- | src/corelib/statemachine/qstate.h | 4 | ||||
-rw-r--r-- | src/corelib/statemachine/qstatemachine.cpp | 40 | ||||
-rw-r--r-- | src/corelib/statemachine/qstatemachine.h | 4 |
14 files changed, 41 insertions, 37 deletions
diff --git a/src/corelib/statemachine/qabstractstate.h b/src/corelib/statemachine/qabstractstate.h index 592c841c18..3aa4b2fabb 100644 --- a/src/corelib/statemachine/qabstractstate.h +++ b/src/corelib/statemachine/qabstractstate.h @@ -63,7 +63,7 @@ Q_SIGNALS: void activeChanged(bool active); protected: - QAbstractState(QState *parent = 0); + QAbstractState(QState *parent = Q_NULLPTR); virtual void onEntry(QEvent *event) = 0; virtual void onExit(QEvent *event) = 0; diff --git a/src/corelib/statemachine/qabstracttransition.cpp b/src/corelib/statemachine/qabstracttransition.cpp index 81b38ea4c4..7f04160a8f 100644 --- a/src/corelib/statemachine/qabstracttransition.cpp +++ b/src/corelib/statemachine/qabstracttransition.cpp @@ -254,7 +254,7 @@ QList<QAbstractState*> QAbstractTransition::targetStates() const void QAbstractTransition::setTargetStates(const QList<QAbstractState*> &targets) { Q_D(QAbstractTransition); - QList<QPointer<QAbstractState> > copy(d->targetStates); + QVector<QPointer<QAbstractState> > copy(d->targetStates); bool sameList = true; for (int i = 0; i < targets.size(); ++i) { QAbstractState *target = targets.at(i); diff --git a/src/corelib/statemachine/qabstracttransition.h b/src/corelib/statemachine/qabstracttransition.h index 475a4dedfc..4398c41ca2 100644 --- a/src/corelib/statemachine/qabstracttransition.h +++ b/src/corelib/statemachine/qabstracttransition.h @@ -67,7 +67,7 @@ public: }; Q_ENUM(TransitionType) - QAbstractTransition(QState *sourceState = 0); + QAbstractTransition(QState *sourceState = Q_NULLPTR); virtual ~QAbstractTransition(); QState *sourceState() const; diff --git a/src/corelib/statemachine/qabstracttransition_p.h b/src/corelib/statemachine/qabstracttransition_p.h index 4b0644acd9..1a28e5a73e 100644 --- a/src/corelib/statemachine/qabstracttransition_p.h +++ b/src/corelib/statemachine/qabstracttransition_p.h @@ -48,6 +48,7 @@ #include <private/qobject_p.h> #include <QtCore/qlist.h> +#include <QtCore/qvector.h> #include <QtCore/qsharedpointer.h> QT_BEGIN_NAMESPACE @@ -72,7 +73,7 @@ public: QStateMachine *machine() const; void emitTriggered(); - QList<QPointer<QAbstractState> > targetStates; + QVector<QPointer<QAbstractState> > targetStates; QAbstractTransition::TransitionType transitionType; #ifndef QT_NO_ANIMATION diff --git a/src/corelib/statemachine/qeventtransition.cpp b/src/corelib/statemachine/qeventtransition.cpp index 096d667bc3..c10127fa68 100644 --- a/src/corelib/statemachine/qeventtransition.cpp +++ b/src/corelib/statemachine/qeventtransition.cpp @@ -102,6 +102,10 @@ QEventTransitionPrivate::QEventTransitionPrivate() registered = false; } +QEventTransitionPrivate::~QEventTransitionPrivate() +{ +} + QEventTransitionPrivate *QEventTransitionPrivate::get(QEventTransition *q) { return q->d_func(); diff --git a/src/corelib/statemachine/qeventtransition.h b/src/corelib/statemachine/qeventtransition.h index 6909e855b1..5ec3b7bb26 100644 --- a/src/corelib/statemachine/qeventtransition.h +++ b/src/corelib/statemachine/qeventtransition.h @@ -49,8 +49,8 @@ class Q_CORE_EXPORT QEventTransition : public QAbstractTransition Q_PROPERTY(QObject* eventSource READ eventSource WRITE setEventSource) Q_PROPERTY(QEvent::Type eventType READ eventType WRITE setEventType) public: - QEventTransition(QState *sourceState = 0); - QEventTransition(QObject *object, QEvent::Type type, QState *sourceState = 0); + QEventTransition(QState *sourceState = Q_NULLPTR); + QEventTransition(QObject *object, QEvent::Type type, QState *sourceState = Q_NULLPTR); ~QEventTransition(); QObject *eventSource() const; diff --git a/src/corelib/statemachine/qeventtransition_p.h b/src/corelib/statemachine/qeventtransition_p.h index 59b0fcb30f..3e430d86a9 100644 --- a/src/corelib/statemachine/qeventtransition_p.h +++ b/src/corelib/statemachine/qeventtransition_p.h @@ -55,6 +55,7 @@ class Q_CORE_EXPORT QEventTransitionPrivate : public QAbstractTransitionPrivate Q_DECLARE_PUBLIC(QEventTransition) public: QEventTransitionPrivate(); + ~QEventTransitionPrivate(); static QEventTransitionPrivate *get(QEventTransition *q); diff --git a/src/corelib/statemachine/qfinalstate.h b/src/corelib/statemachine/qfinalstate.h index 51c97b1545..2c76e7b6e6 100644 --- a/src/corelib/statemachine/qfinalstate.h +++ b/src/corelib/statemachine/qfinalstate.h @@ -46,7 +46,7 @@ class Q_CORE_EXPORT QFinalState : public QAbstractState { Q_OBJECT public: - QFinalState(QState *parent = 0); + QFinalState(QState *parent = Q_NULLPTR); ~QFinalState(); protected: diff --git a/src/corelib/statemachine/qhistorystate.h b/src/corelib/statemachine/qhistorystate.h index 549be15ab0..97ac376688 100644 --- a/src/corelib/statemachine/qhistorystate.h +++ b/src/corelib/statemachine/qhistorystate.h @@ -54,8 +54,8 @@ public: }; Q_ENUM(HistoryType) - QHistoryState(QState *parent = 0); - QHistoryState(HistoryType type, QState *parent = 0); + QHistoryState(QState *parent = Q_NULLPTR); + QHistoryState(HistoryType type, QState *parent = Q_NULLPTR); ~QHistoryState(); QAbstractState *defaultState() const; diff --git a/src/corelib/statemachine/qsignaltransition.h b/src/corelib/statemachine/qsignaltransition.h index bc56f4e9b7..c388323ec4 100644 --- a/src/corelib/statemachine/qsignaltransition.h +++ b/src/corelib/statemachine/qsignaltransition.h @@ -49,9 +49,9 @@ class Q_CORE_EXPORT QSignalTransition : public QAbstractTransition Q_PROPERTY(QByteArray signal READ signal WRITE setSignal NOTIFY signalChanged) public: - QSignalTransition(QState *sourceState = 0); + QSignalTransition(QState *sourceState = Q_NULLPTR); QSignalTransition(const QObject *sender, const char *signal, - QState *sourceState = 0); + QState *sourceState = Q_NULLPTR); ~QSignalTransition(); QObject *senderObject() const; diff --git a/src/corelib/statemachine/qstate.cpp b/src/corelib/statemachine/qstate.cpp index 6e9fb63554..5abbbfd9ad 100644 --- a/src/corelib/statemachine/qstate.cpp +++ b/src/corelib/statemachine/qstate.cpp @@ -320,7 +320,7 @@ void QState::addTransition(QAbstractTransition *transition) } transition->setParent(this); - const QList<QPointer<QAbstractState> > &targets = QAbstractTransitionPrivate::get(transition)->targetStates; + const QVector<QPointer<QAbstractState> > &targets = QAbstractTransitionPrivate::get(transition)->targetStates; for (int i = 0; i < targets.size(); ++i) { QAbstractState *t = targets.at(i).data(); if (!t) { diff --git a/src/corelib/statemachine/qstate.h b/src/corelib/statemachine/qstate.h index a74c782027..0300a9ef2d 100644 --- a/src/corelib/statemachine/qstate.h +++ b/src/corelib/statemachine/qstate.h @@ -66,8 +66,8 @@ public: }; Q_ENUM(RestorePolicy) - QState(QState *parent = 0); - QState(ChildMode childMode, QState *parent = 0); + QState(QState *parent = Q_NULLPTR); + QState(ChildMode childMode, QState *parent = Q_NULLPTR); ~QState(); QAbstractState *errorState() const; diff --git a/src/corelib/statemachine/qstatemachine.cpp b/src/corelib/statemachine/qstatemachine.cpp index e5d019dc8b..3e513459ff 100644 --- a/src/corelib/statemachine/qstatemachine.cpp +++ b/src/corelib/statemachine/qstatemachine.cpp @@ -383,10 +383,6 @@ static QList<QAbstractState *> getEffectiveTargetStates(QAbstractTransition *tra return targetsList; } -template <class T> -static uint qHash(const QPointer<T> &p) -{ return qHash(p.data()); } - QStateMachinePrivate::QStateMachinePrivate() { isMachine = true; @@ -2097,23 +2093,6 @@ void QStateMachinePrivate::cancelAllDelayedEvents() delayedEvents.clear(); } -void QStateMachinePrivate::emitStateFinished(QState *forState, QFinalState *guiltyState) -{ - Q_UNUSED(guiltyState); - Q_ASSERT(guiltyState); - -#ifdef QSTATEMACHINE_DEBUG - Q_Q(QStateMachine); - qDebug() << q << ": emitting finished signal for" << forState; -#endif - - QStatePrivate::get(forState)->emitFinished(); -} - -void QStateMachinePrivate::startupHook() -{ -} - /* This function is called when the state machine is performing no microstep because no transition is enabled (i.e. an event is ignored). @@ -2154,6 +2133,24 @@ void QStateMachinePrivate::endMacrostep(bool didChange) Q_UNUSED(didChange); } + +void QStateMachinePrivate::emitStateFinished(QState *forState, QFinalState *guiltyState) +{ + Q_UNUSED(guiltyState); + Q_ASSERT(guiltyState); + +#ifdef QSTATEMACHINE_DEBUG + Q_Q(QStateMachine); + qDebug() << q << ": emitting finished signal for" << forState; +#endif + + QStatePrivate::get(forState)->emitFinished(); +} + +void QStateMachinePrivate::startupHook() +{ +} + namespace _QStateMachine_Internal{ class GoToStateTransition : public QAbstractTransition @@ -2453,6 +2450,7 @@ void QStateMachinePrivate::handleTransitionSignal(QObject *sender, int signalInd QMetaMethod method = meta->method(signalIndex); int argc = method.parameterCount(); QList<QVariant> vargs; + vargs.reserve(argc); for (int i = 0; i < argc; ++i) { int type = method.parameterType(i); vargs.append(QVariant(type, argv[i+1])); diff --git a/src/corelib/statemachine/qstatemachine.h b/src/corelib/statemachine/qstatemachine.h index d6c3b7bfa7..5fca034386 100644 --- a/src/corelib/statemachine/qstatemachine.h +++ b/src/corelib/statemachine/qstatemachine.h @@ -104,8 +104,8 @@ public: NoCommonAncestorForTransitionError }; - explicit QStateMachine(QObject *parent = 0); - explicit QStateMachine(QState::ChildMode childMode, QObject *parent = 0); + explicit QStateMachine(QObject *parent = Q_NULLPTR); + explicit QStateMachine(QState::ChildMode childMode, QObject *parent = Q_NULLPTR); ~QStateMachine(); void addState(QAbstractState *state); |