Stellarium
HEAD
|
Manages the registration of specific object properties with the StelProperty system. More...
#include <StelPropertyMgr.hpp>
Public Types | |
typedef QMap< QString, StelProperty * > | StelPropertyMap |
Signals | |
void | stelPropertyChanged (StelProperty *prop, const QVariant &value) |
Emitted when any registered StelProperty has been changed. More... | |
Public Member Functions | |
StelPropertyMgr () | |
Use StelApp::getStelPropertyManager to get the global instance. | |
StelProperty * | registerProperty (const QString &id, QObject *target, const char *propertyName) |
Manually register a new StelProperty. More... | |
void | registerObject (QObject *obj) |
Registers all Q_PROPERTY definitions on this object as StelProperty. More... | |
QStringList | getPropertyList () const |
Returns the keys of all registered StelProperties. | |
QList< StelProperty * > | getAllProperties () const |
Returns all currently registered StelProperty instances. | |
const StelPropertyMap & | getPropertyMap () const |
Returns a map from property IDs to StelProperty objects. | |
StelProperty * | getProperty (const QString &id, const bool noWarning=false) const |
Returns the StelProperty with the specified ID, or Q_NULLPTR if not registered. More... | |
QVariant | getStelPropertyValue (const QString &id, const bool noWarning=false) const |
Retrieves the current value of the given StelProperty, without requiring the retrieval of its object first. More... | |
bool | setStelPropertyValue (const QString &id, const QVariant &value) const |
Sets the value of the given StelProperty, without requiring the retrieval of its object first. More... | |
QMetaProperty | getMetaProperty (const QString &id) const |
Returns the QMetaProperty information for the given id . | |
Manages the registration of specific object properties with the StelProperty system.
A shortcut exists through StelModule::registerProperty. For more information on how to use this system, see the StelProperty class.
StelProperty* StelPropertyMgr::getProperty | ( | const QString & | id, |
const bool | noWarning = false |
||
) | const |
Returns the StelProperty with the specified ID, or Q_NULLPTR if not registered.
If not registered, a warning is written to logfile unless noWarning is true. This may be useful to suppress warnings about plugin module properties when these are not loaded, but should else be left true.
QVariant StelPropertyMgr::getStelPropertyValue | ( | const QString & | id, |
const bool | noWarning = false |
||
) | const |
Retrieves the current value of the given StelProperty, without requiring the retrieval of its object first.
id
, or an invalid QVariant when no property with the given ID is found. If not found, a warning is written to logfile unless noWarning is true. This may be useful to suppress warnings about plugin module properties when these are not loaded, but should else be left true. void StelPropertyMgr::registerObject | ( | QObject * | obj | ) |
Registers all Q_PROPERTY definitions on this object as StelProperty.
The object must have an unique QObject::objectName, and this name should never change after registering. For all properties on this object, a StelProperty with an ID in the format <objectName>.<propertyName>
is generated.
StelProperty* StelPropertyMgr::registerProperty | ( | const QString & | id, |
QObject * | target, | ||
const char * | propertyName | ||
) |
Manually register a new StelProperty.
id | The identifier of the property. Must be unique, app will exit otherwise. It should follow the naming conventions as described in StelProperty. |
target | The QObject which contains the property. |
propertyName | The name of the Q_PROPERTY on the target which should be linked |
propertyName
on the target
object bool StelPropertyMgr::setStelPropertyValue | ( | const QString & | id, |
const QVariant & | value | ||
) | const |
Sets the value of the given StelProperty, without requiring the retrieval of its object first.
true
when the value of the StelProperty with the ID id
has been successfully changed, and false
if the value change failed or when no property with the given ID is found.
|
signal |
Emitted when any registered StelProperty has been changed.
prop | The property that was changed |
value | The new value of the property |