From 3b59525e985404eef782435f3c1376e345851e73 Mon Sep 17 00:00:00 2001 From: Tim Bentley Date: Sat, 13 Mar 2010 20:50:52 +0000 Subject: [PATCH 1/2] Renderer screen and font fixes --- openlp/core/lib/renderer.py | 7 ++----- openlp/core/lib/rendermanager.py | 4 ++-- 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/openlp/core/lib/renderer.py b/openlp/core/lib/renderer.py index 15e289dc9..7892a1222 100644 --- a/openlp/core/lib/renderer.py +++ b/openlp/core/lib/renderer.py @@ -43,8 +43,6 @@ class Renderer(object): """ self._rect = None self._debug = False - # the amount of right indent - self._right_margin = 64 self._display_shadow_size_footer = 0 self._display_outline_size_footer = 0 self.theme_name = None @@ -150,7 +148,7 @@ class Renderer(object): def pre_render_text(self, text): metrics = QtGui.QFontMetrics(self.mainFont) #work out line width - line_width = self._rect.width() #- self._right_margin + line_width = self._rect.width() #number of lines on a page - adjust for rounding up. line_height = metrics.height() if self._theme.display_shadow: @@ -449,8 +447,7 @@ class Renderer(object): rightextent = x + w # shift right from last line's rh edge if self._theme.display_wrapStyle == 1 and linenum != 0: - rightextent = self._first_line_right_extent #+ \ - #self._right_margin + rightextent = self._first_line_right_extent if rightextent > maxx: rightextent = maxx x = rightextent - w diff --git a/openlp/core/lib/rendermanager.py b/openlp/core/lib/rendermanager.py index edab3d309..5e9b1c331 100644 --- a/openlp/core/lib/rendermanager.py +++ b/openlp/core/lib/rendermanager.py @@ -146,13 +146,13 @@ class RenderManager(object): footer_rect = None if not theme.font_main_override: main_rect = QtCore.QRect(10, 0, - self.width - 1, self.footer_start) + self.width - 20, self.footer_start) else: main_rect = QtCore.QRect(theme.font_main_x, theme.font_main_y, theme.font_main_width - 1, theme.font_main_height - 1) if not theme.font_footer_override: footer_rect = QtCore.QRect(10, self.footer_start, - self.width - 1, self.height - self.footer_start) + self.width - 20, self.height - self.footer_start) else: footer_rect = QtCore.QRect(theme.font_footer_x, theme.font_footer_y, theme.font_footer_width - 1, From df8ffa53b27a34a679dd401cc370f3954280555f Mon Sep 17 00:00:00 2001 From: Tim Bentley Date: Sun, 14 Mar 2010 07:56:39 +0000 Subject: [PATCH 2/2] Fix DND for service items --- openlp/core/ui/servicemanager.py | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/openlp/core/ui/servicemanager.py b/openlp/core/ui/servicemanager.py index 7176cda99..b41fd24dc 100644 --- a/openlp/core/ui/servicemanager.py +++ b/openlp/core/ui/servicemanager.py @@ -100,6 +100,7 @@ class ServiceManager(QtGui.QWidget): self.parent = parent self.serviceItems = [] self.serviceName = u'' + self.droppos = 0 #is a new service and has not been saved self.isNew = True #Indicates if remoteTriggering is active. If it is the next addServiceItem call @@ -639,19 +640,21 @@ class ServiceManager(QtGui.QWidget): self.repaintServiceList(sitem + 1, 0) self.parent.LiveController.replaceServiceManagerItem(item) else: - if sitem == -1: + #nothing selected or dnd + if self.droppos == 0: self.serviceItems.append({u'service_item': item, u'order': len(self.serviceItems) + 1, u'expanded':expand}) self.repaintServiceList(len(self.serviceItems) + 1, 0) else: - self.serviceItems.insert(sitem + 1, {u'service_item': item, - u'order': len(self.serviceItems)+1, + self.serviceItems.insert(self.droppos, {u'service_item': item, + u'order': self.droppos, u'expanded':expand}) - self.repaintServiceList(sitem + 1, 0) + self.repaintServiceList(self.droppos, 0) #if rebuilding list make sure live is fixed. if rebuild: self.parent.LiveController.replaceServiceManagerItem(item) + self.droppos = 0 self.parent.serviceChanged(False, self.serviceName) def makePreview(self): @@ -732,9 +735,9 @@ class ServiceManager(QtGui.QWidget): link = event.mimeData() if link.hasText(): plugin = event.mimeData().text() + item = self.ServiceManagerList.itemAt(event.pos()) if plugin == u'ServiceManager': startpos, startCount = self.findServiceItem() - item = self.ServiceManagerList.itemAt(event.pos()) if item is None: endpos = len(self.serviceItems) else: @@ -753,6 +756,14 @@ class ServiceManager(QtGui.QWidget): self.serviceItems.insert(newpos, serviceItem) self.repaintServiceList(endpos, startCount) else: + if item == None: + self.droppos = len(self.serviceItems) + else: + parentitem = item.parent() + if parentitem is None: + self.droppos = item.data(0, QtCore.Qt.UserRole).toInt()[0] + else: + self.droppos = parentitem.data(0, QtCore.Qt.UserRole).toInt()[0] Receiver.send_message(u'%s_add_service_item' % plugin) def updateThemeList(self, theme_list):