forked from openlp/openlp
Replace phonon code, add framework for transitions
This commit is contained in:
parent
ab5b0ee0d5
commit
23d945a454
|
@ -261,7 +261,7 @@ class Renderer(object):
|
||||||
bbox = self._render_lines_unaligned(footer_lines, True,
|
bbox = self._render_lines_unaligned(footer_lines, True,
|
||||||
(self._rect_footer.left(), self._rect_footer.top()), True)
|
(self._rect_footer.left(), self._rect_footer.top()), True)
|
||||||
log.debug(u'generate_frame_from_lines - Finish')
|
log.debug(u'generate_frame_from_lines - Finish')
|
||||||
return self._frame
|
return {u'main':self._frame, u'trans':None}
|
||||||
|
|
||||||
def _generate_background_frame(self):
|
def _generate_background_frame(self):
|
||||||
"""
|
"""
|
||||||
|
|
|
@ -26,7 +26,7 @@ import logging
|
||||||
import os
|
import os
|
||||||
|
|
||||||
from PyQt4 import QtCore, QtGui
|
from PyQt4 import QtCore, QtGui
|
||||||
#from PyQt4.phonon import Phonon
|
from PyQt4.phonon import Phonon
|
||||||
|
|
||||||
from openlp.core.lib import Receiver
|
from openlp.core.lib import Receiver
|
||||||
|
|
||||||
|
@ -92,13 +92,13 @@ class MainDisplay(DisplayWidget):
|
||||||
self.layout.setSpacing(0)
|
self.layout.setSpacing(0)
|
||||||
self.layout.setMargin(0)
|
self.layout.setMargin(0)
|
||||||
self.layout.setObjectName(u'layout')
|
self.layout.setObjectName(u'layout')
|
||||||
#self.mediaObject = Phonon.MediaObject(self)
|
self.mediaObject = Phonon.MediaObject(self)
|
||||||
#self.video = Phonon.VideoWidget()
|
self.video = Phonon.VideoWidget()
|
||||||
#self.video.setVisible(False)
|
self.video.setVisible(False)
|
||||||
#self.audio = Phonon.AudioOutput(Phonon.VideoCategory, self.mediaObject)
|
self.audio = Phonon.AudioOutput(Phonon.VideoCategory, self.mediaObject)
|
||||||
#Phonon.createPath(self.mediaObject, self.video)
|
Phonon.createPath(self.mediaObject, self.video)
|
||||||
#Phonon.createPath(self.mediaObject, self.audio)
|
Phonon.createPath(self.mediaObject, self.audio)
|
||||||
#self.layout.insertWidget(0, self.video)
|
self.layout.insertWidget(0, self.video)
|
||||||
self.display = QtGui.QLabel(self)
|
self.display = QtGui.QLabel(self)
|
||||||
self.display.setScaledContents(True)
|
self.display.setScaledContents(True)
|
||||||
self.layout.insertWidget(0, self.display)
|
self.layout.insertWidget(0, self.display)
|
||||||
|
@ -116,16 +116,16 @@ class MainDisplay(DisplayWidget):
|
||||||
QtCore.SIGNAL(u'live_slide_hide'), self.hideDisplay)
|
QtCore.SIGNAL(u'live_slide_hide'), self.hideDisplay)
|
||||||
QtCore.QObject.connect(Receiver.get_receiver(),
|
QtCore.QObject.connect(Receiver.get_receiver(),
|
||||||
QtCore.SIGNAL(u'live_slide_show'), self.showDisplay)
|
QtCore.SIGNAL(u'live_slide_show'), self.showDisplay)
|
||||||
# QtCore.QObject.connect(self.mediaObject,
|
QtCore.QObject.connect(self.mediaObject,
|
||||||
# QtCore.SIGNAL(u'finished()'), self.onMediaFinish)
|
QtCore.SIGNAL(u'finished()'), self.onMediaFinish)
|
||||||
# QtCore.QObject.connect(Receiver.get_receiver(),
|
QtCore.QObject.connect(Receiver.get_receiver(),
|
||||||
# QtCore.SIGNAL(u'media_start'), self.onMediaQueue)
|
QtCore.SIGNAL(u'media_start'), self.onMediaQueue)
|
||||||
# QtCore.QObject.connect(Receiver.get_receiver(),
|
QtCore.QObject.connect(Receiver.get_receiver(),
|
||||||
# QtCore.SIGNAL(u'media_play'), self.onMediaPlay)
|
QtCore.SIGNAL(u'media_play'), self.onMediaPlay)
|
||||||
# QtCore.QObject.connect(Receiver.get_receiver(),
|
QtCore.QObject.connect(Receiver.get_receiver(),
|
||||||
# QtCore.SIGNAL(u'media_pause'), self.onMediaPaws)
|
QtCore.SIGNAL(u'media_pause'), self.onMediaPaws)
|
||||||
# QtCore.QObject.connect(Receiver.get_receiver(),
|
QtCore.QObject.connect(Receiver.get_receiver(),
|
||||||
# QtCore.SIGNAL(u'media_stop'), self.onMediaStop)
|
QtCore.SIGNAL(u'media_stop'), self.onMediaStop)
|
||||||
|
|
||||||
def setup(self, screenNumber):
|
def setup(self, screenNumber):
|
||||||
"""
|
"""
|
||||||
|
@ -183,27 +183,25 @@ class MainDisplay(DisplayWidget):
|
||||||
if not self.primary:
|
if not self.primary:
|
||||||
self.setVisible(True)
|
self.setVisible(True)
|
||||||
|
|
||||||
def frameView(self, frame):
|
def frameView(self, frame, transition=False):
|
||||||
"""
|
"""
|
||||||
Called from a slide controller to display a frame
|
Called from a slide controller to display a frame
|
||||||
if the alert is in progress the alert is added on top
|
if the alert is in progress the alert is added on top
|
||||||
``frame``
|
``frame``
|
||||||
Image frame to be rendered
|
Image frame to be rendered
|
||||||
"""
|
"""
|
||||||
self.frame = frame
|
|
||||||
if self.timer_id != 0 :
|
if self.timer_id != 0 :
|
||||||
self.displayAlert()
|
self.displayAlert()
|
||||||
elif not self.displayBlank:
|
elif not self.displayBlank:
|
||||||
# self.setWindowOpacity(0.5)
|
if transition:
|
||||||
# self.show()
|
self.display.setPixmap(QtGui.QPixmap.fromImage(frame[u'main']))
|
||||||
self.display.setPixmap(QtGui.QPixmap.fromImage(frame))
|
else:
|
||||||
|
self.display.setPixmap(QtGui.QPixmap.fromImage(frame))
|
||||||
# QtCore.QTimer.singleShot(500, self.aa )
|
# QtCore.QTimer.singleShot(500, self.aa )
|
||||||
if not self.isVisible():
|
if not self.isVisible():
|
||||||
self.setVisible(True)
|
self.setVisible(True)
|
||||||
self.showFullScreen()
|
self.showFullScreen()
|
||||||
#
|
self.frame = frame
|
||||||
# def aa(self):
|
|
||||||
# self.setWindowOpacity(1)
|
|
||||||
|
|
||||||
def blankDisplay(self, blanked=True):
|
def blankDisplay(self, blanked=True):
|
||||||
if blanked:
|
if blanked:
|
||||||
|
|
|
@ -26,7 +26,7 @@ import time
|
||||||
import os
|
import os
|
||||||
|
|
||||||
from PyQt4 import QtCore, QtGui
|
from PyQt4 import QtCore, QtGui
|
||||||
#from PyQt4.phonon import Phonon
|
from PyQt4.phonon import Phonon
|
||||||
|
|
||||||
from openlp.core.lib import OpenLPToolbar, Receiver, str_to_bool, PluginConfig
|
from openlp.core.lib import OpenLPToolbar, Receiver, str_to_bool, PluginConfig
|
||||||
|
|
||||||
|
@ -197,11 +197,11 @@ class SlideController(QtGui.QWidget):
|
||||||
self.Mediabar.addToolbarButton(
|
self.Mediabar.addToolbarButton(
|
||||||
u'Media Stop', u':/slides/media_playback_stop.png',
|
u'Media Stop', u':/slides/media_playback_stop.png',
|
||||||
self.trUtf8(u'Start playing media'), self.onMediaStop)
|
self.trUtf8(u'Start playing media'), self.onMediaStop)
|
||||||
#self.volumeSlider = Phonon.VolumeSlider()
|
self.volumeSlider = Phonon.VolumeSlider()
|
||||||
#self.volumeSlider.setGeometry(QtCore.QRect(90, 260, 221, 24))
|
self.volumeSlider.setGeometry(QtCore.QRect(90, 260, 221, 24))
|
||||||
#self.volumeSlider.setObjectName(u'volumeSlider')
|
self.volumeSlider.setObjectName(u'volumeSlider')
|
||||||
#self.Mediabar.addToolbarWidget(
|
self.Mediabar.addToolbarWidget(
|
||||||
# u'Audio Volume', self.volumeSlider)
|
u'Audio Volume', self.volumeSlider)
|
||||||
self.ControllerLayout.addWidget(self.Mediabar)
|
self.ControllerLayout.addWidget(self.Mediabar)
|
||||||
# Build the Song Toolbar
|
# Build the Song Toolbar
|
||||||
if isLive:
|
if isLive:
|
||||||
|
@ -236,13 +236,13 @@ class SlideController(QtGui.QWidget):
|
||||||
self.SlideLayout.setSpacing(0)
|
self.SlideLayout.setSpacing(0)
|
||||||
self.SlideLayout.setMargin(0)
|
self.SlideLayout.setMargin(0)
|
||||||
self.SlideLayout.setObjectName(u'SlideLayout')
|
self.SlideLayout.setObjectName(u'SlideLayout')
|
||||||
# self.mediaObject = Phonon.MediaObject(self)
|
self.mediaObject = Phonon.MediaObject(self)
|
||||||
#self.video = Phonon.VideoWidget()
|
self.video = Phonon.VideoWidget()
|
||||||
#self.video.setVisible(False)
|
self.video.setVisible(False)
|
||||||
#self.audio = Phonon.AudioOutput(Phonon.VideoCategory, self.mediaObject)
|
self.audio = Phonon.AudioOutput(Phonon.VideoCategory, self.mediaObject)
|
||||||
#Phonon.createPath(self.mediaObject, self.video)
|
Phonon.createPath(self.mediaObject, self.video)
|
||||||
#Phonon.createPath(self.mediaObject, self.audio)
|
Phonon.createPath(self.mediaObject, self.audio)
|
||||||
#self.SlideLayout.insertWidget(0, self.video)
|
self.SlideLayout.insertWidget(0, self.video)
|
||||||
# Actual preview screen
|
# Actual preview screen
|
||||||
self.SlidePreview = QtGui.QLabel(self)
|
self.SlidePreview = QtGui.QLabel(self)
|
||||||
sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
|
sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Fixed,
|
||||||
|
@ -517,10 +517,10 @@ class SlideController(QtGui.QWidget):
|
||||||
else:
|
else:
|
||||||
before = time.time()
|
before = time.time()
|
||||||
frame = self.serviceItem.get_rendered_frame(row)
|
frame = self.serviceItem.get_rendered_frame(row)
|
||||||
self.SlidePreview.setPixmap(QtGui.QPixmap.fromImage(frame))
|
self.SlidePreview.setPixmap(QtGui.QPixmap.fromImage(frame[u'main']))
|
||||||
log.log(15, u'Slide Rendering took %4s' % (time.time() - before))
|
log.log(15, u'Slide Rendering took %4s' % (time.time() - before))
|
||||||
if self.isLive:
|
if self.isLive:
|
||||||
self.parent.mainDisplay.frameView(frame)
|
self.parent.mainDisplay.frameView(frame, True)
|
||||||
self.selectedRow = row
|
self.selectedRow = row
|
||||||
|
|
||||||
def onSlideChange(self, row):
|
def onSlideChange(self, row):
|
||||||
|
|
|
@ -325,7 +325,7 @@ class EditSongForm(QtGui.QDialog, Ui_EditSongDialog):
|
||||||
self.verse_form.setVerse(tempText, True, verseId)
|
self.verse_form.setVerse(tempText, True, verseId)
|
||||||
self.verse_form.exec_()
|
self.verse_form.exec_()
|
||||||
afterText, verse, subVerse = self.verse_form.getVerse()
|
afterText, verse, subVerse = self.verse_form.getVerse()
|
||||||
data = u'%s:%s' %(verse , subVerse)
|
data = u'%s:%s' %(verse, subVerse)
|
||||||
item.setData(QtCore.Qt.UserRole, QtCore.QVariant(data))
|
item.setData(QtCore.Qt.UserRole, QtCore.QVariant(data))
|
||||||
item.setText(afterText)
|
item.setText(afterText)
|
||||||
#number of lines has change
|
#number of lines has change
|
||||||
|
|
Loading…
Reference in New Issue