diff --git a/openlp/core/ui/slidecontroller.py b/openlp/core/ui/slidecontroller.py index 07137e2b7..5679b76e1 100644 --- a/openlp/core/ui/slidecontroller.py +++ b/openlp/core/ui/slidecontroller.py @@ -144,8 +144,10 @@ class SlideController(QtGui.QWidget): self.toolbarList[handle.lower()] = controller def retrieveToolbar(self, handle): - print handle - print self.toolbarList + """ + Find the toolbar and return master if none present + Add extra information back into toolbar class + """ try: toolbar = self.toolbarList[handle.lower()] except: @@ -153,7 +155,6 @@ class SlideController(QtGui.QWidget): toolbar.PreviewListWidget = self.PreviewListWidget toolbar.SlidePreview = self.SlidePreview toolbar.mainDisplay = self.parent.mainDisplay - print toolbar return toolbar def addServiceItem(self, item): @@ -162,6 +163,8 @@ class SlideController(QtGui.QWidget): """ self.BaseToolbar = self.retrieveToolbar(item.shortname) self.ControllerLayout.removeWidget(self.Toolbar) + #remove the old toolbar + self.Toolbar.clear() self.Toolbar = self.BaseToolbar.getToolbar() self.ControllerLayout.addWidget(self.Toolbar) self.BaseToolbar.addServiceItem(item) @@ -170,6 +173,12 @@ class SlideController(QtGui.QWidget): """ helper method to pass item to correct toolbar """ + self.BaseToolbar = self.retrieveToolbar(item.shortname) + self.ControllerLayout.removeWidget(self.Toolbar) + #remove the old toolbar + self.Toolbar.clear() + self.Toolbar = self.BaseToolbar.getToolbar() + self.ControllerLayout.addWidget(self.Toolbar) self.BaseToolbar.addServiceManagerItem(item, slideno) class MasterToolbar(QtCore.QObject): @@ -181,9 +190,11 @@ class MasterToolbar(QtCore.QObject): QtCore.QObject.__init__(self) self.PreviewListWidget = QtGui.QListWidget() self.isLive = isLive - self.defineToolbar() def getToolbar(self): + #define toolbar here as it needs to be redefined each time + #as the clear destroys it. + self.defineToolbar() return self.Toolbar def defineToolbar(self): diff --git a/openlp/plugins/bibles/bibleplugin.py b/openlp/plugins/bibles/bibleplugin.py index 0a1347fae..4dd42b9e9 100644 --- a/openlp/plugins/bibles/bibleplugin.py +++ b/openlp/plugins/bibles/bibleplugin.py @@ -37,7 +37,7 @@ class BiblePlugin(Plugin): self.weight = -9 # Create the plugin icon self.icon = QtGui.QIcon() - self.icon.addPixmap(QtGui.QPixmap(u':/media/media_verse.png'), + self.icon.addPixmap(QtGui.QPixmap(u':/media/media_bible.png'), QtGui.QIcon.Normal, QtGui.QIcon.Off) #Register the bible Manager self.biblemanager = BibleManager(self.config) diff --git a/openlp/plugins/bibles/lib/manager.py b/openlp/plugins/bibles/lib/manager.py index 23f58c013..8c261d32f 100644 --- a/openlp/plugins/bibles/lib/manager.py +++ b/openlp/plugins/bibles/lib/manager.py @@ -245,7 +245,7 @@ class BibleManager(): log.debug(u'get_verse_text : new book') for chapter in range(schapter, echapter+1): search_results = self.bible_http_cache [bible].get_bible_chapter(bible, 0, bookname, chapter) - if search_results.has_verse_list() : + if search_results.has_verselist() : ## We have found a book of the bible lets check to see if it was there. ## By reusing the returned book name we get a correct book. ## For example it is possible to request ac and get Acts back. diff --git a/openlp/plugins/images/imageplugin.py b/openlp/plugins/images/imageplugin.py index e46cb6a2b..8a49b8c74 100644 --- a/openlp/plugins/images/imageplugin.py +++ b/openlp/plugins/images/imageplugin.py @@ -22,7 +22,7 @@ import logging from PyQt4 import QtCore, QtGui from openlp.core.lib import Plugin, Event, EventType -from openlp.plugins.images.lib import ImageMediaItem +from openlp.plugins.images.lib import ImageMediaItem, ImageTab class ImagePlugin(Plugin): global log @@ -40,6 +40,10 @@ class ImagePlugin(Plugin): # passed with drag and drop messages self.dnd_id = u'Image' + def get_settings_tab(self): + self.ImageTab = ImageTab() + return self.ImageTab + def get_media_manager_item(self): # Create the MediaManagerItem object self.media_item = ImageMediaItem(self, self.icon, u'Images') diff --git a/openlp/plugins/images/lib/__init__.py b/openlp/plugins/images/lib/__init__.py index ac20c9f45..8ffdca25f 100644 --- a/openlp/plugins/images/lib/__init__.py +++ b/openlp/plugins/images/lib/__init__.py @@ -19,3 +19,4 @@ Place, Suite 330, Boston, MA 02111-1307 USA """ from mediaitem import ImageMediaItem from imageslidecontroller import ImageToolbar +from imagetab import ImageTab diff --git a/openlp/plugins/images/lib/imageslidecontroller.py b/openlp/plugins/images/lib/imageslidecontroller.py index 007407ac5..68f7da815 100644 --- a/openlp/plugins/images/lib/imageslidecontroller.py +++ b/openlp/plugins/images/lib/imageslidecontroller.py @@ -26,8 +26,9 @@ from openlp.core.ui.slidecontroller import MasterToolbar class ImageToolbar(MasterToolbar): - def __init__(self, isLive): + def __init__(self, parent, isLive): MasterToolbar.__init__(self, isLive) + self.parent = parent self.Toolbar = None self.isLive = isLive self.defineToolbar() @@ -71,7 +72,7 @@ class ImageToolbar(MasterToolbar): self.onStartLoop) self.Toolbar.addToolbarButton(u'Stop Loop', u':/media/media_stop.png', - translate(u'SlideController', u'Start continuous loop'), + translate(u'SlideController', u'Stop continuous loop'), self.onStopLoop) self.Toolbar.setSizePolicy(sizeToolbarPolicy) @@ -79,10 +80,16 @@ class ImageToolbar(MasterToolbar): """ Go to the last slide. """ - print "onStartLoop" + delay = self.parent.parent.ImageTab.loop_delay + self.timer_id = self.startTimer(delay * 1000) def onStopLoop(self): """ Go to the last slide. """ - print "onStopLoop" + self.killTimer(self.timer_id) + + def timerEvent(self, event): + if event.timerId() == self.timer_id: + self.onSlideSelectedNext() + diff --git a/openlp/plugins/images/lib/mediaitem.py b/openlp/plugins/images/lib/mediaitem.py index e0ef07260..c8d40c49e 100644 --- a/openlp/plugins/images/lib/mediaitem.py +++ b/openlp/plugins/images/lib/mediaitem.py @@ -55,7 +55,7 @@ class ImageMediaItem(MediaManagerItem): self.ListViewWithDnD_class = ImageListView MediaManagerItem.__init__(self, parent, icon, title) #create and install our own slide controller toolbar - imageToolbar = ImageToolbar(True) + imageToolbar = ImageToolbar(self, True) parent.live_controller.registerToolbar(self.ConfigSection, imageToolbar) def initialise(self):