X-Git-Url: https://git.ralfj.de/lilass.git/blobdiff_plain/191bb9843e48154f8c616a9b81f49cc4c3b4f13d..27f354daddc74c3859fdaee2bfab43f3282522b8:/gui.py?ds=sidebyside diff --git a/gui.py b/gui.py index 25f71c2..0f83c23 100644 --- a/gui.py +++ b/gui.py @@ -17,9 +17,15 @@ # This file abstracts GUI stuff away, so that the actual dsl.py does not have to deal with it import sys -from PyQt4 import QtGui -from qt_dialogue import PositionSelection -app = QtGui.QApplication(sys.argv) + +qt_available = True +try: + from PyQt4 import QtGui + from qt_dialogue import PositionSelection + app = QtGui.QApplication(sys.argv) +except Exception, e: + from zenity_dialogue import run as zenity_run + qt_available = False def error(message): '''Displays a fatal error to the user''' @@ -27,4 +33,7 @@ def error(message): def setup(internalResolutions, externalResolutions): '''Returns a ScreenSetup instance, or None if the user canceled''' - return PositionSelection(internalResolutions, externalResolutions).run() + if qt_available: + return PositionSelection(internalResolutions, externalResolutions).run() + else: + return zenity_run(internalResolutions, externalResolutions)