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);
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)
{
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)