581e4bef5159d88fb8edd47c3382a8e48c8e672e
[apps/homescreen.git] / homescreensimulator / src / mainwindow.h
1 /*
2  * Copyright (C) 2016, 2017 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 MAINWINDOW_H
18 #define MAINWINDOW_H
19
20 #include <QMainWindow>
21 #include <include/daynightmode.hpp>
22 #include "daynightmode_adaptor.h"
23
24 #include "statusbar_proxy.h"
25 #include "popup_proxy.h"
26 #include "proximity_proxy.h"
27 #include "homescreen_proxy.h"
28
29 namespace Ui {
30 class MainWindow;
31 }
32
33 class MainWindow : public QMainWindow
34 {
35     Q_OBJECT
36
37 public:
38     explicit MainWindow(QWidget *parent = 0);
39     ~MainWindow();
40
41 // day/night mode
42 Q_SIGNALS:
43     void dayNightMode(int mode);
44
45 private slots:
46     void on_radioButton_DayMode_toggled(bool checked);
47
48     void on_radioButton_NightMode_toggled(bool checked);
49
50     void on_pushButton_Update_clicked();
51
52     void on_pushButton_Exit_clicked();
53
54     void on_tableWidget_Status_cellChanged(int row, int column);
55
56     void on_pushButton_Send_clicked();
57
58     void on_pushButton_IconExample_clicked();
59
60     void on_pushButton_PopupExample_clicked();
61
62     void on_pushButton_comboBoxExample_clicked();
63
64     void on_checkBox_ObjectDetected_clicked();
65
66 private:
67     Ui::MainWindow *mp_ui;
68     DaynightmodeAdaptor *mp_dBusDayNightModeAdaptor;
69     org::agl::statusbar *mp_dBusStatusBarProxy;
70     org::agl::popup *mp_dBusPopupProxy;
71     org::agl::proximity *mp_dBusProximityProxy;
72     org::agl::homescreen *mp_dBusHomeScreenProxy;
73 };
74
75 #endif // MAINWINDOW_H