forked from openlp/openlp
- removed dangling list
- added debug message - do not show an error message when the directory does not exist, instead create one - do not override the file class - clean ups bzr-revno: 1605
This commit is contained in:
commit
847d69cd2f
@ -106,7 +106,7 @@ class ExceptionForm(QtGui.QDialog, Ui_ExceptionDialog):
|
|||||||
"""
|
"""
|
||||||
Saving exception log and system informations to a file.
|
Saving exception log and system informations to a file.
|
||||||
"""
|
"""
|
||||||
report = unicode(translate('OpenLP.ExceptionForm',
|
report_text = unicode(translate('OpenLP.ExceptionForm',
|
||||||
'**OpenLP Bug Report**\n'
|
'**OpenLP Bug Report**\n'
|
||||||
'Version: %s\n\n'
|
'Version: %s\n\n'
|
||||||
'--- Details of the Exception. ---\n\n%s\n\n '
|
'--- Details of the Exception. ---\n\n%s\n\n '
|
||||||
@ -122,21 +122,21 @@ class ExceptionForm(QtGui.QDialog, Ui_ExceptionDialog):
|
|||||||
filename = unicode(QtCore.QDir.toNativeSeparators(filename))
|
filename = unicode(QtCore.QDir.toNativeSeparators(filename))
|
||||||
SettingsManager.set_last_dir(self.settingsSection, os.path.dirname(
|
SettingsManager.set_last_dir(self.settingsSection, os.path.dirname(
|
||||||
filename))
|
filename))
|
||||||
report = report % self._createReport()
|
report_text = report_text % self._createReport()
|
||||||
try:
|
try:
|
||||||
file = open(filename, u'w')
|
report_file = open(filename, u'w')
|
||||||
try:
|
try:
|
||||||
file.write(report)
|
report_file.write(report_text)
|
||||||
except UnicodeError:
|
except UnicodeError:
|
||||||
file.close()
|
report_file.close()
|
||||||
file = open(filename, u'wb')
|
report_file = open(filename, u'wb')
|
||||||
file.write(report.encode(u'utf-8'))
|
report_file.write(report_text.encode(u'utf-8'))
|
||||||
finally:
|
finally:
|
||||||
file.close()
|
report_file.close()
|
||||||
except IOError:
|
except IOError:
|
||||||
log.exception(u'Failed to write crash report')
|
log.exception(u'Failed to write crash report')
|
||||||
finally:
|
finally:
|
||||||
file.close()
|
report_file.close()
|
||||||
|
|
||||||
def onSendReportButtonPressed(self):
|
def onSendReportButtonPressed(self):
|
||||||
"""
|
"""
|
||||||
|
@ -79,7 +79,7 @@ class ScreenList(object):
|
|||||||
``number``
|
``number``
|
||||||
The number of the screen, which size has changed.
|
The number of the screen, which size has changed.
|
||||||
"""
|
"""
|
||||||
log.info(u'screenResolutionChanged %d' % number)
|
log.info(u'screen_resolution_changed %d' % number)
|
||||||
for screen in self.screen_list:
|
for screen in self.screen_list:
|
||||||
if number == screen[u'number']:
|
if number == screen[u'number']:
|
||||||
newScreen = {
|
newScreen = {
|
||||||
@ -104,6 +104,9 @@ class ScreenList(object):
|
|||||||
``changed_screen``
|
``changed_screen``
|
||||||
The screen's number which has been (un)plugged.
|
The screen's number which has been (un)plugged.
|
||||||
"""
|
"""
|
||||||
|
# Do not log at start up.
|
||||||
|
if changed_screen != -1:
|
||||||
|
log.info(u'screen_count_changed %d' % number)
|
||||||
# Remove unplugged screens.
|
# Remove unplugged screens.
|
||||||
for screen in copy.deepcopy(self.screen_list):
|
for screen in copy.deepcopy(self.screen_list):
|
||||||
if screen[u'number'] == self.desktop.numScreens():
|
if screen[u'number'] == self.desktop.numScreens():
|
||||||
@ -116,8 +119,7 @@ class ScreenList(object):
|
|||||||
u'size': self.desktop.screenGeometry(number),
|
u'size': self.desktop.screenGeometry(number),
|
||||||
u'primary': (self.desktop.primaryScreen() == number)
|
u'primary': (self.desktop.primaryScreen() == number)
|
||||||
})
|
})
|
||||||
# We do not want to send this message, when the method is called the
|
# We do not want to send this message at start up.
|
||||||
# first time.
|
|
||||||
if changed_screen != -1:
|
if changed_screen != -1:
|
||||||
# Reload setting tabs to apply possible changes.
|
# Reload setting tabs to apply possible changes.
|
||||||
Receiver.send_message(u'config_screen_changed')
|
Receiver.send_message(u'config_screen_changed')
|
||||||
|
@ -33,7 +33,8 @@ import shutil
|
|||||||
|
|
||||||
from PyQt4 import QtCore, QtGui
|
from PyQt4 import QtCore, QtGui
|
||||||
|
|
||||||
from openlp.core.lib import Receiver, SettingsManager, translate
|
from openlp.core.lib import Receiver, SettingsManager, translate, \
|
||||||
|
check_directory_exists
|
||||||
from openlp.core.lib.db import delete_database
|
from openlp.core.lib.db import delete_database
|
||||||
from openlp.core.lib.ui import UiStrings, critical_error_message_box
|
from openlp.core.lib.ui import UiStrings, critical_error_message_box
|
||||||
from openlp.core.ui.wizard import OpenLPWizard, WizardStrings
|
from openlp.core.ui.wizard import OpenLPWizard, WizardStrings
|
||||||
@ -154,17 +155,19 @@ class BibleUpgradeForm(OpenLPWizard):
|
|||||||
self.backupDirectoryEdit.setEnabled(not checked)
|
self.backupDirectoryEdit.setEnabled(not checked)
|
||||||
self.backupBrowseButton.setEnabled(not checked)
|
self.backupBrowseButton.setEnabled(not checked)
|
||||||
|
|
||||||
def backupOldBibles(self, backupdirectory):
|
def backupOldBibles(self, backup_directory):
|
||||||
"""
|
"""
|
||||||
Backup old bible databases in a given folder.
|
Backup old bible databases in a given folder.
|
||||||
"""
|
"""
|
||||||
|
check_directory_exists(backup_directory)
|
||||||
|
success = True
|
||||||
for filename in self.files:
|
for filename in self.files:
|
||||||
try:
|
try:
|
||||||
shutil.copy(os.path.join(self.path, filename[0]),
|
shutil.copy(os.path.join(self.path, filename[0]),
|
||||||
backupdirectory)
|
backup_directory)
|
||||||
except:
|
except:
|
||||||
return False
|
success = False
|
||||||
return True
|
return success
|
||||||
|
|
||||||
def customInit(self):
|
def customInit(self):
|
||||||
"""
|
"""
|
||||||
@ -318,7 +321,7 @@ class BibleUpgradeForm(OpenLPWizard):
|
|||||||
QtGui.QFormLayout.FieldRole, self.versionNameEdit[number])
|
QtGui.QFormLayout.FieldRole, self.versionNameEdit[number])
|
||||||
self.versionNameEdit[number].setText(bible.get_name())
|
self.versionNameEdit[number].setText(bible.get_name())
|
||||||
self.formLayout.addWidget(self.formWidget[number])
|
self.formLayout.addWidget(self.formWidget[number])
|
||||||
#Set up the Signal for the checkbox
|
# Set up the Signal for the checkbox.
|
||||||
QtCore.QObject.connect(self.checkBox[number],
|
QtCore.QObject.connect(self.checkBox[number],
|
||||||
QtCore.SIGNAL(u'stateChanged(int)'),
|
QtCore.SIGNAL(u'stateChanged(int)'),
|
||||||
self.onCheckBoxIndexChanged)
|
self.onCheckBoxIndexChanged)
|
||||||
@ -414,29 +417,22 @@ class BibleUpgradeForm(OpenLPWizard):
|
|||||||
return True
|
return True
|
||||||
elif self.currentPage() == self.backupPage:
|
elif self.currentPage() == self.backupPage:
|
||||||
if not self.noBackupCheckBox.checkState() == QtCore.Qt.Checked:
|
if not self.noBackupCheckBox.checkState() == QtCore.Qt.Checked:
|
||||||
if not unicode(self.backupDirectoryEdit.text()):
|
backup_path = unicode(self.backupDirectoryEdit.text())
|
||||||
|
if not backup_path:
|
||||||
critical_error_message_box(UiStrings().EmptyField,
|
critical_error_message_box(UiStrings().EmptyField,
|
||||||
translate('BiblesPlugin.UpgradeWizardForm',
|
translate('BiblesPlugin.UpgradeWizardForm',
|
||||||
'You need to specify a Backup Directory for your '
|
'You need to specify a Backup Directory for your '
|
||||||
'Bibles.'))
|
'Bibles.'))
|
||||||
self.backupDirectoryEdit.setFocus()
|
self.backupDirectoryEdit.setFocus()
|
||||||
return False
|
return False
|
||||||
elif not os.path.exists(unicode(
|
|
||||||
self.backupDirectoryEdit.text())):
|
|
||||||
critical_error_message_box(UiStrings().Error,
|
|
||||||
translate('BiblesPlugin.UpgradeWizardForm',
|
|
||||||
'The given path is not an existing directory.'))
|
|
||||||
self.backupDirectoryEdit.setFocus()
|
|
||||||
return False
|
|
||||||
else:
|
else:
|
||||||
if not self.backupOldBibles(unicode(
|
if not self.backupOldBibles(backup_path):
|
||||||
self.backupDirectoryEdit.text())):
|
|
||||||
critical_error_message_box(UiStrings().Error,
|
critical_error_message_box(UiStrings().Error,
|
||||||
translate('BiblesPlugin.UpgradeWizardForm',
|
translate('BiblesPlugin.UpgradeWizardForm',
|
||||||
'The backup was not successfull.\nTo backup your '
|
'The backup was not successful.\nTo backup your '
|
||||||
'Bibles you need the permission to write in the given '
|
'Bibles you need permission to write to the given '
|
||||||
'directory. If you have a permissions to write and '
|
'directory. If you have write permissions and this '
|
||||||
'this error still occurs, please report a bug.'))
|
'error still occurs, please report a bug.'))
|
||||||
return False
|
return False
|
||||||
return True
|
return True
|
||||||
elif self.currentPage() == self.selectPage:
|
elif self.currentPage() == self.selectPage:
|
||||||
|
@ -70,15 +70,15 @@ class BookNameForm(QDialog, Ui_BookNameDialog):
|
|||||||
self.onCheckBoxIndexChanged)
|
self.onCheckBoxIndexChanged)
|
||||||
|
|
||||||
def onCheckBoxIndexChanged(self, index):
|
def onCheckBoxIndexChanged(self, index):
|
||||||
'''
|
"""
|
||||||
Reload Combobox if CheckBox state has changed
|
Reload Combobox if CheckBox state has changed
|
||||||
'''
|
"""
|
||||||
self.reloadComboBox()
|
self.reloadComboBox()
|
||||||
|
|
||||||
def reloadComboBox(self):
|
def reloadComboBox(self):
|
||||||
'''
|
"""
|
||||||
Reload the Combobox items
|
Reload the Combobox items
|
||||||
'''
|
"""
|
||||||
self.correspondingComboBox.clear()
|
self.correspondingComboBox.clear()
|
||||||
items = BiblesResourcesDB.get_books()
|
items = BiblesResourcesDB.get_books()
|
||||||
for item in items:
|
for item in items:
|
||||||
|
@ -845,7 +845,8 @@ class BibleMediaItem(MediaManagerItem):
|
|||||||
service_item.theme = None
|
service_item.theme = None
|
||||||
else:
|
else:
|
||||||
service_item.theme = self.settings.bible_theme
|
service_item.theme = self.settings.bible_theme
|
||||||
[service_item.add_from_text(slide[:30], slide) for slide in raw_slides]
|
for slide in raw_slides:
|
||||||
|
service_item.add_from_text(slide[:30], slide)
|
||||||
return True
|
return True
|
||||||
|
|
||||||
def formatTitle(self, start_bitem, old_bitem):
|
def formatTitle(self, start_bitem, old_bitem):
|
||||||
|
@ -772,9 +772,9 @@ class SongImportForm(OpenLPWizard):
|
|||||||
SettingsManager.get_last_dir(self.plugin.settingsSection, 1))
|
SettingsManager.get_last_dir(self.plugin.settingsSection, 1))
|
||||||
if not filename:
|
if not filename:
|
||||||
return
|
return
|
||||||
file = codecs.open(filename, u'w', u'utf-8')
|
report_file = codecs.open(filename, u'w', u'utf-8')
|
||||||
file.write(self.errorReportTextEdit.toPlainText())
|
report_file.write(self.errorReportTextEdit.toPlainText())
|
||||||
file.close()
|
report_file.close()
|
||||||
|
|
||||||
def addFileSelectItem(self, prefix, obj_prefix=None, can_disable=False,
|
def addFileSelectItem(self, prefix, obj_prefix=None, can_disable=False,
|
||||||
single_select=False):
|
single_select=False):
|
||||||
|
@ -61,8 +61,8 @@ class EasiSlidesImport(SongImport):
|
|||||||
"""
|
"""
|
||||||
log.info(u'Importing EasiSlides XML file %s', self.import_source)
|
log.info(u'Importing EasiSlides XML file %s', self.import_source)
|
||||||
parser = etree.XMLParser(remove_blank_text=True)
|
parser = etree.XMLParser(remove_blank_text=True)
|
||||||
file = etree.parse(self.import_source, parser)
|
parsed_file = etree.parse(self.import_source, parser)
|
||||||
xml = unicode(etree.tostring(file))
|
xml = unicode(etree.tostring(parsed_file))
|
||||||
song_xml = objectify.fromstring(xml)
|
song_xml = objectify.fromstring(xml)
|
||||||
self.import_wizard.progressBar.setMaximum(len(song_xml.Item))
|
self.import_wizard.progressBar.setMaximum(len(song_xml.Item))
|
||||||
for song in song_xml.Item:
|
for song in song_xml.Item:
|
||||||
|
@ -28,6 +28,7 @@
|
|||||||
The :mod:`importer` modules provides the general song import functionality.
|
The :mod:`importer` modules provides the general song import functionality.
|
||||||
"""
|
"""
|
||||||
import logging
|
import logging
|
||||||
|
|
||||||
from opensongimport import OpenSongImport
|
from opensongimport import OpenSongImport
|
||||||
from easislidesimport import EasiSlidesImport
|
from easislidesimport import EasiSlidesImport
|
||||||
from olpimport import OpenLPSongImport
|
from olpimport import OpenLPSongImport
|
||||||
|
Loading…
Reference in New Issue
Block a user