renamed mediaObject, fixed songVerseMenu

This commit is contained in:
Andreas Preikschat 2013-03-06 23:42:52 +01:00
parent 86efc5629c
commit c403e78684
5 changed files with 52 additions and 52 deletions

View File

@ -52,7 +52,7 @@ class FormattingTagForm(QtGui.QDialog, Ui_FormattingTagDialog):
self.new_push_button.clicked.connect(self.on_new_clicked) self.new_push_button.clicked.connect(self.on_new_clicked)
self.save_push_button.clicked.connect(self.on_saved_clicked) self.save_push_button.clicked.connect(self.on_saved_clicked)
self.delete_push_button.clicked.connect(self.on_delete_clicked) self.delete_push_button.clicked.connect(self.on_delete_clicked)
self.button_boxrejected.connect(self.close) self.button_box.rejected.connect(self.close)
self.description_line_edit.textEdited.connect(self.on_text_edited) self.description_line_edit.textEdited.connect(self.on_text_edited)
self.tag_line_edit.textEdited.connect(self.on_text_edited) self.tag_line_edit.textEdited.connect(self.on_text_edited)
self.start_tag_line_edit.textEdited.connect(self.on_text_edited) self.start_tag_line_edit.textEdited.connect(self.on_text_edited)

View File

@ -132,26 +132,26 @@ class MainDisplay(Display):
self.retranslateUi() self.retranslateUi()
self.media_object = None self.media_object = None
if live: if live:
self.audioPlayer = AudioPlayer(self) self.audio_player = AudioPlayer(self)
else: else:
self.audioPlayer = None self.audio_player = None
self.firstTime = True self.first_time = True
self.webLoaded = True self.web_loaded = True
self.setStyleSheet(u'border: 0px; margin: 0px; padding: 0px;') self.setStyleSheet(u'border: 0px; margin: 0px; padding: 0px;')
windowFlags = QtCore.Qt.FramelessWindowHint | QtCore.Qt.Tool | QtCore.Qt.WindowStaysOnTopHint window_flags = QtCore.Qt.FramelessWindowHint | QtCore.Qt.Tool | QtCore.Qt.WindowStaysOnTopHint
if Settings().value(u'advanced/x11 bypass wm'): if Settings().value(u'advanced/x11 bypass wm'):
windowFlags |= QtCore.Qt.X11BypassWindowManagerHint window_flags |= QtCore.Qt.X11BypassWindowManagerHint
# TODO: The following combination of windowFlags works correctly # TODO: The following combination of window_flags works correctly
# on Mac OS X. For next OpenLP version we should test it on other # on Mac OS X. For next OpenLP version we should test it on other
# platforms. For OpenLP 2.0 keep it only for OS X to not cause any # platforms. For OpenLP 2.0 keep it only for OS X to not cause any
# regressions on other platforms. # regressions on other platforms.
if sys.platform == 'darwin': if sys.platform == 'darwin':
windowFlags = QtCore.Qt.FramelessWindowHint | QtCore.Qt.Window window_flags = QtCore.Qt.FramelessWindowHint | QtCore.Qt.Window
# For primary screen ensure it stays above the OS X dock # For primary screen ensure it stays above the OS X dock
# and menu bar # and menu bar
if self.screens.current[u'primary']: if self.screens.current[u'primary']:
self.setWindowState(QtCore.Qt.WindowFullScreen) self.setWindowState(QtCore.Qt.WindowFullScreen)
self.setWindowFlags(windowFlags) self.setWindowFlags(window_flags)
self.setAttribute(QtCore.Qt.WA_DeleteOnClose) self.setAttribute(QtCore.Qt.WA_DeleteOnClose)
self.set_transparency(False) self.set_transparency(False)
if self.is_live: if self.is_live:
@ -209,19 +209,19 @@ class MainDisplay(Display):
background_color = QtCore.Qt.white background_color = QtCore.Qt.white
image_file = Settings().value(u'advanced/default image') image_file = Settings().value(u'advanced/default image')
splash_image = QtGui.QImage(image_file) splash_image = QtGui.QImage(image_file)
self.initialFrame = QtGui.QImage( self.initial_fame = QtGui.QImage(
self.screen[u'size'].width(), self.screen[u'size'].width(),
self.screen[u'size'].height(), self.screen[u'size'].height(),
QtGui.QImage.Format_ARGB32_Premultiplied) QtGui.QImage.Format_ARGB32_Premultiplied)
painter_image = QtGui.QPainter() painter_image = QtGui.QPainter()
painter_image.begin(self.initialFrame) painter_image.begin(self.initial_fame)
painter_image.fillRect(self.initialFrame.rect(), background_color) painter_image.fillRect(self.initial_fame.rect(), background_color)
painter_image.drawImage( painter_image.drawImage(
(self.screen[u'size'].width() - splash_image.width()) / 2, (self.screen[u'size'].width() - splash_image.width()) / 2,
(self.screen[u'size'].height() - splash_image.height()) / 2, (self.screen[u'size'].height() - splash_image.height()) / 2,
splash_image) splash_image)
service_item = ServiceItem() service_item = ServiceItem()
service_item.bg_image_bytes = image_to_byte(self.initialFrame) service_item.bg_image_bytes = image_to_byte(self.initial_fame)
self.web_view.setHtml(build_html(service_item, self.screen, self.is_live, None, self.web_view.setHtml(build_html(service_item, self.screen, self.is_live, None,
plugins=self.plugin_manager.plugins)) plugins=self.plugin_manager.plugins))
self.__hideMouse() self.__hideMouse()
@ -239,7 +239,7 @@ class MainDisplay(Display):
""" """
log.debug(u'text to display') log.debug(u'text to display')
# Wait for the webview to update before displaying text. # Wait for the webview to update before displaying text.
while not self.webLoaded: while not self.web_loaded:
self.application.process_events() self.application.process_events()
self.setGeometry(self.screen[u'size']) self.setGeometry(self.screen[u'size'])
if animate: if animate:
@ -355,7 +355,7 @@ class MainDisplay(Display):
self.application.process_events() self.application.process_events()
# Wait for the webview to update before getting the preview. # Wait for the webview to update before getting the preview.
# Important otherwise first preview will miss the background ! # Important otherwise first preview will miss the background !
while not self.webLoaded: while not self.web_loaded:
self.application.process_events() self.application.process_events()
# if was hidden keep it hidden # if was hidden keep it hidden
if self.is_live: if self.is_live:
@ -379,8 +379,8 @@ class MainDisplay(Display):
HTML to the display HTML to the display
""" """
log.debug(u'build_html') log.debug(u'build_html')
self.webLoaded = False self.web_loaded = False
self.initialFrame = None self.initial_fame = None
self.service_item = service_item self.service_item = service_item
background = None background = None
# We have an image override so keep the image till the theme changes. # We have an image override so keep the image till the theme changes.
@ -442,7 +442,7 @@ class MainDisplay(Display):
if mode == HideMode.Screen: if mode == HideMode.Screen:
self.frame.evaluateJavaScript(u'show_blank("desktop");') self.frame.evaluateJavaScript(u'show_blank("desktop");')
self.setVisible(False) self.setVisible(False)
elif mode == HideMode.Blank or self.initialFrame: elif mode == HideMode.Blank or self.initial_fame:
self.frame.evaluateJavaScript(u'show_blank("black");') self.frame.evaluateJavaScript(u'show_blank("black");')
else: else:
self.frame.evaluateJavaScript(u'show_blank("theme");') self.frame.evaluateJavaScript(u'show_blank("theme");')

View File

@ -128,11 +128,11 @@ class PhononPlayer(MediaPlayer):
""" """
display.phononWidget = Phonon.VideoWidget(display) display.phononWidget = Phonon.VideoWidget(display)
display.phononWidget.resize(display.size()) display.phononWidget.resize(display.size())
display.mediaObject = Phonon.MediaObject(display) display.media_object = Phonon.MediaObject(display)
Phonon.createPath(display.mediaObject, display.phononWidget) Phonon.createPath(display.media_object, display.phononWidget)
if display.hasAudio: if display.hasAudio:
display.audio = Phonon.AudioOutput(Phonon.VideoCategory, display.mediaObject) display.audio = Phonon.AudioOutput(Phonon.VideoCategory, display.media_object)
Phonon.createPath(display.mediaObject, display.audio) Phonon.createPath(display.media_object, display.audio)
display.phononWidget.raise_() display.phononWidget.raise_()
display.phononWidget.hide() display.phononWidget.hide()
self.hasOwnWidget = True self.hasOwnWidget = True
@ -151,7 +151,7 @@ class PhononPlayer(MediaPlayer):
controller = display.controller controller = display.controller
volume = controller.media_info.volume volume = controller.media_info.volume
path = controller.media_info.file_info.absoluteFilePath() path = controller.media_info.file_info.absoluteFilePath()
display.mediaObject.setCurrentSource(Phonon.MediaSource(path)) display.media_object.setCurrentSource(Phonon.MediaSource(path))
if not self.media_state_wait(display, Phonon.StoppedState): if not self.media_state_wait(display, Phonon.StoppedState):
return False return False
self.volume(display, volume) self.volume(display, volume)
@ -163,9 +163,9 @@ class PhononPlayer(MediaPlayer):
Wait no longer than 5 seconds. Wait no longer than 5 seconds.
""" """
start = datetime.now() start = datetime.now()
current_state = display.mediaObject.state() current_state = display.media_object.state()
while current_state != mediaState: while current_state != mediaState:
current_state = display.mediaObject.state() current_state = display.media_object.state()
if current_state == Phonon.ErrorState: if current_state == Phonon.ErrorState:
return False return False
self.application.process_events() self.application.process_events()
@ -185,16 +185,16 @@ class PhononPlayer(MediaPlayer):
""" """
controller = display.controller controller = display.controller
start_time = 0 start_time = 0
if display.mediaObject.state() != Phonon.PausedState and \ if display.media_object.state() != Phonon.PausedState and \
controller.media_info.start_time > 0: controller.media_info.start_time > 0:
start_time = controller.media_info.start_time start_time = controller.media_info.start_time
display.mediaObject.play() display.media_object.play()
if not self.media_state_wait(display, Phonon.PlayingState): if not self.media_state_wait(display, Phonon.PlayingState):
return False return False
if start_time > 0: if start_time > 0:
self.seek(display, controller.media_info.start_time * 1000) self.seek(display, controller.media_info.start_time * 1000)
self.volume(display, controller.media_info.volume) self.volume(display, controller.media_info.volume)
controller.media_info.length = int(display.mediaObject.totalTime() / 1000) controller.media_info.length = int(display.media_object.totalTime() / 1000)
controller.seekSlider.setMaximum(controller.media_info.length * 1000) controller.seekSlider.setMaximum(controller.media_info.length * 1000)
self.state = MediaState.Playing self.state = MediaState.Playing
display.phononWidget.raise_() display.phononWidget.raise_()
@ -204,7 +204,7 @@ class PhononPlayer(MediaPlayer):
""" """
Pause the current media item Pause the current media item
""" """
display.mediaObject.pause() display.media_object.pause()
if self.media_state_wait(display, Phonon.PausedState): if self.media_state_wait(display, Phonon.PausedState):
self.state = MediaState.Paused self.state = MediaState.Paused
@ -212,7 +212,7 @@ class PhononPlayer(MediaPlayer):
""" """
Stop the current media item Stop the current media item
""" """
display.mediaObject.stop() display.media_object.stop()
self.set_visible(display, False) self.set_visible(display, False)
self.state = MediaState.Stopped self.state = MediaState.Stopped
@ -229,14 +229,14 @@ class PhononPlayer(MediaPlayer):
""" """
Go to a particular point in the current media item Go to a particular point in the current media item
""" """
display.mediaObject.seek(seekVal) display.media_object.seek(seekVal)
def reset(self, display): def reset(self, display):
""" """
Reset the media player Reset the media player
""" """
display.mediaObject.stop() display.media_object.stop()
display.mediaObject.clearQueue() display.media_object.clearQueue()
self.set_visible(display, False) self.set_visible(display, False)
display.phononWidget.setVisible(False) display.phononWidget.setVisible(False)
self.state = MediaState.Off self.state = MediaState.Off
@ -252,16 +252,16 @@ class PhononPlayer(MediaPlayer):
""" """
Update the UI Update the UI
""" """
if display.mediaObject.state() == Phonon.PausedState and self.state != MediaState.Paused: if display.media_object.state() == Phonon.PausedState and self.state != MediaState.Paused:
self.stop(display) self.stop(display)
controller = display.controller controller = display.controller
if controller.media_info.end_time > 0: if controller.media_info.end_time > 0:
if display.mediaObject.currentTime() > controller.media_info.end_time * 1000: if display.media_object.currentTime() > controller.media_info.end_time * 1000:
self.stop(display) self.stop(display)
self.set_visible(display, False) self.set_visible(display, False)
if not controller.seekSlider.isSliderDown(): if not controller.seekSlider.isSliderDown():
controller.seekSlider.blockSignals(True) controller.seekSlider.blockSignals(True)
controller.seekSlider.setSliderPosition(display.mediaObject.currentTime()) controller.seekSlider.setSliderPosition(display.media_object.currentTime())
controller.seekSlider.blockSignals(False) controller.seekSlider.blockSignals(False)
def get_media_display_css(self): def get_media_display_css(self):

View File

@ -293,7 +293,7 @@ class SlideController(DisplayController):
self.audio_time_label.setObjectName(u'audio_time_label') self.audio_time_label.setObjectName(u'audio_time_label')
self.toolbar.addToolbarWidget(self.audio_time_label) self.toolbar.addToolbarWidget(self.audio_time_label)
self.toolbar.setWidgetVisible(self.audio_list, False) self.toolbar.setWidgetVisible(self.audio_list, False)
self.toolbar.setWidgetVisible([u'songMenu'], False) self.toolbar.setWidgetVisible([u'song_menu'], False)
# Screen preview area # Screen preview area
self.preview_frame = QtGui.QFrame(self.splitter) self.preview_frame = QtGui.QFrame(self.splitter)
self.preview_frame.setGeometry(QtCore.QRect(0, 0, 300, 300 * self.ratio)) self.preview_frame.setGeometry(QtCore.QRect(0, 0, 300, 300 * self.ratio))
@ -524,7 +524,7 @@ class SlideController(DisplayController):
self.display.setup() self.display.setup()
if self.is_live: if self.is_live:
self.__addActionsToWidget(self.display) self.__addActionsToWidget(self.display)
self.display.audioPlayer.connectSlot(QtCore.SIGNAL(u'tick(qint64)'), self.on_audio_time_remaining) self.display.audio_player.connectSlot(QtCore.SIGNAL(u'tick(qint64)'), self.on_audio_time_remaining)
# The SlidePreview's ratio. # The SlidePreview's ratio.
try: try:
self.ratio = float(self.screens.current[u'size'].width()) / float(self.screens.current[u'size'].height()) self.ratio = float(self.screens.current[u'size'].width()) / float(self.screens.current[u'size'].height())
@ -639,7 +639,7 @@ class SlideController(DisplayController):
self.mediabar.hide() self.mediabar.hide()
self.song_menu.hide() self.song_menu.hide()
self.toolbar.setWidgetVisible(self.loop_list, False) self.toolbar.setWidgetVisible(self.loop_list, False)
self.toolbar.setWidgetVisible([u'songMenu'], False) self.toolbar.setWidgetVisible([u'song_menu'], False)
# Reset the button # Reset the button
self.play_slides_once.setChecked(False) self.play_slides_once.setChecked(False)
self.play_slides_once.setIcon(build_icon(u':/media/media_time.png')) self.play_slides_once.setIcon(build_icon(u':/media/media_time.png'))
@ -647,7 +647,7 @@ class SlideController(DisplayController):
self.play_slides_loop.setIcon(build_icon(u':/media/media_time.png')) self.play_slides_loop.setIcon(build_icon(u':/media/media_time.png'))
if item.is_text(): if item.is_text():
if Settings().value(self.main_window.songsSettingsSection + u'/display songbar') and self.slideList: if Settings().value(self.main_window.songsSettingsSection + u'/display songbar') and self.slideList:
self.toolbar.setWidgetVisible([u'songMenu'], True) self.toolbar.setWidgetVisible([u'song_menu'], True)
if item.is_capable(ItemCapabilities.CanLoop) and len(item.get_frames()) > 1: if item.is_capable(ItemCapabilities.CanLoop) and len(item.get_frames()) > 1:
self.toolbar.setWidgetVisible(self.loop_list) self.toolbar.setWidgetVisible(self.loop_list)
if item.is_media(): if item.is_media():
@ -754,25 +754,25 @@ class SlideController(DisplayController):
self.preview_list_widget.setColumnWidth(0, width) self.preview_list_widget.setColumnWidth(0, width)
if self.is_live: if self.is_live:
self.song_menu.menu().clear() self.song_menu.menu().clear()
self.display.audioPlayer.reset() self.display.audio_player.reset()
self.setAudioItemsVisibility(False) self.setAudioItemsVisibility(False)
self.audio_pause_item.setChecked(False) self.audio_pause_item.setChecked(False)
# If the current item has background audio # If the current item has background audio
if self.service_item.is_capable(ItemCapabilities.HasBackgroundAudio): if self.service_item.is_capable(ItemCapabilities.HasBackgroundAudio):
log.debug(u'Starting to play...') log.debug(u'Starting to play...')
self.display.audioPlayer.add_to_playlist(self.service_item.background_audio) self.display.audio_player.add_to_playlist(self.service_item.background_audio)
self.trackMenu.clear() self.trackMenu.clear()
for counter in range(len(self.service_item.background_audio)): for counter in range(len(self.service_item.background_audio)):
action = self.trackMenu.addAction(os.path.basename(self.service_item.background_audio[counter])) action = self.trackMenu.addAction(os.path.basename(self.service_item.background_audio[counter]))
action.setData(counter) action.setData(counter)
QtCore.QObject.connect(action, QtCore.SIGNAL(u'triggered(bool)'), self.onTrackTriggered) QtCore.QObject.connect(action, QtCore.SIGNAL(u'triggered(bool)'), self.onTrackTriggered)
self.display.audioPlayer.repeat = Settings().value( self.display.audio_player.repeat = Settings().value(
self.main_window.generalSettingsSection + u'/audio repeat list') self.main_window.generalSettingsSection + u'/audio repeat list')
if Settings().value(self.main_window.generalSettingsSection + u'/audio start paused'): if Settings().value(self.main_window.generalSettingsSection + u'/audio start paused'):
self.audio_pause_item.setChecked(True) self.audio_pause_item.setChecked(True)
self.display.audioPlayer.pause() self.display.audio_player.pause()
else: else:
self.display.audioPlayer.play() self.display.audio_player.play()
self.setAudioItemsVisibility(True) self.setAudioItemsVisibility(True)
row = 0 row = 0
text = [] text = []
@ -1212,9 +1212,9 @@ class SlideController(DisplayController):
if not self.audio_pause_item.isVisible(): if not self.audio_pause_item.isVisible():
return return
if checked: if checked:
self.display.audioPlayer.pause() self.display.audio_player.pause()
else: else:
self.display.audioPlayer.play() self.display.audio_player.play()
def timerEvent(self, event): def timerEvent(self, event):
""" """
@ -1316,13 +1316,13 @@ class SlideController(DisplayController):
""" """
Go to the next track when next is clicked Go to the next track when next is clicked
""" """
self.display.audioPlayer.next() self.display.audio_player.next()
def on_audio_time_remaining(self, time): def on_audio_time_remaining(self, time):
""" """
Update how much time is remaining Update how much time is remaining
""" """
seconds = self.display.audioPlayer.mediaObject.remainingTime() // 1000 seconds = self.display.audio_player.media_object.remainingTime() // 1000
minutes = seconds // 60 minutes = seconds // 60
seconds %= 60 seconds %= 60
self.audio_time_label.setText(u' %02d:%02d ' % (minutes, seconds)) self.audio_time_label.setText(u' %02d:%02d ' % (minutes, seconds))
@ -1332,7 +1332,7 @@ class SlideController(DisplayController):
Start playing a track Start playing a track
""" """
action = self.sender() action = self.sender()
self.display.audioPlayer.go_to(action.data()) self.display.audio_player.go_to(action.data())
def _get_plugin_manager(self): def _get_plugin_manager(self):
""" """

View File

@ -60,7 +60,7 @@ class MediaMediaItem(MediaManagerItem):
MediaManagerItem.__init__(self, parent, plugin, icon) MediaManagerItem.__init__(self, parent, plugin, icon)
self.singleServiceItem = False self.singleServiceItem = False
self.hasSearch = True self.hasSearch = True
self.mediaObject = None self.media_object = None
self.display_controller = DisplayController(parent) self.display_controller = DisplayController(parent)
self.display_controller.controller_layout = QtGui.QVBoxLayout() self.display_controller.controller_layout = QtGui.QVBoxLayout()
self.media_controller.register_controller(self.display_controller) self.media_controller.register_controller(self.display_controller)