/* * 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 * * * Abstract interface for javascript. * */ #ifndef JAVASCRIPTINTERFACE_H_ #define JAVASCRIPTINTERFACE_H_ #include "fbgui.h" class JavascriptInterface: public QObject { Q_OBJECT public: JavascriptInterface(QWebFrame* parent); ~JavascriptInterface(); protected: // pointer to parent QWebFrame* _targetFrame; // loads jQuery code void loadJQuery(); signals: // quit the application void quitFbgui(); // shut off the system. connected to fbgui::performShutDown() void shutDownClient(); // reboot the system. connected to fbgui::performReboot() void rebootClient(); void deleteCookies(); void showCookies(); void showHistory(); public slots: // make sure the interface stays attached on webpage reload void attachToDOM(); void clearCookies(); void dumpCookies(); void dumpHistory(); void quit(); void shutDown(); void reboot(); void notify(const QString& msg); }; #endif // JAVASCRIPTINTERFACE_H_