13 #include "../util/ComposerCoreControl_global.h"
17 #include <QMutexLocker>
45 class COMPOSERCORESHARED_EXPORT
Entity :
public QObject
69 QVector <Entity*> children;
75 QMap<QString, QString> atts;
83 explicit Entity(QObject *parent = 0);
90 explicit Entity(QMap<QString,QString> &atts, QObject *parent = 0);
99 explicit Entity(QString uniqueId, QString type, QMap<QString,QString> &atts,
100 QObject *parent = 0);
112 void setAttribute(QString name, QString value);
120 void setAtrributes(QMap<QString,QString> &newatts);
127 void setType(QString type);
135 void setUniqueID(QString uniqueId);
142 void setParent(
Entity *parent);
145 bool addChild(
Entity *entity);
152 bool deleteChild(
Entity *entity);
158 bool removeChildAppendChildren(
Entity *entity);
171 QString getAttribute(QString name);
178 void getAttributeIterator (QMap<QString,QString>::iterator &begin,
179 QMap<QString,QString>::iterator &end);
187 bool hasAttribute(
const QString &name);
189 QString getUniqueId();
195 QString getParentUniqueId();
202 void setDeleteChildren(
bool mustDelete);
204 QVector <Entity *> getChildren();
211 QString toString(
int ntabs,
bool writeuid =
true);