Spec-Zone.ru › Qt 5.13

Класс QAbstractTransition

Класс QAbstractTransition является базовым классом переходов между объектами QAbstractState. Подробнее...

Заголовок: #include <QAbstractTransition>
qmake: QT += core
С тех пор: Qt 4.6
Наследует: QObject
Наследуется от:

QEventTransition и QSignalTransition

Этот класс был введен в Qt 4.6.

  • Список всех членов, включая унаследованные

Типы public

перечисление TransitionType { ExternalTransition, InternalTransition }

Свойства

  • sourceState : QState* const
  • targetState : QAbstractState*
  • targetStates : QList<QAbstractState*>
  • transitionType : TransitionType

Функции public

QAbstractTransition(QState *sourceState = nullptr)
virtual ~QAbstractTransition()
void addAnimation(QAbstractAnimation *animation)
QList<QAbstractAnimation *> animations() const
QStateMachine * machine() const
void removeAnimation(QAbstractAnimation *animation)
void setTargetState(QAbstractState *target)
void setTargetStates(const QList<QAbstractState *> &targets)
void setTransitionType(QAbstractTransition::TransitionType type)
QState * sourceState() const
QAbstractState * targetState() const
QList<QAbstractState *> targetStates() const
QAbstractTransition::TransitionType transitionType() const

Сигналы

void targetStateChanged()
void targetStatesChanged()
void triggered()

Защищенные функции

virtual bool eventTest(QEvent *event) = 0
virtual void onTransition(QEvent *event) = 0

Переопределенные защищенные функции

virtual bool event(QEvent *e) override

Подробное описание

Класс QAbstractTransition — это абстрактный базовый класс переходов между состояниями (QAbstractState) машины состояний QStateMachine. QAbstractTransition является частью Фреймворка машины состояний.

Функция sourceState() возвращает источник перехода. Функция targetStates() возвращает целевые состояния перехода. Функция machine() возвращает машину состояний, частью которой является переход.

Сигнал triggered() излучается, когда переход был инициирован.

Переходы могут вызывать воспроизведение анимаций. Используйте функцию addAnimation() для добавления анимации к переходу.

Наследование

Функция eventTest() вызывается машиной состояний для определения того, должен ли событие инициировать переход. В вашем переопределении обычно проверяется тип события и выполняется приведение объекта события к нужному типу, а также проверяются одно или несколько свойств события, соответствующих вашим критериям.

Функция onTransition() вызывается при срабатывании перехода; переопределите эту функцию для выполнения пользовательской обработки перехода.

Документация типов членов

перечисление QAbstractTransition::TransitionType

Это перечисление указывает вид перехода. По умолчанию тип является внешним переходом.

Константа Значение Описание
QAbstractTransition::ExternalTransition 0 Любое состояние, являющееся исходным состоянием перехода (которое не является переходом без целевого состояния), остается и повторно входит в него при необходимости.
QAbstractTransition::InternalTransition 1 Если целевое состояние перехода является подсостоянием составного состояния, а это составное состояние является исходным состоянием, то внутренний переход не покинет исходное состояние.

См. также QAbstractTransition::transitionType.

Документация по свойствам

sourceState : QState* const

Данное свойство содержит исходное состояние (родителя) данного перехода.

Функции доступа:

QState * sourceState() const

targetState : QAbstractState*

Данное свойство содержит целевое состояние данного перехода.

Если у перехода нет целевого состояния, переход может быть всё же инициирован, но это не приведёт к изменению конфигурации машины состояний (т.е. текущее состояние не будет покинуто и повторно введено).

Функции доступа:

QAbstractState * targetState() const
void setTargetState(QAbstractState *target)

Сигнал-уведомление:

void targetStateChanged() [см. примечание ниже]

Примечание: Это частный сигнал. Он может использоваться в подключениях сигналов, но не может быть выпущен пользователем.

targetStates : QList<QAbstractState*>

Данное свойство содержит целевые состояния данного перехода.

Если указано несколько состояний, все они должны быть потомками одного и того же состояния параллельной группы.

Функции доступа:

QList<QAbstractState *> targetStates() const
void setTargetStates(const QList<QAbstractState *> &targets)

Сигнал-уведомление:

void targetStatesChanged() [см. примечание ниже]

Примечание: Это частный сигнал. Он может использоваться в подключениях сигналов, но не может быть выпущен пользователем.

transitionType : TransitionType

указывает, является ли данный переход внутренним или внешним.

Внутренние и внешние переходы ведут себя одинаково, за исключением случаев, когда исходное состояние перехода является составным состоянием, а целевое(ые) состояние(я) — потомками исходного. В таком случае, внутренний переход не выйдет и не войдёт в исходное состояние, в то время как внешний — выйдет и войдёт.

По умолчанию тип — внешний переход.

Функции доступа:

QAbstractTransition::TransitionType transitionType() const
void setTransitionType(QAbstractTransition::TransitionType type)

Документация по членам-функциям

QAbstractTransition::QAbstractTransition(QState *sourceState = nullptr)

Создаёт новый объект QAbstractTransition с заданным sourceState.

[signal] void QAbstractTransition::targetStateChanged()

Этот сигнал излучается при изменении свойства targetState.

Эта функция была введена в Qt 5.4.

Примечание: Это частный сигнал. Он может использоваться в подключениях сигналов, но не может быть выпущен пользователем.

Примечание: Сигнал-уведомление для свойства targetState.

См. также QAbstractTransition::targetState.

[signal] void QAbstractTransition::targetStatesChanged()

Этот сигнал излучается при изменении свойства targetStates.

Эта функция была введена в Qt 5.4.

Примечание: Это частный сигнал. Он может использоваться в подключениях сигналов, но не может быть выпущен пользователем.

Примечание: Сигнал-уведомление для свойства targetStates.

См. также QAbstractTransition::targetStates.

[signal] void QAbstractTransition::triggered()

Этот сигнал излучается, когда переход был инициирован (после вызова onTransition()).

Примечание: Это частный сигнал. Он может использоваться в подключениях сигналов, но не может быть выпущен пользователем.

[virtual] QAbstractTransition::~QAbstractTransition()

Удаляет данный переход.

void QAbstractTransition::addAnimation(QAbstractAnimation *animation)

Добавляет заданный animation к данному переходу. Переход не принимает владения анимацией.

См. также removeAnimation() и animations().

QList<QAbstractAnimation *> QAbstractTransition::animations() const

Возвращает список анимаций, связанных с данным переходом, или пустой список, если анимаций нет.

См. также addAnimation().

[override virtual protected] bool QAbstractTransition::event(QEvent *e)

Переопределяет: QObject::event(QEvent *e).

[pure virtual protected] bool QAbstractTransition::eventTest(QEvent *event)

Данная функция вызывается, чтобы определить, должен ли данный event вызвать инициирование данного перехода. Переопределите эту функцию и верните true, если событие должно инициировать переход, в противном случае верните false.

QStateMachine *QAbstractTransition::machine() const

Возвращает машину состояний, частью которой является данный переход, или nullptr если переход не является частью машины состояний.

[pure virtual protected] void QAbstractTransition::onTransition(QEvent *event)

Данная функция вызывается, когда переход инициирован. Переданный event — причина инициирования перехода. Переопределите эту функцию, чтобы выполнить пользовательскую обработку, когда переход инициируется.

void QAbstractTransition::removeAnimation(QAbstractAnimation *animation)

Удаляет заданный animation из данного перехода.

См. также addAnimation().

void QAbstractTransition::setTargetState(QAbstractState *target)

Устанавливает target-состояние для данного перехода.

Примечание: Функция-установщик для свойства targetState.

См. также targetState().

void QAbstractTransition::setTargetStates(const QList<QAbstractState *> &targets)

Устанавливает целевые состояния для данного перехода в заданные targets.

Примечание: Функция-установщик для свойства targetStates.

См. также targetStates().

void QAbstractTransition::setTransitionType(QAbstractTransition::TransitionType type)

Устанавливает тип перехода в type.

Примечание: Функция-установщик для свойства transitionType.

См. также transitionType().

QState *QAbstractTransition::sourceState() const

Возвращает исходное состояние данного перехода, или nullptr если у данного перехода нет исходного состояния.

Примечание: Функция-получатель для свойства sourceState.

QAbstractState *QAbstractTransition::targetState() const

Возвращает целевое состояние данного перехода, или nullptr если у перехода нет целевого состояния.

Примечание: Функция-геттер для свойства targetState.

См. также setTargetState().

QList<QAbstractState *> QAbstractTransition::targetStates() const

Возвращает целевые состояния данного перехода или пустой список, если у данного перехода нет целевых состояний.

Примечание: Функция-геттер для свойства targetStates.

См. также setTargetStates().

QAbstractTransition::TransitionType QAbstractTransition::transitionType() const

Возвращает тип перехода.

Примечание: Функция-геттер для свойства transitionType.

См. также setTransitionType().

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.13/qabstracttransition.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API