Kross
script.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef KROSS_SCRIPT_H
00021 #define KROSS_SCRIPT_H
00022
00023
00024 #include <QtCore/QStringList>
00025 #include <QtCore/QVariant>
00026 #include <QtCore/QObject>
00027
00028 #include "errorinterface.h"
00029
00030 namespace Kross {
00031
00032
00033 class Interpreter;
00034 class Action;
00035
00044 class KROSSCORE_EXPORT Script : public QObject, public ErrorInterface
00045 {
00046 Q_OBJECT
00047 public:
00048
00057 Script(Interpreter* interpreter, Action* action);
00058
00062 virtual ~Script();
00063
00068 Interpreter* interpreter() const;
00069
00073 Action* action() const;
00074
00078 virtual void execute() = 0;
00079
00083 virtual QStringList functionNames() = 0;
00084
00091 virtual QVariant callFunction(const QString& name, const QVariantList& args = QVariantList()) = 0;
00092
00093 private:
00095 class Private;
00097 Private* const d;
00098 };
00099
00100 }
00101
00102 #endif
00103