Fixed up a problem on OS X where a second configuration file was created. See bug #738642.

bzr-revno: 1420
This commit is contained in:
Raoul Snyman 2011-03-25 17:51:28 +02:00
commit 9c08726bd9
2 changed files with 19 additions and 22 deletions

View File

@ -71,12 +71,14 @@ class OpenLP(QtGui.QApplication):
The core application class. This class inherits from Qt's QApplication The core application class. This class inherits from Qt's QApplication
class in order to provide the core of the application. class in order to provide the core of the application.
""" """
log.info(u'OpenLP Application Loaded') app_version = None
def _get_version(self): def get_version(self):
""" """
Load and store current Application Version Load and store current Application Version
""" """
if self.app_version:
return self.app_version
if u'--dev-version' in sys.argv or u'-d' in sys.argv: if u'--dev-version' in sys.argv or u'-d' in sys.argv:
# If we're running the dev version, let's use bzr to get the version # If we're running the dev version, let's use bzr to get the version
try: try:
@ -136,26 +138,25 @@ class OpenLP(QtGui.QApplication):
if fversion: if fversion:
fversion.close() fversion.close()
bits = full_version.split(u'-') bits = full_version.split(u'-')
app_version = { self.app_version = {
u'full': full_version, u'full': full_version,
u'version': bits[0], u'version': bits[0],
u'build': bits[1] if len(bits) > 1 else None u'build': bits[1] if len(bits) > 1 else None
} }
if app_version[u'build']: if self.app_version[u'build']:
log.info( log.info(
u'Openlp version %s build %s', u'Openlp version %s build %s',
app_version[u'version'], self.app_version[u'version'],
app_version[u'build'] self.app_version[u'build']
) )
else: else:
log.info(u'Openlp version %s' % app_version[u'version']) log.info(u'Openlp version %s' % self.app_version[u'version'])
return app_version return self.app_version
def run(self): def run(self):
""" """
Run the OpenLP application. Run the OpenLP application.
""" """
app_version = self._get_version()
# provide a listener for widgets to reqest a screen update. # provide a listener for widgets to reqest a screen update.
QtCore.QObject.connect(Receiver.get_receiver(), QtCore.QObject.connect(Receiver.get_receiver(),
QtCore.SIGNAL(u'openlp_process_events'), self.processEvents) QtCore.SIGNAL(u'openlp_process_events'), self.processEvents)
@ -163,10 +164,6 @@ class OpenLP(QtGui.QApplication):
QtCore.SIGNAL(u'cursor_busy'), self.setBusyCursor) QtCore.SIGNAL(u'cursor_busy'), self.setBusyCursor)
QtCore.QObject.connect(Receiver.get_receiver(), QtCore.QObject.connect(Receiver.get_receiver(),
QtCore.SIGNAL(u'cursor_normal'), self.setNormalCursor) QtCore.SIGNAL(u'cursor_normal'), self.setNormalCursor)
self.setOrganizationName(u'OpenLP')
self.setOrganizationDomain(u'openlp.org')
self.setApplicationName(u'OpenLP')
self.setApplicationVersion(app_version[u'version'])
# Decide how many screens we have and their size # Decide how many screens we have and their size
screens = ScreenList(self.desktop()) screens = ScreenList(self.desktop())
# First time checks in settings # First time checks in settings
@ -186,7 +183,8 @@ class OpenLP(QtGui.QApplication):
# make sure Qt really display the splash screen # make sure Qt really display the splash screen
self.processEvents() self.processEvents()
# start the main app window # start the main app window
self.mainWindow = MainWindow(screens, app_version, self.clipboard()) self.mainWindow = MainWindow(screens, self.app_version,
self.clipboard())
self.mainWindow.show() self.mainWindow.show()
if show_splash: if show_splash:
# now kill the splashscreen # now kill the splashscreen
@ -198,7 +196,7 @@ class OpenLP(QtGui.QApplication):
update_check = QtCore.QSettings().value( update_check = QtCore.QSettings().value(
u'general/update check', QtCore.QVariant(True)).toBool() u'general/update check', QtCore.QVariant(True)).toBool()
if update_check: if update_check:
VersionThread(self.mainWindow, app_version).start() VersionThread(self.mainWindow, self.app_version).start()
return self.exec_() return self.exec_()
def hookException(self, exctype, value, traceback): def hookException(self, exctype, value, traceback):
@ -273,11 +271,12 @@ def main():
qInitResources() qInitResources()
# Now create and actually run the application. # Now create and actually run the application.
app = OpenLP(qt_args) app = OpenLP(qt_args)
# Define the settings environment app.setOrganizationName(u'OpenLP')
settings = QtCore.QSettings(u'OpenLP', u'OpenLP') app.setOrganizationDomain(u'openlp.org')
app.setApplicationName(u'OpenLP')
app.setApplicationVersion(app.get_version()[u'version'])
# First time checks in settings # First time checks in settings
# Use explicit reference as not inside a QT environment yet if not QtCore.QSettings().value(u'general/has run wizard',
if not settings.value(u'general/has run wizard',
QtCore.QVariant(False)).toBool(): QtCore.QVariant(False)).toBool():
if not FirstTimeLanguageForm().exec_(): if not FirstTimeLanguageForm().exec_():
# if cancel then stop processing # if cancel then stop processing

View File

@ -123,9 +123,7 @@ class LanguageManager(object):
language = unicode(qm_list[action_name]) language = unicode(qm_list[action_name])
if LanguageManager.auto_language: if LanguageManager.auto_language:
language = u'[%s]' % language language = u'[%s]' % language
# This needs to be here for the setValue to work QtCore.QSettings().setValue(
settings = QtCore.QSettings(u'OpenLP', u'OpenLP')
settings.setValue(
u'general/language', QtCore.QVariant(language)) u'general/language', QtCore.QVariant(language))
log.info(u'Language file: \'%s\' written to conf file' % language) log.info(u'Language file: \'%s\' written to conf file' % language)
if message: if message: