The QtFlagPropertyManager provides and manages flag properties. More...
#include <qtpropertymanager.h>
Public Slots | |
| void | setFlagNames (QtProperty *property, const QStringList &names) |
| void | setValue (QtProperty *property, int val) |
Signals | |
| void | flagNamesChanged (QtProperty *property, const QStringList &names) |
| void | valueChanged (QtProperty *property, int val) |
| Signals inherited from QtAbstractPropertyManager | |
| void | propertyChanged (QtProperty *property) |
| void | propertyDestroyed (QtProperty *property) |
| void | propertyInserted (QtProperty *property, QtProperty *parent, QtProperty *after) |
| void | propertyRemoved (QtProperty *property, QtProperty *parent) |
Public Member Functions | |
| QStringList | flagNames (const QtProperty *property) const |
| QtFlagPropertyManager (QObject *parent=nullptr) | |
| QtBoolPropertyManager * | subBoolPropertyManager () const |
| int | value (const QtProperty *property) const |
| ~QtFlagPropertyManager () override | |
| Public Member Functions inherited from QtAbstractPropertyManager | |
| QtProperty * | addProperty (const QString &name=QString()) |
| void | clear () const |
| QSet< QtProperty * > | properties () const |
| QtAbstractPropertyManager (QObject *parent=nullptr) | |
| ~QtAbstractPropertyManager () override | |
Protected Member Functions | |
| void | initializeProperty (QtProperty *property) override |
| void | uninitializeProperty (QtProperty *property) override |
| QString | valueText (const QtProperty *property) const override |
| Protected Member Functions inherited from QtAbstractPropertyManager | |
| virtual QtProperty * | createProperty () |
| virtual QString | displayText (const QtProperty *property) const |
| virtual EchoMode | echoMode (const QtProperty *) const |
| virtual bool | hasValue (const QtProperty *property) const |
| virtual QIcon | valueIcon (const QtProperty *property) const |
The QtFlagPropertyManager provides and manages flag properties.
Each flag property has an associated list of flag names which can be retrieved using the flagNames() function, and set using the corresponding setFlagNames() function.
The flag manager provides properties with nested boolean subproperties representing each flag, i.e. a flag property's value is the binary combination of the subproperties' values. A property's value can be retrieved and set using the value() and setValue() slots respectively. The combination of flags is represented by single int value - that's why it's possible to store up to 32 independent flags in one flag property.
The subproperties are created by a QtBoolPropertyManager object. This manager can be retrieved using the subBoolPropertyManager() function. In order to provide editing widgets for the subproperties in a property browser widget, this manager must be associated with an editor factory.
In addition, QtFlagPropertyManager provides the valueChanged() signal which is emitted whenever a property created by this manager changes, and the flagNamesChanged() signal which is emitted whenever the list of flag names is altered.
| QtFlagPropertyManager::QtFlagPropertyManager | ( | QObject * | parent = nullptr | ) |
Creates a manager with the given parent.
References QtAbstractPropertyManager::propertyDestroyed(), QtAbstractPropertyManager::QtAbstractPropertyManager(), QtAbstractPropertyManager::QtProperty, and valueChanged().
Referenced by flagNamesChanged().
|
override |
Destroys this manager, and all the properties it has created.
References QtAbstractPropertyManager::clear().
| QStringList QtFlagPropertyManager::flagNames | ( | const QtProperty * | property | ) | const |
Returns the given property's list of flag names.
References QtFlagPropertyManagerPrivate::Data::flagNames, getData(), and QtAbstractPropertyManager::QtProperty.
Referenced by setFlagNames().
|
signal |
This signal is emitted whenever a property created by this manager changes its flag names, passing a pointer to the property and the new names as parameters.
References QtFlagPropertyManager(), and QtAbstractPropertyManager::QtProperty.
Referenced by setFlagNames().
|
overrideprotectedvirtual |
Implementation of virtual method
Implements QtAbstractPropertyManager.
References QtAbstractPropertyManager::QtProperty.
|
slot |
Sets the given property's list of flag names to flagNames. The property's current value is reset to 0 indicating the first item of the list.
References flagNames(), QtFlagPropertyManagerPrivate::Data::flagNames, flagNamesChanged(), QtAbstractPropertyManager::propertyChanged(), QtAbstractPropertyManager::QtProperty, QtFlagPropertyManagerPrivate::Data::val, and valueChanged().
|
slot |
Sets the value of the given property to value. Nested properties are updated automatically.
The specified value must be less than the binary combination of the property's flagNames() list size (i.e. less than 2^n, where n is the size of the list) and larger than (or equal to) 0.
References QtFlagPropertyManagerPrivate::Data::flagNames, QtAbstractPropertyManager::propertyChanged(), QtAbstractPropertyManager::QtProperty, QtFlagPropertyManagerPrivate::Data::val, and valueChanged().
| QtBoolPropertyManager * QtFlagPropertyManager::subBoolPropertyManager | ( | ) | const |
Returns the manager that produces the nested boolean subproperties representing each flag.
In order to provide editing widgets for the subproperties in a property browser widget, this manager must be associated with an editor factory.
|
overrideprotectedvirtual |
Implementation of virtual method
Reimplemented from QtAbstractPropertyManager.
References QtAbstractPropertyManager::QtProperty.
| int QtFlagPropertyManager::value | ( | const QtProperty * | property | ) | const |
Returns the given property's value.
If the given property is not managed by this manager, this function returns 0.
References getValue(), and QtAbstractPropertyManager::QtProperty.
|
signal |
This signal is emitted whenever a property created by this manager changes its value, passing a pointer to the property and the new value as parameters.
References QtAbstractPropertyManager::QtProperty.
Referenced by QtFlagPropertyManager(), setFlagNames(), and setValue().
|
overrideprotectedvirtual |
Implementation of virtual method
Reimplemented from QtAbstractPropertyManager.
References QtFlagPropertyManagerPrivate::Data::flagNames, QtAbstractPropertyManager::QtProperty, and QtFlagPropertyManagerPrivate::Data::val.