]> git.sur5r.net Git - minitube/blob - src/networkaccess.h
Show keyboard shortcuts in the status tip
[minitube] / src / networkaccess.h
1 #ifndef NETWORKACCESS_H
2 #define NETWORKACCESS_H
3
4 #include <QtNetwork>
5
6 namespace The {
7     QNetworkAccessManager* networkAccessManager();
8 }
9
10 class NetworkReply : public QObject {
11
12     Q_OBJECT
13
14 public:
15     NetworkReply(QNetworkReply* networkReply);
16
17 public slots:
18     void finished();
19     void metaDataChanged();
20     void requestError(QNetworkReply::NetworkError);
21
22 signals:
23     void data(QByteArray);
24     void error(QNetworkReply*);
25     void finished(QNetworkReply*);
26
27 private:
28     QNetworkReply *networkReply;
29
30 };
31
32
33 class NetworkAccess : public QObject {
34
35     Q_OBJECT
36
37 public:
38     NetworkAccess( QObject* parent=0);
39     QNetworkReply* simpleGet(QUrl url);
40     NetworkReply* get(QUrl url);
41     QNetworkReply* syncGet(QUrl url);
42     QByteArray syncGetBytes(QUrl url);
43     QString syncGetString(QUrl url);
44
45 private slots:
46     void error(QNetworkReply::NetworkError);
47     void syncMetaDataChanged();
48     void syncFinished();
49
50 private:
51     QNetworkReply *networkReply;
52     bool working;
53
54 };
55
56 typedef QPointer<QObject> ObjectPointer;
57 Q_DECLARE_METATYPE(ObjectPointer)
58
59 #endif // NETWORKACCESS_H