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. Background style Combo box has changed.
""" """
self.theme.background_type = BackgroundType.to_string(index) # do not allow updates when screen is building for the first time.
self.setBackgroundPageValues() if self.updateThemeAllowed:
self.theme.background_type = BackgroundType.to_string(index)
self.setBackgroundPageValues()
def onGradientComboBoxCurrentIndexChanged(self, index): def onGradientComboBoxCurrentIndexChanged(self, index):
""" """

View File

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

View File

@ -31,7 +31,7 @@ from PyQt4 import QtCore, QtGui
from openlp.core.lib import MediaManagerItem, BaseListWithDnD, build_icon, \ from openlp.core.lib import MediaManagerItem, BaseListWithDnD, build_icon, \
ItemCapabilities, SettingsManager, translate, check_item_selected, \ ItemCapabilities, SettingsManager, translate, check_item_selected, \
context_menu_action context_menu_action, Receiver
log = logging.getLogger(__name__) log = logging.getLogger(__name__)
@ -108,11 +108,20 @@ class MediaMediaItem(MediaManagerItem):
def onReplaceClick(self): def onReplaceClick(self):
if check_item_selected(self.listView, if check_item_selected(self.listView,
translate('ImagePlugin.MediaItem', translate('MediaPlugin.MediaItem',
'You must select a media file to replace the background with.')): 'You must select a media file to replace the background with.')):
item = self.listView.currentItem() item = self.listView.currentItem()
filename = unicode(item.data(QtCore.Qt.UserRole).toString()) 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) self.resetButton.setVisible(True)
def generateSlideData(self, service_item, item=None, xmlVersion=False): def generateSlideData(self, service_item, item=None, xmlVersion=False):

View File

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

View File

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