Workspace 6.21.5
Public Slots | Signals | Public Member Functions | Protected Member Functions | List of all members
QtEnumPropertyManager Class Reference

The QtEnumPropertyManager provides and manages enum properties. More...

#include <Workspace/Widgets/PropertyBrowser/qtpropertymanager.h>

Inheritance diagram for QtEnumPropertyManager:
[legend]

Public Slots

void setEnumIcons (QtProperty *property, const QMap< int, QIcon > &icons)
 
void setEnumNames (QtProperty *property, const QStringList &names)
 
void setValue (QtProperty *property, int val)
 

Signals

void enumIconsChanged (QtProperty *property, const QMap< int, QIcon > &icons)
 
void enumNamesChanged (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

 QtEnumPropertyManager (QObject *parent=nullptr)
 
 ~QtEnumPropertyManager ()
 
QMap< int, QIcon > enumIcons (const QtProperty *property) const
 
QStringList enumNames (const QtProperty *property) const
 
int value (const QtProperty *property) const
 
- Public Member Functions inherited from QtAbstractPropertyManager
 QtAbstractPropertyManager (QObject *parent=nullptr)
 
 ~QtAbstractPropertyManager ()
 
QtPropertyaddProperty (const QString &name=QString())
 
void clear () const
 
bool getModifiedOnValueChanged () const
 
QSet< QtProperty * > properties () const
 
void setModifiedOnValueChanged (bool modified)
 

Protected Member Functions

virtual void initializeProperty (QtProperty *property)
 
virtual void uninitializeProperty (QtProperty *property)
 
QIcon valueIcon (const QtProperty *property) const
 
QString valueText (const QtProperty *property) const
 
- Protected Member Functions inherited from QtAbstractPropertyManager
virtual QtPropertycreateProperty ()
 
virtual QString displayText (const QtProperty *property) const
 
virtual EchoMode echoMode (const QtProperty *) const
 
virtual bool hasValue (const QtProperty *property) const
 
virtual void initializeProperty (QtProperty *property)=0
 
virtual void uninitializeProperty (QtProperty *property)
 
virtual QIcon valueIcon (const QtProperty *property) const
 
virtual QString valueText (const QtProperty *property) const
 

Detailed Description

Each enum property has an associated list of enum names which can be retrieved using the enumNames() function, and set using the corresponding setEnumNames() function. An enum property's value is represented by an index in this list, and can be retrieved and set using the value() and setValue() slots respectively.

Each enum value can also have an associated icon. The mapping from values to icons can be set using the setEnumIcons() function and queried with the enumIcons() function.

In addition, QtEnumPropertyManager provides the valueChanged() signal which is emitted whenever a property created by this manager changes. The enumNamesChanged() or enumIconsChanged() signal is emitted whenever the list of enum names or icons is altered.

See also
QtAbstractPropertyManager, QtEnumEditorFactory

Constructor & Destructor Documentation

◆ QtEnumPropertyManager()

QtEnumPropertyManager ( QObject *  parent = nullptr)

Creates a manager with the given parent.

◆ ~QtEnumPropertyManager()

Destroys this manager, and all the properties it has created.

Member Function Documentation

◆ enumIcons()

QMap< int, QIcon > enumIcons ( const QtProperty property) const

Returns the given property's map of enum values to their icons.

See also
value(), setEnumIcons()

◆ enumIconsChanged

void enumIconsChanged ( QtProperty property,
const QMap< int, QIcon > &  icons 
)
signal

This signal is emitted whenever a property created by this manager changes its enum icons, passing a pointer to the property and the new mapping of values to icons as parameters.

See also
setEnumIcons()

◆ enumNames()

QStringList enumNames ( const QtProperty property) const

Returns the given property's list of enum names.

See also
value(), setEnumNames()

◆ enumNamesChanged

void enumNamesChanged ( QtProperty property,
const QStringList names 
)
signal

This signal is emitted whenever a property created by this manager changes its enum names, passing a pointer to the property and the new names as parameters.

See also
setEnumNames()

◆ initializeProperty()

void initializeProperty ( QtProperty property)
protectedvirtual

This function is called whenever a new valid property pointer has been created, passing the pointer as parameter.

The purpose is to let the manager know that the property has been created so that it can provide additional attributes for the new property, e.g. QtIntPropertyManager adds {QtIntPropertyManager::value()}{value}, {QtIntPropertyManager::minimum()}{minimum} and {QtIntPropertyManager::maximum()}{maximum} attributes. Since each manager subclass adds type specific attributes, this function is pure virtual and must be reimplemented when deriving from the QtAbstractPropertyManager class.

See also
addProperty(), createProperty()

Implements QtAbstractPropertyManager.

◆ setEnumIcons

void setEnumIcons ( QtProperty property,
const QMap< int, QIcon > &  enumIcons 
)
slot

Sets the given property's map of enum values to their icons to enumIcons.

Each enum value can have associated icon. This association is represented with passed enumIcons map.

See also
enumNames(), enumNamesChanged()

◆ setEnumNames

void setEnumNames ( QtProperty property,
const QStringList enumNames 
)
slot

Sets the given property's list of enum names to enumNames. The property's current value is reset to 0 indicating the first item of the list.

If the specified enumNames list is empty, the property's current value is set to -1.

See also
enumNames(), enumNamesChanged()

◆ setValue

void setValue ( QtProperty property,
int  value 
)
slot

Sets the value of the given property to value.

The specified value must be less than the size of the given property's enumNames() list, and larger than (or equal to) 0.

See also
value(), valueChanged()

◆ uninitializeProperty()

void uninitializeProperty ( QtProperty property)
protectedvirtual

This function is called just before the specified property is destroyed.

The purpose is to let the property manager know that the property is being destroyed so that it can remove the property's additional attributes.

See also
clear(), propertyDestroyed()

Reimplemented from QtAbstractPropertyManager.

◆ value()

int value ( const QtProperty property) const

Returns the given property's value which is an index in the list returned by enumNames()

If the given property is not managed by this manager, this function returns -1.

See also
enumNames(), setValue()

◆ valueChanged

void valueChanged ( QtProperty property,
int  value 
)
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.

See also
setValue()

◆ valueIcon()

QIcon valueIcon ( const QtProperty property) const
protectedvirtual

Returns an icon representing the current state of the given property.

The default implementation of this function returns an invalid icon.

See also
QtProperty::valueIcon()

Reimplemented from QtAbstractPropertyManager.

◆ valueText()

QString valueText ( const QtProperty property) const
protectedvirtual

Returns a string representing the current state of the given property.

The default implementation of this function returns an empty string.

See also
QtProperty::valueText()

Reimplemented from QtAbstractPropertyManager.