Spec-Zone.ru › Qt 5.12

Класс QHistoryState

Класс QHistoryState предоставляет способ возврата к ранее активному подсостоянию. Подробнее...

Заголовок: #include <QHistoryState>
qmake: QT += core
С момента: Qt 4.6
Наследует: QAbstractState
  • Список всех членов, включая унаследованные
  • Устаревшие члены

Типы

Перечисление HistoryType { ShallowHistory, DeepHistory }

Свойства

  • defaultState : QAbstractState*
  • defaultTransition : QAbstractTransition*
  • historyType : HistoryType
  • 1 свойство унаследовано от QAbstractState
  • 1 свойство унаследовано от QObject

Публичные функции

QHistoryState(QState *parent = nullptr)
QHistoryState(QHistoryState::HistoryType type, QState *parent = nullptr)
virtual ~QHistoryState()
QAbstractState * defaultState() const
QAbstractTransition * defaultTransition() const
QHistoryState::HistoryType historyType() const
void setDefaultState(QAbstractState *state)
void setDefaultTransition(QAbstractTransition *transition)
void setHistoryType(QHistoryState::HistoryType type)
  • 3 публичные функции унаследованы от QAbstractState
  • 32 публичные функции унаследованы от QObject

Сигналы

void defaultStateChanged()
void defaultTransitionChanged()
void historyTypeChanged()
  • 3 сигнала унаследованы от QAbstractState
  • 2 сигнала унаследованы от QObject

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

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

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

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

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

  • 1 публичный слот унаследован от QObject
  • 3 защищённые функции унаследованы от QAbstractState
  • 9 защищённых функций унаследованы от QObject

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

Класс QHistoryState предоставляет способ возврата к ранее активному подсостоянию.

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

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

QStateMachine machine;

QState *s1 = new QState();
QState *s11 = new QState(s1);
QState *s12 = new QState(s1);

QHistoryState *s1h = new QHistoryState(s1);
s1h->setDefaultState(s11);

machine.addState(s1);

QState *s2 = new QState();
machine.addState(s2);

QPushButton *button = new QPushButton();
// Clicking the button will cause the state machine to enter the child state
// that s1 was in the last time s1 was exited, or the history state's default
// state if s1 has never been entered.
s1->addTransition(button, SIGNAL(clicked()), s1h);

Если нужно ввести более одного состояния по умолчанию или выполнить переход к состоянию(ям) по умолчанию, нужно установить defaultTransition. Обратите внимание, что метод eventTest() этого перехода никогда не будет вызван: выбор и выполнение перехода происходит автоматически при входе в состояние истории.

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

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

Перечисление QHistoryState::HistoryType

Это перечисление определяет тип истории, которую записывает QHistoryState.

Константа Значение Описание
QHistoryState::ShallowHistory 0 Записываются только непосредственные дочерние состояния родительского состояния. В этом случае переход со состоянием истории в качестве целевого состояния приведёт к непосредственному дочернему состоянию, в котором родительское состояние находилось в последний раз при выходе. Это значение по умолчанию.
QHistoryState::DeepHistory 1 Записываются вложенные состояния. В этом случае переход со состоянием истории в качестве целевого состояния приведёт к самому глубоко вложенному дочернему состоянию, в котором родительское состояние находилось в последний раз при выходе.

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

defaultState : QAbstractState*

Это свойство содержит состояние по умолчанию для этого состояния истории.

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

QAbstractState * defaultState() const
void setDefaultState(QAbstractState *state)

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

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

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

defaultTransition : QAbstractTransition*

Это свойство содержит переход по умолчанию для этого состояния истории.

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

QAbstractTransition * defaultTransition() const
void setDefaultTransition(QAbstractTransition *transition)

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

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

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

historyType : HistoryType

Это свойство содержит тип истории, который записывает это состояние истории.

Значение по умолчанию этого свойства — QHistoryState::ShallowHistory.

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

QHistoryState::HistoryType historyType() const
void setHistoryType(QHistoryState::HistoryType type)

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

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

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

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

QHistoryState::QHistoryState(QState *parent = nullptr)

Создаёт новое состояние истории с указанным состоянием parent.

QHistoryState::QHistoryState(QHistoryState::HistoryType type, QState *parent = nullptr)

Создаёт новое состояние истории заданного типа type с заданным состоянием parent.

[virtual] QHistoryState::~QHistoryState()

Уничтожает это состояние истории.

QAbstractState *QHistoryState::defaultState() const

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

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

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

[signal] void QHistoryState::defaultStateChanged()

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

Функция была добавлена в Qt 5.4.

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

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

См. также QHistoryState::defaultState.

QAbstractTransition *QHistoryState::defaultTransition() const

Возвращает переход по умолчанию для этого состояния истории. Переход по умолчанию используется, когда состояние истории никогда ранее не входилось. Таким образом, целевые состояния перехода по умолчанию составляют состояние по умолчанию.

Функция была добавлена в Qt 5.6.

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

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

[signal] void QHistoryState::defaultTransitionChanged()

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

Функция была добавлена в Qt 5.6.

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

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

См. также QHistoryState::defaultTransition.

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

Переопределено из QAbstractState::event().

QHistoryState::HistoryType QHistoryState::historyType() const

Возвращает тип истории, который записывает это состояние истории.

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

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

[signal] void QHistoryState::historyTypeChanged()

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

Функция была добавлена в Qt 5.4.

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

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

См. также QHistoryState::historyType.

[override virtual protected] void QHistoryState::onEntry(QEvent *event)

Переопределено из QAbstractState::onEntry().

[override virtual protected] void QHistoryState::onExit(QEvent *event)

Переопределено из QAbstractState::onExit().

void QHistoryState::setDefaultState(QAbstractState *state)

Устанавливает состояние по умолчанию для этого состояния истории в указанное состояние state. state должно быть братом этого состояния истории.

Обратите внимание, что эта функция не устанавливает state в качестве начального состояния своего родителя.

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

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

void QHistoryState::setDefaultTransition(QAbstractTransition *transition)

Устанавливает переход по умолчанию для этого состояния истории в заданный переход transition. Это установит исходное состояние перехода transition в состояние истории.

Обратите внимание, что метод eventTest перехода transition никогда не будет вызван.

Функция была добавлена в Qt 5.6.

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

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

void QHistoryState::setHistoryType(QHistoryState::HistoryType type)

Устанавливает type истории, который записывает это состояние истории.

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

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

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

Spec-Zone.ru

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