diff --git a/openlp/core/lib/renderer.py b/openlp/core/lib/renderer.py index c6e729be8..f9af00f6e 100644 --- a/openlp/core/lib/renderer.py +++ b/openlp/core/lib/renderer.py @@ -86,6 +86,8 @@ class Renderer(object): """ log.debug(u'Update Display') self._calculate_default(self.screens.current[u'size']) + if self.display: + self.display.close() self.display = MainDisplay(None, self.image_manager, False) self.display.setup() self.bg_frame = None @@ -241,7 +243,7 @@ class Renderer(object): ``screen`` The QSize of the screen. """ - log.debug(u'calculate default %s', screen) + log.debug(u'_calculate default %s', screen) self.width = screen.width() self.height = screen.height() self.screen_ratio = float(self.height) / float(self.width) @@ -286,7 +288,7 @@ class Renderer(object): ``rect_footer`` The footer text block. """ - log.debug(u'set_text_rectangle %s , %s' % (rect_main, rect_footer)) + log.debug(u'_set_text_rectangle %s , %s' % (rect_main, rect_footer)) self._rect = rect_main self._rect_footer = rect_footer self.page_width = self._rect.width() @@ -339,7 +341,7 @@ class Renderer(object): # Text too long so go to next page. if self.web_frame.contentsSize().height() > self.page_height: if force_page and line_count > 0: - Receiver.send_message(u'theme_line_count', line_count) + Receiver.send_message(u'theme_line_count', line_count - 1) line_count = -1 while html_text.endswith(u'
'): html_text = html_text[:-4] diff --git a/openlp/core/ui/maindisplay.py b/openlp/core/ui/maindisplay.py index e2117cc10..0db8bb26f 100644 --- a/openlp/core/ui/maindisplay.py +++ b/openlp/core/ui/maindisplay.py @@ -63,6 +63,7 @@ class MainDisplay(QtGui.QGraphicsView): self.setStyleSheet(u'border: 0px; margin: 0px; padding: 0px;') self.setWindowFlags(QtCore.Qt.FramelessWindowHint | QtCore.Qt.Tool | QtCore.Qt.WindowStaysOnTopHint) + self.setAttribute(QtCore.Qt.WA_DeleteOnClose) if self.isLive: QtCore.QObject.connect(Receiver.get_receiver(), QtCore.SIGNAL(u'maindisplay_hide'), self.hideDisplay) diff --git a/openlp/core/ui/servicemanager.py b/openlp/core/ui/servicemanager.py index 8ecd89bc7..8a018d915 100644 --- a/openlp/core/ui/servicemanager.py +++ b/openlp/core/ui/servicemanager.py @@ -1035,6 +1035,7 @@ class ServiceManager(QtGui.QWidget): item[u'selected'] = False serviceIterator = QtGui.QTreeWidgetItemIterator( self.serviceManagerList) + selectedItem = None while serviceIterator.value(): if serviceIterator.value().isSelected(): selectedItem = serviceIterator.value() diff --git a/openlp/core/ui/slidecontroller.py b/openlp/core/ui/slidecontroller.py index 5b6212cf8..d490f3bce 100644 --- a/openlp/core/ui/slidecontroller.py +++ b/openlp/core/ui/slidecontroller.py @@ -59,6 +59,7 @@ class SlideController(QtGui.QWidget): """ QtGui.QWidget.__init__(self, parent) self.isLive = isLive + self.display = None self.screens = ScreenList.get_instance() self.ratio = float(self.screens.current[u'size'].width()) / \ float(self.screens.current[u'size'].height()) @@ -422,6 +423,8 @@ class SlideController(QtGui.QWidget): screen previews. """ # rebuild display as screen size changed + if self.display: + self.display.close() self.display = MainDisplay(self, self.image_manager, self.isLive) self.display.alertTab = self.alertTab self.display.setup() diff --git a/openlp/core/ui/themeform.py b/openlp/core/ui/themeform.py index bae3e8692..921cab048 100644 --- a/openlp/core/ui/themeform.py +++ b/openlp/core/ui/themeform.py @@ -202,7 +202,7 @@ class ThemeForm(QtGui.QWizard, Ui_ThemeWizard): Updates the lines on a page on the wizard """ self.mainLineCountLabel.setText(unicode(translate('OpenLP.ThemeForm', - '(%d lines per slide)')) % int(lines)) + '(approximately %d lines per slide)')) % int(lines)) def resizeEvent(self, event=None): """ diff --git a/openlp/plugins/bibles/lib/mediaitem.py b/openlp/plugins/bibles/lib/mediaitem.py index d94368f52..f2b9a57d3 100644 --- a/openlp/plugins/bibles/lib/mediaitem.py +++ b/openlp/plugins/bibles/lib/mediaitem.py @@ -683,17 +683,17 @@ class BibleMediaItem(MediaManagerItem): verse.book.book_reference_id) if not db_book: log.debug(u'Passage "%s %d:%d" not found in Second ' - u'Bible' % (verse.book.name, verse.chapter, + u'Bible' % (verse.book.name, verse.chapter, verse.verse)) passage_not_found = True count += 1 continue new_search_results.append(verse) - text.append((verse.book.book_reference_id, verse.chapter, + text.append((verse.book.book_reference_id, verse.chapter, verse.verse, verse.verse)) if passage_not_found: - QtGui.QMessageBox.information(self, - translate('BiblePlugin.MediaItem', 'Information'), + QtGui.QMessageBox.information(self, + translate('BiblePlugin.MediaItem', 'Information'), unicode(translate('BiblePlugin.MediaItem', 'The second Bibles does not contain all the verses ' 'that are in the main Bible. Only verses found in both ' @@ -983,7 +983,7 @@ class BibleMediaItem(MediaManagerItem): Search for some Bible verses (by reference). """ bible = unicode(self.quickVersionComboBox.currentText()) - search_results = self.plugin.manager.get_verses(bible, string, False) + search_results = self.plugin.manager.get_verses(bible, string, False, False) results = [] if search_results: versetext = u' '.join([verse.text for verse in search_results])