openlp-core team mailing list archive
-
openlp-core team
-
Mailing list archive
-
Message #13435
[Merge] lp:~raoul-snyman/openlp/bug-900387 into lp:openlp
Raoul Snyman has proposed merging lp:~raoul-snyman/openlp/bug-900387 into lp:openlp.
Requested reviews:
OpenLP Core (openlp-core)
Related bugs:
Bug #900387 in OpenLP: "User defined option is lost after the media rewrite"
https://bugs.launchpad.net/openlp/+bug/900387
For more details, see:
https://code.launchpad.net/~raoul-snyman/openlp/bug-900387/+merge/85961
Fix bug #900387 where a user's old "use phonon" setting was lost in the media rewrite. Now it is converted to an active Phonon media player which is first in the list.
--
https://code.launchpad.net/~raoul-snyman/openlp/bug-900387/+merge/85961
Your team OpenLP Core is requested to review the proposed merge of lp:~raoul-snyman/openlp/bug-900387 into lp:openlp.
=== modified file 'openlp/plugins/media/lib/mediaitem.py'
--- openlp/plugins/media/lib/mediaitem.py 2011-12-02 21:13:05 +0000
+++ openlp/plugins/media/lib/mediaitem.py 2011-12-15 21:12:25 +0000
@@ -54,7 +54,7 @@
self.iconPath = u'images/image'
self.background = False
self.previewFunction = CLAPPERBOARD
- self.Automatic = u''
+ self.automatic = u''
MediaManagerItem.__init__(self, parent, plugin, icon)
self.singleServiceItem = False
self.hasSearch = True
@@ -101,7 +101,7 @@
self.replaceAction.setToolTip(UiStrings().ReplaceLiveBG)
self.resetAction.setText(UiStrings().ResetBG)
self.resetAction.setToolTip(UiStrings().ResetLiveBG)
- self.Automatic = translate('MediaPlugin.MediaItem',
+ self.automatic = translate('MediaPlugin.MediaItem',
'Automatic')
self.displayTypeLabel.setText(
translate('MediaPlugin.MediaItem', 'Use Player:'))
@@ -253,7 +253,7 @@
# load the drop down selection
self.displayTypeComboBox.addItem(title)
if self.displayTypeComboBox.count() > 1:
- self.displayTypeComboBox.insertItem(0, self.Automatic)
+ self.displayTypeComboBox.insertItem(0, self.automatic)
self.displayTypeComboBox.setCurrentIndex(0)
if QtCore.QSettings().value(self.settingsSection + u'/override player',
QtCore.QVariant(QtCore.Qt.Unchecked)) == QtCore.Qt.Checked:
=== modified file 'openlp/plugins/media/lib/mediatab.py'
--- openlp/plugins/media/lib/mediatab.py 2011-12-02 21:13:05 +0000
+++ openlp/plugins/media/lib/mediatab.py 2011-12-15 21:12:25 +0000
@@ -35,7 +35,7 @@
MediaTab is the Media settings tab in the settings dialog.
"""
def __init__(self, parent, title, visible_title, media_players, icon_path):
- self.media_players = media_players
+ self.mediaPlayers = media_players
SettingsTab.__init__(self, parent, title, visible_title, icon_path)
def setupUi(self):
@@ -45,13 +45,13 @@
self.mediaPlayerGroupBox.setObjectName(u'mediaPlayerGroupBox')
self.mediaPlayerLayout = QtGui.QVBoxLayout(self.mediaPlayerGroupBox)
self.mediaPlayerLayout.setObjectName(u'mediaPlayerLayout')
- self.PlayerCheckBoxes = {}
- for key in self.media_players:
- player = self.media_players[key]
+ self.playerCheckBoxes = {}
+ for key, player in self.mediaPlayers.iteritems():
+ player = self.mediaPlayers[key]
checkbox = QtGui.QCheckBox(self.mediaPlayerGroupBox)
checkbox.setEnabled(player.available)
checkbox.setObjectName(player.name + u'CheckBox')
- self.PlayerCheckBoxes[player.name] = checkbox
+ self.playerCheckBoxes[player.name] = checkbox
self.mediaPlayerLayout.addWidget(checkbox)
self.leftLayout.addWidget(self.mediaPlayerGroupBox)
self.playerOrderGroupBox = QtGui.QGroupBox(self.leftColumn)
@@ -88,19 +88,19 @@
self.orderingButtonLayout.addWidget(self.orderingUpButton)
self.playerOrderLayout.addWidget(self.orderingButtonsWidget)
self.leftLayout.addWidget(self.playerOrderGroupBox)
- self.AdvancedGroupBox = QtGui.QGroupBox(self.leftColumn)
- self.AdvancedGroupBox.setObjectName(u'AdvancedGroupBox')
- self.AdvancedLayout = QtGui.QVBoxLayout(self.AdvancedGroupBox)
- self.AdvancedLayout.setObjectName(u'AdvancedLayout')
- self.OverridePlayerCheckBox = QtGui.QCheckBox(self.AdvancedGroupBox)
- self.OverridePlayerCheckBox.setObjectName(u'OverridePlayerCheckBox')
- self.AdvancedLayout.addWidget(self.OverridePlayerCheckBox)
- self.leftLayout.addWidget(self.AdvancedGroupBox)
+ self.advancedGroupBox = QtGui.QGroupBox(self.leftColumn)
+ self.advancedGroupBox.setObjectName(u'advancedGroupBox')
+ self.advancedLayout = QtGui.QVBoxLayout(self.advancedGroupBox)
+ self.advancedLayout.setObjectName(u'advancedLayout')
+ self.overridePlayerCheckBox = QtGui.QCheckBox(self.advancedGroupBox)
+ self.overridePlayerCheckBox.setObjectName(u'overridePlayerCheckBox')
+ self.advancedLayout.addWidget(self.overridePlayerCheckBox)
+ self.leftLayout.addWidget(self.advancedGroupBox)
self.leftLayout.addStretch()
self.rightLayout.addStretch()
- for key in self.media_players:
- player = self.media_players[key]
- checkbox = self.PlayerCheckBoxes[player.name]
+ for key in self.mediaPlayers:
+ player = self.mediaPlayers[key]
+ checkbox = self.playerCheckBoxes[player.name]
QtCore.QObject.connect(checkbox,
QtCore.SIGNAL(u'stateChanged(int)'),
self.onPlayerCheckBoxChanged)
@@ -112,9 +112,9 @@
def retranslateUi(self):
self.mediaPlayerGroupBox.setTitle(
translate('MediaPlugin.MediaTab', 'Available Media Players'))
- for key in self.media_players:
- player = self.media_players[key]
- checkbox = self.PlayerCheckBoxes[player.name]
+ for key in self.mediaPlayers:
+ player = self.mediaPlayers[key]
+ checkbox = self.playerCheckBoxes[player.name]
if player.available:
checkbox.setText(player.name)
else:
@@ -127,8 +127,8 @@
translate('MediaPlugin.MediaTab', 'Down'))
self.orderingUpButton.setText(
translate('MediaPlugin.MediaTab', 'Up'))
- self.AdvancedGroupBox.setTitle(UiStrings().Advanced)
- self.OverridePlayerCheckBox.setText(
+ self.advancedGroupBox.setTitle(UiStrings().Advanced)
+ self.overridePlayerCheckBox.setText(
translate('MediaPlugin.MediaTab',
'Allow media player to be overriden'))
@@ -144,12 +144,12 @@
def updatePlayerList(self):
self.playerOrderlistWidget.clear()
for player in self.usedPlayers:
- if player in self.PlayerCheckBoxes.keys():
+ if player in self.playerCheckBoxes.keys():
if len(self.usedPlayers) == 1:
# at least one media player have to stay active
- self.PlayerCheckBoxes[u'%s' % player].setEnabled(False)
+ self.playerCheckBoxes[u'%s' % player].setEnabled(False)
else:
- self.PlayerCheckBoxes[u'%s' % player].setEnabled(True)
+ self.playerCheckBoxes[u'%s' % player].setEnabled(True)
self.playerOrderlistWidget.addItem(player)
def onOrderingUpButtonPressed(self):
@@ -172,34 +172,34 @@
self.usedPlayers = QtCore.QSettings().value(
self.settingsSection + u'/players',
QtCore.QVariant(u'webkit')).toString().split(u',')
- for key in self.media_players:
- player = self.media_players[key]
- checkbox = self.PlayerCheckBoxes[player.name]
+ for key in self.mediaPlayers:
+ player = self.mediaPlayers[key]
+ checkbox = self.playerCheckBoxes[player.name]
if player.available and player.name in self.usedPlayers:
checkbox.setChecked(True)
self.updatePlayerList()
- self.OverridePlayerCheckBox.setChecked(QtCore.QSettings().value(
+ self.overridePlayerCheckBox.setChecked(QtCore.QSettings().value(
self.settingsSection + u'/override player',
QtCore.QVariant(QtCore.Qt.Unchecked)).toInt()[0])
def save(self):
override_changed = False
player_string_changed = False
- oldPlayerString = QtCore.QSettings().value(
+ old_players = QtCore.QSettings().value(
self.settingsSection + u'/players',
QtCore.QVariant(u'webkit')).toString()
- newPlayerString = self.usedPlayers.join(u',')
- if oldPlayerString != newPlayerString:
+ new_players = self.usedPlayers.join(u',')
+ if old_players != new_players:
# clean old Media stuff
QtCore.QSettings().setValue(self.settingsSection + u'/players',
- QtCore.QVariant(newPlayerString))
+ QtCore.QVariant(new_players))
player_string_changed = True
override_changed = True
setting_key = self.settingsSection + u'/override player'
if QtCore.QSettings().value(setting_key) != \
- self.OverridePlayerCheckBox.checkState():
+ self.overridePlayerCheckBox.checkState():
QtCore.QSettings().setValue(setting_key,
- QtCore.QVariant(self.OverridePlayerCheckBox.checkState()))
+ QtCore.QVariant(self.overridePlayerCheckBox.checkState()))
override_changed = True
if override_changed:
Receiver.send_message(u'mediaitem_media_rebuild')
=== modified file 'openlp/plugins/media/mediaplugin.py'
--- openlp/plugins/media/mediaplugin.py 2011-12-08 17:55:12 +0000
+++ openlp/plugins/media/mediaplugin.py 2011-12-15 21:12:25 +0000
@@ -27,6 +27,8 @@
import logging
+from PyQt4 import QtCore
+
from openlp.core.lib import Plugin, StringContent, build_icon, translate
from openlp.plugins.media.lib import MediaMediaItem, MediaTab
@@ -117,3 +119,29 @@
Add html code to htmlbuilder
"""
return self.mediaController.get_media_display_html()
+
+ def appStartup(self):
+ """
+ Do a couple of things when the app starts up. In this particular case
+ we want to check if we have the old "Use Phonon" setting, and convert
+ it to "enable Phonon" and "make it the first one in the list".
+ """
+ settings = QtCore.QSettings()
+ settings.beginGroup(self.settingsSection)
+ if settings.contains(u'use phonon'):
+ log.info(u'Found old Phonon setting')
+ players = self.mediaController.mediaPlayers.keys()
+ has_phonon = u'phonon' in players
+ if settings.value(u'use phonon').toBool() and has_phonon:
+ log.debug(u'Converting old setting to new setting')
+ new_players = []
+ if players:
+ new_players = [player for player in players \
+ if player != u'phonon']
+ new_players.insert(0, u'phonon')
+ self.mediaController.mediaPlayers[u'phonon'].isActive = True
+ settings.setValue(u'players', \
+ QtCore.QVariant(u','.join(new_players)))
+ self.settings_tab.load()
+ settings.remove(u'use phonon')
+ settings.endGroup()
Follow ups