Jon Tibble has proposed merging lp:~meths/openlp/trivialfixes into lp:openlp.
Requested reviews: OpenLP Core (openlp-core) For more details, see: https://code.launchpad.net/~meths/openlp/trivialfixes/+merge/48662 Cleanup, speedup and another UI library component -- https://code.launchpad.net/~meths/openlp/trivialfixes/+merge/48662 Your team OpenLP Core is requested to review the proposed merge of lp:~meths/openlp/trivialfixes into lp:openlp.
=== modified file 'openlp/core/lib/ui.py' --- openlp/core/lib/ui.py 2011-02-04 02:56:59 +0000 +++ openlp/core/lib/ui.py 2011-02-04 20:44:11 +0000 @@ -182,3 +182,11 @@ action.setShortcutContext(QtCore.Qt.WidgetWithChildrenShortcut) QtCore.QObject.connect(action, QtCore.SIGNAL(u'triggered()'), function) return action + +def add_widget_completer(cache, widget): + """ + Add a text autocompleter to a widget. + """ + completer = QtGui.QCompleter(cache) + completer.setCaseSensitivity(QtCore.Qt.CaseInsensitive) + widget.setCompleter(completer) === modified file 'openlp/plugins/bibles/lib/mediaitem.py' --- openlp/plugins/bibles/lib/mediaitem.py 2011-02-03 02:46:02 +0000 +++ openlp/plugins/bibles/lib/mediaitem.py 2011-02-04 20:44:11 +0000 @@ -30,7 +30,8 @@ from openlp.core.lib import MediaManagerItem, Receiver, BaseListWithDnD, \ ItemCapabilities, translate -from openlp.core.lib.ui import critical_error_message_box, media_item_combo_box +from openlp.core.lib.ui import add_widget_completer, media_item_combo_box, \ + critical_error_message_box from openlp.plugins.bibles.forms import BibleImportForm from openlp.plugins.bibles.lib import get_reference_match @@ -379,9 +380,7 @@ book_data = bibles[bible].get_books() books = [book.name for book in book_data] books.sort() - completer = QtGui.QCompleter(books) - completer.setCaseSensitivity(QtCore.Qt.CaseInsensitive) - self.quickSearchEdit.setCompleter(completer) + add_widget_completer(books, self.quickSearchEdit) def onAdvancedVersionComboBox(self): self.initialiseBible( === modified file 'openlp/plugins/bibles/lib/opensong.py' --- openlp/plugins/bibles/lib/opensong.py 2011-01-16 00:47:14 +0000 +++ openlp/plugins/bibles/lib/opensong.py 2011-02-04 20:44:11 +0000 @@ -38,7 +38,6 @@ """ OpenSong Bible format importer class. """ - def __init__(self, parent, **kwargs): """ Constructor to create and set up an instance of the OpenSongBible @@ -81,14 +80,13 @@ db_book.id, int(chapter.attrib[u'n'].split()[-1]), int(verse.attrib[u'n']), - unicode(verse.text) - ) - Receiver.send_message(u'openlp_process_events') + unicode(verse.text)) self.wizard.incrementProgressBar(unicode(translate( 'BiblesPlugin.Opensong', 'Importing %s %s...', 'Importing <book name> <chapter>...')) % (db_book.name, int(chapter.attrib[u'n'].split()[-1]))) - self.session.commit() + self.session.commit() + Receiver.send_message(u'openlp_process_events') except (IOError, AttributeError): log.exception(u'Loading bible from OpenSong file failed') success = False === modified file 'openlp/plugins/custom/lib/mediaitem.py' --- openlp/plugins/custom/lib/mediaitem.py 2011-02-01 00:33:50 +0000 +++ openlp/plugins/custom/lib/mediaitem.py 2011-02-04 20:44:11 +0000 @@ -69,7 +69,7 @@ QtCore.SIGNAL(u'custom_preview'), self.onPreviewClick) def initialise(self): - self.loadCustomListView(self.manager.get_all_objects( + self.loadList(self.manager.get_all_objects( CustomSlide, order_by_ref=CustomSlide.title)) # Called to redisplay the custom list screen edith from a search # or from the exit of the Custom edit dialog. If remote editing is @@ -80,7 +80,7 @@ self.onPreviewClick() self.onRemoteEditClear() - def loadCustomListView(self, list): + def loadList(self, list): self.listView.clear() for customSlide in list: custom_name = QtGui.QListWidgetItem(customSlide.title) === modified file 'openlp/plugins/songs/forms/editsongform.py' --- openlp/plugins/songs/forms/editsongform.py 2011-02-02 23:12:31 +0000 +++ openlp/plugins/songs/forms/editsongform.py 2011-02-04 20:44:11 +0000 @@ -30,7 +30,7 @@ from PyQt4 import QtCore, QtGui from openlp.core.lib import Receiver, translate -from openlp.core.lib.ui import critical_error_message_box +from openlp.core.lib.ui import add_widget_completer, critical_error_message_box from openlp.plugins.songs.forms import EditVerseForm from openlp.plugins.songs.lib import SongXML, VerseType from openlp.plugins.songs.lib.db import Book, Song, Author, Topic @@ -129,37 +129,26 @@ self.authorsComboBox.setItemData( row, QtCore.QVariant(author.id)) self.authors.append(author.display_name) - completer = QtGui.QCompleter(self.authors) - completer.setCaseSensitivity(QtCore.Qt.CaseInsensitive) - self.authorsComboBox.setCompleter(completer) + add_widget_completer(self.authors, self.authorsComboBox) def loadTopics(self): - topics = self.manager.get_all_objects(Topic, order_by_ref=Topic.name) - self.topicsComboBox.clear() - self.topicsComboBox.addItem(u'') self.topics = [] - for topic in topics: - row = self.topicsComboBox.count() - self.topicsComboBox.addItem(topic.name) - self.topics.append(topic.name) - self.topicsComboBox.setItemData(row, QtCore.QVariant(topic.id)) - completer = QtGui.QCompleter(self.topics) - completer.setCaseSensitivity(QtCore.Qt.CaseInsensitive) - self.topicsComboBox.setCompleter(completer) + self.__loadObjects(Topic, self.topicsComboBox, self.topics) def loadBooks(self): - books = self.manager.get_all_objects(Book, order_by_ref=Book.name) - self.songBookComboBox.clear() - self.songBookComboBox.addItem(u'') self.books = [] - for book in books: - row = self.songBookComboBox.count() - self.songBookComboBox.addItem(book.name) - self.books.append(book.name) - self.songBookComboBox.setItemData(row, QtCore.QVariant(book.id)) - completer = QtGui.QCompleter(self.books) - completer.setCaseSensitivity(QtCore.Qt.CaseInsensitive) - self.songBookComboBox.setCompleter(completer) + self.__loadObjects(Book, self.songBookComboBox, self.books) + + def __loadObjects(self, cls, combo, cache): + objects = self.manager.get_all_objects(cls, order_by_ref=cls.name) + combo.clear() + combo.addItem(u'') + for object in objects: + row = combo.count() + combo.addItem(object.name) + cache.append(object.name) + combo.setItemData(row, QtCore.QVariant(object.id)) + add_widget_completer(cache, combo) def loadThemes(self, theme_list): self.themeComboBox.clear() @@ -168,9 +157,7 @@ for theme in theme_list: self.themeComboBox.addItem(theme) self.themes.append(theme) - completer = QtGui.QCompleter(self.themes) - completer.setCaseSensitivity(QtCore.Qt.CaseInsensitive) - self.themeComboBox.setCompleter(completer) + add_widget_completer(self.themes, self.themeComboBox) def newSong(self): log.debug(u'New Song')
_______________________________________________ Mailing list: https://launchpad.net/~openlp-core Post to : openlp-core@lists.launchpad.net Unsubscribe : https://launchpad.net/~openlp-core More help : https://help.launchpad.net/ListHelp