|
libdrmconf
0.12.0
A library to program DMR radios.
|
Generic list class for config objects. More...
#include <configobject.hh>


Signals | |
| void | elementAdded (int idx) |
| Gets emitted if an element was added to the list. | |
| void | elementModified (int idx) |
| Gets emitted if one of the lists elements gets modified. | |
| void | elementRemoved (int idx) |
| Gets emitted if one of the lists elements gets deleted. | |
Public Member Functions | |
| virtual bool | copy (const AbstractConfigObjectList &other) |
Copies all elements from other to this list. | |
| virtual bool | label (ConfigItem::Context &context, const ErrorStack &err=ErrorStack())=0 |
| Recursively labels the config object. | |
| virtual YAML::Node | serialize (const ConfigItem::Context &context, const ErrorStack &err=ErrorStack())=0 |
| Recursively serializes the configuration to YAML nodes. More... | |
| virtual int | count () const |
| Returns the number of elements in the list. | |
| virtual int | indexOf (ConfigObject *obj) const |
| Returns the index of the given object within the list. | |
| virtual void | clear () |
| Clears the list. | |
| virtual const Config * | config () const |
| Returns the config object, this list belongs to. | |
| virtual void | findItemsOfTypes (const QStringList &typeNames, QSet< ConfigItem * > &items) const |
| Searches the config tree to find all instances of the given type names. | |
| virtual QList< ConfigObject * > | findItemsByName (const QString name) const |
| Searches the list for objects with the given name. | |
| virtual bool | has (ConfigObject *obj) const |
Returns true, if the list contains the given object. | |
| virtual ConfigObject * | get (int idx) const |
Returns the list element at the given index or nullptr if out of bounds. | |
| virtual int | add (ConfigObject *obj, int row=-1, bool unique=true) |
| Adds an element to the list. | |
| virtual int | replace (ConfigObject *obj, int row, bool unique=true) |
| Replaces an element in the list. | |
| virtual bool | take (ConfigObject *obj) |
| Removes an element from the list. | |
| virtual bool | del (ConfigObject *obj) |
| Removes an element from the list (and deletes it if owned). | |
| virtual bool | moveUp (int idx) |
Moves an object at index idx one step up. | |
| virtual bool | moveUp (int first, int last) |
| Moves objects at [first, last] one step up. | |
| virtual bool | moveDown (int idx) |
Moves an object at index idx one step down. | |
| virtual bool | moveDown (int first, int last) |
| Moves objects [first, last] one step down. | |
| virtual bool | move (int source, int count, int destination) |
| Moves the given source range to the destination index. More... | |
| const QList< QMetaObject > & | elementTypes () const |
| Returns the element type for this list. | |
| QStringList | classNames () const |
| Returns a list of all class names. | |
Protected Member Functions | |
| AbstractConfigObjectList (const QMetaObject &elementTypes=ConfigObject::staticMetaObject, QObject *parent=nullptr) | |
| Hidden constructor. | |
| AbstractConfigObjectList (const std::initializer_list< QMetaObject > &elementTypes, QObject *parent=nullptr) | |
| Hidden constructor from initializer list. | |
Protected Attributes | |
| QList< QMetaObject > | _elementTypes |
| Holds the static QMetaObject of the element type. | |
| QVector< ConfigObject * > | _items |
| Holds the list items. | |
Generic list class for config objects.
|
virtual |
Moves the given source range to the destination index.
The destination index is given before the movement. That is, if elements 0 & 1 are moved to indices 1 & 2, call move(0,2, 2)
|
pure virtual |
Recursively serializes the configuration to YAML nodes.
The complete configuration must be labeled first.
Implemented in ConfigObjectRefList, and ConfigObjectList.