]> git.sur5r.net Git - minitube/blobdiff - src/jsfunctions.h
Imported Upstream version 2.4
[minitube] / src / jsfunctions.h
index e623a4b5c7dcc04d5e2793cade85da3b7ca9313b..174e6ff4506ac278cbef48ec99bc0cd07be8a67f 100644 (file)
@@ -31,6 +31,10 @@ class JsFunctions : public QObject {
 
 public:
     static JsFunctions* instance();
+    JsFunctions(const QString &url, QObject *parent = 0);
+    QScriptValue evaluate(const QString &js);
+    QString string(const QString &js);
+    QStringList stringArray(const QString &js);
 
     // Specialized functions
     // TODO move to subclass
@@ -43,21 +47,22 @@ public:
     QString ageGateRE();
     QString jsPlayerRE();
     QString signatureFunctionNameRE();
+    QStringList apiKeys();
 
-protected:
-    QString evaluate(const QString &js);
+signals:
+    void ready();
 
 private slots:
-    void gotJs(QByteArray bytes);
+    void gotJs(const QByteArray &bytes);
     void errorJs(QNetworkReply *reply);
 
 private:
-    JsFunctions(QObject *parent = 0);
-    static const QLatin1String &jsFilename();
-    static const QString &jsPath();
+    QString jsFilename();
+    QString jsPath();
     void loadJs();
     void parseJs(const QString &js);
 
+    QString url;
     QScriptEngine *engine;
 };