forked from openlp/openlp
finish Theme handling corrections
Set Global Theme back in settings tab
This commit is contained in:
parent
23b13ede2d
commit
26a1658724
@ -68,6 +68,10 @@ class ThemeManager(QtGui.QWidget):
|
|||||||
self.ThemeListWidget.setAlternatingRowColors(True)
|
self.ThemeListWidget.setAlternatingRowColors(True)
|
||||||
self.ThemeListWidget.setIconSize(QtCore.QSize(88,50))
|
self.ThemeListWidget.setIconSize(QtCore.QSize(88,50))
|
||||||
self.Layout.addWidget(self.ThemeListWidget)
|
self.Layout.addWidget(self.ThemeListWidget)
|
||||||
|
#Signals
|
||||||
|
QtCore.QObject.connect(self.ThemeListWidget,
|
||||||
|
QtCore.SIGNAL(u'doubleClicked(QModelIndex)'), self.changeGlobal)
|
||||||
|
#Variables
|
||||||
self.themelist = []
|
self.themelist = []
|
||||||
self.path = os.path.join(ConfigHelper.get_data_path(), u'themes')
|
self.path = os.path.join(ConfigHelper.get_data_path(), u'themes')
|
||||||
self.checkThemesExists(self.path)
|
self.checkThemesExists(self.path)
|
||||||
@ -77,6 +81,21 @@ class ThemeManager(QtGui.QWidget):
|
|||||||
self.servicePath = self.config.get_data_path()
|
self.servicePath = self.config.get_data_path()
|
||||||
self.global_theme = unicode(self.config.get_config(u'theme global theme', u''))
|
self.global_theme = unicode(self.config.get_config(u'theme global theme', u''))
|
||||||
|
|
||||||
|
def changeGlobal(self, index):
|
||||||
|
for count in range (0, self.ThemeListWidget.count()):
|
||||||
|
item = self.ThemeListWidget.item(count)
|
||||||
|
oldName = item.text()
|
||||||
|
#reset the old name
|
||||||
|
if oldName != unicode(item.data(QtCore.Qt.UserRole).toString()):
|
||||||
|
self.ThemeListWidget.item(count).setText(unicode(item.data(QtCore.Qt.UserRole).toString()))
|
||||||
|
#Set the new name
|
||||||
|
if count == index.row():
|
||||||
|
self.global_theme = unicode(self.ThemeListWidget.item(count).text())
|
||||||
|
name = (u'(%s):%s' % (translate(u'ThemeManager', u'default'), self.global_theme))
|
||||||
|
self.ThemeListWidget.item(count).setText(name)
|
||||||
|
self.config.set_config(u'theme global theme', self.global_theme)
|
||||||
|
self.push_themes()
|
||||||
|
|
||||||
def onAddTheme(self):
|
def onAddTheme(self):
|
||||||
self.amendThemeForm.loadTheme(None)
|
self.amendThemeForm.loadTheme(None)
|
||||||
self.amendThemeForm.exec_()
|
self.amendThemeForm.exec_()
|
||||||
@ -99,6 +118,7 @@ class ThemeManager(QtGui.QWidget):
|
|||||||
translate(u'ThemeManager', u'You are unable to delete the default theme!'),
|
translate(u'ThemeManager', u'You are unable to delete the default theme!'),
|
||||||
QtGui.QMessageBox.StandardButtons(QtGui.QMessageBox.Ok))
|
QtGui.QMessageBox.StandardButtons(QtGui.QMessageBox.Ok))
|
||||||
else:
|
else:
|
||||||
|
self.themelist.remove(theme)
|
||||||
th = theme + u'.png'
|
th = theme + u'.png'
|
||||||
row = self.ThemeListWidget.row(item)
|
row = self.ThemeListWidget.row(item)
|
||||||
self.ThemeListWidget.takeItem(row)
|
self.ThemeListWidget.takeItem(row)
|
||||||
@ -114,7 +134,7 @@ class ThemeManager(QtGui.QWidget):
|
|||||||
pass
|
pass
|
||||||
#As we do not reload the themes push out the change
|
#As we do not reload the themes push out the change
|
||||||
#Reaload the list as the internal lists and events need to be triggered
|
#Reaload the list as the internal lists and events need to be triggered
|
||||||
self.loadThemes()
|
self.push_themes()
|
||||||
|
|
||||||
def onExportTheme(self):
|
def onExportTheme(self):
|
||||||
pass
|
pass
|
||||||
@ -156,6 +176,9 @@ class ThemeManager(QtGui.QWidget):
|
|||||||
item_name.setData(QtCore.Qt.UserRole, QtCore.QVariant(textName))
|
item_name.setData(QtCore.Qt.UserRole, QtCore.QVariant(textName))
|
||||||
self.ThemeListWidget.addItem(item_name)
|
self.ThemeListWidget.addItem(item_name)
|
||||||
self.themelist.append(textName)
|
self.themelist.append(textName)
|
||||||
|
self.push_themes()
|
||||||
|
|
||||||
|
def push_themes(self):
|
||||||
self.parent.EventManager.post_event(Event(EventType.ThemeListChanged))
|
self.parent.EventManager.post_event(Event(EventType.ThemeListChanged))
|
||||||
self.parent.ServiceManagerContents.updateThemeList(self.getThemes())
|
self.parent.ServiceManagerContents.updateThemeList(self.getThemes())
|
||||||
self.parent.settingsForm.ThemesTab.updateThemeList(self.getThemes())
|
self.parent.settingsForm.ThemesTab.updateThemeList(self.getThemes())
|
||||||
|
@ -147,6 +147,8 @@ class ThemesTab(SettingsTab):
|
|||||||
"""
|
"""
|
||||||
Called from ThemeManager when the Themes have changed
|
Called from ThemeManager when the Themes have changed
|
||||||
"""
|
"""
|
||||||
|
#reload as may have been triggered by the ThemeManager
|
||||||
|
self.global_theme = self.config.get_config(u'theme global theme', u'')
|
||||||
self.DefaultComboBox.clear()
|
self.DefaultComboBox.clear()
|
||||||
for theme in theme_list:
|
for theme in theme_list:
|
||||||
self.DefaultComboBox.addItem(theme)
|
self.DefaultComboBox.addItem(theme)
|
||||||
|
Loading…
Reference in New Issue
Block a user