forked from openlp/openlp
Head966
This commit is contained in:
commit
e4350e982f
@ -18,3 +18,4 @@ _eric4project
|
|||||||
.pylint.d
|
.pylint.d
|
||||||
*.qm
|
*.qm
|
||||||
openlp/core/resources.py.old
|
openlp/core/resources.py.old
|
||||||
|
*.qm
|
||||||
|
@ -200,7 +200,7 @@ def check_item_selected(list_widget, message):
|
|||||||
"""
|
"""
|
||||||
if not list_widget.selectedIndexes():
|
if not list_widget.selectedIndexes():
|
||||||
QtGui.QMessageBox.information(list_widget.parent(),
|
QtGui.QMessageBox.information(list_widget.parent(),
|
||||||
translate('MediaManagerItem', 'No Items Selected'), message)
|
translate('OpenLP.MediaManagerItem', 'No Items Selected'), message)
|
||||||
return False
|
return False
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
@ -208,61 +208,61 @@ class MediaManagerItem(QtGui.QWidget):
|
|||||||
## Import Button ##
|
## Import Button ##
|
||||||
if self.hasImportIcon:
|
if self.hasImportIcon:
|
||||||
self.addToolbarButton(
|
self.addToolbarButton(
|
||||||
unicode(translate('MediaManagerItem', 'Import %s')) %
|
unicode(translate('OpenLP.MediaManagerItem', 'Import %s')) %
|
||||||
self.PluginNameShort,
|
self.PluginNameShort,
|
||||||
unicode(translate('MediaManagerItem', 'Import a %s')) %
|
unicode(translate('OpenLP.MediaManagerItem', 'Import a %s')) %
|
||||||
self.pluginNameVisible,
|
self.pluginNameVisible,
|
||||||
u':/general/general_import.png', self.onImportClick)
|
u':/general/general_import.png', self.onImportClick)
|
||||||
## File Button ##
|
## File Button ##
|
||||||
if self.hasFileIcon:
|
if self.hasFileIcon:
|
||||||
self.addToolbarButton(
|
self.addToolbarButton(
|
||||||
unicode(translate('MediaManagerItem', 'Load %s')) %
|
unicode(translate('OpenLP.MediaManagerItem', 'Load %s')) %
|
||||||
self.PluginNameShort,
|
self.PluginNameShort,
|
||||||
unicode(translate('MediaManagerItem', 'Load a new %s')) %
|
unicode(translate('OpenLP.MediaManagerItem', 'Load a new %s')) %
|
||||||
self.pluginNameVisible,
|
self.pluginNameVisible,
|
||||||
u':/general/general_open.png', self.onFileClick)
|
u':/general/general_open.png', self.onFileClick)
|
||||||
## New Button ##
|
## New Button ##
|
||||||
if self.hasNewIcon:
|
if self.hasNewIcon:
|
||||||
self.addToolbarButton(
|
self.addToolbarButton(
|
||||||
unicode(translate('MediaManagerItem', 'New %s')) %
|
unicode(translate('OpenLP.MediaManagerItem', 'New %s')) %
|
||||||
self.PluginNameShort,
|
self.PluginNameShort,
|
||||||
unicode(translate('MediaManagerItem', 'Add a new %s')) %
|
unicode(translate('OpenLP.MediaManagerItem', 'Add a new %s')) %
|
||||||
self.pluginNameVisible,
|
self.pluginNameVisible,
|
||||||
u':/general/general_new.png', self.onNewClick)
|
u':/general/general_new.png', self.onNewClick)
|
||||||
## Edit Button ##
|
## Edit Button ##
|
||||||
if self.hasEditIcon:
|
if self.hasEditIcon:
|
||||||
self.addToolbarButton(
|
self.addToolbarButton(
|
||||||
unicode(translate('MediaManagerItem', 'Edit %s')) %
|
unicode(translate('OpenLP.MediaManagerItem', 'Edit %s')) %
|
||||||
self.PluginNameShort,
|
self.PluginNameShort,
|
||||||
unicode(translate(
|
unicode(translate(
|
||||||
'MediaManagerItem', 'Edit the selected %s')) %
|
'OpenLP.MediaManagerItem', 'Edit the selected %s')) %
|
||||||
self.pluginNameVisible,
|
self.pluginNameVisible,
|
||||||
u':/general/general_edit.png', self.onEditClick)
|
u':/general/general_edit.png', self.onEditClick)
|
||||||
## Delete Button ##
|
## Delete Button ##
|
||||||
if self.hasDeleteIcon:
|
if self.hasDeleteIcon:
|
||||||
self.addToolbarButton(
|
self.addToolbarButton(
|
||||||
unicode(translate('MediaManagerItem', 'Delete %s')) %
|
unicode(translate('OpenLP.MediaManagerItem', 'Delete %s')) %
|
||||||
self.PluginNameShort,
|
self.PluginNameShort,
|
||||||
translate('MediaManagerItem', 'Delete the selected item'),
|
translate('OpenLP.MediaManagerItem', 'Delete the selected item'),
|
||||||
u':/general/general_delete.png', self.onDeleteClick)
|
u':/general/general_delete.png', self.onDeleteClick)
|
||||||
## Separator Line ##
|
## Separator Line ##
|
||||||
self.addToolbarSeparator()
|
self.addToolbarSeparator()
|
||||||
## Preview ##
|
## Preview ##
|
||||||
self.addToolbarButton(
|
self.addToolbarButton(
|
||||||
unicode(translate('MediaManagerItem', 'Preview %s')) %
|
unicode(translate('OpenLP.MediaManagerItem', 'Preview %s')) %
|
||||||
self.PluginNameShort,
|
self.PluginNameShort,
|
||||||
translate('MediaManagerItem', 'Preview the selected item'),
|
translate('OpenLP.MediaManagerItem', 'Preview the selected item'),
|
||||||
u':/general/general_preview.png', self.onPreviewClick)
|
u':/general/general_preview.png', self.onPreviewClick)
|
||||||
## Live Button ##
|
## Live Button ##
|
||||||
self.addToolbarButton(
|
self.addToolbarButton(
|
||||||
u'Go Live',
|
u'Go Live',
|
||||||
translate('MediaManagerItem', 'Send the selected item live'),
|
translate('OpenLP.MediaManagerItem', 'Send the selected item live'),
|
||||||
u':/general/general_live.png', self.onLiveClick)
|
u':/general/general_live.png', self.onLiveClick)
|
||||||
## Add to service Button ##
|
## Add to service Button ##
|
||||||
self.addToolbarButton(
|
self.addToolbarButton(
|
||||||
unicode(translate('MediaManagerItem', 'Add %s to Service')) %
|
unicode(translate('OpenLP.MediaManagerItem', 'Add %s to Service')) %
|
||||||
self.PluginNameShort,
|
self.PluginNameShort,
|
||||||
translate('MediaManagerItem',
|
translate('OpenLP.MediaManagerItem',
|
||||||
'Add the selected item(s) to the service'),
|
'Add the selected item(s) to the service'),
|
||||||
u':/general/general_add.png', self.onAddClick)
|
u':/general/general_add.png', self.onAddClick)
|
||||||
|
|
||||||
@ -288,7 +288,7 @@ class MediaManagerItem(QtGui.QWidget):
|
|||||||
self.listView.addAction(
|
self.listView.addAction(
|
||||||
context_menu_action(
|
context_menu_action(
|
||||||
self.listView, u':/general/general_edit.png',
|
self.listView, u':/general/general_edit.png',
|
||||||
unicode(translate('MediaManagerItem', '&Edit %s')) %
|
unicode(translate('OpenLP.MediaManagerItem', '&Edit %s')) %
|
||||||
self.pluginNameVisible,
|
self.pluginNameVisible,
|
||||||
self.onEditClick))
|
self.onEditClick))
|
||||||
self.listView.addAction(context_menu_separator(self.listView))
|
self.listView.addAction(context_menu_separator(self.listView))
|
||||||
@ -296,31 +296,31 @@ class MediaManagerItem(QtGui.QWidget):
|
|||||||
self.listView.addAction(
|
self.listView.addAction(
|
||||||
context_menu_action(
|
context_menu_action(
|
||||||
self.listView, u':/general/general_delete.png',
|
self.listView, u':/general/general_delete.png',
|
||||||
unicode(translate('MediaManagerItem', '&Delete %s')) %
|
unicode(translate('OpenLP.MediaManagerItem', '&Delete %s')) %
|
||||||
self.pluginNameVisible,
|
self.pluginNameVisible,
|
||||||
self.onDeleteClick))
|
self.onDeleteClick))
|
||||||
self.listView.addAction(context_menu_separator(self.listView))
|
self.listView.addAction(context_menu_separator(self.listView))
|
||||||
self.listView.addAction(
|
self.listView.addAction(
|
||||||
context_menu_action(
|
context_menu_action(
|
||||||
self.listView, u':/general/general_preview.png',
|
self.listView, u':/general/general_preview.png',
|
||||||
unicode(translate('MediaManagerItem', '&Preview %s')) %
|
unicode(translate('OpenLP.MediaManagerItem', '&Preview %s')) %
|
||||||
self.pluginNameVisible,
|
self.pluginNameVisible,
|
||||||
self.onPreviewClick))
|
self.onPreviewClick))
|
||||||
self.listView.addAction(
|
self.listView.addAction(
|
||||||
context_menu_action(
|
context_menu_action(
|
||||||
self.listView, u':/general/general_live.png',
|
self.listView, u':/general/general_live.png',
|
||||||
translate('MediaManagerItem', '&Show Live'),
|
translate('OpenLP.MediaManagerItem', '&Show Live'),
|
||||||
self.onLiveClick))
|
self.onLiveClick))
|
||||||
self.listView.addAction(
|
self.listView.addAction(
|
||||||
context_menu_action(
|
context_menu_action(
|
||||||
self.listView, u':/general/general_add.png',
|
self.listView, u':/general/general_add.png',
|
||||||
translate('MediaManagerItem', '&Add to Service'),
|
translate('OpenLP.MediaManagerItem', '&Add to Service'),
|
||||||
self.onAddClick))
|
self.onAddClick))
|
||||||
if self.addToServiceItem:
|
if self.addToServiceItem:
|
||||||
self.listView.addAction(
|
self.listView.addAction(
|
||||||
context_menu_action(
|
context_menu_action(
|
||||||
self.listView, u':/general/general_add.png',
|
self.listView, u':/general/general_add.png',
|
||||||
translate('MediaManagerItem',
|
translate('OpenLP.MediaManagerItem',
|
||||||
'&Add to selected Service Item'),
|
'&Add to selected Service Item'),
|
||||||
self.onAddEditClick))
|
self.onAddEditClick))
|
||||||
if QtCore.QSettings().value(u'advanced/double click live',
|
if QtCore.QSettings().value(u'advanced/double click live',
|
||||||
@ -440,8 +440,8 @@ class MediaManagerItem(QtGui.QWidget):
|
|||||||
"""
|
"""
|
||||||
if not self.listView.selectedIndexes() and not self.remoteTriggered:
|
if not self.listView.selectedIndexes() and not self.remoteTriggered:
|
||||||
QtGui.QMessageBox.information(self,
|
QtGui.QMessageBox.information(self,
|
||||||
translate('MediaManagerItem', 'No Items Selected'),
|
translate('OpenLP.MediaManagerItem', 'No Items Selected'),
|
||||||
translate('MediaManagerItem',
|
translate('OpenLP.MediaManagerItem',
|
||||||
'You must select one or more items to preview.'))
|
'You must select one or more items to preview.'))
|
||||||
else:
|
else:
|
||||||
log.debug(self.PluginNameShort + u' Preview requested')
|
log.debug(self.PluginNameShort + u' Preview requested')
|
||||||
@ -457,8 +457,8 @@ class MediaManagerItem(QtGui.QWidget):
|
|||||||
"""
|
"""
|
||||||
if not self.listView.selectedIndexes():
|
if not self.listView.selectedIndexes():
|
||||||
QtGui.QMessageBox.information(self,
|
QtGui.QMessageBox.information(self,
|
||||||
translate('MediaManagerItem', 'No Items Selected'),
|
translate('OpenLP.MediaManagerItem', 'No Items Selected'),
|
||||||
translate('MediaManagerItem',
|
translate('OpenLP.MediaManagerItem',
|
||||||
'You must select one or more items to send live.'))
|
'You must select one or more items to send live.'))
|
||||||
else:
|
else:
|
||||||
log.debug(self.PluginNameShort + u' Live requested')
|
log.debug(self.PluginNameShort + u' Live requested')
|
||||||
@ -473,8 +473,8 @@ class MediaManagerItem(QtGui.QWidget):
|
|||||||
"""
|
"""
|
||||||
if not self.listView.selectedIndexes() and not self.remoteTriggered:
|
if not self.listView.selectedIndexes() and not self.remoteTriggered:
|
||||||
QtGui.QMessageBox.information(self,
|
QtGui.QMessageBox.information(self,
|
||||||
translate('MediaManagerItem', 'No Items Selected'),
|
translate('OpenLP.MediaManagerItem', 'No Items Selected'),
|
||||||
translate('MediaManagerItem',
|
translate('OpenLP.MediaManagerItem',
|
||||||
'You must select one or more items.'))
|
'You must select one or more items.'))
|
||||||
else:
|
else:
|
||||||
#Is it posssible to process multiple list items to generate multiple
|
#Is it posssible to process multiple list items to generate multiple
|
||||||
@ -500,16 +500,16 @@ class MediaManagerItem(QtGui.QWidget):
|
|||||||
"""
|
"""
|
||||||
if not self.listView.selectedIndexes() and not self.remoteTriggered:
|
if not self.listView.selectedIndexes() and not self.remoteTriggered:
|
||||||
QtGui.QMessageBox.information(self,
|
QtGui.QMessageBox.information(self,
|
||||||
translate('MediaManagerItem', 'No items selected'),
|
translate('OpenLP.MediaManagerItem', 'No items selected'),
|
||||||
translate('MediaManagerItem',
|
translate('OpenLP.MediaManagerItem',
|
||||||
'You must select one or more items'))
|
'You must select one or more items'))
|
||||||
else:
|
else:
|
||||||
log.debug(self.PluginNameShort + u' Add requested')
|
log.debug(self.PluginNameShort + u' Add requested')
|
||||||
service_item = self.parent.serviceManager.getServiceItem()
|
service_item = self.parent.serviceManager.getServiceItem()
|
||||||
if not service_item:
|
if not service_item:
|
||||||
QtGui.QMessageBox.information(self,
|
QtGui.QMessageBox.information(self,
|
||||||
translate('MediaManagerItem', 'No Service Item Selected'),
|
translate('OpenLP.MediaManagerItem', 'No Service Item Selected'),
|
||||||
translate('MediaManagerItem',
|
translate('OpenLP.MediaManagerItem',
|
||||||
'You must select an existing service item to add to.'))
|
'You must select an existing service item to add to.'))
|
||||||
elif self.title.lower() == service_item.name.lower():
|
elif self.title.lower() == service_item.name.lower():
|
||||||
self.generateSlideData(service_item)
|
self.generateSlideData(service_item)
|
||||||
@ -518,8 +518,8 @@ class MediaManagerItem(QtGui.QWidget):
|
|||||||
else:
|
else:
|
||||||
#Turn off the remote edit update message indicator
|
#Turn off the remote edit update message indicator
|
||||||
QtGui.QMessageBox.information(self,
|
QtGui.QMessageBox.information(self,
|
||||||
translate('MediaManagerItem', 'Invalid Service Item'),
|
translate('OpenLP.MediaManagerItem', 'Invalid Service Item'),
|
||||||
unicode(translate('MediaManagerItem',
|
unicode(translate('OpenLP.MediaManagerItem',
|
||||||
'You must select a %s service item.')) % self.title)
|
'You must select a %s service item.')) % self.title)
|
||||||
|
|
||||||
def buildServiceItem(self, item=None):
|
def buildServiceItem(self, item=None):
|
||||||
@ -535,3 +535,4 @@ class MediaManagerItem(QtGui.QWidget):
|
|||||||
return service_item
|
return service_item
|
||||||
else:
|
else:
|
||||||
return None
|
return None
|
||||||
|
|
||||||
|
@ -105,8 +105,9 @@ class Ui_AboutDialog(object):
|
|||||||
QtCore.QMetaObject.connectSlotsByName(aboutDialog)
|
QtCore.QMetaObject.connectSlotsByName(aboutDialog)
|
||||||
|
|
||||||
def retranslateUi(self, aboutDialog):
|
def retranslateUi(self, aboutDialog):
|
||||||
aboutDialog.setWindowTitle(translate('AboutForm', 'About OpenLP'))
|
aboutDialog.setWindowTitle(translate('OpenLP.AboutForm',
|
||||||
self.aboutTextEdit.setPlainText(translate('AboutForm',
|
'About OpenLP'))
|
||||||
|
self.aboutTextEdit.setPlainText(translate('OpenLP.AboutForm',
|
||||||
'OpenLP <version><revision> - Open Source Lyrics '
|
'OpenLP <version><revision> - Open Source Lyrics '
|
||||||
'Projection\n'
|
'Projection\n'
|
||||||
'\n'
|
'\n'
|
||||||
@ -124,8 +125,8 @@ class Ui_AboutDialog(object):
|
|||||||
))
|
))
|
||||||
self.aboutNotebook.setTabText(
|
self.aboutNotebook.setTabText(
|
||||||
self.aboutNotebook.indexOf(self.aboutTab),
|
self.aboutNotebook.indexOf(self.aboutTab),
|
||||||
translate('AboutForm', 'About'))
|
translate('OpenLP.AboutForm', 'About'))
|
||||||
self.creditsTextEdit.setPlainText(translate('AboutForm',
|
self.creditsTextEdit.setPlainText(translate('OpenLP.AboutForm',
|
||||||
'Project Lead\n'
|
'Project Lead\n'
|
||||||
' Raoul "superfly" Snyman\n'
|
' Raoul "superfly" Snyman\n'
|
||||||
'\n'
|
'\n'
|
||||||
@ -157,8 +158,8 @@ class Ui_AboutDialog(object):
|
|||||||
))
|
))
|
||||||
self.aboutNotebook.setTabText(
|
self.aboutNotebook.setTabText(
|
||||||
self.aboutNotebook.indexOf(self.creditsTab),
|
self.aboutNotebook.indexOf(self.creditsTab),
|
||||||
translate('AboutForm', 'Credits'))
|
translate('OpenLP.AboutForm', 'Credits'))
|
||||||
self.licenseTextEdit.setPlainText(translate('AboutForm',
|
self.licenseTextEdit.setPlainText(translate('OpenLP.AboutForm',
|
||||||
'Copyright \xa9 2004-2010 Raoul Snyman\n'
|
'Copyright \xa9 2004-2010 Raoul Snyman\n'
|
||||||
'Portions copyright \xa9 2004-2010 '
|
'Portions copyright \xa9 2004-2010 '
|
||||||
'Tim Bentley, Jonathan Corwin, Michael Gorven, Scott Guerrieri, '
|
'Tim Bentley, Jonathan Corwin, Michael Gorven, Scott Guerrieri, '
|
||||||
@ -549,6 +550,6 @@ class Ui_AboutDialog(object):
|
|||||||
'instead of this License.'))
|
'instead of this License.'))
|
||||||
self.aboutNotebook.setTabText(
|
self.aboutNotebook.setTabText(
|
||||||
self.aboutNotebook.indexOf(self.licenseTab),
|
self.aboutNotebook.indexOf(self.licenseTab),
|
||||||
translate('AboutForm', 'License'))
|
translate('OpenLP.AboutForm', 'License'))
|
||||||
self.contributeButton.setText(translate('AboutForm', 'Contribute'))
|
self.contributeButton.setText(translate('OpenLP.AboutForm', 'Contribute'))
|
||||||
self.closeButton.setText(translate('AboutForm', 'Close'))
|
self.closeButton.setText(translate('OpenLP.AboutForm', 'Close'))
|
||||||
|
@ -44,7 +44,7 @@ class AboutForm(QtGui.QDialog, Ui_AboutDialog):
|
|||||||
about_text = about_text.replace(u'<version>',
|
about_text = about_text.replace(u'<version>',
|
||||||
self.applicationVersion[u'version'])
|
self.applicationVersion[u'version'])
|
||||||
if self.applicationVersion[u'build']:
|
if self.applicationVersion[u'build']:
|
||||||
build_text = unicode(translate('AboutForm', ' build %s')) % \
|
build_text = unicode(translate('OpenLP.AboutForm', ' build %s')) % \
|
||||||
self.applicationVersion[u'build']
|
self.applicationVersion[u'build']
|
||||||
else:
|
else:
|
||||||
build_text = u''
|
build_text = u''
|
||||||
@ -61,3 +61,4 @@ class AboutForm(QtGui.QDialog, Ui_AboutDialog):
|
|||||||
url = u'http://www.openlp.org/en/documentation/introduction/' \
|
url = u'http://www.openlp.org/en/documentation/introduction/' \
|
||||||
+ u'contributing.html'
|
+ u'contributing.html'
|
||||||
webbrowser.open_new(url)
|
webbrowser.open_new(url)
|
||||||
|
|
||||||
|
@ -45,7 +45,7 @@ class AdvancedTab(SettingsTab):
|
|||||||
Configure the UI elements for the tab.
|
Configure the UI elements for the tab.
|
||||||
"""
|
"""
|
||||||
self.setObjectName(u'AdvancedTab')
|
self.setObjectName(u'AdvancedTab')
|
||||||
self.tabTitleVisible = translate('AdvancedTab', 'Advanced')
|
self.tabTitleVisible = translate('OpenLP.AdvancedTab', 'Advanced')
|
||||||
self.advancedTabLayout = QtGui.QHBoxLayout(self)
|
self.advancedTabLayout = QtGui.QHBoxLayout(self)
|
||||||
self.advancedTabLayout.setSpacing(8)
|
self.advancedTabLayout.setSpacing(8)
|
||||||
self.advancedTabLayout.setMargin(8)
|
self.advancedTabLayout.setMargin(8)
|
||||||
@ -131,12 +131,12 @@ class AdvancedTab(SettingsTab):
|
|||||||
"""
|
"""
|
||||||
Setup the interface translation strings.
|
Setup the interface translation strings.
|
||||||
"""
|
"""
|
||||||
self.uiGroupBox.setTitle(translate('AdvancedTab', 'UI Settings'))
|
self.uiGroupBox.setTitle(translate('OpenLP.AdvancedTab', 'UI Settings'))
|
||||||
self.recentLabel.setText(
|
self.recentLabel.setText(
|
||||||
translate('AdvancedTab', 'Number of recent files to display:'))
|
translate('OpenLP.AdvancedTab', 'Number of recent files to display:'))
|
||||||
self.mediaPluginCheckBox.setText(translate('AdvancedTab',
|
self.mediaPluginCheckBox.setText(translate('OpenLP.AdvancedTab',
|
||||||
'Save currently selected media manager plugin'))
|
'Remember active media manager tab on startup'))
|
||||||
self.doubleClickLiveCheckBox.setText(translate('AdvancedTab',
|
self.doubleClickLiveCheckBox.setText(translate('OpenLP.AdvancedTab',
|
||||||
'Double-click to send items straight to live (requires restart)'))
|
'Double-click to send items straight to live (requires restart)'))
|
||||||
# self.sharedDirGroupBox.setTitle(
|
# self.sharedDirGroupBox.setTitle(
|
||||||
# translate('AdvancedTab', 'Central Data Store'))
|
# translate('AdvancedTab', 'Central Data Store'))
|
||||||
@ -188,3 +188,4 @@ class AdvancedTab(SettingsTab):
|
|||||||
self.sharedLabel.setEnabled(checked)
|
self.sharedLabel.setEnabled(checked)
|
||||||
self.sharedTextEdit.setEnabled(checked)
|
self.sharedTextEdit.setEnabled(checked)
|
||||||
self.sharedPushButton.setEnabled(checked)
|
self.sharedPushButton.setEnabled(checked)
|
||||||
|
|
||||||
|
@ -657,152 +657,173 @@ class Ui_AmendThemeDialog(object):
|
|||||||
|
|
||||||
def retranslateUi(self, AmendThemeDialog):
|
def retranslateUi(self, AmendThemeDialog):
|
||||||
AmendThemeDialog.setWindowTitle(
|
AmendThemeDialog.setWindowTitle(
|
||||||
translate('AmendThemeForm', 'Theme Maintenance'))
|
translate('OpenLP.AmendThemeForm', 'Theme Maintenance'))
|
||||||
self.ThemeNameLabel.setText(
|
self.ThemeNameLabel.setText(
|
||||||
translate('AmendThemeForm', 'Theme &Name:'))
|
translate('OpenLP.AmendThemeForm', 'Theme &name:'))
|
||||||
self.BackgroundLabel.setText(
|
self.BackgroundLabel.setText(
|
||||||
translate('AmendThemeForm', '&Visibility:'))
|
translate('OpenLP.AmendThemeForm', '&Visibility:'))
|
||||||
self.BackgroundComboBox.setItemText(0,
|
self.BackgroundComboBox.setItemText(0,
|
||||||
translate('AmendThemeForm', 'Opaque'))
|
translate('OpenLP.AmendThemeForm', 'Opaque'))
|
||||||
self.BackgroundComboBox.setItemText(1,
|
self.BackgroundComboBox.setItemText(1,
|
||||||
translate('AmendThemeForm', 'Transparent'))
|
translate('OpenLP.AmendThemeForm', 'Transparent'))
|
||||||
self.BackgroundTypeLabel.setText(
|
self.BackgroundTypeLabel.setText(
|
||||||
translate('AmendThemeForm', 'Type:'))
|
translate('OpenLP.AmendThemeForm', 'Type:'))
|
||||||
self.BackgroundTypeComboBox.setItemText(0,
|
self.BackgroundTypeComboBox.setItemText(0,
|
||||||
translate('AmendThemeForm', 'Solid Color'))
|
translate('OpenLP.AmendThemeForm', 'Solid Color'))
|
||||||
self.BackgroundTypeComboBox.setItemText(1,
|
self.BackgroundTypeComboBox.setItemText(1,
|
||||||
translate('AmendThemeForm', 'Gradient'))
|
translate('OpenLP.AmendThemeForm', 'Gradient'))
|
||||||
self.BackgroundTypeComboBox.setItemText(2,
|
self.BackgroundTypeComboBox.setItemText(2,
|
||||||
translate('AmendThemeForm', 'Image'))
|
translate('OpenLP.AmendThemeForm', 'Image'))
|
||||||
self.Color1Label.setText(u'<Color1>:')
|
self.Color1Label.setText(u'<Color1>:')
|
||||||
self.Color2Label.setText(u'<Color2>:')
|
self.Color2Label.setText(u'<Color2>:')
|
||||||
self.ImageLabel.setText(translate('AmendThemeForm', 'Image:'))
|
self.ImageLabel.setText(
|
||||||
self.GradientLabel.setText(translate('AmendThemeForm', 'Gradient:'))
|
translate('OpenLP.AmendThemeForm', 'Image:'))
|
||||||
|
self.GradientLabel.setText(
|
||||||
|
translate('OpenLP.AmendThemeForm', 'Gradient:'))
|
||||||
self.GradientComboBox.setItemText(0,
|
self.GradientComboBox.setItemText(0,
|
||||||
translate('AmendThemeForm', 'Horizontal'))
|
translate('OpenLP.AmendThemeForm', 'Horizontal'))
|
||||||
self.GradientComboBox.setItemText(1,
|
self.GradientComboBox.setItemText(1,
|
||||||
translate('AmendThemeForm', 'Vertical'))
|
translate('OpenLP.AmendThemeForm', 'Vertical'))
|
||||||
self.GradientComboBox.setItemText(2,
|
self.GradientComboBox.setItemText(2,
|
||||||
translate('AmendThemeForm', 'Circular'))
|
translate('OpenLP.AmendThemeForm', 'Circular'))
|
||||||
self.ThemeTabWidget.setTabText(
|
self.ThemeTabWidget.setTabText(
|
||||||
self.ThemeTabWidget.indexOf(self.BackgroundTab),
|
self.ThemeTabWidget.indexOf(self.BackgroundTab),
|
||||||
translate('AmendThemeForm', '&Background'))
|
translate('OpenLP.AmendThemeForm', '&Background'))
|
||||||
self.FontMainGroupBox.setTitle(
|
self.FontMainGroupBox.setTitle(
|
||||||
translate('AmendThemeForm', 'Main Font'))
|
translate('OpenLP.AmendThemeForm', 'Main Font'))
|
||||||
self.FontMainlabel.setText(translate('AmendThemeForm', 'Font:'))
|
self.FontMainlabel.setText(
|
||||||
|
translate('OpenLP.AmendThemeForm', 'Font:'))
|
||||||
self.FontMainColorLabel.setText(
|
self.FontMainColorLabel.setText(
|
||||||
translate('AmendThemeForm', 'Color:'))
|
translate('OpenLP.AmendThemeForm', 'Color:'))
|
||||||
self.FontMainSize.setText(translate('AmendThemeForm', 'Size:'))
|
self.FontMainSize.setText(
|
||||||
self.FontMainSizeSpinBox.setSuffix(translate('AmendThemeForm', 'pt'))
|
translate('OpenLP.AmendThemeForm', 'Size:'))
|
||||||
|
self.FontMainSizeSpinBox.setSuffix(
|
||||||
|
translate('OpenLP.AmendThemeForm', 'pt'))
|
||||||
self.FontMainWrapIndentationLabel.setText(
|
self.FontMainWrapIndentationLabel.setText(
|
||||||
translate('AmendThemeForm', 'Wrap indentation:'))
|
translate('OpenLP.AmendThemeForm', 'Wrap indentation:'))
|
||||||
self.FontMainWrapLineAdjustmentLabel.setText(
|
self.FontMainWrapLineAdjustmentLabel.setText(
|
||||||
translate('AmendThemeForm', 'Adjust line spacing:'))
|
translate('OpenLP.AmendThemeForm', 'Adjust line spacing:'))
|
||||||
self.FontMainWeightComboBox.setItemText(0,
|
self.FontMainWeightComboBox.setItemText(0,
|
||||||
translate('AmendThemeForm', 'Normal'))
|
translate('OpenLP.AmendThemeForm', 'Normal'))
|
||||||
self.FontMainWeightComboBox.setItemText(1,
|
self.FontMainWeightComboBox.setItemText(1,
|
||||||
translate('AmendThemeForm', 'Bold'))
|
translate('OpenLP.AmendThemeForm', 'Bold'))
|
||||||
self.FontMainWeightComboBox.setItemText(2,
|
self.FontMainWeightComboBox.setItemText(2,
|
||||||
translate('AmendThemeForm', 'Italics'))
|
translate('OpenLP.AmendThemeForm', 'Italics'))
|
||||||
self.FontMainWeightComboBox.setItemText(3,
|
self.FontMainWeightComboBox.setItemText(3,
|
||||||
translate('AmendThemeForm', 'Bold/Italics'))
|
translate('OpenLP.AmendThemeForm', 'Bold/Italics'))
|
||||||
self.FontMainWeightLabel.setText(
|
self.FontMainWeightLabel.setText(
|
||||||
translate('AmendThemeForm', 'Style:'))
|
translate('OpenLP.AmendThemeForm', 'Style:'))
|
||||||
self.MainLocationGroupBox.setTitle(
|
self.MainLocationGroupBox.setTitle(
|
||||||
translate('AmendThemeForm', 'Display Location'))
|
translate('OpenLP.AmendThemeForm', 'Display Location'))
|
||||||
self.DefaultLocationLabel.setText(
|
self.DefaultLocationLabel.setText(
|
||||||
translate('AmendThemeForm', 'Use default location:'))
|
translate('OpenLP.AmendThemeForm', 'Use default location'))
|
||||||
self.FontMainXLabel.setText(
|
self.FontMainXLabel.setText(
|
||||||
translate('AmendThemeForm', 'X position:'))
|
translate('OpenLP.AmendThemeForm', 'X position:'))
|
||||||
self.FontMainYLabel.setText(
|
self.FontMainYLabel.setText(
|
||||||
translate('AmendThemeForm', 'Y position:'))
|
translate('OpenLP.AmendThemeForm', 'Y position:'))
|
||||||
self.FontMainWidthLabel.setText(
|
self.FontMainWidthLabel.setText(
|
||||||
translate('AmendThemeForm', 'Width:'))
|
translate('OpenLP.AmendThemeForm', 'Width:'))
|
||||||
self.FontMainHeightLabel.setText(
|
self.FontMainHeightLabel.setText(
|
||||||
translate('AmendThemeForm', 'Height:'))
|
translate('OpenLP.AmendThemeForm', 'Height:'))
|
||||||
self.FontMainXSpinBox.setSuffix(translate('AmendThemeForm', 'px'))
|
self.FontMainXSpinBox.setSuffix(
|
||||||
self.FontMainYSpinBox.setSuffix(translate('AmendThemeForm', 'px'))
|
translate('OpenLP.AmendThemeForm', 'px'))
|
||||||
self.FontMainWidthSpinBox.setSuffix(translate('AmendThemeForm', 'px'))
|
self.FontMainYSpinBox.setSuffix(
|
||||||
self.FontMainHeightSpinBox.setSuffix(translate('AmendThemeForm', 'px'))
|
translate('OpenLP.AmendThemeForm', 'px'))
|
||||||
|
self.FontMainWidthSpinBox.setSuffix(
|
||||||
|
translate('OpenLP.AmendThemeForm', 'px'))
|
||||||
|
self.FontMainHeightSpinBox.setSuffix(
|
||||||
|
translate('OpenLP.AmendThemeForm', 'px'))
|
||||||
self.ThemeTabWidget.setTabText(
|
self.ThemeTabWidget.setTabText(
|
||||||
self.ThemeTabWidget.indexOf(self.FontMainTab),
|
self.ThemeTabWidget.indexOf(self.FontMainTab),
|
||||||
translate('AmendThemeForm', '&Main Font'))
|
translate('OpenLP.AmendThemeForm', '&Main Font'))
|
||||||
self.FooterFontGroupBox.setTitle(
|
self.FooterFontGroupBox.setTitle(
|
||||||
translate('AmendThemeForm', 'Footer Font'))
|
translate('OpenLP.AmendThemeForm', 'Footer Font'))
|
||||||
self.FontFooterLabel.setText(translate('AmendThemeForm', 'Font:'))
|
self.FontFooterLabel.setText(
|
||||||
|
translate('OpenLP.AmendThemeForm', 'Font:'))
|
||||||
self.FontFooterColorLabel.setText(
|
self.FontFooterColorLabel.setText(
|
||||||
translate('AmendThemeForm', 'Color:'))
|
translate('OpenLP.AmendThemeForm', 'Color:'))
|
||||||
self.FontFooterSizeLabel.setText(translate('AmendThemeForm', 'Size:'))
|
self.FontFooterSizeLabel.setText(
|
||||||
self.FontFooterSizeSpinBox.setSuffix(translate('AmendThemeForm', 'pt'))
|
translate('OpenLP.AmendThemeForm', 'Size:'))
|
||||||
|
self.FontFooterSizeSpinBox.setSuffix(
|
||||||
|
translate('OpenLP.AmendThemeForm', 'pt'))
|
||||||
self.FontFooterWeightComboBox.setItemText(0,
|
self.FontFooterWeightComboBox.setItemText(0,
|
||||||
translate('AmendThemeForm', 'Normal'))
|
translate('OpenLP.AmendThemeForm', 'Normal'))
|
||||||
self.FontFooterWeightComboBox.setItemText(1,
|
self.FontFooterWeightComboBox.setItemText(1,
|
||||||
translate('AmendThemeForm', 'Bold'))
|
translate('OpenLP.AmendThemeForm', 'Bold'))
|
||||||
self.FontFooterWeightComboBox.setItemText(2,
|
self.FontFooterWeightComboBox.setItemText(2,
|
||||||
translate('AmendThemeForm', 'Italics'))
|
translate('OpenLP.AmendThemeForm', 'Italics'))
|
||||||
self.FontFooterWeightComboBox.setItemText(3,
|
self.FontFooterWeightComboBox.setItemText(3,
|
||||||
translate('AmendThemeForm', 'Bold/Italics'))
|
translate('OpenLP.AmendThemeForm', 'Bold/Italics'))
|
||||||
self.FontFooterWeightLabel.setText(
|
self.FontFooterWeightLabel.setText(
|
||||||
translate('AmendThemeForm', 'Style:'))
|
translate('OpenLP.AmendThemeForm', 'Style:'))
|
||||||
self.LocationFooterGroupBox.setTitle(
|
self.LocationFooterGroupBox.setTitle(
|
||||||
translate('AmendThemeForm', 'Display Location'))
|
translate('OpenLP.AmendThemeForm', 'Display Location'))
|
||||||
self.FontFooterDefaultLabel.setText(
|
self.FontFooterDefaultLabel.setText(
|
||||||
translate('AmendThemeForm', 'Use default location:'))
|
translate('OpenLP.AmendThemeForm', 'Use default location'))
|
||||||
self.FontFooterXLabel.setText(
|
self.FontFooterXLabel.setText(
|
||||||
translate('AmendThemeForm', 'X position:'))
|
translate('OpenLP.AmendThemeForm', 'X position:'))
|
||||||
self.FontFooterYLabel.setText(
|
self.FontFooterYLabel.setText(
|
||||||
translate('AmendThemeForm', 'Y position:'))
|
translate('OpenLP.AmendThemeForm', 'Y position:'))
|
||||||
self.FontFooterWidthLabel.setText(
|
self.FontFooterWidthLabel.setText(
|
||||||
translate('AmendThemeForm', 'Width:'))
|
translate('OpenLP.AmendThemeForm', 'Width:'))
|
||||||
self.FontFooterHeightLabel.setText(
|
self.FontFooterHeightLabel.setText(
|
||||||
translate('AmendThemeForm', 'Height:'))
|
translate('OpenLP.AmendThemeForm', 'Height:'))
|
||||||
self.FontFooterXSpinBox.setSuffix(translate('AmendThemeForm', 'px'))
|
self.FontFooterXSpinBox.setSuffix(
|
||||||
self.FontFooterYSpinBox.setSuffix(translate('AmendThemeForm', 'px'))
|
translate('OpenLP.AmendThemeForm', 'px'))
|
||||||
self.FontFooterWidthSpinBox.setSuffix(translate('AmendThemeForm', 'px'))
|
self.FontFooterYSpinBox.setSuffix(
|
||||||
|
translate('OpenLP.AmendThemeForm', 'px'))
|
||||||
|
self.FontFooterWidthSpinBox.setSuffix(
|
||||||
|
translate('OpenLP.AmendThemeForm', 'px'))
|
||||||
self.FontFooterHeightSpinBox.setSuffix(
|
self.FontFooterHeightSpinBox.setSuffix(
|
||||||
translate('AmendThemeForm', 'px'))
|
translate('OpenLP.AmendThemeForm', 'px'))
|
||||||
self.ThemeTabWidget.setTabText(
|
self.ThemeTabWidget.setTabText(
|
||||||
self.ThemeTabWidget.indexOf(self.FontFooterTab),
|
self.ThemeTabWidget.indexOf(self.FontFooterTab),
|
||||||
translate('AmendThemeForm', '&Footer Font'))
|
translate('OpenLP.AmendThemeForm', '&Footer Font'))
|
||||||
self.OutlineGroupBox.setTitle(translate('AmendThemeForm', 'Outline'))
|
self.OutlineGroupBox.setTitle(
|
||||||
|
translate('OpenLP.AmendThemeForm', 'Outline'))
|
||||||
self.OutlineSpinBoxLabel.setText(
|
self.OutlineSpinBoxLabel.setText(
|
||||||
translate('AmendThemeForm', 'Outline size:'))
|
translate('OpenLP.AmendThemeForm', 'Outline size:'))
|
||||||
self.OutlineSpinBox.setSuffix(translate('AmendThemeForm', 'px'))
|
self.OutlineSpinBox.setSuffix(
|
||||||
|
translate('OpenLP.AmendThemeForm', 'px'))
|
||||||
self.OutlineColorLabel.setText(
|
self.OutlineColorLabel.setText(
|
||||||
translate('AmendThemeForm', 'Outline color:'))
|
translate('OpenLP.AmendThemeForm', 'Outline color:'))
|
||||||
self.OutlineEnabledLabel.setText(
|
self.OutlineEnabledLabel.setText(
|
||||||
translate('AmendThemeForm', 'Show outline:'))
|
translate('OpenLP.AmendThemeForm', 'Show outline:'))
|
||||||
self.ShadowGroupBox.setTitle(translate('AmendThemeForm', 'Shadow'))
|
self.ShadowGroupBox.setTitle(
|
||||||
|
translate('OpenLP.AmendThemeForm', 'Shadow'))
|
||||||
self.ShadowSpinBoxLabel.setText(
|
self.ShadowSpinBoxLabel.setText(
|
||||||
translate('AmendThemeForm', 'Shadow size:'))
|
translate('OpenLP.AmendThemeForm', 'Shadow size:'))
|
||||||
self.ShadowSpinBox.setSuffix(translate('AmendThemeForm', 'px'))
|
self.ShadowSpinBox.setSuffix(
|
||||||
|
translate('OpenLP.AmendThemeForm', 'px'))
|
||||||
self.ShadowColorLabel.setText(
|
self.ShadowColorLabel.setText(
|
||||||
translate('AmendThemeForm', 'Shadow color:'))
|
translate('OpenLP.AmendThemeForm', 'Shadow color:'))
|
||||||
self.ShadowEnabledLabel.setText(
|
self.ShadowEnabledLabel.setText(
|
||||||
translate('AmendThemeForm', 'Show shadow:'))
|
translate('OpenLP.AmendThemeForm', 'Show shadow:'))
|
||||||
self.AlignmentGroupBox.setTitle(
|
self.AlignmentGroupBox.setTitle(
|
||||||
translate('AmendThemeForm', 'Alignment'))
|
translate('OpenLP.AmendThemeForm', 'Alignment'))
|
||||||
self.HorizontalLabel.setText(
|
self.HorizontalLabel.setText(
|
||||||
translate('AmendThemeForm', 'Horizontal align:'))
|
translate('OpenLP.AmendThemeForm', 'Horizontal align:'))
|
||||||
self.HorizontalComboBox.setItemText(0,
|
self.HorizontalComboBox.setItemText(0,
|
||||||
translate('AmendThemeForm', 'Left'))
|
translate('OpenLP.AmendThemeForm', 'Left'))
|
||||||
self.HorizontalComboBox.setItemText(1,
|
self.HorizontalComboBox.setItemText(1,
|
||||||
translate('AmendThemeForm', 'Right'))
|
translate('OpenLP.AmendThemeForm', 'Right'))
|
||||||
self.HorizontalComboBox.setItemText(2,
|
self.HorizontalComboBox.setItemText(2,
|
||||||
translate('AmendThemeForm', 'Center'))
|
translate('OpenLP.AmendThemeForm', 'Center'))
|
||||||
self.VerticalLabel.setText(
|
self.VerticalLabel.setText(
|
||||||
translate('AmendThemeForm', 'Vertical align:'))
|
translate('OpenLP.AmendThemeForm', 'Vertical align:'))
|
||||||
self.VerticalComboBox.setItemText(0,
|
self.VerticalComboBox.setItemText(0,
|
||||||
translate('AmendThemeForm', 'Top'))
|
translate('OpenLP.AmendThemeForm', 'Top'))
|
||||||
self.VerticalComboBox.setItemText(1,
|
self.VerticalComboBox.setItemText(1,
|
||||||
translate('AmendThemeForm', 'Middle'))
|
translate('OpenLP.AmendThemeForm', 'Middle'))
|
||||||
self.VerticalComboBox.setItemText(2,
|
self.VerticalComboBox.setItemText(2,
|
||||||
translate('AmendThemeForm', 'Bottom'))
|
translate('OpenLP.AmendThemeForm', 'Bottom'))
|
||||||
self.TransitionGroupBox.setTitle(
|
self.TransitionGroupBox.setTitle(
|
||||||
translate('AmendThemeForm', 'Slide Transition'))
|
translate('OpenLP.AmendThemeForm', 'Slide Transition'))
|
||||||
self.SlideTransitionCheckBoxLabel.setText(
|
self.SlideTransitionCheckBoxLabel.setText(
|
||||||
translate('AmendThemeForm', 'Transition active:'))
|
translate('OpenLP.AmendThemeForm', 'Transition active'))
|
||||||
self.ThemeTabWidget.setTabText(
|
self.ThemeTabWidget.setTabText(
|
||||||
self.ThemeTabWidget.indexOf(self.OtherOptionsTab),
|
self.ThemeTabWidget.indexOf(self.OtherOptionsTab),
|
||||||
translate('AmendThemeForm', '&Other Options'))
|
translate('OpenLP.AmendThemeForm', '&Other Options'))
|
||||||
self.PreviewGroupBox.setTitle(translate('AmendThemeForm', 'Preview'))
|
self.PreviewGroupBox.setTitle(
|
||||||
|
translate('OpenLP.AmendThemeForm', 'Preview'))
|
||||||
|
|
||||||
|
@ -219,9 +219,9 @@ class AmendThemeForm(QtGui.QDialog, Ui_AmendThemeDialog):
|
|||||||
def onImageToolButtonClicked(self):
|
def onImageToolButtonClicked(self):
|
||||||
images_filter = get_images_filter()
|
images_filter = get_images_filter()
|
||||||
images_filter = '%s;;%s (*.*) (*)' % (images_filter,
|
images_filter = '%s;;%s (*.*) (*)' % (images_filter,
|
||||||
translate('AmendThemeForm', 'All Files'))
|
translate('OpenLP.AmendThemeForm', 'All Files'))
|
||||||
filename = QtGui.QFileDialog.getOpenFileName(self,
|
filename = QtGui.QFileDialog.getOpenFileName(self,
|
||||||
translate('AmendThemeForm', 'Select Image'), u'', images_filter)
|
translate('OpenLP.AmendThemeForm', 'Select Image'), u'', images_filter)
|
||||||
if filename:
|
if filename:
|
||||||
self.ImageLineEdit.setText(filename)
|
self.ImageLineEdit.setText(filename)
|
||||||
self.theme.background_filename = filename
|
self.theme.background_filename = filename
|
||||||
@ -658,7 +658,7 @@ class AmendThemeForm(QtGui.QDialog, Ui_AmendThemeDialog):
|
|||||||
self.Color1PushButton.setStyleSheet(
|
self.Color1PushButton.setStyleSheet(
|
||||||
u'background-color: %s' % unicode(theme.background_color))
|
u'background-color: %s' % unicode(theme.background_color))
|
||||||
self.Color1Label.setText(
|
self.Color1Label.setText(
|
||||||
translate('AmendThemeForm', 'Color:'))
|
translate('OpenLP.AmendThemeForm', 'Color:'))
|
||||||
self.Color1Label.setVisible(True)
|
self.Color1Label.setVisible(True)
|
||||||
self.Color1PushButton.setVisible(True)
|
self.Color1PushButton.setVisible(True)
|
||||||
self.Color2Label.setVisible(False)
|
self.Color2Label.setVisible(False)
|
||||||
@ -674,9 +674,9 @@ class AmendThemeForm(QtGui.QDialog, Ui_AmendThemeDialog):
|
|||||||
self.Color2PushButton.setStyleSheet(u'background-color: %s' \
|
self.Color2PushButton.setStyleSheet(u'background-color: %s' \
|
||||||
% unicode(theme.background_endColor))
|
% unicode(theme.background_endColor))
|
||||||
self.Color1Label.setText(
|
self.Color1Label.setText(
|
||||||
translate('AmendThemeForm', 'First color:'))
|
translate('OpenLP.AmendThemeForm', 'First color:'))
|
||||||
self.Color2Label.setText(
|
self.Color2Label.setText(
|
||||||
translate('AmendThemeForm', 'Second color:'))
|
translate('OpenLP.AmendThemeForm', 'Second color:'))
|
||||||
self.Color1Label.setVisible(True)
|
self.Color1Label.setVisible(True)
|
||||||
self.Color1PushButton.setVisible(True)
|
self.Color1PushButton.setVisible(True)
|
||||||
self.Color2Label.setVisible(True)
|
self.Color2Label.setVisible(True)
|
||||||
@ -745,7 +745,7 @@ class AmendThemeForm(QtGui.QDialog, Ui_AmendThemeDialog):
|
|||||||
(self.FontMainHeightSpinBox.value(), metrics.height(),
|
(self.FontMainHeightSpinBox.value(), metrics.height(),
|
||||||
page_length))
|
page_length))
|
||||||
page_length_text = unicode(
|
page_length_text = unicode(
|
||||||
translate('AmendThemeForm', 'Slide height is %s rows.'))
|
translate('OpenLP.AmendThemeForm', 'Slide height is %s rows.'))
|
||||||
self.FontMainLinesPageLabel.setText(page_length_text % page_length)
|
self.FontMainLinesPageLabel.setText(page_length_text % page_length)
|
||||||
frame = self.thememanager.generateImage(self.theme)
|
frame = self.thememanager.generateImage(self.theme)
|
||||||
self.ThemePreview.setPixmap(QtGui.QPixmap.fromImage(frame))
|
self.ThemePreview.setPixmap(QtGui.QPixmap.fromImage(frame))
|
||||||
|
@ -59,7 +59,7 @@ class GeneralTab(SettingsTab):
|
|||||||
Create the user interface for the general settings tab
|
Create the user interface for the general settings tab
|
||||||
"""
|
"""
|
||||||
self.setObjectName(u'GeneralTab')
|
self.setObjectName(u'GeneralTab')
|
||||||
self.tabTitleVisible = translate('GeneralTab', 'General')
|
self.tabTitleVisible = translate('OpenLP.GeneralTab', 'General')
|
||||||
self.GeneralLayout = QtGui.QHBoxLayout(self)
|
self.GeneralLayout = QtGui.QHBoxLayout(self)
|
||||||
self.GeneralLayout.setSpacing(8)
|
self.GeneralLayout.setSpacing(8)
|
||||||
self.GeneralLayout.setMargin(8)
|
self.GeneralLayout.setMargin(8)
|
||||||
@ -286,7 +286,7 @@ class GeneralTab(SettingsTab):
|
|||||||
"""
|
"""
|
||||||
Translate the general settings tab to the currently selected language
|
Translate the general settings tab to the currently selected language
|
||||||
"""
|
"""
|
||||||
self.MonitorGroupBox.setTitle(translate('GeneralTab', 'Monitors'))
|
self.MonitorGroupBox.setTitle(translate('OpenLP.GeneralTab', 'Monitors'))
|
||||||
self.MonitorLabel.setText(translate('OpenLP.GeneralTab',
|
self.MonitorLabel.setText(translate('OpenLP.GeneralTab',
|
||||||
'Select monitor for output display:'))
|
'Select monitor for output display:'))
|
||||||
self.DisplayOnMonitorCheck.setText(
|
self.DisplayOnMonitorCheck.setText(
|
||||||
@ -299,18 +299,20 @@ class GeneralTab(SettingsTab):
|
|||||||
'Automatically open the last service'))
|
'Automatically open the last service'))
|
||||||
self.ShowSplashCheckBox.setText(
|
self.ShowSplashCheckBox.setText(
|
||||||
translate('OpenLP.GeneralTab', 'Show the splash screen'))
|
translate('OpenLP.GeneralTab', 'Show the splash screen'))
|
||||||
self.SettingsGroupBox.setTitle(translate('OpenLP.GeneralTab',
|
self.SettingsGroupBox.setTitle(
|
||||||
'Application Settings'))
|
translate('OpenLP.GeneralTab', 'Application Settings'))
|
||||||
self.SaveCheckServiceCheckBox.setText(translate('OpenLP.GeneralTab',
|
self.SaveCheckServiceCheckBox.setText(translate('OpenLP.GeneralTab',
|
||||||
'Prompt to save Service before starting New'))
|
'Prompt to save before starting a new service'))
|
||||||
self.AutoPreviewCheckBox.setText(translate('OpenLP.GeneralTab',
|
self.AutoPreviewCheckBox.setText(translate('OpenLP.GeneralTab',
|
||||||
'Preview Next Song from Service Manager'))
|
'Automatically preview next item in service'))
|
||||||
self.CCLIGroupBox.setTitle(translate('GeneralTab', 'CCLI Details'))
|
self.CCLIGroupBox.setTitle(
|
||||||
self.NumberLabel.setText(translate('GeneralTab', 'CCLI Number:'))
|
translate('OpenLP.GeneralTab', 'CCLI Details'))
|
||||||
self.UsernameLabel.setText(translate('OpenLP.GeneralTab',
|
self.NumberLabel.setText(
|
||||||
'SongSelect Username:'))
|
translate('OpenLP.GeneralTab', 'CCLI number:'))
|
||||||
|
self.UsernameLabel.setText(
|
||||||
|
translate('OpenLP.GeneralTab', 'SongSelect username:'))
|
||||||
self.PasswordLabel.setText(
|
self.PasswordLabel.setText(
|
||||||
translate('OpenLP.GeneralTab', 'SongSelect Password:'))
|
translate('OpenLP.GeneralTab', 'SongSelect password:'))
|
||||||
# Moved from display tab
|
# Moved from display tab
|
||||||
self.displayGroupBox.setTitle(
|
self.displayGroupBox.setTitle(
|
||||||
translate('OpenLP.GeneralTab', 'Display Position'))
|
translate('OpenLP.GeneralTab', 'Display Position'))
|
||||||
@ -321,14 +323,16 @@ class GeneralTab(SettingsTab):
|
|||||||
self.currentHeightLabel.setText(
|
self.currentHeightLabel.setText(
|
||||||
translate('OpenLP.GeneralTab', 'Height'))
|
translate('OpenLP.GeneralTab', 'Height'))
|
||||||
self.currentHeightValueLabel.setText(u'0')
|
self.currentHeightValueLabel.setText(u'0')
|
||||||
self.currentWidthLabel.setText(translate('OpenLP.GeneralTab', 'Width'))
|
self.currentWidthLabel.setText(
|
||||||
|
translate('OpenLP.GeneralTab', 'Width'))
|
||||||
self.currentWidthValueLabel.setText(u'0')
|
self.currentWidthValueLabel.setText(u'0')
|
||||||
self.overrideCheckBox.setText(translate('OpenLP.GeneralTab',
|
self.overrideCheckBox.setText(translate('OpenLP.GeneralTab',
|
||||||
'Override display position'))
|
'Override display position'))
|
||||||
self.customXLabel.setText(translate('DisplayTab', 'X'))
|
self.customXLabel.setText(translate('OpenLP.GeneralTab', 'X'))
|
||||||
self.customYLabel.setText(translate('DisplayTab', 'Y'))
|
self.customYLabel.setText(translate('OpenLP.GeneralTab', 'Y'))
|
||||||
self.customHeightLabel.setText(translate('DisplayTab', 'Height'))
|
self.customHeightLabel.setText(
|
||||||
self.customWidthLabel.setText(translate('DisplayTab', 'Width'))
|
translate('OpenLP.GeneralTab', 'Height'))
|
||||||
|
self.customWidthLabel.setText(translate('OpenLP.GeneralTab', 'Width'))
|
||||||
|
|
||||||
def load(self):
|
def load(self):
|
||||||
"""
|
"""
|
||||||
@ -337,11 +341,11 @@ class GeneralTab(SettingsTab):
|
|||||||
settings = QtCore.QSettings()
|
settings = QtCore.QSettings()
|
||||||
settings.beginGroup(self.settingsSection)
|
settings.beginGroup(self.settingsSection)
|
||||||
for screen in self.screens.screen_list:
|
for screen in self.screens.screen_list:
|
||||||
screen_name = u'%s %d' % (translate('GeneralTab', 'Screen'),
|
screen_name = u'%s %d' % (translate('OpenLP.GeneralTab', 'Screen'),
|
||||||
screen[u'number'] + 1)
|
screen[u'number'] + 1)
|
||||||
if screen[u'primary']:
|
if screen[u'primary']:
|
||||||
screen_name = u'%s (%s)' % (screen_name,
|
screen_name = u'%s (%s)' % (screen_name,
|
||||||
translate('GeneralTab', 'primary'))
|
translate('OpenLP.GeneralTab', 'primary'))
|
||||||
self.MonitorComboBox.addItem(screen_name)
|
self.MonitorComboBox.addItem(screen_name)
|
||||||
self.NumberEdit.setText(unicode(settings.value(
|
self.NumberEdit.setText(unicode(settings.value(
|
||||||
u'ccli number', QtCore.QVariant(u'')).toString()))
|
u'ccli number', QtCore.QVariant(u'')).toString()))
|
||||||
@ -469,3 +473,4 @@ class GeneralTab(SettingsTab):
|
|||||||
self.customHeightValueEdit.setEnabled(checked)
|
self.customHeightValueEdit.setEnabled(checked)
|
||||||
self.customWidthValueEdit.setEnabled(checked)
|
self.customWidthValueEdit.setEnabled(checked)
|
||||||
self.override_changed = True
|
self.override_changed = True
|
||||||
|
|
||||||
|
@ -385,127 +385,149 @@ class Ui_MainWindow(object):
|
|||||||
"""
|
"""
|
||||||
Set up the translation system
|
Set up the translation system
|
||||||
"""
|
"""
|
||||||
MainWindow.mainTitle = translate('MainWindow', 'OpenLP 2.0')
|
MainWindow.mainTitle = translate('OpenLP.MainWindow', 'OpenLP 2.0')
|
||||||
MainWindow.language = translate('MainWindow', 'English')
|
MainWindow.language = translate('OpenLP.MainWindow', 'English')
|
||||||
MainWindow.setWindowTitle(MainWindow.mainTitle)
|
MainWindow.setWindowTitle(MainWindow.mainTitle)
|
||||||
self.FileMenu.setTitle(translate('MainWindow', '&File'))
|
self.FileMenu.setTitle(translate('OpenLP.MainWindow', '&File'))
|
||||||
self.FileImportMenu.setTitle(translate('MainWindow', '&Import'))
|
self.FileImportMenu.setTitle(translate('OpenLP.MainWindow', '&Import'))
|
||||||
self.FileExportMenu.setTitle(translate('MainWindow', '&Export'))
|
self.FileExportMenu.setTitle(translate('OpenLP.MainWindow', '&Export'))
|
||||||
self.ViewMenu.setTitle(translate('MainWindow', '&View'))
|
self.ViewMenu.setTitle(translate('OpenLP.MainWindow', '&View'))
|
||||||
self.ViewModeMenu.setTitle(translate('MainWindow', 'M&ode'))
|
self.ViewModeMenu.setTitle(translate('OpenLP.MainWindow', 'M&ode'))
|
||||||
self.ToolsMenu.setTitle(translate('MainWindow', '&Tools'))
|
self.ToolsMenu.setTitle(translate('OpenLP.MainWindow', '&Tools'))
|
||||||
self.SettingsMenu.setTitle(translate('MainWindow', '&Settings'))
|
self.SettingsMenu.setTitle(translate('OpenLP.MainWindow', '&Settings'))
|
||||||
self.SettingsLanguageMenu.setTitle(translate('MainWindow',
|
self.SettingsLanguageMenu.setTitle(translate('OpenLP.MainWindow',
|
||||||
'&Language'))
|
'&Language'))
|
||||||
self.HelpMenu.setTitle(translate('MainWindow', '&Help'))
|
self.HelpMenu.setTitle(translate('OpenLP.MainWindow', '&Help'))
|
||||||
self.MediaManagerDock.setWindowTitle(
|
self.MediaManagerDock.setWindowTitle(
|
||||||
translate('MainWindow', 'Media Manager'))
|
translate('OpenLP.MainWindow', 'Media Manager'))
|
||||||
self.ServiceManagerDock.setWindowTitle(
|
self.ServiceManagerDock.setWindowTitle(
|
||||||
translate('MainWindow', 'Service Manager'))
|
translate('OpenLP.MainWindow', 'Service Manager'))
|
||||||
self.ThemeManagerDock.setWindowTitle(
|
self.ThemeManagerDock.setWindowTitle(
|
||||||
translate('MainWindow', 'Theme Manager'))
|
translate('OpenLP.MainWindow', 'Theme Manager'))
|
||||||
self.FileNewItem.setText(translate('MainWindow', '&New'))
|
self.FileNewItem.setText(translate('OpenLP.MainWindow', '&New'))
|
||||||
self.FileNewItem.setToolTip(translate('MainWindow', 'New Service'))
|
self.FileNewItem.setToolTip(
|
||||||
|
translate('OpenLP.MainWindow', 'New Service'))
|
||||||
self.FileNewItem.setStatusTip(
|
self.FileNewItem.setStatusTip(
|
||||||
translate('MainWindow', 'Create a new service.'))
|
translate('OpenLP.MainWindow', 'Create a new service.'))
|
||||||
self.FileNewItem.setShortcut(translate('MainWindow', 'Ctrl+N'))
|
self.FileNewItem.setShortcut(translate('OpenLP.MainWindow', 'Ctrl+N'))
|
||||||
self.FileOpenItem.setText(translate('MainWindow', '&Open'))
|
self.FileOpenItem.setText(translate('OpenLP.MainWindow', '&Open'))
|
||||||
self.FileOpenItem.setToolTip(translate('MainWindow', 'Open Service'))
|
self.FileOpenItem.setToolTip(
|
||||||
|
translate('OpenLP.MainWindow', 'Open Service'))
|
||||||
self.FileOpenItem.setStatusTip(
|
self.FileOpenItem.setStatusTip(
|
||||||
translate('MainWindow', 'Open an existing service.'))
|
translate('OpenLP.MainWindow', 'Open an existing service.'))
|
||||||
self.FileOpenItem.setShortcut(translate('MainWindow', 'Ctrl+O'))
|
self.FileOpenItem.setShortcut(translate('OpenLP.MainWindow', 'Ctrl+O'))
|
||||||
self.FileSaveItem.setText(translate('MainWindow', '&Save'))
|
self.FileSaveItem.setText(translate('OpenLP.MainWindow', '&Save'))
|
||||||
self.FileSaveItem.setToolTip(translate('MainWindow', 'Save Service'))
|
self.FileSaveItem.setToolTip(
|
||||||
|
translate('OpenLP.MainWindow', 'Save Service'))
|
||||||
self.FileSaveItem.setStatusTip(
|
self.FileSaveItem.setStatusTip(
|
||||||
translate('MainWindow', 'Save the current service to disk.'))
|
translate('OpenLP.MainWindow', 'Save the current service to disk.'))
|
||||||
self.FileSaveItem.setShortcut(translate('MainWindow', 'Ctrl+S'))
|
self.FileSaveItem.setShortcut(translate('OpenLP.MainWindow', 'Ctrl+S'))
|
||||||
self.FileSaveAsItem.setText(translate('MainWindow', 'Save &As...'))
|
self.FileSaveAsItem.setText(
|
||||||
|
translate('OpenLP.MainWindow', 'Save &As...'))
|
||||||
self.FileSaveAsItem.setToolTip(
|
self.FileSaveAsItem.setToolTip(
|
||||||
translate('MainWindow', 'Save Service As'))
|
translate('OpenLP.MainWindow', 'Save Service As'))
|
||||||
self.FileSaveAsItem.setStatusTip(translate('MainWindow',
|
self.FileSaveAsItem.setStatusTip(translate('OpenLP.MainWindow',
|
||||||
'Save the current service under a new name.'))
|
'Save the current service under a new name.'))
|
||||||
self.FileSaveAsItem.setShortcut(translate('MainWindow', 'Ctrl+Shift+S'))
|
self.FileSaveAsItem.setShortcut(
|
||||||
self.FileExitItem.setText(translate('MainWindow', 'E&xit'))
|
translate('OpenLP.MainWindow', 'Ctrl+Shift+S'))
|
||||||
self.FileExitItem.setStatusTip(translate('MainWindow', 'Quit OpenLP'))
|
self.FileExitItem.setText(
|
||||||
self.FileExitItem.setShortcut(translate('MainWindow', 'Alt+F4'))
|
translate('OpenLP.MainWindow', 'E&xit'))
|
||||||
self.ImportThemeItem.setText(translate('MainWindow', '&Theme'))
|
self.FileExitItem.setStatusTip(
|
||||||
self.ImportLanguageItem.setText(translate('MainWindow', '&Language'))
|
translate('OpenLP.MainWindow', 'Quit OpenLP'))
|
||||||
self.ExportThemeItem.setText(translate('MainWindow', '&Theme'))
|
self.FileExitItem.setShortcut(
|
||||||
self.ExportLanguageItem.setText(translate('MainWindow', '&Language'))
|
translate('OpenLP.MainWindow', 'Alt+F4'))
|
||||||
self.SettingsConfigureItem.setText(translate('MainWindow',
|
self.ImportThemeItem.setText(
|
||||||
'&Configure OpenLP...'))
|
translate('OpenLP.MainWindow', '&Theme'))
|
||||||
|
self.ImportLanguageItem.setText(
|
||||||
|
translate('OpenLP.MainWindow', '&Language'))
|
||||||
|
self.ExportThemeItem.setText(
|
||||||
|
translate('OpenLP.MainWindow', '&Theme'))
|
||||||
|
self.ExportLanguageItem.setText(
|
||||||
|
translate('OpenLP.MainWindow', '&Language'))
|
||||||
|
self.SettingsConfigureItem.setText(
|
||||||
|
translate('OpenLP.MainWindow', '&Configure OpenLP...'))
|
||||||
self.ViewMediaManagerItem.setText(
|
self.ViewMediaManagerItem.setText(
|
||||||
translate('MainWindow', '&Media Manager'))
|
translate('OpenLP.MainWindow', '&Media Manager'))
|
||||||
self.ViewMediaManagerItem.setToolTip(
|
self.ViewMediaManagerItem.setToolTip(
|
||||||
translate('MainWindow', 'Toggle Media Manager'))
|
translate('OpenLP.MainWindow', 'Toggle Media Manager'))
|
||||||
self.ViewMediaManagerItem.setStatusTip(translate('MainWindow',
|
self.ViewMediaManagerItem.setStatusTip(translate('OpenLP.MainWindow',
|
||||||
'Toggle the visibility of the media manager.'))
|
'Toggle the visibility of the media manager.'))
|
||||||
self.ViewMediaManagerItem.setShortcut(translate('MainWindow', 'F8'))
|
self.ViewMediaManagerItem.setShortcut(
|
||||||
|
translate('OpenLP.MainWindow', 'F8'))
|
||||||
self.ViewThemeManagerItem.setText(
|
self.ViewThemeManagerItem.setText(
|
||||||
translate('MainWindow', '&Theme Manager'))
|
translate('OpenLP.MainWindow', '&Theme Manager'))
|
||||||
self.ViewThemeManagerItem.setToolTip(
|
self.ViewThemeManagerItem.setToolTip(
|
||||||
translate('MainWindow', 'Toggle Theme Manager'))
|
translate('OpenLP.MainWindow', 'Toggle Theme Manager'))
|
||||||
self.ViewThemeManagerItem.setStatusTip(translate('MainWindow',
|
self.ViewThemeManagerItem.setStatusTip(translate('OpenLP.MainWindow',
|
||||||
'Toggle the visibility of the theme manager.'))
|
'Toggle the visibility of the theme manager.'))
|
||||||
self.ViewThemeManagerItem.setShortcut(translate('MainWindow', 'F10'))
|
self.ViewThemeManagerItem.setShortcut(
|
||||||
|
translate('OpenLP.MainWindow', 'F10'))
|
||||||
self.ViewServiceManagerItem.setText(
|
self.ViewServiceManagerItem.setText(
|
||||||
translate('MainWindow', '&Service Manager'))
|
translate('OpenLP.MainWindow', '&Service Manager'))
|
||||||
self.ViewServiceManagerItem.setToolTip(
|
self.ViewServiceManagerItem.setToolTip(
|
||||||
translate('MainWindow', 'Toggle Service Manager'))
|
translate('OpenLP.MainWindow', 'Toggle Service Manager'))
|
||||||
self.ViewServiceManagerItem.setStatusTip(translate('MainWindow',
|
self.ViewServiceManagerItem.setStatusTip(translate('OpenLP.MainWindow',
|
||||||
'Toggle the visibility of the service manager.'))
|
'Toggle the visibility of the service manager.'))
|
||||||
self.ViewServiceManagerItem.setShortcut(translate('MainWindow', 'F9'))
|
self.ViewServiceManagerItem.setShortcut(
|
||||||
|
translate('OpenLP.MainWindow', 'F9'))
|
||||||
self.ViewPreviewPanel.setText(
|
self.ViewPreviewPanel.setText(
|
||||||
translate('MainWindow', '&Preview Panel'))
|
translate('OpenLP.MainWindow', '&Preview Panel'))
|
||||||
self.ViewPreviewPanel.setToolTip(
|
self.ViewPreviewPanel.setToolTip(
|
||||||
translate('MainWindow', 'Toggle Preview Panel'))
|
translate('OpenLP.MainWindow', 'Toggle Preview Panel'))
|
||||||
self.ViewPreviewPanel.setStatusTip(translate('MainWindow',
|
self.ViewPreviewPanel.setStatusTip(translate('OpenLP.MainWindow',
|
||||||
'Toggle the visibility of the preview panel.'))
|
'Toggle the visibility of the preview panel.'))
|
||||||
self.ViewPreviewPanel.setShortcut(translate('MainWindow', 'F11'))
|
self.ViewPreviewPanel.setShortcut(
|
||||||
|
translate('OpenLP.MainWindow', 'F11'))
|
||||||
self.ViewLivePanel.setText(
|
self.ViewLivePanel.setText(
|
||||||
translate('MainWindow', '&Live Panel'))
|
translate('OpenLP.MainWindow', '&Live Panel'))
|
||||||
self.ViewLivePanel.setToolTip(
|
self.ViewLivePanel.setToolTip(
|
||||||
translate('MainWindow', 'Toggle Live Panel'))
|
translate('OpenLP.MainWindow', 'Toggle Live Panel'))
|
||||||
self.ViewLivePanel.setStatusTip(translate('MainWindow',
|
self.ViewLivePanel.setStatusTip(translate('OpenLP.MainWindow',
|
||||||
'Toggle the visibility of the live panel.'))
|
'Toggle the visibility of the live panel.'))
|
||||||
self.ViewLivePanel.setShortcut(translate('MainWindow', 'F12'))
|
self.ViewLivePanel.setShortcut(
|
||||||
self.SettingsPluginListItem.setText(translate('MainWindow',
|
translate('OpenLP.MainWindow', 'F12'))
|
||||||
|
self.SettingsPluginListItem.setText(translate('OpenLP.MainWindow',
|
||||||
'&Plugin List'))
|
'&Plugin List'))
|
||||||
self.SettingsPluginListItem.setStatusTip(
|
self.SettingsPluginListItem.setStatusTip(
|
||||||
translate('MainWindow', 'List the Plugins'))
|
translate('OpenLP.MainWindow', 'List the Plugins'))
|
||||||
self.SettingsPluginListItem.setShortcut(
|
self.SettingsPluginListItem.setShortcut(
|
||||||
translate('MainWindow', 'Alt+F7'))
|
translate('OpenLP.MainWindow', 'Alt+F7'))
|
||||||
self.HelpDocumentationItem.setText(
|
self.HelpDocumentationItem.setText(
|
||||||
translate('MainWindow', '&User Guide'))
|
translate('OpenLP.MainWindow', '&User Guide'))
|
||||||
self.HelpAboutItem.setText(translate('MainWindow', '&About'))
|
self.HelpAboutItem.setText(translate('OpenLP.MainWindow', '&About'))
|
||||||
self.HelpAboutItem.setStatusTip(
|
self.HelpAboutItem.setStatusTip(
|
||||||
translate('MainWindow', 'More information about OpenLP'))
|
translate('OpenLP.MainWindow', 'More information about OpenLP'))
|
||||||
self.HelpAboutItem.setShortcut(translate('MainWindow', 'Ctrl+F1'))
|
self.HelpAboutItem.setShortcut(translate('OpenLP.MainWindow', 'Ctrl+F1'))
|
||||||
self.HelpOnlineHelpItem.setText(
|
self.HelpOnlineHelpItem.setText(
|
||||||
translate('MainWindow', '&Online Help'))
|
translate('OpenLP.MainWindow', '&Online Help'))
|
||||||
self.HelpWebSiteItem.setText(translate('MainWindow', '&Web Site'))
|
self.HelpWebSiteItem.setText(
|
||||||
self.AutoLanguageItem.setText(translate('MainWindow', '&Auto Detect'))
|
translate('OpenLP.MainWindow', '&Web Site'))
|
||||||
|
self.AutoLanguageItem.setText(
|
||||||
|
translate('OpenLP.MainWindow', '&Auto Detect'))
|
||||||
self.AutoLanguageItem.setStatusTip(
|
self.AutoLanguageItem.setStatusTip(
|
||||||
translate('MainWindow', 'Use the system language, if available.'))
|
translate('OpenLP.MainWindow',
|
||||||
|
'Use the system language, if available.'))
|
||||||
for item in self.LanguageGroup.actions():
|
for item in self.LanguageGroup.actions():
|
||||||
item.setText(item.objectName())
|
item.setText(item.objectName())
|
||||||
item.setStatusTip(unicode(translate('MainWindow',
|
item.setStatusTip(unicode(translate('OpenLP.MainWindow',
|
||||||
'Set the interface language to %s')) % item.objectName())
|
'Set the interface language to %s')) % item.objectName())
|
||||||
self.ToolsAddToolItem.setText(translate('MainWindow', 'Add &Tool...'))
|
self.ToolsAddToolItem.setText(
|
||||||
|
translate('OpenLP.MainWindow', 'Add &Tool...'))
|
||||||
self.ToolsAddToolItem.setStatusTip(
|
self.ToolsAddToolItem.setStatusTip(
|
||||||
translate('MainWindow',
|
translate('OpenLP.MainWindow',
|
||||||
'Add an application to the list of tools.'))
|
'Add an application to the list of tools.'))
|
||||||
self.ModeDefaultItem.setText(translate('MainWindow', '&Default'))
|
self.ModeDefaultItem.setText(
|
||||||
|
translate('OpenLP.MainWindow', '&Default'))
|
||||||
self.ModeDefaultItem.setStatusTip(
|
self.ModeDefaultItem.setStatusTip(
|
||||||
translate('MainWindow',
|
translate('OpenLP.MainWindow',
|
||||||
'Set the view mode back to the default.'))
|
'Set the view mode back to the default.'))
|
||||||
self.ModeSetupItem.setText(translate('MainWindow', '&Setup'))
|
self.ModeSetupItem.setText(translate('OpenLP.MainWindow', '&Setup'))
|
||||||
self.ModeSetupItem.setStatusTip(
|
self.ModeSetupItem.setStatusTip(
|
||||||
translate('MainWindow',
|
translate('OpenLP.MainWindow',
|
||||||
'Set the view mode to Setup.'))
|
'Set the view mode to Setup.'))
|
||||||
self.ModeLiveItem.setText(translate('MainWindow', '&Live'))
|
self.ModeLiveItem.setText(translate('OpenLP.MainWindow', '&Live'))
|
||||||
self.ModeLiveItem.setStatusTip(
|
self.ModeLiveItem.setStatusTip(
|
||||||
translate('MainWindow',
|
translate('OpenLP.MainWindow',
|
||||||
'Set the view mode to Live.'))
|
'Set the view mode to Live.'))
|
||||||
|
|
||||||
|
|
||||||
@ -681,12 +703,12 @@ class MainWindow(QtGui.QMainWindow, Ui_MainWindow):
|
|||||||
Triggered by delay thread.
|
Triggered by delay thread.
|
||||||
"""
|
"""
|
||||||
app_version = self.applicationVersion[u'full']
|
app_version = self.applicationVersion[u'full']
|
||||||
version_text = unicode(translate('MainWindow', 'Version %s of OpenLP '
|
version_text = unicode(translate('OpenLP.MainWindow',
|
||||||
'is now available for download (you are currently running version '
|
'Version %s of OpenLP is now available for download (you are '
|
||||||
' %s). \n\nYou can download the latest version from '
|
'currently running version %s). \n\nYou can download the latest '
|
||||||
'http://openlp.org'))
|
'version from <a href="http://openlp.org/">http://openlp.org/</a>.'))
|
||||||
QtGui.QMessageBox.question(self,
|
QtGui.QMessageBox.question(self,
|
||||||
translate('MainWindow', 'OpenLP Version Updated'),
|
translate('OpenLP.MainWindow', 'OpenLP Version Updated'),
|
||||||
version_text % (version, app_version),
|
version_text % (version, app_version),
|
||||||
QtGui.QMessageBox.StandardButtons(QtGui.QMessageBox.Ok),
|
QtGui.QMessageBox.StandardButtons(QtGui.QMessageBox.Ok),
|
||||||
QtGui.QMessageBox.Ok)
|
QtGui.QMessageBox.Ok)
|
||||||
@ -718,8 +740,9 @@ class MainWindow(QtGui.QMainWindow, Ui_MainWindow):
|
|||||||
if settings.value(u'blank warning',
|
if settings.value(u'blank warning',
|
||||||
QtCore.QVariant(False)).toBool():
|
QtCore.QVariant(False)).toBool():
|
||||||
QtGui.QMessageBox.question(self,
|
QtGui.QMessageBox.question(self,
|
||||||
translate('MainWindow', 'OpenLP Main Display Blanked'),
|
translate('OpenLP.MainWindow',
|
||||||
translate('MainWindow',
|
'OpenLP Main Display Blanked'),
|
||||||
|
translate('OpenLP.MainWindow',
|
||||||
'The Main Display has been blanked out'))
|
'The Main Display has been blanked out'))
|
||||||
settings.endGroup()
|
settings.endGroup()
|
||||||
|
|
||||||
@ -803,8 +826,8 @@ class MainWindow(QtGui.QMainWindow, Ui_MainWindow):
|
|||||||
"""
|
"""
|
||||||
if self.serviceNotSaved:
|
if self.serviceNotSaved:
|
||||||
ret = QtGui.QMessageBox.question(self,
|
ret = QtGui.QMessageBox.question(self,
|
||||||
translate('MainWindow', 'Save Changes to Service?'),
|
translate('OpenLP.MainWindow', 'Save Changes to Service?'),
|
||||||
translate('MainWindow', 'Your service has changed. '
|
translate('OpenLP.MainWindow', 'Your service has changed. '
|
||||||
'Do you want to save those changes?'),
|
'Do you want to save those changes?'),
|
||||||
QtGui.QMessageBox.StandardButtons(
|
QtGui.QMessageBox.StandardButtons(
|
||||||
QtGui.QMessageBox.Cancel |
|
QtGui.QMessageBox.Cancel |
|
||||||
@ -869,7 +892,7 @@ class MainWindow(QtGui.QMainWindow, Ui_MainWindow):
|
|||||||
|
|
||||||
def defaultThemeChanged(self, theme):
|
def defaultThemeChanged(self, theme):
|
||||||
self.DefaultThemeLabel.setText(
|
self.DefaultThemeLabel.setText(
|
||||||
unicode(translate('MainWindow', 'Default Theme: %s')) % theme)
|
unicode(translate('OpenLP.MainWindow', 'Default Theme: %s')) % theme)
|
||||||
|
|
||||||
def toggleMediaManager(self, visible):
|
def toggleMediaManager(self, visible):
|
||||||
if self.MediaManagerDock.isVisible() != visible:
|
if self.MediaManagerDock.isVisible() != visible:
|
||||||
|
@ -100,14 +100,19 @@ class Ui_PluginViewDialog(object):
|
|||||||
|
|
||||||
def retranslateUi(self, PluginViewDialog):
|
def retranslateUi(self, PluginViewDialog):
|
||||||
PluginViewDialog.setWindowTitle(
|
PluginViewDialog.setWindowTitle(
|
||||||
translate('PluginForm', 'Plugin List'))
|
translate('OpenLP.PluginForm', 'Plugin List'))
|
||||||
self.PluginInfoGroupBox.setTitle(
|
self.PluginInfoGroupBox.setTitle(
|
||||||
translate('PluginForm', 'Plugin Details'))
|
translate('OpenLP.PluginForm', 'Plugin Details'))
|
||||||
self.VersionLabel.setText(
|
self.VersionLabel.setText(
|
||||||
translate('PluginForm', 'Version:'))
|
translate('OpenLP.PluginForm', 'Version:'))
|
||||||
self.VersionNumberLabel.setText(translate('PluginForm', 'TextLabel'))
|
self.VersionNumberLabel.setText(
|
||||||
self.AboutLabel.setText(translate('PluginForm', 'About:'))
|
translate('OpenLP.PluginForm', 'TextLabel'))
|
||||||
self.StatusLabel.setText(translate('PluginForm', 'Status:'))
|
self.AboutLabel.setText(
|
||||||
self.StatusComboBox.setItemText(0, translate('PluginForm', 'Active'))
|
translate('OpenLP.PluginForm', 'About:'))
|
||||||
|
self.StatusLabel.setText(
|
||||||
|
translate('OpenLP.PluginForm', 'Status:'))
|
||||||
|
self.StatusComboBox.setItemText(0,
|
||||||
|
translate('OpenLP.PluginForm', 'Active'))
|
||||||
self.StatusComboBox.setItemText(1,
|
self.StatusComboBox.setItemText(1,
|
||||||
translate('PluginForm', 'Inactive'))
|
translate('OpenLP.PluginForm', 'Inactive'))
|
||||||
|
|
||||||
|
@ -63,15 +63,17 @@ class PluginForm(QtGui.QDialog, Ui_PluginViewDialog):
|
|||||||
# sometimes when it's loaded from the config, it isn't cast to int.
|
# sometimes when it's loaded from the config, it isn't cast to int.
|
||||||
plugin.status = int(plugin.status)
|
plugin.status = int(plugin.status)
|
||||||
# Set the little status text in brackets next to the plugin name.
|
# Set the little status text in brackets next to the plugin name.
|
||||||
status_text = unicode(translate('PluginForm', '%s (Inactive)'))
|
status_text = unicode(
|
||||||
|
translate('OpenLP.PluginForm', '%s (Inactive)'))
|
||||||
if plugin.status == PluginStatus.Active:
|
if plugin.status == PluginStatus.Active:
|
||||||
status_text = unicode(translate('PluginForm', '%s (Active)'))
|
status_text = unicode(
|
||||||
|
translate('OpenLP.PluginForm', '%s (Active)'))
|
||||||
elif plugin.status == PluginStatus.Inactive:
|
elif plugin.status == PluginStatus.Inactive:
|
||||||
status_text = unicode(
|
status_text = unicode(
|
||||||
translate('PluginForm', '%s (Inactive)'))
|
translate('OpenLP.PluginForm', '%s (Inactive)'))
|
||||||
elif plugin.status == PluginStatus.Disabled:
|
elif plugin.status == PluginStatus.Disabled:
|
||||||
status_text = unicode(
|
status_text = unicode(
|
||||||
translate('PluginForm', '%s (Disabled)'))
|
translate('OpenLP.PluginForm', '%s (Disabled)'))
|
||||||
item.setText(status_text % plugin.name)
|
item.setText(status_text % plugin.name)
|
||||||
# If the plugin has an icon, set it!
|
# If the plugin has an icon, set it!
|
||||||
if plugin.icon:
|
if plugin.icon:
|
||||||
@ -120,12 +122,17 @@ class PluginForm(QtGui.QDialog, Ui_PluginViewDialog):
|
|||||||
else:
|
else:
|
||||||
self.activePlugin.toggleStatus(PluginStatus.Inactive)
|
self.activePlugin.toggleStatus(PluginStatus.Inactive)
|
||||||
self.activePlugin.finalise()
|
self.activePlugin.finalise()
|
||||||
status_text = 'Inactive'
|
status_text = unicode(
|
||||||
|
translate('OpenLP.PluginForm', '%s (Inactive)'))
|
||||||
if self.activePlugin.status == PluginStatus.Active:
|
if self.activePlugin.status == PluginStatus.Active:
|
||||||
status_text = 'Active'
|
status_text = unicode(
|
||||||
|
translate('OpenLP.PluginForm', '%s (Active)'))
|
||||||
elif self.activePlugin.status == PluginStatus.Inactive:
|
elif self.activePlugin.status == PluginStatus.Inactive:
|
||||||
status_text = 'Inactive'
|
status_text = unicode(
|
||||||
|
translate('OpenLP.PluginForm', '%s (Inactive)'))
|
||||||
elif self.activePlugin.status == PluginStatus.Disabled:
|
elif self.activePlugin.status == PluginStatus.Disabled:
|
||||||
status_text = 'Disabled'
|
status_text = unicode(
|
||||||
|
translate('OpenLP.PluginForm', '%s (Disabled)'))
|
||||||
self.PluginListWidget.currentItem().setText(
|
self.PluginListWidget.currentItem().setText(
|
||||||
u'%s (%s)' % (self.activePlugin.name, status_text))
|
status_text % self.activePlugin.name)
|
||||||
|
|
||||||
|
@ -68,9 +68,9 @@ class Ui_ServiceItemEditDialog(object):
|
|||||||
|
|
||||||
def retranslateUi(self, ServiceItemEditDialog):
|
def retranslateUi(self, ServiceItemEditDialog):
|
||||||
ServiceItemEditDialog.setWindowTitle(
|
ServiceItemEditDialog.setWindowTitle(
|
||||||
translate('ServiceItemEditForm', 'Service Item Maintenance'))
|
translate('OpenLP.ServiceItemEditForm', 'Reorder Service Item'))
|
||||||
self.upButton.setText(translate('ServiceItemEditForm', 'Up'))
|
self.upButton.setText(translate('OpenLP.ServiceItemEditForm', 'Up'))
|
||||||
self.deleteButton.setText(translate('ServiceItemEditForm', 'Delete'))
|
self.deleteButton.setText(translate('OpenLP.ServiceItemEditForm', 'Delete'))
|
||||||
self.downButton.setText(translate('ServiceItemEditForm', 'Down'))
|
self.downButton.setText(translate('OpenLP.ServiceItemEditForm', 'Down'))
|
||||||
|
|
||||||
|
|
||||||
|
@ -117,27 +117,27 @@ class ServiceManager(QtGui.QWidget):
|
|||||||
# Create the top toolbar
|
# Create the top toolbar
|
||||||
self.Toolbar = OpenLPToolbar(self)
|
self.Toolbar = OpenLPToolbar(self)
|
||||||
self.Toolbar.addToolbarButton(
|
self.Toolbar.addToolbarButton(
|
||||||
translate('ServiceManager', 'New Service'),
|
translate('OpenLP.ServiceManager', 'New Service'),
|
||||||
u':/general/general_new.png',
|
u':/general/general_new.png',
|
||||||
translate('ServiceManager', 'Create a new service'),
|
translate('OpenLP.ServiceManager', 'Create a new service'),
|
||||||
self.onNewService)
|
self.onNewService)
|
||||||
self.Toolbar.addToolbarButton(
|
self.Toolbar.addToolbarButton(
|
||||||
translate('ServiceManager', 'Open Service'),
|
translate('OpenLP.ServiceManager', 'Open Service'),
|
||||||
u':/general/general_open.png',
|
u':/general/general_open.png',
|
||||||
translate('ServiceManager', 'Load an existing service'),
|
translate('OpenLP.ServiceManager', 'Load an existing service'),
|
||||||
self.onLoadService)
|
self.onLoadService)
|
||||||
self.Toolbar.addToolbarButton(
|
self.Toolbar.addToolbarButton(
|
||||||
translate('ServiceManager', 'Save Service'),
|
translate('OpenLP.ServiceManager', 'Save Service'),
|
||||||
u':/general/general_save.png',
|
u':/general/general_save.png',
|
||||||
translate('ServiceManager', 'Save this service'),
|
translate('OpenLP.ServiceManager', 'Save this service'),
|
||||||
self.onQuickSaveService)
|
self.onQuickSaveService)
|
||||||
self.Toolbar.addSeparator()
|
self.Toolbar.addSeparator()
|
||||||
self.ThemeLabel = QtGui.QLabel(translate('ServiceManager', 'Theme:'),
|
self.ThemeLabel = QtGui.QLabel(translate('OpenLP.ServiceManager', 'Theme:'),
|
||||||
self)
|
self)
|
||||||
self.ThemeLabel.setMargin(3)
|
self.ThemeLabel.setMargin(3)
|
||||||
self.Toolbar.addToolbarWidget(u'ThemeLabel', self.ThemeLabel)
|
self.Toolbar.addToolbarWidget(u'ThemeLabel', self.ThemeLabel)
|
||||||
self.ThemeComboBox = QtGui.QComboBox(self.Toolbar)
|
self.ThemeComboBox = QtGui.QComboBox(self.Toolbar)
|
||||||
self.ThemeComboBox.setToolTip(translate('ServiceManager',
|
self.ThemeComboBox.setToolTip(translate('OpenLP.ServiceManager',
|
||||||
'Select a theme for the service'))
|
'Select a theme for the service'))
|
||||||
self.ThemeComboBox.setSizeAdjustPolicy(
|
self.ThemeComboBox.setSizeAdjustPolicy(
|
||||||
QtGui.QComboBox.AdjustToContents)
|
QtGui.QComboBox.AdjustToContents)
|
||||||
@ -168,28 +168,35 @@ class ServiceManager(QtGui.QWidget):
|
|||||||
# Add the bottom toolbar
|
# Add the bottom toolbar
|
||||||
self.OrderToolbar = OpenLPToolbar(self)
|
self.OrderToolbar = OpenLPToolbar(self)
|
||||||
self.OrderToolbar.addToolbarButton(
|
self.OrderToolbar.addToolbarButton(
|
||||||
translate('ServiceManager', 'Move to &top'),
|
translate('OpenLP.ServiceManager', 'Move to &top'),
|
||||||
u':/services/service_top.png',
|
u':/services/service_top.png',
|
||||||
translate('ServiceManager', 'Move to top'), self.onServiceTop)
|
translate('OpenLP.ServiceManager',
|
||||||
|
'Move item to the top of the service.'),
|
||||||
|
self.onServiceTop)
|
||||||
self.OrderToolbar.addToolbarButton(
|
self.OrderToolbar.addToolbarButton(
|
||||||
translate('ServiceManager', 'Move &up'),
|
translate('OpenLP.ServiceManager', 'Move &up'),
|
||||||
u':/services/service_up.png',
|
u':/services/service_up.png',
|
||||||
translate('ServiceManager', 'Move up order'), self.onServiceUp)
|
translate('OpenLP.ServiceManager',
|
||||||
|
'Move item up one position in the service.'),
|
||||||
|
self.onServiceUp)
|
||||||
self.OrderToolbar.addToolbarButton(
|
self.OrderToolbar.addToolbarButton(
|
||||||
translate('ServiceManager', 'Move &down'),
|
translate('OpenLP.ServiceManager', 'Move &down'),
|
||||||
u':/services/service_down.png',
|
u':/services/service_down.png',
|
||||||
translate('ServiceManager', 'Move down order'),
|
translate('OpenLP.ServiceManager',
|
||||||
|
'Move item down one position in the service.'),
|
||||||
self.onServiceDown)
|
self.onServiceDown)
|
||||||
self.OrderToolbar.addToolbarButton(
|
self.OrderToolbar.addToolbarButton(
|
||||||
translate('ServiceManager', 'Move to &bottom'),
|
translate('OpenLP.ServiceManager', 'Move to &bottom'),
|
||||||
u':/services/service_bottom.png',
|
u':/services/service_bottom.png',
|
||||||
translate('ServiceManager', 'Move to end'),
|
translate('OpenLP.ServiceManager',
|
||||||
|
'Move item to the end of the service.'),
|
||||||
self.onServiceEnd)
|
self.onServiceEnd)
|
||||||
self.OrderToolbar.addSeparator()
|
self.OrderToolbar.addSeparator()
|
||||||
self.OrderToolbar.addToolbarButton(
|
self.OrderToolbar.addToolbarButton(
|
||||||
translate('ServiceManager', '&Delete From Service'),
|
translate('OpenLP.ServiceManager', '&Delete From Service'),
|
||||||
u':/general/general_delete.png',
|
u':/general/general_delete.png',
|
||||||
translate('ServiceManager', 'Delete From Service'),
|
translate('OpenLP.ServiceManager',
|
||||||
|
'Delete the selected item from the service.'),
|
||||||
self.onDeleteFromService)
|
self.onDeleteFromService)
|
||||||
self.Layout.addWidget(self.OrderToolbar)
|
self.Layout.addWidget(self.OrderToolbar)
|
||||||
# Connect up our signals and slots
|
# Connect up our signals and slots
|
||||||
@ -223,37 +230,37 @@ class ServiceManager(QtGui.QWidget):
|
|||||||
#build the drag and drop context menu
|
#build the drag and drop context menu
|
||||||
self.dndMenu = QtGui.QMenu()
|
self.dndMenu = QtGui.QMenu()
|
||||||
self.newAction = self.dndMenu.addAction(
|
self.newAction = self.dndMenu.addAction(
|
||||||
translate('ServiceManager', '&Add New Item'))
|
translate('OpenLP.ServiceManager', '&Add New Item'))
|
||||||
self.newAction.setIcon(build_icon(u':/general/general_edit.png'))
|
self.newAction.setIcon(build_icon(u':/general/general_edit.png'))
|
||||||
self.addToAction = self.dndMenu.addAction(
|
self.addToAction = self.dndMenu.addAction(
|
||||||
translate('ServiceManager', '&Add to Selected Item'))
|
translate('OpenLP.ServiceManager', '&Add to Selected Item'))
|
||||||
self.addToAction.setIcon(build_icon(u':/general/general_edit.png'))
|
self.addToAction.setIcon(build_icon(u':/general/general_edit.png'))
|
||||||
#build the context menu
|
#build the context menu
|
||||||
self.menu = QtGui.QMenu()
|
self.menu = QtGui.QMenu()
|
||||||
self.editAction = self.menu.addAction(
|
self.editAction = self.menu.addAction(
|
||||||
translate('ServiceManager', '&Edit Item'))
|
translate('OpenLP.ServiceManager', '&Edit Item'))
|
||||||
self.editAction.setIcon(build_icon(u':/general/general_edit.png'))
|
self.editAction.setIcon(build_icon(u':/general/general_edit.png'))
|
||||||
self.maintainAction = self.menu.addAction(
|
self.maintainAction = self.menu.addAction(
|
||||||
translate('ServiceManager', '&Maintain Item'))
|
translate('OpenLP.ServiceManager', '&Reorder Item'))
|
||||||
self.maintainAction.setIcon(build_icon(u':/general/general_edit.png'))
|
self.maintainAction.setIcon(build_icon(u':/general/general_edit.png'))
|
||||||
self.notesAction = self.menu.addAction(
|
self.notesAction = self.menu.addAction(
|
||||||
translate('ServiceManager', '&Notes'))
|
translate('OpenLP.ServiceManager', '&Notes'))
|
||||||
self.notesAction.setIcon(build_icon(u':/services/service_notes.png'))
|
self.notesAction.setIcon(build_icon(u':/services/service_notes.png'))
|
||||||
self.deleteAction = self.menu.addAction(
|
self.deleteAction = self.menu.addAction(
|
||||||
translate('ServiceManager', '&Delete From Service'))
|
translate('OpenLP.ServiceManager', '&Delete From Service'))
|
||||||
self.deleteAction.setIcon(build_icon(u':/general/general_delete.png'))
|
self.deleteAction.setIcon(build_icon(u':/general/general_delete.png'))
|
||||||
self.sep1 = self.menu.addAction(u'')
|
self.sep1 = self.menu.addAction(u'')
|
||||||
self.sep1.setSeparator(True)
|
self.sep1.setSeparator(True)
|
||||||
self.previewAction = self.menu.addAction(
|
self.previewAction = self.menu.addAction(
|
||||||
translate('ServiceManager', '&Preview Verse'))
|
translate('OpenLP.ServiceManager', '&Preview Verse'))
|
||||||
self.previewAction.setIcon(build_icon(u':/general/general_preview.png'))
|
self.previewAction.setIcon(build_icon(u':/general/general_preview.png'))
|
||||||
self.liveAction = self.menu.addAction(
|
self.liveAction = self.menu.addAction(
|
||||||
translate('ServiceManager', '&Live Verse'))
|
translate('OpenLP.ServiceManager', '&Live Verse'))
|
||||||
self.liveAction.setIcon(build_icon(u':/general/general_live.png'))
|
self.liveAction.setIcon(build_icon(u':/general/general_live.png'))
|
||||||
self.sep2 = self.menu.addAction(u'')
|
self.sep2 = self.menu.addAction(u'')
|
||||||
self.sep2.setSeparator(True)
|
self.sep2.setSeparator(True)
|
||||||
self.themeMenu = QtGui.QMenu(
|
self.themeMenu = QtGui.QMenu(
|
||||||
translate('ServiceManager', '&Change Item Theme'))
|
translate('OpenLP.ServiceManager', '&Change Item Theme'))
|
||||||
self.menu.addMenu(self.themeMenu)
|
self.menu.addMenu(self.themeMenu)
|
||||||
|
|
||||||
def supportedSuffixes(self, suffix):
|
def supportedSuffixes(self, suffix):
|
||||||
@ -485,8 +492,8 @@ class ServiceManager(QtGui.QWidget):
|
|||||||
self.parent.generalSettingsSection + u'/save prompt',
|
self.parent.generalSettingsSection + u'/save prompt',
|
||||||
QtCore.QVariant(False)).toBool():
|
QtCore.QVariant(False)).toBool():
|
||||||
ret = QtGui.QMessageBox.question(self,
|
ret = QtGui.QMessageBox.question(self,
|
||||||
translate('ServiceManager', 'Save Changes to Service?'),
|
translate('OpenLP.ServiceManager', 'Save Changes to Service?'),
|
||||||
translate('ServiceManager',
|
translate('OpenLP.ServiceManager',
|
||||||
'Your service is unsaved, do you want to save '
|
'Your service is unsaved, do you want to save '
|
||||||
'those changes before creating a new one?'),
|
'those changes before creating a new one?'),
|
||||||
QtGui.QMessageBox.StandardButtons(
|
QtGui.QMessageBox.StandardButtons(
|
||||||
@ -571,9 +578,9 @@ class ServiceManager(QtGui.QWidget):
|
|||||||
log.debug(u'onSaveService')
|
log.debug(u'onSaveService')
|
||||||
if not quick or self.isNew:
|
if not quick or self.isNew:
|
||||||
filename = QtGui.QFileDialog.getSaveFileName(self,
|
filename = QtGui.QFileDialog.getSaveFileName(self,
|
||||||
translate('ServiceManager', 'Save Service'),
|
translate('OpenLP.ServiceManager', 'Save Service'),
|
||||||
SettingsManager.get_last_dir(self.parent.serviceSettingsSection),
|
SettingsManager.get_last_dir(self.parent.serviceSettingsSection),
|
||||||
translate('ServiceManager', 'OpenLP Service Files (*.osz)'))
|
translate('OpenLP.ServiceManager', 'OpenLP Service Files (*.osz)'))
|
||||||
else:
|
else:
|
||||||
filename = os.path.join(SettingsManager.get_last_dir(
|
filename = os.path.join(SettingsManager.get_last_dir(
|
||||||
self.parent.serviceSettingsSection), self.serviceName)
|
self.parent.serviceSettingsSection), self.serviceName)
|
||||||
@ -629,7 +636,7 @@ class ServiceManager(QtGui.QWidget):
|
|||||||
filename = self.parent.recentFiles[0]
|
filename = self.parent.recentFiles[0]
|
||||||
else:
|
else:
|
||||||
filename = QtGui.QFileDialog.getOpenFileName(
|
filename = QtGui.QFileDialog.getOpenFileName(
|
||||||
self, translate('ServiceManager', 'Open Service'),
|
self, translate('OpenLP.ServiceManager', 'Open Service'),
|
||||||
SettingsManager.get_last_dir(
|
SettingsManager.get_last_dir(
|
||||||
self.parent.serviceSettingsSection), u'Services (*.osz)')
|
self.parent.serviceSettingsSection), u'Services (*.osz)')
|
||||||
filename = QtCore.QDir.toNativeSeparators(filename)
|
filename = QtCore.QDir.toNativeSeparators(filename)
|
||||||
@ -643,8 +650,8 @@ class ServiceManager(QtGui.QWidget):
|
|||||||
"""
|
"""
|
||||||
if self.parent.serviceNotSaved:
|
if self.parent.serviceNotSaved:
|
||||||
ret = QtGui.QMessageBox.question(self,
|
ret = QtGui.QMessageBox.question(self,
|
||||||
translate('ServiceManager', 'Save Changes to Service?'),
|
translate('OpenLP.ServiceManager', 'Save Changes to Service?'),
|
||||||
translate('ServiceManager',
|
translate('OpenLP.ServiceManager',
|
||||||
'Your current service is unsaved, do you want to '
|
'Your current service is unsaved, do you want to '
|
||||||
'save the changes before opening a new one?'),
|
'save the changes before opening a new one?'),
|
||||||
QtGui.QMessageBox.StandardButtons(
|
QtGui.QMessageBox.StandardButtons(
|
||||||
@ -673,8 +680,8 @@ class ServiceManager(QtGui.QWidget):
|
|||||||
ucsfile = file.decode(u'utf-8')
|
ucsfile = file.decode(u'utf-8')
|
||||||
except UnicodeDecodeError:
|
except UnicodeDecodeError:
|
||||||
QtGui.QMessageBox.critical(
|
QtGui.QMessageBox.critical(
|
||||||
self, translate('ServiceManager', 'Error'),
|
self, translate('OpenLP.ServiceManager', 'Error'),
|
||||||
translate('ServiceManager',
|
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.'))
|
||||||
log.exception(u'Filename "%s" is not valid UTF-8' %
|
log.exception(u'Filename "%s" is not valid UTF-8' %
|
||||||
@ -708,8 +715,8 @@ class ServiceManager(QtGui.QWidget):
|
|||||||
log.exception(u'Failed to remove osd file')
|
log.exception(u'Failed to remove osd file')
|
||||||
else:
|
else:
|
||||||
QtGui.QMessageBox.critical(
|
QtGui.QMessageBox.critical(
|
||||||
self, translate('ServiceManager', 'Error'),
|
self, translate('OpenLP.ServiceManager', 'Error'),
|
||||||
translate('ServiceManager',
|
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')
|
||||||
except (IOError, NameError):
|
except (IOError, NameError):
|
||||||
@ -837,8 +844,8 @@ class ServiceManager(QtGui.QWidget):
|
|||||||
self.serviceItems[item][u'service_item'], count)
|
self.serviceItems[item][u'service_item'], count)
|
||||||
else:
|
else:
|
||||||
QtGui.QMessageBox.critical(self,
|
QtGui.QMessageBox.critical(self,
|
||||||
translate('ServiceManager', 'Missing Display Handler'),
|
translate('OpenLP.ServiceManager', 'Missing Display Handler'),
|
||||||
translate('ServiceManager', 'Your item cannot be displayed '
|
translate('OpenLP.ServiceManager', 'Your item cannot be displayed '
|
||||||
'as there is no handler to display it'),
|
'as there is no handler to display it'),
|
||||||
QtGui.QMessageBox.StandardButtons(
|
QtGui.QMessageBox.StandardButtons(
|
||||||
QtGui.QMessageBox.Ok),
|
QtGui.QMessageBox.Ok),
|
||||||
@ -873,8 +880,8 @@ class ServiceManager(QtGui.QWidget):
|
|||||||
self.serviceItems[item][u'service_item'], 0)
|
self.serviceItems[item][u'service_item'], 0)
|
||||||
else:
|
else:
|
||||||
QtGui.QMessageBox.critical(self,
|
QtGui.QMessageBox.critical(self,
|
||||||
translate('ServiceManager', 'Missing Display Handler'),
|
translate('OpenLP.ServiceManager', 'Missing Display Handler'),
|
||||||
translate('ServiceManager', 'Your item cannot be displayed '
|
translate('OpenLP.ServiceManager', 'Your item cannot be displayed '
|
||||||
'as there is no handler to display it'),
|
'as there is no handler to display it'),
|
||||||
QtGui.QMessageBox.StandardButtons(
|
QtGui.QMessageBox.StandardButtons(
|
||||||
QtGui.QMessageBox.Ok),
|
QtGui.QMessageBox.Ok),
|
||||||
|
@ -49,4 +49,4 @@ class Ui_ServiceNoteEdit(object):
|
|||||||
|
|
||||||
def retranslateUi(self, ServiceNoteEdit):
|
def retranslateUi(self, ServiceNoteEdit):
|
||||||
ServiceNoteEdit.setWindowTitle(
|
ServiceNoteEdit.setWindowTitle(
|
||||||
translate('ServiceNoteForm', 'Service Item Notes'))
|
translate('OpenLP.ServiceNoteForm', 'Service Item Notes'))
|
||||||
|
@ -63,5 +63,5 @@ class Ui_SettingsDialog(object):
|
|||||||
QtCore.QMetaObject.connectSlotsByName(SettingsDialog)
|
QtCore.QMetaObject.connectSlotsByName(SettingsDialog)
|
||||||
|
|
||||||
def retranslateUi(self, SettingsDialog):
|
def retranslateUi(self, SettingsDialog):
|
||||||
SettingsDialog.setWindowTitle(translate('SettingsForm',
|
SettingsDialog.setWindowTitle(translate('OpenLP.SettingsForm',
|
||||||
'Configure OpenLP'))
|
'Configure OpenLP'))
|
||||||
|
@ -128,11 +128,11 @@ class SlideController(QtGui.QWidget):
|
|||||||
# Type label for the top of the slide controller
|
# Type label for the top of the slide controller
|
||||||
self.TypeLabel = QtGui.QLabel(self.Panel)
|
self.TypeLabel = QtGui.QLabel(self.Panel)
|
||||||
if self.isLive:
|
if self.isLive:
|
||||||
self.TypeLabel.setText(translate('SlideController', 'Live'))
|
self.TypeLabel.setText(translate('OpenLP.SlideController', 'Live'))
|
||||||
self.split = 1
|
self.split = 1
|
||||||
self.typePrefix = u'live'
|
self.typePrefix = u'live'
|
||||||
else:
|
else:
|
||||||
self.TypeLabel.setText(translate('SlideController', 'Preview'))
|
self.TypeLabel.setText(translate('OpenLP.SlideController', 'Preview'))
|
||||||
self.split = 0
|
self.split = 0
|
||||||
self.typePrefix = u'preview'
|
self.typePrefix = u'preview'
|
||||||
self.TypeLabel.setStyleSheet(u'font-weight: bold; font-size: 12pt;')
|
self.TypeLabel.setStyleSheet(u'font-weight: bold; font-size: 12pt;')
|
||||||
@ -179,29 +179,29 @@ class SlideController(QtGui.QWidget):
|
|||||||
if self.isLive:
|
if self.isLive:
|
||||||
self.Toolbar.addToolbarButton(
|
self.Toolbar.addToolbarButton(
|
||||||
u'First Slide', u':/slides/slide_first.png',
|
u'First Slide', u':/slides/slide_first.png',
|
||||||
translate('SlideController', 'Move to first'),
|
translate('OpenLP.SlideController', 'Move to first'),
|
||||||
self.onSlideSelectedFirst)
|
self.onSlideSelectedFirst)
|
||||||
self.Toolbar.addToolbarButton(
|
self.Toolbar.addToolbarButton(
|
||||||
u'Previous Slide', u':/slides/slide_previous.png',
|
u'Previous Slide', u':/slides/slide_previous.png',
|
||||||
translate('SlideController', 'Move to previous'),
|
translate('OpenLP.SlideController', 'Move to previous'),
|
||||||
self.onSlideSelectedPrevious)
|
self.onSlideSelectedPrevious)
|
||||||
self.Toolbar.addToolbarButton(
|
self.Toolbar.addToolbarButton(
|
||||||
u'Next Slide', u':/slides/slide_next.png',
|
u'Next Slide', u':/slides/slide_next.png',
|
||||||
translate('SlideController', 'Move to next'),
|
translate('OpenLP.SlideController', 'Move to next'),
|
||||||
self.onSlideSelectedNext)
|
self.onSlideSelectedNext)
|
||||||
if self.isLive:
|
if self.isLive:
|
||||||
self.Toolbar.addToolbarButton(
|
self.Toolbar.addToolbarButton(
|
||||||
u'Last Slide', u':/slides/slide_last.png',
|
u'Last Slide', u':/slides/slide_last.png',
|
||||||
translate('SlideController', 'Move to last'),
|
translate('OpenLP.SlideController', 'Move to last'),
|
||||||
self.onSlideSelectedLast)
|
self.onSlideSelectedLast)
|
||||||
if self.isLive:
|
if self.isLive:
|
||||||
self.Toolbar.addToolbarSeparator(u'Close Separator')
|
self.Toolbar.addToolbarSeparator(u'Close Separator')
|
||||||
self.HideMenu = QtGui.QToolButton(self.Toolbar)
|
self.HideMenu = QtGui.QToolButton(self.Toolbar)
|
||||||
self.HideMenu.setText(translate('SlideController', 'Hide'))
|
self.HideMenu.setText(translate('OpenLP.SlideController', 'Hide'))
|
||||||
self.HideMenu.setPopupMode(QtGui.QToolButton.MenuButtonPopup)
|
self.HideMenu.setPopupMode(QtGui.QToolButton.MenuButtonPopup)
|
||||||
self.Toolbar.addToolbarWidget(u'Hide Menu', self.HideMenu)
|
self.Toolbar.addToolbarWidget(u'Hide Menu', self.HideMenu)
|
||||||
self.HideMenu.setMenu(QtGui.QMenu(
|
self.HideMenu.setMenu(QtGui.QMenu(
|
||||||
translate('SlideController', 'Hide'), self.Toolbar))
|
translate('OpenLP.SlideController', 'Hide'), self.Toolbar))
|
||||||
self.BlankScreen = QtGui.QAction(QtGui.QIcon(
|
self.BlankScreen = QtGui.QAction(QtGui.QIcon(
|
||||||
u':/slides/slide_blank.png'), u'Blank Screen', self.HideMenu)
|
u':/slides/slide_blank.png'), u'Blank Screen', self.HideMenu)
|
||||||
self.BlankScreen.setCheckable(True)
|
self.BlankScreen.setCheckable(True)
|
||||||
@ -225,44 +225,44 @@ class SlideController(QtGui.QWidget):
|
|||||||
self.Toolbar.addToolbarSeparator(u'Close Separator')
|
self.Toolbar.addToolbarSeparator(u'Close Separator')
|
||||||
self.Toolbar.addToolbarButton(
|
self.Toolbar.addToolbarButton(
|
||||||
u'Go Live', u':/general/general_live.png',
|
u'Go Live', u':/general/general_live.png',
|
||||||
translate('SlideController', 'Move to live'), self.onGoLive)
|
translate('OpenLP.SlideController', 'Move to live'), self.onGoLive)
|
||||||
self.Toolbar.addToolbarSeparator(u'Close Separator')
|
self.Toolbar.addToolbarSeparator(u'Close Separator')
|
||||||
self.Toolbar.addToolbarButton(
|
self.Toolbar.addToolbarButton(
|
||||||
u'Edit Song', u':/general/general_edit.png',
|
u'Edit Song', u':/general/general_edit.png',
|
||||||
translate('SlideController', 'Edit and re-preview Song'),
|
translate('OpenLP.SlideController', 'Edit and re-preview Song'),
|
||||||
self.onEditSong)
|
self.onEditSong)
|
||||||
if isLive:
|
if isLive:
|
||||||
self.Toolbar.addToolbarSeparator(u'Loop Separator')
|
self.Toolbar.addToolbarSeparator(u'Loop Separator')
|
||||||
self.Toolbar.addToolbarButton(
|
self.Toolbar.addToolbarButton(
|
||||||
u'Start Loop', u':/media/media_time.png',
|
u'Start Loop', u':/media/media_time.png',
|
||||||
translate('SlideController', 'Start continuous loop'),
|
translate('OpenLP.SlideController', 'Start continuous loop'),
|
||||||
self.onStartLoop)
|
self.onStartLoop)
|
||||||
self.Toolbar.addToolbarButton(
|
self.Toolbar.addToolbarButton(
|
||||||
u'Stop Loop', u':/media/media_stop.png',
|
u'Stop Loop', u':/media/media_stop.png',
|
||||||
translate('SlideController', 'Stop continuous loop'),
|
translate('OpenLP.SlideController', 'Stop continuous loop'),
|
||||||
self.onStopLoop)
|
self.onStopLoop)
|
||||||
self.DelaySpinBox = QtGui.QSpinBox()
|
self.DelaySpinBox = QtGui.QSpinBox()
|
||||||
self.DelaySpinBox.setMinimum(1)
|
self.DelaySpinBox.setMinimum(1)
|
||||||
self.DelaySpinBox.setMaximum(180)
|
self.DelaySpinBox.setMaximum(180)
|
||||||
self.Toolbar.addToolbarWidget(
|
self.Toolbar.addToolbarWidget(
|
||||||
u'Image SpinBox', self.DelaySpinBox)
|
u'Image SpinBox', self.DelaySpinBox)
|
||||||
self.DelaySpinBox.setSuffix(translate('SlideController', 's'))
|
self.DelaySpinBox.setSuffix(translate('OpenLP.SlideController', 's'))
|
||||||
self.DelaySpinBox.setToolTip(translate('SlideController',
|
self.DelaySpinBox.setToolTip(translate('OpenLP.SlideController',
|
||||||
'Delay between slides in seconds'))
|
'Delay between slides in seconds'))
|
||||||
self.ControllerLayout.addWidget(self.Toolbar)
|
self.ControllerLayout.addWidget(self.Toolbar)
|
||||||
#Build a Media ToolBar
|
#Build a Media ToolBar
|
||||||
self.Mediabar = OpenLPToolbar(self)
|
self.Mediabar = OpenLPToolbar(self)
|
||||||
self.Mediabar.addToolbarButton(
|
self.Mediabar.addToolbarButton(
|
||||||
u'Media Start', u':/slides/media_playback_start.png',
|
u'Media Start', u':/slides/media_playback_start.png',
|
||||||
translate('SlideController', 'Start playing media'),
|
translate('OpenLP.SlideController', 'Start playing media'),
|
||||||
self.onMediaPlay)
|
self.onMediaPlay)
|
||||||
self.Mediabar.addToolbarButton(
|
self.Mediabar.addToolbarButton(
|
||||||
u'Media Pause', u':/slides/media_playback_pause.png',
|
u'Media Pause', u':/slides/media_playback_pause.png',
|
||||||
translate('SlideController', 'Start playing media'),
|
translate('OpenLP.SlideController', 'Start playing media'),
|
||||||
self.onMediaPause)
|
self.onMediaPause)
|
||||||
self.Mediabar.addToolbarButton(
|
self.Mediabar.addToolbarButton(
|
||||||
u'Media Stop', u':/slides/media_playback_stop.png',
|
u'Media Stop', u':/slides/media_playback_stop.png',
|
||||||
translate('SlideController', 'Start playing media'),
|
translate('OpenLP.SlideController', 'Start playing media'),
|
||||||
self.onMediaStop)
|
self.onMediaStop)
|
||||||
if not self.isLive:
|
if not self.isLive:
|
||||||
self.seekSlider = Phonon.SeekSlider()
|
self.seekSlider = Phonon.SeekSlider()
|
||||||
@ -278,11 +278,11 @@ class SlideController(QtGui.QWidget):
|
|||||||
# Build the Song Toolbar
|
# Build the Song Toolbar
|
||||||
if isLive:
|
if isLive:
|
||||||
self.SongMenu = QtGui.QToolButton(self.Toolbar)
|
self.SongMenu = QtGui.QToolButton(self.Toolbar)
|
||||||
self.SongMenu.setText(translate('SlideController', 'Go to Verse'))
|
self.SongMenu.setText(translate('OpenLP.SlideController', 'Go to Verse'))
|
||||||
self.SongMenu.setPopupMode(QtGui.QToolButton.InstantPopup)
|
self.SongMenu.setPopupMode(QtGui.QToolButton.InstantPopup)
|
||||||
self.Toolbar.addToolbarWidget(u'Song Menu', self.SongMenu)
|
self.Toolbar.addToolbarWidget(u'Song Menu', self.SongMenu)
|
||||||
self.SongMenu.setMenu(QtGui.QMenu(
|
self.SongMenu.setMenu(QtGui.QMenu(
|
||||||
translate('SlideController', 'Go to Verse'), self.Toolbar))
|
translate('OpenLP.SlideController', 'Go to Verse'), self.Toolbar))
|
||||||
self.Toolbar.makeWidgetsInvisible([u'Song Menu'])
|
self.Toolbar.makeWidgetsInvisible([u'Song Menu'])
|
||||||
# Screen preview area
|
# Screen preview area
|
||||||
self.PreviewFrame = QtGui.QFrame(self.Splitter)
|
self.PreviewFrame = QtGui.QFrame(self.Splitter)
|
||||||
|
@ -25,15 +25,10 @@
|
|||||||
|
|
||||||
from PyQt4 import QtCore, QtGui
|
from PyQt4 import QtCore, QtGui
|
||||||
|
|
||||||
from openlp.core.lib import build_icon, translate
|
|
||||||
|
|
||||||
class SplashScreen(object):
|
class SplashScreen(object):
|
||||||
def __init__(self, version):
|
def __init__(self, version):
|
||||||
self.splash_screen = QtGui.QSplashScreen()
|
self.splash_screen = QtGui.QSplashScreen()
|
||||||
self.setupUi()
|
self.setupUi()
|
||||||
self.message = translate(
|
|
||||||
'Splashscreen', 'Starting')\
|
|
||||||
+ '..... ' + version
|
|
||||||
|
|
||||||
def setupUi(self):
|
def setupUi(self):
|
||||||
self.splash_screen.setObjectName(u'splash_screen')
|
self.splash_screen.setObjectName(u'splash_screen')
|
||||||
@ -48,25 +43,15 @@ class SplashScreen(object):
|
|||||||
self.splash_screen.sizePolicy().hasHeightForWidth())
|
self.splash_screen.sizePolicy().hasHeightForWidth())
|
||||||
self.splash_screen.setSizePolicy(sizePolicy)
|
self.splash_screen.setSizePolicy(sizePolicy)
|
||||||
self.splash_screen.setContextMenuPolicy(QtCore.Qt.PreventContextMenu)
|
self.splash_screen.setContextMenuPolicy(QtCore.Qt.PreventContextMenu)
|
||||||
icon = build_icon(u':/icon/openlp-logo-16x16.png')
|
|
||||||
self.splash_screen.setWindowIcon(icon)
|
|
||||||
splash_image = QtGui.QPixmap(u':/graphics/openlp-splash-screen.png')
|
splash_image = QtGui.QPixmap(u':/graphics/openlp-splash-screen.png')
|
||||||
self.splash_screen.setPixmap(splash_image)
|
self.splash_screen.setPixmap(splash_image)
|
||||||
self.splash_screen.setMask(splash_image.mask())
|
self.splash_screen.setMask(splash_image.mask())
|
||||||
self.splash_screen.setWindowFlags(
|
self.splash_screen.setWindowFlags(
|
||||||
QtCore.Qt.SplashScreen | QtCore.Qt.WindowStaysOnTopHint)
|
QtCore.Qt.SplashScreen | QtCore.Qt.WindowStaysOnTopHint)
|
||||||
self.retranslateUi()
|
|
||||||
QtCore.QMetaObject.connectSlotsByName(self.splash_screen)
|
QtCore.QMetaObject.connectSlotsByName(self.splash_screen)
|
||||||
|
|
||||||
def retranslateUi(self):
|
|
||||||
self.splash_screen.setWindowTitle(
|
|
||||||
translate('Splashscreen', 'Splash Screen'))
|
|
||||||
|
|
||||||
def show(self):
|
def show(self):
|
||||||
self.splash_screen.show()
|
self.splash_screen.show()
|
||||||
self.splash_screen.showMessage(self.message,
|
|
||||||
QtCore.Qt.AlignLeft | QtCore.Qt.AlignBottom, QtCore.Qt.black)
|
|
||||||
self.splash_screen.repaint()
|
|
||||||
|
|
||||||
def finish(self, widget):
|
def finish(self, widget):
|
||||||
self.splash_screen.finish(widget)
|
self.splash_screen.finish(widget)
|
||||||
|
@ -55,25 +55,31 @@ class ThemeManager(QtGui.QWidget):
|
|||||||
self.amendThemeForm = AmendThemeForm(self)
|
self.amendThemeForm = AmendThemeForm(self)
|
||||||
self.Toolbar = OpenLPToolbar(self)
|
self.Toolbar = OpenLPToolbar(self)
|
||||||
self.Toolbar.addToolbarButton(
|
self.Toolbar.addToolbarButton(
|
||||||
translate('ThemeManager', 'New Theme'), u':/themes/theme_new.png',
|
translate('OpenLP.ThemeManager', 'New Theme'),
|
||||||
translate('ThemeManager', 'Create a new theme.'), self.onAddTheme)
|
u':/themes/theme_new.png',
|
||||||
|
translate('OpenLP.ThemeManager', 'Create a new theme.'),
|
||||||
|
self.onAddTheme)
|
||||||
self.Toolbar.addToolbarButton(
|
self.Toolbar.addToolbarButton(
|
||||||
translate('ThemeManager', 'Edit Theme'),
|
translate('OpenLP.ThemeManager', 'Edit Theme'),
|
||||||
u':/themes/theme_edit.png',
|
u':/themes/theme_edit.png',
|
||||||
translate('ThemeManager', 'Edit a theme.'), self.onEditTheme)
|
translate('OpenLP.ThemeManager', 'Edit a theme.'),
|
||||||
|
self.onEditTheme)
|
||||||
self.Toolbar.addToolbarButton(
|
self.Toolbar.addToolbarButton(
|
||||||
translate('ThemeManager', 'Delete Theme'),
|
translate('OpenLP.ThemeManager', 'Delete Theme'),
|
||||||
u':/general/general_delete.png',
|
u':/general/general_delete.png',
|
||||||
translate('ThemeManager', 'Delete a theme.'), self.onDeleteTheme)
|
translate('OpenLP.ThemeManager', 'Delete a theme.'),
|
||||||
|
self.onDeleteTheme)
|
||||||
self.Toolbar.addSeparator()
|
self.Toolbar.addSeparator()
|
||||||
self.Toolbar.addToolbarButton(
|
self.Toolbar.addToolbarButton(
|
||||||
translate('ThemeManager', 'Import Theme'),
|
translate('OpenLP.ThemeManager', 'Import Theme'),
|
||||||
u':/general/general_import.png',
|
u':/general/general_import.png',
|
||||||
translate('ThemeManager', 'Import a theme.'), self.onImportTheme)
|
translate('OpenLP.ThemeManager', 'Import a theme.'),
|
||||||
|
self.onImportTheme)
|
||||||
self.Toolbar.addToolbarButton(
|
self.Toolbar.addToolbarButton(
|
||||||
translate('ThemeManager', 'Export Theme'),
|
translate('OpenLP.ThemeManager', 'Export Theme'),
|
||||||
u':/general/general_export.png',
|
u':/general/general_export.png',
|
||||||
translate('ThemeManager', 'Export a theme.'), self.onExportTheme)
|
translate('OpenLP.ThemeManager', 'Export a theme.'),
|
||||||
|
self.onExportTheme)
|
||||||
self.ThemeWidget = QtGui.QWidgetAction(self.Toolbar)
|
self.ThemeWidget = QtGui.QWidgetAction(self.Toolbar)
|
||||||
self.Layout.addWidget(self.Toolbar)
|
self.Layout.addWidget(self.Toolbar)
|
||||||
self.ThemeListWidget = QtGui.QListWidget(self)
|
self.ThemeListWidget = QtGui.QListWidget(self)
|
||||||
@ -84,23 +90,24 @@ class ThemeManager(QtGui.QWidget):
|
|||||||
self.ThemeListWidget.addAction(
|
self.ThemeListWidget.addAction(
|
||||||
context_menu_action(self.ThemeListWidget,
|
context_menu_action(self.ThemeListWidget,
|
||||||
u':/themes/theme_edit.png',
|
u':/themes/theme_edit.png',
|
||||||
translate('ThemeManager', '&Edit Theme'), self.onEditTheme))
|
translate('OpenLP.ThemeManager', '&Edit Theme'),
|
||||||
|
self.onEditTheme))
|
||||||
self.ThemeListWidget.addAction(
|
self.ThemeListWidget.addAction(
|
||||||
context_menu_separator(self.ThemeListWidget))
|
context_menu_separator(self.ThemeListWidget))
|
||||||
self.ThemeListWidget.addAction(
|
self.ThemeListWidget.addAction(
|
||||||
context_menu_action(self.ThemeListWidget,
|
context_menu_action(self.ThemeListWidget,
|
||||||
u':/general/general_delete.png',
|
u':/general/general_delete.png',
|
||||||
translate('ThemeManager', '&Delete Theme'),
|
translate('OpenLP.ThemeManager', '&Delete Theme'),
|
||||||
self.onDeleteTheme))
|
self.onDeleteTheme))
|
||||||
self.ThemeListWidget.addAction(
|
self.ThemeListWidget.addAction(
|
||||||
context_menu_action(self.ThemeListWidget,
|
context_menu_action(self.ThemeListWidget,
|
||||||
u':/general/general_export.png',
|
u':/general/general_export.png',
|
||||||
translate('ThemeManager', 'Set As &Global Default'),
|
translate('OpenLP.ThemeManager', 'Set As &Global Default'),
|
||||||
self.changeGlobalFromScreen))
|
self.changeGlobalFromScreen))
|
||||||
self.ThemeListWidget.addAction(
|
self.ThemeListWidget.addAction(
|
||||||
context_menu_action(self.ThemeListWidget,
|
context_menu_action(self.ThemeListWidget,
|
||||||
u':/general/general_export.png',
|
u':/general/general_export.png',
|
||||||
translate('ThemeManager', 'E&xport Theme'),
|
translate('OpenLP.ThemeManager', 'E&xport Theme'),
|
||||||
self.onExportTheme))
|
self.onExportTheme))
|
||||||
self.ThemeListWidget.addAction(
|
self.ThemeListWidget.addAction(
|
||||||
context_menu_separator(self.ThemeListWidget))
|
context_menu_separator(self.ThemeListWidget))
|
||||||
@ -139,8 +146,8 @@ class ThemeManager(QtGui.QWidget):
|
|||||||
self.ThemeListWidget.item(count).setText(newName)
|
self.ThemeListWidget.item(count).setText(newName)
|
||||||
#Set the new name
|
#Set the new name
|
||||||
if themeName == newName:
|
if themeName == newName:
|
||||||
name = unicode(translate('ThemeManager', '%s (default)')) % \
|
name = unicode(translate('OpenLP.ThemeManager',
|
||||||
newName
|
'%s (default)')) % newName
|
||||||
self.ThemeListWidget.item(count).setText(name)
|
self.ThemeListWidget.item(count).setText(name)
|
||||||
|
|
||||||
def changeGlobalFromScreen(self, index = -1):
|
def changeGlobalFromScreen(self, index = -1):
|
||||||
@ -161,13 +168,14 @@ class ThemeManager(QtGui.QWidget):
|
|||||||
if count == selected_row:
|
if count == selected_row:
|
||||||
self.global_theme = unicode(
|
self.global_theme = unicode(
|
||||||
self.ThemeListWidget.item(count).text())
|
self.ThemeListWidget.item(count).text())
|
||||||
name = unicode(translate('ThemeManager', '%s (default)')) % \
|
name = unicode(translate('OpenLP.ThemeManager',
|
||||||
self.global_theme
|
'%s (default)')) % self.global_theme
|
||||||
self.ThemeListWidget.item(count).setText(name)
|
self.ThemeListWidget.item(count).setText(name)
|
||||||
QtCore.QSettings().setValue(
|
QtCore.QSettings().setValue(
|
||||||
self.settingsSection + u'/global theme',
|
self.settingsSection + u'/global theme',
|
||||||
QtCore.QVariant(self.global_theme))
|
QtCore.QVariant(self.global_theme))
|
||||||
Receiver.send_message(u'theme_update_global', self.global_theme)
|
Receiver.send_message(u'theme_update_global',
|
||||||
|
self.global_theme)
|
||||||
self.pushThemes()
|
self.pushThemes()
|
||||||
|
|
||||||
def onAddTheme(self):
|
def onAddTheme(self):
|
||||||
@ -185,7 +193,8 @@ class ThemeManager(QtGui.QWidget):
|
|||||||
Loads the settings for the theme that is to be edited and launches the
|
Loads the settings for the theme that is to be edited and launches the
|
||||||
theme editing form so the user can make their changes.
|
theme editing form so the user can make their changes.
|
||||||
"""
|
"""
|
||||||
if check_item_selected(self.ThemeListWidget, translate('ThemeManager',
|
if check_item_selected(self.ThemeListWidget,
|
||||||
|
translate('OpenLP.ThemeManager',
|
||||||
'You must select a theme to edit.')):
|
'You must select a theme to edit.')):
|
||||||
item = self.ThemeListWidget.currentItem()
|
item = self.ThemeListWidget.currentItem()
|
||||||
themeName = unicode(item.text())
|
themeName = unicode(item.text())
|
||||||
@ -207,14 +216,15 @@ class ThemeManager(QtGui.QWidget):
|
|||||||
self.global_theme = unicode(QtCore.QSettings().value(
|
self.global_theme = unicode(QtCore.QSettings().value(
|
||||||
self.settingsSection + u'/global theme',
|
self.settingsSection + u'/global theme',
|
||||||
QtCore.QVariant(u'')).toString())
|
QtCore.QVariant(u'')).toString())
|
||||||
if check_item_selected(self.ThemeListWidget, translate('ThemeManager',
|
if check_item_selected(self.ThemeListWidget,
|
||||||
|
translate('OpenLP.ThemeManager',
|
||||||
'You must select a theme to delete.')):
|
'You must select a theme to delete.')):
|
||||||
item = self.ThemeListWidget.currentItem()
|
item = self.ThemeListWidget.currentItem()
|
||||||
theme = unicode(item.text())
|
theme = unicode(item.text())
|
||||||
# confirm deletion
|
# confirm deletion
|
||||||
answer = QtGui.QMessageBox.question(self,
|
answer = QtGui.QMessageBox.question(self,
|
||||||
translate('ThemeManager', 'Delete Confirmation'),
|
translate('OpenLP.ThemeManager', 'Delete Confirmation'),
|
||||||
translate('ThemeManager', 'Delete theme?'),
|
translate('OpenLP.ThemeManager', 'Delete theme?'),
|
||||||
QtGui.QMessageBox.StandardButtons(QtGui.QMessageBox.Yes |
|
QtGui.QMessageBox.StandardButtons(QtGui.QMessageBox.Yes |
|
||||||
QtGui.QMessageBox.No), QtGui.QMessageBox.No)
|
QtGui.QMessageBox.No), QtGui.QMessageBox.No)
|
||||||
if answer == QtGui.QMessageBox.No:
|
if answer == QtGui.QMessageBox.No:
|
||||||
@ -222,24 +232,24 @@ class ThemeManager(QtGui.QWidget):
|
|||||||
# 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()):
|
||||||
QtGui.QMessageBox.critical(self,
|
QtGui.QMessageBox.critical(self,
|
||||||
translate('ThemeManager', 'Error'),
|
translate('OpenLP.ThemeManager', 'Error'),
|
||||||
translate('ThemeManager',
|
translate('OpenLP.ThemeManager',
|
||||||
'You are unable to delete the default theme.'),
|
'You are unable to delete the default theme.'),
|
||||||
QtGui.QMessageBox.StandardButtons(QtGui.QMessageBox.Ok))
|
QtGui.QMessageBox.StandardButtons(QtGui.QMessageBox.Ok))
|
||||||
else:
|
else:
|
||||||
for plugin in self.parent.plugin_manager.plugins:
|
for plugin in self.parent.plugin_manager.plugins:
|
||||||
if plugin.usesTheme(theme):
|
if plugin.usesTheme(theme):
|
||||||
QtGui.QMessageBox.critical(self,
|
QtGui.QMessageBox.critical(self,
|
||||||
translate('ThemeManager', 'Error'),
|
translate('OpenLP.ThemeManager', 'Error'),
|
||||||
unicode(translate('ThemeManager',
|
unicode(translate('OpenLP.ThemeManager',
|
||||||
'Theme %s is use in %s plugin.')) % \
|
'Theme %s is use in %s plugin.')) % \
|
||||||
(theme, plugin.name))
|
(theme, plugin.name))
|
||||||
return
|
return
|
||||||
if unicode(self.serviceComboBox.currentText()) == theme:
|
if unicode(self.serviceComboBox.currentText()) == theme:
|
||||||
QtGui.QMessageBox.critical(self,
|
QtGui.QMessageBox.critical(self,
|
||||||
translate('ThemeManager', 'Error'),
|
translate('OpenLP.ThemeManager', 'Error'),
|
||||||
unicode(translate('ThemeManager',
|
unicode(translate('OpenLP.ThemeManager',
|
||||||
'Theme %s is use by the service manager.')) % theme)
|
'Theme %s is use by the service manager.')) % theme)
|
||||||
return
|
return
|
||||||
row = self.ThemeListWidget.row(item)
|
row = self.ThemeListWidget.row(item)
|
||||||
self.ThemeListWidget.takeItem(row)
|
self.ThemeListWidget.takeItem(row)
|
||||||
@ -273,12 +283,14 @@ class ThemeManager(QtGui.QWidget):
|
|||||||
item = self.ThemeListWidget.currentItem()
|
item = self.ThemeListWidget.currentItem()
|
||||||
if item is None:
|
if item is None:
|
||||||
QtGui.QMessageBox.critical(self,
|
QtGui.QMessageBox.critical(self,
|
||||||
translate('ThemeManager', 'Error'),
|
translate('OpenLP.ThemeManager', 'Error'),
|
||||||
translate('ThemeManager', 'You have not selected a theme.'))
|
translate('OpenLP.ThemeManager',
|
||||||
|
'You have not selected a theme.'))
|
||||||
return
|
return
|
||||||
theme = unicode(item.data(QtCore.Qt.UserRole).toString())
|
theme = unicode(item.data(QtCore.Qt.UserRole).toString())
|
||||||
path = QtGui.QFileDialog.getExistingDirectory(self,
|
path = QtGui.QFileDialog.getExistingDirectory(self,
|
||||||
unicode(translate('ThemeManager', 'Save Theme - (%s)')) % theme,
|
unicode(translate('OpenLP.ThemeManager',
|
||||||
|
'Save Theme - (%s)')) % theme,
|
||||||
SettingsManager.get_last_dir(self.settingsSection, 1))
|
SettingsManager.get_last_dir(self.settingsSection, 1))
|
||||||
path = unicode(path)
|
path = unicode(path)
|
||||||
if path:
|
if path:
|
||||||
@ -294,14 +306,14 @@ class ThemeManager(QtGui.QWidget):
|
|||||||
os.path.join(source, name).encode(u'utf-8'),
|
os.path.join(source, name).encode(u'utf-8'),
|
||||||
os.path.join(theme, name).encode(u'utf-8'))
|
os.path.join(theme, name).encode(u'utf-8'))
|
||||||
QtGui.QMessageBox.information(self,
|
QtGui.QMessageBox.information(self,
|
||||||
translate('ThemeManager', 'Theme Exported'),
|
translate('OpenLP.ThemeManager', 'Theme Exported'),
|
||||||
translate('ThemeManager',
|
translate('OpenLP.ThemeManager',
|
||||||
'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')
|
||||||
QtGui.QMessageBox.critical(self,
|
QtGui.QMessageBox.critical(self,
|
||||||
translate('ThemeManager', 'Theme Export Failed'),
|
translate('OpenLP.ThemeManager', 'Theme Export Failed'),
|
||||||
translate('ThemeManager',
|
translate('OpenLP.ThemeManager',
|
||||||
'Your theme could not be exported due to an error.'))
|
'Your theme could not be exported due to an error.'))
|
||||||
finally:
|
finally:
|
||||||
if zip:
|
if zip:
|
||||||
@ -314,9 +326,9 @@ class ThemeManager(QtGui.QWidget):
|
|||||||
will load both OpenLP version 1 and version 2 themes.
|
will load both OpenLP version 1 and version 2 themes.
|
||||||
"""
|
"""
|
||||||
files = QtGui.QFileDialog.getOpenFileNames(self,
|
files = QtGui.QFileDialog.getOpenFileNames(self,
|
||||||
translate('ThemeManager', 'Select Theme Import File'),
|
translate('OpenLP.ThemeManager', 'Select Theme Import File'),
|
||||||
SettingsManager.get_last_dir(self.settingsSection),
|
SettingsManager.get_last_dir(self.settingsSection),
|
||||||
translate('ThemeManager', 'Theme (*.*)'))
|
translate('OpenLP.ThemeManager', 'Theme (*.*)'))
|
||||||
log.info(u'New Themes %s', unicode(files))
|
log.info(u'New Themes %s', unicode(files))
|
||||||
if files:
|
if files:
|
||||||
for file in files:
|
for file in files:
|
||||||
@ -343,7 +355,7 @@ class ThemeManager(QtGui.QWidget):
|
|||||||
if os.path.exists(theme):
|
if os.path.exists(theme):
|
||||||
textName = os.path.splitext(name)[0]
|
textName = os.path.splitext(name)[0]
|
||||||
if textName == self.global_theme:
|
if textName == self.global_theme:
|
||||||
name = unicode(translate('ThemeManager',
|
name = unicode(translate('OpenLP.ThemeManager',
|
||||||
'%s (default)')) % textName
|
'%s (default)')) % textName
|
||||||
else:
|
else:
|
||||||
name = textName
|
name = textName
|
||||||
@ -419,8 +431,9 @@ class ThemeManager(QtGui.QWidget):
|
|||||||
ucsfile = file.decode(u'utf-8')
|
ucsfile = file.decode(u'utf-8')
|
||||||
except UnicodeDecodeError:
|
except UnicodeDecodeError:
|
||||||
QtGui.QMessageBox.critical(
|
QtGui.QMessageBox.critical(
|
||||||
self, translate('ThemeManager', 'Error'),
|
self, translate('OpenLP.ThemeManager', 'Error'),
|
||||||
translate('ThemeManager', 'File is not a valid theme.\n'
|
translate('OpenLP.ThemeManager',
|
||||||
|
'File is not a valid theme.\n'
|
||||||
'The content encoding is not UTF-8.'))
|
'The content encoding is not UTF-8.'))
|
||||||
log.exception(u'Filename "%s" is not valid UTF-8' %
|
log.exception(u'Filename "%s" is not valid UTF-8' %
|
||||||
file.decode(u'utf-8', u'replace'))
|
file.decode(u'utf-8', u'replace'))
|
||||||
@ -464,15 +477,16 @@ class ThemeManager(QtGui.QWidget):
|
|||||||
self.generateAndSaveImage(dir, themename, filexml)
|
self.generateAndSaveImage(dir, themename, filexml)
|
||||||
else:
|
else:
|
||||||
QtGui.QMessageBox.critical(self,
|
QtGui.QMessageBox.critical(self,
|
||||||
translate('ThemeManager', 'Error'),
|
translate('OpenLP.ThemeManager', 'Error'),
|
||||||
translate('ThemeManager', 'File is not a valid theme.'))
|
translate('OpenLP.ThemeManager',
|
||||||
log.exception(u'Theme file dosen\'t contain XML data %s' %
|
'File is not a valid theme.'))
|
||||||
|
log.exception(u'Theme file does not contain XML data %s' %
|
||||||
filename)
|
filename)
|
||||||
except (IOError, NameError):
|
except (IOError, NameError):
|
||||||
QtGui.QMessageBox.critical(self,
|
QtGui.QMessageBox.critical(self,
|
||||||
translate('ThemeManager', 'Error'),
|
translate('OpenLP.ThemeManager', 'Error'),
|
||||||
translate('ThemeManager', 'File is not a valid theme.'))
|
translate('OpenLP.ThemeManager', 'File is not a valid theme.'))
|
||||||
log.exception(u'Importing theme from zip file failed %s' % filename)
|
log.exception(u'Importing theme from zip failed %s' % filename)
|
||||||
finally:
|
finally:
|
||||||
if zip:
|
if zip:
|
||||||
zip.close()
|
zip.close()
|
||||||
@ -536,7 +550,8 @@ class ThemeManager(QtGui.QWidget):
|
|||||||
vAlignCorrection = 1
|
vAlignCorrection = 1
|
||||||
elif theme.VerticalAlign == 1:
|
elif theme.VerticalAlign == 1:
|
||||||
vAlignCorrection = 2
|
vAlignCorrection = 2
|
||||||
newtheme.add_display(unicode(shadow), unicode(theme.ShadowColor.name()),
|
newtheme.add_display(unicode(shadow),
|
||||||
|
unicode(theme.ShadowColor.name()),
|
||||||
unicode(outline), unicode(theme.OutlineColor.name()),
|
unicode(outline), unicode(theme.OutlineColor.name()),
|
||||||
unicode(theme.HorizontalAlign), unicode(vAlignCorrection),
|
unicode(theme.HorizontalAlign), unicode(vAlignCorrection),
|
||||||
unicode(theme.WrapStyle), unicode(0))
|
unicode(theme.WrapStyle), unicode(0))
|
||||||
@ -559,8 +574,9 @@ class ThemeManager(QtGui.QWidget):
|
|||||||
if self.saveThemeName != name:
|
if self.saveThemeName != name:
|
||||||
if os.path.exists(theme_file):
|
if os.path.exists(theme_file):
|
||||||
result = QtGui.QMessageBox.question(self,
|
result = QtGui.QMessageBox.question(self,
|
||||||
translate('ThemeManager', 'Theme Exists'),
|
translate('OpenLP.ThemeManager', 'Theme Exists'),
|
||||||
translate('ThemeManager', 'A theme with this name already '
|
translate('OpenLP.ThemeManager',
|
||||||
|
'A theme with this name already '
|
||||||
'exists. Would you like to overwrite it?'),
|
'exists. Would you like to overwrite it?'),
|
||||||
(QtGui.QMessageBox.Yes | QtGui.QMessageBox.No),
|
(QtGui.QMessageBox.Yes | QtGui.QMessageBox.No),
|
||||||
QtGui.QMessageBox.No)
|
QtGui.QMessageBox.No)
|
||||||
@ -611,7 +627,7 @@ class ThemeManager(QtGui.QWidget):
|
|||||||
newThemeItem).row()
|
newThemeItem).row()
|
||||||
self.global_theme = unicode(
|
self.global_theme = unicode(
|
||||||
self.ThemeListWidget.item(newThemeIndex).text())
|
self.ThemeListWidget.item(newThemeIndex).text())
|
||||||
newName = unicode(translate('ThemeManager',
|
newName = unicode(translate('OpenLP.ThemeManager',
|
||||||
'%s (default)')) % self.global_theme
|
'%s (default)')) % self.global_theme
|
||||||
self.ThemeListWidget.item(newThemeIndex).setText(newName)
|
self.ThemeListWidget.item(newThemeIndex).setText(newName)
|
||||||
QtCore.QSettings().setValue(
|
QtCore.QSettings().setValue(
|
||||||
@ -665,14 +681,15 @@ class ThemeManager(QtGui.QWidget):
|
|||||||
"""
|
"""
|
||||||
log.debug(u'base theme created')
|
log.debug(u'base theme created')
|
||||||
newtheme = ThemeXML()
|
newtheme = ThemeXML()
|
||||||
newtheme.new_document(unicode(translate('ThemeManager', 'New Theme')))
|
newtheme.new_document(
|
||||||
newtheme.add_background_solid(unicode(u'#000000'))
|
unicode(translate('OpenLP.ThemeManager', 'New Theme')))
|
||||||
newtheme.add_font(unicode(QtGui.QFont().family()), unicode(u'#FFFFFF'),
|
newtheme.add_background_solid(u'#000000')
|
||||||
unicode(30), u'False')
|
newtheme.add_font(unicode(QtGui.QFont().family()), u'#FFFFFF',
|
||||||
newtheme.add_font(unicode(QtGui.QFont().family()), unicode(u'#FFFFFF'),
|
u'30', u'False')
|
||||||
unicode(12), u'False', u'footer')
|
newtheme.add_font(unicode(QtGui.QFont().family()), u'#FFFFFF',
|
||||||
newtheme.add_display(u'False', unicode(u'#FFFFFF'), u'False',
|
u'12', u'False', u'footer')
|
||||||
unicode(u'#FFFFFF'), unicode(0), unicode(0), unicode(0), u'False')
|
newtheme.add_display(u'False', u'#FFFFFF', u'False',
|
||||||
|
unicode(u'#FFFFFF'), u'0', u'0', u'0', u'False')
|
||||||
return newtheme.extract_xml()
|
return newtheme.extract_xml()
|
||||||
|
|
||||||
def createThemeFromXml(self, theme_xml, path):
|
def createThemeFromXml(self, theme_xml, path):
|
||||||
|
@ -37,7 +37,7 @@ class ThemesTab(SettingsTab):
|
|||||||
|
|
||||||
def setupUi(self):
|
def setupUi(self):
|
||||||
self.setObjectName(u'ThemesTab')
|
self.setObjectName(u'ThemesTab')
|
||||||
self.tabTitleVisible = translate('ThemesTab', 'Themes')
|
self.tabTitleVisible = translate('OpenLP.ThemesTab', 'Themes')
|
||||||
self.ThemesTabLayout = QtGui.QHBoxLayout(self)
|
self.ThemesTabLayout = QtGui.QHBoxLayout(self)
|
||||||
self.ThemesTabLayout.setSpacing(8)
|
self.ThemesTabLayout.setSpacing(8)
|
||||||
self.ThemesTabLayout.setMargin(8)
|
self.ThemesTabLayout.setMargin(8)
|
||||||
@ -106,26 +106,28 @@ class ThemesTab(SettingsTab):
|
|||||||
QtCore.SIGNAL(u'theme_update_list'), self.updateThemeList)
|
QtCore.SIGNAL(u'theme_update_list'), self.updateThemeList)
|
||||||
|
|
||||||
def retranslateUi(self):
|
def retranslateUi(self):
|
||||||
self.GlobalGroupBox.setTitle(translate('ThemesTab', 'Global Theme'))
|
self.GlobalGroupBox.setTitle(
|
||||||
self.LevelGroupBox.setTitle(translate('ThemesTab', 'Theme Level'))
|
translate('OpenLP.ThemesTab', 'Global Theme'))
|
||||||
|
self.LevelGroupBox.setTitle(
|
||||||
|
translate('OpenLP.ThemesTab', 'Theme Level'))
|
||||||
self.SongLevelRadioButton.setText(
|
self.SongLevelRadioButton.setText(
|
||||||
translate('ThemesTab', 'S&ong Level'))
|
translate('OpenLP.ThemesTab', 'S&ong Level'))
|
||||||
self.SongLevelLabel.setText(
|
self.SongLevelLabel.setText(
|
||||||
translate('ThemesTab', 'Use the theme from each song '
|
translate('OpenLP.ThemesTab', 'Use the theme from each song '
|
||||||
'in the database. If a song doesn\'t have a theme associated with '
|
'in the database. If a song doesn\'t have a theme associated with '
|
||||||
'it, then use the service\'s theme. If the service doesn\'t have '
|
'it, then use the service\'s theme. If the service doesn\'t have '
|
||||||
'a theme, then use the global theme.'))
|
'a theme, then use the global theme.'))
|
||||||
self.ServiceLevelRadioButton.setText(
|
self.ServiceLevelRadioButton.setText(
|
||||||
translate('ThemesTab', '&Service Level'))
|
translate('OpenLP.ThemesTab', '&Service Level'))
|
||||||
self.ServiceLevelLabel.setText(
|
self.ServiceLevelLabel.setText(
|
||||||
translate('ThemesTab', 'Use the theme from the service, '
|
translate('OpenLP.ThemesTab', 'Use the theme from the service, '
|
||||||
'overriding any of the individual songs\' themes. If the '
|
'overriding any of the individual songs\' themes. If the '
|
||||||
'service doesn\'t have a theme, then use the global theme.'))
|
'service doesn\'t have a theme, then use the global theme.'))
|
||||||
self.GlobalLevelRadioButton.setText(
|
self.GlobalLevelRadioButton.setText(
|
||||||
translate('ThemesTab', '&Global Level'))
|
translate('OpenLP.ThemesTab', '&Global Level'))
|
||||||
self.GlobalLevelLabel.setText(
|
self.GlobalLevelLabel.setText(
|
||||||
translate('ThemesTab', 'Use the global theme, overriding any '
|
translate('OpenLP.ThemesTab', 'Use the global theme, overriding '
|
||||||
'themes associated with either the service or the songs.'))
|
'any themes associated with either the service or the songs.'))
|
||||||
|
|
||||||
def load(self):
|
def load(self):
|
||||||
settings = QtCore.QSettings()
|
settings = QtCore.QSettings()
|
||||||
|
@ -82,7 +82,7 @@ class LanguageManager(object):
|
|||||||
"""
|
"""
|
||||||
translator = QtCore.QTranslator()
|
translator = QtCore.QTranslator()
|
||||||
translator.load(qm_file)
|
translator.load(qm_file)
|
||||||
return translator.translate('MainWindow', 'English')
|
return translator.translate('OpenLP.MainWindow', 'English')
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def get_language():
|
def get_language():
|
||||||
@ -117,9 +117,9 @@ class LanguageManager(object):
|
|||||||
u'general/language', QtCore.QVariant(language))
|
u'general/language', QtCore.QVariant(language))
|
||||||
log.info(u'Language file: \'%s\' written to conf file' % language)
|
log.info(u'Language file: \'%s\' written to conf file' % language)
|
||||||
QtGui.QMessageBox.information(None,
|
QtGui.QMessageBox.information(None,
|
||||||
translate('LanguageManager', 'Language'),
|
translate('OpenLP.LanguageManager', 'Language'),
|
||||||
translate('LanguageManager',
|
translate('OpenLP.LanguageManager',
|
||||||
'After restart new Language settings will be used.'))
|
'Please restart OpenLP to use your new language setting.'))
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def init_qm_list():
|
def init_qm_list():
|
||||||
|
@ -71,7 +71,7 @@ class AlertsPlugin(Plugin):
|
|||||||
self.toolsAlertItem.setText(
|
self.toolsAlertItem.setText(
|
||||||
translate('AlertsPlugin', '&Alert'))
|
translate('AlertsPlugin', '&Alert'))
|
||||||
self.toolsAlertItem.setStatusTip(
|
self.toolsAlertItem.setStatusTip(
|
||||||
translate('AlertsPlugin', 'Show an alert message'))
|
translate('AlertsPlugin', 'Show an alert message.'))
|
||||||
self.toolsAlertItem.setShortcut(u'F7')
|
self.toolsAlertItem.setShortcut(u'F7')
|
||||||
self.serviceManager.parent.ToolsMenu.addAction(self.toolsAlertItem)
|
self.serviceManager.parent.ToolsMenu.addAction(self.toolsAlertItem)
|
||||||
QtCore.QObject.connect(self.toolsAlertItem,
|
QtCore.QObject.connect(self.toolsAlertItem,
|
||||||
@ -99,8 +99,7 @@ class AlertsPlugin(Plugin):
|
|||||||
self.alertForm.exec_()
|
self.alertForm.exec_()
|
||||||
|
|
||||||
def about(self):
|
def about(self):
|
||||||
about_text = translate('AlertsPlugin',
|
about_text = translate('AlertsPlugin', '<strong>Alerts Plugin</strong>'
|
||||||
'<b>Alerts Plugin</b><br>This plugin '
|
'<br />The alert plugin controls the displaying of nursery alerts '
|
||||||
'controls the displaying of alerts on the presentations screen')
|
'on the display screen')
|
||||||
return about_text
|
return about_text
|
||||||
|
|
||||||
|
@ -79,7 +79,7 @@ class AlertsManager(QtCore.QObject):
|
|||||||
if self.timer_id != 0:
|
if self.timer_id != 0:
|
||||||
Receiver.send_message(u'maindisplay_status_text',
|
Receiver.send_message(u'maindisplay_status_text',
|
||||||
translate('AlertsPlugin.AlertsManager',
|
translate('AlertsPlugin.AlertsManager',
|
||||||
'Alert message created and delayed'))
|
'Alert message created and displayed.'))
|
||||||
return
|
return
|
||||||
Receiver.send_message(u'maindisplay_status_text', u'')
|
Receiver.send_message(u'maindisplay_status_text', u'')
|
||||||
self.generateAlert()
|
self.generateAlert()
|
||||||
|
@ -190,13 +190,13 @@ class AlertsTab(SettingsTab):
|
|||||||
self.FontGroupBox.setTitle(
|
self.FontGroupBox.setTitle(
|
||||||
translate('AlertsPlugin.AlertsTab', 'Font'))
|
translate('AlertsPlugin.AlertsTab', 'Font'))
|
||||||
self.FontLabel.setText(
|
self.FontLabel.setText(
|
||||||
translate('AlertsPlugin.AlertsTab', 'Font Name:'))
|
translate('AlertsPlugin.AlertsTab', 'Font name:'))
|
||||||
self.FontColorLabel.setText(
|
self.FontColorLabel.setText(
|
||||||
translate('AlertsPlugin.AlertsTab', 'Font Color:'))
|
translate('AlertsPlugin.AlertsTab', 'Font color:'))
|
||||||
self.BackgroundColorLabel.setText(
|
self.BackgroundColorLabel.setText(
|
||||||
translate('AlertsPlugin.AlertsTab', 'Background Color:'))
|
translate('AlertsPlugin.AlertsTab', 'Background color:'))
|
||||||
self.FontSizeLabel.setText(
|
self.FontSizeLabel.setText(
|
||||||
translate('AlertsPlugin.AlertsTab', 'Font Size:'))
|
translate('AlertsPlugin.AlertsTab', 'Font size:'))
|
||||||
self.FontSizeSpinBox.setSuffix(
|
self.FontSizeSpinBox.setSuffix(
|
||||||
translate('AlertsPlugin.AlertsTab', 'pt'))
|
translate('AlertsPlugin.AlertsTab', 'pt'))
|
||||||
self.TimeoutLabel.setText(
|
self.TimeoutLabel.setText(
|
||||||
@ -208,7 +208,7 @@ class AlertsTab(SettingsTab):
|
|||||||
self.PreviewGroupBox.setTitle(
|
self.PreviewGroupBox.setTitle(
|
||||||
translate('AlertsPlugin.AlertsTab', 'Preview'))
|
translate('AlertsPlugin.AlertsTab', 'Preview'))
|
||||||
self.FontPreview.setText(
|
self.FontPreview.setText(
|
||||||
translate('AlertsPlugin.AlertsTab', 'openlp.org'))
|
translate('AlertsPlugin.AlertsTab', 'OpenLP 2.0'))
|
||||||
self.LocationComboBox.setItemText(0,
|
self.LocationComboBox.setItemText(0,
|
||||||
translate('AlertsPlugin.AlertsTab', 'Top'))
|
translate('AlertsPlugin.AlertsTab', 'Top'))
|
||||||
self.LocationComboBox.setItemText(1,
|
self.LocationComboBox.setItemText(1,
|
||||||
|
@ -70,7 +70,7 @@ class BiblePlugin(Plugin):
|
|||||||
self.ImportBibleItem.setObjectName(u'ImportBibleItem')
|
self.ImportBibleItem.setObjectName(u'ImportBibleItem')
|
||||||
import_menu.addAction(self.ImportBibleItem)
|
import_menu.addAction(self.ImportBibleItem)
|
||||||
self.ImportBibleItem.setText(
|
self.ImportBibleItem.setText(
|
||||||
translate('BiblePlugin', '&Bible'))
|
translate('BiblesPlugin', '&Bible'))
|
||||||
# signals and slots
|
# signals and slots
|
||||||
QtCore.QObject.connect(self.ImportBibleItem,
|
QtCore.QObject.connect(self.ImportBibleItem,
|
||||||
QtCore.SIGNAL(u'triggered()'), self.onBibleImportClick)
|
QtCore.SIGNAL(u'triggered()'), self.onBibleImportClick)
|
||||||
@ -81,7 +81,7 @@ class BiblePlugin(Plugin):
|
|||||||
self.ExportBibleItem.setObjectName(u'ExportBibleItem')
|
self.ExportBibleItem.setObjectName(u'ExportBibleItem')
|
||||||
export_menu.addAction(self.ExportBibleItem)
|
export_menu.addAction(self.ExportBibleItem)
|
||||||
self.ExportBibleItem.setText(translate(
|
self.ExportBibleItem.setText(translate(
|
||||||
'BiblePlugin', '&Bible'))
|
'BiblesPlugin', '&Bible'))
|
||||||
self.ExportBibleItem.setVisible(False)
|
self.ExportBibleItem.setVisible(False)
|
||||||
|
|
||||||
def onBibleImportClick(self):
|
def onBibleImportClick(self):
|
||||||
@ -89,10 +89,9 @@ class BiblePlugin(Plugin):
|
|||||||
self.mediaItem.onImportClick()
|
self.mediaItem.onImportClick()
|
||||||
|
|
||||||
def about(self):
|
def about(self):
|
||||||
about_text = translate('BiblePlugin',
|
about_text = translate('BiblesPlugin', '<strong>Bible Plugin</strong>'
|
||||||
'<strong>Bible Plugin</strong><br />This '
|
'<br />The Bible plugin provides the ability to display bible '
|
||||||
'plugin allows bible verses from different sources to be '
|
'verses from different sources during the service.')
|
||||||
'displayed on the screen during the service.')
|
|
||||||
return about_text
|
return about_text
|
||||||
|
|
||||||
def usesTheme(self, theme):
|
def usesTheme(self, theme):
|
||||||
|
@ -334,13 +334,13 @@ class Ui_BibleImportWizard(object):
|
|||||||
self.FormatComboBox.setItemText(3,
|
self.FormatComboBox.setItemText(3,
|
||||||
translate('BiblesPlugin.ImportWizardForm', 'Web Download'))
|
translate('BiblesPlugin.ImportWizardForm', 'Web Download'))
|
||||||
self.OsisLocationLabel.setText(
|
self.OsisLocationLabel.setText(
|
||||||
translate('BiblesPlugin.ImportWizardForm', 'File Location:'))
|
translate('BiblesPlugin.ImportWizardForm', 'File location:'))
|
||||||
self.BooksLocationLabel.setText(
|
self.BooksLocationLabel.setText(
|
||||||
translate('BiblesPlugin.ImportWizardForm', 'Books Location:'))
|
translate('BiblesPlugin.ImportWizardForm', 'Books location:'))
|
||||||
self.VerseLocationLabel.setText(
|
self.VerseLocationLabel.setText(
|
||||||
translate('BiblesPlugin.ImportWizardForm', 'Verse Location:'))
|
translate('BiblesPlugin.ImportWizardForm', 'Verse location:'))
|
||||||
self.OpenSongFileLabel.setText(
|
self.OpenSongFileLabel.setText(
|
||||||
translate('BiblesPlugin.ImportWizardForm', 'Bible Filename:'))
|
translate('BiblesPlugin.ImportWizardForm', 'Bible filename:'))
|
||||||
self.LocationLabel.setText(
|
self.LocationLabel.setText(
|
||||||
translate('BiblesPlugin.ImportWizardForm', 'Location:'))
|
translate('BiblesPlugin.ImportWizardForm', 'Location:'))
|
||||||
self.LocationComboBox.setItemText(0,
|
self.LocationComboBox.setItemText(0,
|
||||||
@ -368,7 +368,7 @@ class Ui_BibleImportWizard(object):
|
|||||||
translate('BiblesPlugin.ImportWizardForm',
|
translate('BiblesPlugin.ImportWizardForm',
|
||||||
'Set up the Bible\'s license details.'))
|
'Set up the Bible\'s license details.'))
|
||||||
self.VersionNameLabel.setText(
|
self.VersionNameLabel.setText(
|
||||||
translate('BiblesPlugin.ImportWizardForm', 'Version Name:'))
|
translate('BiblesPlugin.ImportWizardForm', 'Version name:'))
|
||||||
self.CopyrightLabel.setText(
|
self.CopyrightLabel.setText(
|
||||||
translate('BiblesPlugin.ImportWizardForm', 'Copyright:'))
|
translate('BiblesPlugin.ImportWizardForm', 'Copyright:'))
|
||||||
self.PermissionLabel.setText(
|
self.PermissionLabel.setText(
|
||||||
@ -381,3 +381,4 @@ class Ui_BibleImportWizard(object):
|
|||||||
self.ImportProgressLabel.setText(
|
self.ImportProgressLabel.setText(
|
||||||
translate('BiblesPlugin.ImportWizardForm', 'Ready.'))
|
translate('BiblesPlugin.ImportWizardForm', 'Ready.'))
|
||||||
self.ImportProgressBar.setFormat(u'%p%')
|
self.ImportProgressBar.setFormat(u'%p%')
|
||||||
|
|
||||||
|
@ -45,7 +45,7 @@ class BiblesTab(SettingsTab):
|
|||||||
|
|
||||||
def setupUi(self):
|
def setupUi(self):
|
||||||
self.setObjectName(u'BiblesTab')
|
self.setObjectName(u'BiblesTab')
|
||||||
self.tabTitleVisible = translate('BiblesPlugin,BiblesTab', 'Bibles')
|
self.tabTitleVisible = translate('BiblesPlugin.BiblesTab', 'Bibles')
|
||||||
self.BibleLayout = QtGui.QHBoxLayout(self)
|
self.BibleLayout = QtGui.QHBoxLayout(self)
|
||||||
self.BibleLayout.setSpacing(8)
|
self.BibleLayout.setSpacing(8)
|
||||||
self.BibleLayout.setMargin(8)
|
self.BibleLayout.setMargin(8)
|
||||||
@ -150,34 +150,34 @@ class BiblesTab(SettingsTab):
|
|||||||
|
|
||||||
def retranslateUi(self):
|
def retranslateUi(self):
|
||||||
self.VerseDisplayGroupBox.setTitle(
|
self.VerseDisplayGroupBox.setTitle(
|
||||||
translate('BiblesPlugin,BiblesTab', 'Verse Display'))
|
translate('BiblesPlugin.BiblesTab', 'Verse Display'))
|
||||||
self.NewChaptersCheckBox.setText(
|
self.NewChaptersCheckBox.setText(
|
||||||
translate('BiblesPlugin,BiblesTab',
|
translate('BiblesPlugin.BiblesTab',
|
||||||
'Only show new chapter numbers'))
|
'Only show new chapter numbers'))
|
||||||
self.LayoutStyleLabel.setText(
|
self.LayoutStyleLabel.setText(
|
||||||
translate('BiblesPlugin,BiblesTab', 'Layout Style:'))
|
translate('BiblesPlugin.BiblesTab', 'Layout style:'))
|
||||||
self.DisplayStyleLabel.setText(
|
self.DisplayStyleLabel.setText(
|
||||||
translate('BiblesPlugin,BiblesTab', 'Display Style:'))
|
translate('BiblesPlugin.BiblesTab', 'Display style:'))
|
||||||
self.BibleThemeLabel.setText(
|
self.BibleThemeLabel.setText(
|
||||||
translate('BiblesPlugin,BiblesTab', 'Bible Theme:'))
|
translate('BiblesPlugin.BiblesTab', 'Bible theme:'))
|
||||||
self.LayoutStyleComboBox.setItemText(0,
|
self.LayoutStyleComboBox.setItemText(0,
|
||||||
translate('BiblesPlugin,BiblesTab', 'verse per slide'))
|
translate('BiblesPlugin.BiblesTab', 'Verse Per Slide'))
|
||||||
self.LayoutStyleComboBox.setItemText(1,
|
self.LayoutStyleComboBox.setItemText(1,
|
||||||
translate('BiblesPlugin,BiblesTab', 'verse per line'))
|
translate('BiblesPlugin.BiblesTab', 'Verse Per Line'))
|
||||||
self.LayoutStyleComboBox.setItemText(2,
|
self.LayoutStyleComboBox.setItemText(2,
|
||||||
translate('BiblesPlugin,BiblesTab', 'continuous'))
|
translate('BiblesPlugin.BiblesTab', 'Continuous'))
|
||||||
self.DisplayStyleComboBox.setItemText(0,
|
self.DisplayStyleComboBox.setItemText(0,
|
||||||
translate('BiblesPlugin,BiblesTab', 'No brackets'))
|
translate('BiblesPlugin.BiblesTab', 'No Brackets'))
|
||||||
self.DisplayStyleComboBox.setItemText(1,
|
self.DisplayStyleComboBox.setItemText(1,
|
||||||
translate('BiblesPlugin,BiblesTab', '( and )'))
|
translate('BiblesPlugin.BiblesTab', '( And )'))
|
||||||
self.DisplayStyleComboBox.setItemText(2,
|
self.DisplayStyleComboBox.setItemText(2,
|
||||||
translate('BiblesPlugin,BiblesTab', '{ and }'))
|
translate('BiblesPlugin.BiblesTab', '{ And }'))
|
||||||
self.DisplayStyleComboBox.setItemText(3,
|
self.DisplayStyleComboBox.setItemText(3,
|
||||||
translate('BiblesPlugin,BiblesTab', '[ and ]'))
|
translate('BiblesPlugin.BiblesTab', '[ And ]'))
|
||||||
self.ChangeNoteLabel.setText(translate('BiblesPlugin.BiblesTab',
|
self.ChangeNoteLabel.setText(translate('BiblesPlugin.BiblesTab',
|
||||||
'Note:\nChanges don\'t affect verses already in the service'))
|
'Note:\nChanges do not affect verses already in the service.'))
|
||||||
self.BibleDualCheckBox.setText(
|
self.BibleDualCheckBox.setText(
|
||||||
translate('BiblesPlugin,BiblesTab', 'Display Dual Bible Verses'))
|
translate('BiblesPlugin.BiblesTab', 'Display dual Bible verses'))
|
||||||
|
|
||||||
def onBibleThemeComboBoxChanged(self):
|
def onBibleThemeComboBoxChanged(self):
|
||||||
self.bible_theme = self.BibleThemeComboBox.currentText()
|
self.bible_theme = self.BibleThemeComboBox.currentText()
|
||||||
|
@ -343,11 +343,11 @@ class BibleDB(QtCore.QObject, Manager):
|
|||||||
else:
|
else:
|
||||||
log.debug(u'OpenLP failed to find book %s', book)
|
log.debug(u'OpenLP failed to find book %s', book)
|
||||||
QtGui.QMessageBox.information(self.bible_plugin.mediaItem,
|
QtGui.QMessageBox.information(self.bible_plugin.mediaItem,
|
||||||
translate('BibleDB', 'Book not found'),
|
translate('BiblesPlugin.BibleDB', 'Book not found'),
|
||||||
translate('BibleDB', u'The book you requested could not '
|
translate('BiblesPlugin.BibleDB', 'The book you requested '
|
||||||
'be found in this bible. Please check your spelling '
|
'could not be found in this bible. Please check your '
|
||||||
'and that this is a complete bible not just one '
|
'spelling and that this is a complete bible not just '
|
||||||
'testament.'))
|
'one testament.'))
|
||||||
return verse_list
|
return verse_list
|
||||||
|
|
||||||
def verse_search(self, text):
|
def verse_search(self, text):
|
||||||
|
@ -294,7 +294,7 @@ class BibleMediaItem(MediaManagerItem):
|
|||||||
self.QuickSecondVersionLabel.setText(
|
self.QuickSecondVersionLabel.setText(
|
||||||
translate('BiblesPlugin.MediaItem', 'Dual:'))
|
translate('BiblesPlugin.MediaItem', 'Dual:'))
|
||||||
self.QuickSearchLabel.setText(
|
self.QuickSearchLabel.setText(
|
||||||
translate('BiblesPlugin.MediaItem', 'Search Type:'))
|
translate('BiblesPlugin.MediaItem', 'Search type:'))
|
||||||
self.QuickSearchLabel.setText(
|
self.QuickSearchLabel.setText(
|
||||||
translate('BiblesPlugin.MediaItem', 'Find:'))
|
translate('BiblesPlugin.MediaItem', 'Find:'))
|
||||||
self.QuickSearchButton.setText(
|
self.QuickSearchButton.setText(
|
||||||
@ -611,7 +611,7 @@ class BibleMediaItem(MediaManagerItem):
|
|||||||
if self.verses == 0:
|
if self.verses == 0:
|
||||||
self.AdvancedSearchButton.setEnabled(False)
|
self.AdvancedSearchButton.setEnabled(False)
|
||||||
self.AdvancedMessage.setText(
|
self.AdvancedMessage.setText(
|
||||||
translate('BiblesPlugin.MediaItem', 'Bible not fully loaded'))
|
translate('BiblesPlugin.MediaItem', 'Bible not fully loaded.'))
|
||||||
else:
|
else:
|
||||||
self.AdvancedSearchButton.setEnabled(True)
|
self.AdvancedSearchButton.setEnabled(True)
|
||||||
self.AdvancedMessage.setText(u'')
|
self.AdvancedMessage.setText(u'')
|
||||||
|
@ -62,11 +62,11 @@ class CustomPlugin(Plugin):
|
|||||||
return CustomMediaItem(self, self.icon, self.name)
|
return CustomMediaItem(self, self.icon, self.name)
|
||||||
|
|
||||||
def about(self):
|
def about(self):
|
||||||
about_text = translate('CustomPlugin',
|
about_text = translate('CustomPlugin', '<strong>Custom Plugin</strong>'
|
||||||
'<b>Custom Plugin</b><br>This plugin '
|
'<br />The custom plugin provides the ability to set up custom '
|
||||||
'allows slides to be displayed on the screen in the same way '
|
'text slides that can be displayed on the screen the same way '
|
||||||
'songs are. This plugin provides greater freedom over the '
|
'songs are. This plugin provides greater freedom over the songs '
|
||||||
'songs plugin.<br>')
|
'plugin.')
|
||||||
return about_text
|
return about_text
|
||||||
|
|
||||||
def usesTheme(self, theme):
|
def usesTheme(self, theme):
|
||||||
|
@ -141,31 +141,38 @@ class Ui_customEditDialog(object):
|
|||||||
customEditDialog.setWindowTitle(
|
customEditDialog.setWindowTitle(
|
||||||
translate('CustomPlugin.EditCustomForm', 'Edit Custom Slides'))
|
translate('CustomPlugin.EditCustomForm', 'Edit Custom Slides'))
|
||||||
self.UpButton.setToolTip(
|
self.UpButton.setToolTip(
|
||||||
translate('CustomPlugin.EditCustomForm', 'Move slide Up 1'))
|
translate('CustomPlugin.EditCustomForm', 'Move slide up once '
|
||||||
|
'position.'))
|
||||||
self.DownButton.setToolTip(
|
self.DownButton.setToolTip(
|
||||||
translate('CustomPlugin.EditCustomForm', 'Move slide down 1'))
|
translate('CustomPlugin.EditCustomForm', 'Move slide down one '
|
||||||
|
'position.'))
|
||||||
self.TitleLabel.setText(
|
self.TitleLabel.setText(
|
||||||
translate('CustomPlugin.EditCustomForm', '&Title:'))
|
translate('CustomPlugin.EditCustomForm', '&Title:'))
|
||||||
self.AddButton.setText(
|
self.AddButton.setText(
|
||||||
translate('CustomPlugin.EditCustomForm', 'Add New'))
|
translate('CustomPlugin.EditCustomForm', 'Add New'))
|
||||||
self.AddButton.setToolTip(
|
self.AddButton.setToolTip(
|
||||||
translate('CustomPlugin.EditCustomForm', 'Add new slide at bottom'))
|
translate('CustomPlugin.EditCustomForm', 'Add a new slide at '
|
||||||
|
'bottom.'))
|
||||||
self.EditButton.setText(
|
self.EditButton.setText(
|
||||||
translate('CustomPlugin.EditCustomForm', 'Edit'))
|
translate('CustomPlugin.EditCustomForm', 'Edit'))
|
||||||
self.EditButton.setToolTip(
|
self.EditButton.setToolTip(
|
||||||
translate('CustomPlugin.EditCustomForm', 'Edit selected slide'))
|
translate('CustomPlugin.EditCustomForm', 'Edit the selected '
|
||||||
|
'slide.'))
|
||||||
self.EditAllButton.setText(
|
self.EditAllButton.setText(
|
||||||
translate('CustomPlugin.EditCustomForm', 'Edit All'))
|
translate('CustomPlugin.EditCustomForm', 'Edit All'))
|
||||||
self.EditAllButton.setToolTip(
|
self.EditAllButton.setToolTip(
|
||||||
translate('CustomPlugin.EditCustomForm', 'Edit all slides'))
|
translate('CustomPlugin.EditCustomForm', 'Edit all the slides at '
|
||||||
|
'once.'))
|
||||||
self.SaveButton.setText(
|
self.SaveButton.setText(
|
||||||
translate('CustomPlugin.EditCustomForm', 'Save'))
|
translate('CustomPlugin.EditCustomForm', 'Save'))
|
||||||
self.SaveButton.setToolTip(
|
self.SaveButton.setToolTip(
|
||||||
translate('CustomPlugin.EditCustomForm', 'Replace edited slide'))
|
translate('CustomPlugin.EditCustomForm', 'Save the slide currently '
|
||||||
|
'being edited.'))
|
||||||
self.DeleteButton.setText(
|
self.DeleteButton.setText(
|
||||||
translate('CustomPlugin.EditCustomForm', 'Delete'))
|
translate('CustomPlugin.EditCustomForm', 'Delete'))
|
||||||
self.DeleteButton.setToolTip(
|
self.DeleteButton.setToolTip(
|
||||||
translate('CustomPlugin.EditCustomForm', 'Delete selected slide'))
|
translate('CustomPlugin.EditCustomForm', 'Delete the selected '
|
||||||
|
'slide.'))
|
||||||
self.ClearButton.setText(
|
self.ClearButton.setText(
|
||||||
translate('CustomPlugin.EditCustomForm', 'Clear'))
|
translate('CustomPlugin.EditCustomForm', 'Clear'))
|
||||||
self.ClearButton.setToolTip(
|
self.ClearButton.setToolTip(
|
||||||
@ -173,7 +180,8 @@ class Ui_customEditDialog(object):
|
|||||||
self.SplitButton.setText(
|
self.SplitButton.setText(
|
||||||
translate('CustomPlugin.EditCustomForm', 'Split Slide'))
|
translate('CustomPlugin.EditCustomForm', 'Split Slide'))
|
||||||
self.SplitButton.setToolTip(
|
self.SplitButton.setToolTip(
|
||||||
translate('CustomPlugin.EditCustomForm', 'Add slide split'))
|
translate('CustomPlugin.EditCustomForm', 'Split a slide into two '
|
||||||
|
'by inserting a slide splitter.'))
|
||||||
self.ThemeLabel.setText(
|
self.ThemeLabel.setText(
|
||||||
translate('CustomPlugin.EditCustomForm', 'The&me:'))
|
translate('CustomPlugin.EditCustomForm', 'The&me:'))
|
||||||
self.CreditLabel.setText(
|
self.CreditLabel.setText(
|
||||||
|
@ -269,14 +269,16 @@ class EditCustomForm(QtGui.QDialog, Ui_customEditDialog):
|
|||||||
if len(self.TitleEdit.displayText()) == 0:
|
if len(self.TitleEdit.displayText()) == 0:
|
||||||
self.TitleEdit.setFocus()
|
self.TitleEdit.setFocus()
|
||||||
return False, translate('CustomPlugin.EditCustomForm',
|
return False, translate('CustomPlugin.EditCustomForm',
|
||||||
'You need to enter a title')
|
'You need to type in a title.')
|
||||||
# must have 1 slide
|
# must have 1 slide
|
||||||
if self.VerseListView.count() == 0:
|
if self.VerseListView.count() == 0:
|
||||||
self.VerseTextEdit.setFocus()
|
self.VerseTextEdit.setFocus()
|
||||||
return False, translate('CustomPlugin.EditCustomForm',
|
return False, translate('CustomPlugin.EditCustomForm',
|
||||||
'You need to enter a slide')
|
'You need to add at least one slide')
|
||||||
if self.VerseTextEdit.toPlainText():
|
if self.VerseTextEdit.toPlainText():
|
||||||
self.VerseTextEdit.setFocus()
|
self.VerseTextEdit.setFocus()
|
||||||
return False, translate('CustomPlugin.editCustomForm',
|
return False, translate('CustomPlugin.EditCustomForm',
|
||||||
'You have unsaved data, please save or clear')
|
'You have one or more unsaved slides, please either save your '
|
||||||
|
'slide(s) or clear your changes.')
|
||||||
return True, u''
|
return True, u''
|
||||||
|
|
||||||
|
@ -38,6 +38,8 @@ class CustomTab(SettingsTab):
|
|||||||
self.setObjectName(u'CustomTab')
|
self.setObjectName(u'CustomTab')
|
||||||
self.tabTitleVisible = translate('CustomPlugin.CustomTab', 'Custom')
|
self.tabTitleVisible = translate('CustomPlugin.CustomTab', 'Custom')
|
||||||
self.CustomLayout = QtGui.QFormLayout(self)
|
self.CustomLayout = QtGui.QFormLayout(self)
|
||||||
|
self.CustomLayout.setSpacing(8)
|
||||||
|
self.CustomLayout.setMargin(8)
|
||||||
self.CustomLayout.setObjectName(u'CustomLayout')
|
self.CustomLayout.setObjectName(u'CustomLayout')
|
||||||
self.CustomModeGroupBox = QtGui.QGroupBox(self)
|
self.CustomModeGroupBox = QtGui.QGroupBox(self)
|
||||||
self.CustomModeGroupBox.setObjectName(u'CustomModeGroupBox')
|
self.CustomModeGroupBox.setObjectName(u'CustomModeGroupBox')
|
||||||
@ -58,7 +60,7 @@ class CustomTab(SettingsTab):
|
|||||||
self.CustomModeGroupBox.setTitle(translate('CustomPlugin.CustomTab',
|
self.CustomModeGroupBox.setTitle(translate('CustomPlugin.CustomTab',
|
||||||
'Custom Display'))
|
'Custom Display'))
|
||||||
self.DisplayFooterCheckBox.setText(
|
self.DisplayFooterCheckBox.setText(
|
||||||
translate('CustomPlugin.CustomTab', 'Display Footer'))
|
translate('CustomPlugin.CustomTab', 'Display footer'))
|
||||||
|
|
||||||
def onDisplayFooterCheckBoxChanged(self, check_state):
|
def onDisplayFooterCheckBoxChanged(self, check_state):
|
||||||
self.displayFooter = False
|
self.displayFooter = False
|
||||||
|
@ -121,7 +121,7 @@ class CustomMediaItem(MediaManagerItem):
|
|||||||
"""
|
"""
|
||||||
if check_item_selected(self.listView,
|
if check_item_selected(self.listView,
|
||||||
translate('CustomPlugin.MediaItem',
|
translate('CustomPlugin.MediaItem',
|
||||||
'You must select an item to edit.')):
|
'You haven\'t selected an item to edit.')):
|
||||||
item = self.listView.currentItem()
|
item = self.listView.currentItem()
|
||||||
item_id = (item.data(QtCore.Qt.UserRole)).toInt()[0]
|
item_id = (item.data(QtCore.Qt.UserRole)).toInt()[0]
|
||||||
self.parent.edit_custom_form.loadCustom(item_id, False)
|
self.parent.edit_custom_form.loadCustom(item_id, False)
|
||||||
@ -134,7 +134,7 @@ class CustomMediaItem(MediaManagerItem):
|
|||||||
"""
|
"""
|
||||||
if check_item_selected(self.listView,
|
if check_item_selected(self.listView,
|
||||||
translate('CustomPlugin.MediaItem',
|
translate('CustomPlugin.MediaItem',
|
||||||
'You must select an item to delete.')):
|
'You haven\'t selected an item to delete.')):
|
||||||
row_list = [item.row() for item in self.listView.selectedIndexes()]
|
row_list = [item.row() for item in self.listView.selectedIndexes()]
|
||||||
row_list.sort(reverse=True)
|
row_list.sort(reverse=True)
|
||||||
id_list = [(item.data(QtCore.Qt.UserRole)).toInt()[0]
|
id_list = [(item.data(QtCore.Qt.UserRole)).toInt()[0]
|
||||||
|
@ -48,12 +48,15 @@ class ImagePlugin(Plugin):
|
|||||||
return ImageMediaItem(self, self.icon, self.name)
|
return ImageMediaItem(self, self.icon, self.name)
|
||||||
|
|
||||||
def about(self):
|
def about(self):
|
||||||
about_text = translate('ImagePlugin', '<b>Image Plugin'
|
about_text = translate('ImagePlugin', '<strong>Image Plugin</strong>'
|
||||||
'</b><br>Allows images of all types to be displayed. If a number '
|
'<br />The image plugin provides displaying of images.<br />One '
|
||||||
'of images are selected together and presented on the live '
|
'of the distinguishing features of this plugin is the ability to '
|
||||||
'controller it is possible to turn them into a timed loop.<br<br>'
|
'group a number of images together in the service manager, making '
|
||||||
'From the plugin if the <i>Override background</i> is chosen and '
|
'the displaying of multiple images easier. This plugin can also '
|
||||||
'an image is selected any songs which are rendered will use the '
|
'make use of OpenLP\'s "timed looping" feature to create a slide '
|
||||||
'selected image from the background instead of the one provied by '
|
'show that runs automatically. In addition to this, images from '
|
||||||
'the theme.<br>')
|
'the plugin can be used to override the current theme\'s '
|
||||||
return about_text
|
'background, which renders text-based items like songs with the '
|
||||||
|
'selected image as a background instead of the background '
|
||||||
|
'provided by the theme.')
|
||||||
|
return about_text
|
||||||
|
@ -38,6 +38,8 @@ class ImageTab(SettingsTab):
|
|||||||
self.setObjectName(u'ImageTab')
|
self.setObjectName(u'ImageTab')
|
||||||
self.tabTitleVisible = translate('ImagePlugin.ImageTab', 'Images')
|
self.tabTitleVisible = translate('ImagePlugin.ImageTab', 'Images')
|
||||||
self.ImageLayout = QtGui.QFormLayout(self)
|
self.ImageLayout = QtGui.QFormLayout(self)
|
||||||
|
self.ImageLayout.setSpacing(8)
|
||||||
|
self.ImageLayout.setMargin(8)
|
||||||
self.ImageLayout.setObjectName(u'ImageLayout')
|
self.ImageLayout.setObjectName(u'ImageLayout')
|
||||||
self.ImageSettingsGroupBox = QtGui.QGroupBox(self)
|
self.ImageSettingsGroupBox = QtGui.QGroupBox(self)
|
||||||
self.ImageSettingsGroupBox.setObjectName(u'ImageSettingsGroupBox')
|
self.ImageSettingsGroupBox.setObjectName(u'ImageSettingsGroupBox')
|
||||||
@ -66,7 +68,7 @@ class ImageTab(SettingsTab):
|
|||||||
self.ImageSettingsGroupBox.setTitle(
|
self.ImageSettingsGroupBox.setTitle(
|
||||||
translate('ImagePlugin.ImageTab', 'Image Settings'))
|
translate('ImagePlugin.ImageTab', 'Image Settings'))
|
||||||
self.TimeoutLabel.setText(
|
self.TimeoutLabel.setText(
|
||||||
translate('ImagePlugin.ImageTab', 'Slide Loop Delay:'))
|
translate('ImagePlugin.ImageTab', 'Slide loop delay:'))
|
||||||
self.TimeoutSpinBox.setSuffix(
|
self.TimeoutSpinBox.setSuffix(
|
||||||
translate('ImagePlugin.ImageTab', 'sec'))
|
translate('ImagePlugin.ImageTab', 'sec'))
|
||||||
|
|
||||||
@ -88,3 +90,4 @@ class ImageTab(SettingsTab):
|
|||||||
def postSetUp(self):
|
def postSetUp(self):
|
||||||
Receiver.send_message(u'slidecontroller_live_spin_delay',
|
Receiver.send_message(u'slidecontroller_live_spin_delay',
|
||||||
self.loop_delay)
|
self.loop_delay)
|
||||||
|
|
||||||
|
@ -105,9 +105,10 @@ class ImageMediaItem(MediaManagerItem):
|
|||||||
self.ImageWidget.setSizePolicy(sizePolicy)
|
self.ImageWidget.setSizePolicy(sizePolicy)
|
||||||
self.ImageWidget.setObjectName(u'ImageWidget')
|
self.ImageWidget.setObjectName(u'ImageWidget')
|
||||||
self.blankButton = self.toolbar.addToolbarButton(
|
self.blankButton = self.toolbar.addToolbarButton(
|
||||||
u'Replace Background', u':/slides/slide_blank.png',
|
translate('ImagePlugin.MediaItem', 'Replace Background'),
|
||||||
|
u':/slides/slide_blank.png',
|
||||||
translate('ImagePlugin.MediaItem', 'Replace Live Background'),
|
translate('ImagePlugin.MediaItem', 'Replace Live Background'),
|
||||||
self.onReplaceClick, False)
|
self.onReplaceClick, False)
|
||||||
# Add the song widget to the page layout
|
# Add the song widget to the page layout
|
||||||
self.pageLayout.addWidget(self.ImageWidget)
|
self.pageLayout.addWidget(self.ImageWidget)
|
||||||
|
|
||||||
@ -116,7 +117,7 @@ class ImageMediaItem(MediaManagerItem):
|
|||||||
Remove an image item from the list
|
Remove an image item from the list
|
||||||
"""
|
"""
|
||||||
if check_item_selected(self.listView, translate('ImagePlugin.MediaItem',
|
if check_item_selected(self.listView, translate('ImagePlugin.MediaItem',
|
||||||
'You must select an item to delete.')):
|
'You must select an image to delete.')):
|
||||||
row_list = [item.row() for item in self.listView.selectedIndexes()]
|
row_list = [item.row() for item in self.listView.selectedIndexes()]
|
||||||
row_list.sort(reverse=True)
|
row_list.sort(reverse=True)
|
||||||
for row in row_list:
|
for row in row_list:
|
||||||
@ -170,7 +171,7 @@ class ImageMediaItem(MediaManagerItem):
|
|||||||
def onReplaceClick(self):
|
def onReplaceClick(self):
|
||||||
if check_item_selected(self.listView,
|
if check_item_selected(self.listView,
|
||||||
translate('ImagePlugin.MediaItem',
|
translate('ImagePlugin.MediaItem',
|
||||||
'You must select an item to process.')):
|
'You must select an image to replace the background with.')):
|
||||||
items = self.listView.selectedIndexes()
|
items = self.listView.selectedIndexes()
|
||||||
for item in items:
|
for item in items:
|
||||||
bitem = self.listView.item(item.row())
|
bitem = self.listView.item(item.row())
|
||||||
@ -180,3 +181,4 @@ class ImageMediaItem(MediaManagerItem):
|
|||||||
|
|
||||||
def onPreviewClick(self):
|
def onPreviewClick(self):
|
||||||
MediaManagerItem.onPreviewClick(self)
|
MediaManagerItem.onPreviewClick(self)
|
||||||
|
|
||||||
|
@ -92,17 +92,17 @@ class MediaMediaItem(MediaManagerItem):
|
|||||||
self.ImageWidget.setObjectName(u'ImageWidget')
|
self.ImageWidget.setObjectName(u'ImageWidget')
|
||||||
#Replace backgrounds do not work at present so remove functionality.
|
#Replace backgrounds do not work at present so remove functionality.
|
||||||
self.blankButton = self.toolbar.addToolbarButton(
|
self.blankButton = self.toolbar.addToolbarButton(
|
||||||
u'Replace Background', u':/slides/slide_blank.png',
|
translate('MediaPlugin.MediaItem', 'Replace Background'),
|
||||||
|
u':/slides/slide_blank.png',
|
||||||
translate('MediaPlugin.MediaItem', 'Replace Live Background'),
|
translate('MediaPlugin.MediaItem', 'Replace Live Background'),
|
||||||
self.onReplaceClick, False)
|
self.onReplaceClick, False)
|
||||||
# Add the song widget to the page layout
|
# Add the song widget to the page layout
|
||||||
self.pageLayout.addWidget(self.ImageWidget)
|
self.pageLayout.addWidget(self.ImageWidget)
|
||||||
|
|
||||||
def onReplaceClick(self):
|
def onReplaceClick(self):
|
||||||
|
|
||||||
if check_item_selected(self.listView,
|
if check_item_selected(self.listView,
|
||||||
translate('ImagePlugin.MediaItem',
|
translate('ImagePlugin.MediaItem',
|
||||||
'You must select an item to process.')):
|
'You must select a media file to replace the background with.')):
|
||||||
item = self.listView.currentItem()
|
item = self.listView.currentItem()
|
||||||
filename = unicode(item.data(QtCore.Qt.UserRole).toString())
|
filename = unicode(item.data(QtCore.Qt.UserRole).toString())
|
||||||
self.parent.displayManager.displayVideo(filename)
|
self.parent.displayManager.displayVideo(filename)
|
||||||
@ -133,7 +133,7 @@ class MediaMediaItem(MediaManagerItem):
|
|||||||
Remove a media item from the list
|
Remove a media item from the list
|
||||||
"""
|
"""
|
||||||
if check_item_selected(self.listView, translate('MediaPlugin.MediaItem',
|
if check_item_selected(self.listView, translate('MediaPlugin.MediaItem',
|
||||||
'You must select an item to delete.')):
|
'You must select a media file to delete.')):
|
||||||
row_list = [item.row() for item in self.listView.selectedIndexes()]
|
row_list = [item.row() for item in self.listView.selectedIndexes()]
|
||||||
row_list.sort(reverse=True)
|
row_list.sort(reverse=True)
|
||||||
for row in row_list:
|
for row in row_list:
|
||||||
@ -149,3 +149,4 @@ class MediaMediaItem(MediaManagerItem):
|
|||||||
item_name.setIcon(build_icon(img))
|
item_name.setIcon(build_icon(img))
|
||||||
item_name.setData(QtCore.Qt.UserRole, QtCore.QVariant(file))
|
item_name.setData(QtCore.Qt.UserRole, QtCore.QVariant(file))
|
||||||
self.listView.addItem(item_name)
|
self.listView.addItem(item_name)
|
||||||
|
|
||||||
|
@ -73,7 +73,6 @@ class MediaPlugin(Plugin):
|
|||||||
return MediaMediaItem(self, self.icon, self.name)
|
return MediaMediaItem(self, self.icon, self.name)
|
||||||
|
|
||||||
def about(self):
|
def about(self):
|
||||||
about_text = translate('MediaPlugin',
|
about_text = translate('MediaPlugin', '<strong>Media Plugin</strong>'
|
||||||
'<b>Media Plugin</b><br>This plugin '
|
'<br />The media plugin provides playback of audio and video.')
|
||||||
'allows the playing of audio and video media')
|
|
||||||
return about_text
|
return about_text
|
||||||
|
@ -184,9 +184,9 @@ 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:
|
||||||
QtGui.QMessageBox.critical(
|
QtGui.QMessageBox.critical(self,
|
||||||
self, translate('PresentationPlugin.MediaItem',
|
translate('PresentationPlugin.MediaItem',
|
||||||
'File exists'),
|
'File Exists'),
|
||||||
translate('PresentationPlugin.MediaItem',
|
translate('PresentationPlugin.MediaItem',
|
||||||
'A presentation with that filename already exists.'),
|
'A presentation with that filename already exists.'),
|
||||||
QtGui.QMessageBox.Ok)
|
QtGui.QMessageBox.Ok)
|
||||||
@ -211,7 +211,7 @@ class PresentationMediaItem(MediaManagerItem):
|
|||||||
else:
|
else:
|
||||||
QtGui.QMessageBox.critical(
|
QtGui.QMessageBox.critical(
|
||||||
self, translate('PresentationPlugin.MediaItem',
|
self, translate('PresentationPlugin.MediaItem',
|
||||||
'Unsupported file'),
|
'Unsupported File'),
|
||||||
translate('PresentationPlugin.MediaItem',
|
translate('PresentationPlugin.MediaItem',
|
||||||
'This type of presentation is not supported'),
|
'This type of presentation is not supported'),
|
||||||
QtGui.QMessageBox.Ok)
|
QtGui.QMessageBox.Ok)
|
||||||
@ -299,3 +299,4 @@ class PresentationMediaItem(MediaManagerItem):
|
|||||||
if filetype in self.controllers[controller].alsosupports:
|
if filetype in self.controllers[controller].alsosupports:
|
||||||
return controller
|
return controller
|
||||||
return None
|
return None
|
||||||
|
|
||||||
|
@ -114,9 +114,7 @@ class PresentationTab(SettingsTab):
|
|||||||
for key in self.controllers:
|
for key in self.controllers:
|
||||||
controller = self.controllers[key]
|
controller = self.controllers[key]
|
||||||
checkbox = self.PresenterCheckboxes[controller.name]
|
checkbox = self.PresenterCheckboxes[controller.name]
|
||||||
checkbox.setText(
|
checkbox.setText(controller.name)
|
||||||
u'%s %s' % (controller.name,
|
|
||||||
translate('PresentationPlugin.PresentationTab', 'available')))
|
|
||||||
self.AdvancedGroupBox.setTitle(
|
self.AdvancedGroupBox.setTitle(
|
||||||
translate('PresentationPlugin.PresentationTab',
|
translate('PresentationPlugin.PresentationTab',
|
||||||
'Advanced'))
|
'Advanced'))
|
||||||
|
@ -45,7 +45,7 @@ class PresentationPlugin(Plugin):
|
|||||||
|
|
||||||
def __init__(self, plugin_helpers):
|
def __init__(self, plugin_helpers):
|
||||||
"""
|
"""
|
||||||
PluginPresentation constructor.
|
PluginPresentation constructor.
|
||||||
"""
|
"""
|
||||||
log.debug(u'Initialised')
|
log.debug(u'Initialised')
|
||||||
self.controllers = {}
|
self.controllers = {}
|
||||||
@ -135,9 +135,9 @@ class PresentationPlugin(Plugin):
|
|||||||
"""
|
"""
|
||||||
Return information about this plugin
|
Return information about this plugin
|
||||||
"""
|
"""
|
||||||
about_text = translate('PresentationPlugin',
|
about_text = translate('PresentationPlugin', '<strong>Presentation '
|
||||||
'<b>Presentation Plugin</b> <br> Delivers '
|
'Plugin</strong><br />The presentation plugin provides the '
|
||||||
'the ability to show presentations using a number of different '
|
'ability to show presentations using a number of different '
|
||||||
'programs. The choice of available presentation programs is '
|
'programs. The choice of available presentation programs is '
|
||||||
'available to the user in a drop down box.')
|
'available to the user in a drop down box.')
|
||||||
return about_text
|
return about_text
|
||||||
|
@ -37,30 +37,45 @@ class RemoteTab(SettingsTab):
|
|||||||
def setupUi(self):
|
def setupUi(self):
|
||||||
self.setObjectName(u'RemoteTab')
|
self.setObjectName(u'RemoteTab')
|
||||||
self.tabTitleVisible = translate('RemotePlugin.RemoteTab', 'Remotes')
|
self.tabTitleVisible = translate('RemotePlugin.RemoteTab', 'Remotes')
|
||||||
self.RemoteLayout = QtGui.QFormLayout(self)
|
self.remoteLayout = QtGui.QFormLayout(self)
|
||||||
self.RemoteLayout.setObjectName(u'RemoteLayout')
|
self.remoteLayout.setSpacing(8)
|
||||||
self.RemoteModeGroupBox = QtGui.QGroupBox(self)
|
self.remoteLayout.setMargin(8)
|
||||||
self.RemoteModeGroupBox.setObjectName(u'RemoteModeGroupBox')
|
self.remoteLayout.setObjectName(u'remoteLayout')
|
||||||
self.RemoteModeLayout = QtGui.QVBoxLayout(self.RemoteModeGroupBox)
|
self.serverSettingsGroupBox = QtGui.QGroupBox(self)
|
||||||
self.RemoteModeLayout.setSpacing(8)
|
self.serverSettingsGroupBox.setObjectName(u'serverSettingsGroupBox')
|
||||||
self.RemoteModeLayout.setMargin(8)
|
self.serverSettingsLayout = QtGui.QFormLayout(self.serverSettingsGroupBox)
|
||||||
self.RemoteModeLayout.setObjectName(u'RemoteModeLayout')
|
self.serverSettingsLayout.setSpacing(8)
|
||||||
self.RemotePortSpinBox = QtGui.QSpinBox(self.RemoteModeGroupBox)
|
self.serverSettingsLayout.setMargin(8)
|
||||||
self.RemotePortSpinBox.setObjectName(u'RemotePortSpinBox')
|
self.serverSettingsLayout.setObjectName(u'serverSettingsLayout')
|
||||||
self.RemotePortSpinBox.setMaximum(32767)
|
self.addressEdit = QtGui.QLineEdit(self.serverSettingsGroupBox)
|
||||||
self.RemoteModeLayout.addWidget(self.RemotePortSpinBox)
|
self.addressEdit.setObjectName(u'addressEdit')
|
||||||
self.RemoteLayout.setWidget(
|
self.serverSettingsLayout.addRow(
|
||||||
0, QtGui.QFormLayout.LabelRole, self.RemoteModeGroupBox)
|
translate('RemotePlugin.RemoteTab', 'Serve on IP address:'),
|
||||||
|
self.addressEdit)
|
||||||
|
self.portSpinBox = QtGui.QSpinBox(self.serverSettingsGroupBox)
|
||||||
|
self.portSpinBox.setObjectName(u'portSpinBox')
|
||||||
|
self.portSpinBox.setMaximum(32767)
|
||||||
|
self.serverSettingsLayout.addRow(
|
||||||
|
translate('RemotePlugin.RemoteTab', 'Port number:'),
|
||||||
|
self.portSpinBox)
|
||||||
|
self.remoteLayout.setWidget(
|
||||||
|
0, QtGui.QFormLayout.LabelRole, self.serverSettingsGroupBox)
|
||||||
|
|
||||||
def retranslateUi(self):
|
def retranslateUi(self):
|
||||||
self.RemoteModeGroupBox.setTitle(
|
self.serverSettingsGroupBox.setTitle(
|
||||||
translate('RemotePlugin.RemoteTab', 'Remotes Receiver Port'))
|
translate('RemotePlugin.RemoteTab', 'Server Settings'))
|
||||||
|
|
||||||
def load(self):
|
def load(self):
|
||||||
self.RemotePortSpinBox.setValue(
|
self.portSpinBox.setValue(
|
||||||
QtCore.QSettings().value(self.settingsSection + u'/remote port',
|
QtCore.QSettings().value(self.settingsSection + u'/port',
|
||||||
QtCore.QVariant(4316)).toInt()[0])
|
QtCore.QVariant(4316)).toInt()[0])
|
||||||
|
self.addressEdit.setText(
|
||||||
|
QtCore.QSettings().value(self.settingsSection + u'/ip address',
|
||||||
|
QtCore.QVariant(u'0.0.0.0')).toString())
|
||||||
|
|
||||||
def save(self):
|
def save(self):
|
||||||
QtCore.QSettings().setValue(self.settingsSection + u'/remote port',
|
QtCore.QSettings().setValue(self.settingsSection + u'/port',
|
||||||
QtCore.QVariant(self.RemotePortSpinBox.value()))
|
QtCore.QVariant(self.portSpinBox.value()))
|
||||||
|
QtCore.QSettings().setValue(self.settingsSection + u'/ip address',
|
||||||
|
QtCore.QVariant(self.addressEdit.text()))
|
||||||
|
|
||||||
|
@ -70,9 +70,8 @@ class RemotesPlugin(Plugin):
|
|||||||
"""
|
"""
|
||||||
Information about this plugin
|
Information about this plugin
|
||||||
"""
|
"""
|
||||||
about_text = translate('RemotePlugin',
|
about_text = translate('RemotePlugin', '<strong>Remote Plugin</strong>'
|
||||||
'<b>Remote Plugin</b><br>This plugin '
|
'<br/ >The remote plugin provides the ability to send messages to '
|
||||||
'provides the ability to send messages to a running version of '
|
'a running version of OpenLP on a different computer via a web '
|
||||||
'openlp on a different computer via a web browser or other app<br>'
|
'browser or through the remote API.')
|
||||||
'The Primary use for this would be to send alerts from a creche')
|
return about_text
|
||||||
return about_text
|
|
||||||
|
@ -407,11 +407,11 @@ class Ui_EditSongDialog(object):
|
|||||||
self.TitleLabel.setText(
|
self.TitleLabel.setText(
|
||||||
translate('SongsPlugin.EditSongForm', '&Title:'))
|
translate('SongsPlugin.EditSongForm', '&Title:'))
|
||||||
self.AlternativeTitleLabel.setText(
|
self.AlternativeTitleLabel.setText(
|
||||||
translate('SongsPlugin.EditSongForm', 'Alt&ernate Title:'))
|
translate('SongsPlugin.EditSongForm', 'Alt&ernate title:'))
|
||||||
self.LyricsLabel.setText(
|
self.LyricsLabel.setText(
|
||||||
translate('SongsPlugin.EditSongForm', '&Lyrics:'))
|
translate('SongsPlugin.EditSongForm', '&Lyrics:'))
|
||||||
self.VerseOrderLabel.setText(
|
self.VerseOrderLabel.setText(
|
||||||
translate('SongsPlugin.EditSongForm', '&Verse Order:'))
|
translate('SongsPlugin.EditSongForm', '&Verse order:'))
|
||||||
self.VerseAddButton.setText(
|
self.VerseAddButton.setText(
|
||||||
translate('SongsPlugin.EditSongForm', '&Add'))
|
translate('SongsPlugin.EditSongForm', '&Add'))
|
||||||
self.VerseEditButton.setText(
|
self.VerseEditButton.setText(
|
||||||
@ -452,7 +452,7 @@ class Ui_EditSongDialog(object):
|
|||||||
self.CopyrightInsertButton.setText(
|
self.CopyrightInsertButton.setText(
|
||||||
translate('SongsPlugin.EditSongForm', '\xa9'))
|
translate('SongsPlugin.EditSongForm', '\xa9'))
|
||||||
self.CCLILabel.setText(
|
self.CCLILabel.setText(
|
||||||
translate('SongsPlugin.EditSongForm', 'CCLI Number:'))
|
translate('SongsPlugin.EditSongForm', 'CCLI number:'))
|
||||||
self.CommentsGroupBox.setTitle(
|
self.CommentsGroupBox.setTitle(
|
||||||
translate('SongsPlugin.EditSongForm', 'Comments'))
|
translate('SongsPlugin.EditSongForm', 'Comments'))
|
||||||
self.SongTabWidget.setTabText(
|
self.SongTabWidget.setTabText(
|
||||||
|
@ -93,19 +93,19 @@ class VerseType(object):
|
|||||||
The type to return a string for
|
The type to return a string for
|
||||||
"""
|
"""
|
||||||
if verse_type == VerseType.Verse:
|
if verse_type == VerseType.Verse:
|
||||||
return translate('VerseType', 'Verse')
|
return translate('SongsPlugin.VerseType', 'Verse')
|
||||||
elif verse_type == VerseType.Chorus:
|
elif verse_type == VerseType.Chorus:
|
||||||
return translate('VerseType', 'Chorus')
|
return translate('SongsPlugin.VerseType', 'Chorus')
|
||||||
elif verse_type == VerseType.Bridge:
|
elif verse_type == VerseType.Bridge:
|
||||||
return translate('VerseType', 'Bridge')
|
return translate('SongsPlugin.VerseType', 'Bridge')
|
||||||
elif verse_type == VerseType.PreChorus:
|
elif verse_type == VerseType.PreChorus:
|
||||||
return translate('VerseType', 'Pre-Chorus')
|
return translate('SongsPlugin.VerseType', 'Pre-Chorus')
|
||||||
elif verse_type == VerseType.Intro:
|
elif verse_type == VerseType.Intro:
|
||||||
return translate('VerseType', 'Intro')
|
return translate('SongsPlugin.VerseType', 'Intro')
|
||||||
elif verse_type == VerseType.Ending:
|
elif verse_type == VerseType.Ending:
|
||||||
return translate('VerseType', 'Ending')
|
return translate('SongsPlugin.VerseType', 'Ending')
|
||||||
elif verse_type == VerseType.Other:
|
elif verse_type == VerseType.Other:
|
||||||
return translate('VerseType', 'Other')
|
return translate('SongsPlugin.VerseType', 'Other')
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def from_string(verse_type):
|
def from_string(verse_type):
|
||||||
|
@ -209,9 +209,7 @@ class SongMediaItem(MediaManagerItem):
|
|||||||
self.listView.clear()
|
self.listView.clear()
|
||||||
for author in searchresults:
|
for author in searchresults:
|
||||||
for song in author.songs:
|
for song in author.songs:
|
||||||
song_detail = unicode(
|
song_detail = '%s (%s)' % (author.display_name, song.title)
|
||||||
translate('SongsPlugin.MediaItem', '%s (%s)')) % \
|
|
||||||
(author.display_name, song.title)
|
|
||||||
song_name = QtGui.QListWidgetItem(song_detail)
|
song_name = QtGui.QListWidgetItem(song_detail)
|
||||||
song_name.setData(QtCore.Qt.UserRole, QtCore.QVariant(song.id))
|
song_name.setData(QtCore.Qt.UserRole, QtCore.QVariant(song.id))
|
||||||
self.listView.addItem(song_name)
|
self.listView.addItem(song_name)
|
||||||
@ -270,7 +268,8 @@ class SongMediaItem(MediaManagerItem):
|
|||||||
"""
|
"""
|
||||||
Edit a song
|
Edit a song
|
||||||
"""
|
"""
|
||||||
if check_item_selected(self.listView, translate('SongsPlugin.MediaItem',
|
if check_item_selected(self.listView,
|
||||||
|
translate('SongsPlugin.MediaItem',
|
||||||
'You must select an item to edit.')):
|
'You must select an item to edit.')):
|
||||||
item = self.listView.currentItem()
|
item = self.listView.currentItem()
|
||||||
item_id = (item.data(QtCore.Qt.UserRole)).toInt()[0]
|
item_id = (item.data(QtCore.Qt.UserRole)).toInt()[0]
|
||||||
@ -281,18 +280,19 @@ class SongMediaItem(MediaManagerItem):
|
|||||||
"""
|
"""
|
||||||
Remove a song from the list and database
|
Remove a song from the list and database
|
||||||
"""
|
"""
|
||||||
if check_item_selected(self.listView, translate('SongsPlugin.MediaItem',
|
if check_item_selected(self.listView,
|
||||||
|
translate('SongsPlugin.MediaItem',
|
||||||
'You must select an item to delete.')):
|
'You must select an item to delete.')):
|
||||||
items = self.listView.selectedIndexes()
|
items = self.listView.selectedIndexes()
|
||||||
if len(items) == 1:
|
if len(items) == 1:
|
||||||
del_message = translate('SongsPlugin.MediaItem',
|
del_message = translate('SongsPlugin.MediaItem',
|
||||||
'Delete song?')
|
'Are you sure you want to delete the selected song?')
|
||||||
else:
|
else:
|
||||||
del_message = unicode(
|
del_message = unicode(translate('SongsPlugin.MediaItem',
|
||||||
translate('SongsPlugin.MediaItem',
|
'Are you sure you want to delete the %d selected '
|
||||||
'Delete %d songs?')) % len(items)
|
'songs?')) % len(items)
|
||||||
ans = QtGui.QMessageBox.question(self,
|
ans = QtGui.QMessageBox.question(self,
|
||||||
translate('SongsPlugin.MediaItem', 'Delete Confirmation'),
|
translate('SongsPlugin.MediaItem', 'Delete Song(s)?'),
|
||||||
del_message,
|
del_message,
|
||||||
QtGui.QMessageBox.StandardButtons(QtGui.QMessageBox.Ok|
|
QtGui.QMessageBox.StandardButtons(QtGui.QMessageBox.Ok|
|
||||||
QtGui.QMessageBox.Cancel),
|
QtGui.QMessageBox.Cancel),
|
||||||
|
@ -38,6 +38,8 @@ class SongsTab(SettingsTab):
|
|||||||
self.setObjectName(u'SongsTab')
|
self.setObjectName(u'SongsTab')
|
||||||
self.tabTitleVisible = translate('SongsPlugin.SongsTab', 'Songs')
|
self.tabTitleVisible = translate('SongsPlugin.SongsTab', 'Songs')
|
||||||
self.SongsLayout = QtGui.QFormLayout(self)
|
self.SongsLayout = QtGui.QFormLayout(self)
|
||||||
|
self.SongsLayout.setSpacing(8)
|
||||||
|
self.SongsLayout.setMargin(8)
|
||||||
self.SongsLayout.setObjectName(u'SongsLayout')
|
self.SongsLayout.setObjectName(u'SongsLayout')
|
||||||
self.SongsModeGroupBox = QtGui.QGroupBox(self)
|
self.SongsModeGroupBox = QtGui.QGroupBox(self)
|
||||||
self.SongsModeGroupBox.setObjectName(u'SongsModeGroupBox')
|
self.SongsModeGroupBox.setObjectName(u'SongsModeGroupBox')
|
||||||
@ -66,7 +68,7 @@ class SongsTab(SettingsTab):
|
|||||||
self.SearchAsTypeCheckBox.setText(
|
self.SearchAsTypeCheckBox.setText(
|
||||||
translate('SongsPlugin.SongsTab', 'Enable search as you type'))
|
translate('SongsPlugin.SongsTab', 'Enable search as you type'))
|
||||||
self.SongBarActiveCheckBox.setText(translate('SongsPlugin.SongsTab',
|
self.SongBarActiveCheckBox.setText(translate('SongsPlugin.SongsTab',
|
||||||
'Display Verses on Live Tool bar'))
|
'Display verses on live tool bar'))
|
||||||
|
|
||||||
def onSearchAsTypeCheckBoxChanged(self, check_state):
|
def onSearchAsTypeCheckBoxChanged(self, check_state):
|
||||||
self.song_search = False
|
self.song_search = False
|
||||||
|
@ -259,9 +259,9 @@ class SongsPlugin(Plugin):
|
|||||||
Receiver.send_message(u'songs_load_list')
|
Receiver.send_message(u'songs_load_list')
|
||||||
|
|
||||||
def about(self):
|
def about(self):
|
||||||
about_text = translate('SongsPlugin',
|
about_text = translate('SongsPlugin', '<strong>Songs Plugin</strong>'
|
||||||
'<strong>Song Plugin</strong><br />'
|
'<br />The songs plugin provides the ability to display and '
|
||||||
'This plugin allows songs to be managed and displayed.')
|
'manage songs.')
|
||||||
return about_text
|
return about_text
|
||||||
|
|
||||||
def usesTheme(self, theme):
|
def usesTheme(self, theme):
|
||||||
|
@ -59,4 +59,5 @@ class Ui_SongUsageDeleteDialog(object):
|
|||||||
|
|
||||||
def retranslateUi(self, SongUsageDeleteDialog):
|
def retranslateUi(self, SongUsageDeleteDialog):
|
||||||
SongUsageDeleteDialog.setWindowTitle(
|
SongUsageDeleteDialog.setWindowTitle(
|
||||||
translate('SongsPlugin.AuditDeleteDialog', 'Song Usage Delete'))
|
translate('SongUsagePlugin.SongUsageDeleteForm',
|
||||||
|
'Delete Song Usage Data'))
|
||||||
|
@ -43,9 +43,9 @@ class SongUsageDeleteForm(QtGui.QDialog, Ui_SongUsageDeleteDialog):
|
|||||||
|
|
||||||
def accept(self):
|
def accept(self):
|
||||||
ret = QtGui.QMessageBox.question(self,
|
ret = QtGui.QMessageBox.question(self,
|
||||||
translate('SongsPlugin.SongUsageDeleteForm',
|
translate('SongUsagePlugin.SongUsageDeleteForm',
|
||||||
'Delete Selected Song Usage Events?'),
|
'Delete Selected Song Usage Events?'),
|
||||||
translate('SongsPlugin.SongUsageDeleteForm',
|
translate('SongUsagePlugin.SongUsageDeleteForm',
|
||||||
'Are you sure you want to delete selected Song Usage data?'),
|
'Are you sure you want to delete selected Song Usage data?'),
|
||||||
QtGui.QMessageBox.StandardButtons(
|
QtGui.QMessageBox.StandardButtons(
|
||||||
QtGui.QMessageBox.Ok |
|
QtGui.QMessageBox.Ok |
|
||||||
@ -56,3 +56,4 @@ class SongUsageDeleteForm(QtGui.QDialog, Ui_SongUsageDeleteDialog):
|
|||||||
self.songusagemanager.delete_all_objects(SongUsageItem,
|
self.songusagemanager.delete_all_objects(SongUsageItem,
|
||||||
SongUsageItem.usagedate <= deleteDate)
|
SongUsageItem.usagedate <= deleteDate)
|
||||||
self.close()
|
self.close()
|
||||||
|
|
||||||
|
@ -86,11 +86,13 @@ class Ui_SongUsageDetailDialog(object):
|
|||||||
|
|
||||||
def retranslateUi(self, SongUsageDetailDialog):
|
def retranslateUi(self, SongUsageDetailDialog):
|
||||||
SongUsageDetailDialog.setWindowTitle(
|
SongUsageDetailDialog.setWindowTitle(
|
||||||
translate('SongsPlugin.AuditDetailDialog',
|
translate('SongUsagePlugin.SongUsageDetailForm',
|
||||||
'Song Usage Extraction'))
|
'Song Usage Extraction'))
|
||||||
self.DateRangeGroupBox.setTitle(
|
self.DateRangeGroupBox.setTitle(
|
||||||
translate('SongsPlugin.AuditDetailDialog', 'Select Date Range'))
|
translate('SongUsagePlugin.SongUsageDetailForm',
|
||||||
|
'Select Date Range'))
|
||||||
self.ToLabel.setText(
|
self.ToLabel.setText(
|
||||||
translate('SongsPlugin.AuditDetailDialog', 'to'))
|
translate('SongUsagePlugin.SongUsageDetailForm', 'to'))
|
||||||
self.FileGroupBox.setTitle(
|
self.FileGroupBox.setTitle(
|
||||||
translate('SongsPlugin.AuditDetailDialog', 'Report Location'))
|
translate('SongUsagePlugin.SongUsageDetailForm',
|
||||||
|
'Report Location'))
|
||||||
|
@ -62,7 +62,7 @@ class SongUsageDetailForm(QtGui.QDialog, Ui_SongUsageDetailDialog):
|
|||||||
|
|
||||||
def defineOutputLocation(self):
|
def defineOutputLocation(self):
|
||||||
path = QtGui.QFileDialog.getExistingDirectory(self,
|
path = QtGui.QFileDialog.getExistingDirectory(self,
|
||||||
translate('SongsPlugin.SongUsageDetailForm',
|
translate('SongUsagePlugin.SongUsageDetailForm',
|
||||||
'Output File Location'),
|
'Output File Location'),
|
||||||
SettingsManager.get_last_dir(self.parent.settingsSection, 1))
|
SettingsManager.get_last_dir(self.parent.settingsSection, 1))
|
||||||
path = unicode(path)
|
path = unicode(path)
|
||||||
|
@ -60,31 +60,29 @@ class SongUsagePlugin(Plugin):
|
|||||||
self.SongUsageMenu = QtGui.QMenu(tools_menu)
|
self.SongUsageMenu = QtGui.QMenu(tools_menu)
|
||||||
self.SongUsageMenu.setObjectName(u'SongUsageMenu')
|
self.SongUsageMenu.setObjectName(u'SongUsageMenu')
|
||||||
self.SongUsageMenu.setTitle(translate(
|
self.SongUsageMenu.setTitle(translate(
|
||||||
'SongUsagePlugin', '&Song Usage'))
|
'SongUsagePlugin', '&Song Usage Tracking'))
|
||||||
#SongUsage Delete
|
#SongUsage Delete
|
||||||
self.SongUsageDelete = QtGui.QAction(tools_menu)
|
self.SongUsageDelete = QtGui.QAction(tools_menu)
|
||||||
self.SongUsageDelete.setText(translate('SongUsagePlugin',
|
self.SongUsageDelete.setText(translate('SongUsagePlugin',
|
||||||
'&Delete recorded data'))
|
'&Delete Tracking Data'))
|
||||||
self.SongUsageDelete.setStatusTip(translate('SongUsagePlugin',
|
self.SongUsageDelete.setStatusTip(translate('SongUsagePlugin',
|
||||||
'Delete song usage to specified date'))
|
'Delete song usage data up to a specified date.'))
|
||||||
self.SongUsageDelete.setObjectName(u'SongUsageDelete')
|
self.SongUsageDelete.setObjectName(u'SongUsageDelete')
|
||||||
#SongUsage Report
|
#SongUsage Report
|
||||||
self.SongUsageReport = QtGui.QAction(tools_menu)
|
self.SongUsageReport = QtGui.QAction(tools_menu)
|
||||||
self.SongUsageReport.setText(
|
self.SongUsageReport.setText(
|
||||||
translate('SongUsagePlugin', '&Extract recorded data'))
|
translate('SongUsagePlugin', '&Extract Tracking Data'))
|
||||||
self.SongUsageReport.setStatusTip(
|
self.SongUsageReport.setStatusTip(
|
||||||
translate('SongUsagePlugin', 'Generate report on Song Usage'))
|
translate('SongUsagePlugin', 'Generate a report on song usage.'))
|
||||||
self.SongUsageReport.setObjectName(u'SongUsageReport')
|
self.SongUsageReport.setObjectName(u'SongUsageReport')
|
||||||
#SongUsage activation
|
#SongUsage activation
|
||||||
SongUsageIcon = build_icon(u':/plugins/plugin_songusage.png')
|
|
||||||
self.SongUsageStatus = QtGui.QAction(tools_menu)
|
self.SongUsageStatus = QtGui.QAction(tools_menu)
|
||||||
self.SongUsageStatus.setIcon(SongUsageIcon)
|
|
||||||
self.SongUsageStatus.setCheckable(True)
|
self.SongUsageStatus.setCheckable(True)
|
||||||
self.SongUsageStatus.setChecked(False)
|
self.SongUsageStatus.setChecked(False)
|
||||||
self.SongUsageStatus.setText(translate(
|
self.SongUsageStatus.setText(translate(
|
||||||
'SongUsagePlugin', 'Song Usage Status'))
|
'SongUsagePlugin', 'Toggle Tracking'))
|
||||||
self.SongUsageStatus.setStatusTip(translate('SongUsagePlugin',
|
self.SongUsageStatus.setStatusTip(translate('SongUsagePlugin',
|
||||||
'Start/Stop live song usage recording'))
|
'Toggle the tracking of song usage.'))
|
||||||
self.SongUsageStatus.setShortcut(u'F4')
|
self.SongUsageStatus.setShortcut(u'F4')
|
||||||
self.SongUsageStatus.setObjectName(u'SongUsageStatus')
|
self.SongUsageStatus.setObjectName(u'SongUsageStatus')
|
||||||
#Add Menus together
|
#Add Menus together
|
||||||
@ -158,8 +156,7 @@ class SongUsagePlugin(Plugin):
|
|||||||
self.SongUsagedetailform.exec_()
|
self.SongUsagedetailform.exec_()
|
||||||
|
|
||||||
def about(self):
|
def about(self):
|
||||||
about_text = translate('SongUsagePlugin',
|
about_text = translate('SongUsagePlugin', '<strong>SongUsage Plugin'
|
||||||
'<b>SongUsage Plugin</b><br>This plugin '
|
'</strong><br />This plugin tracks the usage of songs in '
|
||||||
'records the use of songs and when they have been used during '
|
'services.')
|
||||||
'a live service')
|
return about_text
|
||||||
return about_text
|
|
||||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user