diff options
Diffstat (limited to 'src/corelib/statemachine')
-rw-r--r-- | src/corelib/statemachine/qhistorystate.cpp | 9 | ||||
-rw-r--r-- | src/corelib/statemachine/qsignaltransition.cpp | 5 | ||||
-rw-r--r-- | src/corelib/statemachine/qstatemachine.cpp | 2 |
3 files changed, 9 insertions, 7 deletions
diff --git a/src/corelib/statemachine/qhistorystate.cpp b/src/corelib/statemachine/qhistorystate.cpp index c3361ad17e..338c89c688 100644 --- a/src/corelib/statemachine/qhistorystate.cpp +++ b/src/corelib/statemachine/qhistorystate.cpp @@ -209,6 +209,11 @@ QAbstractState *QHistoryState::defaultState() const return d->defaultTransition ? d->defaultTransition->targetState() : Q_NULLPTR; } +static inline bool isSoleEntry(const QList<QAbstractState*> &states, const QAbstractState * state) +{ + return states.size() == 1 && states.first() == state; +} + /*! Sets this history state's default state to be the given \a state. \a state must be a sibling of this history state. @@ -224,9 +229,7 @@ void QHistoryState::setDefaultState(QAbstractState *state) "to this history state's group (%p)", state, parentState()); return; } - if (!d->defaultTransition - || d->defaultTransition->targetStates().size() != 1 - || d->defaultTransition->targetStates().first() != state) { + if (!d->defaultTransition || !isSoleEntry(d->defaultTransition->targetStates(), state)) { if (!d->defaultTransition || !qobject_cast<DefaultStateTransition*>(d->defaultTransition)) { d->defaultTransition = new DefaultStateTransition(this, state); emit defaultTransitionChanged(QHistoryState::QPrivateSignal()); diff --git a/src/corelib/statemachine/qsignaltransition.cpp b/src/corelib/statemachine/qsignaltransition.cpp index 9972487eb5..c4ba8e5315 100644 --- a/src/corelib/statemachine/qsignaltransition.cpp +++ b/src/corelib/statemachine/qsignaltransition.cpp @@ -159,9 +159,8 @@ QSignalTransition::QSignalTransition(const QObject *sender, const char *signal, Constructs a new signal transition associated with the given \a signal of the given \a sender object and with the given \a sourceState. - This constructor is enabled if compiler supports delegating constructor. - - \sa Q_COMPILER_DELEGATING_CONSTRUCTORS + This constructor is enabled if the compiler supports delegating constructors, + as indicated by the presence of the macro Q_COMPILER_DELEGATING_CONSTRUCTORS. */ /*! diff --git a/src/corelib/statemachine/qstatemachine.cpp b/src/corelib/statemachine/qstatemachine.cpp index 62a4c03d26..d5b01f3c8a 100644 --- a/src/corelib/statemachine/qstatemachine.cpp +++ b/src/corelib/statemachine/qstatemachine.cpp @@ -692,7 +692,7 @@ void QStateMachinePrivate::microstep(QEvent *event, const QList<QAbstractTransit // Add "implicit" assignments for restored properties to the first // (outermost) entered state Q_ASSERT(!enteredStates.isEmpty()); - QAbstractState *s = enteredStates.first(); + QAbstractState *s = enteredStates.constFirst(); assignmentsForEnteredStates[s] << restorablesToPropertyList(pendingRestorables); } |