13 #include "../util/ComposerCoreControl_global.h"
32 #include "../model/exception/ParentNotFound.h"
33 #include "../model/exception/EntityNotFound.h"
34 #include "../util/Utilities.h"
35 using namespace composer::core::util;
38 using namespace composer::core::model;
69 Entity* getEntityById(QString _id);
75 QList<Entity*> getEntitiesbyType(QString _type);
82 QString getLocation();
88 QString getProjectId();
93 LanguageType getProjectType();
99 QByteArray getPluginData(QString pluginId);
104 QString generateUniqueNCLId(
const QString &tagname);
105 QList<Entity*> getEntityByAttrId(
const QString &
id);
110 QMutex *lockEntities;
112 QMap<QString, Entity*> entities;
113 QMap<QString, QByteArray> pluginData;
115 QString projectLocation;
117 LanguageType projectType;
127 explicit Project(QObject *parent = 0);
134 Project(QMap<QString,QString> &atts, QObject *parent = 0);
142 Project(QString uniqueId, QMap<QString,QString> &atts, QObject *parent = 0);
153 void setLocation(QString location);
160 void setProjectType(LanguageType type);
192 bool addEntity(
Entity* entity, QString parentId)
201 bool setPluginData(QString pluginId,
const QByteArray data);
217 bool removeEntity(
Entity* entity,
bool appendChild)
230 void setDirty(
bool isDirty);
233 void dirtyProject(
bool isDirty);