diff --git a/.eric4project/openlp.org 2.0.e4q b/.eric4project/openlp.org 2.0.e4q index ff2147260..3d7ff38a7 100644 --- a/.eric4project/openlp.org 2.0.e4q +++ b/.eric4project/openlp.org 2.0.e4q @@ -1,7 +1,7 @@ - + \ No newline at end of file diff --git a/.eric4project/openlp.org 2.0.e4t b/.eric4project/openlp.org 2.0.e4t index 9c6229f8d..496ff761b 100644 --- a/.eric4project/openlp.org 2.0.e4t +++ b/.eric4project/openlp.org 2.0.e4t @@ -1,7 +1,7 @@ - + TODO: what is the tags for bridge, pre-chorus? diff --git a/openlp.org 2.0.e4p b/openlp.org 2.0.e4p index 671a9f399..1925611ff 100644 --- a/openlp.org 2.0.e4p +++ b/openlp.org 2.0.e4p @@ -1,313 +1,319 @@ - - - - - - - en - Python - Qt4 - - 1.9.0 - Raoul Snyman - raoulsnyman@openlp.org - - openlp.pyw - openlp/controls/__init__.py - openlp/core/test/test_render_theme.py - openlp/core/test/test_render.py - openlp/core/interpolate.py - openlp/core/__init__.py - openlp/core/render.py - openlp/__init__.py - demo.py - openlp/core/settingsmanager.py - openlp/plugins/__init__.py - openlp/core/pluginmanager.py - openlp/core/ui/__init__.py - openlp/core/ui/mainwindow.py - openlp/core/ui/splashscreen.py - openlp/core/ui/alertform.py - openlp/core/ui/about.py - openlp/plugins/songs/songsplugin.py - openlp/plugins/songs/__init__.py - openlp/plugins/songs/forms/__init__.py - openlp/plugins/songs/forms/openlpimportform.py - openlp/plugins/songs/forms/editsongform.py - openlp/plugins/songs/forms/opensongexportform.py - openlp/plugins/songs/forms/openlpexportform.py - openlp/plugins/songs/forms/opensongimportform.py - openlp/core/utils/__init__.py - openlp/core/theme/__init__.py - openlp/core/theme/theme.py - openlp/plugins/songs/test/test_song_opensong.py - openlp/plugins/songs/test/test_song_basic.py - openlp/plugins/songs/test/test_song_verse.py - openlp/plugins/songs/test/test_song_text.py - openlp/core/theme/test/test_theme.py - openlp/core/resources.py - openlp/core/lib/__init__.py - openlp/core/lib/xmlrootclass.py - openlp/core/lib/plugin.py - openlp/core/lib/mediamanageritem.py - openlp/core/lib/event.py - openlp/core/utils/confighelper.py - openlp/core/utils/winregistry.py - openlp/core/utils/registry.py - openlp/core/utils/linregistry.py - setup.py - openlp/core/lib/pluginconfig.py - openlp/core/test/test_plugin_manager.py - openlp/core/test/test_mediamanageritem.py - openlp/core/test/testplugins/testplugin1.py - openlp/core/test/testplugins/testplugin2/__init__.py - openlp/core/test/testplugins/testplugin2/testplugin2.py - openlp/plugins/bibles/bibleplugin.py - openlp/plugins/bibles/forms/bibleimportdialog.py - openlp/plugins/bibles/forms/bibleimportform.py - openlp/plugins/bibles/lib/bibleDBimpl.py - openlp/plugins/bibles/lib/bibleOSISimpl.py - openlp/plugins/bibles/lib/bibleHTTPimpl.py - openlp/plugins/bibles/lib/bibleCSVimpl.py - openlp/plugins/bibles/__init__.py - openlp/plugins/bibles/lib/__init__.py - openlp/plugins/bibles/forms/__init__.py - openlp/plugins/songs/lib/__init__.py - openlp/plugins/songs/lib/songxml.py - openlp/plugins/songs/lib/models.py - openlp/plugins/bibles/test/__init__.py - openlp/plugins/bibles/test/test_bibleManagerAPI.py - openlp/plugins/bibles/test/test_bibleManager.py - openlp/plugins/bibles/test/test_bibleManagerOSIS.py - openlp/plugins/bibles/test/test_bibleManagerCSV.py - openlp/plugins/presentations/lib/pptview.py - openlp/plugins/presentations/lib/impresscom.py - openlp/plugins/presentations/lib/powerpoint.py - openlp/plugins/presentations/lib/pptviewlib/ppttest.py - openlp/plugins/presentations/__init__.py - openlp/plugins/presentations/presentationplugin.py - openlp/plugins/videos/__init__.py - openlp/plugins/videos/videoplugin.py - openlp/plugins/images/__init__.py - openlp/plugins/images/imageplugin.py - openlp/plugins/songs/forms/editsongdialog.py - openlp/core/lib/pluginutils.py - openlpcnv.pyw - openlp/plugins/songs/forms/songbookdialog.py - openlp/plugins/songs/forms/topicsdialog.py - openlp/plugins/songs/forms/authorsdialog.py - openlp/plugins/songs/forms/topicsform.py - openlp/plugins/songs/forms/authorsform.py - openlp/plugins/songs/forms/songbookform.py - openlp/migration/__init__.py - openlp/migration/migratefiles.py - openlp/migration/migratesongs.py - openlp/migration/display.py - openlp/migration/migratebibles.py - openlp/plugins/songs/lib/tables.py - openlp/plugins/songs/lib/classes.py - openlp/plugins/songs/lib/manager.py - openlp/plugins/bibles/lib/classes.py - openlp/plugins/bibles/lib/tables.py - openlp/plugins/bibles/lib/manager.py - openlp/plugins/bibles/lib/common.py - openlp/plugins/songs/lib/meta.py - openlp/core/test/testplugins/deeper/__init__.py - openlp/core/test/testplugins/deeper/toodeep/__init__.py - openlp/core/test/testplugins/deeper/toodeep/plugin3toodeep.py - openlp/core/lib/serviceitem.py - openlp/core/ui/slidecontroller.py - openlp/core/lib/eventreceiver.py - openlp/core/ui/servicemanager.py - openlp/core/lib/toolbar.py - openlp/core/ui/settingsform.py - openlp/core/ui/generaltab.py - openlp/core/ui/themestab.py - openlp/core/ui/alertstab.py - openlp/core/ui/settingsdialog.py - openlp/core/lib/settingstab.py - openlp/plugins/bibles/lib/biblestab.py - openlp/plugins/songs/lib/songstab.py - openlp/plugins/videos/lib/__init__.py - openlp/plugins/videos/lib/videotab.py - openlp/plugins/bibles/lib/biblemediaitem.py - openlp/core/ui/test/test_service_manager.py - openlp/plugins/images/lib/__init__.py - openlp/plugins/images/lib/imageserviceitem.py - openlp/plugins/images/lib/listwithpreviews.py - openlp/plugins/songs/forms/editverseform.py - openlp/plugins/songs/forms/editversedialog.py - openlp/plugins/custom/__init__.py - openlp/plugins/custom/customplugin.py - openlp/plugins/custom/forms/__init__.py - openlp/plugins/custom/forms/editcustomform.py - openlp/plugins/custom/forms/editcustomdialog.py - openlp/plugins/custom/lib/__init__.py - openlp/plugins/custom/lib/customtab.py - openlp/plugins/custom/lib/classes.py - openlp/plugins/custom/lib/tables.py - openlp/plugins/custom/lib/custommediaitem.py - openlp/plugins/custom/lib/meta.py - openlp/plugins/custom/lib/models.py - openlp/plugins/custom/lib/manager.py - openlp/plugins/images/lib/mediaitem.py - - -
resources/forms/openlpexportform.ui
-
resources/forms/opensongexportform.ui
-
resources/forms/about.ui
-
resources/forms/settings.ui
-
resources/forms/themewizard.ui
-
resources/forms/opensongimportform.ui
-
resources/forms/alertform.ui
-
resources/forms/mainwindow.ui
-
resources/forms/songexport.ui
-
resources/forms/openlpimportform.ui
-
resources/forms/splashscreen.ui
-
resources/forms/authorsdialog.ui
-
resources/forms/bibleimportdialog.ui
-
resources/forms/songbookdialog.ui
-
resources/forms/topicsdialog.ui
-
resources/forms/editsongdialog.ui
-
resources/forms/editversedialog.ui
-
resources/forms/editcustomdialog.ui
-
- - - - resources/images/openlp-2.qrc - - - - - copyright.txt - documentation/SongFormat.txt - documentation/pyqt-sql-py2exe.txt - documentation/PluginDevelopersGuide.txt - - openlp.pyw - - None - - - - add - - - - - - - - checkout - - - - - - - - commit - - - - - - - - diff - - - - - - - - export - - - - - - - - global - - - - - - - - history - - - - - - - - log - - - - - - - - remove - - - - - - - - status - - - - - - - - tag - - - - - - - - update - - - - - - - - - - - - standardLayout - - - True - - - - - - - - - - - - - - - + + + + + + + en + Python + Qt4 + + 1.9.0 + Raoul Snyman + raoulsnyman@openlp.org + + openlp.pyw + openlp/controls/__init__.py + openlp/core/test/test_render_theme.py + openlp/core/test/test_render.py + openlp/core/interpolate.py + openlp/core/__init__.py + openlp/core/render.py + openlp/__init__.py + demo.py + openlp/core/settingsmanager.py + openlp/plugins/__init__.py + openlp/core/pluginmanager.py + openlp/core/ui/__init__.py + openlp/core/ui/mainwindow.py + openlp/core/ui/splashscreen.py + openlp/core/ui/alertform.py + openlp/core/ui/about.py + openlp/plugins/songs/songsplugin.py + openlp/plugins/songs/__init__.py + openlp/plugins/songs/forms/__init__.py + openlp/plugins/songs/forms/openlpimportform.py + openlp/plugins/songs/forms/editsongform.py + openlp/plugins/songs/forms/opensongexportform.py + openlp/plugins/songs/forms/openlpexportform.py + openlp/plugins/songs/forms/opensongimportform.py + openlp/core/utils/__init__.py + openlp/core/theme/__init__.py + openlp/core/theme/theme.py + openlp/plugins/songs/test/test_song_opensong.py + openlp/plugins/songs/test/test_song_basic.py + openlp/plugins/songs/test/test_song_verse.py + openlp/plugins/songs/test/test_song_text.py + openlp/core/theme/test/test_theme.py + openlp/core/resources.py + openlp/core/lib/__init__.py + openlp/core/lib/xmlrootclass.py + openlp/core/lib/plugin.py + openlp/core/lib/mediamanageritem.py + openlp/core/lib/event.py + openlp/core/utils/confighelper.py + openlp/core/utils/winregistry.py + openlp/core/utils/registry.py + openlp/core/utils/linregistry.py + setup.py + openlp/core/lib/pluginconfig.py + openlp/core/test/test_plugin_manager.py + openlp/core/test/test_mediamanageritem.py + openlp/core/test/testplugins/testplugin1.py + openlp/core/test/testplugins/testplugin2/__init__.py + openlp/core/test/testplugins/testplugin2/testplugin2.py + openlp/plugins/bibles/bibleplugin.py + openlp/plugins/bibles/forms/bibleimportdialog.py + openlp/plugins/bibles/forms/bibleimportform.py + openlp/plugins/bibles/lib/bibleDBimpl.py + openlp/plugins/bibles/lib/bibleOSISimpl.py + openlp/plugins/bibles/lib/bibleHTTPimpl.py + openlp/plugins/bibles/lib/bibleCSVimpl.py + openlp/plugins/bibles/__init__.py + openlp/plugins/bibles/lib/__init__.py + openlp/plugins/bibles/forms/__init__.py + openlp/plugins/songs/lib/__init__.py + openlp/plugins/songs/lib/songxml.py + openlp/plugins/songs/lib/models.py + openlp/plugins/bibles/test/__init__.py + openlp/plugins/bibles/test/test_bibleManagerAPI.py + openlp/plugins/bibles/test/test_bibleManager.py + openlp/plugins/bibles/test/test_bibleManagerOSIS.py + openlp/plugins/bibles/test/test_bibleManagerCSV.py + openlp/plugins/presentations/lib/pptview.py + openlp/plugins/presentations/lib/impresscom.py + openlp/plugins/presentations/lib/powerpoint.py + openlp/plugins/presentations/lib/pptviewlib/ppttest.py + openlp/plugins/presentations/__init__.py + openlp/plugins/presentations/presentationplugin.py + openlp/plugins/videos/__init__.py + openlp/plugins/videos/videoplugin.py + openlp/plugins/images/__init__.py + openlp/plugins/images/imageplugin.py + openlp/plugins/songs/forms/editsongdialog.py + openlp/core/lib/pluginutils.py + openlpcnv.pyw + openlp/plugins/songs/forms/songbookdialog.py + openlp/plugins/songs/forms/topicsdialog.py + openlp/plugins/songs/forms/authorsdialog.py + openlp/plugins/songs/forms/topicsform.py + openlp/plugins/songs/forms/authorsform.py + openlp/plugins/songs/forms/songbookform.py + openlp/migration/__init__.py + openlp/migration/migratefiles.py + openlp/migration/migratesongs.py + openlp/migration/display.py + openlp/migration/migratebibles.py + openlp/plugins/songs/lib/tables.py + openlp/plugins/songs/lib/classes.py + openlp/plugins/songs/lib/manager.py + openlp/plugins/bibles/lib/classes.py + openlp/plugins/bibles/lib/tables.py + openlp/plugins/bibles/lib/manager.py + openlp/plugins/bibles/lib/common.py + openlp/plugins/songs/lib/meta.py + openlp/core/test/testplugins/deeper/__init__.py + openlp/core/test/testplugins/deeper/toodeep/__init__.py + openlp/core/test/testplugins/deeper/toodeep/plugin3toodeep.py + openlp/core/lib/serviceitem.py + openlp/core/ui/slidecontroller.py + openlp/core/lib/eventreceiver.py + openlp/core/ui/servicemanager.py + openlp/core/lib/toolbar.py + openlp/core/ui/settingsform.py + openlp/core/ui/generaltab.py + openlp/core/ui/themestab.py + openlp/core/ui/alertstab.py + openlp/core/ui/settingsdialog.py + openlp/core/lib/settingstab.py + openlp/plugins/bibles/lib/biblestab.py + openlp/plugins/songs/lib/songstab.py + openlp/plugins/videos/lib/__init__.py + openlp/plugins/videos/lib/videotab.py + openlp/plugins/bibles/lib/biblemediaitem.py + openlp/core/ui/test/test_service_manager.py + openlp/plugins/images/lib/__init__.py + openlp/plugins/images/lib/imageserviceitem.py + openlp/plugins/images/lib/listwithpreviews.py + openlp/plugins/songs/forms/editverseform.py + openlp/plugins/songs/forms/editversedialog.py + openlp/plugins/custom/__init__.py + openlp/plugins/custom/customplugin.py + openlp/plugins/custom/forms/__init__.py + openlp/plugins/custom/forms/editcustomform.py + openlp/plugins/custom/forms/editcustomdialog.py + openlp/plugins/custom/lib/__init__.py + openlp/plugins/custom/lib/customtab.py + openlp/plugins/custom/lib/classes.py + openlp/plugins/custom/lib/tables.py + openlp/plugins/custom/lib/custommediaitem.py + openlp/plugins/custom/lib/meta.py + openlp/plugins/custom/lib/models.py + openlp/plugins/custom/lib/manager.py + openlp/plugins/images/lib/mediaitem.py + openlp/plugins/songs/lib/mediaitem.py + resources/forms/Ui_editsongdialog.py + resources/forms/Ui_editversedialog.py + resources/forms/Ui_settings.py + resources/forms/Ui_authorsdialog.py + resources/forms/Ui_songbookdialog.py + + +
resources/forms/openlpexportform.ui
+
resources/forms/opensongexportform.ui
+
resources/forms/about.ui
+
resources/forms/settings.ui
+
resources/forms/themewizard.ui
+
resources/forms/opensongimportform.ui
+
resources/forms/alertform.ui
+
resources/forms/mainwindow.ui
+
resources/forms/songexport.ui
+
resources/forms/openlpimportform.ui
+
resources/forms/splashscreen.ui
+
resources/forms/authorsdialog.ui
+
resources/forms/bibleimportdialog.ui
+
resources/forms/songbookdialog.ui
+
resources/forms/topicsdialog.ui
+
resources/forms/editsongdialog.ui
+
resources/forms/editversedialog.ui
+
resources/forms/editcustomdialog.ui
+
+ + + + resources/images/openlp-2.qrc + + + + + copyright.txt + documentation/SongFormat.txt + documentation/pyqt-sql-py2exe.txt + documentation/PluginDevelopersGuide.txt + + openlp.pyw + + Subversion + + + + add + + + + + + + + checkout + + + + + + + + commit + + + + + + + + diff + + + + + + + + export + + + + + + + + global + + + + + + + + history + + + + + + + + log + + + + + + + + remove + + + + + + + + status + + + + + + + + tag + + + + + + + + update + + + + + + + + + + + + standardLayout + + + True + + + + + + + + + + + + + + +
\ No newline at end of file diff --git a/openlp.pyw b/openlp.pyw index 7cc174fe8..2040b9c70 100755 --- a/openlp.pyw +++ b/openlp.pyw @@ -38,8 +38,8 @@ class OpenLP(QtGui.QApplication): def run(self): #provide a listener for widgets to reqest a screen update. - QtCore.QObject.connect(Receiver().get_receiver(), - QtCore.SIGNAL('openlpprocessevents'),self.processEvents) + QtCore.QObject.connect(Receiver.get_receiver(), + QtCore.SIGNAL('openlpprocessevents'), self.processEvents) self.setApplicationName('openlp.org') self.setApplicationVersion('1.9.0') diff --git a/openlp/core/lib/eventreceiver.py b/openlp/core/lib/eventreceiver.py index 3029e3ec9..1ddebb3e1 100644 --- a/openlp/core/lib/eventreceiver.py +++ b/openlp/core/lib/eventreceiver.py @@ -25,14 +25,15 @@ class EventReceiver(QObject): This is a private class and should not be used directly but via the Receiver class """ def __init__(self): - QObject.__init__(self) - + QObject.__init__(self) + def send_message(self, event, msg=None): self.emit(SIGNAL(event), msg) - + def received(self, msg=None): print msg - + + class Receiver(): """ Class to allow events to be passed from different parts of the system. @@ -40,19 +41,21 @@ class Receiver(): As there is only one instance of it in the systems the QT signal/slot architecture can send messages across the system Send message - Receiver().send_message("messageid",data) - + Receiver().send_message("messageid",data) + Receive Message - QtCore.QObject.connect(Receiver().get_receiver(),QtCore.SIGNAL("openlprepaint"),<>) - """ - eventreceiver=EventReceiver() + QtCore.QObject.connect(Receiver().get_receiver(),QtCore.SIGNAL("openlprepaint"),<>) + """ + eventreceiver = EventReceiver() + @staticmethod def send_message(event, msg=None): Receiver.eventreceiver.send_message(event, msg) + @staticmethod def receive(): Receiver.eventreceiver.receive() - @staticmethod + + @staticmethod def get_receiver(): return Receiver.eventreceiver - diff --git a/openlp/plugins/songs/lib/mediaitem.py b/openlp/plugins/songs/lib/mediaitem.py index 7861ad420..f52aee184 100644 --- a/openlp/plugins/songs/lib/mediaitem.py +++ b/openlp/plugins/songs/lib/mediaitem.py @@ -111,17 +111,17 @@ class SongMediaItem(MediaManagerItem): self.SongListView.horizontalHeader().setVisible(False) self.SongListView.verticalHeader().setVisible(False) self.SongListView.setGeometry(QtCore.QRect(10, 100, 256, 591)) - self.SongListView.setObjectName('listView') + self.SongListView.setObjectName('SongListView') self.PageLayout.addWidget(self.SongListView) # Signals and slots QtCore.QObject.connect(self.SearchTextButton, - QtCore.SIGNAL("pressed()"), self.onSearchTextButtonClick) + QtCore.SIGNAL('pressed()'), self.onSearchTextButtonClick) QtCore.QObject.connect(self.ClearTextButton, - QtCore.SIGNAL("pressed()"), self.onClearTextButtonClick) + QtCore.SIGNAL('pressed()'), self.onClearTextButtonClick) QtCore.QObject.connect(self.SearchTextEdit, - QtCore.SIGNAL("textChanged(const QString&)"), self.onSearchTextEditChanged) + QtCore.SIGNAL('textChanged(const QString&)'), self.onSearchTextEditChanged) QtCore.QObject.connect(self.SongListView, - QtCore.SIGNAL("itemPressed(QTableWidgetItem * item)"), self.onSongSelected) + QtCore.SIGNAL('itemPressed(QTableWidgetItem * item)'), self.onSongSelected) #define and add the context menu self.SongListView.setContextMenuPolicy(QtCore.Qt.ActionsContextMenu) self.SongListView.addAction(self.contextMenuAction(self.SongListView, @@ -157,15 +157,19 @@ class SongMediaItem(MediaManagerItem): self.SongListView.setRowCount(0) #log.debug("Records returned from search %s", len(searchresults)) for song in searchresults: + row_count = self.SongListView.rowCount() + self.SongListView.setRowCount(row_count + 1) + song_index = QtGui.QTableWidgetItem(str(song.id)) + self.SongListView.setItem(row_count, 0, song_index) + author_list = u'' for author in song.authors: - c = self.SongListView.rowCount() - self.SongListView.setRowCount(c + 1) - song_index = QtGui.QTableWidgetItem(str(song.id)) - self.SongListView.setItem(c , 0, song_index) - song_detail = QtGui.QTableWidgetItem( - u'%s (%s)' % (str(song.title), str(author.display_name))) - self.SongListView.setItem(c , 1, song_detail) - self.SongListView.setRowHeight(c, 20) + if author_list != u'': + author_list = author_list + u', ' + author_list = author_list + author.display_name + song_detail = QtGui.QTableWidgetItem( + u'%s (%s)' % (str(song.title), str(author_list))) + self.SongListView.setItem(row_count, 1, song_detail) + self.SongListView.setRowHeight(row_count, 20) def onClearTextButtonClick(self): """ diff --git a/resources/forms/topicsdialog.ui b/resources/forms/topicsdialog.ui index d09f2db2b..768681e33 100644 --- a/resources/forms/topicsdialog.ui +++ b/resources/forms/topicsdialog.ui @@ -38,10 +38,10 @@ - + - + Qt::Horizontal @@ -54,7 +54,7 @@ - + Delete Author @@ -68,31 +68,31 @@ - + Add Update Author - Add/Update + Save - :/system/system_settings.png:/system/system_settings.png + :/services/service_save.png:/services/service_save.png - + Clear Selection - Clear + New - :/songs/song_edit.png:/songs/song_edit.png + :/services/service_new.png:/services/service_new.png