#ifndef MIRC_H #define MIRC_H #include #include #include #include #include #include #include #include "script.h" #include "parser.h" #define MIRC_VERSION "0.1" class MIRCScript; class MIRCScriptManager : public QObject { Q_OBJECT private: QObject *parent; QVector scripts; QMap _variables; QMap internal_aliases; QString _return_value; QTextStream *output; public: MIRCScriptManager(QObject *parent = 0); bool load(QString filename); /* bool unload(QString filename); */ void call_alias(QString alias, QStringList arguments); bool register_alias(QString alias, void (*fn)(QStringList)); bool hasVariable(QString variable); QString variable(QString variable); void variable(QString variable, QString value); QMap variables(); QString return_value(); public slots: void return_value(QString value); signals: void unknown_alias(QString alias, QStringList arguments); }; #endif