Spec-Zone.ru › Qt 5.12

Класс QAbstractTransition

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

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

QEventTransition и QSignalTransition

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

Типы публичного доступа

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

Свойства

  • sourceState : QState* const
  • targetState : QAbstractState*
  • targetStates : QList<QAbstractState*>
  • transitionType : TransitionType
  • 1 свойство унаследовано от QObject

Функции публичного доступа

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
  • 32 функции публичного доступа унаследованы от QObject

Сигналы

void targetStateChanged()
void targetStatesChanged()
void triggered()
  • 2 сигнала унаследованы от QObject

Статические члены публичного доступа

const QMetaObject staticMetaObject
  • 10 статических членов публичного доступа унаследованы от QObject

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

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

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

virtual bool event(QEvent *e) override
  • 9 защищённых функций унаследованы от QObject

Дополнительные унаследованные члены

  • 1 публичный слот унаследован от QObject

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

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

Класс 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.

[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().

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

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

QStateMachine *QAbstractTransition::machine() const

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

[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

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

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

QAbstractState *QAbstractTransition::targetState() const

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

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

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

[signal] void QAbstractTransition::targetStateChanged()

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

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

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

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

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

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

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

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

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

[signal] void QAbstractTransition::targetStatesChanged()

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

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

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

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

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

QAbstractTransition::TransitionType QAbstractTransition::transitionType() const

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

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

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

[signal] void QAbstractTransition::triggered()

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

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

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

Spec-Zone.ru

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