18 #ifndef QNSTCOMPOSERPLUGIN_H
19 #define QNSTCOMPOSERPLUGIN_H
23 #include <core/extensions/IPlugin.h>
24 using namespace composer::extension;
26 #include "ui/view/qnstview.h"
43 virtual QWidget* getWidget();
45 virtual bool saveSubsession();
48 virtual void updateFromModel();
50 virtual void onEntityAdded(QString pluginID, Entity *entity);
52 virtual void errorMessage(QString error);
54 virtual void onEntityChanged(QString pluginID, Entity *entity);
56 virtual void onEntityRemoved(QString pluginID, QString entityID);
58 virtual void changeSelectedEntity(QString pluginID,
void* entityUID);
60 void clearValidationError(QString pluginID,
void *param);
62 void validationError(QString pluginID,
void *param);
66 void requestEntitySelection(
const QString uid);
68 void requestEntityAddition(Entity* entity);
70 void requestEntityRemotion(Entity* entity);
72 void requestEntityChange(Entity* entity);
74 void requestEntitySelection(Entity* entity);
77 void notifyEntityAddedInView (
const QString uid,
const QString parent,
78 QMap<QString, QString> properties);
80 void notifyEntityDeletedInView(
const QString uid);
82 void notifyEntityChangedInView(
const QString uid,
83 QMap<QString, QString> properties);
86 QString getUidById(QString
id);
88 QString getUidById(QString
id, Entity* entity);
90 QString getUidByName(QString name, Entity* entity);
94 void createConnections();
97 void requestImportBaseAddition(Entity* entity);
99 void requestImportBaseChange(Entity* entity);
101 void requestCausalConnectorAddition(Entity* entity);
103 void requestCausalConnectorChange(Entity* entity);
105 void requestSimpleConditionAddition(Entity* entity);
107 void requestSimpleConditionChange(Entity* entity);
109 void requestSimpleActionAddition(Entity* entity);
111 void requestSimpleActionChange(Entity* entity);
113 void requestConnectorParamAddition(Entity* entity);
115 void requestConnectorParamChange(Entity* entity);
121 void requestBodyDependence();
123 void requestConnectorAddition(
const QString uid,
const QString parent,
124 const QMap<QString, QString> &properties);
126 void requestComplexConnectorAddition(
const QString uid,
127 const QString parent,
128 const QMap<QString, QString> &properties);
130 void requestBindAddition(
const QString uid,
const QString parent,
131 const QMap<QString, QString> &properties);
133 void requestConnectorDependence();
135 void requestConnectorBaseDependence();
145 QMap <QString, QString> entities;
146 QMap <QString, QString> nclIDtoStructural;
147 QList <QString> dirtyEntities;
148 QList <QString> previousCoreID;
150 QString lastSelected;
153 bool isSyncingFromTextual;
155 QString insertNCLIDIfEmpty(Entity *entity);
156 QString getNCLIdFromEntity(Entity *entity);
157 bool isEntityHandled(Entity *entity);
158 void syncNCLIdsWithStructuralIds();
161 void textualStartSync(QString,
void*);
162 void textualFinishSync(QString,
void*);
166 #endif // QNSTCOMPOSERPLUGIN_H