forked from openlp/openlp
Start the UI component library with a couple of moves and a new item.
Dedupe song object checking. Stop reloading songs when loading services without songs in them! Change mouse cursor when loading services as reloading songs can take time. bzr-revno: 1263
This commit is contained in:
commit
9c4e47009d
@ -319,20 +319,6 @@ def check_directory_exists(dir):
|
|||||||
if not os.path.exists(dir):
|
if not os.path.exists(dir):
|
||||||
os.makedirs(dir)
|
os.makedirs(dir)
|
||||||
|
|
||||||
def save_cancel_button_box(parent):
|
|
||||||
"""
|
|
||||||
Return a standard dialog button box with save and cancel buttons.
|
|
||||||
"""
|
|
||||||
button_box = QtGui.QDialogButtonBox(parent)
|
|
||||||
button_box.setStandardButtons(QtGui.QDialogButtonBox.Save |
|
|
||||||
QtGui.QDialogButtonBox.Cancel)
|
|
||||||
button_box.setObjectName(u'%sButtonBox' % parent)
|
|
||||||
QtCore.QObject.connect(button_box, QtCore.SIGNAL(u'accepted()'),
|
|
||||||
parent.accept)
|
|
||||||
QtCore.QObject.connect(button_box, QtCore.SIGNAL(u'rejected()'),
|
|
||||||
parent.reject)
|
|
||||||
return button_box
|
|
||||||
|
|
||||||
from theme import ThemeLevel, ThemeXML, BackgroundGradientType, \
|
from theme import ThemeLevel, ThemeXML, BackgroundGradientType, \
|
||||||
BackgroundType, HorizontalType, VerticalType
|
BackgroundType, HorizontalType, VerticalType
|
||||||
from displaytags import DisplayTags
|
from displaytags import DisplayTags
|
||||||
|
@ -118,7 +118,7 @@ class Plugin(QtCore.QObject):
|
|||||||
|
|
||||||
class MyPlugin(Plugin):
|
class MyPlugin(Plugin):
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
Plugin.__init(self, u'MyPlugin', u'0.1')
|
Plugin.__init__(self, u'MyPlugin', u'0.1')
|
||||||
|
|
||||||
``name``
|
``name``
|
||||||
Defaults to *None*. The name of the plugin.
|
Defaults to *None*. The name of the plugin.
|
||||||
|
110
openlp/core/lib/ui.py
Normal file
110
openlp/core/lib/ui.py
Normal file
@ -0,0 +1,110 @@
|
|||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
# vim: autoindent shiftwidth=4 expandtab textwidth=80 tabstop=4 softtabstop=4
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
# OpenLP - Open Source Lyrics Projection #
|
||||||
|
# --------------------------------------------------------------------------- #
|
||||||
|
# Copyright (c) 2008-2011 Raoul Snyman #
|
||||||
|
# Portions copyright (c) 2008-2011 Tim Bentley, Jonathan Corwin, Michael #
|
||||||
|
# Gorven, Scott Guerrieri, Meinert Jordan, Andreas Preikschat, Christian #
|
||||||
|
# Richter, Philip Ridout, Maikel Stuivenberg, Martin Thompson, Jon Tibble, #
|
||||||
|
# Carsten Tinggaard, Frode Woldsund #
|
||||||
|
# --------------------------------------------------------------------------- #
|
||||||
|
# This program is free software; you can redistribute it and/or modify it #
|
||||||
|
# under the terms of the GNU General Public License as published by the Free #
|
||||||
|
# Software Foundation; version 2 of the License. #
|
||||||
|
# #
|
||||||
|
# This program is distributed in the hope that it will be useful, but WITHOUT #
|
||||||
|
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or #
|
||||||
|
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for #
|
||||||
|
# more details. #
|
||||||
|
# #
|
||||||
|
# You should have received a copy of the GNU General Public License along #
|
||||||
|
# with this program; if not, write to the Free Software Foundation, Inc., 59 #
|
||||||
|
# Temple Place, Suite 330, Boston, MA 02111-1307 USA #
|
||||||
|
###############################################################################
|
||||||
|
"""
|
||||||
|
The :mod:`ui` module provides standard UI components for OpenLP.
|
||||||
|
"""
|
||||||
|
import logging
|
||||||
|
|
||||||
|
from PyQt4 import QtCore, QtGui
|
||||||
|
|
||||||
|
from openlp.core.lib import translate
|
||||||
|
|
||||||
|
log = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
def add_welcome_page(parent, image):
|
||||||
|
"""
|
||||||
|
Generate an opening welcome page for a wizard using a provided image.
|
||||||
|
|
||||||
|
``image``
|
||||||
|
A splash image for the wizard.
|
||||||
|
"""
|
||||||
|
parent.welcomePage = QtGui.QWizardPage()
|
||||||
|
parent.welcomePage.setPixmap(QtGui.QWizard.WatermarkPixmap,
|
||||||
|
QtGui.QPixmap(image))
|
||||||
|
parent.welcomePage.setObjectName(u'WelcomePage')
|
||||||
|
parent.welcomeLayout = QtGui.QVBoxLayout(parent.welcomePage)
|
||||||
|
parent.welcomeLayout.setObjectName(u'WelcomeLayout')
|
||||||
|
parent.titleLabel = QtGui.QLabel(parent.welcomePage)
|
||||||
|
parent.titleLabel.setObjectName(u'TitleLabel')
|
||||||
|
parent.welcomeLayout.addWidget(parent.titleLabel)
|
||||||
|
parent.welcomeLayout.addSpacing(40)
|
||||||
|
parent.informationLabel = QtGui.QLabel(parent.welcomePage)
|
||||||
|
parent.informationLabel.setWordWrap(True)
|
||||||
|
parent.informationLabel.setObjectName(u'InformationLabel')
|
||||||
|
parent.welcomeLayout.addWidget(parent.informationLabel)
|
||||||
|
parent.welcomeLayout.addStretch()
|
||||||
|
parent.addPage(parent.welcomePage)
|
||||||
|
|
||||||
|
def save_cancel_button_box(parent):
|
||||||
|
"""
|
||||||
|
Return a standard dialog button box with save and cancel buttons.
|
||||||
|
"""
|
||||||
|
button_box = QtGui.QDialogButtonBox(parent)
|
||||||
|
button_box.setStandardButtons(
|
||||||
|
QtGui.QDialogButtonBox.Save | QtGui.QDialogButtonBox.Cancel)
|
||||||
|
button_box.setObjectName(u'%sButtonBox' % parent)
|
||||||
|
QtCore.QObject.connect(button_box, QtCore.SIGNAL(u'accepted()'),
|
||||||
|
parent.accept)
|
||||||
|
QtCore.QObject.connect(button_box, QtCore.SIGNAL(u'rejected()'),
|
||||||
|
parent.reject)
|
||||||
|
return button_box
|
||||||
|
|
||||||
|
def critical_error_message_box(title=None, message=None, parent=None,
|
||||||
|
question=False):
|
||||||
|
"""
|
||||||
|
Provides a standard critical message box for errors that OpenLP displays
|
||||||
|
to users.
|
||||||
|
|
||||||
|
``title``
|
||||||
|
The title for the message box.
|
||||||
|
|
||||||
|
``message``
|
||||||
|
The message to display to the user.
|
||||||
|
|
||||||
|
``parent``
|
||||||
|
The parent UI element to attach the dialog to.
|
||||||
|
|
||||||
|
``question``
|
||||||
|
Should this message box question the user.
|
||||||
|
"""
|
||||||
|
error = translate('OpenLP.Ui', 'Error')
|
||||||
|
if question:
|
||||||
|
return QtGui.QMessageBox.critical(parent, error, message,
|
||||||
|
QtGui.QMessageBox.StandardButtons(
|
||||||
|
QtGui.QMessageBox.Yes | QtGui.QMessageBox.No))
|
||||||
|
data = {u'message': message}
|
||||||
|
data[u'title'] = title if title else error
|
||||||
|
return Receiver.send_message(u'openlp_error_message', data)
|
||||||
|
|
||||||
|
def media_item_combo_box(parent, name):
|
||||||
|
"""
|
||||||
|
Provide a standard combo box for media items.
|
||||||
|
"""
|
||||||
|
combo = QtGui.QComboBox(parent)
|
||||||
|
combo.setObjectName(name)
|
||||||
|
combo.setSizeAdjustPolicy(QtGui.QComboBox.AdjustToMinimumContentsLength)
|
||||||
|
combo.setSizePolicy(QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
|
||||||
|
return combo
|
@ -51,34 +51,6 @@ class HideMode(object):
|
|||||||
Theme = 2
|
Theme = 2
|
||||||
Screen = 3
|
Screen = 3
|
||||||
|
|
||||||
|
|
||||||
def criticalErrorMessageBox(title=None, message=None, parent=None,
|
|
||||||
question=False):
|
|
||||||
"""
|
|
||||||
Provides a standard critical message box for errors that OpenLP displays
|
|
||||||
to users.
|
|
||||||
|
|
||||||
``title``
|
|
||||||
The title for the message box.
|
|
||||||
|
|
||||||
``message``
|
|
||||||
The message to display to the user.
|
|
||||||
|
|
||||||
``parent``
|
|
||||||
The parent UI element to attach the dialog to.
|
|
||||||
|
|
||||||
``question``
|
|
||||||
Should this message box question the user.
|
|
||||||
"""
|
|
||||||
error = translate('OpenLP.Ui', 'Error')
|
|
||||||
if question:
|
|
||||||
return QtGui.QMessageBox.critical(parent, error, message,
|
|
||||||
QtGui.QMessageBox.StandardButtons(
|
|
||||||
QtGui.QMessageBox.Yes | QtGui.QMessageBox.No))
|
|
||||||
data = {u'message': message}
|
|
||||||
data[u'title'] = title if title else error
|
|
||||||
return Receiver.send_message(u'openlp_error_message', data)
|
|
||||||
|
|
||||||
from themeform import ThemeForm
|
from themeform import ThemeForm
|
||||||
from filerenameform import FileRenameForm
|
from filerenameform import FileRenameForm
|
||||||
from maindisplay import MainDisplay
|
from maindisplay import MainDisplay
|
||||||
@ -99,6 +71,6 @@ from mediadockmanager import MediaDockManager
|
|||||||
from servicemanager import ServiceManager
|
from servicemanager import ServiceManager
|
||||||
from thememanager import ThemeManager
|
from thememanager import ThemeManager
|
||||||
|
|
||||||
__all__ = ['criticalErrorMessageBox', 'SplashScreen', 'AboutForm',
|
__all__ = ['SplashScreen', 'AboutForm', 'SettingsForm', 'MainDisplay',
|
||||||
'SettingsForm', 'MainDisplay', 'SlideController', 'ServiceManager',
|
'SlideController', 'ServiceManager', 'ThemeManager', 'MediaDockManager',
|
||||||
'ThemeManager', 'MediaDockManager', 'ServiceItemEditForm']
|
'ServiceItemEditForm']
|
||||||
|
@ -34,7 +34,7 @@ import cPickle
|
|||||||
from PyQt4 import QtCore, QtGui
|
from PyQt4 import QtCore, QtGui
|
||||||
|
|
||||||
from openlp.core.lib import SettingsTab, translate, DisplayTags
|
from openlp.core.lib import SettingsTab, translate, DisplayTags
|
||||||
from openlp.core.ui import criticalErrorMessageBox
|
from openlp.core.lib.ui import critical_error_message_box
|
||||||
|
|
||||||
class DisplayTagTab(SettingsTab):
|
class DisplayTagTab(SettingsTab):
|
||||||
'''
|
'''
|
||||||
@ -276,7 +276,7 @@ class DisplayTagTab(SettingsTab):
|
|||||||
"""
|
"""
|
||||||
for html in DisplayTags.get_html_tags():
|
for html in DisplayTags.get_html_tags():
|
||||||
if self._strip(html[u'start tag']) == u'n':
|
if self._strip(html[u'start tag']) == u'n':
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('OpenLP.DisplayTagTab', 'Update Error'),
|
translate('OpenLP.DisplayTagTab', 'Update Error'),
|
||||||
translate('OpenLP.DisplayTagTab',
|
translate('OpenLP.DisplayTagTab',
|
||||||
'Tag "n" already defined.'))
|
'Tag "n" already defined.'))
|
||||||
@ -317,7 +317,7 @@ class DisplayTagTab(SettingsTab):
|
|||||||
for linenumber, html1 in enumerate(html_expands):
|
for linenumber, html1 in enumerate(html_expands):
|
||||||
if self._strip(html1[u'start tag']) == tag and \
|
if self._strip(html1[u'start tag']) == tag and \
|
||||||
linenumber != self.selected:
|
linenumber != self.selected:
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('OpenLP.DisplayTagTab', 'Update Error'),
|
translate('OpenLP.DisplayTagTab', 'Update Error'),
|
||||||
unicode(translate('OpenLP.DisplayTagTab',
|
unicode(translate('OpenLP.DisplayTagTab',
|
||||||
'Tag %s already defined.')) % tag)
|
'Tag %s already defined.')) % tag)
|
||||||
|
@ -26,7 +26,8 @@
|
|||||||
|
|
||||||
from PyQt4 import QtCore, QtGui
|
from PyQt4 import QtCore, QtGui
|
||||||
|
|
||||||
from openlp.core.lib import translate, build_icon, save_cancel_button_box
|
from openlp.core.lib import translate, build_icon
|
||||||
|
from openlp.core.lib.ui import save_cancel_button_box
|
||||||
|
|
||||||
class Ui_ServiceItemEditDialog(object):
|
class Ui_ServiceItemEditDialog(object):
|
||||||
def setupUi(self, serviceItemEditDialog):
|
def setupUi(self, serviceItemEditDialog):
|
||||||
|
@ -36,8 +36,8 @@ from PyQt4 import QtCore, QtGui
|
|||||||
from openlp.core.lib import OpenLPToolbar, ServiceItem, context_menu_action, \
|
from openlp.core.lib import OpenLPToolbar, ServiceItem, context_menu_action, \
|
||||||
Receiver, build_icon, ItemCapabilities, SettingsManager, translate, \
|
Receiver, build_icon, ItemCapabilities, SettingsManager, translate, \
|
||||||
ThemeLevel
|
ThemeLevel
|
||||||
from openlp.core.ui import criticalErrorMessageBox, ServiceNoteForm, \
|
from openlp.core.lib.ui import critical_error_message_box
|
||||||
ServiceItemEditForm
|
from openlp.core.ui import ServiceNoteForm, ServiceItemEditForm
|
||||||
from openlp.core.utils import AppLocation, delete_file, file_is_unicode, \
|
from openlp.core.utils import AppLocation, delete_file, file_is_unicode, \
|
||||||
split_filename
|
split_filename
|
||||||
|
|
||||||
@ -491,7 +491,7 @@ class ServiceManager(QtGui.QWidget):
|
|||||||
for file in zip.namelist():
|
for file in zip.namelist():
|
||||||
ucsfile = file_is_unicode(file)
|
ucsfile = file_is_unicode(file)
|
||||||
if not ucsfile:
|
if not ucsfile:
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
message=translate('OpenLP.ServiceManager',
|
message=translate('OpenLP.ServiceManager',
|
||||||
'File is not a valid service.\n'
|
'File is not a valid service.\n'
|
||||||
'The content encoding is not UTF-8.'))
|
'The content encoding is not UTF-8.'))
|
||||||
@ -506,6 +506,8 @@ class ServiceManager(QtGui.QWidget):
|
|||||||
if filePath.endswith(u'osd'):
|
if filePath.endswith(u'osd'):
|
||||||
p_file = filePath
|
p_file = filePath
|
||||||
if 'p_file' in locals():
|
if 'p_file' in locals():
|
||||||
|
Receiver.send_message(u'cursor_busy')
|
||||||
|
Receiver.send_message(u'openlp_process_events')
|
||||||
fileTo = open(p_file, u'r')
|
fileTo = open(p_file, u'r')
|
||||||
items = cPickle.load(fileTo)
|
items = cPickle.load(fileTo)
|
||||||
fileTo.close()
|
fileTo.close()
|
||||||
@ -520,8 +522,9 @@ class ServiceManager(QtGui.QWidget):
|
|||||||
Receiver.send_message(u'%s_service_load' %
|
Receiver.send_message(u'%s_service_load' %
|
||||||
serviceItem.name.lower(), serviceItem)
|
serviceItem.name.lower(), serviceItem)
|
||||||
delete_file(p_file)
|
delete_file(p_file)
|
||||||
|
Receiver.send_message(u'cursor_normal')
|
||||||
else:
|
else:
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
message=translate('OpenLP.ServiceManager',
|
message=translate('OpenLP.ServiceManager',
|
||||||
'File is not a valid service.'))
|
'File is not a valid service.'))
|
||||||
log.exception(u'File contains no service data')
|
log.exception(u'File contains no service data')
|
||||||
@ -536,9 +539,7 @@ class ServiceManager(QtGui.QWidget):
|
|||||||
self.mainwindow.addRecentFile(fileName)
|
self.mainwindow.addRecentFile(fileName)
|
||||||
self.setModified(False)
|
self.setModified(False)
|
||||||
QtCore.QSettings(). \
|
QtCore.QSettings(). \
|
||||||
setValue(u'service/last file',QtCore.QVariant(fileName))
|
setValue(u'service/last file', QtCore.QVariant(fileName))
|
||||||
# Refresh Plugin lists
|
|
||||||
Receiver.send_message(u'plugin_list_refresh')
|
|
||||||
|
|
||||||
def loadLastFile(self):
|
def loadLastFile(self):
|
||||||
"""
|
"""
|
||||||
@ -993,7 +994,7 @@ class ServiceManager(QtGui.QWidget):
|
|||||||
self.mainwindow.previewController.addServiceManagerItem(
|
self.mainwindow.previewController.addServiceManagerItem(
|
||||||
self.serviceItems[item][u'service_item'], child)
|
self.serviceItems[item][u'service_item'], child)
|
||||||
else:
|
else:
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('OpenLP.ServiceManager', 'Missing Display Handler'),
|
translate('OpenLP.ServiceManager', 'Missing Display Handler'),
|
||||||
translate('OpenLP.ServiceManager', 'Your item cannot be '
|
translate('OpenLP.ServiceManager', 'Your item cannot be '
|
||||||
'displayed as there is no handler to display it'))
|
'displayed as there is no handler to display it'))
|
||||||
@ -1027,7 +1028,7 @@ class ServiceManager(QtGui.QWidget):
|
|||||||
self.serviceItems[item][u'service_item'], 0)
|
self.serviceItems[item][u'service_item'], 0)
|
||||||
self.mainwindow.liveController.previewListWidget.setFocus()
|
self.mainwindow.liveController.previewListWidget.setFocus()
|
||||||
else:
|
else:
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('OpenLP.ServiceManager', 'Missing Display Handler'),
|
translate('OpenLP.ServiceManager', 'Missing Display Handler'),
|
||||||
translate('OpenLP.ServiceManager', 'Your item cannot be '
|
translate('OpenLP.ServiceManager', 'Your item cannot be '
|
||||||
'displayed as the plugin required to display it is missing '
|
'displayed as the plugin required to display it is missing '
|
||||||
@ -1188,7 +1189,7 @@ class ServiceManager(QtGui.QWidget):
|
|||||||
Print a Service Order Sheet.
|
Print a Service Order Sheet.
|
||||||
"""
|
"""
|
||||||
if not self.serviceItems:
|
if not self.serviceItems:
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
message=translate('OpenLP.ServiceManager',
|
message=translate('OpenLP.ServiceManager',
|
||||||
'There is no service item in this service.'))
|
'There is no service item in this service.'))
|
||||||
return
|
return
|
||||||
|
@ -26,7 +26,8 @@
|
|||||||
|
|
||||||
from PyQt4 import QtCore, QtGui
|
from PyQt4 import QtCore, QtGui
|
||||||
|
|
||||||
from openlp.core.lib import save_cancel_button_box, translate
|
from openlp.core.lib import translate
|
||||||
|
from openlp.core.lib.ui import save_cancel_button_box
|
||||||
|
|
||||||
class ServiceNoteForm(QtGui.QDialog):
|
class ServiceNoteForm(QtGui.QDialog):
|
||||||
"""
|
"""
|
||||||
|
@ -31,7 +31,7 @@ from PyQt4 import QtCore, QtGui
|
|||||||
|
|
||||||
from openlp.core.lib import translate, BackgroundType, BackgroundGradientType, \
|
from openlp.core.lib import translate, BackgroundType, BackgroundGradientType, \
|
||||||
Receiver
|
Receiver
|
||||||
from openlp.core.ui import criticalErrorMessageBox
|
from openlp.core.lib.ui import critical_error_message_box
|
||||||
from openlp.core.utils import get_images_filter
|
from openlp.core.utils import get_images_filter
|
||||||
from themewizard import Ui_ThemeWizard
|
from themewizard import Ui_ThemeWizard
|
||||||
|
|
||||||
@ -567,13 +567,13 @@ class ThemeForm(QtGui.QWizard, Ui_ThemeWizard):
|
|||||||
# Save the theme name
|
# Save the theme name
|
||||||
self.theme.theme_name = unicode(self.field(u'name').toString())
|
self.theme.theme_name = unicode(self.field(u'name').toString())
|
||||||
if not self.theme.theme_name:
|
if not self.theme.theme_name:
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('OpenLP.ThemeForm', 'Theme Name Missing'),
|
translate('OpenLP.ThemeForm', 'Theme Name Missing'),
|
||||||
translate('OpenLP.ThemeForm',
|
translate('OpenLP.ThemeForm',
|
||||||
'There is no name for this theme. Please enter one.'))
|
'There is no name for this theme. Please enter one.'))
|
||||||
return
|
return
|
||||||
if self.theme.theme_name == u'-1' or self.theme.theme_name == u'None':
|
if self.theme.theme_name == u'-1' or self.theme.theme_name == u'None':
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('OpenLP.ThemeForm', 'Theme Name Invalid'),
|
translate('OpenLP.ThemeForm', 'Theme Name Invalid'),
|
||||||
translate('OpenLP.ThemeForm',
|
translate('OpenLP.ThemeForm',
|
||||||
'Invalid theme name. Please enter one.'))
|
'Invalid theme name. Please enter one.'))
|
||||||
|
@ -32,11 +32,12 @@ import logging
|
|||||||
from xml.etree.ElementTree import ElementTree, XML
|
from xml.etree.ElementTree import ElementTree, XML
|
||||||
from PyQt4 import QtCore, QtGui
|
from PyQt4 import QtCore, QtGui
|
||||||
|
|
||||||
from openlp.core.ui import criticalErrorMessageBox, FileRenameForm, ThemeForm
|
|
||||||
from openlp.core.theme import Theme
|
|
||||||
from openlp.core.lib import OpenLPToolbar, ThemeXML, get_text_file_string, \
|
from openlp.core.lib import OpenLPToolbar, ThemeXML, get_text_file_string, \
|
||||||
build_icon, Receiver, SettingsManager, translate, check_item_selected, \
|
build_icon, Receiver, SettingsManager, translate, check_item_selected, \
|
||||||
BackgroundType, BackgroundGradientType, check_directory_exists
|
BackgroundType, BackgroundGradientType, check_directory_exists
|
||||||
|
from openlp.core.lib.ui import critical_error_message_box
|
||||||
|
from openlp.core.theme import Theme
|
||||||
|
from openlp.core.ui import FileRenameForm, ThemeForm
|
||||||
from openlp.core.utils import AppLocation, delete_file, file_is_unicode, \
|
from openlp.core.utils import AppLocation, delete_file, file_is_unicode, \
|
||||||
get_filesystem_encoding
|
get_filesystem_encoding
|
||||||
|
|
||||||
@ -359,7 +360,7 @@ class ThemeManager(QtGui.QWidget):
|
|||||||
"""
|
"""
|
||||||
item = self.themeListWidget.currentItem()
|
item = self.themeListWidget.currentItem()
|
||||||
if item is None:
|
if item is None:
|
||||||
criticalErrorMessageBox(message=translate('OpenLP.ThemeManager',
|
critical_error_message_box(message=translate('OpenLP.ThemeManager',
|
||||||
'You have not selected a theme.'))
|
'You have not selected a theme.'))
|
||||||
return
|
return
|
||||||
theme = unicode(item.data(QtCore.Qt.UserRole).toString())
|
theme = unicode(item.data(QtCore.Qt.UserRole).toString())
|
||||||
@ -386,7 +387,7 @@ class ThemeManager(QtGui.QWidget):
|
|||||||
'Your theme has been successfully exported.'))
|
'Your theme has been successfully exported.'))
|
||||||
except (IOError, OSError):
|
except (IOError, OSError):
|
||||||
log.exception(u'Export Theme Failed')
|
log.exception(u'Export Theme Failed')
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('OpenLP.ThemeManager', 'Theme Export Failed'),
|
translate('OpenLP.ThemeManager', 'Theme Export Failed'),
|
||||||
translate('OpenLP.ThemeManager',
|
translate('OpenLP.ThemeManager',
|
||||||
'Your theme could not be exported due to an error.'))
|
'Your theme could not be exported due to an error.'))
|
||||||
@ -496,7 +497,7 @@ class ThemeManager(QtGui.QWidget):
|
|||||||
for file in zip.namelist():
|
for file in zip.namelist():
|
||||||
ucsfile = file_is_unicode(file)
|
ucsfile = file_is_unicode(file)
|
||||||
if not ucsfile:
|
if not ucsfile:
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
message=translate('OpenLP.ThemeManager',
|
message=translate('OpenLP.ThemeManager',
|
||||||
'File is not a valid theme.\n'
|
'File is not a valid theme.\n'
|
||||||
'The content encoding is not UTF-8.'))
|
'The content encoding is not UTF-8.'))
|
||||||
@ -531,14 +532,14 @@ class ThemeManager(QtGui.QWidget):
|
|||||||
theme = self._createThemeFromXml(filexml, self.path)
|
theme = self._createThemeFromXml(filexml, self.path)
|
||||||
self.generateAndSaveImage(dir, themename, theme)
|
self.generateAndSaveImage(dir, themename, theme)
|
||||||
else:
|
else:
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('OpenLP.ThemeManager', 'Validation Error'),
|
translate('OpenLP.ThemeManager', 'Validation Error'),
|
||||||
translate('OpenLP.ThemeManager',
|
translate('OpenLP.ThemeManager',
|
||||||
'File is not a valid theme.'))
|
'File is not a valid theme.'))
|
||||||
log.exception(u'Theme file does not contain XML data %s' %
|
log.exception(u'Theme file does not contain XML data %s' %
|
||||||
filename)
|
filename)
|
||||||
except (IOError, NameError):
|
except (IOError, NameError):
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('OpenLP.ThemeManager', 'Validation Error'),
|
translate('OpenLP.ThemeManager', 'Validation Error'),
|
||||||
translate('OpenLP.ThemeManager',
|
translate('OpenLP.ThemeManager',
|
||||||
'File is not a valid theme.'))
|
'File is not a valid theme.'))
|
||||||
@ -558,7 +559,7 @@ class ThemeManager(QtGui.QWidget):
|
|||||||
"""
|
"""
|
||||||
theme_dir = os.path.join(self.path, themeName)
|
theme_dir = os.path.join(self.path, themeName)
|
||||||
if os.path.exists(theme_dir):
|
if os.path.exists(theme_dir):
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('OpenLP.ThemeManager', 'Validation Error'),
|
translate('OpenLP.ThemeManager', 'Validation Error'),
|
||||||
translate('OpenLP.ThemeManager',
|
translate('OpenLP.ThemeManager',
|
||||||
'A theme with this name already exists.'))
|
'A theme with this name already exists.'))
|
||||||
@ -688,7 +689,7 @@ class ThemeManager(QtGui.QWidget):
|
|||||||
return False
|
return False
|
||||||
# should be the same unless default
|
# should be the same unless default
|
||||||
if theme != unicode(item.data(QtCore.Qt.UserRole).toString()):
|
if theme != unicode(item.data(QtCore.Qt.UserRole).toString()):
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
message=translate('OpenLP.ThemeManager',
|
message=translate('OpenLP.ThemeManager',
|
||||||
'You are unable to delete the default theme.'))
|
'You are unable to delete the default theme.'))
|
||||||
return False
|
return False
|
||||||
@ -696,7 +697,8 @@ class ThemeManager(QtGui.QWidget):
|
|||||||
if testPlugin:
|
if testPlugin:
|
||||||
for plugin in self.mainwindow.pluginManager.plugins:
|
for plugin in self.mainwindow.pluginManager.plugins:
|
||||||
if plugin.usesTheme(theme):
|
if plugin.usesTheme(theme):
|
||||||
criticalErrorMessageBox(translate('OpenLP.ThemeManager',
|
critical_error_message_box(
|
||||||
|
translate('OpenLP.ThemeManager',
|
||||||
'Validation Error'),
|
'Validation Error'),
|
||||||
unicode(translate('OpenLP.ThemeManager',
|
unicode(translate('OpenLP.ThemeManager',
|
||||||
'Theme %s is used in the %s plugin.')) % \
|
'Theme %s is used in the %s plugin.')) % \
|
||||||
|
@ -27,7 +27,7 @@
|
|||||||
from PyQt4 import QtCore, QtGui
|
from PyQt4 import QtCore, QtGui
|
||||||
|
|
||||||
from openlp.core.lib import translate, build_icon
|
from openlp.core.lib import translate, build_icon
|
||||||
from openlp.core.ui.wizard import addWelcomePage
|
from openlp.core.lib.ui import add_welcome_page
|
||||||
|
|
||||||
class Ui_ThemeWizard(object):
|
class Ui_ThemeWizard(object):
|
||||||
def setupUi(self, themeWizard):
|
def setupUi(self, themeWizard):
|
||||||
@ -37,7 +37,7 @@ class Ui_ThemeWizard(object):
|
|||||||
themeWizard.setOptions(QtGui.QWizard.IndependentPages |
|
themeWizard.setOptions(QtGui.QWizard.IndependentPages |
|
||||||
QtGui.QWizard.NoBackButtonOnStartPage)
|
QtGui.QWizard.NoBackButtonOnStartPage)
|
||||||
# Welcome Page
|
# Welcome Page
|
||||||
addWelcomePage(themeWizard, u':/wizards/wizard_createtheme.bmp')
|
add_welcome_page(themeWizard, u':/wizards/wizard_createtheme.bmp')
|
||||||
# Background Page
|
# Background Page
|
||||||
self.backgroundPage = QtGui.QWizardPage()
|
self.backgroundPage = QtGui.QWizardPage()
|
||||||
self.backgroundPage.setObjectName(u'BackgroundPage')
|
self.backgroundPage.setObjectName(u'BackgroundPage')
|
||||||
|
@ -31,6 +31,7 @@ import logging
|
|||||||
from PyQt4 import QtCore, QtGui
|
from PyQt4 import QtCore, QtGui
|
||||||
|
|
||||||
from openlp.core.lib import build_icon, Receiver
|
from openlp.core.lib import build_icon, Receiver
|
||||||
|
from openlp.core.lib.ui import add_welcome_page
|
||||||
|
|
||||||
log = logging.getLogger(__name__)
|
log = logging.getLogger(__name__)
|
||||||
|
|
||||||
@ -63,7 +64,7 @@ class OpenLPWizard(QtGui.QWizard):
|
|||||||
self.setOptions(QtGui.QWizard.IndependentPages |
|
self.setOptions(QtGui.QWizard.IndependentPages |
|
||||||
QtGui.QWizard.NoBackButtonOnStartPage |
|
QtGui.QWizard.NoBackButtonOnStartPage |
|
||||||
QtGui.QWizard.NoBackButtonOnLastPage)
|
QtGui.QWizard.NoBackButtonOnLastPage)
|
||||||
addWelcomePage(self, image)
|
add_welcome_page(self, image)
|
||||||
self.addCustomPages()
|
self.addCustomPages()
|
||||||
self.addProgressPage()
|
self.addProgressPage()
|
||||||
self.retranslateUi()
|
self.retranslateUi()
|
||||||
@ -145,27 +146,3 @@ class OpenLPWizard(QtGui.QWizard):
|
|||||||
self.finishButton.setVisible(True)
|
self.finishButton.setVisible(True)
|
||||||
self.cancelButton.setVisible(False)
|
self.cancelButton.setVisible(False)
|
||||||
Receiver.send_message(u'openlp_process_events')
|
Receiver.send_message(u'openlp_process_events')
|
||||||
|
|
||||||
def addWelcomePage(parent, image):
|
|
||||||
"""
|
|
||||||
Generate an opening welcome page for a wizard using a provided image.
|
|
||||||
|
|
||||||
``image``
|
|
||||||
A splash image for the wizard.
|
|
||||||
"""
|
|
||||||
parent.welcomePage = QtGui.QWizardPage()
|
|
||||||
parent.welcomePage.setPixmap(QtGui.QWizard.WatermarkPixmap,
|
|
||||||
QtGui.QPixmap(image))
|
|
||||||
parent.welcomePage.setObjectName(u'WelcomePage')
|
|
||||||
parent.welcomeLayout = QtGui.QVBoxLayout(parent.welcomePage)
|
|
||||||
parent.welcomeLayout.setObjectName(u'WelcomeLayout')
|
|
||||||
parent.titleLabel = QtGui.QLabel(parent.welcomePage)
|
|
||||||
parent.titleLabel.setObjectName(u'TitleLabel')
|
|
||||||
parent.welcomeLayout.addWidget(parent.titleLabel)
|
|
||||||
parent.welcomeLayout.addSpacing(40)
|
|
||||||
parent.informationLabel = QtGui.QLabel(parent.welcomePage)
|
|
||||||
parent.informationLabel.setWordWrap(True)
|
|
||||||
parent.informationLabel.setObjectName(u'InformationLabel')
|
|
||||||
parent.welcomeLayout.addWidget(parent.informationLabel)
|
|
||||||
parent.welcomeLayout.addStretch()
|
|
||||||
parent.addPage(parent.welcomePage)
|
|
||||||
|
@ -35,7 +35,7 @@ from PyQt4 import QtCore, QtGui
|
|||||||
|
|
||||||
from openlp.core.lib import Receiver, SettingsManager, translate
|
from openlp.core.lib import Receiver, SettingsManager, translate
|
||||||
from openlp.core.lib.db import delete_database
|
from openlp.core.lib.db import delete_database
|
||||||
from openlp.core.ui import criticalErrorMessageBox
|
from openlp.core.lib.ui import critical_error_message_box
|
||||||
from openlp.core.ui.wizard import OpenLPWizard
|
from openlp.core.ui.wizard import OpenLPWizard
|
||||||
from openlp.core.utils import AppLocation, string_is_unicode
|
from openlp.core.utils import AppLocation, string_is_unicode
|
||||||
from openlp.plugins.bibles.lib.manager import BibleFormat
|
from openlp.plugins.bibles.lib.manager import BibleFormat
|
||||||
@ -486,7 +486,7 @@ class BibleImportForm(OpenLPWizard):
|
|||||||
elif self.currentPage() == self.selectPage:
|
elif self.currentPage() == self.selectPage:
|
||||||
if self.field(u'source_format').toInt()[0] == BibleFormat.OSIS:
|
if self.field(u'source_format').toInt()[0] == BibleFormat.OSIS:
|
||||||
if not self.field(u'osis_location').toString():
|
if not self.field(u'osis_location').toString():
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('BiblesPlugin.ImportWizardForm',
|
translate('BiblesPlugin.ImportWizardForm',
|
||||||
'Invalid Bible Location'),
|
'Invalid Bible Location'),
|
||||||
translate('BiblesPlugin.ImportWizardForm',
|
translate('BiblesPlugin.ImportWizardForm',
|
||||||
@ -496,7 +496,7 @@ class BibleImportForm(OpenLPWizard):
|
|||||||
return False
|
return False
|
||||||
elif self.field(u'source_format').toInt()[0] == BibleFormat.CSV:
|
elif self.field(u'source_format').toInt()[0] == BibleFormat.CSV:
|
||||||
if not self.field(u'csv_testamentsfile').toString():
|
if not self.field(u'csv_testamentsfile').toString():
|
||||||
answer = criticalErrorMessageBox(translate(
|
answer = critical_error_message_box(translate(
|
||||||
'BiblesPlugin.ImportWizardForm', 'No Testaments File'),
|
'BiblesPlugin.ImportWizardForm', 'No Testaments File'),
|
||||||
translate('BiblesPlugin.ImportWizardForm',
|
translate('BiblesPlugin.ImportWizardForm',
|
||||||
'You have not specified a testaments file. Do you '
|
'You have not specified a testaments file. Do you '
|
||||||
@ -505,7 +505,7 @@ class BibleImportForm(OpenLPWizard):
|
|||||||
self.csvTestamentsEdit.setFocus()
|
self.csvTestamentsEdit.setFocus()
|
||||||
return False
|
return False
|
||||||
elif not self.field(u'csv_booksfile').toString():
|
elif not self.field(u'csv_booksfile').toString():
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('BiblesPlugin.ImportWizardForm',
|
translate('BiblesPlugin.ImportWizardForm',
|
||||||
'Invalid Books File'),
|
'Invalid Books File'),
|
||||||
translate('BiblesPlugin.ImportWizardForm',
|
translate('BiblesPlugin.ImportWizardForm',
|
||||||
@ -514,7 +514,7 @@ class BibleImportForm(OpenLPWizard):
|
|||||||
self.csvBooksEdit.setFocus()
|
self.csvBooksEdit.setFocus()
|
||||||
return False
|
return False
|
||||||
elif not self.field(u'csv_versefile').toString():
|
elif not self.field(u'csv_versefile').toString():
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('BiblesPlugin.ImportWizardForm',
|
translate('BiblesPlugin.ImportWizardForm',
|
||||||
'Invalid Verse File'),
|
'Invalid Verse File'),
|
||||||
translate('BiblesPlugin.ImportWizardForm',
|
translate('BiblesPlugin.ImportWizardForm',
|
||||||
@ -525,7 +525,7 @@ class BibleImportForm(OpenLPWizard):
|
|||||||
elif self.field(u'source_format').toInt()[0] == \
|
elif self.field(u'source_format').toInt()[0] == \
|
||||||
BibleFormat.OpenSong:
|
BibleFormat.OpenSong:
|
||||||
if not self.field(u'opensong_file').toString():
|
if not self.field(u'opensong_file').toString():
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('BiblesPlugin.ImportWizardForm',
|
translate('BiblesPlugin.ImportWizardForm',
|
||||||
'Invalid OpenSong Bible'),
|
'Invalid OpenSong Bible'),
|
||||||
translate('BiblesPlugin.ImportWizardForm',
|
translate('BiblesPlugin.ImportWizardForm',
|
||||||
@ -535,7 +535,7 @@ class BibleImportForm(OpenLPWizard):
|
|||||||
return False
|
return False
|
||||||
elif self.field(u'source_format').toInt()[0] == BibleFormat.OpenLP1:
|
elif self.field(u'source_format').toInt()[0] == BibleFormat.OpenLP1:
|
||||||
if not self.field(u'openlp1_location').toString():
|
if not self.field(u'openlp1_location').toString():
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('BiblesPlugin.ImportWizardForm',
|
translate('BiblesPlugin.ImportWizardForm',
|
||||||
'Invalid Bible Location'),
|
'Invalid Bible Location'),
|
||||||
translate('BiblesPlugin.ImportWizardForm',
|
translate('BiblesPlugin.ImportWizardForm',
|
||||||
@ -549,7 +549,7 @@ class BibleImportForm(OpenLPWizard):
|
|||||||
license_copyright = \
|
license_copyright = \
|
||||||
unicode(self.field(u'license_copyright').toString())
|
unicode(self.field(u'license_copyright').toString())
|
||||||
if not license_version:
|
if not license_version:
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('BiblesPlugin.ImportWizardForm',
|
translate('BiblesPlugin.ImportWizardForm',
|
||||||
'Empty Version Name'),
|
'Empty Version Name'),
|
||||||
translate('BiblesPlugin.ImportWizardForm',
|
translate('BiblesPlugin.ImportWizardForm',
|
||||||
@ -557,7 +557,7 @@ class BibleImportForm(OpenLPWizard):
|
|||||||
self.versionNameEdit.setFocus()
|
self.versionNameEdit.setFocus()
|
||||||
return False
|
return False
|
||||||
elif not license_copyright:
|
elif not license_copyright:
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('BiblesPlugin.ImportWizardForm',
|
translate('BiblesPlugin.ImportWizardForm',
|
||||||
'Empty Copyright'),
|
'Empty Copyright'),
|
||||||
translate('BiblesPlugin.ImportWizardForm',
|
translate('BiblesPlugin.ImportWizardForm',
|
||||||
@ -566,7 +566,7 @@ class BibleImportForm(OpenLPWizard):
|
|||||||
self.copyrightEdit.setFocus()
|
self.copyrightEdit.setFocus()
|
||||||
return False
|
return False
|
||||||
elif self.manager.exists(license_version):
|
elif self.manager.exists(license_version):
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('BiblesPlugin.ImportWizardForm', 'Bible Exists'),
|
translate('BiblesPlugin.ImportWizardForm', 'Bible Exists'),
|
||||||
translate('BiblesPlugin.ImportWizardForm',
|
translate('BiblesPlugin.ImportWizardForm',
|
||||||
'This Bible already exists. Please import '
|
'This Bible already exists. Please import '
|
||||||
|
@ -35,7 +35,7 @@ from sqlalchemy.orm.exc import UnmappedClassError
|
|||||||
|
|
||||||
from openlp.core.lib import translate
|
from openlp.core.lib import translate
|
||||||
from openlp.core.lib.db import BaseModel, init_db, Manager
|
from openlp.core.lib.db import BaseModel, init_db, Manager
|
||||||
from openlp.core.ui import criticalErrorMessageBox
|
from openlp.core.lib.ui import critical_error_message_box
|
||||||
|
|
||||||
log = logging.getLogger(__name__)
|
log = logging.getLogger(__name__)
|
||||||
|
|
||||||
@ -361,7 +361,7 @@ class BibleDB(QtCore.QObject, Manager):
|
|||||||
verse_list.extend(verses)
|
verse_list.extend(verses)
|
||||||
else:
|
else:
|
||||||
log.debug(u'OpenLP failed to find book %s', book)
|
log.debug(u'OpenLP failed to find book %s', book)
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('BiblesPlugin', 'No Book Found'),
|
translate('BiblesPlugin', 'No Book Found'),
|
||||||
translate('BiblesPlugin', 'No matching book '
|
translate('BiblesPlugin', 'No matching book '
|
||||||
'could be found in this Bible. Check that you have '
|
'could be found in this Bible. Check that you have '
|
||||||
|
@ -38,7 +38,7 @@ from HTMLParser import HTMLParseError
|
|||||||
from BeautifulSoup import BeautifulSoup, NavigableString
|
from BeautifulSoup import BeautifulSoup, NavigableString
|
||||||
|
|
||||||
from openlp.core.lib import Receiver, translate
|
from openlp.core.lib import Receiver, translate
|
||||||
from openlp.core.ui import criticalErrorMessageBox
|
from openlp.core.lib.ui import critical_error_message_box
|
||||||
from openlp.core.utils import AppLocation, get_web_page
|
from openlp.core.utils import AppLocation, get_web_page
|
||||||
from openlp.plugins.bibles.lib import SearchResults
|
from openlp.plugins.bibles.lib import SearchResults
|
||||||
from openlp.plugins.bibles.lib.db import BibleDB, Book
|
from openlp.plugins.bibles.lib.db import BibleDB, Book
|
||||||
@ -431,7 +431,7 @@ class HTTPBible(BibleDB):
|
|||||||
if not db_book:
|
if not db_book:
|
||||||
book_details = HTTPBooks.get_book(book)
|
book_details = HTTPBooks.get_book(book)
|
||||||
if not book_details:
|
if not book_details:
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('BiblesPlugin', 'No Book Found'),
|
translate('BiblesPlugin', 'No Book Found'),
|
||||||
translate('BiblesPlugin', 'No matching '
|
translate('BiblesPlugin', 'No matching '
|
||||||
'book could be found in this Bible. Check that you '
|
'book could be found in this Bible. Check that you '
|
||||||
@ -552,14 +552,14 @@ def send_error_message(error_type):
|
|||||||
The type of error that occured for the issue.
|
The type of error that occured for the issue.
|
||||||
"""
|
"""
|
||||||
if error_type == u'download':
|
if error_type == u'download':
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('BiblePlugin.HTTPBible', 'Download Error'),
|
translate('BiblePlugin.HTTPBible', 'Download Error'),
|
||||||
translate('BiblePlugin.HTTPBible', 'There was a '
|
translate('BiblePlugin.HTTPBible', 'There was a '
|
||||||
'problem downloading your verse selection. Please check your '
|
'problem downloading your verse selection. Please check your '
|
||||||
'Internet connection, and if this error continues to occur '
|
'Internet connection, and if this error continues to occur '
|
||||||
'please consider reporting a bug.'))
|
'please consider reporting a bug.'))
|
||||||
elif error_type == u'parse':
|
elif error_type == u'parse':
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('BiblePlugin.HTTPBible', 'Parse Error'),
|
translate('BiblePlugin.HTTPBible', 'Parse Error'),
|
||||||
translate('BiblePlugin.HTTPBible', 'There was a '
|
translate('BiblePlugin.HTTPBible', 'There was a '
|
||||||
'problem extracting your verse selection. If this error continues '
|
'problem extracting your verse selection. If this error continues '
|
||||||
|
@ -30,7 +30,7 @@ from PyQt4 import QtCore, QtGui
|
|||||||
|
|
||||||
from openlp.core.lib import MediaManagerItem, Receiver, BaseListWithDnD, \
|
from openlp.core.lib import MediaManagerItem, Receiver, BaseListWithDnD, \
|
||||||
ItemCapabilities, translate
|
ItemCapabilities, translate
|
||||||
from openlp.core.ui import criticalErrorMessageBox
|
from openlp.core.lib.ui import critical_error_message_box, media_item_combo_box
|
||||||
from openlp.plugins.bibles.forms import BibleImportForm
|
from openlp.plugins.bibles.forms import BibleImportForm
|
||||||
from openlp.plugins.bibles.lib import get_reference_match
|
from openlp.plugins.bibles.lib import get_reference_match
|
||||||
|
|
||||||
@ -81,33 +81,21 @@ class BibleMediaItem(MediaManagerItem):
|
|||||||
self.quickLayout.setObjectName(u'quickLayout')
|
self.quickLayout.setObjectName(u'quickLayout')
|
||||||
self.quickVersionLabel = QtGui.QLabel(self.quickTab)
|
self.quickVersionLabel = QtGui.QLabel(self.quickTab)
|
||||||
self.quickVersionLabel.setObjectName(u'quickVersionLabel')
|
self.quickVersionLabel.setObjectName(u'quickVersionLabel')
|
||||||
self.quickVersionComboBox = QtGui.QComboBox(self.quickTab)
|
self.quickVersionComboBox = media_item_combo_box(self.quickTab,
|
||||||
self.quickVersionComboBox.setSizeAdjustPolicy(
|
u'quickVersionComboBox')
|
||||||
QtGui.QComboBox.AdjustToMinimumContentsLength)
|
|
||||||
self.quickVersionComboBox.setSizePolicy(
|
|
||||||
QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
|
|
||||||
self.quickVersionComboBox.setObjectName(u'quickVersionComboBox')
|
|
||||||
self.quickVersionLabel.setBuddy(self.quickVersionComboBox)
|
self.quickVersionLabel.setBuddy(self.quickVersionComboBox)
|
||||||
self.quickLayout.addRow(self.quickVersionLabel,
|
self.quickLayout.addRow(self.quickVersionLabel,
|
||||||
self.quickVersionComboBox)
|
self.quickVersionComboBox)
|
||||||
self.quickSecondLabel = QtGui.QLabel(self.quickTab)
|
self.quickSecondLabel = QtGui.QLabel(self.quickTab)
|
||||||
self.quickSecondLabel.setObjectName(u'quickSecondLabel')
|
self.quickSecondLabel.setObjectName(u'quickSecondLabel')
|
||||||
self.quickSecondComboBox = QtGui.QComboBox(self.quickTab)
|
self.quickSecondComboBox = media_item_combo_box(self.quickTab,
|
||||||
self.quickSecondComboBox.setSizeAdjustPolicy(
|
u'quickSecondComboBox')
|
||||||
QtGui.QComboBox.AdjustToMinimumContentsLength)
|
|
||||||
self.quickSecondComboBox.setSizePolicy(
|
|
||||||
QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
|
|
||||||
self.quickSecondComboBox.setObjectName(u'quickSecondComboBox')
|
|
||||||
self.quickSecondLabel.setBuddy(self.quickSecondComboBox)
|
self.quickSecondLabel.setBuddy(self.quickSecondComboBox)
|
||||||
self.quickLayout.addRow(self.quickSecondLabel, self.quickSecondComboBox)
|
self.quickLayout.addRow(self.quickSecondLabel, self.quickSecondComboBox)
|
||||||
self.quickSearchTypeLabel = QtGui.QLabel(self.quickTab)
|
self.quickSearchTypeLabel = QtGui.QLabel(self.quickTab)
|
||||||
self.quickSearchTypeLabel.setObjectName(u'quickSearchTypeLabel')
|
self.quickSearchTypeLabel.setObjectName(u'quickSearchTypeLabel')
|
||||||
self.quickSearchComboBox = QtGui.QComboBox(self.quickTab)
|
self.quickSearchComboBox = media_item_combo_box(self.quickTab,
|
||||||
self.quickSearchComboBox.setSizeAdjustPolicy(
|
u'quickSearchComboBox')
|
||||||
QtGui.QComboBox.AdjustToMinimumContentsLength)
|
|
||||||
self.quickSearchComboBox.setSizePolicy(
|
|
||||||
QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
|
|
||||||
self.quickSearchComboBox.setObjectName(u'quickSearchComboBox')
|
|
||||||
self.quickSearchTypeLabel.setBuddy(self.quickSearchComboBox)
|
self.quickSearchTypeLabel.setBuddy(self.quickSearchComboBox)
|
||||||
self.quickLayout.addRow(self.quickSearchTypeLabel,
|
self.quickLayout.addRow(self.quickSearchTypeLabel,
|
||||||
self.quickSearchComboBox)
|
self.quickSearchComboBox)
|
||||||
@ -119,12 +107,8 @@ class BibleMediaItem(MediaManagerItem):
|
|||||||
self.quickLayout.addRow(self.quickSearchLabel, self.quickSearchEdit)
|
self.quickLayout.addRow(self.quickSearchLabel, self.quickSearchEdit)
|
||||||
self.quickClearLabel = QtGui.QLabel(self.quickTab)
|
self.quickClearLabel = QtGui.QLabel(self.quickTab)
|
||||||
self.quickClearLabel.setObjectName(u'quickClearLabel')
|
self.quickClearLabel.setObjectName(u'quickClearLabel')
|
||||||
self.quickClearComboBox = QtGui.QComboBox(self.quickTab)
|
self.quickClearComboBox = media_item_combo_box(self.quickTab,
|
||||||
self.quickClearComboBox.setSizeAdjustPolicy(
|
u'quickClearComboBox')
|
||||||
QtGui.QComboBox.AdjustToMinimumContentsLength)
|
|
||||||
self.quickClearComboBox.setSizePolicy(
|
|
||||||
QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
|
|
||||||
self.quickClearComboBox.setObjectName(u'quickClearComboBox')
|
|
||||||
self.quickLayout.addRow(self.quickClearLabel, self.quickClearComboBox)
|
self.quickLayout.addRow(self.quickClearLabel, self.quickClearComboBox)
|
||||||
self.quickSearchButtonLayout = QtGui.QHBoxLayout()
|
self.quickSearchButtonLayout = QtGui.QHBoxLayout()
|
||||||
self.quickSearchButtonLayout.setObjectName(u'quickSearchButtonLayout')
|
self.quickSearchButtonLayout.setObjectName(u'quickSearchButtonLayout')
|
||||||
@ -144,36 +128,24 @@ class BibleMediaItem(MediaManagerItem):
|
|||||||
self.advancedVersionLabel.setObjectName(u'advancedVersionLabel')
|
self.advancedVersionLabel.setObjectName(u'advancedVersionLabel')
|
||||||
self.advancedLayout.addWidget(self.advancedVersionLabel, 0, 0,
|
self.advancedLayout.addWidget(self.advancedVersionLabel, 0, 0,
|
||||||
QtCore.Qt.AlignRight)
|
QtCore.Qt.AlignRight)
|
||||||
self.advancedVersionComboBox = QtGui.QComboBox(self.advancedTab)
|
self.advancedVersionComboBox = media_item_combo_box(self.advancedTab,
|
||||||
self.advancedVersionComboBox.setSizeAdjustPolicy(
|
u'advancedVersionComboBox')
|
||||||
QtGui.QComboBox.AdjustToMinimumContentsLength)
|
|
||||||
self.advancedVersionComboBox.setSizePolicy(
|
|
||||||
QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
|
|
||||||
self.advancedVersionComboBox.setObjectName(u'advancedVersionComboBox')
|
|
||||||
self.advancedVersionLabel.setBuddy(self.advancedVersionComboBox)
|
self.advancedVersionLabel.setBuddy(self.advancedVersionComboBox)
|
||||||
self.advancedLayout.addWidget(self.advancedVersionComboBox, 0, 1, 1, 2)
|
self.advancedLayout.addWidget(self.advancedVersionComboBox, 0, 1, 1, 2)
|
||||||
self.advancedSecondLabel = QtGui.QLabel(self.advancedTab)
|
self.advancedSecondLabel = QtGui.QLabel(self.advancedTab)
|
||||||
self.advancedSecondLabel.setObjectName(u'advancedSecondLabel')
|
self.advancedSecondLabel.setObjectName(u'advancedSecondLabel')
|
||||||
self.advancedLayout.addWidget(self.advancedSecondLabel, 1, 0,
|
self.advancedLayout.addWidget(self.advancedSecondLabel, 1, 0,
|
||||||
QtCore.Qt.AlignRight)
|
QtCore.Qt.AlignRight)
|
||||||
self.advancedSecondComboBox = QtGui.QComboBox(self.advancedTab)
|
self.advancedSecondComboBox = media_item_combo_box(self.advancedTab,
|
||||||
self.advancedSecondComboBox.setSizeAdjustPolicy(
|
u'advancedSecondComboBox')
|
||||||
QtGui.QComboBox.AdjustToMinimumContentsLength)
|
|
||||||
self.advancedSecondComboBox.setSizePolicy(
|
|
||||||
QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
|
|
||||||
self.advancedSecondComboBox.setObjectName(u'advancedSecondComboBox')
|
|
||||||
self.advancedSecondLabel.setBuddy(self.advancedSecondComboBox)
|
self.advancedSecondLabel.setBuddy(self.advancedSecondComboBox)
|
||||||
self.advancedLayout.addWidget(self.advancedSecondComboBox, 1, 1, 1, 2)
|
self.advancedLayout.addWidget(self.advancedSecondComboBox, 1, 1, 1, 2)
|
||||||
self.advancedBookLabel = QtGui.QLabel(self.advancedTab)
|
self.advancedBookLabel = QtGui.QLabel(self.advancedTab)
|
||||||
self.advancedBookLabel.setObjectName(u'advancedBookLabel')
|
self.advancedBookLabel.setObjectName(u'advancedBookLabel')
|
||||||
self.advancedLayout.addWidget(self.advancedBookLabel, 2, 0,
|
self.advancedLayout.addWidget(self.advancedBookLabel, 2, 0,
|
||||||
QtCore.Qt.AlignRight)
|
QtCore.Qt.AlignRight)
|
||||||
self.advancedBookComboBox = QtGui.QComboBox(self.advancedTab)
|
self.advancedBookComboBox = media_item_combo_box(self.advancedTab,
|
||||||
self.advancedBookComboBox.setSizeAdjustPolicy(
|
u'advancedBookComboBox')
|
||||||
QtGui.QComboBox.AdjustToMinimumContentsLength)
|
|
||||||
self.advancedBookComboBox.setSizePolicy(
|
|
||||||
QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
|
|
||||||
self.advancedBookComboBox.setObjectName(u'advancedBookComboBox')
|
|
||||||
self.advancedBookLabel.setBuddy(self.advancedBookComboBox)
|
self.advancedBookLabel.setBuddy(self.advancedBookComboBox)
|
||||||
self.advancedLayout.addWidget(self.advancedBookComboBox, 2, 1, 1, 2)
|
self.advancedLayout.addWidget(self.advancedBookComboBox, 2, 1, 1, 2)
|
||||||
self.advancedChapterLabel = QtGui.QLabel(self.advancedTab)
|
self.advancedChapterLabel = QtGui.QLabel(self.advancedTab)
|
||||||
@ -202,17 +174,12 @@ class BibleMediaItem(MediaManagerItem):
|
|||||||
self.advancedToVerse = QtGui.QComboBox(self.advancedTab)
|
self.advancedToVerse = QtGui.QComboBox(self.advancedTab)
|
||||||
self.advancedToVerse.setObjectName(u'advancedToVerse')
|
self.advancedToVerse.setObjectName(u'advancedToVerse')
|
||||||
self.advancedLayout.addWidget(self.advancedToVerse, 5, 2)
|
self.advancedLayout.addWidget(self.advancedToVerse, 5, 2)
|
||||||
|
|
||||||
self.advancedClearLabel = QtGui.QLabel(self.quickTab)
|
self.advancedClearLabel = QtGui.QLabel(self.quickTab)
|
||||||
self.advancedClearLabel.setObjectName(u'advancedClearLabel')
|
self.advancedClearLabel.setObjectName(u'advancedClearLabel')
|
||||||
self.advancedLayout.addWidget(self.advancedClearLabel, 6, 0,
|
self.advancedLayout.addWidget(self.advancedClearLabel, 6, 0,
|
||||||
QtCore.Qt.AlignRight)
|
QtCore.Qt.AlignRight)
|
||||||
self.advancedClearComboBox = QtGui.QComboBox(self.quickTab)
|
self.advancedClearComboBox = media_item_combo_box(self.quickTab,
|
||||||
self.advancedClearComboBox.setSizeAdjustPolicy(
|
u'advancedClearComboBox')
|
||||||
QtGui.QComboBox.AdjustToMinimumContentsLength)
|
|
||||||
self.advancedClearComboBox.setSizePolicy(
|
|
||||||
QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
|
|
||||||
self.advancedClearComboBox.setObjectName(u'advancedClearComboBox')
|
|
||||||
self.advancedClearLabel.setBuddy(self.advancedClearComboBox)
|
self.advancedClearLabel.setBuddy(self.advancedClearComboBox)
|
||||||
self.advancedLayout.addWidget(self.advancedClearComboBox, 6, 1, 1, 2)
|
self.advancedLayout.addWidget(self.advancedClearComboBox, 6, 1, 1, 2)
|
||||||
self.advancedSearchButtonLayout = QtGui.QHBoxLayout()
|
self.advancedSearchButtonLayout = QtGui.QHBoxLayout()
|
||||||
@ -387,7 +354,8 @@ class BibleMediaItem(MediaManagerItem):
|
|||||||
verse_count = self.parent.manager.get_verse_count(bible, book, 1)
|
verse_count = self.parent.manager.get_verse_count(bible, book, 1)
|
||||||
if verse_count == 0:
|
if verse_count == 0:
|
||||||
self.advancedSearchButton.setEnabled(False)
|
self.advancedSearchButton.setEnabled(False)
|
||||||
criticalErrorMessageBox(message=translate('BiblePlugin.MediaItem',
|
critical_error_message_box(
|
||||||
|
message=translate('BiblePlugin.MediaItem',
|
||||||
'Bible not fully loaded'))
|
'Bible not fully loaded'))
|
||||||
else:
|
else:
|
||||||
self.advancedSearchButton.setEnabled(True)
|
self.advancedSearchButton.setEnabled(True)
|
||||||
@ -581,7 +549,8 @@ class BibleMediaItem(MediaManagerItem):
|
|||||||
if item_second_bible and second_bible or not item_second_bible and \
|
if item_second_bible and second_bible or not item_second_bible and \
|
||||||
not second_bible:
|
not second_bible:
|
||||||
self.displayResults(bible, second_bible)
|
self.displayResults(bible, second_bible)
|
||||||
elif criticalErrorMessageBox(message=translate('BiblePlugin.MediaItem',
|
elif critical_error_message_box(
|
||||||
|
message=translate('BiblePlugin.MediaItem',
|
||||||
'You cannot combine single and second bible verses. Do you '
|
'You cannot combine single and second bible verses. Do you '
|
||||||
'want to delete your search results and start a new search?'),
|
'want to delete your search results and start a new search?'),
|
||||||
parent=self, question=True) == QtGui.QMessageBox.Yes:
|
parent=self, question=True) == QtGui.QMessageBox.Yes:
|
||||||
|
@ -26,7 +26,8 @@
|
|||||||
|
|
||||||
from PyQt4 import QtCore, QtGui
|
from PyQt4 import QtCore, QtGui
|
||||||
|
|
||||||
from openlp.core.lib import build_icon, translate, save_cancel_button_box
|
from openlp.core.lib import build_icon, translate
|
||||||
|
from openlp.core.lib.ui import save_cancel_button_box
|
||||||
|
|
||||||
class Ui_CustomEditDialog(object):
|
class Ui_CustomEditDialog(object):
|
||||||
def setupUi(self, customEditDialog):
|
def setupUi(self, customEditDialog):
|
||||||
|
@ -29,7 +29,7 @@ import logging
|
|||||||
from PyQt4 import QtCore, QtGui
|
from PyQt4 import QtCore, QtGui
|
||||||
|
|
||||||
from openlp.core.lib import Receiver, translate
|
from openlp.core.lib import Receiver, translate
|
||||||
from openlp.core.ui import criticalErrorMessageBox
|
from openlp.core.lib.ui import critical_error_message_box
|
||||||
from openlp.plugins.custom.lib import CustomXMLBuilder, CustomXMLParser
|
from openlp.plugins.custom.lib import CustomXMLBuilder, CustomXMLParser
|
||||||
from openlp.plugins.custom.lib.db import CustomSlide
|
from openlp.plugins.custom.lib.db import CustomSlide
|
||||||
from editcustomdialog import Ui_CustomEditDialog
|
from editcustomdialog import Ui_CustomEditDialog
|
||||||
@ -152,7 +152,7 @@ class EditCustomForm(QtGui.QDialog, Ui_CustomEditDialog):
|
|||||||
"""
|
"""
|
||||||
valid, message = self._validate()
|
valid, message = self._validate()
|
||||||
if not valid:
|
if not valid:
|
||||||
criticalErrorMessageBox(message=message)
|
critical_error_message_box(message=message)
|
||||||
return False
|
return False
|
||||||
sxml = CustomXMLBuilder()
|
sxml = CustomXMLBuilder()
|
||||||
sxml.new_document()
|
sxml.new_document()
|
||||||
|
@ -26,7 +26,8 @@
|
|||||||
|
|
||||||
from PyQt4 import QtCore, QtGui
|
from PyQt4 import QtCore, QtGui
|
||||||
|
|
||||||
from openlp.core.lib import translate, SpellTextEdit, save_cancel_button_box
|
from openlp.core.lib import translate, SpellTextEdit
|
||||||
|
from openlp.core.lib.ui import save_cancel_button_box
|
||||||
|
|
||||||
class Ui_CustomSlideEditDialog(object):
|
class Ui_CustomSlideEditDialog(object):
|
||||||
def setupUi(self, customSlideEditDialog):
|
def setupUi(self, customSlideEditDialog):
|
||||||
|
@ -32,7 +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, \
|
||||||
ItemCapabilities, SettingsManager, translate, check_item_selected, \
|
ItemCapabilities, SettingsManager, translate, check_item_selected, \
|
||||||
check_directory_exists, Receiver
|
check_directory_exists, Receiver
|
||||||
from openlp.core.ui import criticalErrorMessageBox
|
from openlp.core.lib.ui import critical_error_message_box
|
||||||
from openlp.core.utils import AppLocation, delete_file, get_images_filter
|
from openlp.core.utils import AppLocation, delete_file, get_images_filter
|
||||||
|
|
||||||
log = logging.getLogger(__name__)
|
log = logging.getLogger(__name__)
|
||||||
@ -161,7 +161,7 @@ class ImageMediaItem(MediaManagerItem):
|
|||||||
items.remove(item)
|
items.remove(item)
|
||||||
# We cannot continue, as all images do not exist.
|
# We cannot continue, as all images do not exist.
|
||||||
if not items:
|
if not items:
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('ImagePlugin.MediaItem', 'Missing Image(s)'),
|
translate('ImagePlugin.MediaItem', 'Missing Image(s)'),
|
||||||
unicode(translate('ImagePlugin.MediaItem',
|
unicode(translate('ImagePlugin.MediaItem',
|
||||||
'The following image(s) no longer exist: %s')) %
|
'The following image(s) no longer exist: %s')) %
|
||||||
@ -214,7 +214,7 @@ class ImageMediaItem(MediaManagerItem):
|
|||||||
self.parent.liveController.display.directImage(name, filename)
|
self.parent.liveController.display.directImage(name, filename)
|
||||||
self.resetAction.setVisible(True)
|
self.resetAction.setVisible(True)
|
||||||
else:
|
else:
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('ImagePlugin.MediaItem', 'Live Background Error'),
|
translate('ImagePlugin.MediaItem', 'Live Background Error'),
|
||||||
unicode(translate('ImagePlugin.MediaItem',
|
unicode(translate('ImagePlugin.MediaItem',
|
||||||
'There was a problem replacing your background, '
|
'There was a problem replacing your background, '
|
||||||
|
@ -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, Receiver
|
ItemCapabilities, SettingsManager, translate, check_item_selected, Receiver
|
||||||
from openlp.core.ui import criticalErrorMessageBox
|
from openlp.core.lib.ui import critical_error_message_box
|
||||||
|
|
||||||
log = logging.getLogger(__name__)
|
log = logging.getLogger(__name__)
|
||||||
|
|
||||||
@ -120,7 +120,7 @@ class MediaMediaItem(MediaManagerItem):
|
|||||||
self.parent.liveController.display.video(filename, 0, True)
|
self.parent.liveController.display.video(filename, 0, True)
|
||||||
self.resetAction.setVisible(True)
|
self.resetAction.setVisible(True)
|
||||||
else:
|
else:
|
||||||
criticalErrorMessageBox(translate('MediaPlugin.MediaItem',
|
critical_error_message_box(translate('MediaPlugin.MediaItem',
|
||||||
'Live Background Error'),
|
'Live Background Error'),
|
||||||
unicode(translate('MediaPlugin.MediaItem',
|
unicode(translate('MediaPlugin.MediaItem',
|
||||||
'There was a problem replacing your background, '
|
'There was a problem replacing your background, '
|
||||||
@ -144,7 +144,7 @@ class MediaMediaItem(MediaManagerItem):
|
|||||||
return True
|
return True
|
||||||
else:
|
else:
|
||||||
# File is no longer present
|
# File is no longer present
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('MediaPlugin.MediaItem', 'Missing Media File'),
|
translate('MediaPlugin.MediaItem', 'Missing Media File'),
|
||||||
unicode(translate('MediaPlugin.MediaItem',
|
unicode(translate('MediaPlugin.MediaItem',
|
||||||
'The file %s no longer exists.')) % filename)
|
'The file %s no longer exists.')) % filename)
|
||||||
|
@ -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, \
|
||||||
SettingsManager, translate, check_item_selected, Receiver, ItemCapabilities
|
SettingsManager, translate, check_item_selected, Receiver, ItemCapabilities
|
||||||
from openlp.core.ui import criticalErrorMessageBox
|
from openlp.core.lib.ui import critical_error_message_box, media_item_combo_box
|
||||||
from openlp.plugins.presentations.lib import MessageListener
|
from openlp.plugins.presentations.lib import MessageListener
|
||||||
|
|
||||||
log = logging.getLogger(__name__)
|
log = logging.getLogger(__name__)
|
||||||
@ -116,12 +116,8 @@ class PresentationMediaItem(MediaManagerItem):
|
|||||||
self.displayLayout.setObjectName(u'displayLayout')
|
self.displayLayout.setObjectName(u'displayLayout')
|
||||||
self.displayTypeLabel = QtGui.QLabel(self.presentationWidget)
|
self.displayTypeLabel = QtGui.QLabel(self.presentationWidget)
|
||||||
self.displayTypeLabel.setObjectName(u'displayTypeLabel')
|
self.displayTypeLabel.setObjectName(u'displayTypeLabel')
|
||||||
self.displayTypeComboBox = QtGui.QComboBox(self.presentationWidget)
|
self.displayTypeComboBox = media_item_combo_box(
|
||||||
self.displayTypeComboBox.setSizeAdjustPolicy(
|
self.presentationWidget, u'displayTypeComboBox')
|
||||||
QtGui.QComboBox.AdjustToMinimumContentsLength)
|
|
||||||
self.displayTypeComboBox.setSizePolicy(
|
|
||||||
QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
|
|
||||||
self.displayTypeComboBox.setObjectName(u'displayTypeComboBox')
|
|
||||||
self.displayTypeLabel.setBuddy(self.displayTypeComboBox)
|
self.displayTypeLabel.setBuddy(self.displayTypeComboBox)
|
||||||
self.displayLayout.addRow(self.displayTypeLabel,
|
self.displayLayout.addRow(self.displayTypeLabel,
|
||||||
self.displayTypeComboBox)
|
self.displayTypeComboBox)
|
||||||
@ -181,7 +177,7 @@ class PresentationMediaItem(MediaManagerItem):
|
|||||||
filename = os.path.split(unicode(file))[1]
|
filename = os.path.split(unicode(file))[1]
|
||||||
if titles.count(filename) > 0:
|
if titles.count(filename) > 0:
|
||||||
if not initialLoad:
|
if not initialLoad:
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('PresentationPlugin.MediaItem',
|
translate('PresentationPlugin.MediaItem',
|
||||||
'File Exists'),
|
'File Exists'),
|
||||||
translate('PresentationPlugin.MediaItem',
|
translate('PresentationPlugin.MediaItem',
|
||||||
@ -205,7 +201,7 @@ class PresentationMediaItem(MediaManagerItem):
|
|||||||
if initialLoad:
|
if initialLoad:
|
||||||
icon = build_icon(u':/general/general_delete.png')
|
icon = build_icon(u':/general/general_delete.png')
|
||||||
else:
|
else:
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
self, translate('PresentationPlugin.MediaItem',
|
self, translate('PresentationPlugin.MediaItem',
|
||||||
'Unsupported File'),
|
'Unsupported File'),
|
||||||
translate('PresentationPlugin.MediaItem',
|
translate('PresentationPlugin.MediaItem',
|
||||||
@ -278,7 +274,7 @@ class PresentationMediaItem(MediaManagerItem):
|
|||||||
return True
|
return True
|
||||||
else:
|
else:
|
||||||
# File is no longer present
|
# File is no longer present
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('PresentationPlugin.MediaItem',
|
translate('PresentationPlugin.MediaItem',
|
||||||
'Missing Presentation'),
|
'Missing Presentation'),
|
||||||
unicode(translate('PresentationPlugin.MediaItem',
|
unicode(translate('PresentationPlugin.MediaItem',
|
||||||
@ -287,7 +283,7 @@ class PresentationMediaItem(MediaManagerItem):
|
|||||||
return False
|
return False
|
||||||
else:
|
else:
|
||||||
# File is no longer present
|
# File is no longer present
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('PresentationPlugin.MediaItem',
|
translate('PresentationPlugin.MediaItem',
|
||||||
'Missing Presentation'),
|
'Missing Presentation'),
|
||||||
unicode(translate('PresentationPlugin.MediaItem',
|
unicode(translate('PresentationPlugin.MediaItem',
|
||||||
|
@ -26,7 +26,8 @@
|
|||||||
|
|
||||||
from PyQt4 import QtCore, QtGui
|
from PyQt4 import QtCore, QtGui
|
||||||
|
|
||||||
from openlp.core.lib import translate, save_cancel_button_box
|
from openlp.core.lib import translate
|
||||||
|
from openlp.core.lib.ui import save_cancel_button_box
|
||||||
|
|
||||||
class Ui_AuthorsDialog(object):
|
class Ui_AuthorsDialog(object):
|
||||||
def setupUi(self, authorsDialog):
|
def setupUi(self, authorsDialog):
|
||||||
|
@ -27,7 +27,7 @@
|
|||||||
from PyQt4 import QtGui, QtCore
|
from PyQt4 import QtGui, QtCore
|
||||||
|
|
||||||
from openlp.core.lib import translate
|
from openlp.core.lib import translate
|
||||||
from openlp.core.ui import criticalErrorMessageBox
|
from openlp.core.lib.ui import critical_error_message_box
|
||||||
from openlp.plugins.songs.forms.authorsdialog import Ui_AuthorsDialog
|
from openlp.plugins.songs.forms.authorsdialog import Ui_AuthorsDialog
|
||||||
|
|
||||||
class AuthorsForm(QtGui.QDialog, Ui_AuthorsDialog):
|
class AuthorsForm(QtGui.QDialog, Ui_AuthorsDialog):
|
||||||
@ -80,17 +80,19 @@ class AuthorsForm(QtGui.QDialog, Ui_AuthorsDialog):
|
|||||||
|
|
||||||
def accept(self):
|
def accept(self):
|
||||||
if not self.firstNameEdit.text():
|
if not self.firstNameEdit.text():
|
||||||
criticalErrorMessageBox(message=translate('SongsPlugin.AuthorsForm',
|
critical_error_message_box(
|
||||||
|
message=translate('SongsPlugin.AuthorsForm',
|
||||||
'You need to type in the first name of the author.'))
|
'You need to type in the first name of the author.'))
|
||||||
self.firstNameEdit.setFocus()
|
self.firstNameEdit.setFocus()
|
||||||
return False
|
return False
|
||||||
elif not self.lastNameEdit.text():
|
elif not self.lastNameEdit.text():
|
||||||
criticalErrorMessageBox(message=translate('SongsPlugin.AuthorsForm',
|
critical_error_message_box(
|
||||||
|
message=translate('SongsPlugin.AuthorsForm',
|
||||||
'You need to type in the last name of the author.'))
|
'You need to type in the last name of the author.'))
|
||||||
self.lastNameEdit.setFocus()
|
self.lastNameEdit.setFocus()
|
||||||
return False
|
return False
|
||||||
elif not self.displayEdit.text():
|
elif not self.displayEdit.text():
|
||||||
if criticalErrorMessageBox(
|
if critical_error_message_box(
|
||||||
message=translate('SongsPlugin.AuthorsForm',
|
message=translate('SongsPlugin.AuthorsForm',
|
||||||
'You have not set a display name for the '
|
'You have not set a display name for the '
|
||||||
'author, combine the first and last names?'),
|
'author, combine the first and last names?'),
|
||||||
|
@ -26,7 +26,8 @@
|
|||||||
|
|
||||||
from PyQt4 import QtCore, QtGui
|
from PyQt4 import QtCore, QtGui
|
||||||
|
|
||||||
from openlp.core.lib import build_icon, translate, save_cancel_button_box
|
from openlp.core.lib import build_icon, translate
|
||||||
|
from openlp.core.lib.ui import save_cancel_button_box
|
||||||
|
|
||||||
class Ui_EditSongDialog(object):
|
class Ui_EditSongDialog(object):
|
||||||
def setupUi(self, editSongDialog):
|
def setupUi(self, editSongDialog):
|
||||||
|
@ -30,7 +30,7 @@ import re
|
|||||||
from PyQt4 import QtCore, QtGui
|
from PyQt4 import QtCore, QtGui
|
||||||
|
|
||||||
from openlp.core.lib import Receiver, translate
|
from openlp.core.lib import Receiver, translate
|
||||||
from openlp.core.ui import criticalErrorMessageBox
|
from openlp.core.lib.ui import critical_error_message_box
|
||||||
from openlp.plugins.songs.forms import EditVerseForm
|
from openlp.plugins.songs.forms import EditVerseForm
|
||||||
from openlp.plugins.songs.lib import SongXML, VerseType
|
from openlp.plugins.songs.lib import SongXML, VerseType
|
||||||
from openlp.plugins.songs.lib.db import Book, Song, Author, Topic
|
from openlp.plugins.songs.lib.db import Book, Song, Author, Topic
|
||||||
@ -255,7 +255,6 @@ class EditSongForm(QtGui.QDialog, Ui_EditSongDialog):
|
|||||||
self.songBookNumberEdit.setText(self.song.song_number)
|
self.songBookNumberEdit.setText(self.song.song_number)
|
||||||
else:
|
else:
|
||||||
self.songBookNumberEdit.setText(u'')
|
self.songBookNumberEdit.setText(u'')
|
||||||
|
|
||||||
# lazy xml migration for now
|
# lazy xml migration for now
|
||||||
self.verseListWidget.clear()
|
self.verseListWidget.clear()
|
||||||
self.verseListWidget.setRowCount(0)
|
self.verseListWidget.setRowCount(0)
|
||||||
@ -343,7 +342,7 @@ class EditSongForm(QtGui.QDialog, Ui_EditSongDialog):
|
|||||||
author = self.manager.get_object(Author, item_id)
|
author = self.manager.get_object(Author, item_id)
|
||||||
if self.authorsListView.findItems(unicode(author.display_name),
|
if self.authorsListView.findItems(unicode(author.display_name),
|
||||||
QtCore.Qt.MatchExactly):
|
QtCore.Qt.MatchExactly):
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
message=translate('SongsPlugin.EditSongForm',
|
message=translate('SongsPlugin.EditSongForm',
|
||||||
'This author is already in the list.'))
|
'This author is already in the list.'))
|
||||||
else:
|
else:
|
||||||
@ -400,7 +399,7 @@ class EditSongForm(QtGui.QDialog, Ui_EditSongDialog):
|
|||||||
topic = self.manager.get_object(Topic, item_id)
|
topic = self.manager.get_object(Topic, item_id)
|
||||||
if self.topicsListView.findItems(unicode(topic.name),
|
if self.topicsListView.findItems(unicode(topic.name),
|
||||||
QtCore.Qt.MatchExactly):
|
QtCore.Qt.MatchExactly):
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
message=translate('SongsPlugin.EditSongForm',
|
message=translate('SongsPlugin.EditSongForm',
|
||||||
'This topic is already in the list.'))
|
'This topic is already in the list.'))
|
||||||
else:
|
else:
|
||||||
@ -533,21 +532,21 @@ class EditSongForm(QtGui.QDialog, Ui_EditSongDialog):
|
|||||||
if not self.titleEdit.text():
|
if not self.titleEdit.text():
|
||||||
self.songTabWidget.setCurrentIndex(0)
|
self.songTabWidget.setCurrentIndex(0)
|
||||||
self.titleEdit.setFocus()
|
self.titleEdit.setFocus()
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
message=translate('SongsPlugin.EditSongForm',
|
message=translate('SongsPlugin.EditSongForm',
|
||||||
'You need to type in a song title.'))
|
'You need to type in a song title.'))
|
||||||
return False
|
return False
|
||||||
if self.verseListWidget.rowCount() == 0:
|
if self.verseListWidget.rowCount() == 0:
|
||||||
self.songTabWidget.setCurrentIndex(0)
|
self.songTabWidget.setCurrentIndex(0)
|
||||||
self.verseListWidget.setFocus()
|
self.verseListWidget.setFocus()
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
message=translate('SongsPlugin.EditSongForm',
|
message=translate('SongsPlugin.EditSongForm',
|
||||||
'You need to type in at least one verse.'))
|
'You need to type in at least one verse.'))
|
||||||
return False
|
return False
|
||||||
if self.authorsListView.count() == 0:
|
if self.authorsListView.count() == 0:
|
||||||
self.songTabWidget.setCurrentIndex(1)
|
self.songTabWidget.setCurrentIndex(1)
|
||||||
self.authorsListView.setFocus()
|
self.authorsListView.setFocus()
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
message=translate('SongsPlugin.EditSongForm',
|
message=translate('SongsPlugin.EditSongForm',
|
||||||
'You need to have an author for this song.'))
|
'You need to have an author for this song.'))
|
||||||
return False
|
return False
|
||||||
@ -575,7 +574,7 @@ class EditSongForm(QtGui.QDialog, Ui_EditSongDialog):
|
|||||||
valid = verses.pop(0)
|
valid = verses.pop(0)
|
||||||
for verse in verses:
|
for verse in verses:
|
||||||
valid = valid + u', ' + verse
|
valid = valid + u', ' + verse
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
message=unicode(translate('SongsPlugin.EditSongForm',
|
message=unicode(translate('SongsPlugin.EditSongForm',
|
||||||
'The verse order is invalid. There is no verse '
|
'The verse order is invalid. There is no verse '
|
||||||
'corresponding to %s. Valid entries are %s.')) % \
|
'corresponding to %s. Valid entries are %s.')) % \
|
||||||
|
@ -26,8 +26,8 @@
|
|||||||
|
|
||||||
from PyQt4 import QtCore, QtGui
|
from PyQt4 import QtCore, QtGui
|
||||||
|
|
||||||
from openlp.core.lib import build_icon, save_cancel_button_box, translate, \
|
from openlp.core.lib import build_icon, translate, SpellTextEdit
|
||||||
SpellTextEdit
|
from openlp.core.lib.ui import save_cancel_button_box
|
||||||
from openlp.plugins.songs.lib import VerseType
|
from openlp.plugins.songs.lib import VerseType
|
||||||
|
|
||||||
class Ui_EditVerseDialog(object):
|
class Ui_EditVerseDialog(object):
|
||||||
|
@ -29,7 +29,7 @@ import logging
|
|||||||
|
|
||||||
from PyQt4 import QtCore, QtGui
|
from PyQt4 import QtCore, QtGui
|
||||||
|
|
||||||
from openlp.core.ui import criticalErrorMessageBox
|
from openlp.core.lib.ui import critical_error_message_box
|
||||||
from openlp.plugins.songs.lib import VerseType, translate
|
from openlp.plugins.songs.lib import VerseType, translate
|
||||||
|
|
||||||
from editversedialog import Ui_EditVerseDialog
|
from editversedialog import Ui_EditVerseDialog
|
||||||
@ -168,7 +168,7 @@ class EditVerseForm(QtGui.QDialog, Ui_EditVerseDialog):
|
|||||||
else:
|
else:
|
||||||
value = self.getVerse()[0].split(u'\n')[1]
|
value = self.getVerse()[0].split(u'\n')[1]
|
||||||
if len(value) == 0:
|
if len(value) == 0:
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
message=translate('SongsPlugin.EditSongForm',
|
message=translate('SongsPlugin.EditSongForm',
|
||||||
'You need to type some text in to the verse.'))
|
'You need to type some text in to the verse.'))
|
||||||
return False
|
return False
|
||||||
|
@ -26,7 +26,8 @@
|
|||||||
|
|
||||||
from PyQt4 import QtCore, QtGui
|
from PyQt4 import QtCore, QtGui
|
||||||
|
|
||||||
from openlp.core.lib import translate, save_cancel_button_box
|
from openlp.core.lib import translate
|
||||||
|
from openlp.core.lib.ui import save_cancel_button_box
|
||||||
|
|
||||||
class Ui_SongBookDialog(object):
|
class Ui_SongBookDialog(object):
|
||||||
def setupUi(self, songBookDialog):
|
def setupUi(self, songBookDialog):
|
||||||
|
@ -27,7 +27,7 @@
|
|||||||
from PyQt4 import QtGui
|
from PyQt4 import QtGui
|
||||||
|
|
||||||
from openlp.core.lib import translate
|
from openlp.core.lib import translate
|
||||||
from openlp.core.ui import criticalErrorMessageBox
|
from openlp.core.lib.ui import critical_error_message_box
|
||||||
from openlp.plugins.songs.forms.songbookdialog import Ui_SongBookDialog
|
from openlp.plugins.songs.forms.songbookdialog import Ui_SongBookDialog
|
||||||
|
|
||||||
class SongBookForm(QtGui.QDialog, Ui_SongBookDialog):
|
class SongBookForm(QtGui.QDialog, Ui_SongBookDialog):
|
||||||
@ -50,7 +50,7 @@ class SongBookForm(QtGui.QDialog, Ui_SongBookDialog):
|
|||||||
|
|
||||||
def accept(self):
|
def accept(self):
|
||||||
if not self.nameEdit.text():
|
if not self.nameEdit.text():
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
message=translate('SongsPlugin.SongBookForm',
|
message=translate('SongsPlugin.SongBookForm',
|
||||||
'You need to type in a name for the book.'))
|
'You need to type in a name for the book.'))
|
||||||
self.nameEdit.setFocus()
|
self.nameEdit.setFocus()
|
||||||
|
@ -32,7 +32,7 @@ import os
|
|||||||
from PyQt4 import QtCore, QtGui
|
from PyQt4 import QtCore, QtGui
|
||||||
|
|
||||||
from openlp.core.lib import Receiver, SettingsManager, translate
|
from openlp.core.lib import Receiver, SettingsManager, translate
|
||||||
from openlp.core.ui import criticalErrorMessageBox
|
from openlp.core.lib.ui import critical_error_message_box
|
||||||
from openlp.core.ui.wizard import OpenLPWizard
|
from openlp.core.ui.wizard import OpenLPWizard
|
||||||
from openlp.plugins.songs.lib.importer import SongFormat
|
from openlp.plugins.songs.lib.importer import SongFormat
|
||||||
|
|
||||||
@ -329,7 +329,7 @@ class SongImportForm(OpenLPWizard):
|
|||||||
source_format = self.formatComboBox.currentIndex()
|
source_format = self.formatComboBox.currentIndex()
|
||||||
if source_format == SongFormat.OpenLP2:
|
if source_format == SongFormat.OpenLP2:
|
||||||
if self.openLP2FilenameEdit.text().isEmpty():
|
if self.openLP2FilenameEdit.text().isEmpty():
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('SongsPlugin.ImportWizardForm',
|
translate('SongsPlugin.ImportWizardForm',
|
||||||
'No OpenLP 2.0 Song Database Selected'),
|
'No OpenLP 2.0 Song Database Selected'),
|
||||||
translate('SongsPlugin.ImportWizardForm',
|
translate('SongsPlugin.ImportWizardForm',
|
||||||
@ -339,7 +339,7 @@ class SongImportForm(OpenLPWizard):
|
|||||||
return False
|
return False
|
||||||
elif source_format == SongFormat.OpenLP1:
|
elif source_format == SongFormat.OpenLP1:
|
||||||
if self.openLP1FilenameEdit.text().isEmpty():
|
if self.openLP1FilenameEdit.text().isEmpty():
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('SongsPlugin.ImportWizardForm',
|
translate('SongsPlugin.ImportWizardForm',
|
||||||
'No openlp.org 1.x Song Database Selected'),
|
'No openlp.org 1.x Song Database Selected'),
|
||||||
translate('SongsPlugin.ImportWizardForm',
|
translate('SongsPlugin.ImportWizardForm',
|
||||||
@ -349,7 +349,7 @@ class SongImportForm(OpenLPWizard):
|
|||||||
return False
|
return False
|
||||||
elif source_format == SongFormat.OpenLyrics:
|
elif source_format == SongFormat.OpenLyrics:
|
||||||
if self.openLyricsFileListWidget.count() == 0:
|
if self.openLyricsFileListWidget.count() == 0:
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('SongsPlugin.ImportWizardForm',
|
translate('SongsPlugin.ImportWizardForm',
|
||||||
'No OpenLyrics Files Selected'),
|
'No OpenLyrics Files Selected'),
|
||||||
translate('SongsPlugin.ImportWizardForm',
|
translate('SongsPlugin.ImportWizardForm',
|
||||||
@ -359,7 +359,7 @@ class SongImportForm(OpenLPWizard):
|
|||||||
return False
|
return False
|
||||||
elif source_format == SongFormat.OpenSong:
|
elif source_format == SongFormat.OpenSong:
|
||||||
if self.openSongFileListWidget.count() == 0:
|
if self.openSongFileListWidget.count() == 0:
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('SongsPlugin.ImportWizardForm',
|
translate('SongsPlugin.ImportWizardForm',
|
||||||
'No OpenSong Files Selected'),
|
'No OpenSong Files Selected'),
|
||||||
translate('SongsPlugin.ImportWizardForm',
|
translate('SongsPlugin.ImportWizardForm',
|
||||||
@ -369,7 +369,7 @@ class SongImportForm(OpenLPWizard):
|
|||||||
return False
|
return False
|
||||||
elif source_format == SongFormat.WordsOfWorship:
|
elif source_format == SongFormat.WordsOfWorship:
|
||||||
if self.wordsOfWorshipFileListWidget.count() == 0:
|
if self.wordsOfWorshipFileListWidget.count() == 0:
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('SongsPlugin.ImportWizardForm',
|
translate('SongsPlugin.ImportWizardForm',
|
||||||
'No Words of Worship Files Selected'),
|
'No Words of Worship Files Selected'),
|
||||||
translate('SongsPlugin.ImportWizardForm',
|
translate('SongsPlugin.ImportWizardForm',
|
||||||
@ -379,7 +379,7 @@ class SongImportForm(OpenLPWizard):
|
|||||||
return False
|
return False
|
||||||
elif source_format == SongFormat.CCLI:
|
elif source_format == SongFormat.CCLI:
|
||||||
if self.ccliFileListWidget.count() == 0:
|
if self.ccliFileListWidget.count() == 0:
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('SongsPlugin.ImportWizardForm',
|
translate('SongsPlugin.ImportWizardForm',
|
||||||
'No CCLI Files Selected'),
|
'No CCLI Files Selected'),
|
||||||
translate('SongsPlugin.ImportWizardForm',
|
translate('SongsPlugin.ImportWizardForm',
|
||||||
@ -389,7 +389,7 @@ class SongImportForm(OpenLPWizard):
|
|||||||
return False
|
return False
|
||||||
elif source_format == SongFormat.SongsOfFellowship:
|
elif source_format == SongFormat.SongsOfFellowship:
|
||||||
if self.songsOfFellowshipFileListWidget.count() == 0:
|
if self.songsOfFellowshipFileListWidget.count() == 0:
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('SongsPlugin.ImportWizardForm',
|
translate('SongsPlugin.ImportWizardForm',
|
||||||
'No Songs of Fellowship File Selected'),
|
'No Songs of Fellowship File Selected'),
|
||||||
translate('SongsPlugin.ImportWizardForm',
|
translate('SongsPlugin.ImportWizardForm',
|
||||||
@ -399,7 +399,7 @@ class SongImportForm(OpenLPWizard):
|
|||||||
return False
|
return False
|
||||||
elif source_format == SongFormat.Generic:
|
elif source_format == SongFormat.Generic:
|
||||||
if self.genericFileListWidget.count() == 0:
|
if self.genericFileListWidget.count() == 0:
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('SongsPlugin.ImportWizardForm',
|
translate('SongsPlugin.ImportWizardForm',
|
||||||
'No Document/Presentation Selected'),
|
'No Document/Presentation Selected'),
|
||||||
translate('SongsPlugin.ImportWizardForm',
|
translate('SongsPlugin.ImportWizardForm',
|
||||||
@ -409,7 +409,7 @@ class SongImportForm(OpenLPWizard):
|
|||||||
return False
|
return False
|
||||||
elif source_format == SongFormat.EasiSlides:
|
elif source_format == SongFormat.EasiSlides:
|
||||||
if self.easiSlidesFilenameEdit.text().isEmpty():
|
if self.easiSlidesFilenameEdit.text().isEmpty():
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('SongsPlugin.ImportWizardForm',
|
translate('SongsPlugin.ImportWizardForm',
|
||||||
'No Easislides Songs file selected'),
|
'No Easislides Songs file selected'),
|
||||||
translate('SongsPlugin.ImportWizardForm',
|
translate('SongsPlugin.ImportWizardForm',
|
||||||
@ -419,7 +419,7 @@ class SongImportForm(OpenLPWizard):
|
|||||||
return False
|
return False
|
||||||
elif source_format == SongFormat.EasyWorship:
|
elif source_format == SongFormat.EasyWorship:
|
||||||
if self.ewFilenameEdit.text().isEmpty():
|
if self.ewFilenameEdit.text().isEmpty():
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('SongsPlugin.ImportWizardForm',
|
translate('SongsPlugin.ImportWizardForm',
|
||||||
'No EasyWorship Song Database Selected'),
|
'No EasyWorship Song Database Selected'),
|
||||||
translate('SongsPlugin.ImportWizardForm',
|
translate('SongsPlugin.ImportWizardForm',
|
||||||
@ -429,7 +429,7 @@ class SongImportForm(OpenLPWizard):
|
|||||||
return False
|
return False
|
||||||
elif source_format == SongFormat.SongBeamer:
|
elif source_format == SongFormat.SongBeamer:
|
||||||
if self.songBeamerFileListWidget.count() == 0:
|
if self.songBeamerFileListWidget.count() == 0:
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
translate('SongsPlugin.ImportWizardForm',
|
translate('SongsPlugin.ImportWizardForm',
|
||||||
'No SongBeamer File Selected'),
|
'No SongBeamer File Selected'),
|
||||||
translate('SongsPlugin.ImportWizardForm',
|
translate('SongsPlugin.ImportWizardForm',
|
||||||
|
@ -29,7 +29,7 @@ from PyQt4 import QtGui, QtCore
|
|||||||
from sqlalchemy.sql import and_
|
from sqlalchemy.sql import and_
|
||||||
|
|
||||||
from openlp.core.lib import Receiver, translate
|
from openlp.core.lib import Receiver, translate
|
||||||
from openlp.core.ui import criticalErrorMessageBox
|
from openlp.core.lib.ui import critical_error_message_box
|
||||||
from openlp.plugins.songs.forms import AuthorsForm, TopicsForm, SongBookForm
|
from openlp.plugins.songs.forms import AuthorsForm, TopicsForm, SongBookForm
|
||||||
from openlp.plugins.songs.lib.db import Author, Book, Topic, Song
|
from openlp.plugins.songs.lib.db import Author, Book, Topic, Song
|
||||||
from songmaintenancedialog import Ui_SongMaintenanceDialog
|
from songmaintenancedialog import Ui_SongMaintenanceDialog
|
||||||
@ -108,14 +108,14 @@ class SongMaintenanceForm(QtGui.QDialog, Ui_SongMaintenanceDialog):
|
|||||||
if item_id != -1:
|
if item_id != -1:
|
||||||
item = self.manager.get_object(item_class, item_id)
|
item = self.manager.get_object(item_class, item_id)
|
||||||
if item and len(item.songs) == 0:
|
if item and len(item.songs) == 0:
|
||||||
if criticalErrorMessageBox(title=dlg_title, message=del_text,
|
if critical_error_message_box(title=dlg_title, message=del_text,
|
||||||
parent=self, question=True) == QtGui.QMessageBox.Yes:
|
parent=self, question=True) == QtGui.QMessageBox.Yes:
|
||||||
self.manager.delete_object(item_class, item.id)
|
self.manager.delete_object(item_class, item.id)
|
||||||
reset_func()
|
reset_func()
|
||||||
else:
|
else:
|
||||||
criticalErrorMessageBox(dlg_title, err_text)
|
critical_error_message_box(dlg_title, err_text)
|
||||||
else:
|
else:
|
||||||
criticalErrorMessageBox(dlg_title, sel_text)
|
critical_error_message_box(dlg_title, sel_text)
|
||||||
|
|
||||||
def resetAuthors(self):
|
def resetAuthors(self):
|
||||||
"""
|
"""
|
||||||
@ -159,66 +159,43 @@ class SongMaintenanceForm(QtGui.QDialog, Ui_SongMaintenanceDialog):
|
|||||||
def checkAuthor(self, new_author, edit=False):
|
def checkAuthor(self, new_author, edit=False):
|
||||||
"""
|
"""
|
||||||
Returns *False* if the given Author already exists, otherwise *True*.
|
Returns *False* if the given Author already exists, otherwise *True*.
|
||||||
|
|
||||||
``edit``
|
|
||||||
If we edit an item, this should be *True*.
|
|
||||||
"""
|
"""
|
||||||
authors = self.manager.get_all_objects(Author,
|
authors = self.manager.get_all_objects(Author,
|
||||||
and_(Author.first_name == new_author.first_name,
|
and_(Author.first_name == new_author.first_name,
|
||||||
Author.last_name == new_author.last_name,
|
Author.last_name == new_author.last_name,
|
||||||
Author.display_name == new_author.display_name))
|
Author.display_name == new_author.display_name))
|
||||||
# Check if this author already exists.
|
return self.__checkObject(authors, new_author, edit)
|
||||||
if len(authors) > 0:
|
|
||||||
# If we edit an existing Author, we need to make sure that we do
|
|
||||||
# not return False when nothing has changed.
|
|
||||||
if edit:
|
|
||||||
for author in authors:
|
|
||||||
if author.id != new_author.id:
|
|
||||||
return False
|
|
||||||
return True
|
|
||||||
else:
|
|
||||||
return False
|
|
||||||
else:
|
|
||||||
return True
|
|
||||||
|
|
||||||
def checkTopic(self, new_topic, edit=False):
|
def checkTopic(self, new_topic, edit=False):
|
||||||
"""
|
"""
|
||||||
Returns *False* if the given Topic already exists, otherwise *True*.
|
Returns *False* if the given Topic already exists, otherwise *True*.
|
||||||
|
|
||||||
``edit``
|
|
||||||
If we edit an item, this should be *True*.
|
|
||||||
"""
|
"""
|
||||||
topics = self.manager.get_all_objects(Topic,
|
topics = self.manager.get_all_objects(Topic,
|
||||||
Topic.name == new_topic.name)
|
Topic.name == new_topic.name)
|
||||||
if len(topics) > 0:
|
return self.__checkObject(topics, new_topic, edit)
|
||||||
# If we edit an existing Topic, we need to make sure that we do
|
|
||||||
# not return False when nothing has changed.
|
|
||||||
if edit:
|
|
||||||
for topic in topics:
|
|
||||||
if topic.id != new_topic.id:
|
|
||||||
return False
|
|
||||||
return True
|
|
||||||
else:
|
|
||||||
return False
|
|
||||||
else:
|
|
||||||
return True
|
|
||||||
|
|
||||||
def checkBook(self, new_book, edit=False):
|
def checkBook(self, new_book, edit=False):
|
||||||
"""
|
"""
|
||||||
Returns *False* if the given Topic already exists, otherwise *True*.
|
Returns *False* if the given Topic already exists, otherwise *True*.
|
||||||
|
|
||||||
``edit``
|
|
||||||
If we edit an item, this should be *True*.
|
|
||||||
"""
|
"""
|
||||||
books = self.manager.get_all_objects(Book,
|
books = self.manager.get_all_objects(Book,
|
||||||
and_(Book.name == new_book.name,
|
and_(Book.name == new_book.name,
|
||||||
Book.publisher == new_book.publisher))
|
Book.publisher == new_book.publisher))
|
||||||
if len(books) > 0:
|
return self.__checkObject(books, new_book, edit)
|
||||||
# If we edit an existing Book, we need to make sure that we do
|
|
||||||
|
def __checkObject(self, objects, new_object, edit):
|
||||||
|
"""
|
||||||
|
Utility method to check for an existing object.
|
||||||
|
|
||||||
|
``edit``
|
||||||
|
If we edit an item, this should be *True*.
|
||||||
|
"""
|
||||||
|
if len(objects) > 0:
|
||||||
|
# If we edit an existing object, we need to make sure that we do
|
||||||
# not return False when nothing has changed.
|
# not return False when nothing has changed.
|
||||||
if edit:
|
if edit:
|
||||||
for book in books:
|
for object in objects:
|
||||||
if book.id != new_book.id:
|
if object.id != new_object.id:
|
||||||
return False
|
return False
|
||||||
return True
|
return True
|
||||||
else:
|
else:
|
||||||
@ -237,11 +214,11 @@ class SongMaintenanceForm(QtGui.QDialog, Ui_SongMaintenanceDialog):
|
|||||||
if self.manager.save_object(author):
|
if self.manager.save_object(author):
|
||||||
self.resetAuthors()
|
self.resetAuthors()
|
||||||
else:
|
else:
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
message=translate('SongsPlugin.SongMaintenanceForm',
|
message=translate('SongsPlugin.SongMaintenanceForm',
|
||||||
'Could not add your author.'))
|
'Could not add your author.'))
|
||||||
else:
|
else:
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
message=translate('SongsPlugin.SongMaintenanceForm',
|
message=translate('SongsPlugin.SongMaintenanceForm',
|
||||||
'This author already exists.'))
|
'This author already exists.'))
|
||||||
|
|
||||||
@ -252,11 +229,11 @@ class SongMaintenanceForm(QtGui.QDialog, Ui_SongMaintenanceDialog):
|
|||||||
if self.manager.save_object(topic):
|
if self.manager.save_object(topic):
|
||||||
self.resetTopics()
|
self.resetTopics()
|
||||||
else:
|
else:
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
message=translate('SongsPlugin.SongMaintenanceForm',
|
message=translate('SongsPlugin.SongMaintenanceForm',
|
||||||
'Could not add your topic.'))
|
'Could not add your topic.'))
|
||||||
else:
|
else:
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
message=translate('SongsPlugin.SongMaintenanceForm',
|
message=translate('SongsPlugin.SongMaintenanceForm',
|
||||||
'This topic already exists.'))
|
'This topic already exists.'))
|
||||||
|
|
||||||
@ -268,11 +245,11 @@ class SongMaintenanceForm(QtGui.QDialog, Ui_SongMaintenanceDialog):
|
|||||||
if self.manager.save_object(book):
|
if self.manager.save_object(book):
|
||||||
self.resetBooks()
|
self.resetBooks()
|
||||||
else:
|
else:
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
message=translate('SongsPlugin.SongMaintenanceForm',
|
message=translate('SongsPlugin.SongMaintenanceForm',
|
||||||
'Could not add your book.'))
|
'Could not add your book.'))
|
||||||
else:
|
else:
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
message=translate('SongsPlugin.SongMaintenanceForm',
|
message=translate('SongsPlugin.SongMaintenanceForm',
|
||||||
'This book already exists.'))
|
'This book already exists.'))
|
||||||
|
|
||||||
@ -301,10 +278,10 @@ class SongMaintenanceForm(QtGui.QDialog, Ui_SongMaintenanceDialog):
|
|||||||
self.resetAuthors()
|
self.resetAuthors()
|
||||||
Receiver.send_message(u'songs_load_list')
|
Receiver.send_message(u'songs_load_list')
|
||||||
else:
|
else:
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
message=translate('SongsPlugin.SongMaintenanceForm',
|
message=translate('SongsPlugin.SongMaintenanceForm',
|
||||||
'Could not save your changes.'))
|
'Could not save your changes.'))
|
||||||
elif criticalErrorMessageBox(message=unicode(translate(
|
elif critical_error_message_box(message=unicode(translate(
|
||||||
'SongsPlugin.SongMaintenanceForm', 'The author %s already '
|
'SongsPlugin.SongMaintenanceForm', 'The author %s already '
|
||||||
'exists. Would you like to make songs with author %s use '
|
'exists. Would you like to make songs with author %s use '
|
||||||
'the existing author %s?')) % (author.display_name,
|
'the existing author %s?')) % (author.display_name,
|
||||||
@ -318,7 +295,7 @@ class SongMaintenanceForm(QtGui.QDialog, Ui_SongMaintenanceDialog):
|
|||||||
author.first_name = temp_first_name
|
author.first_name = temp_first_name
|
||||||
author.last_name = temp_last_name
|
author.last_name = temp_last_name
|
||||||
author.display_name = temp_display_name
|
author.display_name = temp_display_name
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
message=translate('SongsPlugin.SongMaintenanceForm',
|
message=translate('SongsPlugin.SongMaintenanceForm',
|
||||||
'Could not save your modified author, because the '
|
'Could not save your modified author, because the '
|
||||||
'author already exists.'))
|
'author already exists.'))
|
||||||
@ -337,10 +314,10 @@ class SongMaintenanceForm(QtGui.QDialog, Ui_SongMaintenanceDialog):
|
|||||||
if self.manager.save_object(topic):
|
if self.manager.save_object(topic):
|
||||||
self.resetTopics()
|
self.resetTopics()
|
||||||
else:
|
else:
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
message=translate('SongsPlugin.SongMaintenanceForm',
|
message=translate('SongsPlugin.SongMaintenanceForm',
|
||||||
'Could not save your changes.'))
|
'Could not save your changes.'))
|
||||||
elif criticalErrorMessageBox(
|
elif critical_error_message_box(
|
||||||
message=unicode(translate('SongsPlugin.SongMaintenanceForm',
|
message=unicode(translate('SongsPlugin.SongMaintenanceForm',
|
||||||
'The topic %s already exists. Would you like to make songs '
|
'The topic %s already exists. Would you like to make songs '
|
||||||
'with topic %s use the existing topic %s?')) % (topic.name,
|
'with topic %s use the existing topic %s?')) % (topic.name,
|
||||||
@ -350,7 +327,7 @@ class SongMaintenanceForm(QtGui.QDialog, Ui_SongMaintenanceDialog):
|
|||||||
else:
|
else:
|
||||||
# We restore the topics's old name.
|
# We restore the topics's old name.
|
||||||
topic.name = temp_name
|
topic.name = temp_name
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
message=translate('SongsPlugin.SongMaintenanceForm',
|
message=translate('SongsPlugin.SongMaintenanceForm',
|
||||||
'Could not save your modified topic, because it '
|
'Could not save your modified topic, because it '
|
||||||
'already exists.'))
|
'already exists.'))
|
||||||
@ -375,10 +352,10 @@ class SongMaintenanceForm(QtGui.QDialog, Ui_SongMaintenanceDialog):
|
|||||||
if self.manager.save_object(book):
|
if self.manager.save_object(book):
|
||||||
self.resetBooks()
|
self.resetBooks()
|
||||||
else:
|
else:
|
||||||
criticalErrorMessageBox(
|
critical_error_message_box(
|
||||||
message=translate('SongsPlugin.SongMaintenanceForm',
|
message=translate('SongsPlugin.SongMaintenanceForm',
|
||||||
'Could not save your changes.'))
|
'Could not save your changes.'))
|
||||||
elif criticalErrorMessageBox(
|
elif critical_error_message_box(
|
||||||
message=unicode(translate('SongsPlugin.SongMaintenanceForm',
|
message=unicode(translate('SongsPlugin.SongMaintenanceForm',
|
||||||
'The book %s already exists. Would you like to make songs '
|
'The book %s already exists. Would you like to make songs '
|
||||||
'with book %s use the existing book %s?')) % (book.name,
|
'with book %s use the existing book %s?')) % (book.name,
|
||||||
|
@ -26,7 +26,8 @@
|
|||||||
|
|
||||||
from PyQt4 import QtCore, QtGui
|
from PyQt4 import QtCore, QtGui
|
||||||
|
|
||||||
from openlp.core.lib import translate, save_cancel_button_box
|
from openlp.core.lib import translate
|
||||||
|
from openlp.core.lib.ui import save_cancel_button_box
|
||||||
|
|
||||||
class Ui_TopicsDialog(object):
|
class Ui_TopicsDialog(object):
|
||||||
def setupUi(self, topicsDialog):
|
def setupUi(self, topicsDialog):
|
||||||
|
@ -27,7 +27,7 @@
|
|||||||
from PyQt4 import QtGui
|
from PyQt4 import QtGui
|
||||||
|
|
||||||
from openlp.core.lib import translate
|
from openlp.core.lib import translate
|
||||||
from openlp.core.ui import criticalErrorMessageBox
|
from openlp.core.lib.ui import critical_error_message_box
|
||||||
from openlp.plugins.songs.forms.topicsdialog import Ui_TopicsDialog
|
from openlp.plugins.songs.forms.topicsdialog import Ui_TopicsDialog
|
||||||
|
|
||||||
class TopicsForm(QtGui.QDialog, Ui_TopicsDialog):
|
class TopicsForm(QtGui.QDialog, Ui_TopicsDialog):
|
||||||
@ -49,7 +49,8 @@ class TopicsForm(QtGui.QDialog, Ui_TopicsDialog):
|
|||||||
|
|
||||||
def accept(self):
|
def accept(self):
|
||||||
if not self.nameEdit.text():
|
if not self.nameEdit.text():
|
||||||
criticalErrorMessageBox(message=translate('SongsPlugin.TopicsForm',
|
critical_error_message_box(
|
||||||
|
message=translate('SongsPlugin.TopicsForm',
|
||||||
'You need to type in a topic name.'))
|
'You need to type in a topic name.'))
|
||||||
self.nameEdit.setFocus()
|
self.nameEdit.setFocus()
|
||||||
return False
|
return False
|
||||||
|
@ -95,8 +95,6 @@ class SongMediaItem(MediaManagerItem):
|
|||||||
self.searchLayout.addLayout(self.searchButtonLayout)
|
self.searchLayout.addLayout(self.searchButtonLayout)
|
||||||
self.pageLayout.addWidget(self.searchWidget)
|
self.pageLayout.addWidget(self.searchWidget)
|
||||||
# Signals and slots
|
# Signals and slots
|
||||||
QtCore.QObject.connect(Receiver.get_receiver(),
|
|
||||||
QtCore.SIGNAL(u'plugin_list_refresh'), self.onSearchTextButtonClick)
|
|
||||||
QtCore.QObject.connect(self.searchTextEdit,
|
QtCore.QObject.connect(self.searchTextEdit,
|
||||||
QtCore.SIGNAL(u'returnPressed()'), self.onSearchTextButtonClick)
|
QtCore.SIGNAL(u'returnPressed()'), self.onSearchTextButtonClick)
|
||||||
QtCore.QObject.connect(self.searchTextButton,
|
QtCore.QObject.connect(self.searchTextButton,
|
||||||
@ -433,6 +431,7 @@ class SongMediaItem(MediaManagerItem):
|
|||||||
if add_song:
|
if add_song:
|
||||||
if self.addSongFromService:
|
if self.addSongFromService:
|
||||||
editId = self.openLyrics.xml_to_song(item.xml_version)
|
editId = self.openLyrics.xml_to_song(item.xml_version)
|
||||||
|
self.onSearchTextButtonClick()
|
||||||
# Update service with correct song id.
|
# Update service with correct song id.
|
||||||
if editId:
|
if editId:
|
||||||
Receiver.send_message(u'service_item_update',
|
Receiver.send_message(u'service_item_update',
|
||||||
|
Loading…
Reference in New Issue
Block a user