LibEngsas
|
A standard root item for EXmlModels. More...
#include <exmlstandardrootitem.h>
Public Member Functions | |
EXmlStandardRootItem (QString tagName) | |
QVariant | data (int column, int role=Qt::DisplayRole) const |
used by EXmlModel::data() to retrieve the role data of this item. More... | |
bool | load (const QDomElement element, QMap< QString, EXmlParserItem * > parser) |
bool | save (QDomElement &useElem) |
EXmlItem * | copy () const |
Returns a pointer to a new element, copied from this one. More... | |
![]() | |
EXmlItem (QString tagName, EXmlItem *parent=0) | |
virtual | ~EXmlItem () |
int | rowCount () const |
virtual bool | setData (int column, QVariant value, int role=Qt::EditRole) |
Called by EXmlModel::setData() to set the role data for this item to value . More... | |
virtual void | setParent (EXmlItem *parent) |
Do not forget to call the base class implementation, when reimplementing this function. More... | |
EXmlItem * | parent () const |
virtual bool | addChild (int row, EXmlItem *item, bool emitInsertRows=true) |
Adds item as a child to this item at position row . More... | |
virtual bool | removeChild (int row, bool emitRemoveRows=true) |
Removes and deletes the child at row . More... | |
EXmlItem * | child (int row) const |
int | row (EXmlItem *child) const |
Returns the row of the child . More... | |
void | setTagName (QString tagName) |
QString | tagName () const |
Return the tag name (in lowercase), which is handled by this EXmlItem. More... | |
Additional Inherited Members | |
![]() | |
void | changed (EXmlItem *item) |
void | rowsAboutToBeInserted (EXmlItem *parent, int start, int end) |
void | rowsInserted () |
void | rowsAboutToBeRemoved (EXmlItem *parent, int start, int end) |
void | rowsRemoved () |
![]() | |
virtual void | changedByPass (EXmlItem *item) |
Just forwards the changed signal. More... | |
virtual void | rowsAboutToBeInsertedByPass (EXmlItem *parent, int start, int end) |
Just forwards the rowsAboutToBeInserted() signal. More... | |
virtual void | rowsInsertedByPass () |
Just forwards the rowsInserted() signal. More... | |
virtual void | rowsAboutToBeRemovedByPass (EXmlItem *parent, int start, int end) |
Just forwards the rowsAboutToBeRemoved() signal. More... | |
virtual void | rowsRemovedByPass () |
Just forwards the rowsRemoved() signal. More... | |
![]() | |
virtual void | copyBase (EXmlItem *target) const |
Copies all the standard stuff into target . More... | |
A standard root item for EXmlModels.
It does nothing else than handling childs. To use it, subclass it and implement as follows:
Note the Q_INVOKABLE constructor, which is used by the copy() function to create new instances of your subclass.
|
inline |
|
virtual |
Returns a pointer to a new element, copied from this one.
To copy all standard stuff, use the copyBase(EXmlItem*) function. So implement this function in all base classes like this:
Remember, that copyBase() does copy recursivly. That means, it adds copies of all children to the copy.
Implements EXmlItem.
|
virtual |
used by EXmlModel::data() to retrieve the role
data of this item.
Implement this function to return data to the view
Implements EXmlItem.
|
virtual |
Is called from the Model or the parent item, to load the content of element
. Therefore this function must also create child EXmlItem's, if child tags are found, which can not be handled by it's own. For this purpose the mapping parser
is given. The key of this map is the tagName which belongs to the parser item. If the found tag is not in the list, return false. If it is found, call the EXmlParseritem::load(QDomElement, EXmlItem *, QMap<QString, EXmlParserItem*>) function to process underlaying data. But create a new QDomElement as a child.
Implements EXmlItem.
|
virtual |
This function should convert the current handled data back into a QDomElement. The given useElem
should be used to store the own data into. Your childs should be appended to childs of useElem
. These can be done by calling this base implementation after processing your part.
useElem
is a null element or something other went wrong. Reimplemented from EXmlItem.