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
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 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
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 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