Hide theme delete button for default themes

bzr-revno: 1209
This commit is contained in:
Tim Bentley 2011-01-12 18:27:12 +00:00
commit 47f240a49e
3 changed files with 20 additions and 5 deletions

View File

@ -266,7 +266,7 @@ class MediaManagerItem(QtGui.QWidget):
"""
Creates the main widget for listing items the media item is tracking
"""
#Add the List widget
# Add the List widget
self.listView = self.ListViewWithDnD_class(self)
self.listView.uniformItemSizes = True
self.listView.setSpacing(1)
@ -275,9 +275,9 @@ class MediaManagerItem(QtGui.QWidget):
self.listView.setAlternatingRowColors(True)
self.listView.setDragEnabled(True)
self.listView.setObjectName(u'%sListView' % self.plugin.name)
#Add to pageLayout
# Add to pageLayout
self.pageLayout.addWidget(self.listView)
#define and add the context menu
# define and add the context menu
self.listView.setContextMenuPolicy(QtCore.Qt.ActionsContextMenu)
name_string = self.plugin.getString(StringContent.Name)
if self.hasEditIcon:

View File

@ -69,7 +69,7 @@ class ThemeManager(QtGui.QWidget):
u':/themes/theme_edit.png',
translate('OpenLP.ThemeManager', 'Edit a theme.'),
self.onEditTheme)
self.toolbar.addToolbarButton(
self.deleteToolbarAction = self.toolbar.addToolbarButton(
translate('OpenLP.ThemeManager', 'Delete Theme'),
u':/general/general_delete.png',
translate('OpenLP.ThemeManager', 'Delete a theme.'),
@ -124,6 +124,9 @@ class ThemeManager(QtGui.QWidget):
QtCore.QObject.connect(self.themeListWidget,
QtCore.SIGNAL(u'doubleClicked(QModelIndex)'),
self.changeGlobalFromScreen)
QtCore.QObject.connect(self.themeListWidget,
QtCore.SIGNAL(u'itemClicked(QListWidgetItem *)'),
self.checkListState)
QtCore.QObject.connect(Receiver.get_receiver(),
QtCore.SIGNAL(u'theme_update_global'), self.changeGlobalFromTab)
QtCore.QObject.connect(Receiver.get_receiver(),
@ -147,6 +150,18 @@ class ThemeManager(QtGui.QWidget):
self.settingsSection + u'/global theme',
QtCore.QVariant(u'')).toString())
def checkListState(self, item):
"""
If Default theme selected remove delete button.
"""
realThemeName = unicode(item.data(QtCore.Qt.UserRole).toString())
themeName = unicode(item.text())
# If default theme restrict actions
if realThemeName == themeName:
self.deleteToolbarAction.setVisible(True)
else:
self.deleteToolbarAction.setVisible(False)
def contextMenu(self, point):
"""
Build the Right Click Context menu and set state depending on

View File

@ -207,7 +207,7 @@ def check_latest_version(current_version):
The current version of OpenLP.
"""
version_string = current_version[u'full']
#set to prod in the distribution config file.
# set to prod in the distribution config file.
settings = QtCore.QSettings()
settings.beginGroup(u'general')
last_test = unicode(settings.value(u'last version test',