This commit is contained in:
Tim Bentley 2011-01-05 19:54:27 +00:00
commit a83da28437
5 changed files with 41 additions and 22 deletions

View File

@ -440,8 +440,10 @@ class ThemeForm(QtGui.QWizard, Ui_ThemeWizard):
"""
Background style Combo box has changed.
"""
self.theme.background_type = BackgroundType.to_string(index)
self.setBackgroundPageValues()
# do not allow updates when screen is building for the first time.
if self.updateThemeAllowed:
self.theme.background_type = BackgroundType.to_string(index)
self.setBackgroundPageValues()
def onGradientComboBoxCurrentIndexChanged(self, index):
"""

View File

@ -32,6 +32,7 @@ from PyQt4 import QtCore, QtGui
from openlp.core.lib import MediaManagerItem, BaseListWithDnD, build_icon, \
context_menu_action, ItemCapabilities, SettingsManager, translate, \
check_item_selected, Receiver, checkDirectoryExists
from openlp.core.utils import AppLocation, get_images_filter
log = logging.getLogger(__name__)
@ -207,6 +208,9 @@ class ImageMediaItem(MediaManagerItem):
self.parent.liveController.display.resetImage()
def onReplaceClick(self):
"""
Called to replace Live backgound with the video selected
"""
if check_item_selected(self.listView,
translate('ImagePlugin.MediaItem',
'You must select an image to replace the background with.')):
@ -217,11 +221,12 @@ class ImageMediaItem(MediaManagerItem):
(path, name) = os.path.split(filename)
self.parent.liveController.display.directImage(name, filename)
else:
QtGui.QMessageBox.critical(self,
translate('ImagePlugin.MediaItem', 'Live Background Could '
'Not Be Replaced'),
unicode(translate('ImagePlugin.MediaItem',
'The image %s no longer exists.')) % filename)
Receiver.send_message(u'openlp_error_message', {
u'title': translate('ImagePlugin.MediaItem',
'Live Background Error'),
u'message': unicode(translate('ImagePlugin.MediaItem',
'There was a problem replacing your background, '
'the image file %s no longer exists.')) % filename})
self.resetButton.setVisible(True)
def onPreviewClick(self):

View File

@ -31,7 +31,7 @@ from PyQt4 import QtCore, QtGui
from openlp.core.lib import MediaManagerItem, BaseListWithDnD, build_icon, \
ItemCapabilities, SettingsManager, translate, check_item_selected, \
context_menu_action
context_menu_action, Receiver
log = logging.getLogger(__name__)
@ -108,11 +108,20 @@ class MediaMediaItem(MediaManagerItem):
def onReplaceClick(self):
if check_item_selected(self.listView,
translate('ImagePlugin.MediaItem',
translate('MediaPlugin.MediaItem',
'You must select a media file to replace the background with.')):
item = self.listView.currentItem()
filename = unicode(item.data(QtCore.Qt.UserRole).toString())
self.parent.liveController.display.video(filename, 0, True)
if os.path.exists(filename):
(path, name) = os.path.split(filename)
self.parent.liveController.display.video(filename, 0, True)
else:
Receiver.send_message(u'openlp_error_message', {
u'title': translate('MediaPlugin.MediaItem',
'Live Background Error'),
u'message': unicode(translate('MediaPlugin.MediaItem',
'There was a problem replacing your background, '
'the media file %s no longer exists.')) % filename})
self.resetButton.setVisible(True)
def generateSlideData(self, service_item, item=None, xmlVersion=False):

View File

@ -79,7 +79,7 @@ class MediaPlugin(Plugin):
return MediaTab(self.name)
def getMediaManagerItem(self):
# Create the MediaManagerItem object
# Create the MediaManagerItem object.
return MediaMediaItem(self, self, self.icon)
def about(self):

View File

@ -27,10 +27,11 @@
The :mod:`songbeamerimport` module provides the functionality for importing
SongBeamer songs into the OpenLP database.
"""
import logging
import os
import chardet
import codecs
import logging
import os
import re
from openlp.core.lib import translate
from openlp.plugins.songs.lib.songimport import SongImport
@ -151,23 +152,25 @@ class SongBeamerImport(SongImport):
(u'</i>', u'{/it}'),
(u'<u>', u'{u}'),
(u'</u>', u'{/u}'),
(u'<br>', u'{st}'),
(u'</br>', u'{st}'),
(u'</ br>', u'{st}'),
(u'<p>', u'{p}'),
(u'</p>', u'{/p}'),
(u'<super>', u'{su}'),
(u'</super>', u'{/su}'),
(u'<sub>', u'{sb}'),
(u'</sub>', u'{/sb}'),
(u'<wordwrap>', u''),
(u'</wordwrap>', u''),
(u'<strike>', u''),
(u'</strike>', u'')
(u'<[/]?br.*?>', u'{st}'),
(u'<[/]?wordwrap>', u''),
(u'<[/]?strike>', u''),
(u'<[/]?h.*?>', u''),
(u'<[/]?s.*?>', u''),
(u'<[/]?linespacing.*?>', u''),
(u'<[/]?c.*?>', u''),
(u'<align.*?>', u''),
(u'<valign.*?>', u'')
]
for pair in tag_pairs:
self.current_verse = self.current_verse.replace(pair[0], pair[1])
# TODO: check for unsupported tags (see wiki) and remove them as well.
self.current_verse = re.compile(pair[0]).sub(pair[1],
self.current_verse)
def parse_tags(self, line):
"""