QMetaProperty

The QMetaProperty class provides meta-data about a property. More

Inheritance diagram of PySide2.QtCore.QMetaProperty

Synopsis

Functions

Detailed Description

Property meta-data is obtained from an object’s meta-object. See property() and propertyCount() for details.

Property Meta-Data

A property has a name() and a type() , as well as various attributes that specify its behavior: isReadable() , isWritable() , isDesignable() , isScriptable() , revision() , and isStored() .

If the property is an enumeration, isEnumType() returns true ; if the property is an enumeration that is also a flag (i.e. its values can be combined using the OR operator), isEnumType() and isFlagType() both return true. The enumerator for these types is available from enumerator() .

The property’s values are set and retrieved with read() , write() , and reset() ; they can also be changed through QObject ‘s set and get functions. See setProperty() and property() for details.

Copying and Assignment

QMetaProperty objects can be copied by value. However, each copy will refer to the same underlying property meta-data.

class PySide2.QtCore.QMetaProperty

PySide2.QtCore.QMetaProperty(QMetaProperty)

Parameters:

QMetaPropertyPySide2.QtCore.QMetaProperty

PySide2.QtCore.QMetaProperty.enumerator()
Return type:

PySide2.QtCore.QMetaEnum

Returns the enumerator if this property’s type is an enumerator type; otherwise the returned value is undefined.

PySide2.QtCore.QMetaProperty.hasNotifySignal()
Return type:

bool

Returns true if this property has a corresponding change notify signal; otherwise returns false .

See also

notifySignal()

PySide2.QtCore.QMetaProperty.hasStdCppSet()
Return type:

bool

Returns true if the property has a C++ setter function that follows Qt’s standard “name” / “setName” pattern. Designer and uic query in order to avoid expensive setProperty() calls. All properties in Qt [should] follow this pattern.

PySide2.QtCore.QMetaProperty.isConstant()
Return type:

bool

Returns true if the property is constant; otherwise returns false .

A property is constant if the Q_PROPERTY() ‘s CONSTANT attribute is set.

PySide2.QtCore.QMetaProperty.isDesignable([obj=None])
Parameters:

objPySide2.QtCore.QObject

Return type:

bool

Returns true if this property is designable for the given object ; otherwise returns false .

If no object is given, the function returns false if the Q_PROPERTY() ‘s DESIGNABLE attribute is false; otherwise returns true (if the attribute is true or is a function or expression).

PySide2.QtCore.QMetaProperty.isEditable([obj=None])
Parameters:

objPySide2.QtCore.QObject

Return type:

bool

Note

This function is deprecated.

Returns true if the property is editable for the given object ; otherwise returns false .

If no object is given, the function returns false if the Q_PROPERTY() ‘s EDITABLE attribute is false; otherwise returns true (if the attribute is true or is a function or expression).

PySide2.QtCore.QMetaProperty.isEnumType()
Return type:

bool

Returns true if the property’s type is an enumeration value; otherwise returns false .

PySide2.QtCore.QMetaProperty.isFinal()
Return type:

bool

Returns true if the property is final; otherwise returns false .

A property is final if the Q_PROPERTY() ‘s FINAL attribute is set.

PySide2.QtCore.QMetaProperty.isFlagType()
Return type:

bool

Returns true if the property’s type is an enumeration value that is used as a flag; otherwise returns false .

Flags can be combined using the OR operator. A flag type is implicitly also an enum type.

PySide2.QtCore.QMetaProperty.isReadable()
Return type:

bool

Returns true if this property is readable; otherwise returns false .

PySide2.QtCore.QMetaProperty.isRequired()
Return type:

bool

Returns true if the property is required; otherwise returns false .

A property is final if the Q_PROPERTY() ‘s REQUIRED attribute is set.

PySide2.QtCore.QMetaProperty.isResettable()
Return type:

bool

Returns true if this property can be reset to a default value; otherwise returns false .

See also

reset()

PySide2.QtCore.QMetaProperty.isScriptable([obj=None])
Parameters:

objPySide2.QtCore.QObject

Return type:

bool

Returns true if the property is scriptable for the given object ; otherwise returns false .

If no object is given, the function returns false if the Q_PROPERTY() ‘s SCRIPTABLE attribute is false; otherwise returns true (if the attribute is true or is a function or expression).

PySide2.QtCore.QMetaProperty.isStored([obj=None])
Parameters:

objPySide2.QtCore.QObject

Return type:

bool

Returns true if the property is stored for object ; otherwise returns false.

If no object is given, the function returns false if the Q_PROPERTY() ‘s STORED attribute is false; otherwise returns true (if the attribute is true or is a function or expression).

PySide2.QtCore.QMetaProperty.isUser([obj=None])
Parameters:

objPySide2.QtCore.QObject

Return type:

bool

Returns true if this property is designated as the USER property, i.e., the one that the user can edit for object or that is significant in some other way. Otherwise it returns false. e.g., the text property is the USER editable property of a QLineEdit .

If object is None , the function returns false if the Q_PROPERTY() ‘s USER attribute is false. Otherwise it returns true.

PySide2.QtCore.QMetaProperty.isValid()
Return type:

bool

Returns true if this property is valid (readable); otherwise returns false .

See also

isReadable()

PySide2.QtCore.QMetaProperty.isWritable()
Return type:

bool

Returns true if this property is writable; otherwise returns false.

PySide2.QtCore.QMetaProperty.name()
Return type:

str

Returns this property’s name.

See also

type() typeName()

PySide2.QtCore.QMetaProperty.notifySignal()
Return type:

PySide2.QtCore.QMetaMethod

Returns the QMetaMethod instance of the property change notifying signal if one was specified, otherwise returns an invalid QMetaMethod .

PySide2.QtCore.QMetaProperty.notifySignalIndex()
Return type:

int

Returns the index of the property change notifying signal if one was specified, otherwise returns -1.

PySide2.QtCore.QMetaProperty.propertyIndex()
Return type:

int

Returns this property’s index.

PySide2.QtCore.QMetaProperty.read(obj)
Parameters:

objPySide2.QtCore.QObject

Return type:

object

Reads the property’s value from the given object . Returns the value if it was able to read it; otherwise returns an invalid variant.

PySide2.QtCore.QMetaProperty.readOnGadget(gadget)
Parameters:

gadgetvoid

Return type:

object

Reads the property’s value from the given gadget . Returns the value if it was able to read it; otherwise returns an invalid variant.

This function should only be used if this is a property of a Q_GADGET

PySide2.QtCore.QMetaProperty.relativePropertyIndex()
Return type:

int

Returns this property’s index relative within the enclosing meta object.

PySide2.QtCore.QMetaProperty.reset(obj)
Parameters:

objPySide2.QtCore.QObject

Return type:

bool

Resets the property for the given object with a reset method. Returns true if the reset worked; otherwise returns false .

Reset methods are optional; only a few properties support them.

See also

read() write()

PySide2.QtCore.QMetaProperty.resetOnGadget(gadget)
Parameters:

gadgetvoid

Return type:

bool

Resets the property for the given gadget with a reset method. Returns true if the reset worked; otherwise returns false .

Reset methods are optional; only a few properties support them.

This function should only be used if this is a property of a Q_GADGET

PySide2.QtCore.QMetaProperty.revision()
Return type:

int

Returns the property revision if one was specified by REVISION, otherwise returns 0.

PySide2.QtCore.QMetaProperty.type()
Return type:

QVariant::Type

Returns this property’s type. The return value is one of the values of the Type enumeration.

PySide2.QtCore.QMetaProperty.typeName()
Return type:

str

Returns the name of this property’s type.

See also

type() name()

PySide2.QtCore.QMetaProperty.userType()
Return type:

int

Returns this property’s user type. The return value is one of the values that are registered with QMetaType , or UnknownType if the type is not registered.

See also

type() QMetaType typeName()

PySide2.QtCore.QMetaProperty.write(obj, value)
Parameters:
Return type:

bool

Writes value as the property’s value to the given object . Returns true if the write succeeded; otherwise returns false .

If value is not of the same type type as the property, a conversion is attempted. An empty QVariant() is equivalent to a call to reset() if this property is resettable, or setting a default-constructed object otherwise.

PySide2.QtCore.QMetaProperty.writeOnGadget(gadget, value)
Parameters:
  • gadgetvoid

  • value – object

Return type:

bool

Writes value as the property’s value to the given gadget . Returns true if the write succeeded; otherwise returns false .

This function should only be used if this is a property of a Q_GADGET