lib
manager.h00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef KROSS_API_MANAGER_H
00021 #define KROSS_API_MANAGER_H
00022
00023 #include <qstring.h>
00024 #include <qstringlist.h>
00025 #include <qmap.h>
00026
00027
00028 #include <ksharedptr.h>
00029
00030 class QObject;
00031
00032 #include "../api/object.h"
00033 #include "mainmodule.h"
00034
00035 namespace Kross { namespace Api {
00036
00037
00038 class Interpreter;
00039 class Object;
00040 class EventSlot;
00041 class EventSignal;
00042 class ScriptContainer;
00043 class ManagerPrivate;
00044 class InterpreterInfo;
00045
00055 class KDE_EXPORT Manager : public MainModule
00056 {
00057 protected:
00058
00063 Manager();
00064
00065 public:
00066
00070 ~Manager();
00071
00076 static Manager* scriptManager();
00077
00082 QMap<QString, InterpreterInfo*> getInterpreterInfos();
00083
00088 bool hasInterpreterInfo(const QString& interpretername) const;
00089
00095 InterpreterInfo* getInterpreterInfo(const QString& interpretername);
00096
00107 const QString& getInterpreternameForFile(const QString& file);
00108
00120 KSharedPtr<ScriptContainer> getScriptContainer(const QString& scriptname);
00121
00132 Interpreter* getInterpreter(const QString& interpretername);
00133
00138 const QStringList getInterpreters();
00139
00148 bool addModule(Module::Ptr module);
00149
00159 Module::Ptr loadModule(const QString& modulename);
00160
00161 private:
00163 ManagerPrivate* d;
00164 };
00165
00166 }}
00167
00168 #endif
00169
|