print footer, display plugin icon

This commit is contained in:
Andreas Preikschat 2011-01-30 20:19:24 +01:00
parent 1083cf38be
commit ce49a8fe20
1 changed files with 24 additions and 19 deletions

View File

@ -1187,26 +1187,31 @@ class ServiceManager(QtGui.QWidget):
""" """
Print a Service Order Sheet. Print a Service Order Sheet.
""" """
# TODO: Add settings, consider footer. If saved service, print service # TODO: Add settings.
# file name. if not self.serviceItems:
printer = QtGui.QPrinter() return
printer.setPaperSize(QtGui.QPrinter.A4) printDialog = QtGui.QPrintDialog()
if not printDialog.exec_():
return
text = u'<h1>%s</h1>' % translate('OpenLP.ServiceManager', text = u'<h1>%s</h1>' % translate('OpenLP.ServiceManager',
'Service Order Sheet') 'Service Order Sheet')
for item in self.serviceItems: for item in self.serviceItems:
text += u'<h2>' + item[u'service_item'].title + u'</h2>' item = item[u'service_item']
if item[u'service_item'].is_text(): text += u'<h2><img src="%s"></img> %s</h2>' % (item.icon,
for slide in item[u'service_item'].get_frames(): item.get_display_title())
if item.is_text():
for slide in item.get_frames():
text += u'<p>' + slide[u'text'] + u'</p>' text += u'<p>' + slide[u'text'] + u'</p>'
elif item[u'service_item'].is_image(): elif item.is_image():
# Get child title text += u'<ol>'
pass for slide in range(len(item.get_frames())):
else: text += u'<li><p>%s</p></li>' % item.get_frame_title(slide)
# What to do with the other types? text += u'</ol>'
pass if item.foot_text:
if item[u'service_item'].notes: text += u'<p>%s</p>' % item.foot_text
text += u'<p> %s ' % translate('OpenLP.ServiceManager', if item.notes:
'Notes:') + item[u'service_item'].notes + u'</p>' text += u'<p><b>%s</b> %s</p>' % (translate(
doc = QtGui.QTextDocument() 'OpenLP.ServiceManager', 'Notes:'), item.notes)
doc.setHtml(text) serviceDocument = QtGui.QTextDocument()
doc.print_(printer) serviceDocument.setHtml(text)
serviceDocument.print_(printDialog.printer())