1 |
torben |
509 |
|
2 |
|
|
#ifndef MAINVIEW_H |
3 |
|
|
#define MAINVIEW_H |
4 |
|
|
|
5 |
torben |
528 |
#include <QVector> |
6 |
torben |
509 |
#include <QWidget> |
7 |
torben |
528 |
#include "screenitem.h" |
8 |
|
|
#include "screenxmlhandler.h" |
9 |
torben |
509 |
|
10 |
torben |
870 |
class QStackedLayout; |
11 |
torben |
527 |
class VideoView; |
12 |
torben |
884 |
class WebView; |
13 |
torben |
515 |
class ClientSideRender; |
14 |
torben |
524 |
class PictureView; |
15 |
torben |
867 |
class QSvgWidget; |
16 |
torben |
875 |
class ScreenManager; |
17 |
torben |
883 |
class ClockOverlay; |
18 |
torben |
535 |
class QSettings; |
19 |
|
|
|
20 |
torben |
638 |
enum Mode { |
21 |
|
|
ModeNone, |
22 |
|
|
ModeSimpleWeb, |
23 |
|
|
ModeXml, |
24 |
|
|
ModeLocal |
25 |
|
|
}; |
26 |
|
|
|
27 |
torben |
509 |
class MainView : public QWidget |
28 |
|
|
{ |
29 |
|
|
|
30 |
torben |
534 |
Q_OBJECT |
31 |
torben |
509 |
public: |
32 |
torben |
534 |
MainView(QWidget* parent); |
33 |
torben |
509 |
|
34 |
torben |
528 |
public slots: |
35 |
torben |
534 |
void onTimer(); |
36 |
torben |
509 |
|
37 |
torben |
532 |
protected: |
38 |
torben |
534 |
virtual void keyPressEvent ( QKeyEvent * event ); |
39 |
torben |
537 |
virtual void closeEvent ( QCloseEvent * event ); |
40 |
torben |
509 |
private: |
41 |
torben |
638 |
void loadSettings(); |
42 |
torben |
534 |
bool readXml(); |
43 |
torben |
638 |
void readLocalFiles(); |
44 |
torben |
534 |
void switchScreens(); |
45 |
|
|
void ensureVisible(QWidget* widget); |
46 |
torben |
542 |
void errorInfoScreen(QString msg); |
47 |
torben |
528 |
|
48 |
torben |
638 |
Mode currentMode; |
49 |
torben |
875 |
bool enableScreenManager; |
50 |
torben |
902 |
bool showClock; |
51 |
torben |
638 |
|
52 |
torben |
870 |
QStackedLayout* layout; |
53 |
|
|
|
54 |
torben |
884 |
WebView* web; |
55 |
torben |
534 |
ClientSideRender* render; |
56 |
|
|
PictureView* picture; |
57 |
|
|
VideoView* video; |
58 |
torben |
867 |
QSvgWidget* svg; |
59 |
torben |
534 |
QWidget* current; |
60 |
torben |
875 |
ScreenManager* screenManager; |
61 |
torben |
876 |
QTime screenManagerOn; |
62 |
|
|
QTime screenManagerOff; |
63 |
torben |
881 |
int xmlInterval; |
64 |
torben |
509 |
|
65 |
torben |
537 |
QTimer* timer ; |
66 |
torben |
534 |
QTime lastXml; |
67 |
|
|
QTime lastScreenSwitch; |
68 |
|
|
ScreenItem currentItem; |
69 |
|
|
int currentItemIdx; |
70 |
|
|
QVector<ScreenItem> screenItems; |
71 |
torben |
528 |
|
72 |
torben |
534 |
ScreenXmlHandler xmlHandler; |
73 |
torben |
528 |
|
74 |
torben |
535 |
QSettings* settings; |
75 |
|
|
QString url; |
76 |
|
|
QString screenid; |
77 |
|
|
QString xmlUrl; |
78 |
torben |
638 |
QString path; |
79 |
torben |
883 |
|
80 |
|
|
ClockOverlay* clockOverlay; |
81 |
torben |
509 |
}; |
82 |
|
|
|
83 |
|
|
#endif //MAINVIEW_H |