From 0196f155499aa093dfd42df55a96db3f9018d1db Mon Sep 17 00:00:00 2001 From: Tim Bentley Date: Fri, 1 May 2009 06:02:53 +0100 Subject: [PATCH] Stop Custom Slide having no slides Changes to renderer and Rendermanager --- openlp/core/lib/renderer.py | 5 ++--- openlp/core/lib/rendermanager.py | 7 ------- openlp/plugins/custom/forms/editcustomform.py | 4 ++++ 3 files changed, 6 insertions(+), 10 deletions(-) diff --git a/openlp/core/lib/renderer.py b/openlp/core/lib/renderer.py index e29e5e3b3..1c2de9e04 100644 --- a/openlp/core/lib/renderer.py +++ b/openlp/core/lib/renderer.py @@ -33,7 +33,7 @@ class Renderer: """All the functions for rendering a set of words onto a Device Context How to use: - set the words to be displayed with a call to set_words_openlp() - this returns an array of screenfuls of data + set the words to be displayed with a call to format_slide() - this returns an array of screenfuls of data set a theme (if you need) with set_theme tell it which DC to render to with set_DC() set the borders of where you want the text (if not the whole DC) with set_text_rectangle() @@ -102,8 +102,7 @@ class Renderer: def format_slide(self, words, footer): log.debug(u'format_slide %s', words) verses=[] - words=words.replace(u'\r\n', u'\n') - verses_text = words.split(u'\n') + verses_text = words.splitlines() for v in verses_text: lines=v.split(u'\n') verses.append(self.split_set_of_lines(lines, footer)[0]) diff --git a/openlp/core/lib/rendermanager.py b/openlp/core/lib/rendermanager.py index eb428d9ae..2fa3a2bd9 100644 --- a/openlp/core/lib/rendermanager.py +++ b/openlp/core/lib/rendermanager.py @@ -50,11 +50,8 @@ class RenderManager: else: self.theme = self.default_theme log.debug("theme is now %s", self.theme) - self.themedata = self.theme_manager.getThemeData(self.theme) - self.renderer.set_theme(self.themedata) - self.build_text_rectangle(self.themedata) def build_text_rectangle(self, theme): @@ -99,10 +96,6 @@ class RenderManager: def format_slide(self, words, footer): self.calculate_default(QtCore.QSize(800,600)) - - #self.renderer.set_text_rectangle(QtCore.QRect(10,0, self.width-1, self.height-1), - # QtCore.QRect(10,self.footer_start, self.width-1, self.height-self.footer_start)) - return self.renderer.format_slide(words, footer) def generate_slide(self,main_text, footer_text, preview=True): diff --git a/openlp/plugins/custom/forms/editcustomform.py b/openlp/plugins/custom/forms/editcustomform.py index 6392fff50..b77d137fd 100644 --- a/openlp/plugins/custom/forms/editcustomform.py +++ b/openlp/plugins/custom/forms/editcustomform.py @@ -170,5 +170,9 @@ class EditCustomForm(QtGui.QDialog, Ui_customEditDialog): self.TitleLabel.setStyleSheet('color: red') else: self.TitleLabel.setStyleSheet('color: black') + + if self.VerseListView.count() == 0: # must have 1 slide + invalid += 1 + if invalid == 1: self.valid = False