Класс QDesignerPropertyEditorInterface
Класс QDesignerPropertyEditorInterface позволяет получать и изменять текущее состояние редактора свойств Qt Designer. Подробнее...
| Заголовок: | #include <QDesignerPropertyEditorInterface> |
| qmake: | QT += designer |
| Наследует: | QWidget |
Открытые функции
| QDesignerPropertyEditorInterface(QWidget *parent, Qt::WindowFlags flags = Qt::WindowFlags()) | |
| virtual | ~QDesignerPropertyEditorInterface() |
| virtual QDesignerFormEditorInterface * | core() const |
| virtual QString | currentPropertyName() const = 0 |
| virtual bool | isReadOnly() const = 0 |
| virtual QObject * | object() const = 0 |
- 211 открытых функций, унаследованных от QWidget
- 31 открытых функций, унаследованных от QObject
- 14 открытых функций, унаследованных от QPaintDevice
Открытые слоты
| virtual void | setObject(QObject *object) = 0 |
| virtual void | setPropertyValue(const QString &name, const QVariant &value, bool changed = true) = 0 |
| virtual void | setReadOnly(bool readOnly) = 0 |
Сигналы
| void | propertyChanged(const QString &name, const QVariant &value) |
Дополнительные унаследованные члены
- 58 свойств, унаследованных от QWidget
- 1 свойство, унаследованное от QObject
- 5 статических открытых членов, унаследованных от QWidget
- 11 статических открытых членов, унаследованных от QObject
- 35 защищенных функций, унаследованных от QWidget
- 9 защищенных функций, унаследованных от QObject
- 1 защищенная функция, унаследованная от QPaintDevice
- 1 защищенный слот, унаследованный от QWidget
Подробное описание
Класс QDesignerPropertyEditorInterface позволяет получать и изменять текущее состояние редактора свойств Qt Designer.
QDesignerPropertyEditorInterface содержит набор функций, обычно используемых для запроса текущего состояния редактора свойств, а также несколько слотов для манипулирования этим состоянием. Интерфейс также предоставляет сигнал propertyChanged(), который генерируется всякий раз, когда свойство изменяется в редакторе свойств. Аргументами сигнала являются измененное свойство и его новое значение.
Например, при реализации плагина пользовательского виджета, вы можете подключить сигнал к своему пользовательскому слоту:
QDesignerPropertyEditorInterface *propertyEditor = 0;
propertyEditor = formEditor->propertyEditor();
connect(propertyEditor, SIGNAL(propertyChanged(QString,QVariant)),
this, SLOT(checkProperty(QString,QVariant))); Затем пользовательский слот может проверить, находится ли новое значение в нужном диапазоне, когда изменяется указанное свойство, принадлежащее конкретному виджету:
void checkProperty(QString property, QVariant value) {
QDesignerPropertyEditorInterface *propertyEditor = 0;
propertyEditor = formEditor->propertyEditor();
QObject *object = propertyeditor->object();
MyCustomWidget *widget = qobject_cast<MyCustomWidget>(object);
if (widget && property == aProperty && value != expectedValue)
{...}
} Класс QDesignerPropertyEditorInterface не предназначен для прямого создания экземпляров. Вы можете получить интерфейс к редактору свойств Qt Designer, используя функцию QDesignerFormEditorInterface::propertyEditor(). Указатель на текущий объект QDesignerFormEditorInterface Qt Designer (formEditor в примерах выше) предоставляется параметром функции QDesignerCustomWidgetInterface::initialize(). При реализации плагина пользовательского виджета вы должны унаследовать от класса QDesignerCustomWidgetInterface, чтобы предоставить ваш плагин Qt Designer.
Функции для доступа к редактору свойств включают функцию core(), которая возвращает интерфейс к редактору формы, функцию currentPropertyName(), возвращающую имя текущего выбранного свойства в редакторе свойств, функцию object(), возвращающую текущий выбранный объект в рабочем пространстве Qt Designer, и функцию isReadOnly(), которая возвращает true, если редактор свойств защищен от записи (иначе false).
Слоты для манипулирования состоянием редактора свойств включают слот setObject(), который используется для изменения текущего выбранного объекта в рабочем пространстве Qt Designer, слот setPropertyValue(), который изменяет значение заданного свойства, и слот setReadOnly(), который управляет защитой от записи редактора свойств.
См. также QDesignerFormEditorInterface.
Документация по членам-функциям
QDesignerPropertyEditorInterface::QDesignerPropertyEditorInterface(QWidget *parent, Qt::WindowFlags flags = Qt::WindowFlags())
Конструктор интерфейса редактора свойств с заданным parent и указанными флагами окна flags.
[virtual] QDesignerPropertyEditorInterface::~QDesignerPropertyEditorInterface()
Деструктор интерфейса редактора свойств.
[virtual] QDesignerFormEditorInterface *QDesignerPropertyEditorInterface::core() const
Возвращает указатель на текущий объект QDesignerFormEditorInterface Qt Designer.
[pure virtual] QString QDesignerPropertyEditorInterface::currentPropertyName() const
Возвращает имя текущего выбранного свойства в редакторе свойств.
См. также setPropertyValue().
[pure virtual] bool QDesignerPropertyEditorInterface::isReadOnly() const
Возвращает true, если редактор свойств защищен от записи; иначе false.
См. также setReadOnly().
[pure virtual] QObject *QDesignerPropertyEditorInterface::object() const
Возвращает текущий выбранный объект в рабочем пространстве Qt Designer.
См. также setObject().
[signal] void QDesignerPropertyEditorInterface::propertyChanged(const QString &name, const QVariant &value)
Этот сигнал генерируется всякий раз, когда свойство изменяется в редакторе свойств. Измененное свойство и его новое значение задаются параметрами name и value соответственно.
См. также setPropertyValue().
[pure virtual slot] void QDesignerPropertyEditorInterface::setObject(QObject *object)
Изменяет текущий выбранный объект в рабочем пространстве Qt Designer на object.
См. также object().
[pure virtual slot] void QDesignerPropertyEditorInterface::setPropertyValue(const QString &name, const QVariant &value, bool changed = true)
Устанавливает значение свойства, заданного параметром name, в значение value.
Кроме того, свойство помечается как изменённое в редакторе свойств, т.е. его значение отличается от значения по умолчанию.
См. также currentPropertyName() и propertyChanged().
[pure virtual slot] void QDesignerPropertyEditorInterface::setReadOnly(bool readOnly)
Если readOnly равно true, редактор свойств становится защищённым от записи; в противном случае защита от записи снимается.
См. также isReadOnly().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.6/qdesignerpropertyeditorinterface.html