14 #include <QMutexLocker>
17 #include "../model/Entity.h"
18 #include "../model/Project.h"
19 #include "../modules/LanguageControl.h"
20 using namespace composer::core::model;
38 class COMPOSERCORESHARED_EXPORT
IPlugin :
public QObject {
54 inline QString getPluginInstanceID() {
55 return this->pluginInstanceID;
58 inline void setPluginInstanceID(QString pluginInstID)
60 this->pluginInstanceID = pluginInstID;
65 this->languageProfile = languageProfile;
70 return this->languageProfile;
80 QMutexLocker locker(&mutex);
81 this->project = project;
92 QMutexLocker locker(&mutex);
207 void addEntity( QString type, QString parentEntityId,
208 QMap<QString,QString>& atts,
bool force);
216 void setAttributes(
Entity *entity, QMap<QString,QString> atts,
226 void removeEntity(
Entity * entity,
bool force);
235 void setListenFilter(
const QStringList &entityTypes);
251 void sendBroadcastMessage(
const char* msg,
void *obj);
262 void setPluginData(QByteArray data);
269 void setCurrentProjectAsDirty();