Fix an import problem and use signals correctly. Worksbzr diff

This commit is contained in:
Patrick Zimmermann 2013-04-15 20:01:59 +02:00
parent 0dbda9ee21
commit fd22d17d37
3 changed files with 13 additions and 12 deletions

View File

@ -99,10 +99,9 @@ from shortcutlistform import ShortcutListForm
from mediadockmanager import MediaDockManager
from servicemanager import ServiceManager
from thememanager import ThemeManager
from listpreviewwidget import ListPreviewWidget
__all__ = ['SplashScreen', 'AboutForm', 'SettingsForm', 'MainDisplay', 'SlideController', 'ServiceManager',
'ThemeManager', 'MediaDockManager', 'ServiceItemEditForm', 'FirstTimeForm', 'FirstTimeLanguageForm', 'ThemeForm',
'ThemeLayoutForm', 'FileRenameForm', 'StartTimeForm', 'MainDisplay', 'Display', 'ServiceNoteForm',
'SlideController', 'DisplayController', 'GeneralTab', 'ThemesTab', 'AdvancedTab', 'PluginForm',
'FormattingTagForm', 'ShortcutListForm', 'ListPreviewWidget']
'FormattingTagForm', 'ShortcutListForm']

View File

@ -35,9 +35,12 @@ from PyQt4 import QtCore, QtGui
from openlp.core.lib import ImageSource, Registry, ServiceItem
class ListPreviewWidget(object):
class ListPreviewWidget(QtCore.QObject):
clicked = QtCore.pyqtSignal()
double_clicked = QtCore.pyqtSignal()
def __init__(self, parent, is_live):
# Controller list view
super(QtCore.QObject, self).__init__()
self.is_live = is_live
self.preview_table_widget = QtGui.QTableWidget(parent)
self.preview_table_widget.setColumnCount(1)
@ -50,16 +53,14 @@ class ListPreviewWidget(object):
self.preview_table_widget.setHorizontalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOff)
self.preview_table_widget.setAlternatingRowColors(True)
self.service_item = ServiceItem()
self.clicked = QtCore.pyqtSignal()
self.double_clicked = QtCore.pyqtSignal()
if not self.is_live:
self.preview_table_widget.doubleClicked.connect(self.double_clicked)
self.preview_table_widget.clicked.connect(self.clicked)
self.preview_table_widget.doubleClicked.connect(self._double_clicked)
self.preview_table_widget.clicked.connect(self._clicked)
def clicked(self):
def _clicked(self):
self.clicked.emit()
def double_clicked(self):
def _double_clicked(self):
self.double_clicked.emit()
def get_preview_widget(self):

View File

@ -38,9 +38,10 @@ from PyQt4 import QtCore, QtGui
from openlp.core.lib import OpenLPToolbar, ItemCapabilities, ServiceItem, SlideLimits, \
ServiceItemAction, Settings, Registry, UiStrings, ScreenList, build_icon, build_html, translate
from openlp.core.ui import HideMode, MainDisplay, Display, DisplayControllerType, ListPreviewWidget
from openlp.core.ui import HideMode, MainDisplay, Display, DisplayControllerType
from openlp.core.lib.ui import create_action
from openlp.core.utils.actions import ActionList, CategoryOrder
from openlp.core.ui.listpreviewwidget import ListPreviewWidget
log = logging.getLogger(__name__)
@ -777,7 +778,7 @@ class SlideController(DisplayController):
row += 1
self.slideList[unicode(row)] = row - 1
self.preview_widget.update_preview_selection(slideno)
self.preview_widget.replace_service_manager_item(self.service_item, width, self.ratio)
self.preview_widget.replace_service_manager_item(self.service_item, width, self.ratio, slideno)
self.enableToolBar(service_item)
# Pass to display for viewing.
# Postpone image build, we need to do this later to avoid the theme