fixed #1046508 (OSError on changing theme background image)

bzr-revno: 2052
Fixes: https://launchpad.net/bugs/1046508
This commit is contained in:
Andreas Preikschat 2012-09-06 09:42:29 +02:00
commit 2196539d69
1 changed files with 4 additions and 3 deletions

View File

@ -281,9 +281,9 @@ class ThemeManager(QtGui.QWidget):
for plugin in self.mainwindow.pluginManager.plugins:
if plugin.usesTheme(old_theme_name):
plugin.renameTheme(old_theme_name, new_theme_name)
self.loadThemes()
self.mainwindow.renderer.update_theme(
new_theme_name, old_theme_name)
self.loadThemes()
def onCopyTheme(self):
"""
@ -314,6 +314,7 @@ class ThemeManager(QtGui.QWidget):
theme_data.theme_name = new_theme_name
theme_data.extend_image_filename(self.path)
self.saveTheme(theme_data, save_from, save_to)
self.loadThemes()
def onEditTheme(self):
"""
@ -331,6 +332,7 @@ class ThemeManager(QtGui.QWidget):
self.themeForm.exec_(True)
self.oldBackgroundImage = None
self.mainwindow.renderer.update_theme(theme.theme_name)
self.loadThemes()
def onDeleteTheme(self):
"""
@ -345,10 +347,10 @@ class ThemeManager(QtGui.QWidget):
row = self.themeListWidget.row(item)
self.themeListWidget.takeItem(row)
self.deleteTheme(theme)
self.mainwindow.renderer.update_theme(theme, only_delete=True)
# As we do not reload the themes, push out the change. Reload the
# list as the internal lists and events need to be triggered.
self._pushThemes()
self.mainwindow.renderer.update_theme(theme, only_delete=True)
def deleteTheme(self, theme):
"""
@ -672,7 +674,6 @@ class ThemeManager(QtGui.QWidget):
theme.background_filename,
ImageSource.Theme, QtGui.QColor(theme.background_border_color))
self.mainwindow.imageManager.processUpdates()
self.loadThemes()
def _writeTheme(self, theme, image_from, image_to):
"""