set 'Show Display' visible after changing the monitor setup

This commit is contained in:
Andreas Preikschat 2011-03-04 16:21:50 +01:00
parent e4c60687b2
commit 50818a6311
1 changed files with 19 additions and 19 deletions

View File

@ -32,7 +32,7 @@ from PyQt4.phonon import Phonon
from openlp.core.lib import OpenLPToolbar, Receiver, resize_image, \ from openlp.core.lib import OpenLPToolbar, Receiver, resize_image, \
ItemCapabilities, translate ItemCapabilities, translate
from openlp.core.lib.ui import UiStrings, shortcut_action from openlp.core.lib.ui import icon_action, UiStrings, shortcut_action
from openlp.core.ui import HideMode, MainDisplay from openlp.core.ui import HideMode, MainDisplay
log = logging.getLogger(__name__) log = logging.getLogger(__name__)
@ -146,34 +146,33 @@ class SlideController(QtGui.QWidget):
u':/slides/slide_next.png', u':/slides/slide_next.png',
translate('OpenLP.SlideController', 'Move to next'), translate('OpenLP.SlideController', 'Move to next'),
self.onSlideSelectedNext) self.onSlideSelectedNext)
self.toolbar.addToolbarSeparator(u'Close Separator')
if self.isLive: if self.isLive:
self.toolbar.addToolbarSeparator(u'Close Separator')
self.hideMenu = QtGui.QToolButton(self.toolbar) self.hideMenu = QtGui.QToolButton(self.toolbar)
self.hideMenu.setText(translate('OpenLP.SlideController', 'Hide')) self.hideMenu.setText(translate('OpenLP.SlideController', 'Hide'))
self.hideMenu.setPopupMode(QtGui.QToolButton.MenuButtonPopup) self.hideMenu.setPopupMode(QtGui.QToolButton.MenuButtonPopup)
self.toolbar.addToolbarWidget(u'Hide Menu', self.hideMenu) self.toolbar.addToolbarWidget(u'Hide Menu', self.hideMenu)
self.hideMenu.setMenu(QtGui.QMenu( self.hideMenu.setMenu(QtGui.QMenu(
translate('OpenLP.SlideController', 'Hide'), self.toolbar)) translate('OpenLP.SlideController', 'Hide'), self.toolbar))
self.blankScreen = QtGui.QAction(QtGui.QIcon( self.blankScreen = icon_action(self.hideMenu, u'Blank Screen',
u':/slides/slide_blank.png'), u':/slides/slide_blank.png', False)
translate('OpenLP.SlideController', self.blankScreen.setText(
'Blank Screen'), self.hideMenu) translate('OpenLP.SlideController', 'Blank Screen'))
self.blankScreen.setCheckable(True) self.themeScreen = icon_action(self.hideMenu, u'Blank Theme',
self.themeScreen = QtGui.QAction(QtGui.QIcon( u':/slides/slide_theme.png', False)
u':/slides/slide_theme.png'), self.themeScreen.setText(
translate('OpenLP.SlideController', translate('OpenLP.SlideController', 'Blank to Theme'))
'Blank to Theme'), self.hideMenu) self.desktopScreen = icon_action(self.hideMenu, u'Desktop Screen',
self.themeScreen.setCheckable(True) u':/slides/slide_desktop.png', False)
self.desktopScreen.setText(
translate('OpenLP.SlideController', 'Show Desktop'))
self.desktopScreen.setVisible(False)
self.hideMenu.setDefaultAction(self.blankScreen) self.hideMenu.setDefaultAction(self.blankScreen)
self.hideMenu.menu().addAction(self.blankScreen) self.hideMenu.menu().addAction(self.blankScreen)
self.hideMenu.menu().addAction(self.themeScreen) self.hideMenu.menu().addAction(self.themeScreen)
self.hideMenu.menu().addAction(self.desktopScreen)
if self.screens.display_count > 1: if self.screens.display_count > 1:
self.desktopScreen = QtGui.QAction(QtGui.QIcon( self.desktopScreen.setVisible(True)
u':/slides/slide_desktop.png'),
translate('OpenLP.SlideController',
'Show Desktop'), self.hideMenu)
self.hideMenu.menu().addAction(self.desktopScreen)
self.desktopScreen.setCheckable(True)
QtCore.QObject.connect(self.desktopScreen, QtCore.QObject.connect(self.desktopScreen,
QtCore.SIGNAL(u'triggered(bool)'), self.onHideDisplay) QtCore.SIGNAL(u'triggered(bool)'), self.onHideDisplay)
self.toolbar.addToolbarSeparator(u'Loop Separator') self.toolbar.addToolbarSeparator(u'Loop Separator')
@ -195,7 +194,6 @@ class SlideController(QtGui.QWidget):
self.delaySpinBox.setToolTip(translate('OpenLP.SlideController', self.delaySpinBox.setToolTip(translate('OpenLP.SlideController',
'Delay between slides in seconds')) 'Delay between slides in seconds'))
else: else:
self.toolbar.addToolbarSeparator(u'Close Separator')
self.toolbar.addToolbarButton( self.toolbar.addToolbarButton(
# Does not need translating - control string. # Does not need translating - control string.
u'Go Live', u':/general/general_live.png', u'Go Live', u':/general/general_live.png',
@ -411,6 +409,8 @@ class SlideController(QtGui.QWidget):
Settings dialog has changed the screen size of adjust output and Settings dialog has changed the screen size of adjust output and
screen previews. screen previews.
""" """
if hasattr(self, u'desktopScreen'):
self.desktopScreen.setVisible(self.screens.display_count > 1)
# rebuild display as screen size changed # rebuild display as screen size changed
self.display = MainDisplay(self, self.screens, self.isLive) self.display = MainDisplay(self, self.screens, self.isLive)
self.display.imageManager = self.parent.renderManager.image_manager self.display.imageManager = self.parent.renderManager.image_manager