/* # Copyright (c) 2010,2011 - RZ Uni Freiburg # Copyright (c) 2010,2011 - OpenSLX Project # # This program/file is free software distributed under the GPL version 2. # See http://openslx.org/COPYING # # If you have any feedback please consult http://openslx.org/feedback and # send your feedback to feedback@openslx.org # # General information about OpenSLX can be found under http://openslx.org # # # Interface for javascript. # */ #ifndef JAVASCRIPTINTERFACE_H_ #define JAVASCRIPTINTERFACE_H_ #include "fbgui.h" class JavascriptInterface : public QObject { Q_OBJECT private: QWebFrame* _parent; QString _callbackOnDownloadsFinished; void loadJQuery(); public: JavascriptInterface(QWebFrame* parent); ~JavascriptInterface(); signals: void requestFile(const QString& filename); void quitFbgui(); public slots: void attachToDOM(); void getSession(const QString& session); void startDownload(const QString& filename); void setCallbackOnFinished(const QString& function); void callbackOnFinished(); void updateProgressBar(const int& percent, const double& speed, const QString& unit); void downloadInfo(const QString& filename, const double& filesize); void notify(const QString& msg); const QString getSysInfo(const QString& info); void quit(); void trigger(); }; #endif // JAVASCRIPTINTERFACE_H_