fixed 1204629 in 2.0 also made it more robust by checking that the user selected a valid image file using the open dialog

This commit is contained in:
Philip Ridout 2013-07-25 19:58:09 +01:00
parent 8b21731f72
commit a7130ce666
2 changed files with 18 additions and 9 deletions

View File

@ -78,6 +78,10 @@ class ThemeForm(QtGui.QWizard, Ui_ThemeWizard):
QtCore.SIGNAL(u'clicked()'), self.onGradientEndButtonClicked)
QtCore.QObject.connect(self.imageBrowseButton,
QtCore.SIGNAL(u'clicked()'), self.onImageBrowseButtonClicked)
QtCore.QObject.connect(self.imageFileEdit,
QtCore.SIGNAL(u'editingFinished()'), self.onImageFileEditEditingFinished)
QtCore.QObject.connect(self.mainColorButton,
QtCore.SIGNAL(u'clicked()'), self.onMainColorButtonClicked)
QtCore.QObject.connect(self.outlineColorButton,
@ -233,7 +237,7 @@ class ThemeForm(QtGui.QWizard, Ui_ThemeWizard):
background_image = BackgroundType.to_string(BackgroundType.Image)
if self.page(self.currentId()) == self.backgroundPage and \
self.theme.background_type == background_image and \
is_not_image_file(self.imageFileEdit.text()):
is_not_image_file(self.theme.background_filename):
QtGui.QMessageBox.critical(self,
translate('OpenLP.ThemeWizard', 'Background Image Empty'),
translate('OpenLP.ThemeWizard', 'You have not selected a '
@ -545,6 +549,12 @@ class ThemeForm(QtGui.QWizard, Ui_ThemeWizard):
self.theme.background_filename = unicode(filename)
self.setBackgroundPageValues()
def onImageFileEditEditingFinished(self):
"""
Background image path edited
"""
self.theme.background_filename = unicode(self.imageFileEdit.text())
def onMainColorButtonClicked(self):
self.theme.font_main_color = \
self._colorButton(self.theme.font_main_color)

View File

@ -371,9 +371,8 @@ def is_not_image_file(file_name):
``file_name``
File name to be checked.
"""
if file_name.isEmpty():
if not file_name:
return True
else:
formats = [unicode(fmt).lower()
for fmt in QtGui.QImageReader.supportedImageFormats()]
file_part, file_extension = os.path.splitext(unicode(file_name))