From 9239c0cdf3bdc52137701516c79d01fdbb5f5782 Mon Sep 17 00:00:00 2001 From: Jon Tibble Date: Sun, 24 Jan 2010 23:16:15 +0000 Subject: [PATCH 01/23] Cleanups --- openlp/core/lib/rendermanager.py | 2 +- openlp/core/ui/__init__.py | 2 +- openlp/core/ui/aboutform.py | 1 - openlp/core/ui/maindisplay.py | 1 - openlp/core/ui/servicemanager.py | 4 ++-- openlp/core/ui/thememanager.py | 4 ++-- openlp/plugins/bibles/forms/importwizardform.py | 1 - openlp/plugins/bibles/lib/bibleOpenSongimpl.py | 4 +--- openlpcnv.pyw | 2 +- 9 files changed, 8 insertions(+), 13 deletions(-) diff --git a/openlp/core/lib/rendermanager.py b/openlp/core/lib/rendermanager.py index 78e99506a..b47eaa313 100644 --- a/openlp/core/lib/rendermanager.py +++ b/openlp/core/lib/rendermanager.py @@ -25,7 +25,7 @@ import logging -from PyQt4 import QtGui, QtCore +from PyQt4 import QtCore from renderer import Renderer from openlp.core.lib import ThemeLevel, resize_image diff --git a/openlp/core/ui/__init__.py b/openlp/core/ui/__init__.py index 42f232638..5d4c798d8 100644 --- a/openlp/core/ui/__init__.py +++ b/openlp/core/ui/__init__.py @@ -42,4 +42,4 @@ from mainwindow import MainWindow __all__ = ['SplashScreen', 'AboutForm', 'SettingsForm', 'MainWindow', 'MainDisplay', 'SlideController', 'ServiceManager', 'ThemeManager', - 'AmendThemeForm', 'MediaDockManager', 'ThemeLevel'] + 'AmendThemeForm', 'MediaDockManager'] diff --git a/openlp/core/ui/aboutform.py b/openlp/core/ui/aboutform.py index d6a97e2c9..c3eb7bdcb 100644 --- a/openlp/core/ui/aboutform.py +++ b/openlp/core/ui/aboutform.py @@ -25,7 +25,6 @@ from PyQt4 import QtCore, QtGui -from openlp.core.lib import build_icon from aboutdialog import Ui_AboutDialog class AboutForm(QtGui.QDialog, Ui_AboutDialog): diff --git a/openlp/core/ui/maindisplay.py b/openlp/core/ui/maindisplay.py index a4ff53567..11b89743d 100644 --- a/openlp/core/ui/maindisplay.py +++ b/openlp/core/ui/maindisplay.py @@ -25,7 +25,6 @@ import logging import os -import time from PyQt4 import QtCore, QtGui from PyQt4.phonon import Phonon diff --git a/openlp/core/ui/servicemanager.py b/openlp/core/ui/servicemanager.py index 44170e616..514e39077 100644 --- a/openlp/core/ui/servicemanager.py +++ b/openlp/core/ui/servicemanager.py @@ -30,8 +30,8 @@ import zipfile from PyQt4 import QtCore, QtGui from openlp.core.lib import PluginConfig, OpenLPToolbar, ServiceItem, \ - ServiceItemType, contextMenuAction, contextMenuSeparator, contextMenu, \ - Receiver, contextMenu, str_to_bool + contextMenuAction, contextMenuSeparator, contextMenu, Receiver, \ + contextMenu, str_to_bool class ServiceManagerList(QtGui.QTreeWidget): diff --git a/openlp/core/ui/thememanager.py b/openlp/core/ui/thememanager.py index b2288f75a..298f5ab23 100644 --- a/openlp/core/ui/thememanager.py +++ b/openlp/core/ui/thememanager.py @@ -34,8 +34,8 @@ from PyQt4 import QtCore, QtGui from openlp.core.ui import AmendThemeForm from openlp.core.theme import Theme from openlp.core.lib import PluginConfig, OpenLPToolbar, contextMenuAction, \ - ThemeXML, ThemeLevel, str_to_bool, get_text_file_string, build_icon, \ - Receiver, contextMenuSeparator + ThemeXML, str_to_bool, get_text_file_string, build_icon, Receiver, \ + contextMenuSeparator from openlp.core.utils import ConfigHelper class ThemeManager(QtGui.QWidget): diff --git a/openlp/plugins/bibles/forms/importwizardform.py b/openlp/plugins/bibles/forms/importwizardform.py index 7e82b6b7f..da95d968f 100644 --- a/openlp/plugins/bibles/forms/importwizardform.py +++ b/openlp/plugins/bibles/forms/importwizardform.py @@ -26,7 +26,6 @@ import logging import os import os.path -from time import sleep from PyQt4 import QtCore, QtGui diff --git a/openlp/plugins/bibles/lib/bibleOpenSongimpl.py b/openlp/plugins/bibles/lib/bibleOpenSongimpl.py index 4d171d57c..575d1bf0b 100644 --- a/openlp/plugins/bibles/lib/bibleOpenSongimpl.py +++ b/openlp/plugins/bibles/lib/bibleOpenSongimpl.py @@ -23,13 +23,11 @@ # Temple Place, Suite 330, Boston, MA 02111-1307 USA # ############################################################################### -import os -import os.path import logging import chardet import codecs -from lxml import objectify +from lxml import objectify from PyQt4 import QtCore from openlp.core.lib import Receiver diff --git a/openlpcnv.pyw b/openlpcnv.pyw index 877e74744..8c3a8bcf5 100755 --- a/openlpcnv.pyw +++ b/openlpcnv.pyw @@ -147,4 +147,4 @@ if __name__ == u'__main__': newdb = os.path.join(newpath, u'songs.sqlite') mig.convert_sqlite2_to_3(olddb, newdb) mig.process() - #mig.move_log_file() \ No newline at end of file + #mig.move_log_file() From 33d022704169a4e5f01cce9fdaa9c8a6048c5e89 Mon Sep 17 00:00:00 2001 From: Raoul Snyman Date: Sun, 14 Feb 2010 23:20:13 +0200 Subject: [PATCH 02/23] Working on a "Source Distribution" - aka source tarball --- MANIFEST.in | 11 +++++++++ setup.py | 69 ++++++++++++++++++++++++++++------------------------- 2 files changed, 47 insertions(+), 33 deletions(-) create mode 100644 MANIFEST.in diff --git a/MANIFEST.in b/MANIFEST.in new file mode 100644 index 000000000..0e94db321 --- /dev/null +++ b/MANIFEST.in @@ -0,0 +1,11 @@ +recursive-include openlp *.py +recursive-include openlp *.sqlite +recursive-include openlp *.csv +recursive-include documentation * +recursive-include resources/forms * +recursive-include resources/i18n * +recursive-include resources/images * +recursive-include scripts *.py +include copyright.txt +include LICENSE +include version.txt diff --git a/setup.py b/setup.py index 8c34238ff..aa7b27a67 100644 --- a/setup.py +++ b/setup.py @@ -1,38 +1,41 @@ -# -*- coding: utf-8 -*- -# vim: autoindent shiftwidth=4 expandtab textwidth=80 tabstop=4 softtabstop=4 +from setuptools import setup, find_packages +import sys, os -############################################################################### -# OpenLP - Open Source Lyrics Projection # -# --------------------------------------------------------------------------- # -# Copyright (c) 2008-2010 Raoul Snyman # -# Portions copyright (c) 2008-2010 Tim Bentley, Jonathan Corwin, Michael # -# Gorven, Scott Guerrieri, Maikel Stuivenberg, Martin Thompson, Jon Tibble, # -# Carsten Tinggaard # -# --------------------------------------------------------------------------- # -# This program is free software; you can redistribute it and/or modify it # -# under the terms of the GNU General Public License as published by the Free # -# Software Foundation; version 2 of the License. # -# # -# This program is distributed in the hope that it will be useful, but WITHOUT # -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or # -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for # -# more details. # -# # -# You should have received a copy of the GNU General Public License along # -# with this program; if not, write to the Free Software Foundation, Inc., 59 # -# Temple Place, Suite 330, Boston, MA 02111-1307 USA # -############################################################################### +VERSION_FILE = 'openlp/.version' -from setuptools import setup +try: + from bzrlib.branch import Branch + b = Branch.open_containing('.')[0] + b.lock_read() + try: + revno = b.revno() + # Add the latest tag in here too + finally: + b.unlock() +except: + revno = 0 -APP = ['openlp.pyw'] -OPTIONS = {'argv_emulation': True, 'includes': ['sip', 'PyQt4']} +version = '1.9.1-bzr%s' % revno setup( - name='openlp.org', - version='1.9.0', - url='http://www.openlp.org/', - app=APP, - options={'py2app': OPTIONS}, - setup_requires=['py2app'], -) \ No newline at end of file + name='OpenLP', + version=version, + description="Open source Church presentation and lyrics projection application.", + long_description="""\ +OpenLP (previously openlp.org) is free church presentation software, or lyrics projection software, used to display slides of songs, Bible verses, videos, images, and even presentations (if PowerPoint is installed) for church worship using a computer and a data projector.""", + classifiers=[], # Get strings from http://pypi.python.org/pypi?%3Aaction=list_classifiers + keywords='open source church presentation lyrics projection song bible display project', + author='Raoul Snyman', + author_email='raoulsnyman@openlp.org', + url='http://openlp.org/', + license='GNU General Public License', + packages=find_packages(exclude=['ez_setup', 'examples', 'tests']), + include_package_data=True, + zip_safe=False, + install_requires=[ + # -*- Extra requirements: -*- + ], + entry_points=""" + # -*- Entry points: -*- + """ +) From 711bd3cf00fc1e4afeb3d9382992ea797b9f550c Mon Sep 17 00:00:00 2001 From: Jon Tibble Date: Wed, 17 Feb 2010 19:13:04 +0000 Subject: [PATCH 03/23] Import fixes and copyright insertion --- openlp/plugins/alerts/alertsplugin.py | 3 +-- openlp/plugins/alerts/forms/alerteditform.py | 2 -- openlp/plugins/alerts/forms/alertform.py | 3 +-- openlp/plugins/alerts/lib/alertsmanager.py | 27 +++++++++++++++++-- .../songusage/forms/songusagedeleteform.py | 2 -- 5 files changed, 27 insertions(+), 10 deletions(-) diff --git a/openlp/plugins/alerts/alertsplugin.py b/openlp/plugins/alerts/alertsplugin.py index 60e718bb3..5bf268394 100644 --- a/openlp/plugins/alerts/alertsplugin.py +++ b/openlp/plugins/alerts/alertsplugin.py @@ -23,12 +23,11 @@ # Temple Place, Suite 330, Boston, MA 02111-1307 USA # ############################################################################### -from datetime import datetime import logging from PyQt4 import QtCore, QtGui -from openlp.core.lib import Plugin, Receiver, str_to_bool, build_icon, PluginStatus +from openlp.core.lib import Plugin, build_icon, PluginStatus from openlp.plugins.alerts.lib import AlertsManager, DBManager from openlp.plugins.alerts.forms import AlertsTab, AlertForm, AlertEditForm diff --git a/openlp/plugins/alerts/forms/alerteditform.py b/openlp/plugins/alerts/forms/alerteditform.py index fef8a04e5..4abc8a660 100644 --- a/openlp/plugins/alerts/forms/alerteditform.py +++ b/openlp/plugins/alerts/forms/alerteditform.py @@ -23,8 +23,6 @@ # Temple Place, Suite 330, Boston, MA 02111-1307 USA # ############################################################################### -from datetime import date - from PyQt4 import QtGui, QtCore from openlp.plugins.alerts.lib.models import AlertItem diff --git a/openlp/plugins/alerts/forms/alertform.py b/openlp/plugins/alerts/forms/alertform.py index 26f78e9b2..2d7dd1c21 100644 --- a/openlp/plugins/alerts/forms/alertform.py +++ b/openlp/plugins/alerts/forms/alertform.py @@ -23,9 +23,8 @@ # Temple Place, Suite 330, Boston, MA 02111-1307 USA # ############################################################################### -from datetime import date - from PyQt4 import QtGui, QtCore + from openlp.plugins.alerts.lib.models import AlertItem from alertdialog import Ui_AlertDialog diff --git a/openlp/plugins/alerts/lib/alertsmanager.py b/openlp/plugins/alerts/lib/alertsmanager.py index 1f4369588..5ed48f939 100644 --- a/openlp/plugins/alerts/lib/alertsmanager.py +++ b/openlp/plugins/alerts/lib/alertsmanager.py @@ -1,10 +1,33 @@ +# -*- coding: utf-8 -*- +# vim: autoindent shiftwidth=4 expandtab textwidth=80 tabstop=4 softtabstop=4 + +############################################################################### +# OpenLP - Open Source Lyrics Projection # +# --------------------------------------------------------------------------- # +# Copyright (c) 2008-2010 Raoul Snyman # +# Portions copyright (c) 2008-2010 Tim Bentley, Jonathan Corwin, Michael # +# Gorven, Scott Guerrieri, Maikel Stuivenberg, Martin Thompson, Jon Tibble, # +# Carsten Tinggaard # +# --------------------------------------------------------------------------- # +# This program is free software; you can redistribute it and/or modify it # +# under the terms of the GNU General Public License as published by the Free # +# Software Foundation; version 2 of the License. # +# # +# This program is distributed in the hope that it will be useful, but WITHOUT # +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or # +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for # +# more details. # +# # +# You should have received a copy of the GNU General Public License along # +# with this program; if not, write to the Free Software Foundation, Inc., 59 # +# Temple Place, Suite 330, Boston, MA 02111-1307 USA # +############################################################################### import logging from PyQt4 import QtCore, QtGui -from openlp.core.lib import str_to_bool, Receiver -from openlp.core.lib import SettingsTab +from openlp.core.lib import Receiver class AlertsManager(QtCore.QObject): """ diff --git a/openlp/plugins/songusage/forms/songusagedeleteform.py b/openlp/plugins/songusage/forms/songusagedeleteform.py index 26fe2b7e2..56eb1954a 100644 --- a/openlp/plugins/songusage/forms/songusagedeleteform.py +++ b/openlp/plugins/songusage/forms/songusagedeleteform.py @@ -23,8 +23,6 @@ # Temple Place, Suite 330, Boston, MA 02111-1307 USA # ############################################################################### -from datetime import date - from PyQt4 import QtGui from songusagedeletedialog import Ui_SongUsageDeleteDialog From 77e55da0d33677f5ad0e2dbac733185df39a19a5 Mon Sep 17 00:00:00 2001 From: Raoul Snyman Date: Fri, 19 Feb 2010 21:14:39 +0200 Subject: [PATCH 04/23] Pulling in the tags and the revision number from bzr. --- setup.py | 1 + 1 file changed, 1 insertion(+) diff --git a/setup.py b/setup.py index aa7b27a67..457e8a556 100644 --- a/setup.py +++ b/setup.py @@ -10,6 +10,7 @@ try: try: revno = b.revno() # Add the latest tag in here too + verno = b.tags.get_tag_dict().keys()[0] finally: b.unlock() except: From 7efd037024290641e3ca344bf5e0bad68fc0ddd1 Mon Sep 17 00:00:00 2001 From: Raoul Snyman Date: Fri, 19 Feb 2010 21:17:32 +0200 Subject: [PATCH 05/23] Pull the version number from the tag. --- setup.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/setup.py b/setup.py index 457e8a556..d891b7bbf 100644 --- a/setup.py +++ b/setup.py @@ -8,15 +8,15 @@ try: b = Branch.open_containing('.')[0] b.lock_read() try: - revno = b.revno() - # Add the latest tag in here too verno = b.tags.get_tag_dict().keys()[0] + revno = b.revno() finally: b.unlock() except: + verno = '1.9.0' revno = 0 -version = '1.9.1-bzr%s' % revno +version = '%s-bzr%s' % (verno, revno) setup( name='OpenLP', From 985ce73dfd06d0b8e858f08d01cb6cea2bda7791 Mon Sep 17 00:00:00 2001 From: Tim Bentley Date: Sun, 21 Feb 2010 14:06:56 +0000 Subject: [PATCH 06/23] Force regeneration of sevice item on theme change --- openlp/core/ui/servicemanager.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/openlp/core/ui/servicemanager.py b/openlp/core/ui/servicemanager.py index b96e47f97..8e6b1331e 100644 --- a/openlp/core/ui/servicemanager.py +++ b/openlp/core/ui/servicemanager.py @@ -570,6 +570,8 @@ class ServiceManager(QtGui.QWidget): self.service_theme = unicode(self.ThemeComboBox.currentText()) self.parent.RenderManager.set_service_theme(self.service_theme) self.config.set_config(u'service theme', self.service_theme) + #force reset of renderer. + self.parent.RenderManager.themesata = None self.regenerateServiceItems() def regenerateServiceItems(self): From 20ab9d1ce2d12642dde9a0ac378393cc543b7539 Mon Sep 17 00:00:00 2001 From: Tim Bentley Date: Sun, 21 Feb 2010 14:12:47 +0000 Subject: [PATCH 07/23] Force regeneration of all changes --- openlp/core/ui/servicemanager.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/openlp/core/ui/servicemanager.py b/openlp/core/ui/servicemanager.py index 8e6b1331e..ded360931 100644 --- a/openlp/core/ui/servicemanager.py +++ b/openlp/core/ui/servicemanager.py @@ -570,11 +570,11 @@ class ServiceManager(QtGui.QWidget): self.service_theme = unicode(self.ThemeComboBox.currentText()) self.parent.RenderManager.set_service_theme(self.service_theme) self.config.set_config(u'service theme', self.service_theme) - #force reset of renderer. - self.parent.RenderManager.themesata = None self.regenerateServiceItems() def regenerateServiceItems(self): + #force reset of renderer as theme data has changed + self.parent.RenderManager.themesata = None if len(self.serviceItems) > 0: tempServiceItems = self.serviceItems self.onNewService() From f7d95a8fdb41da2a5f4a878fd9cd8a4c6260770d Mon Sep 17 00:00:00 2001 From: Jon Tibble Date: Sun, 21 Feb 2010 21:41:30 +0000 Subject: [PATCH 08/23] Remove debug prints --- openlp/core/ui/thememanager.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/openlp/core/ui/thememanager.py b/openlp/core/ui/thememanager.py index 18744187f..9e2a8ecce 100644 --- a/openlp/core/ui/thememanager.py +++ b/openlp/core/ui/thememanager.py @@ -237,8 +237,6 @@ class ThemeManager(QtGui.QWidget): if len(files) > 0: for file in files: self.config.set_last_dir(unicode(file)) - print file - print self.path self.unzipTheme(file, self.path) self.loadThemes() From 962f1364e47b61ef1777927fd6aee0631f2f00c1 Mon Sep 17 00:00:00 2001 From: Jon Tibble Date: Sun, 21 Feb 2010 23:05:03 +0000 Subject: [PATCH 09/23] Fix v2 theme importing --- openlp/core/ui/thememanager.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/openlp/core/ui/thememanager.py b/openlp/core/ui/thememanager.py index 9e2a8ecce..a0168324f 100644 --- a/openlp/core/ui/thememanager.py +++ b/openlp/core/ui/thememanager.py @@ -314,6 +314,7 @@ class ThemeManager(QtGui.QWidget): themename = None for file in zip.namelist(): osfile = unicode(QtCore.QDir.toNativeSeparators(file)) + theme_dir = None if osfile.endswith(os.path.sep): theme_dir = os.path.join(dir, osfile) if not os.path.exists(theme_dir): @@ -325,6 +326,10 @@ class ThemeManager(QtGui.QWidget): # not preview file if themename is None: themename = names[0] + if theme_dir is None: + theme_dir = os.path.join(dir, names[0]) + if not os.path.exists(theme_dir): + os.mkdir(os.path.join(dir, names[0])) xml_data = zip.read(file) if os.path.splitext(file)[1].lower() in [u'.xml']: if self.checkVersion1(xml_data): From 45c7fad1d6f6f71ef0cc85c21a7b0f30b93aa9aa Mon Sep 17 00:00:00 2001 From: Jon Tibble Date: Sun, 21 Feb 2010 23:40:16 +0000 Subject: [PATCH 10/23] Fix theme import colours --- openlp/core/theme/theme.py | 2 +- openlp/core/ui/thememanager.py | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/openlp/core/theme/theme.py b/openlp/core/theme/theme.py index 92ffbfed2..0295912fa 100644 --- a/openlp/core/theme/theme.py +++ b/openlp/core/theme/theme.py @@ -136,7 +136,7 @@ class Theme(object): if (element.tag.find(u'Color') > 0 or (element.tag.find(u'BackgroundParameter') == 0 and type(val) == type(0))): # convert to a wx.Colour - val = QtGui.QColor((val>>16) & 0xFF, (val>>8)&0xFF, val&0xFF) + val = QtGui.QColor(val&0xFF, (val>>8)&0xFF, (val>>16)&0xFF) setattr(self, element.tag, val) def __str__(self): diff --git a/openlp/core/ui/thememanager.py b/openlp/core/ui/thememanager.py index a0168324f..dff0723c7 100644 --- a/openlp/core/ui/thememanager.py +++ b/openlp/core/ui/thememanager.py @@ -390,7 +390,6 @@ class ThemeManager(QtGui.QWidget): unicode(theme.BackgroundParameter2.name()), direction) else: newtheme.add_background_image(unicode(theme.BackgroundParameter1)) - newtheme.add_font(unicode(theme.FontName), unicode(theme.FontColor.name()), unicode(theme.FontProportion * 3), u'False') From 60dd3b36cf34d28207054975d48935d496217d75 Mon Sep 17 00:00:00 2001 From: Tim Bentley Date: Mon, 22 Feb 2010 06:14:44 +0000 Subject: [PATCH 11/23] Fix presentation tab and repaint service item --- openlp/core/ui/servicemanager.py | 7 +++++-- .../plugins/presentations/lib/presentationtab.py | 15 ++++----------- 2 files changed, 9 insertions(+), 13 deletions(-) diff --git a/openlp/core/ui/servicemanager.py b/openlp/core/ui/servicemanager.py index ded360931..a51bdc1d0 100644 --- a/openlp/core/ui/servicemanager.py +++ b/openlp/core/ui/servicemanager.py @@ -579,9 +579,9 @@ class ServiceManager(QtGui.QWidget): tempServiceItems = self.serviceItems self.onNewService() for item in tempServiceItems: - self.addServiceItem(item[u'service_item']) + self.addServiceItem(item[u'service_item'], True) - def addServiceItem(self, item): + def addServiceItem(self, item, rebuild=False): """ Add a Service item to the list @@ -608,6 +608,9 @@ class ServiceManager(QtGui.QWidget): u'order': len(self.serviceItems)+1, u'expanded':True}) self.repaintServiceList(sitem + 1, 0) + #if rebuilding list make sure live is fixed. + if rebuild: + self.parent.LiveController.replaceServiceManagerItem(item) self.parent.serviceChanged(False, self.serviceName) def makePreview(self): diff --git a/openlp/plugins/presentations/lib/presentationtab.py b/openlp/plugins/presentations/lib/presentationtab.py index 40ab15e69..e7d16eb47 100644 --- a/openlp/plugins/presentations/lib/presentationtab.py +++ b/openlp/plugins/presentations/lib/presentationtab.py @@ -51,17 +51,10 @@ class PresentationTab(SettingsTab): self.PresentationLeftLayout.setMargin(0) self.VerseDisplayGroupBox = QtGui.QGroupBox(self) self.VerseDisplayGroupBox.setObjectName(u'VerseDisplayGroupBox') - self.VerseDisplayLayout = QtGui.QGridLayout(self.VerseDisplayGroupBox) + self.VerseDisplayLayout = QtGui.QVBoxLayout(self.VerseDisplayGroupBox) self.VerseDisplayLayout.setMargin(8) self.VerseDisplayLayout.setObjectName(u'VerseDisplayLayout') - self.VerseTypeWidget = QtGui.QWidget(self.VerseDisplayGroupBox) - self.VerseTypeWidget.setObjectName(u'VerseTypeWidget') - self.VerseTypeLayout = QtGui.QHBoxLayout(self.VerseTypeWidget) - self.VerseTypeLayout.setSpacing(8) - self.VerseTypeLayout.setMargin(0) - self.VerseTypeLayout.setObjectName(u'VerseTypeLayout') self.PresenterCheckboxes = {} - index = 0 for key in self.controllers: controller = self.controllers[key] checkbox = QtGui.QCheckBox(self.VerseDisplayGroupBox) @@ -69,8 +62,7 @@ class PresentationTab(SettingsTab): checkbox.setEnabled(controller.available) checkbox.setObjectName(controller.name + u'CheckBox') self.PresenterCheckboxes[controller.name] = checkbox - index = index + 1 - self.VerseDisplayLayout.addWidget(checkbox, index, 0, 1, 1) + self.VerseDisplayLayout.addWidget(checkbox) self.PresentationThemeWidget = QtGui.QWidget(self.VerseDisplayGroupBox) self.PresentationThemeWidget.setObjectName(u'PresentationThemeWidget') self.PresentationThemeLayout = QtGui.QHBoxLayout( @@ -96,6 +88,7 @@ class PresentationTab(SettingsTab): self.PresentationLayout.addWidget(self.PresentationRightWidget) def retranslateUi(self): + self.VerseDisplayGroupBox.setTitle(self.trUtf8('Avaliable Controllers')) for key in self.controllers: controller = self.controllers[key] checkbox = self.PresenterCheckboxes[controller.name] @@ -115,4 +108,4 @@ class PresentationTab(SettingsTab): controller = self.controllers[key] checkbox = self.PresenterCheckboxes[controller.name] self.config.set_config( - controller.name, unicode(checkbox.checkState())) \ No newline at end of file + controller.name, unicode(checkbox.checkState())) From 03371279854059a22add6c554463c42da060bac5 Mon Sep 17 00:00:00 2001 From: Jon Tibble Date: Mon, 22 Feb 2010 15:53:23 +0000 Subject: [PATCH 12/23] Fix theme import alignment --- openlp/core/ui/thememanager.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/openlp/core/ui/thememanager.py b/openlp/core/ui/thememanager.py index dff0723c7..630b1a485 100644 --- a/openlp/core/ui/thememanager.py +++ b/openlp/core/ui/thememanager.py @@ -402,9 +402,14 @@ class ThemeManager(QtGui.QWidget): shadow = True if theme.Outline == 1: outline = True + vAlignCorrection = 0 + if theme.VerticalAlign == 2: + vAlignCorrection = 1 + elif theme.VerticalAlign == 1: + vAlignCorrection = 2 newtheme.add_display(unicode(shadow), unicode(theme.ShadowColor.name()), unicode(outline), unicode(theme.OutlineColor.name()), - unicode(theme.HorizontalAlign), unicode(theme.VerticalAlign), + unicode(theme.HorizontalAlign), unicode(vAlignCorrection), unicode(theme.WrapStyle), unicode(0)) return newtheme.extract_xml() From 61c7b6479fed352d8853dc6159447e4ff24942cd Mon Sep 17 00:00:00 2001 From: Jon Tibble Date: Mon, 22 Feb 2010 16:42:10 +0000 Subject: [PATCH 13/23] Fix theme import font colours --- openlp/core/theme/theme.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/openlp/core/theme/theme.py b/openlp/core/theme/theme.py index 0295912fa..27969c9d9 100644 --- a/openlp/core/theme/theme.py +++ b/openlp/core/theme/theme.py @@ -30,7 +30,7 @@ from PyQt4 import QtGui DelphiColors={"clRed":0xFF0000, "clBlue":0x0000FF, - "clYellow":0x0FFFF00, + "clYellow":0xFFFF00, "clBlack":0x000000, "clWhite":0xFFFFFF} @@ -113,6 +113,7 @@ class Theme(object): root = ElementTree(element=XML(xml)) iter = root.getiterator() for element in iter: + delphiColorChange = False if element.tag != u'Theme': t = element.text val = 0 @@ -128,6 +129,7 @@ class Theme(object): pass elif DelphiColors.has_key(t): val = DelphiColors[t] + delphiColorChange = True else: try: val = int(t) @@ -136,7 +138,10 @@ class Theme(object): if (element.tag.find(u'Color') > 0 or (element.tag.find(u'BackgroundParameter') == 0 and type(val) == type(0))): # convert to a wx.Colour - val = QtGui.QColor(val&0xFF, (val>>8)&0xFF, (val>>16)&0xFF) + if not delphiColorChange: + val = QtGui.QColor(val&0xFF, (val>>8)&0xFF, (val>>16)&0xFF) + else: + val = QtGui.QColor((val>>16)&0xFF, (val>>8)&0xFF, val&0xFF) setattr(self, element.tag, val) def __str__(self): From d02fc68a721bf8b1996e2c8f19ccce4d72ae8522 Mon Sep 17 00:00:00 2001 From: Jon Tibble Date: Mon, 22 Feb 2010 16:57:08 +0000 Subject: [PATCH 14/23] Fix unzipping theme files --- openlp/core/ui/thememanager.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openlp/core/ui/thememanager.py b/openlp/core/ui/thememanager.py index 630b1a485..577021418 100644 --- a/openlp/core/ui/thememanager.py +++ b/openlp/core/ui/thememanager.py @@ -341,7 +341,7 @@ class ThemeManager(QtGui.QWidget): outfile = open(fullpath, u'w') outfile.write(filexml) else: - outfile = open(fullpath, u'w') + outfile = open(fullpath, u'wb') outfile.write(zip.read(file)) self.generateAndSaveImage(dir, themename, filexml) except: From b80bfb5a80ab9fe302bc43ee2187004d58959319 Mon Sep 17 00:00:00 2001 From: Michael Gorven Date: Tue, 23 Feb 2010 17:42:17 +0200 Subject: [PATCH 15/23] Add menu entry from old branch. --- resources/openlp.desktop | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 resources/openlp.desktop diff --git a/resources/openlp.desktop b/resources/openlp.desktop new file mode 100644 index 000000000..8791c2d8f --- /dev/null +++ b/resources/openlp.desktop @@ -0,0 +1,10 @@ +[Desktop Entry] +Encoding=UTF-8 +Name=OpenLP +GenericName=Church lyrics projection +Exec=openlp +Icon=openlp +StartupNotify=true +Terminal=False +Type=Application +Categories=AudioVideo From a0e56c0d8509dbfad52348406ddcdf2c5027265c Mon Sep 17 00:00:00 2001 From: Michael Gorven Date: Tue, 23 Feb 2010 17:45:06 +0200 Subject: [PATCH 16/23] Include proper vesion file in tarball and fix reading thereof. --- MANIFEST.in | 2 +- setup.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/MANIFEST.in b/MANIFEST.in index 0e94db321..3b76a706c 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -8,4 +8,4 @@ recursive-include resources/images * recursive-include scripts *.py include copyright.txt include LICENSE -include version.txt +include openlp/.version diff --git a/setup.py b/setup.py index 29db13c4b..ccdbd09af 100644 --- a/setup.py +++ b/setup.py @@ -25,7 +25,7 @@ try: finally: b.unlock() except: - ver_file = open(VERSION_FILE, u'w') + ver_file = open(VERSION_FILE, u'r') version = ver_file.read().strip() ver_file.close() From 3b0970d7735942ca2edf2c9d424bc6f07528ef25 Mon Sep 17 00:00:00 2001 From: Michael Gorven Date: Tue, 23 Feb 2010 17:45:26 +0200 Subject: [PATCH 17/23] Make setup.py executable. --- setup.py | 2 ++ 1 file changed, 2 insertions(+) mode change 100644 => 100755 setup.py diff --git a/setup.py b/setup.py old mode 100644 new mode 100755 index ccdbd09af..975de929d --- a/setup.py +++ b/setup.py @@ -1,3 +1,5 @@ +#!/usr/bin/env python + from setuptools import setup, find_packages import sys, os From 03ae1781c4130d17e9cc6e4dfa9631948dbd7899 Mon Sep 17 00:00:00 2001 From: Michael Gorven Date: Tue, 23 Feb 2010 17:45:55 +0200 Subject: [PATCH 18/23] Install menu entry. --- MANIFEST.in | 1 + 1 file changed, 1 insertion(+) diff --git a/MANIFEST.in b/MANIFEST.in index 3b76a706c..73ff3c545 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -6,6 +6,7 @@ recursive-include resources/forms * recursive-include resources/i18n * recursive-include resources/images * recursive-include scripts *.py +include resources/*.desktop include copyright.txt include LICENSE include openlp/.version From 7f8c6b6fdd8b0cc4baf9f33709273e9f58152ef6 Mon Sep 17 00:00:00 2001 From: Michael Gorven Date: Tue, 23 Feb 2010 17:49:39 +0200 Subject: [PATCH 19/23] Install scripts as scripts. --- setup.py | 1 + 1 file changed, 1 insertion(+) diff --git a/setup.py b/setup.py index 975de929d..2429f0d73 100755 --- a/setup.py +++ b/setup.py @@ -45,6 +45,7 @@ OpenLP (previously openlp.org) is free church presentation software, or lyrics p url='http://openlp.org/', license='GNU General Public License', packages=find_packages(exclude=['ez_setup', 'examples', 'tests']), + scripts=['openlp.pyw', 'openlp-1to2-converter.py', 'bible-1to2-converter.py'], include_package_data=True, zip_safe=False, install_requires=[ From 57f685cc60827e6e1e27d8bdf9c20f489aa757b2 Mon Sep 17 00:00:00 2001 From: Michael Gorven Date: Tue, 23 Feb 2010 17:52:38 +0200 Subject: [PATCH 20/23] Specify correct directory. --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 2429f0d73..73cecd97a 100755 --- a/setup.py +++ b/setup.py @@ -45,7 +45,7 @@ OpenLP (previously openlp.org) is free church presentation software, or lyrics p url='http://openlp.org/', license='GNU General Public License', packages=find_packages(exclude=['ez_setup', 'examples', 'tests']), - scripts=['openlp.pyw', 'openlp-1to2-converter.py', 'bible-1to2-converter.py'], + scripts=['openlp.pyw', 'scripts/openlp-1to2-converter.py', 'scripts/bible-1to2-converter.py'], include_package_data=True, zip_safe=False, install_requires=[ From 8e2efcb18391e2289370874b2dcba3a006e1edd4 Mon Sep 17 00:00:00 2001 From: Tim Bentley Date: Tue, 23 Feb 2010 19:19:06 +0000 Subject: [PATCH 21/23] Fix spelllling --- openlp/plugins/presentations/lib/presentationtab.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openlp/plugins/presentations/lib/presentationtab.py b/openlp/plugins/presentations/lib/presentationtab.py index e7d16eb47..0ef7e17d1 100644 --- a/openlp/plugins/presentations/lib/presentationtab.py +++ b/openlp/plugins/presentations/lib/presentationtab.py @@ -88,7 +88,7 @@ class PresentationTab(SettingsTab): self.PresentationLayout.addWidget(self.PresentationRightWidget) def retranslateUi(self): - self.VerseDisplayGroupBox.setTitle(self.trUtf8('Avaliable Controllers')) + self.VerseDisplayGroupBox.setTitle(self.trUtf8('Available Controllers')) for key in self.controllers: controller = self.controllers[key] checkbox = self.PresenterCheckboxes[controller.name] From 3cf8b491eacc8e57bac434b9880c622daa3c37f4 Mon Sep 17 00:00:00 2001 From: Tim Bentley Date: Tue, 23 Feb 2010 19:37:07 +0000 Subject: [PATCH 22/23] Fix field name --- openlp/core/ui/servicemanager.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/openlp/core/ui/servicemanager.py b/openlp/core/ui/servicemanager.py index d0307b860..5ee248a3b 100644 --- a/openlp/core/ui/servicemanager.py +++ b/openlp/core/ui/servicemanager.py @@ -574,7 +574,7 @@ class ServiceManager(QtGui.QWidget): def regenerateServiceItems(self): #force reset of renderer as theme data has changed - self.parent.RenderManager.themesata = None + self.parent.RenderManager.themedata = None if len(self.serviceItems) > 0: tempServiceItems = self.serviceItems self.onNewService() From 6012641a538213823c01b00e59b972a79ef7b5d4 Mon Sep 17 00:00:00 2001 From: Raoul Snyman Date: Wed, 24 Feb 2010 20:37:33 +0200 Subject: [PATCH 23/23] Trying to set a tag on trunk. bzr-revno: 715 --- version.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.txt b/version.txt index f5e7e4e33..34d78cfd2 100644 --- a/version.txt +++ b/version.txt @@ -1 +1 @@ -1.9.0-713 +1.9.0-715