- fixed not closed file

- attempt to make FRW avoiding tracebacks when running more than once
- clean ups
This commit is contained in:
Andreas Preikschat 2011-05-04 09:29:16 +02:00
parent 7a84e6e263
commit 307ef744dd
7 changed files with 21 additions and 19 deletions

View File

@ -87,8 +87,7 @@ class BaseModel(object):
Creates an instance of a class and populates it, returning the instance Creates an instance of a class and populates it, returning the instance
""" """
instance = cls() instance = cls()
for key in kwargs: [instance.__setattr__(key, kwargs[key]) for key in kwargs]
instance.__setattr__(key, kwargs[key])
return instance return instance

View File

@ -74,10 +74,10 @@ class SearchEdit(QtGui.QLineEdit):
if hasattr(self, u'menuButton'): if hasattr(self, u'menuButton'):
leftPadding = self.menuButton.width() leftPadding = self.menuButton.width()
self.setStyleSheet( self.setStyleSheet(
u'QLineEdit { padding-left: %spx; padding-right: %spx; } ' % \ u'QLineEdit { padding-left: %spx; padding-right: %spx; } ' %
(leftPadding, rightPadding)) (leftPadding, rightPadding))
else: else:
self.setStyleSheet(u'QLineEdit { padding-right: %spx; } ' % \ self.setStyleSheet(u'QLineEdit { padding-right: %spx; } ' %
rightPadding) rightPadding)
msz = self.minimumSizeHint() msz = self.minimumSizeHint()
self.setMinimumSize( self.setMinimumSize(

View File

@ -269,11 +269,9 @@ class ServiceItem(object):
} }
service_data = [] service_data = []
if self.service_item_type == ServiceItemType.Text: if self.service_item_type == ServiceItemType.Text:
for slide in self._raw_frames: service_data = [slide for slide in self._raw_frames]
service_data.append(slide)
elif self.service_item_type == ServiceItemType.Image: elif self.service_item_type == ServiceItemType.Image:
for slide in self._raw_frames: service_data = [slide[u'title'] for slide in self._raw_frames]
service_data.append(slide[u'title'])
elif self.service_item_type == ServiceItemType.Command: elif self.service_item_type == ServiceItemType.Command:
for slide in self._raw_frames: for slide in self._raw_frames:
service_data.append( service_data.append(

View File

@ -140,8 +140,7 @@ class OpenLPToolbar(QtGui.QToolBar):
``widgets`` ``widgets``
The list of names of widgets to be hidden. The list of names of widgets to be hidden.
""" """
for widget in widgets: [self.actions[widget].setVisible(False) for widget in widgets]
self.actions[widget].setVisible(False)
def makeWidgetsVisible(self, widgets): def makeWidgetsVisible(self, widgets):
""" """
@ -150,8 +149,7 @@ class OpenLPToolbar(QtGui.QToolBar):
``widgets`` ``widgets``
The list of names of widgets to be shown. The list of names of widgets to be shown.
""" """
for widget in widgets: [self.actions[widget].setVisible(True) for widget in widgets]
self.actions[widget].setVisible(True)
def addPushButton(self, image_file=None, text=u''): def addPushButton(self, image_file=None, text=u''):
""" """

View File

@ -130,9 +130,12 @@ class ExceptionForm(QtGui.QDialog, Ui_ExceptionDialog):
file.close() file.close()
file = open(filename, u'wb') file = open(filename, u'wb')
file.write(report.encode(u'utf-8')) file.write(report.encode(u'utf-8'))
file.close() finally:
file.close()
except IOError: except IOError:
log.exception(u'Failed to write crash report') log.exception(u'Failed to write crash report')
finally:
file.close()
def onSendReportButtonPressed(self): def onSendReportButtonPressed(self):
""" """
@ -185,4 +188,5 @@ class ExceptionForm(QtGui.QDialog, Ui_ExceptionDialog):
def __buttonState(self, state): def __buttonState(self, state):
self.saveReportButton.setEnabled(state) self.saveReportButton.setEnabled(state)
self.sendReportButton.setEnabled(state) self.sendReportButton.setEnabled(state)

View File

@ -38,7 +38,7 @@ from openlp.core.ui import AboutForm, SettingsForm, ServiceManager, \
ThemeManager, SlideController, PluginForm, MediaDockManager, \ ThemeManager, SlideController, PluginForm, MediaDockManager, \
ShortcutListForm, DisplayTagForm ShortcutListForm, DisplayTagForm
from openlp.core.utils import AppLocation, add_actions, LanguageManager, \ from openlp.core.utils import AppLocation, add_actions, LanguageManager, \
get_application_version get_application_version, delete_file
from openlp.core.utils.actions import ActionList, CategoryOrder from openlp.core.utils.actions import ActionList, CategoryOrder
log = logging.getLogger(__name__) log = logging.getLogger(__name__)
@ -657,9 +657,10 @@ class MainWindow(QtGui.QMainWindow, Ui_MainWindow):
plugin.firstTime() plugin.firstTime()
Receiver.send_message(u'openlp_process_events') Receiver.send_message(u'openlp_process_events')
temp_dir = os.path.join(unicode(gettempdir()), u'openlp') temp_dir = os.path.join(unicode(gettempdir()), u'openlp')
for filename in os.listdir(temp_dir): if os.path.exists(temp_dir):
os.remove(os.path.join(temp_dir, filename)) for filename in os.listdir(temp_dir):
os.removedirs(temp_dir) delete_file(os.path.join(temp_dir, filename))
os.removedirs(temp_dir)
def blankCheck(self): def blankCheck(self):
""" """

View File

@ -229,12 +229,14 @@ class SongsPlugin(Plugin):
If the first time wizard has run, this function is run to import all the If the first time wizard has run, this function is run to import all the
new songs into the database. new songs into the database.
""" """
self.onToolsReindexItemTriggered()
db_dir = unicode(os.path.join(gettempdir(), u'openlp')) db_dir = unicode(os.path.join(gettempdir(), u'openlp'))
if not os.path.exists(db_dir):
return
song_dbs = [] song_dbs = []
for sfile in os.listdir(db_dir): for sfile in os.listdir(db_dir):
if sfile.startswith(u'songs_') and sfile.endswith(u'.sqlite'): if sfile.startswith(u'songs_') and sfile.endswith(u'.sqlite'):
song_dbs.append(os.path.join(db_dir, sfile)) song_dbs.append(os.path.join(db_dir, sfile))
self.onToolsReindexItemTriggered()
if len(song_dbs) == 0: if len(song_dbs) == 0:
return return
progress = QtGui.QProgressDialog(self.formparent) progress = QtGui.QProgressDialog(self.formparent)