Fix merge conflict

This commit is contained in:
Jonathan Corwin 2009-10-24 20:53:49 +01:00
commit 60b0120e56
54 changed files with 105 additions and 85 deletions

View File

@ -24,7 +24,6 @@
############################################################################### ###############################################################################
import os import os
import sys
import re import re
ts_file = u"""<?xml version="1.0" encoding="utf-8"?> ts_file = u"""<?xml version="1.0" encoding="utf-8"?>

View File

@ -28,7 +28,7 @@ import os
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from openlp.core.lib.toolbar import * from openlp.core.lib.toolbar import *
from openlp.core.lib import translate, contextMenuAction, contextMenuSeparator from openlp.core.lib import contextMenuAction, contextMenuSeparator
from serviceitem import ServiceItem from serviceitem import ServiceItem
class MediaManagerItem(QtGui.QWidget): class MediaManagerItem(QtGui.QWidget):
@ -36,7 +36,7 @@ class MediaManagerItem(QtGui.QWidget):
MediaManagerItem is a helper widget for plugins. MediaManagerItem is a helper widget for plugins.
None of the following *need* to be used, feel free to override None of the following *need* to be used, feel free to override
them cmopletely in your plugin's implementation. Alternatively, them completely in your plugin's implementation. Alternatively,
call them from your plugin before or after you've done extra call them from your plugin before or after you've done extra
things that you need to. things that you need to.
@ -118,7 +118,6 @@ class MediaManagerItem(QtGui.QWidget):
self.requiredIcons() self.requiredIcons()
self.setupUi() self.setupUi()
self.retranslateUi() self.retranslateUi()
#self.initialise()
def requiredIcons(self): def requiredIcons(self):
""" """

View File

@ -201,7 +201,7 @@ class Renderer(object):
#if we have more text add up to 10 spaces on the front. #if we have more text add up to 10 spaces on the front.
if len(line) > 0 and self._theme.font_main_indentation > 0: if len(line) > 0 and self._theme.font_main_indentation > 0:
line = u'%s%s' % \ line = u'%s%s' % \
(u' '[:self._theme.font_main_indentation], line) (u' '[:int(self._theme.font_main_indentation)], line)
#Text fits in a line now #Text fits in a line now
for count, line in enumerate(split_lines): for count, line in enumerate(split_lines):
page.append(line) page.append(line)

View File

@ -65,6 +65,7 @@ class RenderManager(object):
self.service_theme = u'' self.service_theme = u''
self.global_style = u'' self.global_style = u''
self.override_background = None self.override_background = None
self.themedata = None
self.save_bg_frame = None self.save_bg_frame = None
self.override_background_changed = False self.override_background_changed = False
@ -130,7 +131,7 @@ class RenderManager(object):
self.theme = self.service_theme self.theme = self.service_theme
else: else:
self.theme = self.global_theme self.theme = self.global_theme
if self.theme != self.renderer.theme_name: if self.theme != self.renderer.theme_name or self.themedata is None:
log.debug(u'theme is now %s', self.theme) log.debug(u'theme is now %s', self.theme)
self.themedata = self.theme_manager.getThemeData(self.theme) self.themedata = self.theme_manager.getThemeData(self.theme)
self.calculate_default( self.calculate_default(

View File

@ -24,7 +24,7 @@
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from openlp.core.lib import translate, buildIcon from openlp.core.lib import buildIcon
class AboutForm(QtGui.QDialog): class AboutForm(QtGui.QDialog):
""" """

View File

@ -24,7 +24,7 @@
import logging import logging
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from openlp.core.lib import translate, buildIcon from openlp.core.lib import buildIcon
class AlertForm(QtGui.QDialog): class AlertForm(QtGui.QDialog):
global log global log

View File

@ -24,7 +24,7 @@
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from openlp.core.lib import SettingsTab, translate from openlp.core.lib import SettingsTab
class AlertsTab(SettingsTab): class AlertsTab(SettingsTab):
""" """

View File

@ -23,7 +23,7 @@
############################################################################### ###############################################################################
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from openlp.core.lib import translate, buildIcon from openlp.core.lib import buildIcon
class Ui_AmendThemeDialog(object): class Ui_AmendThemeDialog(object):
def setupUi(self, AmendThemeDialog): def setupUi(self, AmendThemeDialog):

View File

@ -28,7 +28,7 @@ import os.path
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from openlp.core.lib import ThemeXML, file_to_xml, translate from openlp.core.lib import ThemeXML, file_to_xml
from amendthemedialog import Ui_AmendThemeDialog from amendthemedialog import Ui_AmendThemeDialog
log = logging.getLogger(u'AmendThemeForm') log = logging.getLogger(u'AmendThemeForm')
@ -678,6 +678,6 @@ class AmendThemeForm(QtGui.QDialog, Ui_AmendThemeDialog):
log.debug(u'Page Length area height %s , metrics %s , lines %s' % log.debug(u'Page Length area height %s , metrics %s , lines %s' %
(int(self.FontMainHeightSpinBox.value()), metrics.height(), page_length )) (int(self.FontMainHeightSpinBox.value()), metrics.height(), page_length ))
self.FontMainLinesPageLabel.setText( self.FontMainLinesPageLabel.setText(
self.trUtf8(u'Slide Height is %s rows') % page_length) self.trUtf8((u'Slide Height is %s rows') % page_length))
frame = self.thememanager.generateImage(theme) frame = self.thememanager.generateImage(theme)
self.ThemePreview.setPixmap(QtGui.QPixmap.fromImage(frame)) self.ThemePreview.setPixmap(QtGui.QPixmap.fromImage(frame))

View File

@ -24,7 +24,7 @@
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from openlp.core.lib import SettingsTab, translate, str_to_bool from openlp.core.lib import SettingsTab, str_to_bool
class GeneralTab(SettingsTab): class GeneralTab(SettingsTab):
""" """

View File

@ -30,9 +30,8 @@ from PyQt4 import QtCore, QtGui
from openlp.core.ui import AboutForm, SettingsForm, AlertForm, \ from openlp.core.ui import AboutForm, SettingsForm, AlertForm, \
ServiceManager, ThemeManager, MainDisplay, SlideController, \ ServiceManager, ThemeManager, MainDisplay, SlideController, \
PluginForm, MediaDockManager PluginForm, MediaDockManager
from openlp.core.lib import translate, RenderManager, PluginConfig, \ from openlp.core.lib import RenderManager, PluginConfig, buildIcon, \
OpenLPDockWidget, SettingsManager, PluginManager, Receiver, \ OpenLPDockWidget, SettingsManager, PluginManager, Receiver, str_to_bool
buildIcon, str_to_bool
from openlp.core.utils import check_latest_version from openlp.core.utils import check_latest_version
media_manager_style = """ media_manager_style = """

View File

@ -23,7 +23,6 @@
############################################################################### ###############################################################################
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from openlp.core.lib import translate
class Ui_PluginViewDialog(object): class Ui_PluginViewDialog(object):
def setupUi(self, PluginViewDialog): def setupUi(self, PluginViewDialog):

View File

@ -30,7 +30,7 @@ import zipfile
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from openlp.core.lib import PluginConfig, OpenLPToolbar, ServiceItem, \ from openlp.core.lib import PluginConfig, OpenLPToolbar, ServiceItem, \
translate, ServiceType, contextMenuAction, contextMenuSeparator, Receiver ServiceType, contextMenuAction, contextMenuSeparator, Receiver
class ServiceManagerList(QtGui.QTreeWidget): class ServiceManagerList(QtGui.QTreeWidget):

View File

@ -23,7 +23,6 @@
############################################################################### ###############################################################################
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from openlp.core.lib import translate
class Ui_SettingsDialog(object): class Ui_SettingsDialog(object):
def setupUi(self, SettingsDialog): def setupUi(self, SettingsDialog):

View File

@ -26,7 +26,7 @@ import logging
import time import time
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from openlp.core.lib import OpenLPToolbar, translate, Receiver, ServiceType from openlp.core.lib import OpenLPToolbar, Receiver, ServiceType
label_stylesheet = u""" label_stylesheet = u"""
QTableWidget::item:selected QTableWidget::item:selected
@ -87,10 +87,13 @@ class SlideController(QtGui.QWidget):
self.isLive = isLive self.isLive = isLive
self.parent = parent self.parent = parent
self.image_list = [ self.image_list = [
self.trUtf8(u'Start Loop'), u'Start Loop',
self.trUtf8(u'Stop Loop'), u'Stop Loop',
#self.trUtf8(u'Loop Separator'), u'Loop Separator',
self.trUtf8(u'Image SpinBox') u'Image SpinBox'
]
self.song_list = [
u'Edit Song',
] ]
self.timer_id = 0 self.timer_id = 0
self.commandItem = None self.commandItem = None
@ -140,17 +143,17 @@ class SlideController(QtGui.QWidget):
self.Toolbar.setSizePolicy(sizeToolbarPolicy) self.Toolbar.setSizePolicy(sizeToolbarPolicy)
if self.isLive: if self.isLive:
self.Toolbar.addToolbarButton( self.Toolbar.addToolbarButton(
self.trUtf8(u'First Slide'), u':/slides/slide_first.png', u'First Slide', u':/slides/slide_first.png',
self.trUtf8(u'Move to first'), self.onSlideSelectedFirst) self.trUtf8(u'Move to first'), self.onSlideSelectedFirst)
self.Toolbar.addToolbarButton( self.Toolbar.addToolbarButton(
self.trUtf8(u'Previous Slide'), u':/slides/slide_previous.png', u'Previous Slide', u':/slides/slide_previous.png',
self.trUtf8(u'Move to previous'), self.onSlideSelectedPrevious) self.trUtf8(u'Move to previous'), self.onSlideSelectedPrevious)
self.Toolbar.addToolbarButton( self.Toolbar.addToolbarButton(
self.trUtf8(u'Next Slide'), u':/slides/slide_next.png', u'Next Slide', u':/slides/slide_next.png',
self.trUtf8(u'Move to next'), self.onSlideSelectedNext) self.trUtf8(u'Move to next'), self.onSlideSelectedNext)
if self.isLive: if self.isLive:
self.Toolbar.addToolbarButton( self.Toolbar.addToolbarButton(
self.trUtf8(u'Last Slide'), u':/slides/slide_last.png', u'Last Slide', u':/slides/slide_last.png',
self.trUtf8(u'Move to last'), self.onSlideSelectedLast) self.trUtf8(u'Move to last'), self.onSlideSelectedLast)
if self.isLive: if self.isLive:
self.Toolbar.addToolbarSeparator(u'Close Separator') self.Toolbar.addToolbarSeparator(u'Close Separator')
@ -159,19 +162,23 @@ class SlideController(QtGui.QWidget):
if not self.isLive: if not self.isLive:
self.Toolbar.addToolbarSeparator(u'Close Separator') self.Toolbar.addToolbarSeparator(u'Close Separator')
self.Toolbar.addToolbarButton( self.Toolbar.addToolbarButton(
self.trUtf8(u'Go Live'), u':/system/system_live.png', u'Go Live', u':/system/system_live.png',
self.trUtf8(u'Move to live'), self.onGoLive) self.trUtf8(u'Move to live'), self.onGoLive)
self.Toolbar.addToolbarSeparator(u'Close Separator')
self.Toolbar.addToolbarButton(
u'Edit Song', u':songs/song_edit.png',
self.trUtf8(u'Edit and re-preview Song'), self.onEditSong)
if isLive: if isLive:
self.Toolbar.addToolbarSeparator(u'Loop Separator') self.Toolbar.addToolbarSeparator(u'Loop Separator')
self.Toolbar.addToolbarButton( self.Toolbar.addToolbarButton(
self.trUtf8(u'Start Loop'), u':/media/media_time.png', u'Start Loop', u':/media/media_time.png',
self.trUtf8(u'Start continuous loop'), self.onStartLoop) self.trUtf8(u'Start continuous loop'), self.onStartLoop)
self.Toolbar.addToolbarButton( self.Toolbar.addToolbarButton(
self.trUtf8(u'Stop Loop'), u':/media/media_stop.png', u'Stop Loop', u':/media/media_stop.png',
self.trUtf8(u'Stop continuous loop'), self.onStopLoop) self.trUtf8(u'Stop continuous loop'), self.onStopLoop)
self.DelaySpinBox = QtGui.QSpinBox() self.DelaySpinBox = QtGui.QSpinBox()
self.Toolbar.addToolbarWidget( self.Toolbar.addToolbarWidget(
self.trUtf8(u'Image SpinBox'), self.DelaySpinBox) u'Image SpinBox', self.DelaySpinBox)
self.DelaySpinBox.setSuffix(self.trUtf8(u's')) self.DelaySpinBox.setSuffix(self.trUtf8(u's'))
self.ControllerLayout.addWidget(self.Toolbar) self.ControllerLayout.addWidget(self.Toolbar)
@ -216,6 +223,8 @@ class SlideController(QtGui.QWidget):
Receiver().send_message(u'request_spin_delay') Receiver().send_message(u'request_spin_delay')
if isLive: if isLive:
self.Toolbar.makeWidgetsInvisible(self.image_list) self.Toolbar.makeWidgetsInvisible(self.image_list)
else:
self.Toolbar.makeWidgetsInvisible(self.song_list)
QtCore.QObject.connect(Receiver.get_receiver(), QtCore.QObject.connect(Receiver.get_receiver(),
QtCore.SIGNAL(u'slidecontroller_first'), self.onSlideSelectedFirst) QtCore.SIGNAL(u'slidecontroller_first'), self.onSlideSelectedFirst)
QtCore.QObject.connect(Receiver.get_receiver(), QtCore.QObject.connect(Receiver.get_receiver(),
@ -257,7 +266,10 @@ class SlideController(QtGui.QWidget):
""" """
Allows the Preview toolbar to be customised Allows the Preview toolbar to be customised
""" """
pass if item.name == u'Songs':
self.Toolbar.makeWidgetsVisible(self.song_list)
else:
self.Toolbar.makeWidgetsInvisible(self.song_list)
def addServiceItem(self, item): def addServiceItem(self, item):
""" """
@ -474,6 +486,9 @@ class SlideController(QtGui.QWidget):
if event.timerId() == self.timer_id: if event.timerId() == self.timer_id:
self.onSlideSelectedNext() self.onSlideSelectedNext()
def onEditSong(self):
Receiver().send_message(u'edit_song')
def onGoLive(self): def onGoLive(self):
""" """
If preview copy slide item to live If preview copy slide item to live

View File

@ -23,7 +23,7 @@
############################################################################### ###############################################################################
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from openlp.core.lib import translate, buildIcon from openlp.core.lib import buildIcon
class SplashScreen(object): class SplashScreen(object):
def __init__(self, version): def __init__(self, version):

View File

@ -32,7 +32,7 @@ from PyQt4 import QtCore, QtGui
from openlp.core.ui import AmendThemeForm from openlp.core.ui import AmendThemeForm
from openlp.core.theme import Theme from openlp.core.theme import Theme
from openlp.core.lib import PluginConfig, OpenLPToolbar, ThemeXML, translate, \ from openlp.core.lib import PluginConfig, OpenLPToolbar, ThemeXML, \
str_to_bool, file_to_xml, buildIcon, Receiver, contextMenuAction, \ str_to_bool, file_to_xml, buildIcon, Receiver, contextMenuAction, \
contextMenuSeparator contextMenuSeparator
from openlp.core.utils import ConfigHelper from openlp.core.utils import ConfigHelper
@ -371,7 +371,7 @@ class ThemeManager(QtGui.QWidget):
newtheme.add_font(unicode(theme.FontName), newtheme.add_font(unicode(theme.FontName),
unicode(theme.FontColor.name()), unicode(theme.FontColor.name()),
unicode(theme.FontProportion * 2), u'False') unicode(theme.FontProportion * 3), u'False')
newtheme.add_font(unicode(theme.FontName), newtheme.add_font(unicode(theme.FontName),
unicode(theme.FontColor.name()), unicode(theme.FontColor.name()),
unicode(12), u'False', u'footer') unicode(12), u'False', u'footer')

View File

@ -24,7 +24,7 @@
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from openlp.core.lib import SettingsTab, translate, Receiver from openlp.core.lib import SettingsTab, Receiver
class ThemesTab(SettingsTab): class ThemesTab(SettingsTab):
""" """

View File

@ -27,7 +27,7 @@ import logging
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from openlp.core.lib import Plugin, Receiver, translate, str_to_bool, buildIcon from openlp.core.lib import Plugin, Receiver, str_to_bool, buildIcon
from openlp.plugins.audit.lib import AuditManager from openlp.plugins.audit.lib import AuditManager
from openlp.plugins.audit.forms import AuditDetailForm, AuditDeleteForm from openlp.plugins.audit.forms import AuditDetailForm, AuditDeleteForm
from openlp.plugins.audit.lib.models import AuditItem from openlp.plugins.audit.lib.models import AuditItem

View File

@ -27,8 +27,6 @@ from datetime import date
from PyQt4 import QtGui from PyQt4 import QtGui
from auditdeletedialog import Ui_AuditDeleteDialog from auditdeletedialog import Ui_AuditDeleteDialog
from openlp.core.lib import translate
#from openlp.plugins.audit.lib import AuditManager
class AuditDeleteForm(QtGui.QDialog, Ui_AuditDeleteDialog): class AuditDeleteForm(QtGui.QDialog, Ui_AuditDeleteDialog):
""" """

View File

@ -26,7 +26,7 @@ import logging
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from openlp.core.lib import Plugin, translate, buildIcon from openlp.core.lib import Plugin, buildIcon
from openlp.plugins.bibles.lib import BibleManager, BiblesTab, BibleMediaItem from openlp.plugins.bibles.lib import BibleManager, BiblesTab, BibleMediaItem
class BiblePlugin(Plugin): class BiblePlugin(Plugin):

View File

@ -29,8 +29,7 @@ import os.path
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from bibleimportdialog import Ui_BibleImportDialog from bibleimportdialog import Ui_BibleImportDialog
from openlp.core.lib import Receiver, translate from openlp.core.lib import Receiver
class BibleImportForm(QtGui.QDialog, Ui_BibleImportDialog): class BibleImportForm(QtGui.QDialog, Ui_BibleImportDialog):
global log global log

View File

@ -158,6 +158,11 @@ class BibleDBImpl(BibleCommon):
def get_bible_text(self, bookname, chapter, sverse, everse): def get_bible_text(self, bookname, chapter, sverse, everse):
log.debug(u'get_bible_text %s, %s, %s, %s', bookname, chapter, sverse, log.debug(u'get_bible_text %s, %s, %s, %s', bookname, chapter, sverse,
everse) everse)
#Look up book name or abbreviation
book = self.get_bible_book(bookname)
if book is not None:
bookname = book.name
log.debug(u'bookname corrected to %s' % bookname)
verses = self.session.query(Verse).join(Book).filter( verses = self.session.query(Verse).join(Book).filter(
Book.name == bookname).filter(Verse.chapter == chapter).filter( Book.name == bookname).filter(Verse.chapter == chapter).filter(
Verse.verse>=sverse).filter(Verse.verse<=everse).order_by( Verse.verse>=sverse).filter(Verse.verse<=everse).order_by(

View File

@ -30,7 +30,7 @@ import codecs
from PyQt4 import QtCore from PyQt4 import QtCore
from openlp.core.lib import translate, Receiver from openlp.core.lib import Receiver
class BibleOSISImpl(): class BibleOSISImpl():
""" """

View File

@ -26,7 +26,7 @@ import logging
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from openlp.core.lib import translate, str_to_bool, Receiver from openlp.core.lib import str_to_bool, Receiver
from openlp.core.lib import SettingsTab from openlp.core.lib import SettingsTab
class BiblesTab(SettingsTab): class BiblesTab(SettingsTab):

View File

@ -25,8 +25,6 @@
import logging import logging
import os import os
from openlp.core.lib import translate
from bibleOSISimpl import BibleOSISImpl from bibleOSISimpl import BibleOSISImpl
from bibleCSVimpl import BibleCSVImpl from bibleCSVimpl import BibleCSVImpl
from bibleDBimpl import BibleDBImpl from bibleDBimpl import BibleDBImpl

View File

@ -27,8 +27,8 @@ import time
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from openlp.core.lib import translate, MediaManagerItem, Receiver, \ from openlp.core.lib import MediaManagerItem, Receiver, str_to_bool, \
BaseListWithDnD, str_to_bool BaseListWithDnD
from openlp.plugins.bibles.forms import BibleImportForm from openlp.plugins.bibles.forms import BibleImportForm
from openlp.plugins.bibles.lib.manager import BibleMode from openlp.plugins.bibles.lib.manager import BibleMode

View File

@ -22,7 +22,7 @@
############################################################################### ###############################################################################
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from openlp.core.lib import translate, buildIcon from openlp.core.lib import buildIcon
class Ui_customEditDialog(object): class Ui_customEditDialog(object):
def setupUi(self, customEditDialog): def setupUi(self, customEditDialog):

View File

@ -25,7 +25,7 @@
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from editcustomdialog import Ui_customEditDialog from editcustomdialog import Ui_customEditDialog
from openlp.core.lib import SongXMLBuilder, SongXMLParser, Receiver, translate from openlp.core.lib import SongXMLBuilder, SongXMLParser, Receiver
from openlp.plugins.custom.lib.models import CustomSlide from openlp.plugins.custom.lib.models import CustomSlide
class EditCustomForm(QtGui.QDialog, Ui_customEditDialog): class EditCustomForm(QtGui.QDialog, Ui_customEditDialog):

View File

@ -24,15 +24,15 @@
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from openlp.core.lib import SettingsTab, translate, Receiver from openlp.core.lib import SettingsTab, Receiver
class ImageTab(SettingsTab): class ImageTab(SettingsTab):
""" """
ImageTab is the Image settings tab in the settings dialog. ImageTab is the Image settings tab in the settings dialog.
""" """
def __init__(self): def __init__(self):
#SettingsTab.__init__(self, self.trUtf8(u'Images'), u'Image') #SettingsTab.__init__(self, self.trUtf8(u'Images'), u'Images')
SettingsTab.__init__(self, u'Images', u'Image') SettingsTab.__init__(self, u'Images', u'Images')
def setupUi(self): def setupUi(self):
self.setObjectName(u'ImageTab') self.setObjectName(u'ImageTab')

View File

@ -26,7 +26,7 @@ import logging
import os import os
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from openlp.core.lib import MediaManagerItem, BaseListWithDnD, buildIcon, translate from openlp.core.lib import MediaManagerItem, BaseListWithDnD, buildIcon
# We have to explicitly create separate classes for each plugin # We have to explicitly create separate classes for each plugin
# in order for DnD to the Service manager to work correctly. # in order for DnD to the Service manager to work correctly.

View File

@ -24,7 +24,7 @@
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from openlp.core.lib import SettingsTab, str_to_bool, translate from openlp.core.lib import SettingsTab, str_to_bool
class MediaTab(SettingsTab): class MediaTab(SettingsTab):
""" """

View File

@ -27,7 +27,7 @@ import os
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from openlp.core.lib import MediaManagerItem, translate, BaseListWithDnD from openlp.core.lib import MediaManagerItem, BaseListWithDnD
from openlp.plugins.presentations.lib import MessageListener from openlp.plugins.presentations.lib import MessageListener
# We have to explicitly create separate classes for each plugin # We have to explicitly create separate classes for each plugin

View File

@ -24,7 +24,7 @@
from PyQt4 import QtGui from PyQt4 import QtGui
from openlp.core.lib import SettingsTab, translate from openlp.core.lib import SettingsTab
class PresentationTab(SettingsTab): class PresentationTab(SettingsTab):
""" """

View File

@ -20,7 +20,7 @@ Place, Suite 330, Boston, MA 02111-1307 USA
from PyQt4 import QtGui from PyQt4 import QtGui
from openlp.core.lib import SettingsTab, translate from openlp.core.lib import SettingsTab
class RemoteTab(SettingsTab): class RemoteTab(SettingsTab):
""" """

View File

@ -23,7 +23,6 @@
############################################################################### ###############################################################################
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from openlp.core.lib import translate
class Ui_AuthorsDialog(object): class Ui_AuthorsDialog(object):
def setupUi(self, AuthorsDialog): def setupUi(self, AuthorsDialog):

View File

@ -23,7 +23,7 @@
############################################################################### ###############################################################################
from PyQt4 import QtGui, QtCore from PyQt4 import QtGui, QtCore
from openlp.core.lib import translate
from openlp.plugins.songs.forms.authorsdialog import Ui_AuthorsDialog from openlp.plugins.songs.forms.authorsdialog import Ui_AuthorsDialog
class AuthorsForm(QtGui.QDialog, Ui_AuthorsDialog): class AuthorsForm(QtGui.QDialog, Ui_AuthorsDialog):

View File

@ -24,7 +24,7 @@
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from openlp.core.lib import translate, buildIcon from openlp.core.lib import buildIcon
class Ui_EditSongDialog(object): class Ui_EditSongDialog(object):
def setupUi(self, EditSongDialog): def setupUi(self, EditSongDialog):

View File

@ -26,7 +26,7 @@ import logging
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from openlp.core.lib import SongXMLBuilder, SongXMLParser, Receiver, translate from openlp.core.lib import SongXMLBuilder, SongXMLParser, Receiver
from openlp.plugins.songs.forms import EditVerseForm from openlp.plugins.songs.forms import EditVerseForm
from openlp.plugins.songs.lib.models import Song from openlp.plugins.songs.lib.models import Song
from editsongdialog import Ui_EditSongDialog from editsongdialog import Ui_EditSongDialog
@ -410,6 +410,7 @@ class EditSongForm(QtGui.QDialog, Ui_EditSongDialog):
self.songmanager.save_song(self.song) self.songmanager.save_song(self.song)
if self.title_change: if self.title_change:
Receiver().send_message(u'load_song_list') Receiver().send_message(u'load_song_list')
Receiver().send_message(u'preview_song')
self.close() self.close()
def processLyrics(self): def processLyrics(self):

View File

@ -23,7 +23,6 @@
############################################################################### ###############################################################################
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from openlp.core.lib import translate
class Ui_EditVerseDialog(object): class Ui_EditVerseDialog(object):
def setupUi(self, EditVerseDialog): def setupUi(self, EditVerseDialog):

View File

@ -22,7 +22,8 @@
# Temple Place, Suite 330, Boston, MA 02111-1307 USA # # Temple Place, Suite 330, Boston, MA 02111-1307 USA #
############################################################################### ###############################################################################
from PyQt4 import QtCore, QtGui from PyQt4 import QtGui
from openlp.plugins.songs.forms.openlpexportdialog import Ui_OpenLPExportDialog from openlp.plugins.songs.forms.openlpexportdialog import Ui_OpenLPExportDialog
class OpenLPExportForm(QtGui.QDialog, Ui_OpenLPExportDialog): class OpenLPExportForm(QtGui.QDialog, Ui_OpenLPExportDialog):

View File

@ -22,7 +22,7 @@
# Temple Place, Suite 330, Boston, MA 02111-1307 USA # # Temple Place, Suite 330, Boston, MA 02111-1307 USA #
############################################################################### ###############################################################################
from PyQt4 import QtCore, QtGui from PyQt4 import QtGui
from openlp.plugins.songs.forms.openlpimportdialog import Ui_OpenLPImportDialog from openlp.plugins.songs.forms.openlpimportdialog import Ui_OpenLPImportDialog
class OpenLPImportForm(QtGui.QDialog, Ui_OpenLPImportDialog): class OpenLPImportForm(QtGui.QDialog, Ui_OpenLPImportDialog):
@ -30,4 +30,3 @@ class OpenLPImportForm(QtGui.QDialog, Ui_OpenLPImportDialog):
def __init__(self, parent=None): def __init__(self, parent=None):
QtGui.QDialog.__init__(self, parent) QtGui.QDialog.__init__(self, parent)
self.setupUi(self) self.setupUi(self)

View File

@ -22,7 +22,7 @@
# Temple Place, Suite 330, Boston, MA 02111-1307 USA # # Temple Place, Suite 330, Boston, MA 02111-1307 USA #
############################################################################### ###############################################################################
from PyQt4 import QtCore, QtGui from PyQt4 import QtGui
from openlp.plugins.songs.forms.opensongexportdialog import Ui_OpenSongExportDialog from openlp.plugins.songs.forms.opensongexportdialog import Ui_OpenSongExportDialog
class OpenSongExportForm(QtGui.QDialog, Ui_OpenSongExportDialog): class OpenSongExportForm(QtGui.QDialog, Ui_OpenSongExportDialog):

View File

@ -22,7 +22,7 @@
# Temple Place, Suite 330, Boston, MA 02111-1307 USA # # Temple Place, Suite 330, Boston, MA 02111-1307 USA #
############################################################################### ###############################################################################
from PyQt4 import QtCore, QtGui from PyQt4 import QtGui
from openlp.plugins.songs.forms.opensongimportdialog import Ui_OpenSongImportDialog from openlp.plugins.songs.forms.opensongimportdialog import Ui_OpenSongImportDialog
class OpenSongImportForm(QtGui.QDialog, Ui_OpenSongImportDialog): class OpenSongImportForm(QtGui.QDialog, Ui_OpenSongImportDialog):

View File

@ -23,7 +23,6 @@
############################################################################### ###############################################################################
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from openlp.core.lib import translate
class Ui_SongBookDialog(object): class Ui_SongBookDialog(object):
def setupUi(self, SongBookDialog): def setupUi(self, SongBookDialog):

View File

@ -24,7 +24,6 @@
from PyQt4 import QtGui from PyQt4 import QtGui
from openlp.core.lib import translate
from openlp.plugins.songs.forms.songbookdialog import Ui_SongBookDialog from openlp.plugins.songs.forms.songbookdialog import Ui_SongBookDialog
class SongBookForm(QtGui.QDialog, Ui_SongBookDialog): class SongBookForm(QtGui.QDialog, Ui_SongBookDialog):

View File

@ -24,7 +24,7 @@
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from openlp.core.lib import translate, buildIcon from openlp.core.lib import buildIcon
class Ui_SongMaintenanceDialog(object): class Ui_SongMaintenanceDialog(object):
def setupUi(self, SongMaintenanceDialog): def setupUi(self, SongMaintenanceDialog):

View File

@ -18,7 +18,7 @@ Place, Suite 330, Boston, MA 02111-1307 USA
""" """
from PyQt4 import QtGui, QtCore from PyQt4 import QtGui, QtCore
from openlp.core.lib import translate
from openlp.plugins.songs.lib.classes import Author, Book, Topic from openlp.plugins.songs.lib.classes import Author, Book, Topic
from songmaintenancedialog import Ui_SongMaintenanceDialog from songmaintenancedialog import Ui_SongMaintenanceDialog
from authorsform import AuthorsForm from authorsform import AuthorsForm

View File

@ -23,7 +23,6 @@
############################################################################### ###############################################################################
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from openlp.core.lib import translate
class Ui_TopicsDialog(object): class Ui_TopicsDialog(object):
def setupUi(self, TopicsDialog): def setupUi(self, TopicsDialog):

View File

@ -24,7 +24,6 @@
from PyQt4 import QtGui from PyQt4 import QtGui
from openlp.core.lib import translate
from openlp.plugins.songs.forms.topicsdialog import Ui_TopicsDialog from openlp.plugins.songs.forms.topicsdialog import Ui_TopicsDialog
class TopicsForm(QtGui.QDialog, Ui_TopicsDialog): class TopicsForm(QtGui.QDialog, Ui_TopicsDialog):

View File

@ -26,7 +26,7 @@ import logging
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from openlp.core.lib import MediaManagerItem, translate, SongXMLParser, \ from openlp.core.lib import MediaManagerItem, SongXMLParser, \
BaseListWithDnD, Receiver, str_to_bool BaseListWithDnD, Receiver, str_to_bool
from openlp.plugins.songs.forms import EditSongForm, SongMaintenanceForm from openlp.plugins.songs.forms import EditSongForm, SongMaintenanceForm
@ -55,6 +55,7 @@ class SongMediaItem(MediaManagerItem):
self.edit_song_form = EditSongForm(self.parent.songmanager, self) self.edit_song_form = EditSongForm(self.parent.songmanager, self)
self.song_maintenance_form = SongMaintenanceForm( self.song_maintenance_form = SongMaintenanceForm(
self.parent.songmanager, self) self.parent.songmanager, self)
self.fromPreview = None
def requiredIcons(self): def requiredIcons(self):
MediaManagerItem.requiredIcons(self) MediaManagerItem.requiredIcons(self)
@ -121,6 +122,10 @@ class SongMediaItem(MediaManagerItem):
QtCore.SIGNAL(u'load_song_list'), self.onSearchTextButtonClick) QtCore.SIGNAL(u'load_song_list'), self.onSearchTextButtonClick)
QtCore.QObject.connect(Receiver.get_receiver(), QtCore.QObject.connect(Receiver.get_receiver(),
QtCore.SIGNAL(u'config_updated'), self.configUpdated) QtCore.SIGNAL(u'config_updated'), self.configUpdated)
QtCore.QObject.connect(Receiver.get_receiver(),
QtCore.SIGNAL(u'edit_song'), self.onEventEditSong)
QtCore.QObject.connect(Receiver.get_receiver(),
QtCore.SIGNAL(u'proview_song'), self.onPreviewClick)
def configUpdated(self): def configUpdated(self):
self.searchAsYouType = str_to_bool( self.searchAsYouType = str_to_bool(
@ -168,19 +173,23 @@ class SongMediaItem(MediaManagerItem):
if author_list != u'': if author_list != u'':
author_list = author_list + u', ' author_list = author_list + u', '
author_list = author_list + author.display_name author_list = author_list + author.display_name
song_detail = unicode(u'%s (%s)' % \ song_detail = unicode(self.trUtf8(u'%s (%s)' % \
(unicode(song.title), unicode(author_list))) (unicode(song.title), unicode(author_list))))
song_name = QtGui.QListWidgetItem(song_detail) song_name = QtGui.QListWidgetItem(song_detail)
song_name.setData(QtCore.Qt.UserRole, QtCore.QVariant(song.id)) song_name.setData(QtCore.Qt.UserRole, QtCore.QVariant(song.id))
self.ListView.addItem(song_name) self.ListView.addItem(song_name)
if song.id == self.fromPreview:
self.fromPreview = 0
self.ListView.setCurrentItem(song_name)
self.onPreviewClick()
def displayResultsAuthor(self, searchresults): def displayResultsAuthor(self, searchresults):
log.debug(u'display results Author') log.debug(u'display results Author')
self.ListView.clear() self.ListView.clear()
for author in searchresults: for author in searchresults:
for song in author.songs: for song in author.songs:
song_detail = unicode(u'%s (%s)' % \ song_detail = unicode(self.trUtf8(u'%s (%s)' % \
(unicode(author.display_name), unicode(song.title))) (unicode(author.display_name), unicode(song.title))))
song_name = QtGui.QListWidgetItem(song_detail) song_name = QtGui.QListWidgetItem(song_detail)
song_name.setData(QtCore.Qt.UserRole, QtCore.QVariant(song.id)) song_name.setData(QtCore.Qt.UserRole, QtCore.QVariant(song.id))
self.ListView.addItem(song_name) self.ListView.addItem(song_name)
@ -218,13 +227,19 @@ class SongMediaItem(MediaManagerItem):
def onSongMaintenanceClick(self): def onSongMaintenanceClick(self):
self.song_maintenance_form.exec_() self.song_maintenance_form.exec_()
def onEditClick(self): def onEditClick(self, preview=False):
item = self.ListView.currentItem() item = self.ListView.currentItem()
if item is not None: if item is not None:
item_id = (item.data(QtCore.Qt.UserRole)).toInt()[0] item_id = (item.data(QtCore.Qt.UserRole)).toInt()[0]
self.fromPreview = 0
if preview:
self.fromPreview = item_id
self.edit_song_form.loadSong(item_id) self.edit_song_form.loadSong(item_id)
self.edit_song_form.exec_() self.edit_song_form.exec_()
def onEventEditSong (self):
self.onEditClick(True)
def onDeleteClick(self): def onDeleteClick(self):
item = self.ListView.currentItem() item = self.ListView.currentItem()
if item is not None: if item is not None:

View File

@ -24,7 +24,7 @@
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from openlp.core.lib import SettingsTab, str_to_bool, translate from openlp.core.lib import SettingsTab, str_to_bool
class SongsTab(SettingsTab): class SongsTab(SettingsTab):
""" """

View File

@ -26,7 +26,7 @@ import logging
from PyQt4 import QtCore, QtGui from PyQt4 import QtCore, QtGui
from openlp.core.lib import Plugin, translate, buildIcon from openlp.core.lib import Plugin, buildIcon
from openlp.plugins.songs.lib import SongManager, SongMediaItem, SongsTab from openlp.plugins.songs.lib import SongManager, SongMediaItem, SongsTab
from openlp.plugins.songs.forms import OpenLPImportForm, OpenSongExportForm, \ from openlp.plugins.songs.forms import OpenLPImportForm, OpenSongExportForm, \
OpenSongImportForm, OpenLPExportForm OpenSongImportForm, OpenLPExportForm

View File

@ -28,8 +28,7 @@ import logging
import time import time
import subprocess import subprocess
import codecs import codecs
import sys
from datetime import date
if os.name == u'nt': if os.name == u'nt':
import win32api import win32api
import win32con import win32con