openlp-core team mailing list archive
-
openlp-core team
-
Mailing list archive
-
Message #07889
[Merge] lp:~trb143/openlp/general into lp:openlp
Tim Bentley has proposed merging lp:~trb143/openlp/general into lp:openlp.
Requested reviews:
Raoul Snyman (raoul-snyman)
Related bugs:
Bug #730294 in OpenLP: "Auto-preview, not previewing next item if go live from preview"
https://bugs.launchpad.net/openlp/+bug/730294
Bug #745218 in OpenLP: "Move "Layout Style" out of Bible settings and into Media Manager for easy access"
https://bugs.launchpad.net/openlp/+bug/745218
Bug #748960 in OpenLP: "comma after bible name"
https://bugs.launchpad.net/openlp/+bug/748960
Bug #755687 in OpenLP: "Save Bible translation"
https://bugs.launchpad.net/openlp/+bug/755687
Bug #756545 in OpenLP: "First Time Wizard not setting default theme"
https://bugs.launchpad.net/openlp/+bug/756545
For more details, see:
https://code.launchpad.net/~trb143/openlp/general/+merge/57084
Clean up bible Tab code to standards
Sort out find_in_combo.
Fix bugs:
- Save last used bible
- Remove stray comma
- Allow layout to be selected from Quick Tab. (Advanced has no real estate left so has been left in settings).
--
https://code.launchpad.net/~trb143/openlp/general/+merge/57084
Your team OpenLP Core is subscribed to branch lp:openlp.
=== modified file 'openlp/core/lib/ui.py'
--- openlp/core/lib/ui.py 2011-03-27 16:30:40 +0000
+++ openlp/core/lib/ui.py 2011-04-10 19:02:27 +0000
@@ -49,8 +49,10 @@
Cancel = translate('OpenLP.Ui', 'Cancel')
CCLINumberLabel = translate('OpenLP.Ui', 'CCLI number:')
CreateService = translate('OpenLP.Ui', 'Create a new service.')
+ Continuous = translate('OpenLP.Ui', 'Continuous')
Default = unicode(translate('OpenLP.Ui', 'Default'))
Delete = translate('OpenLP.Ui', '&Delete')
+ DisplayStyle = translate('OpenLP.Ui', 'Display style:')
Edit = translate('OpenLP.Ui', '&Edit')
EmptyField = translate('OpenLP.Ui', 'Empty Field')
Error = translate('OpenLP.Ui', 'Error')
@@ -97,6 +99,8 @@
Theme = translate('OpenLP.Ui', 'Theme', 'Singular')
Themes = translate('OpenLP.Ui', 'Themes', 'Plural')
Top = translate('OpenLP.Ui', 'Top')
+ VersePerSlide = translate('OpenLP.Ui', 'Verse Per Slide')
+ VersePerLine = translate('OpenLP.Ui', 'Verse Per Line')
Version = translate('OpenLP.Ui', 'Version')
def add_welcome_page(parent, image):
@@ -315,3 +319,20 @@
form.verticalComboBox.addItem(UiStrings.Bottom)
verticalLabel.setBuddy(form.verticalComboBox)
layout.addRow(verticalLabel, form.verticalComboBox)
+
+def find_and_set_in_combo_box(combo_box, value_to_find):
+ """
+ Find a string in a combo box and set it as the selected item if present
+
+ ``combo_box``
+ The combo box to check for selected items
+
+ ``value_to_find``
+ The value to find
+ """
+ index = combo_box.findText(value_to_find,
+ QtCore.Qt.MatchExactly)
+ if index == -1:
+ # Not Found.
+ index = 0
+ combo_box.setCurrentIndex(index)
\ No newline at end of file
=== modified file 'openlp/core/ui/servicemanager.py'
--- openlp/core/ui/servicemanager.py 2011-04-02 09:53:08 +0000
+++ openlp/core/ui/servicemanager.py 2011-04-10 19:02:27 +0000
@@ -35,7 +35,8 @@
from openlp.core.lib import OpenLPToolbar, ServiceItem, context_menu_action, \
Receiver, build_icon, ItemCapabilities, SettingsManager, translate
from openlp.core.lib.theme import ThemeLevel
-from openlp.core.lib.ui import UiStrings, critical_error_message_box
+from openlp.core.lib.ui import UiStrings, critical_error_message_box, \
+ find_and_set_in_combo_box
from openlp.core.ui import ServiceNoteForm, ServiceItemEditForm, StartTimeForm
from openlp.core.ui.printserviceform import PrintServiceForm
from openlp.core.utils import AppLocation, delete_file, file_is_unicode, \
@@ -1261,13 +1262,7 @@
action = context_menu_action(self.serviceManagerList, None, theme,
self.onThemeChangeAction)
self.themeMenu.addAction(action)
- index = self.themeComboBox.findText(self.service_theme,
- QtCore.Qt.MatchExactly)
- # Not Found
- if index == -1:
- index = 0
- self.service_theme = u''
- self.themeComboBox.setCurrentIndex(index)
+ find_and_set_in_combo_box(self.themeComboBox, self.service_theme)
self.mainwindow.renderManager.set_service_theme(self.service_theme)
self.regenerateServiceItems()
@@ -1306,4 +1301,4 @@
Print a Service Order Sheet.
"""
settingDialog = PrintServiceForm(self.mainwindow, self)
- settingDialog.exec_()
+ settingDialog.exec_()
\ No newline at end of file
=== modified file 'openlp/core/ui/thememanager.py'
--- openlp/core/ui/thememanager.py 2011-03-25 17:49:26 +0000
+++ openlp/core/ui/thememanager.py 2011-04-10 19:02:27 +0000
@@ -445,6 +445,7 @@
files = SettingsManager.get_files(self.settingsSection, u'.png')
if firstTime:
self.firstTime()
+ files = SettingsManager.get_files(self.settingsSection, u'.png')
# No themes have been found so create one
if len(files) == 0:
theme = ThemeXML()
=== modified file 'openlp/core/ui/themestab.py'
--- openlp/core/ui/themestab.py 2011-03-24 19:04:02 +0000
+++ openlp/core/ui/themestab.py 2011-04-10 19:02:27 +0000
@@ -28,7 +28,7 @@
from openlp.core.lib import SettingsTab, Receiver, translate
from openlp.core.lib.theme import ThemeLevel
-from openlp.core.lib.ui import UiStrings
+from openlp.core.lib.ui import UiStrings, find_and_set_in_combo_box
class ThemesTab(SettingsTab):
"""
@@ -185,12 +185,7 @@
self.DefaultComboBox.clear()
for theme in theme_list:
self.DefaultComboBox.addItem(theme)
- id = self.DefaultComboBox.findText(
- self.global_theme, QtCore.Qt.MatchExactly)
- if id == -1:
- id = 0 # Not Found
- self.global_theme = u''
- self.DefaultComboBox.setCurrentIndex(id)
+ find_and_set_in_combo_box(self.DefaultComboBox, self.global_theme)
self.parent.renderManager.set_global_theme(
self.global_theme, self.theme_level)
if self.global_theme is not u'':
@@ -206,4 +201,4 @@
if not preview.isNull():
preview = preview.scaled(300, 255, QtCore.Qt.KeepAspectRatio,
QtCore.Qt.SmoothTransformation)
- self.DefaultListView.setPixmap(preview)
+ self.DefaultListView.setPixmap(preview)
\ No newline at end of file
=== modified file 'openlp/plugins/bibles/lib/biblestab.py'
--- openlp/plugins/bibles/lib/biblestab.py 2011-03-24 19:04:02 +0000
+++ openlp/plugins/bibles/lib/biblestab.py 2011-04-10 19:02:27 +0000
@@ -30,6 +30,7 @@
from openlp.core.lib import Receiver, SettingsTab, translate
from openlp.plugins.bibles.lib import LayoutStyle, DisplayStyle
+from openlp.core.lib.ui import UiStrings, find_and_set_in_combo_box
log = logging.getLogger(__name__)
@@ -48,108 +49,107 @@
def setupUi(self):
self.setObjectName(u'BiblesTab')
SettingsTab.setupUi(self)
- self.VerseDisplayGroupBox = QtGui.QGroupBox(self.leftColumn)
- self.VerseDisplayGroupBox.setObjectName(u'VerseDisplayGroupBox')
- self.VerseDisplayLayout = QtGui.QFormLayout(self.VerseDisplayGroupBox)
- self.VerseDisplayLayout.setObjectName(u'VerseDisplayLayout')
- self.NewChaptersCheckBox = QtGui.QCheckBox(self.VerseDisplayGroupBox)
- self.NewChaptersCheckBox.setObjectName(u'NewChaptersCheckBox')
- self.VerseDisplayLayout.addRow(self.NewChaptersCheckBox)
- self.DisplayStyleLabel = QtGui.QLabel(self.VerseDisplayGroupBox)
- self.DisplayStyleLabel.setObjectName(u'DisplayStyleLabel')
- self.DisplayStyleComboBox = QtGui.QComboBox(self.VerseDisplayGroupBox)
- self.DisplayStyleComboBox.addItems([u'', u'', u'', u''])
- self.DisplayStyleComboBox.setObjectName(u'DisplayStyleComboBox')
- self.VerseDisplayLayout.addRow(self.DisplayStyleLabel,
- self.DisplayStyleComboBox)
- self.LayoutStyleLabel = QtGui.QLabel(self.VerseDisplayGroupBox)
- self.LayoutStyleLabel.setObjectName(u'LayoutStyleLabel')
- self.LayoutStyleComboBox = QtGui.QComboBox(self.VerseDisplayGroupBox)
- self.LayoutStyleComboBox.setObjectName(u'LayoutStyleComboBox')
- self.LayoutStyleComboBox.addItems([u'', u'', u''])
- self.VerseDisplayLayout.addRow(self.LayoutStyleLabel,
- self.LayoutStyleComboBox)
- self.BibleSecondCheckBox = QtGui.QCheckBox(self.VerseDisplayGroupBox)
- self.BibleSecondCheckBox.setObjectName(u'BibleSecondCheckBox')
- self.VerseDisplayLayout.addRow(self.BibleSecondCheckBox)
- self.BibleThemeLabel = QtGui.QLabel(self.VerseDisplayGroupBox)
- self.BibleThemeLabel.setObjectName(u'BibleThemeLabel')
- self.BibleThemeComboBox = QtGui.QComboBox(self.VerseDisplayGroupBox)
- self.BibleThemeComboBox.setSizeAdjustPolicy(
+ self.verseDisplayGroupBox = QtGui.QGroupBox(self.leftColumn)
+ self.verseDisplayGroupBox.setObjectName(u'verseDisplayGroupBox')
+ self.verseDisplayLayout = QtGui.QFormLayout(self.verseDisplayGroupBox)
+ self.verseDisplayLayout.setObjectName(u'verseDisplayLayout')
+ self.newChaptersCheckBox = QtGui.QCheckBox(self.verseDisplayGroupBox)
+ self.newChaptersCheckBox.setObjectName(u'newChaptersCheckBox')
+ self.verseDisplayLayout.addRow(self.newChaptersCheckBox)
+ self.displayStyleLabel = QtGui.QLabel(self.verseDisplayGroupBox)
+ self.displayStyleLabel.setObjectName(u'displayStyleLabel')
+ self.displayStyleComboBox = QtGui.QComboBox(self.verseDisplayGroupBox)
+ self.displayStyleComboBox.addItems([u'', u'', u'', u''])
+ self.displayStyleComboBox.setObjectName(u'displayStyleComboBox')
+ self.verseDisplayLayout.addRow(self.displayStyleLabel,
+ self.displayStyleComboBox)
+ self.layoutStyleLabel = QtGui.QLabel(self.verseDisplayGroupBox)
+ self.layoutStyleLabel.setObjectName(u'layoutStyleLabel')
+ self.layoutStyleComboBox = QtGui.QComboBox(self.verseDisplayGroupBox)
+ self.layoutStyleComboBox.setObjectName(u'layoutStyleComboBox')
+ self.layoutStyleComboBox.addItems([u'', u'', u''])
+ self.verseDisplayLayout.addRow(self.layoutStyleLabel,
+ self.layoutStyleComboBox)
+ self.bibleSecondCheckBox = QtGui.QCheckBox(self.verseDisplayGroupBox)
+ self.bibleSecondCheckBox.setObjectName(u'bibleSecondCheckBox')
+ self.verseDisplayLayout.addRow(self.bibleSecondCheckBox)
+ self.bibleThemeLabel = QtGui.QLabel(self.verseDisplayGroupBox)
+ self.bibleThemeLabel.setObjectName(u'BibleThemeLabel')
+ self.bibleThemeComboBox = QtGui.QComboBox(self.verseDisplayGroupBox)
+ self.bibleThemeComboBox.setSizeAdjustPolicy(
QtGui.QComboBox.AdjustToMinimumContentsLength)
- self.BibleThemeComboBox.setSizePolicy(
+ self.bibleThemeComboBox.setSizePolicy(
QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Fixed)
- self.BibleThemeComboBox.addItem(u'')
- self.BibleThemeComboBox.setObjectName(u'BibleThemeComboBox')
- self.VerseDisplayLayout.addRow(self.BibleThemeLabel,
- self.BibleThemeComboBox)
- self.ChangeNoteLabel = QtGui.QLabel(self.VerseDisplayGroupBox)
- self.ChangeNoteLabel.setWordWrap(True)
- self.ChangeNoteLabel.setObjectName(u'ChangeNoteLabel')
- self.VerseDisplayLayout.addRow(self.ChangeNoteLabel)
- self.leftLayout.addWidget(self.VerseDisplayGroupBox)
+ self.bibleThemeComboBox.addItem(u'')
+ self.bibleThemeComboBox.setObjectName(u'BibleThemeComboBox')
+ self.verseDisplayLayout.addRow(self.bibleThemeLabel,
+ self.bibleThemeComboBox)
+ self.changeNoteLabel = QtGui.QLabel(self.verseDisplayGroupBox)
+ self.changeNoteLabel.setWordWrap(True)
+ self.changeNoteLabel.setObjectName(u'changeNoteLabel')
+ self.verseDisplayLayout.addRow(self.changeNoteLabel)
+ self.leftLayout.addWidget(self.verseDisplayGroupBox)
self.leftLayout.addStretch()
self.rightColumn.setSizePolicy(
QtGui.QSizePolicy.Expanding, QtGui.QSizePolicy.Preferred)
self.rightLayout.addStretch()
# Signals and slots
QtCore.QObject.connect(
- self.NewChaptersCheckBox, QtCore.SIGNAL(u'stateChanged(int)'),
+ self.newChaptersCheckBox, QtCore.SIGNAL(u'stateChanged(int)'),
self.onNewChaptersCheckBoxChanged)
QtCore.QObject.connect(
- self.DisplayStyleComboBox, QtCore.SIGNAL(u'activated(int)'),
+ self.displayStyleComboBox, QtCore.SIGNAL(u'activated(int)'),
self.onDisplayStyleComboBoxChanged)
QtCore.QObject.connect(
- self.BibleThemeComboBox, QtCore.SIGNAL(u'activated(int)'),
+ self.bibleThemeComboBox, QtCore.SIGNAL(u'activated(int)'),
self.onBibleThemeComboBoxChanged)
QtCore.QObject.connect(
- self.LayoutStyleComboBox, QtCore.SIGNAL(u'activated(int)'),
+ self.layoutStyleComboBox, QtCore.SIGNAL(u'activated(int)'),
self.onLayoutStyleComboBoxChanged)
QtCore.QObject.connect(
- self.BibleSecondCheckBox, QtCore.SIGNAL(u'stateChanged(int)'),
+ self.bibleSecondCheckBox, QtCore.SIGNAL(u'stateChanged(int)'),
self.onBibleSecondCheckBox)
QtCore.QObject.connect(Receiver.get_receiver(),
QtCore.SIGNAL(u'theme_update_list'), self.updateThemeList)
def retranslateUi(self):
- self.VerseDisplayGroupBox.setTitle(
+ self.verseDisplayGroupBox.setTitle(
translate('BiblesPlugin.BiblesTab', 'Verse Display'))
- self.NewChaptersCheckBox.setText(
+ self.newChaptersCheckBox.setText(
translate('BiblesPlugin.BiblesTab',
'Only show new chapter numbers'))
- self.LayoutStyleLabel.setText(
+ self.layoutStyleLabel.setText(
translate('BiblesPlugin.BiblesTab', 'Layout style:'))
- self.DisplayStyleLabel.setText(
- translate('BiblesPlugin.BiblesTab', 'Display style:'))
- self.BibleThemeLabel.setText(
+ self.displayStyleLabel.setText(UiStrings.DisplayStyle)
+ self.bibleThemeLabel.setText(
translate('BiblesPlugin.BiblesTab', 'Bible theme:'))
- self.LayoutStyleComboBox.setItemText(LayoutStyle.VersePerSlide,
- translate('BiblesPlugin.BiblesTab', 'Verse Per Slide'))
- self.LayoutStyleComboBox.setItemText(LayoutStyle.VersePerLine,
- translate('BiblesPlugin.BiblesTab', 'Verse Per Line'))
- self.LayoutStyleComboBox.setItemText(LayoutStyle.Continuous,
- translate('BiblesPlugin.BiblesTab', 'Continuous'))
- self.DisplayStyleComboBox.setItemText(DisplayStyle.NoBrackets,
+ self.layoutStyleComboBox.setItemText(LayoutStyle.VersePerSlide,
+ UiStrings.VersePerSlide)
+ self.layoutStyleComboBox.setItemText(LayoutStyle.VersePerLine,
+ UiStrings.VersePerLine)
+ self.layoutStyleComboBox.setItemText(LayoutStyle.Continuous,
+ UiStrings.Continuous)
+ self.displayStyleComboBox.setItemText(DisplayStyle.NoBrackets,
translate('BiblesPlugin.BiblesTab', 'No Brackets'))
- self.DisplayStyleComboBox.setItemText(DisplayStyle.Round,
+ self.displayStyleComboBox.setItemText(DisplayStyle.Round,
translate('BiblesPlugin.BiblesTab', '( And )'))
- self.DisplayStyleComboBox.setItemText(DisplayStyle.Curly,
+ self.displayStyleComboBox.setItemText(DisplayStyle.Curly,
translate('BiblesPlugin.BiblesTab', '{ And }'))
- self.DisplayStyleComboBox.setItemText(DisplayStyle.Square,
+ self.displayStyleComboBox.setItemText(DisplayStyle.Square,
translate('BiblesPlugin.BiblesTab', '[ And ]'))
- self.ChangeNoteLabel.setText(translate('BiblesPlugin.BiblesTab',
+ self.changeNoteLabel.setText(translate('BiblesPlugin.BiblesTab',
'Note:\nChanges do not affect verses already in the service.'))
- self.BibleSecondCheckBox.setText(
+ self.bibleSecondCheckBox.setText(
translate('BiblesPlugin.BiblesTab', 'Display second Bible verses'))
def onBibleThemeComboBoxChanged(self):
- self.bible_theme = self.BibleThemeComboBox.currentText()
+ self.bible_theme = self.bibleThemeComboBox.currentText()
def onDisplayStyleComboBoxChanged(self):
- self.display_style = self.DisplayStyleComboBox.currentIndex()
+ self.display_style = self.displayStyleComboBox.currentIndex()
def onLayoutStyleComboBoxChanged(self):
- self.layout_style = self.LayoutStyleComboBox.currentIndex()
+ self.layout_style = self.layoutStyleComboBox.currentIndex()
def onNewChaptersCheckBoxChanged(self, check_state):
self.show_new_chapters = False
@@ -176,10 +176,10 @@
settings.value(u'bible theme', QtCore.QVariant(u'')).toString())
self.second_bibles = settings.value(
u'second bibles', QtCore.QVariant(True)).toBool()
- self.NewChaptersCheckBox.setChecked(self.show_new_chapters)
- self.DisplayStyleComboBox.setCurrentIndex(self.display_style)
- self.LayoutStyleComboBox.setCurrentIndex(self.layout_style)
- self.BibleSecondCheckBox.setChecked(self.second_bibles)
+ self.newChaptersCheckBox.setChecked(self.show_new_chapters)
+ self.displayStyleComboBox.setCurrentIndex(self.display_style)
+ self.layoutStyleComboBox.setCurrentIndex(self.layout_style)
+ self.bibleSecondCheckBox.setChecked(self.second_bibles)
settings.endGroup()
def save(self):
@@ -204,14 +204,8 @@
[u'Bible Theme', u'Song Theme']
"""
- self.BibleThemeComboBox.clear()
- self.BibleThemeComboBox.addItem(u'')
+ self.bibleThemeComboBox.clear()
+ self.bibleThemeComboBox.addItem(u'')
for theme in theme_list:
- self.BibleThemeComboBox.addItem(theme)
- index = self.BibleThemeComboBox.findText(
- unicode(self.bible_theme), QtCore.Qt.MatchExactly)
- if index == -1:
- # Not Found.
- index = 0
- self.bible_theme = u''
- self.BibleThemeComboBox.setCurrentIndex(index)
+ self.bibleThemeComboBox.addItem(theme)
+ find_and_set_in_combo_box(self.bibleThemeComboBox, self.bible_theme)
=== modified file 'openlp/plugins/bibles/lib/mediaitem.py'
--- openlp/plugins/bibles/lib/mediaitem.py 2011-03-26 16:29:21 +0000
+++ openlp/plugins/bibles/lib/mediaitem.py 2011-04-10 19:02:27 +0000
@@ -32,7 +32,7 @@
translate
from openlp.core.lib.searchedit import SearchEdit
from openlp.core.lib.ui import UiStrings, add_widget_completer, \
- media_item_combo_box, critical_error_message_box
+ media_item_combo_box, critical_error_message_box, find_and_set_in_combo_box
from openlp.plugins.bibles.forms import BibleImportForm
from openlp.plugins.bibles.lib import LayoutStyle, DisplayStyle, \
VerseReferenceList, get_reference_match
@@ -106,6 +106,12 @@
translate('BiblesPlugin.MediaItem', 'Text Search'))
])
self.quickLayout.addRow(self.quickSearchLabel, self.quickSearchEdit)
+ self.quickLayoutLabel = QtGui.QLabel(self.quickTab)
+ self.quickLayoutLabel.setObjectName(u'quickClearLabel')
+ self.quickLayoutComboBox = media_item_combo_box(self.quickTab,
+ u'quickLayoutComboBox')
+ self.quickLayoutComboBox.addItems([u'', u'', u''])
+ self.quickLayout.addRow(self.quickLayoutLabel, self.quickLayoutComboBox)
self.quickClearLabel = QtGui.QLabel(self.quickTab)
self.quickClearLabel.setObjectName(u'quickClearLabel')
self.quickClearComboBox = media_item_combo_box(self.quickTab,
@@ -210,6 +216,9 @@
QtCore.SIGNAL(u'searchTypeChanged(int)'), self.updateAutoCompleter)
QtCore.QObject.connect(self.quickVersionComboBox,
QtCore.SIGNAL(u'activated(int)'), self.updateAutoCompleter)
+ QtCore.QObject.connect(
+ self.quickLayoutComboBox, QtCore.SIGNAL(u'activated(int)'),
+ self.onlayoutStyleComboBoxChanged)
# Buttons
QtCore.QObject.connect(self.advancedSearchButton,
QtCore.SIGNAL(u'pressed()'), self.onAdvancedSearchButton)
@@ -234,6 +243,7 @@
self.advancedSecondComboBox.setVisible(False)
self.quickSecondLabel.setVisible(False)
self.quickSecondComboBox.setVisible(False)
+ self.quickLayoutComboBox.setCurrentIndex(self.settings.layout_style)
def retranslateUi(self):
log.debug(u'retranslateUi')
@@ -269,12 +279,19 @@
translate('BiblesPlugin.MediaItem', 'Clear'))
self.advancedClearComboBox.addItem(
translate('BiblesPlugin.MediaItem', 'Keep'))
+ self.quickLayoutLabel.setText(UiStrings.DisplayStyle)
+ self.quickLayoutComboBox.setItemText(LayoutStyle.VersePerSlide,
+ UiStrings.VersePerSlide)
+ self.quickLayoutComboBox.setItemText(LayoutStyle.VersePerLine,
+ UiStrings.VersePerLine)
+ self.quickLayoutComboBox.setItemText(LayoutStyle.Continuous,
+ UiStrings.Continuous)
def initialise(self):
log.debug(u'bible manager initialise')
self.parent.manager.media = self
self.loadBibles()
- self.updateAutoCompleter()
+ self.updateAutoCompleter(False)
self.configUpdated()
log.debug(u'bible manager initialise complete')
@@ -298,23 +315,25 @@
bibles = self.parent.manager.get_bibles().keys()
bibles.sort()
# Load the bibles into the combo boxes.
- first = True
for bible in bibles:
if bible:
self.quickVersionComboBox.addItem(bible)
self.quickSecondComboBox.addItem(bible)
self.advancedVersionComboBox.addItem(bible)
self.advancedSecondComboBox.addItem(bible)
- if first:
- first = False
- self.initialiseBible(bible)
+ # set the default value
+ book = QtCore.QSettings().value(
+ self.settingsSection + u'/advanced bible',
+ QtCore.QVariant(u'')).toString()
+ find_and_set_in_combo_box(self.advancedVersionComboBox, book)
+ self.initialiseAdvancedBible(unicode(book))
def reloadBibles(self):
log.debug(u'Reloading Bibles')
self.parent.manager.reload_bibles()
self.loadBibles()
- def initialiseBible(self, bible):
+ def initialiseAdvancedBible(self, bible):
"""
This initialises the given bible, which means that its book names and
their chapter numbers is added to the combo boxes on the
@@ -324,7 +343,7 @@
``bible``
The bible to initialise (unicode).
"""
- log.debug(u'initialiseBible %s', bible)
+ log.debug(u'initialiseAdvancedBible %s', bible)
book_data = self.parent.manager.get_books(bible)
self.advancedBookComboBox.clear()
first = True
@@ -354,12 +373,20 @@
self.adjustComboBox(1, verse_count, self.advancedFromVerse)
self.adjustComboBox(1, verse_count, self.advancedToVerse)
- def updateAutoCompleter(self):
+ def updateAutoCompleter(self, updateConfig=True):
"""
This updates the bible book completion list for the search field. The
completion depends on the bible. It is only updated when we are doing a
reference search, otherwise the auto completion list is removed.
"""
+ if updateConfig:
+ QtCore.QSettings().setValue(self.settingsSection + u'/quick bible',
+ QtCore.QVariant(self.quickVersionComboBox.currentText()))
+ else:
+ book = QtCore.QSettings().value(
+ self.settingsSection + u'/quick bible',
+ QtCore.QVariant(u'')).toString()
+ find_and_set_in_combo_box(self.quickVersionComboBox, book)
books = []
# We have to do a 'Reference Search'.
if self.quickSearchEdit.currentSearchType() == BibleSearch.Reference:
@@ -372,7 +399,9 @@
add_widget_completer(books, self.quickSearchEdit)
def onAdvancedVersionComboBox(self):
- self.initialiseBible(
+ QtCore.QSettings().setValue(self.settingsSection + u'/advanced bible',
+ QtCore.QVariant(self.advancedVersionComboBox.currentText()))
+ self.initialiseAdvancedBible(
unicode(self.advancedVersionComboBox.currentText()))
def onAdvancedBookComboBox(self):
@@ -804,3 +833,11 @@
if self.settings.display_style == DisplayStyle.Square:
return u'{su}[%s]{/su}' % verse_text
return u'{su}%s{/su}' % verse_text
+
+ def onlayoutStyleComboBoxChanged(self):
+ self.settings.layout_style = self.quickLayoutComboBox.currentIndex()
+ self.settings.layoutStyleComboBox.setCurrentIndex(
+ self.settings.layout_style)
+ QtCore.QSettings().setValue(
+ self.settingsSection + u'/verse layout style',
+ QtCore.QVariant(self.settings.layout_style))
\ No newline at end of file
=== modified file 'openlp/plugins/bibles/lib/versereferencelist.py'
--- openlp/plugins/bibles/lib/versereferencelist.py 2011-03-24 19:04:02 +0000
+++ openlp/plugins/bibles/lib/versereferencelist.py 2011-04-10 19:02:27 +0000
@@ -96,4 +96,7 @@
version[u'copyright'])
if version[u'permission'].strip():
result = result + u', ' + version[u'permission']
+ result = result.rstrip()
+ if result.endswith(u','):
+ return result[:len(result)-1]
return result
=== modified file 'openlp/plugins/custom/forms/editcustomform.py'
--- openlp/plugins/custom/forms/editcustomform.py 2011-03-24 19:04:02 +0000
+++ openlp/plugins/custom/forms/editcustomform.py 2011-04-10 19:02:27 +0000
@@ -29,7 +29,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 critical_error_message_box, find_and_set_in_combo_box
from openlp.plugins.custom.lib import CustomXMLBuilder, CustomXMLParser
from openlp.plugins.custom.lib.db import CustomSlide
from editcustomdialog import Ui_CustomEditDialog
@@ -98,11 +98,7 @@
for slide in slideList:
self.slideListView.addItem(slide[1])
theme = self.customSlide.theme_name
- id = self.themeComboBox.findText(theme, QtCore.Qt.MatchExactly)
- # No theme match
- if id == -1:
- id = 0
- self.themeComboBox.setCurrentIndex(id)
+ find_and_set_in_combo_box(self.themeComboBox, theme)
# If not preview hide the preview button.
self.previewButton.setVisible(False)
if preview:
@@ -265,4 +261,4 @@
message=translate('CustomPlugin.EditCustomForm',
'You need to add at least one slide'))
return False
- return True
+ return True
\ No newline at end of file
=== modified file 'openlp/plugins/songs/forms/editsongform.py'
--- openlp/plugins/songs/forms/editsongform.py 2011-03-30 18:35:48 +0000
+++ openlp/plugins/songs/forms/editsongform.py 2011-04-10 19:02:27 +0000
@@ -31,7 +31,7 @@
from openlp.core.lib import Receiver, translate
from openlp.core.lib.ui import UiStrings, add_widget_completer, \
- critical_error_message_box
+ critical_error_message_box, find_and_set_in_combo_box
from openlp.plugins.songs.forms import EditVerseForm
from openlp.plugins.songs.lib import SongXML, VerseType, clean_song
from openlp.plugins.songs.lib.db import Book, Song, Author, Topic
@@ -208,20 +208,9 @@
self.alternativeEdit.setText(u'')
if self.song.song_book_id != 0:
book_name = self.manager.get_object(Book, self.song.song_book_id)
- id = self.songBookComboBox.findText(
- unicode(book_name.name), QtCore.Qt.MatchExactly)
- if id == -1:
- # Not Found
- id = 0
- self.songBookComboBox.setCurrentIndex(id)
+ find_and_set_in_combo_box(self.songBookComboBox, unicode(book_name.name))
if self.song.theme_name:
- id = self.themeComboBox.findText(
- unicode(self.song.theme_name), QtCore.Qt.MatchExactly)
- if id == -1:
- # Not Found
- id = 0
- self.song.theme_name = None
- self.themeComboBox.setCurrentIndex(id)
+ find_and_set_in_combo_box(self.themeComboBox, unicode(self.song.theme_name))
if self.song.copyright:
self.copyrightEdit.setText(self.song.copyright)
else:
@@ -790,4 +779,4 @@
self.song.verse_order)
except:
log.exception(u'Problem processing song Lyrics \n%s',
- sxml.dump_xml())
+ sxml.dump_xml())
\ No newline at end of file
Follow ups