mirror of
https://gitlab.com/openlp/openlp.git
synced 2024-09-28 19:07:35 +00:00
Minor renderer changes
This commit is contained in:
parent
58fbbbd706
commit
b6593be27f
@ -147,7 +147,8 @@ class Renderer(object):
|
||||
# print words
|
||||
verses = []
|
||||
words = words.replace(u'\r\n', u'\n')
|
||||
verses_text = words.split(u'\n\n')
|
||||
verses_text = words.split(u'\n')
|
||||
#print verses_text
|
||||
text = []
|
||||
for verse in verses_text:
|
||||
lines = verse.split(u'\n')
|
||||
@ -173,7 +174,10 @@ class Renderer(object):
|
||||
split_lines = []
|
||||
count = 0
|
||||
for line in text:
|
||||
# print "C", line , len(line)
|
||||
#print "C", line , len(line)
|
||||
#Must be a blank line so keep it.
|
||||
if len(line) == 0:
|
||||
line = u' '
|
||||
while len(line) > 0:
|
||||
# print "C1", line , len(line)
|
||||
if len(line) > ave_line_width:
|
||||
@ -391,29 +395,8 @@ class Renderer(object):
|
||||
Defaults to *False*. Whether or not this is a live screen.
|
||||
"""
|
||||
x, y = tlcorner
|
||||
# We draw the text to see how big it is and then iterate to make it fit
|
||||
# when we line wrap we do in in the "lyrics" style, so the second line is
|
||||
# right aligned with a "hanging indent"
|
||||
#print "----------------------------"
|
||||
#print line
|
||||
# words = line.split(u' ')
|
||||
# thisline = u' '.join(words)
|
||||
# lastword = len(words)
|
||||
# lines = []
|
||||
maxx = self._rect.width();
|
||||
maxy = self._rect.height();
|
||||
# while (len(words) > 0):
|
||||
# w , h = self._get_extent_and_render(thisline, footer)
|
||||
# print "m", w, h, x, maxx
|
||||
# rhs = w + x
|
||||
# if rhs < maxx - self._right_margin:
|
||||
# lines.append(thisline)
|
||||
# words = words[lastword:]
|
||||
# thisline = ' '.join(words)
|
||||
# lastword = len(words)
|
||||
# else:
|
||||
# lastword -= 1
|
||||
# thisline = ' '.join(words[:lastword])
|
||||
lines = []
|
||||
lines.append(line)
|
||||
startx = x
|
||||
|
@ -58,7 +58,7 @@ class RenderManager(object):
|
||||
else:
|
||||
self.current_display = screen_number
|
||||
self.renderer = Renderer()
|
||||
self.calculate_default(self.screen_list[self.current_display][u'size'])
|
||||
#self.calculate_default(self.screen_list[self.current_display][u'size'])
|
||||
self.theme = u''
|
||||
self.service_theme = u''
|
||||
self.global_style = u''
|
||||
@ -133,6 +133,7 @@ class RenderManager(object):
|
||||
def build_text_rectangle(self, theme):
|
||||
"""
|
||||
Builds a text block using the settings in ``theme``.
|
||||
One is needed per slide
|
||||
|
||||
``theme``
|
||||
The theme to build a text block for.
|
||||
@ -149,8 +150,8 @@ class RenderManager(object):
|
||||
footer_rect = QtCore.QRect(10,self.footer_start, self.width - 1, self.height-self.footer_start)
|
||||
else:
|
||||
footer_rect = QtCore.QRect(int(theme.font_footer_x),int(theme.font_footer_y),
|
||||
int(theme.font_footer_width)-1, int(theme.font_footer_height)-1)
|
||||
self.renderer.set_text_rectangle(main_rect,footer_rect)
|
||||
int(theme.font_footer_width)-1, int(theme.font_footer_height) - 1)
|
||||
self.renderer.set_text_rectangle(main_rect, footer_rect)
|
||||
|
||||
def generate_preview(self, themedata):
|
||||
"""
|
||||
@ -178,15 +179,15 @@ class RenderManager(object):
|
||||
|
||||
def format_slide(self, words):
|
||||
"""
|
||||
Calculate how much text can fid on a slide.
|
||||
Calculate how much text can fit on a slide.
|
||||
|
||||
``words``
|
||||
The words to go on the slides.
|
||||
"""
|
||||
log.debug(u'format slide')
|
||||
self.calculate_default(self.screen_list[self.current_display][u'size'])
|
||||
#self.calculate_default(self.screen_list[self.current_display][u'size'])
|
||||
self.build_text_rectangle(self.themedata)
|
||||
self.renderer.set_frame_dest(self.width, self.height)
|
||||
#self.renderer.set_frame_dest(self.width, self.height)
|
||||
return self.renderer.format_slide(words, False)
|
||||
|
||||
def generate_slide(self, main_text, footer_text):
|
||||
@ -200,7 +201,6 @@ class RenderManager(object):
|
||||
The text for the slide footer.
|
||||
"""
|
||||
log.debug(u'generate slide')
|
||||
self.calculate_default(self.screen_list[self.current_display][u'size'])
|
||||
self.build_text_rectangle(self.themedata)
|
||||
self.renderer.set_frame_dest(self.width, self.height)
|
||||
return self.renderer.generate_frame_from_lines(main_text, footer_text)
|
||||
@ -233,6 +233,7 @@ class RenderManager(object):
|
||||
The QWidget instance of the screen.
|
||||
"""
|
||||
log.debug(u'calculate default %s', screen)
|
||||
#size fixed so reflects the preview size.
|
||||
if self.current_display == 0:
|
||||
self.width = 1024
|
||||
self.height = 768
|
||||
|
Loading…
Reference in New Issue
Block a user