Show a small progress bar rather than a "downloading" message.

This commit is contained in:
Raoul Snyman 2010-01-29 22:20:30 +02:00
parent 4a9a8149c4
commit 0e29d0b4af
6 changed files with 40 additions and 7 deletions

View File

@ -32,6 +32,7 @@ class BaseListWithDnD(QtGui.QListWidget):
def __init__(self, parent=None):
QtGui.QListWidget.__init__(self, parent)
self.parent = parent
# this must be set by the class which is inheriting
assert(self.PluginName)
@ -47,4 +48,5 @@ class BaseListWithDnD(QtGui.QListWidget):
mimeData = QtCore.QMimeData()
drag.setMimeData(mimeData)
mimeData.setText(self.PluginName)
dropAction = drag.start(QtCore.Qt.CopyAction)
dropAction = drag.start(QtCore.Qt.CopyAction)

View File

@ -161,4 +161,5 @@ class Receiver():
"""
Get the global ``eventreceiver`` instance.
"""
return Receiver.eventreceiver
return Receiver.eventreceiver

View File

@ -253,7 +253,7 @@ class MediaManagerItem(QtGui.QWidget):
def addListViewToToolBar(self):
#Add the List widget
self.ListView = self.ListViewWithDnD_class()
self.ListView = self.ListViewWithDnD_class(self)
self.ListView.uniformItemSizes = True
self.ListView.setGeometry(QtCore.QRect(10, 100, 256, 591))
self.ListView.setSpacing(1)
@ -400,4 +400,4 @@ class MediaManagerItem(QtGui.QWidget):
if self.generateSlideData(service_item):
return service_item
else:
return None
return None

View File

@ -247,7 +247,7 @@ class HTTPBible(BibleDB):
return None
def get_books(self):
return [Book.populate(name=book[u'name']) for book in self.books]
return [Book.populate(name=self.books[book]['name']) for book in self.books]
def get_chapter_count(self, book):
return self.books[book][u'chap']

View File

@ -202,8 +202,8 @@ class BibleManager(object):
log.debug(u'get_bibles')
bible_list = []
for bible_name, bible_object in self.db_cache.iteritems():
if getattr(bible_object, 'download_source', None):
bible_name = u'%s (%s)' % (bible_name, self.web)
#if getattr(bible_object, 'download_source', None):
# bible_name = u'%s (%s)' % (bible_name, self.web)
bible_list.append(bible_name)
return bible_list

View File

@ -42,6 +42,9 @@ class BibleListView(BaseListWithDnD):
self.PluginName = u'Bibles'
BaseListWithDnD.__init__(self, parent)
def resizeEvent(self, event):
self.parent.onListViewResize(event.size().width(), event.size().width())
class BibleMediaItem(MediaManagerItem):
"""
@ -242,6 +245,20 @@ class BibleMediaItem(MediaManagerItem):
QtCore.SIGNAL(u'pressed()'), self.onQuickSearchButton)
QtCore.QObject.connect(Receiver.get_receiver(),
QtCore.SIGNAL(u'config_updated'), self.configUpdated)
# Other stuff
QtCore.QObject.connect(Receiver.get_receiver(),
QtCore.SIGNAL(u''))
def addListViewToToolBar(self):
MediaManagerItem.addListViewToToolBar(self)
# Progress Bar
self.SearchProgress = QtGui.QProgressBar(self)
self.SearchProgress.setFormat('%p%')
self.SearchProgress.setMaximum(3)
self.SearchProgress.setGeometry(self.ListView.geometry().left(),
self.ListView.geometry().top(), 81, 23)
self.SearchProgress.setVisible(False)
self.SearchProgress.setObjectName(u'SearchProgress')
def configUpdated(self):
if str_to_bool(
@ -319,6 +336,19 @@ class BibleMediaItem(MediaManagerItem):
# use the first bible as the trigger
self.initialiseBible(bible)
def onListViewResize(self, width, height):
self.SearchProgress.setGeometry(self.ListView.geometry().x(),
(self.ListView.geometry().y() + self.ListView.geometry().height())\
- 23, 81, 23)
def onSearchProgressShow(self, value):
self.SearchProgress.setVisible(True)
self.SearchProgress.setValue(value)
def onSearchProgressHide(self, value):
self.SearchProgress.setVisible(True)
self.SearchProgress.setValue(value)
def onAdvancedVersionComboBox(self):
self.initialiseBible(
unicode(self.AdvancedVersionComboBox.currentText()))