First version
[staging/HomeScreen.git] / src / statusbarwidget.h
1 /*
2  * Copyright (C) 2016 Mentor Graphics Development (Deutschland) GmbH
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16
17 #ifndef STATUSBARWIDGET_H
18 #define STATUSBARWIDGET_H
19
20 #include <QWidget>
21 #include "include/daynightmode.h"
22 #include "daynightmode_adapter.h"
23 #include "statusbar_adapter.h"
24
25 namespace Ui {
26 class StatusBarWidget;
27 }
28
29 class StatusBarWidget : public QWidget
30 {
31     Q_OBJECT
32
33 public:
34     explicit StatusBarWidget(QWidget *parent = 0);
35     ~StatusBarWidget();
36
37 // from daynightmode_adapter.h
38 public Q_SLOTS:
39     void setDayNightMode(int mode);
40     inline int getDayNightMode()
41     {
42         return (int)m_dayNightMode;
43     }
44
45 // from statusbar_adapter.h
46 public Q_SLOTS: // METHODS
47     void setStatus(int index, const QString &text);
48
49 protected:
50     void timerEvent(QTimerEvent *e);
51
52 private:
53     Ui::StatusBarWidget *mp_ui;
54
55     SystemDayNight::eDayNightMode m_dayNightMode;
56     DaynightmodeAdaptor *mp_daynightmodeAdaptor;
57     StatusbarAdaptor *mp_statusbarAdaptor;
58
59     int m_secondsTimerId;
60 };
61
62 #endif // STATUSBARWIDGET_H