blob: b01295838582f67a16e6780bbac8b5b26a130425 (
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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
|
/*
* jsObject.h
*
* Created on: Feb 1, 2011
* Author: niklas
* The purpose of the jsObject class is to provide signals which will be emited in the javascript functions.
* Those javascript functions are writen in a seperate file: jsFunktions.js
*/
#ifndef JSOBJECT_H_
#define JSOBJECT_H_
#include "fbbrowser.h"
#include <QObject>
typedef enum
{
QUIT,
SHOW_USB_DEVICES,
SHOW_HARDDRIVES,
SHOW_MAC_ADDRESS,
SHOW_IP_ADDRESS,
SHOW_TIME,
SHOW_DATE
} jsAction;
class fbbrowser;
class QWebFrame;
class JSObject : public QObject
{
Q_OBJECT
private:
QWebFrame* owner;
public:
JSObject(QWebFrame* qwf);
virtual ~JSObject();
// no slots needed. class provides only signals
// private slots:
// void performAction(jsAction a);
// define all the needed signals.
// every action gets its own signal. (the former enum is not needed anymore)
// the signals will be connected in the fbbrowser class with slots of the fbbrowser class
signals:
void downloadFile(QUrl& urlToFile);
void signalQuitAll();
/*
// should be the last signal to be emited.
// Will close the browser and continues the boot sequenze
void closeBrowser();
// will start the download of all needed files for the following boot sequence
void startDownload(QString filename);
// starts the slot which is responsible for extracting the MAC address of the machine
// the MAC Address will be the parameter of a javascript function which will present it on the webpage
void getMacAddress();
// starts the slot which is responsible for extracting the IP address of the machine
// the IP address will be the parameter of a javascript function which will present it on the webpage
void getIpAddress();
// starts the slot which is responsible for extracting the integrated hardware devices of the machine
// the array of integrated hardware devices will be the parameter of a javascript function which will present // it on the webpage
void getIntegratedHardwareDevices();
// starts the slot which is responsible for extracting the usb devices of the machine
// the array of usb devices will be the parameter of a javascript function which will present it on the webpag
void getUsbDevices();
// starts the slot which is responsible for extracting the hard drive devices of the machine
// the array of hard rive devices will be the parameter of a javascript function which will present it on the // webpag
void getHardDrives();
// for testing
void showTime();
void showDate();
void showHelloWorld();
*/
public slots:
void attachToDOM();
// slots which are emited by the jsObject signals
void quitAll();
void startDownload(QString filename);
void updateProgress(int i);
// System info stuff
void getSysInfo();
void getMacAddress();
void getIpAddress();
void getIntegratedHardwareDevices();
void getUsbDevices();
void getHardDrives();
// for testing reasons
void showTime();
void showDate();
void showHelloWorld();
};
#endif /* JSOBJECT_H_ */
|