summaryrefslogtreecommitdiff
path: root/sowatchd/main.cpp
blob: 67ed7ac133a2a1b3f02b9dee4a55cd6293a483d9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include <QtCore/QDebug>
#include <QtGui/QApplication>
#include <QtDBus/QDBusConnection>

#include <sowatch.h>
#include "global.h"
#include "daemonadaptor.h"

namespace sowatch
{
	Daemon* daemon;
}

using namespace sowatch;

int main(int argc, char *argv[])
{
	// Some plugins use QtGui functionality, so QApplication must be used
	// instead of QCoreApplication.
	QApplication app(argc, argv);
	QApplication::setOrganizationDomain("com.javispedro.sowatch");
	QApplication::setOrganizationName("sowatch");
	QApplication::setApplicationName("sowatchd");
	QApplication::setQuitOnLastWindowClosed(false);

	sowatch::daemon = new Daemon(&app);
	new DaemonAdaptor(sowatch::daemon);

	QDBusConnection connection = QDBusConnection::sessionBus();
	if (!connection.registerService("com.javispedro.sowatchd")) {
		qCritical("Could not register D-Bus service");
	}
	if (!connection.registerObject("/com/javispedro/sowatch/daemon", sowatch::daemon)) {
		qCritical("Could not register daemon object");
	}

	return app.exec();
}