Changes to screen saver mode connection status handling
[qtmeetings] / src / UserInterface / Views / ViewBase.cpp
1 #include "ViewBase.h"
2
3 #include <QEvent>
4 #include <QKeyEvent>
5 #include <QTabletEvent>
6 #include <QMouseEvent>
7 #include <QMouseEvent>
8 #include <QMouseEvent>
9 #include <QLayout>
10
11 #include <QtDebug>
12
13 ViewBase::ViewBase( ViewBase::ViewMode aMode, QWidget *aParent ) : QWidget( aParent ), iViewMode( aMode )
14 {
15
16 }
17
18 ViewBase::~ViewBase()
19 {
20         
21 }
22
23 ViewBase::ViewMode ViewBase::viewMode()
24 {
25         return iViewMode;
26 }
27
28 void ViewBase::connectionEstablished()
29 {
30         connectedOnce = true;
31         connectionError = false;
32 }
33
34 void ViewBase::connectionLost()
35 {
36         connectionError = true;
37 }
38
39
40 bool ViewBase::event(QEvent *event)
41 {
42         switch( event->type() )
43         {
44                 // TODO : Add events as needed !!!
45                 case QEvent::KeyPress:
46                 case QEvent::KeyRelease:
47                 case QEvent::TabletMove:
48                 case QEvent::TabletPress:
49                 case QEvent::MouseMove:
50                 case QEvent::MouseButtonPress:
51                 case QEvent::MouseButtonDblClick:
52                         emit eventDetected();
53                         break;
54                 default:
55                         break;
56         }
57         
58         return QWidget::event( event );
59 }
60
61 bool ViewBase::eventFilter( QObject *watched, QEvent *event )
62 {
63         if ( watched != this ) // We do not filter our own events
64         {
65                 switch( event->type() )
66                 {
67                         // TODO : Add events as needed !!!!
68                         case QEvent::KeyPress:
69                         case QEvent::KeyRelease:
70                         case QEvent::TabletMove:
71                         case QEvent::TabletPress:
72                         case QEvent::MouseMove:
73                         case QEvent::MouseButtonPress:
74                         case QEvent::MouseButtonDblClick:
75                                 emit eventDetected();
76                                 break;
77                         default:
78                                 break;
79                 }
80         }
81         
82         return QWidget::eventFilter( watched, event );
83 }
84
85 void ViewBase::observeChild(QWidget *aChild)
86 {
87         aChild->setMouseTracking( true );
88         aChild->installEventFilter( this );
89 }