interfaces
scriptmanager.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef __scriptmanager_h__
00020 #define __scriptmanager_h__
00021
00022 #include <tqvariant.h>
00023 #include <scriptclientinterface.h>
00024 #include <scriptinterface.h>
00025 #include <tqdict.h>
00026 #include <tqobject.h>
00027
00028 #include <tdelibs_export.h>
00029
00030 class ScriptInfo;
00031
00032
00033
00039 class KDE_EXPORT KScriptManager : public TQObject, public KScriptClientInterface
00040 {
00041 Q_OBJECT
00042 friend class KScriptInterface;
00043 public:
00047 KScriptManager(TQObject *parent, const char *name);
00051 virtual ~KScriptManager();
00057 bool addScript( const TQString &scriptDesktopFile);
00062 bool removeScript( const TQString &scriptName );
00067 TQStringList scripts();
00071 void clear();
00076 void error( const TQString &msg ) {emit scriptError(msg);}
00081 void warning( const TQString &msg ) {emit scriptWarning(msg);}
00086 void output( const TQString &msg ) {emit scriptOutput(msg);}
00093 void progress( int percent ) {emit scriptProgress(percent);}
00099 void done( KScriptClientInterface::Result result, const TQVariant &returned ) {emit scriptDone(result, returned);}
00100
00101 public slots:
00105 void runScript( const TQString &scriptName, TQObject *context = 0, const TQVariant &arg = 0 );
00106 signals:
00111 void scriptError( const TQString &msg );
00116 void scriptWarning( const TQString &msg );
00121 void scriptOutput( const TQString &msg );
00126 void scriptProgress( int percent);
00131 void scriptDone( KScriptClientInterface::Result result, const TQVariant &returned);
00132 protected:
00133 TQDict<ScriptInfo> m_scripts;
00134 TQDict<KScriptInterface> m_scriptCache;
00135
00136 TQString m_currentScript;
00137 };
00138
00139 #endif