Updated DSSI
[klaudia.git] / src / klaudia.py
blob19949144af4c6298b7d09db8c74fb702c4023214
1 #!/usr/bin/env python
2 # -*- coding: utf-8 -*-
5 # Imports
6 import dbus, os, signal, sys
7 from PyQt4.QtGui import QApplication, QMessageBox
8 from w_klaudia import KlaudiaMainW, DBus
11 #--------------- main ------------------
12 if __name__ == '__main__':
14 # App initialization
15 app = QApplication(sys.argv)
16 app.setApplicationName("Klaudia")
17 app.setApplicationVersion("0.6")
18 app.setOrganizationName("falkTX")
20 if (not os.path.exists(os.getenv("HOME")+"/.klaudia")):
21 os.mkdir(os.getenv("HOME")+"/.klaudia")
23 # Do not close on SIGUSR1
24 signal.signal(signal.SIGUSR1, signal.SIG_IGN)
26 # Connect to DBus
27 DBus.loopBus = dbus.SessionBus()
29 try:
30 DBus.jackBus = DBus.loopBus.get_object("org.jackaudio.service", "/org/jackaudio/Controller")
31 except:
32 QMessageBox.critical(None, app.tr("Error"), app.tr("jackdbus is not available!\n"
33 "Klaudia cannot start."))
34 sys.exit(-1)
36 if ("org.ladish" in DBus.loopBus.list_names()):
37 DBus.controlBus = DBus.loopBus.get_object("org.ladish", "/org/ladish/Control")
38 DBus.studioBus = DBus.loopBus.get_object("org.ladish", "/org/ladish/Studio")
39 DBus.appBus = dbus.Interface(DBus.studioBus, 'org.ladish.AppSupervisor')
40 else:
41 DBus.controlBus = None
42 DBus.studioBus = None
43 DBus.appBus = None
45 # Show GUI
46 gui = KlaudiaMainW()
47 gui.show()
49 # Close Properly
50 sys.exit(app.exec_())