summaryrefslogtreecommitdiffstats
path: root/src/fbbrowser.h
blob: edaa35041a9cae436f180d68722c0f9ea014be45 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
#ifndef FBBROWSER_H
#define FBBROWSER_H

#include "DownloadManager.h"
#include "jsObject.h"
#include <QtGui>
#include <QtNetwork>

class QWebView;
//QT_BEGIN_NAMESPACE
//class QLineEdit;
//QT_END_NAMESPACE

class fbbrowser : public QMainWindow
{
    Q_OBJECT

public:
    fbbrowser(const QUrl& url);
    ~fbbrowser();
    void printusage();
    Q_INVOKABLE void writeText(QString text); //used for writing web content into a file

private:
    QUrl baseUrl;
    QNetworkRequest request;
    QNetworkReply *reply;
    QWebView *view;
    QNetworkAccessManager *manager;

    // Temporal stuff for the download function...
    // Private download function.
    void download(const QString & file);

	//the jsObject. connection to the webpage for emiting signals
	jsObject *jso;
	// connects all jsObject signals with fbbrowser slots
	void connectJsSignalsToSlots();



private slots:
    void addJSObject();
    void getSysInfo();

	// slots which are emited by the jsObject signals

	void quitAll();
	void startDownload_Slot();
	void getMacAddress_Slot();
	void getIpAddress_Slot();
	void getIntegratedHardwareDevices_Slot();
	void getUsbDevices_Slot();
	void getHardDrives_Slot();

	// for testing reasons
	void showTime_Slot();
	void showDate_Slot();
	void showHelloWorld_Slot();

signals:
    void signalQuitAll();
};

#endif // FBBROWSER_H