29 #ifndef __ARCSSCRIPTCOMPONENT_H__
30 #define __ARCSSCRIPTCOMPONENT_H__
32 #include <arcs/arcsabstractcomponent.h>
33 #include <arcs/arcsqdynamicobject.h>
34 #include <QScriptEngine>
49 virtual int qt_metacall(QMetaObject::Call,
int id,
void** arguments);
53 virtual int prepareSignalConnect(QString sigName, QString sltName, QString objectName, QString actualSlot,
bool simulate=
false);
54 virtual int prepareSlotConnect(QString sigName, QString sltName, QString objectName, QString actualSignal,
bool simulate=
false);
56 virtual int cleanSlotConnect(QString sigName, QString sltName, QString objectName, QString actualSignal);
57 virtual int cleanSignalConnect(QString sigName, QString sltName, QString objectName, QString actualSlot);
59 bool setScript(QString s);
61 static QScriptValue callSignal(QScriptContext* ctx, QScriptEngine* engine);
65 QScriptEngine* engine;
67 QList<int> paramSlotCount;
68 QList<QList<int> > paramSlotType;
69 QList<int> paramSignalCount;
70 QList<QList<int> > paramSignalType;
73 QStringList signalList;
75 static QString computeParamList(QString slt);
76 void createCallSignalScript();
77 static int paramCount(QString s);
79 QHash<QString, QStringList> signalCollection;
121 virtual QString
toString() {
return scriptString; }
127 virtual void getProxySlot (QString slot, ObjectList &obj, QStringList &proxySlot);
128 virtual void getProxySignal (QString signal, ObjectList &obj, QStringList &proxySignal);
134 QString scriptString;
142 #endif // __ARCSSCRIPTCOMPONENT_H__
This component will be a QObject proxy in order to implement script behaviours */.
virtual void getProxySlot(QString slot, ObjectList &obj, QStringList &proxySlot)
Creates a proxy slot to interface a component to native ARCS components.
virtual QString toString()
Defines a basic seralization mechanism.
virtual bool genuineInstanciate()
This method should implement the instanciation of the actual component.
virtual QStringList getSlots()
Returns the names of the available slots.
virtual int cleanSlotConnect(QString sigName, QString sltName, QString objectName, QString actualSignal)
virtual int cleanSignalConnect(QString sigName, QString sltName, QString objectName, QString actualSlot)
virtual int prepareSignalConnect(QString sigName, QString sltName, QString objectName, QString actualSlot, bool simulate=false)
Prepares a connection with a slot which does not belong to this object.
virtual QStringList getSignals()
Returns the names of the availables signals.
Class handling the generic description of a component.
virtual void getProxySignal(QString signal, ObjectList &obj, QStringList &proxySignal)
Creates a proxy signal to interface a component to native ARCS components.
virtual int prepareSlotConnect(QString sigName, QString sltName, QString objectName, QString actualSignal, bool simulate=false)
Prepares a connection with a slot which is belonging to this object.
virtual void genuineDestroy()
This method should implement the destruction of the actual component.
virtual QStringList getSignalList()
Interface to extend QObject functionnalities in order to make objects with dynamic signals or slots...
virtual QStringList getSlotList()
virtual bool parseString(QString s)
Defines a basic seralization mechanism.
virtual int qt_metacall(QMetaObject::Call, int id, void **arguments)
Method performing the actual callback task.