v0.1.0
[staging/HomeScreen.git] / HomeScreen / src / mainwindow.cpp
similarity index 51%
rename from src/mainwindow.cpp
rename to HomeScreen/src/mainwindow.cpp
index 40189b3..e2b55a9 100644 (file)
@@ -21,25 +21,23 @@ MainWindow::MainWindow(QWidget *parent) :
     QMainWindow(parent),
     mp_ui(new Ui::MainWindow),
     mp_statusBarWidget(0),
-    mp_dBusDayNightMode_StatusBarWidget(0),
     mp_controlBarWidget(0),
-    mp_dBusDayNightMode_ControlBarWidget(0),
     m_dayNightMode(SystemDayNight::DAYNIGHTMODE_DAY), // TODO: read from system
-    mp_daynightmodeAdaptor(0),
-    mp_popupAdaptor(0),
-    mp_dBusPopup(0),
+    mp_dayNightModeProxy(0),
     mp_popupWidget(0)
 {
+    // this has to be adopted to the system setup
+    mp_dayNightModeProxy = new org::agl::daynightmode("org.agl.homescreen.simulator", //"org.agl.systeminfoprovider"
+                                                      "/",
+                                                      QDBusConnection::sessionBus(),
+                                                      0);
+    QObject::connect(mp_dayNightModeProxy, SIGNAL(dayNightMode(int)), this, SLOT(dayNightModeSlot(int)));
+
     // dbus setup
     QDBusConnection dbus = QDBusConnection::sessionBus();
 
-    // publish dbus day night mode interface
-    mp_daynightmodeAdaptor = new DaynightmodeAdaptor((QObject*)this);
-    // publish dbus popup interface
-    mp_popupAdaptor = new PopupAdaptor((QObject*)this);
-
     dbus.registerObject("/MainWindow", this);
-    dbus.registerService("org.agl.mainwindow");
+    dbus.registerService("org.agl.homescreen");
 
     // no window decoration
     setWindowFlags(Qt::FramelessWindowHint);
@@ -48,47 +46,30 @@ MainWindow::MainWindow(QWidget *parent) :
     mp_statusBarWidget = new StatusBarWidget(this);
     mp_statusBarWidget->raise();
     // apply layout
-    mp_statusBarWidget->setGeometry(0, 0, 800, 60);
-    // connect to the dBus interface provided by the status bar widget
-    mp_dBusDayNightMode_StatusBarWidget = new org::agl::daynightmode("org.agl.mainwindow",
-                                              "/StatusBarWidget",
-                                              QDBusConnection::sessionBus(),
-                                              0);
+    mp_statusBarWidget->move(0, 0);
 
     mp_controlBarWidget = new ControlBarWidget(this);
     mp_controlBarWidget->raise();
     // apply layout
-    mp_controlBarWidget->setGeometry(0, 540, 800, 60);
-    // connect to the dBus interface provided by the control bar widget
-    mp_dBusDayNightMode_ControlBarWidget = new org::agl::daynightmode("org.agl.mainwindow",
-                                              "/ControlBarWidget",
-                                              QDBusConnection::sessionBus(),
-                                              0);
+    mp_controlBarWidget->move(0, 1920-60);
+
+    mp_popupWidget = new PopupWidget(this);
+    mp_controlBarWidget->raise();
+    // apply layout
+    mp_popupWidget->move(0, 0);
+
+    setWindowIcon(QIcon(":/icons/home_day.png"));
 }
 
 MainWindow::~MainWindow()
 {
-    delete mp_dBusDayNightMode_ControlBarWidget;
-    delete mp_dBusDayNightMode_StatusBarWidget;
-
-    if (0 == mp_dBusPopup)
-    {
-        delete mp_dBusPopup;
-    }
-    if (0 != mp_popupWidget)
-    {
-        delete mp_popupWidget;
-    }
-
-
-
-    delete mp_popupAdaptor;
-    delete mp_daynightmodeAdaptor;
+    delete mp_popupWidget;
+    delete mp_dayNightModeProxy;
     delete mp_statusBarWidget;
     delete mp_ui;
 }
 
-void MainWindow::setDayNightMode(int mode)
+void MainWindow::dayNightModeSlot(int mode)
 {
     switch (mode)
     {
@@ -109,32 +90,6 @@ void MainWindow::setDayNightMode(int mode)
     default:
         m_dayNightMode = SystemDayNight::DAYNIGHTMODE_UNDEFINED;
     }
-
-    mp_dBusDayNightMode_StatusBarWidget->setDayNightMode(m_dayNightMode);
-    mp_dBusDayNightMode_ControlBarWidget->setDayNightMode(m_dayNightMode);
-}
-
-void MainWindow::showPopup(int type, const QString &text)
-{
-    if (0 == mp_popupWidget)
-    {
-        qDebug("0 == mp_popupWidget");
-        mp_popupWidget = new PopupWidget(this);
-    }
-
-    mp_popupWidget->move(0, 0);
-    mp_popupWidget->show();
-
-    if (0 == mp_dBusPopup)
-    {
-        qDebug("0 == mp_dBusPopup");
-        // connect to the dBus interface provided by the popup widget
-        mp_dBusPopup = new org::agl::popup("org.agl.mainwindow",
-                                                  "/PopupWidget",
-                                                  QDBusConnection::sessionBus(),
-                                                  0);
-    }
-    mp_dBusPopup->showPopup(type, text);
 }
 
 void MainWindow::changeEvent(QEvent* event)