forked from openlp/openlp
SlideController clean up part 2
This commit is contained in:
parent
57f04820f0
commit
7ec0a53d77
@ -28,7 +28,7 @@ from openlp.core.lib import Receiver
|
||||
from openlp.core.resources import *
|
||||
from openlp.core.ui import MainWindow, SplashScreen
|
||||
|
||||
logging.basicConfig(level=logging.INFO,
|
||||
logging.basicConfig(level=logging.DEBUG,
|
||||
format=u'%(asctime)s:%(msecs)3d %(name)-15s %(levelname)-8s %(message)s',
|
||||
datefmt=u'%m-%d %H:%M:%S', filename=u'openlp.log', filemode=u'w')
|
||||
|
||||
@ -52,7 +52,7 @@ class OpenLP(QtGui.QApplication):
|
||||
pass
|
||||
#provide a listener for widgets to reqest a screen update.
|
||||
QtCore.QObject.connect(Receiver.get_receiver(),
|
||||
QtCore.SIGNAL(u'openlpprocessevents'), self.processEvents)
|
||||
QtCore.SIGNAL(u'process_events'), self.processEvents)
|
||||
self.setApplicationName(u'openlp.org')
|
||||
self.setApplicationVersion(u'1.9.0')
|
||||
self.splash = SplashScreen(self.applicationVersion())
|
||||
|
@ -33,8 +33,8 @@ class EventReceiver(QtCore.QObject):
|
||||
print "send_message ", event , msg
|
||||
self.emit(QtCore.SIGNAL(event), msg)
|
||||
|
||||
def received(self, msg=None):
|
||||
print "received ", msg
|
||||
# def received(self, msg=None):
|
||||
# print "received ", msg
|
||||
|
||||
|
||||
class Receiver():
|
||||
@ -56,9 +56,9 @@ class Receiver():
|
||||
def send_message(event, msg=None):
|
||||
Receiver.eventreceiver.send_message(event, msg)
|
||||
|
||||
@staticmethod
|
||||
def receive():
|
||||
Receiver.eventreceiver.receive()
|
||||
# @staticmethod
|
||||
# def receive():
|
||||
# Receiver.eventreceiver.receive()
|
||||
|
||||
@staticmethod
|
||||
def get_receiver():
|
||||
|
@ -21,7 +21,7 @@ import logging
|
||||
from PyQt4 import QtCore, QtGui
|
||||
|
||||
from time import sleep
|
||||
from openlp.core.lib import translate, EventManager, Event, EventType
|
||||
from openlp.core.lib import translate, EventManager, Event, EventType, Receiver
|
||||
|
||||
class MainDisplay(QtGui.QWidget):
|
||||
"""
|
||||
@ -60,6 +60,8 @@ class MainDisplay(QtGui.QWidget):
|
||||
self.timer_id = 0
|
||||
# Register the main form as an event consumer.
|
||||
self.parent.EventManager.register(self)
|
||||
QtCore.QObject.connect(Receiver.get_receiver(),
|
||||
QtCore.SIGNAL(u'live_slide_blank'), self.blankDisplay)
|
||||
|
||||
def handle_event(self, event):
|
||||
"""
|
||||
|
@ -66,6 +66,9 @@ class SlideController(QtGui.QWidget):
|
||||
self.toolbarList = {}
|
||||
QtGui.QWidget.__init__(self, parent)
|
||||
self.isLive = isLive
|
||||
self.prefix = u'preview_'
|
||||
if isLive:
|
||||
self.prefix = u'live_'
|
||||
self.parent = parent
|
||||
self.Panel = QtGui.QWidget(parent.ControlSplitter)
|
||||
self.Splitter = QtGui.QSplitter(self.Panel)
|
||||
@ -139,18 +142,13 @@ class SlideController(QtGui.QWidget):
|
||||
QtCore.SIGNAL(u'activated(QModelIndex)'), self.onSlideSelected)
|
||||
# Window Event Handlers
|
||||
QtCore.QObject.connect(Receiver.get_receiver(),
|
||||
QtCore.SIGNAL(u'slide_first'), self.onSlideSelectedFirst)
|
||||
QtCore.SIGNAL(u'%sslide_first'% self.prefix), self.onSlideSelectedFirst)
|
||||
QtCore.QObject.connect(Receiver.get_receiver(),
|
||||
QtCore.SIGNAL(u'slide_previous'), self.onSlideSelectedPrevious)
|
||||
QtCore.SIGNAL(u'%sslide_previous'% self.prefix), self.onSlideSelectedPrevious)
|
||||
QtCore.QObject.connect(Receiver.get_receiver(),
|
||||
QtCore.SIGNAL(u'slide_next'), self.onSlideSelectedNext)
|
||||
QtCore.SIGNAL(u'%sslide_next'% self.prefix), self.onSlideSelectedNext)
|
||||
QtCore.QObject.connect(Receiver.get_receiver(),
|
||||
QtCore.SIGNAL(u'slide_last'), self.onSlideSelectedLast)
|
||||
|
||||
# Add Late Arrivals
|
||||
# self.BaseToolbar.PreviewListWidget = self.PreviewListWidget
|
||||
# self.BaseToolbar.SlidePreview = self.SlidePreview
|
||||
# self.BaseToolbar.mainDisplay = self.parent.mainDisplay
|
||||
QtCore.SIGNAL(u'%sslide_last'% self.prefix), self.onSlideSelectedLast)
|
||||
|
||||
def registerToolbar(self, handle,controller):
|
||||
"""
|
||||
@ -175,9 +173,6 @@ class SlideController(QtGui.QWidget):
|
||||
toolbar = self.toolbarList[handle.lower()]
|
||||
except:
|
||||
toolbar = self.toolbarList[u'master']
|
||||
# toolbar.PreviewListWidget = self.PreviewListWidget
|
||||
# toolbar.SlidePreview = self.SlidePreview
|
||||
# toolbar.mainDisplay = self.parent.mainDisplay
|
||||
return toolbar
|
||||
|
||||
def addServiceItem(self, item):
|
||||
@ -243,12 +238,6 @@ class SlideController(QtGui.QWidget):
|
||||
self.PreviewListWidget.setFocus()
|
||||
|
||||
#Screen event methods
|
||||
def onBlankScreen(self):
|
||||
"""
|
||||
Blank the screen.
|
||||
"""
|
||||
self.mainDisplay.blankDisplay()
|
||||
|
||||
def onSlideSelected(self):
|
||||
"""
|
||||
Generate the preview when you click on a slide.
|
||||
@ -328,11 +317,19 @@ class MasterToolbar(QtCore.QObject):
|
||||
QtCore.QObject.__init__(self)
|
||||
self.PreviewListWidget = QtGui.QListWidget()
|
||||
self.isLive = isLive
|
||||
self.prefix = u'preview_'
|
||||
if isLive:
|
||||
self.prefix = u'live_'
|
||||
|
||||
def getToolbar(self):
|
||||
#define toolbar here as it needs to be redefined each time
|
||||
#as the clear destroys it.
|
||||
self.defineToolbar()
|
||||
self.defineZone1()
|
||||
self.defineZone2()
|
||||
self.defineZone3()
|
||||
self.defineZone4()
|
||||
self.defineZone5()
|
||||
return self.Toolbar
|
||||
|
||||
def defineToolbar(self):
|
||||
@ -346,6 +343,11 @@ class MasterToolbar(QtCore.QObject):
|
||||
self.Toolbar.sizePolicy().hasHeightForWidth())
|
||||
self.Toolbar.setSizePolicy(sizeToolbarPolicy)
|
||||
|
||||
def defineZone1(self):
|
||||
#Dummy Zone
|
||||
pass
|
||||
|
||||
def defineZone2(self):
|
||||
if self.isLive:
|
||||
self.Toolbar.addToolbarButton(u'First Slide',
|
||||
u':/slides/slide_first.png',
|
||||
@ -364,19 +366,30 @@ class MasterToolbar(QtCore.QObject):
|
||||
u':/slides/slide_last.png',
|
||||
translate(u'SlideController', u'Move to last'),
|
||||
self.onSlideLast)
|
||||
|
||||
def defineZone3(self):
|
||||
#Dummy Zone
|
||||
pass
|
||||
|
||||
def defineZone4(self):
|
||||
if self.isLive:
|
||||
self.Toolbar.addSeparator()
|
||||
self.Toolbar.addToolbarButton(u'Close Screen',
|
||||
u':/slides/slide_close.png',
|
||||
translate(u'SlideController', u'Close Screen'),
|
||||
self.onSlideBlank)
|
||||
|
||||
def defineZone5(self):
|
||||
#Dummy Zone
|
||||
pass
|
||||
|
||||
def onSlideFirst(self):
|
||||
Receiver().send_message(u'slide_first')
|
||||
Receiver().send_message(u'%sslide_first'% self.prefix)
|
||||
def onSlidePrevious(self):
|
||||
Receiver().send_message(u'slide_previous')
|
||||
Receiver().send_message(u'%sslide_previous'% self.prefix)
|
||||
def onSlideNext(self):
|
||||
Receiver().send_message(u'slide_next')
|
||||
Receiver().send_message(u'%sslide_next'% self.prefix)
|
||||
def onSlideLast(self):
|
||||
Receiver().send_message(u'slide_last')
|
||||
Receiver().send_message(u'%sslide_last' % self.prefix)
|
||||
def onSlideBlank(self):
|
||||
Receiver().send_message(u'slide_blank')
|
||||
Receiver().send_message(u'%sslide_blank' % self.prefix)
|
||||
|
@ -60,7 +60,7 @@ class BibleCSVImpl(BibleCommon):
|
||||
count += 1
|
||||
#Flush the screen events
|
||||
if count % 3 == 0:
|
||||
Receiver().send_message(u'openlpprocessevents')
|
||||
Receiver().send_message(u'process_events')
|
||||
count = 0
|
||||
|
||||
count = 0
|
||||
@ -83,5 +83,5 @@ class BibleCSVImpl(BibleCommon):
|
||||
count += 1
|
||||
#Every x verses repaint the screen
|
||||
if count % 3 == 0:
|
||||
Receiver().send_message(u'openlpprocessevents')
|
||||
Receiver().send_message(u'process_events')
|
||||
count = 0
|
||||
|
@ -149,13 +149,13 @@ class BibleOSISImpl():
|
||||
self.abbrevOfBible[p[0]], testament)
|
||||
dialogobject.incrementProgressBar(
|
||||
self.booksOfBible[p[0]])
|
||||
Receiver().send_message(u'openlpprocessevents')
|
||||
Receiver().send_message(u'process_events')
|
||||
count = 0
|
||||
self.bibledb.add_verse(book.id, p[1], p[2], text)
|
||||
count += 1
|
||||
#Every 3 verses repaint the screen
|
||||
if count % 3 == 0:
|
||||
Receiver().send_message(u'openlpprocessevents')
|
||||
Receiver().send_message(u'process_events')
|
||||
count = 0
|
||||
|
||||
def remove_block(self, start_tag, end_tag, text):
|
||||
|
@ -252,7 +252,7 @@ class BibleMediaItem(MediaManagerItem):
|
||||
|
||||
def setQuickMsg2(self, text):
|
||||
self.QuickMsg2.setText(translate(u'BibleMediaItem', unicode(text)))
|
||||
Receiver().send_message(u'openlpprocessevents')
|
||||
Receiver().send_message(u'process_events')
|
||||
#minor delay to get the events processed
|
||||
time.sleep(0.5)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user