Tidied up an assert and a few other lines of non-standard syntax.

This commit is contained in:
Raoul Snyman 2009-06-26 18:17:55 +02:00
parent 4469f0d40a
commit 9606f6a3bb
3 changed files with 29 additions and 16 deletions

View File

@ -20,14 +20,20 @@ Place, Suite 330, Boston, MA 02111-1307 USA
import types
from PyQt4 import QtCore, QtGui
from openlp.core.lib.toolbar import *
from openlp.core.lib import translate
class BaseListWithDnD(QtGui.QListView):
"""
Please put a short description of what this class does in here.
"""
def __init__(self,parent = None):
QtGui.QListView.__init__(self,parent)
assert (self.PluginName) # this must be set by the class which is inheriting
# this must be set by the class which is inheriting
assert(self.PluginName)
def mouseMoveEvent(self, event):
"""
Drag and drop event does not care what data is selected
@ -44,4 +50,3 @@ class BaseListWithDnD(QtGui.QListView):
if dropAction == QtCore.Qt.CopyAction:
self.close()

View File

@ -20,10 +20,12 @@ Place, Suite 330, Boston, MA 02111-1307 USA
import types
from PyQt4 import QtCore, QtGui
from openlp.core.lib.toolbar import *
from openlp.core.lib import translate
from listwithpreviews import ListWithPreviews
from serviceitem import ServiceItem
class MediaManagerItem(QtGui.QWidget):
"""
MediaManagerItem is a helper widget for plugins.
@ -106,7 +108,7 @@ class MediaManagerItem(QtGui.QWidget):
QtCore.QObject.connect(action, QtCore.SIGNAL(u'triggered()'), slot)
return action
####################################################################################################
###########################################################################
### None of the following *need* to be used, feel free to override
### them cmopletely in your plugin's implementation. Alternatively, call them from your
### plugin before or after you've done etra things that you need to.
@ -126,12 +128,12 @@ class MediaManagerItem(QtGui.QWidget):
# "text with an icon" then all this will help
# even for plugins of another sort, the setup of the right-click menu, common toolbar
# will help to keep things consistent and ease the creation of new plugins
# also a set of completely consistent action anesm then exist
# (onPreviewClick() is always called that, rather than having the
# name of the plugin added in as well... I regard that as a
# feature, I guess others might differ!)
def setupUi(self):
# Add a toolbar
self.addToolbar()
@ -219,7 +221,7 @@ class MediaManagerItem(QtGui.QWidget):
self.parent.config.set_list(self.ConfigSection, self.ListData.getFileList())
def generateSlideData(self):
assert (0, 'This fn needs to be defined by the plugin');
raise NotImplementedError(u'MediaManagerItem.generateSlideData needs to be defined by the plugin')
def onPreviewClick(self):
log.debug(self.PluginTextShort+u'Preview Requested')

View File

@ -129,14 +129,12 @@ class Renderer:
"""
Render a set of lines according to the theme, return bounding box
"""
#print "########## Generate frame from lines ##################"
log.debug(u'generate_frame_from_lines - Start')
#print "Render Lines ", lines
bbox = self._render_lines_unaligned(lines, False)
if footer_lines is not None:
bbox1 = self._render_lines_unaligned(footer_lines, True)
# reset the frame. first time do not worry about what you paint on.
# reset the frame. first time do not worry about what you paint on.
self._frame = QtGui.QImage(self._bg_frame)
x, y = self._correctAlignment(self._rect, bbox)
bbox = self._render_lines_unaligned(lines, False, (x, y), True)
@ -158,18 +156,22 @@ class Renderer:
painter.begin(self._bg_frame)
if self._theme.background_type == u'solid':
painter.fillRect(self._frame.rect(), QtGui.QColor(self._theme.background_color))
elif self._theme.background_type == u'gradient' : # gradient
elif self._theme.background_type == u'gradient':
# gradient
gradient = None
if self._theme.background_direction == u'horizontal':
w = int(self._frame.width()) / 2
gradient = QtGui.QLinearGradient(w, 0, w, self._frame.height()) # vertical
# vertical
gradient = QtGui.QLinearGradient(w, 0, w, self._frame.height())
elif self._theme.background_direction == u'vertical':
h = int(self._frame.height()) / 2
gradient = QtGui.QLinearGradient(0, h, self._frame.width(), h) # Horizontal
# Horizontal
gradient = QtGui.QLinearGradient(0, h, self._frame.width(), h)
else:
w = int(self._frame.width()) / 2
h = int(self._frame.height()) / 2
gradient = QtGui.QRadialGradient(w, h, w) # Circular
# Circular
gradient = QtGui.QRadialGradient(w, h, w)
gradient.setColorAt(0, QtGui.QColor(self._theme.background_startColor))
gradient.setColorAt(1, QtGui.QColor(self._theme.background_endColor))
painter.setBrush(QtGui.QBrush(gradient))
@ -182,7 +184,8 @@ class Renderer:
rectPath.lineTo(max_x, 0)
rectPath.closeSubpath()
painter.drawPath(rectPath)
elif self._theme.background_type== u'image': # image
elif self._theme.background_type== u'image':
# image
painter.fillRect(self._frame.rect(), QtCore.Qt.black)
if self.bg_image is not None:
painter.drawImage(0 ,0 , self.bg_image)
@ -252,11 +255,14 @@ class Renderer:
def _correctAlignment(self, rect, bbox):
x = rect.left()
if int(self._theme.display_verticalAlign) == 0: # top align
if int(self._theme.display_verticalAlign) == 0:
# top align
y = rect.top()
elif int(self._theme.display_verticalAlign) == 2: # bottom align
elif int(self._theme.display_verticalAlign) == 2:
# bottom align
y = rect.bottom() - bbox.height()
elif int(self._theme.display_verticalAlign) == 1: # centre align
elif int(self._theme.display_verticalAlign) == 1:
# centre align
y = rect.top() + (rect.height() - bbox.height()) / 2
else:
log.error(u'Invalid value for theme.VerticalAlign:%s' % self._theme.display_verticalAlign)