forked from openlp/openlp
Head r742 and import fix
This commit is contained in:
commit
366fe2f508
@ -43,7 +43,6 @@ class Renderer(object):
|
|||||||
"""
|
"""
|
||||||
self._rect = None
|
self._rect = None
|
||||||
self._debug = False
|
self._debug = False
|
||||||
self._right_margin = 64 # the amount of right indent
|
|
||||||
self._display_shadow_size_footer = 0
|
self._display_shadow_size_footer = 0
|
||||||
self._display_outline_size_footer = 0
|
self._display_outline_size_footer = 0
|
||||||
self.theme_name = None
|
self.theme_name = None
|
||||||
@ -149,7 +148,7 @@ class Renderer(object):
|
|||||||
def pre_render_text(self, text):
|
def pre_render_text(self, text):
|
||||||
metrics = QtGui.QFontMetrics(self.mainFont)
|
metrics = QtGui.QFontMetrics(self.mainFont)
|
||||||
#work out line width
|
#work out line width
|
||||||
line_width = self._rect.width() - self._right_margin
|
line_width = self._rect.width()
|
||||||
#number of lines on a page - adjust for rounding up.
|
#number of lines on a page - adjust for rounding up.
|
||||||
line_height = metrics.height()
|
line_height = metrics.height()
|
||||||
if self._theme.display_shadow:
|
if self._theme.display_shadow:
|
||||||
@ -224,6 +223,7 @@ class Renderer(object):
|
|||||||
``rect_footer``
|
``rect_footer``
|
||||||
The footer text block.
|
The footer text block.
|
||||||
"""
|
"""
|
||||||
|
log.debug(u'set_text_rectangle %s , %s' %(rect_main, rect_footer) )
|
||||||
self._rect = rect_main
|
self._rect = rect_main
|
||||||
self._rect_footer = rect_footer
|
self._rect_footer = rect_footer
|
||||||
|
|
||||||
@ -447,8 +447,7 @@ class Renderer(object):
|
|||||||
rightextent = x + w
|
rightextent = x + w
|
||||||
# shift right from last line's rh edge
|
# shift right from last line's rh edge
|
||||||
if self._theme.display_wrapStyle == 1 and linenum != 0:
|
if self._theme.display_wrapStyle == 1 and linenum != 0:
|
||||||
rightextent = self._first_line_right_extent + \
|
rightextent = self._first_line_right_extent
|
||||||
self._right_margin
|
|
||||||
if rightextent > maxx:
|
if rightextent > maxx:
|
||||||
rightextent = maxx
|
rightextent = maxx
|
||||||
x = rightextent - w
|
x = rightextent - w
|
||||||
|
@ -146,13 +146,13 @@ class RenderManager(object):
|
|||||||
footer_rect = None
|
footer_rect = None
|
||||||
if not theme.font_main_override:
|
if not theme.font_main_override:
|
||||||
main_rect = QtCore.QRect(10, 0,
|
main_rect = QtCore.QRect(10, 0,
|
||||||
self.width - 1, self.footer_start)
|
self.width - 20, self.footer_start)
|
||||||
else:
|
else:
|
||||||
main_rect = QtCore.QRect(theme.font_main_x, theme.font_main_y,
|
main_rect = QtCore.QRect(theme.font_main_x, theme.font_main_y,
|
||||||
theme.font_main_width - 1, theme.font_main_height - 1)
|
theme.font_main_width - 1, theme.font_main_height - 1)
|
||||||
if not theme.font_footer_override:
|
if not theme.font_footer_override:
|
||||||
footer_rect = QtCore.QRect(10, self.footer_start,
|
footer_rect = QtCore.QRect(10, self.footer_start,
|
||||||
self.width - 1, self.height - self.footer_start)
|
self.width - 20, self.height - self.footer_start)
|
||||||
else:
|
else:
|
||||||
footer_rect = QtCore.QRect(theme.font_footer_x,
|
footer_rect = QtCore.QRect(theme.font_footer_x,
|
||||||
theme.font_footer_y, theme.font_footer_width - 1,
|
theme.font_footer_y, theme.font_footer_width - 1,
|
||||||
|
@ -53,7 +53,7 @@ blankthemexml=\
|
|||||||
<weight>Normal</weight>
|
<weight>Normal</weight>
|
||||||
<italics>False</italics>
|
<italics>False</italics>
|
||||||
<indentation>0</indentation>
|
<indentation>0</indentation>
|
||||||
<location override="False" x="10" y="10" width="1024" height="730"/>
|
<location override="False" x="10" y="10" width="1004" height="730"/>
|
||||||
</font>
|
</font>
|
||||||
<font type="footer">
|
<font type="footer">
|
||||||
<name>Arial</name>
|
<name>Arial</name>
|
||||||
@ -62,7 +62,7 @@ blankthemexml=\
|
|||||||
<weight>Normal</weight>
|
<weight>Normal</weight>
|
||||||
<italics>False</italics>
|
<italics>False</italics>
|
||||||
<indentation>0</indentation>
|
<indentation>0</indentation>
|
||||||
<location override="False" x="10" y="730" width="1024" height="38"/>
|
<location override="False" x="10" y="730" width="1004" height="38"/>
|
||||||
</font>
|
</font>
|
||||||
<display>
|
<display>
|
||||||
<shadow color="#000000" size="5">True</shadow>
|
<shadow color="#000000" size="5">True</shadow>
|
||||||
|
@ -168,8 +168,7 @@ class MainDisplay(DisplayWidget):
|
|||||||
self.screen[u'size'].height(),
|
self.screen[u'size'].height(),
|
||||||
QtGui.QImage.Format_ARGB32_Premultiplied)
|
QtGui.QImage.Format_ARGB32_Premultiplied)
|
||||||
painter.begin(self.blankFrame)
|
painter.begin(self.blankFrame)
|
||||||
#TODO make black when testing finished
|
painter.fillRect(self.blankFrame.rect(), QtCore.Qt.black)
|
||||||
painter.fillRect(self.blankFrame.rect(), QtCore.Qt.red)
|
|
||||||
#build a blank transparent image
|
#build a blank transparent image
|
||||||
self.transparent = QtGui.QPixmap(self.screen[u'size'].width(),
|
self.transparent = QtGui.QPixmap(self.screen[u'size'].width(),
|
||||||
self.screen[u'size'].height())
|
self.screen[u'size'].height())
|
||||||
|
@ -418,7 +418,7 @@ class Ui_MainWindow(object):
|
|||||||
self.LanguageEnglishItem.setText(self.trUtf8('English'))
|
self.LanguageEnglishItem.setText(self.trUtf8('English'))
|
||||||
self.LanguageEnglishItem.setStatusTip(
|
self.LanguageEnglishItem.setStatusTip(
|
||||||
self.trUtf8('Set the interface language to English'))
|
self.trUtf8('Set the interface language to English'))
|
||||||
self.ToolsAddToolItem.setText(self.trUtf8('&Add Tool...'))
|
self.ToolsAddToolItem.setText(self.trUtf8('Add &Tool...'))
|
||||||
self.ToolsAddToolItem.setStatusTip(
|
self.ToolsAddToolItem.setStatusTip(
|
||||||
self.trUtf8('Add an application to the list of tools'))
|
self.trUtf8('Add an application to the list of tools'))
|
||||||
self.action_Preview_Panel.setText(self.trUtf8('&Preview Pane'))
|
self.action_Preview_Panel.setText(self.trUtf8('&Preview Pane'))
|
||||||
@ -620,6 +620,8 @@ class MainWindow(QtGui.QMainWindow, Ui_MainWindow):
|
|||||||
self.screens.set_current_display(updated_display)
|
self.screens.set_current_display(updated_display)
|
||||||
self.RenderManager.update_display(updated_display)
|
self.RenderManager.update_display(updated_display)
|
||||||
self.mainDisplay.setup(updated_display)
|
self.mainDisplay.setup(updated_display)
|
||||||
|
#Trigger after changes have been made
|
||||||
|
Receiver.send_message(u'config_updated')
|
||||||
self.activateWindow()
|
self.activateWindow()
|
||||||
|
|
||||||
def closeEvent(self, event):
|
def closeEvent(self, event):
|
||||||
|
@ -100,6 +100,7 @@ class ServiceManager(QtGui.QWidget):
|
|||||||
self.parent = parent
|
self.parent = parent
|
||||||
self.serviceItems = []
|
self.serviceItems = []
|
||||||
self.serviceName = u''
|
self.serviceName = u''
|
||||||
|
self.droppos = 0
|
||||||
#is a new service and has not been saved
|
#is a new service and has not been saved
|
||||||
self.isNew = True
|
self.isNew = True
|
||||||
#Indicates if remoteTriggering is active. If it is the next addServiceItem call
|
#Indicates if remoteTriggering is active. If it is the next addServiceItem call
|
||||||
@ -190,6 +191,8 @@ class ServiceManager(QtGui.QWidget):
|
|||||||
QtCore.SIGNAL(u'presentation types'), self.onPresentationTypes)
|
QtCore.SIGNAL(u'presentation types'), self.onPresentationTypes)
|
||||||
QtCore.QObject.connect(Receiver.get_receiver(),
|
QtCore.QObject.connect(Receiver.get_receiver(),
|
||||||
QtCore.SIGNAL(u'servicemanager_next_item'), self.nextItem)
|
QtCore.SIGNAL(u'servicemanager_next_item'), self.nextItem)
|
||||||
|
QtCore.QObject.connect(Receiver.get_receiver(),
|
||||||
|
QtCore.SIGNAL(u'config_updated'), self.regenerateServiceItems)
|
||||||
# Last little bits of setting up
|
# Last little bits of setting up
|
||||||
self.config = PluginConfig(u'ServiceManager')
|
self.config = PluginConfig(u'ServiceManager')
|
||||||
self.servicePath = self.config.get_data_path()
|
self.servicePath = self.config.get_data_path()
|
||||||
@ -216,6 +219,8 @@ class ServiceManager(QtGui.QWidget):
|
|||||||
|
|
||||||
def contextMenu(self, point):
|
def contextMenu(self, point):
|
||||||
item = self.ServiceManagerList.itemAt(point)
|
item = self.ServiceManagerList.itemAt(point)
|
||||||
|
if item is None:
|
||||||
|
return
|
||||||
if item.parent() is None:
|
if item.parent() is None:
|
||||||
pos = item.data(0, QtCore.Qt.UserRole).toInt()[0]
|
pos = item.data(0, QtCore.Qt.UserRole).toInt()[0]
|
||||||
else:
|
else:
|
||||||
@ -472,7 +477,8 @@ 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,
|
||||||
u'Save Service', self.config.get_last_dir())
|
self.trUtf8(u'Save Service'), self.config.get_last_dir(),
|
||||||
|
self.trUtf8(u'OpenLP Service Files (*.osz)'))
|
||||||
else:
|
else:
|
||||||
filename = self.config.get_last_dir()
|
filename = self.config.get_last_dir()
|
||||||
if filename:
|
if filename:
|
||||||
@ -511,9 +517,9 @@ class ServiceManager(QtGui.QWidget):
|
|||||||
os.remove(servicefile)
|
os.remove(servicefile)
|
||||||
except:
|
except:
|
||||||
pass #if not present do not worry
|
pass #if not present do not worry
|
||||||
name = filename.split(os.path.sep)
|
name = filename.split(os.path.sep)
|
||||||
self.serviceName = name[-1]
|
self.serviceName = name[-1]
|
||||||
self.parent.serviceChanged(True, self.serviceName)
|
self.parent.serviceChanged(True, self.serviceName)
|
||||||
|
|
||||||
def onQuickSaveService(self):
|
def onQuickSaveService(self):
|
||||||
self.onSaveService(True)
|
self.onSaveService(True)
|
||||||
@ -615,7 +621,7 @@ class ServiceManager(QtGui.QWidget):
|
|||||||
for item in tempServiceItems:
|
for item in tempServiceItems:
|
||||||
self.addServiceItem(item[u'service_item'], False, item[u'expanded'])
|
self.addServiceItem(item[u'service_item'], False, item[u'expanded'])
|
||||||
#Set to False as items may have changed rendering
|
#Set to False as items may have changed rendering
|
||||||
#does not impact the saved song so True may aslo be valid
|
#does not impact the saved song so True may also be valid
|
||||||
self.parent.serviceChanged(False, self.serviceName)
|
self.parent.serviceChanged(False, self.serviceName)
|
||||||
|
|
||||||
def addServiceItem(self, item, rebuild=False, expand=True):
|
def addServiceItem(self, item, rebuild=False, expand=True):
|
||||||
@ -635,19 +641,21 @@ class ServiceManager(QtGui.QWidget):
|
|||||||
self.repaintServiceList(sitem + 1, 0)
|
self.repaintServiceList(sitem + 1, 0)
|
||||||
self.parent.LiveController.replaceServiceManagerItem(item)
|
self.parent.LiveController.replaceServiceManagerItem(item)
|
||||||
else:
|
else:
|
||||||
if sitem == -1:
|
#nothing selected or dnd
|
||||||
|
if self.droppos == 0:
|
||||||
self.serviceItems.append({u'service_item': item,
|
self.serviceItems.append({u'service_item': item,
|
||||||
u'order': len(self.serviceItems) + 1,
|
u'order': len(self.serviceItems) + 1,
|
||||||
u'expanded':expand})
|
u'expanded':expand})
|
||||||
self.repaintServiceList(len(self.serviceItems) + 1, 0)
|
self.repaintServiceList(len(self.serviceItems) + 1, 0)
|
||||||
else:
|
else:
|
||||||
self.serviceItems.insert(sitem + 1, {u'service_item': item,
|
self.serviceItems.insert(self.droppos, {u'service_item': item,
|
||||||
u'order': len(self.serviceItems)+1,
|
u'order': self.droppos,
|
||||||
u'expanded':expand})
|
u'expanded':expand})
|
||||||
self.repaintServiceList(sitem + 1, 0)
|
self.repaintServiceList(self.droppos, 0)
|
||||||
#if rebuilding list make sure live is fixed.
|
#if rebuilding list make sure live is fixed.
|
||||||
if rebuild:
|
if rebuild:
|
||||||
self.parent.LiveController.replaceServiceManagerItem(item)
|
self.parent.LiveController.replaceServiceManagerItem(item)
|
||||||
|
self.droppos = 0
|
||||||
self.parent.serviceChanged(False, self.serviceName)
|
self.parent.serviceChanged(False, self.serviceName)
|
||||||
|
|
||||||
def makePreview(self):
|
def makePreview(self):
|
||||||
@ -728,18 +736,13 @@ class ServiceManager(QtGui.QWidget):
|
|||||||
link = event.mimeData()
|
link = event.mimeData()
|
||||||
if link.hasText():
|
if link.hasText():
|
||||||
plugin = event.mimeData().text()
|
plugin = event.mimeData().text()
|
||||||
|
item = self.ServiceManagerList.itemAt(event.pos())
|
||||||
if plugin == u'ServiceManager':
|
if plugin == u'ServiceManager':
|
||||||
startpos, startCount = self.findServiceItem()
|
startpos, startCount = self.findServiceItem()
|
||||||
item = self.ServiceManagerList.itemAt(event.pos())
|
|
||||||
if item is None:
|
if item is None:
|
||||||
endpos = len(self.serviceItems)
|
endpos = len(self.serviceItems)
|
||||||
else:
|
else:
|
||||||
parentitem = item.parent()
|
endpos = self._getParentItemData(item) - 1
|
||||||
if parentitem is None:
|
|
||||||
endpos = item.data(0, QtCore.Qt.UserRole).toInt()[0]
|
|
||||||
else:
|
|
||||||
endpos = parentitem.data(0, QtCore.Qt.UserRole).toInt()[0]
|
|
||||||
endpos -= 1
|
|
||||||
if endpos < startpos:
|
if endpos < startpos:
|
||||||
newpos = endpos
|
newpos = endpos
|
||||||
else:
|
else:
|
||||||
@ -749,6 +752,10 @@ class ServiceManager(QtGui.QWidget):
|
|||||||
self.serviceItems.insert(newpos, serviceItem)
|
self.serviceItems.insert(newpos, serviceItem)
|
||||||
self.repaintServiceList(endpos, startCount)
|
self.repaintServiceList(endpos, startCount)
|
||||||
else:
|
else:
|
||||||
|
if item == None:
|
||||||
|
self.droppos = len(self.serviceItems)
|
||||||
|
else:
|
||||||
|
self.droppos = self._getParentItemData(item)
|
||||||
Receiver.send_message(u'%s_add_service_item' % plugin)
|
Receiver.send_message(u'%s_add_service_item' % plugin)
|
||||||
|
|
||||||
def updateThemeList(self, theme_list):
|
def updateThemeList(self, theme_list):
|
||||||
@ -783,3 +790,10 @@ class ServiceManager(QtGui.QWidget):
|
|||||||
item, count = self.findServiceItem()
|
item, count = self.findServiceItem()
|
||||||
self.serviceItems[item][u'service_item'].theme = theme
|
self.serviceItems[item][u'service_item'].theme = theme
|
||||||
self.regenerateServiceItems()
|
self.regenerateServiceItems()
|
||||||
|
|
||||||
|
def _getParentItemData(self, item):
|
||||||
|
parentitem = item.parent()
|
||||||
|
if parentitem is None:
|
||||||
|
return item.data(0, QtCore.Qt.UserRole).toInt()[0]
|
||||||
|
else:
|
||||||
|
return parentitem.data(0, QtCore.Qt.UserRole).toInt()[0]
|
||||||
|
@ -28,7 +28,6 @@ import logging
|
|||||||
from PyQt4 import QtGui
|
from PyQt4 import QtGui
|
||||||
|
|
||||||
from openlp.core.ui import GeneralTab, ThemesTab
|
from openlp.core.ui import GeneralTab, ThemesTab
|
||||||
from openlp.core.lib import Receiver
|
|
||||||
from settingsdialog import Ui_SettingsDialog
|
from settingsdialog import Ui_SettingsDialog
|
||||||
|
|
||||||
log = logging.getLogger(__name__)
|
log = logging.getLogger(__name__)
|
||||||
@ -45,7 +44,7 @@ class SettingsForm(QtGui.QDialog, Ui_SettingsDialog):
|
|||||||
self.ThemesTab = ThemesTab(mainWindow)
|
self.ThemesTab = ThemesTab(mainWindow)
|
||||||
self.addTab(u'Themes', self.ThemesTab)
|
self.addTab(u'Themes', self.ThemesTab)
|
||||||
|
|
||||||
def addTab(self, name, tab):
|
def addTab(self, name, tab):
|
||||||
log.info(u'Adding %s tab' % tab.tabTitle)
|
log.info(u'Adding %s tab' % tab.tabTitle)
|
||||||
self.SettingsTabWidget.addTab(tab, tab.tabTitleVisible)
|
self.SettingsTabWidget.addTab(tab, tab.tabTitleVisible)
|
||||||
|
|
||||||
@ -65,7 +64,6 @@ class SettingsForm(QtGui.QDialog, Ui_SettingsDialog):
|
|||||||
def accept(self):
|
def accept(self):
|
||||||
for tab_index in range(0, self.SettingsTabWidget.count()):
|
for tab_index in range(0, self.SettingsTabWidget.count()):
|
||||||
self.SettingsTabWidget.widget(tab_index).save()
|
self.SettingsTabWidget.widget(tab_index).save()
|
||||||
Receiver.send_message(u'config_updated')
|
|
||||||
return QtGui.QDialog.accept(self)
|
return QtGui.QDialog.accept(self)
|
||||||
|
|
||||||
def postSetUp(self):
|
def postSetUp(self):
|
||||||
|
@ -299,6 +299,8 @@ class SlideController(QtGui.QWidget):
|
|||||||
QtCore.SIGNAL(u'%s_change' % prefix), self.onSlideChange)
|
QtCore.SIGNAL(u'%s_change' % prefix), self.onSlideChange)
|
||||||
QtCore.QObject.connect(self.Splitter,
|
QtCore.QObject.connect(self.Splitter,
|
||||||
QtCore.SIGNAL(u'splitterMoved(int, int)'), self.trackSplitter)
|
QtCore.SIGNAL(u'splitterMoved(int, int)'), self.trackSplitter)
|
||||||
|
QtCore.QObject.connect(Receiver.get_receiver(),
|
||||||
|
QtCore.SIGNAL(u'config_updated'), self.refreshServiceItem)
|
||||||
|
|
||||||
def widthChanged(self):
|
def widthChanged(self):
|
||||||
"""
|
"""
|
||||||
@ -377,6 +379,17 @@ class SlideController(QtGui.QWidget):
|
|||||||
self.Mediabar.setVisible(True)
|
self.Mediabar.setVisible(True)
|
||||||
self.volumeSlider.setAudioOutput(self.audio)
|
self.volumeSlider.setAudioOutput(self.audio)
|
||||||
|
|
||||||
|
def refreshServiceItem(self):
|
||||||
|
"""
|
||||||
|
Method to update the service item if the screen has changed
|
||||||
|
"""
|
||||||
|
log.debug(u'refreshServiceItem')
|
||||||
|
if self.serviceItem:
|
||||||
|
if self.serviceItem.is_text() or self.serviceItem.is_image():
|
||||||
|
item = self.serviceItem
|
||||||
|
item.render()
|
||||||
|
self.addServiceManagerItem(item, self.selectedRow)
|
||||||
|
|
||||||
def addServiceItem(self, item):
|
def addServiceItem(self, item):
|
||||||
"""
|
"""
|
||||||
Method to install the service item into the controller
|
Method to install the service item into the controller
|
||||||
|
@ -177,20 +177,20 @@ class ThemeManager(QtGui.QWidget):
|
|||||||
if theme != unicode(item.data(QtCore.Qt.UserRole).toString()):
|
if theme != unicode(item.data(QtCore.Qt.UserRole).toString()):
|
||||||
QtGui.QMessageBox.critical(
|
QtGui.QMessageBox.critical(
|
||||||
self, self.trUtf8('Error'),
|
self, self.trUtf8('Error'),
|
||||||
self.trUtf8('You are unable to delete the default theme!'),
|
self.trUtf8('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 not plugin.can_delete_theme(theme):
|
if not plugin.can_delete_theme(theme):
|
||||||
QtGui.QMessageBox.critical(
|
QtGui.QMessageBox.critical(
|
||||||
self, self.trUtf8('Error'),
|
self, self.trUtf8('Error'),
|
||||||
self.trUtf8('theme %s is use in %s plugin' % (theme, plugin.name)),
|
self.trUtf8('Theme %s is use in %s plugin' % (theme, plugin.name)),
|
||||||
QtGui.QMessageBox.StandardButtons(QtGui.QMessageBox.Ok))
|
QtGui.QMessageBox.StandardButtons(QtGui.QMessageBox.Ok))
|
||||||
return
|
return
|
||||||
if unicode(self.parent.ServiceManagerContents.ThemeComboBox.currentText()) == theme:
|
if unicode(self.parent.ServiceManagerContents.ThemeComboBox.currentText()) == theme:
|
||||||
QtGui.QMessageBox.critical(
|
QtGui.QMessageBox.critical(
|
||||||
self, self.trUtf8('Error'),
|
self, self.trUtf8('Error'),
|
||||||
self.trUtf8('theme %s is use Service Manager' % theme),
|
self.trUtf8('Theme %s is use by Service Manager' % theme),
|
||||||
QtGui.QMessageBox.StandardButtons(QtGui.QMessageBox.Ok))
|
QtGui.QMessageBox.StandardButtons(QtGui.QMessageBox.Ok))
|
||||||
return
|
return
|
||||||
self.themelist.remove(theme)
|
self.themelist.remove(theme)
|
||||||
@ -216,7 +216,7 @@ class ThemeManager(QtGui.QWidget):
|
|||||||
item = self.ThemeListWidget.currentItem()
|
item = self.ThemeListWidget.currentItem()
|
||||||
if item is None:
|
if item is None:
|
||||||
QtGui.QMessageBox.critical(self, self.trUtf8('Error'),
|
QtGui.QMessageBox.critical(self, self.trUtf8('Error'),
|
||||||
self.trUtf8('You have not selected a theme!'),
|
self.trUtf8('You have not selected a theme.'),
|
||||||
QtGui.QMessageBox.StandardButtons(QtGui.QMessageBox.Ok))
|
QtGui.QMessageBox.StandardButtons(QtGui.QMessageBox.Ok))
|
||||||
return
|
return
|
||||||
theme = unicode(item.data(QtCore.Qt.UserRole).toString())
|
theme = unicode(item.data(QtCore.Qt.UserRole).toString())
|
||||||
@ -359,7 +359,7 @@ class ThemeManager(QtGui.QWidget):
|
|||||||
except:
|
except:
|
||||||
QtGui.QMessageBox.critical(
|
QtGui.QMessageBox.critical(
|
||||||
self, self.trUtf8('Error'),
|
self, self.trUtf8('Error'),
|
||||||
self.trUtf8('File is not a valid theme!'),
|
self.trUtf8('File is not a valid theme.'),
|
||||||
QtGui.QMessageBox.StandardButtons(QtGui.QMessageBox.Ok))
|
QtGui.QMessageBox.StandardButtons(QtGui.QMessageBox.Ok))
|
||||||
log.exception(u'Importing theme from zip file failed %s' % filename)
|
log.exception(u'Importing theme from zip file failed %s' % filename)
|
||||||
finally:
|
finally:
|
||||||
|
@ -85,7 +85,7 @@ class AlertEditForm(QtGui.QDialog, Ui_AlertEditDialog):
|
|||||||
if self.AlertLineEdit.text():
|
if self.AlertLineEdit.text():
|
||||||
QtGui.QMessageBox.information(self,
|
QtGui.QMessageBox.information(self,
|
||||||
self.trUtf8('Item selected to Edit'),
|
self.trUtf8('Item selected to Edit'),
|
||||||
self.trUtf8('Please Save or Clear seletced item'))
|
self.trUtf8('Please save or clear selected item'))
|
||||||
else:
|
else:
|
||||||
self.EditButton.setEnabled(True)
|
self.EditButton.setEnabled(True)
|
||||||
self.DeleteButton.setEnabled(True)
|
self.DeleteButton.setEnabled(True)
|
||||||
|
@ -93,7 +93,6 @@ class BiblePlugin(Plugin):
|
|||||||
'displayed on the screen during the service.')
|
'displayed on the screen during the service.')
|
||||||
return about_text
|
return about_text
|
||||||
|
|
||||||
|
|
||||||
def can_delete_theme(self, theme):
|
def can_delete_theme(self, theme):
|
||||||
if self.settings_tab.bible_theme == theme:
|
if self.settings_tab.bible_theme == theme:
|
||||||
return False
|
return False
|
||||||
|
@ -111,7 +111,7 @@ class ImportWizardForm(QtGui.QWizard, Ui_BibleImportWizard):
|
|||||||
QtGui.QMessageBox.critical(self,
|
QtGui.QMessageBox.critical(self,
|
||||||
self.trUtf8('Invalid Bible Location'),
|
self.trUtf8('Invalid Bible Location'),
|
||||||
self.trUtf8('You need to specify a file to import your '
|
self.trUtf8('You need to specify a file to import your '
|
||||||
'Bible from!'),
|
'Bible from.'),
|
||||||
QtGui.QMessageBox.StandardButtons(QtGui.QMessageBox.Ok))
|
QtGui.QMessageBox.StandardButtons(QtGui.QMessageBox.Ok))
|
||||||
self.OSISLocationEdit.setFocus()
|
self.OSISLocationEdit.setFocus()
|
||||||
return False
|
return False
|
||||||
@ -120,7 +120,7 @@ class ImportWizardForm(QtGui.QWizard, Ui_BibleImportWizard):
|
|||||||
QtGui.QMessageBox.critical(self,
|
QtGui.QMessageBox.critical(self,
|
||||||
self.trUtf8('Invalid Books File'),
|
self.trUtf8('Invalid Books File'),
|
||||||
self.trUtf8('You need to specify a file with books of '
|
self.trUtf8('You need to specify a file with books of '
|
||||||
'the Bible to use in the import!'),
|
'the Bible to use in the import.'),
|
||||||
QtGui.QMessageBox.StandardButtons(QtGui.QMessageBox.Ok))
|
QtGui.QMessageBox.StandardButtons(QtGui.QMessageBox.Ok))
|
||||||
self.BooksLocationEdit.setFocus()
|
self.BooksLocationEdit.setFocus()
|
||||||
return False
|
return False
|
||||||
@ -128,7 +128,7 @@ class ImportWizardForm(QtGui.QWizard, Ui_BibleImportWizard):
|
|||||||
QtGui.QMessageBox.critical(self,
|
QtGui.QMessageBox.critical(self,
|
||||||
self.trUtf8('Invalid Verse File'),
|
self.trUtf8('Invalid Verse File'),
|
||||||
self.trUtf8('You need to specify a file of Bible '
|
self.trUtf8('You need to specify a file of Bible '
|
||||||
'verses to import!'),
|
'verses to import.'),
|
||||||
QtGui.QMessageBox.StandardButtons(QtGui.QMessageBox.Ok))
|
QtGui.QMessageBox.StandardButtons(QtGui.QMessageBox.Ok))
|
||||||
self.CsvVerseLocationEdit.setFocus()
|
self.CsvVerseLocationEdit.setFocus()
|
||||||
return False
|
return False
|
||||||
@ -137,7 +137,7 @@ class ImportWizardForm(QtGui.QWizard, Ui_BibleImportWizard):
|
|||||||
QtGui.QMessageBox.critical(self,
|
QtGui.QMessageBox.critical(self,
|
||||||
self.trUtf8('Invalid OpenSong Bible'),
|
self.trUtf8('Invalid OpenSong Bible'),
|
||||||
self.trUtf8('You need to specify an OpenSong Bible '
|
self.trUtf8('You need to specify an OpenSong Bible '
|
||||||
'file to import!'),
|
'file to import.'),
|
||||||
QtGui.QMessageBox.StandardButtons(QtGui.QMessageBox.Ok))
|
QtGui.QMessageBox.StandardButtons(QtGui.QMessageBox.Ok))
|
||||||
self.OpenSongFileEdit.setFocus()
|
self.OpenSongFileEdit.setFocus()
|
||||||
return False
|
return False
|
||||||
@ -148,7 +148,7 @@ class ImportWizardForm(QtGui.QWizard, Ui_BibleImportWizard):
|
|||||||
QtGui.QMessageBox.critical(self,
|
QtGui.QMessageBox.critical(self,
|
||||||
self.trUtf8('Empty Version Name'),
|
self.trUtf8('Empty Version Name'),
|
||||||
self.trUtf8('You need to specify a version name for your '
|
self.trUtf8('You need to specify a version name for your '
|
||||||
'Bible!'),
|
'Bible.'),
|
||||||
QtGui.QMessageBox.StandardButtons(QtGui.QMessageBox.Ok))
|
QtGui.QMessageBox.StandardButtons(QtGui.QMessageBox.Ok))
|
||||||
self.VersionNameEdit.setFocus()
|
self.VersionNameEdit.setFocus()
|
||||||
return False
|
return False
|
||||||
|
@ -124,7 +124,8 @@ class BibleManager(object):
|
|||||||
self.db_cache = {}
|
self.db_cache = {}
|
||||||
for filename in files:
|
for filename in files:
|
||||||
name, extension = os.path.splitext(filename)
|
name, extension = os.path.splitext(filename)
|
||||||
self.db_cache[name] = BibleDB(self.parent, path=self.path, name=name, config=self.config)
|
self.db_cache[name] = BibleDB(self.parent, path=self.path,
|
||||||
|
name=name, config=self.config)
|
||||||
# look to see if lazy load bible exists and get create getter.
|
# look to see if lazy load bible exists and get create getter.
|
||||||
source = self.db_cache[name].get_meta(u'download source')
|
source = self.db_cache[name].get_meta(u'download source')
|
||||||
if source:
|
if source:
|
||||||
|
@ -45,6 +45,7 @@ class BibleListView(BaseListWithDnD):
|
|||||||
def resizeEvent(self, event):
|
def resizeEvent(self, event):
|
||||||
self.parent.onListViewResize(event.size().width(), event.size().width())
|
self.parent.onListViewResize(event.size().width(), event.size().width())
|
||||||
|
|
||||||
|
|
||||||
class BibleMediaItem(MediaManagerItem):
|
class BibleMediaItem(MediaManagerItem):
|
||||||
"""
|
"""
|
||||||
This is the custom media manager item for Bibles.
|
This is the custom media manager item for Bibles.
|
||||||
@ -452,14 +453,14 @@ class BibleMediaItem(MediaManagerItem):
|
|||||||
for item in items:
|
for item in items:
|
||||||
bitem = self.ListView.item(item.row())
|
bitem = self.ListView.item(item.row())
|
||||||
reference = bitem.data(QtCore.Qt.UserRole).toPyObject()
|
reference = bitem.data(QtCore.Qt.UserRole).toPyObject()
|
||||||
bible = unicode(reference[QtCore.QString('bible')])
|
bible = unicode(reference[QtCore.QString('bible')].toPyObject())
|
||||||
book = unicode(reference[QtCore.QString('book')])
|
book = unicode(reference[QtCore.QString('book')].toPyObject())
|
||||||
chapter = unicode(reference[QtCore.QString('chapter')])
|
chapter = unicode(reference[QtCore.QString('chapter')].toPyObject())
|
||||||
verse = unicode(reference[QtCore.QString('verse')])
|
verse = unicode(reference[QtCore.QString('verse')].toPyObject())
|
||||||
text = unicode(reference[QtCore.QString('text')])
|
text = unicode(reference[QtCore.QString('text')].toPyObject())
|
||||||
version = unicode(reference[QtCore.QString('version')])
|
version = unicode(reference[QtCore.QString('version')].toPyObject())
|
||||||
copyright = unicode(reference[QtCore.QString('copyright')])
|
copyright = unicode(reference[QtCore.QString('copyright')].toPyObject())
|
||||||
permission = unicode(reference[QtCore.QString('permission')])
|
permission = unicode(reference[QtCore.QString('permission')].toPyObject())
|
||||||
if self.parent.settings_tab.display_style == 1:
|
if self.parent.settings_tab.display_style == 1:
|
||||||
verse_text = self.formatVerse(old_chapter, chapter, verse, u'(u', u')')
|
verse_text = self.formatVerse(old_chapter, chapter, verse, u'(u', u')')
|
||||||
elif self.parent.settings_tab.display_style == 2:
|
elif self.parent.settings_tab.display_style == 2:
|
||||||
@ -563,7 +564,7 @@ class BibleMediaItem(MediaManagerItem):
|
|||||||
permission = u''
|
permission = u''
|
||||||
else:
|
else:
|
||||||
permission = permission.value
|
permission = permission.value
|
||||||
for count, verse in enumerate(self.search_results):
|
for count, verse in enumerate(self.search_results):
|
||||||
bible_text = u' %s %d:%d (%s)' % \
|
bible_text = u' %s %d:%d (%s)' % \
|
||||||
(verse.book.name, verse.chapter, verse.verse, bible)
|
(verse.book.name, verse.chapter, verse.verse, bible)
|
||||||
bible_verse = QtGui.QListWidgetItem(bible_text)
|
bible_verse = QtGui.QListWidgetItem(bible_text)
|
||||||
|
@ -102,7 +102,7 @@ class OpenSongBible(BibleDB):
|
|||||||
finally:
|
finally:
|
||||||
if file:
|
if file:
|
||||||
file.close()
|
file.close()
|
||||||
if self.stop_import:
|
if self.stop_import_flag:
|
||||||
self.wizard.incrementProgressBar(u'Import canceled!')
|
self.wizard.incrementProgressBar(u'Import canceled!')
|
||||||
return False
|
return False
|
||||||
else:
|
else:
|
||||||
|
@ -69,7 +69,7 @@ class CustomPlugin(Plugin):
|
|||||||
def about(self):
|
def about(self):
|
||||||
about_text = self.trUtf8('<b>Custom Plugin</b><br>This plugin '
|
about_text = self.trUtf8('<b>Custom Plugin</b><br>This plugin '
|
||||||
'allows slides to be displayed on the screen in the same way '
|
'allows slides to be displayed on the screen in the same way '
|
||||||
'songs are. This plugin provides greater freedom over the '
|
'songs are. This plugin provides greater freedom over the '
|
||||||
'songs plugin.<br>')
|
'songs plugin.<br>')
|
||||||
return about_text
|
return about_text
|
||||||
|
|
||||||
|
@ -61,7 +61,7 @@ class ImageMediaItem(MediaManagerItem):
|
|||||||
def retranslateUi(self):
|
def retranslateUi(self):
|
||||||
self.OnNewPrompt = self.trUtf8('Select Image(s)')
|
self.OnNewPrompt = self.trUtf8('Select Image(s)')
|
||||||
self.OnNewFileMasks = \
|
self.OnNewFileMasks = \
|
||||||
self.trUtf8('Images (*.jpg *jpeg *.gif *.png *.bmp);; All files (*)')
|
self.trUtf8('Images (*.jpg *.jpeg *.gif *.png *.bmp);; All files (*)')
|
||||||
|
|
||||||
def requiredIcons(self):
|
def requiredIcons(self):
|
||||||
MediaManagerItem.requiredIcons(self)
|
MediaManagerItem.requiredIcons(self)
|
||||||
@ -101,7 +101,7 @@ class ImageMediaItem(MediaManagerItem):
|
|||||||
self.OverrideCheckBox.setChecked(False)
|
self.OverrideCheckBox.setChecked(False)
|
||||||
self.OverrideCheckBox.setText(self.trUtf8('Override background'))
|
self.OverrideCheckBox.setText(self.trUtf8('Override background'))
|
||||||
self.OverrideCheckBox.setStatusTip(
|
self.OverrideCheckBox.setStatusTip(
|
||||||
self.trUtf8('Allow background of live slide to be overridden'))
|
self.trUtf8('Allow the background of live slide to be overridden'))
|
||||||
self.OverrideLayout.addWidget(self.OverrideCheckBox)
|
self.OverrideLayout.addWidget(self.OverrideCheckBox)
|
||||||
self.OverrideLabel = QtGui.QLabel(self.ImageWidget)
|
self.OverrideLabel = QtGui.QLabel(self.ImageWidget)
|
||||||
self.OverrideLabel.setObjectName(u'OverrideLabel')
|
self.OverrideLabel.setObjectName(u'OverrideLabel')
|
||||||
|
@ -114,6 +114,6 @@ class PresentationPlugin(Plugin):
|
|||||||
def about(self):
|
def about(self):
|
||||||
about_text = self.trUtf8('<b>Presentation Plugin</b> <br> Delivers '
|
about_text = self.trUtf8('<b>Presentation Plugin</b> <br> Delivers '
|
||||||
'the ability to show presentations using a number of different '
|
'the 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
|
||||||
|
@ -41,8 +41,8 @@ class SongUsageDeleteForm(QtGui.QDialog, Ui_SongUsageDeleteDialog):
|
|||||||
|
|
||||||
def accept(self):
|
def accept(self):
|
||||||
ret = QtGui.QMessageBox.question(self,
|
ret = QtGui.QMessageBox.question(self,
|
||||||
self.trUtf8('Delete Selected Audit Events?'),
|
self.trUtf8('Delete Selected Song Usage Events?'),
|
||||||
self.trUtf8('Are you sure you want to delete selected Audit Data?'),
|
self.trUtf8('Are you sure you want to delete selected Song Usage data?'),
|
||||||
QtGui.QMessageBox.StandardButtons(
|
QtGui.QMessageBox.StandardButtons(
|
||||||
QtGui.QMessageBox.Ok |
|
QtGui.QMessageBox.Ok |
|
||||||
QtGui.QMessageBox.Cancel),
|
QtGui.QMessageBox.Cancel),
|
||||||
|
@ -81,7 +81,7 @@ class SongUsageDetailForm(QtGui.QDialog, Ui_SongUsageDetailDialog):
|
|||||||
instance.copyright, instance.ccl_number , instance.authors)
|
instance.copyright, instance.ccl_number , instance.authors)
|
||||||
file.write(record)
|
file.write(record)
|
||||||
except:
|
except:
|
||||||
log.exception(u'Failed to write out audit records')
|
log.exception(u'Failed to write out song usage records')
|
||||||
finally:
|
finally:
|
||||||
if file:
|
if file:
|
||||||
file.close()
|
file.close()
|
||||||
|
@ -22,7 +22,7 @@ DefaultDirName={pf}\{#MyAppName}
|
|||||||
DefaultGroupName=OpenLP 2.0
|
DefaultGroupName=OpenLP 2.0
|
||||||
AllowNoIcons=true
|
AllowNoIcons=true
|
||||||
LicenseFile=LICENSE.txt
|
LicenseFile=LICENSE.txt
|
||||||
OutputBaseFilename=OpenLP-1.9.0-bzr737-setup
|
OutputBaseFilename=OpenLP-1.9.0-bzr739-setup
|
||||||
Compression=lzma
|
Compression=lzma
|
||||||
SolidCompression=true
|
SolidCompression=true
|
||||||
SetupIconFile=C:\Program Files\Inno Setup 5\Examples\Setup.ico
|
SetupIconFile=C:\Program Files\Inno Setup 5\Examples\Setup.ico
|
||||||
|
Loading…
Reference in New Issue
Block a user