From 86a05a38b5cb3d54adb3bdf0f94c016747e60acc Mon Sep 17 00:00:00 2001 From: Raoul Snyman Date: Wed, 27 Apr 2011 11:00:37 +0200 Subject: [PATCH 1/5] Fixed bug #752212. Added a revert button to revert the image to the default OpenLP image. Also moved things slightly to for the dialog to look a little better on other platforms/DEs. --- openlp/core/ui/advancedtab.py | 46 +++++++++++++++++++--------- openlp/core/ui/maindisplay.py | 5 +-- resources/images/general_revert.png | Bin 0 -> 737 bytes resources/images/openlp-2.qrc | 1 + 4 files changed, 36 insertions(+), 16 deletions(-) create mode 100644 resources/images/general_revert.png diff --git a/openlp/core/ui/advancedtab.py b/openlp/core/ui/advancedtab.py index 94bcb0801..7172701c8 100644 --- a/openlp/core/ui/advancedtab.py +++ b/openlp/core/ui/advancedtab.py @@ -41,11 +41,11 @@ class AdvancedTab(SettingsTab): """ Initialise the settings tab """ - generalTranslated = translate('AdvancedTab', 'Advanced') - SettingsTab.__init__(self, parent ,u'Advanced', generalTranslated) + advancedTranslated = translate('OpenLP.AdvancedTab', 'Advanced') self.default_image = u':/graphics/openlp-splash-screen.png' - self.default_color = u'#ffffff' + self.default_color = u'#009900' self.icon_path = u':/system/system_settings.png' + SettingsTab.__init__(self, parent, u'Advanced', advancedTranslated) def setupUi(self): """ @@ -82,14 +82,6 @@ class AdvancedTab(SettingsTab): u'enableAutoCloseCheckBox') self.uiLayout.addRow(self.enableAutoCloseCheckBox) self.leftLayout.addWidget(self.uiGroupBox) - self.hideMouseGroupBox = QtGui.QGroupBox(self.leftColumn) - self.hideMouseGroupBox.setObjectName(u'hideMouseGroupBox') - self.hideMouseLayout = QtGui.QVBoxLayout(self.hideMouseGroupBox) - self.hideMouseLayout.setObjectName(u'hideMouseLayout') - self.hideMouseCheckBox = QtGui.QCheckBox(self.hideMouseGroupBox) - self.hideMouseCheckBox.setObjectName(u'hideMouseCheckBox') - self.hideMouseLayout.addWidget(self.hideMouseCheckBox) - self.leftLayout.addWidget(self.hideMouseGroupBox) self.leftLayout.addStretch() self.defaultImageGroupBox = QtGui.QGroupBox(self.rightColumn) self.defaultImageGroupBox.setObjectName(u'defaultImageGroupBox') @@ -109,26 +101,42 @@ class AdvancedTab(SettingsTab): self.defaultBrowseButton.setObjectName(u'defaultBrowseButton') self.defaultBrowseButton.setIcon( build_icon(u':/general/general_open.png')) + self.defaultRevertButton = QtGui.QToolButton(self.defaultImageGroupBox) + self.defaultRevertButton.setObjectName(u'defaultRevertButton') + self.defaultRevertButton.setIcon( + build_icon(u':/general/general_revert.png')) self.defaultFileLayout = QtGui.QHBoxLayout() self.defaultFileLayout.setObjectName(u'defaultFileLayout') self.defaultFileLayout.addWidget(self.defaultFileEdit) self.defaultFileLayout.addWidget(self.defaultBrowseButton) + self.defaultFileLayout.addWidget(self.defaultRevertButton) self.defaultImageLayout.addRow(self.defaultFileLabel, self.defaultFileLayout) self.rightLayout.addWidget(self.defaultImageGroupBox) + self.hideMouseGroupBox = QtGui.QGroupBox(self.leftColumn) + self.hideMouseGroupBox.setObjectName(u'hideMouseGroupBox') + self.hideMouseLayout = QtGui.QVBoxLayout(self.hideMouseGroupBox) + self.hideMouseLayout.setObjectName(u'hideMouseLayout') + self.hideMouseCheckBox = QtGui.QCheckBox(self.hideMouseGroupBox) + self.hideMouseCheckBox.setObjectName(u'hideMouseCheckBox') + self.hideMouseLayout.addWidget(self.hideMouseCheckBox) + self.rightLayout.addWidget(self.hideMouseGroupBox) self.rightLayout.addStretch() QtCore.QObject.connect(self.defaultColorButton, QtCore.SIGNAL(u'pressed()'), self.onDefaultColorButtonPressed) QtCore.QObject.connect(self.defaultBrowseButton, QtCore.SIGNAL(u'pressed()'), self.onDefaultBrowseButtonPressed) + QtCore.QObject.connect(self.defaultRevertButton, + QtCore.SIGNAL(u'pressed()'), self.onDefaultRevertButtonPressed) def retranslateUi(self): """ Setup the interface translation strings. """ self.tabTitleVisible = UiStrings().Advanced - self.uiGroupBox.setTitle(translate('OpenLP.AdvancedTab', 'UI Settings')) + self.uiGroupBox.setTitle( + translate('OpenLP.AdvancedTab', 'UI Settings')) self.recentLabel.setText( translate('OpenLP.AdvancedTab', 'Number of recent files to display:')) @@ -150,8 +158,14 @@ class AdvancedTab(SettingsTab): 'Default Image')) self.defaultColorLabel.setText(translate('OpenLP.AdvancedTab', 'Background color:')) + self.defaultColorButton.setToolTip(translate('OpenLP.AdvancedTab', + 'Click to select a color.')) self.defaultFileLabel.setText(translate('OpenLP.AdvancedTab', 'Image file:')) + self.defaultBrowseButton.setToolTip(translate('OpenLP.AdvancedTab', + 'Browse for an image file to display.')) + self.defaultRevertButton.setToolTip(translate('OpenLP.AdvancedTab', + 'Revert to the default OpenLP logo.')) def load(self): """ @@ -184,7 +198,7 @@ class AdvancedTab(SettingsTab): self.hideMouseCheckBox.setChecked( settings.value(u'hide mouse', QtCore.QVariant(False)).toBool()) self.default_color = settings.value(u'default color', - QtCore.QVariant(u'#ffffff')).toString() + QtCore.QVariant(u'#000099')).toString() self.defaultFileEdit.setText(settings.value(u'default image', QtCore.QVariant(u':/graphics/openlp-splash-screen.png'))\ .toString()) @@ -232,4 +246,8 @@ class AdvancedTab(SettingsTab): file_filters) if filename: self.defaultFileEdit.setText(filename) - self.defaultFileEdit.setFocus() \ No newline at end of file + self.defaultFileEdit.setFocus() + + def onDefaultRevertButtonPressed(self): + self.defaultFileEdit.setText(u':/graphics/openlp-splash-screen.png') + self.defaultFileEdit.setFocus() diff --git a/openlp/core/ui/maindisplay.py b/openlp/core/ui/maindisplay.py index c413ec8c9..30457f569 100644 --- a/openlp/core/ui/maindisplay.py +++ b/openlp/core/ui/maindisplay.py @@ -142,9 +142,10 @@ class MainDisplay(DisplayWidget): image_file = QtCore.QSettings().value(u'advanced/default image', QtCore.QVariant(u':/graphics/openlp-splash-screen.png'))\ .toString() - background_color = QtGui.QColor(QtCore.QSettings().value( + background_color = QtGui.QColor() + background_color.setNamedColor(QtCore.QSettings().value( u'advanced/default color', - QtCore.QVariant(u'#ffffff')).toString()) + QtCore.QVariant(u'#990000')).toString()) if not background_color.isValid(): background_color = QtCore.Qt.white splash_image = QtGui.QImage(image_file) diff --git a/resources/images/general_revert.png b/resources/images/general_revert.png new file mode 100644 index 0000000000000000000000000000000000000000..47d7415e279876d68e1fa4db643045c572be29fc GIT binary patch literal 737 zcmV<70v`Q|P)xv}~cde{Q?GcXw{PyWh_4=F~7c@Zs=-^ZopOaLy3{5FjgoAdQm# ze}r=hD+N-U%?69r3Y*;y$HD>@oK84hF1XxoxG742@^}PjhJheiAxO7a|0#%tJyDp5 zAbpj<%db&h_8Y_mQKNs^|hhcwz5}xr(U`$s8WTy8PI(;Awd>=Q0+! zAqm=5i7*a!3uAH|2iomGd(8=$TMrUR4lF&V(Oi)d7Nm*pp51O~yu6jylqK;^*Y`kM zDM8bXZO|$+;c?j!3WdP)Jo?%jG2EJmfi4Ygeneral_open.png general_save.png general_email.png + general_revert.png slide_close.png From 35cb2b2fa67f883432c03918c3958d868cf8ac3a Mon Sep 17 00:00:00 2001 From: Raoul Snyman Date: Wed, 27 Apr 2011 12:30:29 +0200 Subject: [PATCH 2/5] Fix up the multicolouredness. --- openlp/core/ui/advancedtab.py | 4 ++-- openlp/core/ui/maindisplay.py | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/openlp/core/ui/advancedtab.py b/openlp/core/ui/advancedtab.py index 7172701c8..b6dd1cb27 100644 --- a/openlp/core/ui/advancedtab.py +++ b/openlp/core/ui/advancedtab.py @@ -43,7 +43,7 @@ class AdvancedTab(SettingsTab): """ advancedTranslated = translate('OpenLP.AdvancedTab', 'Advanced') self.default_image = u':/graphics/openlp-splash-screen.png' - self.default_color = u'#009900' + self.default_color = u'#ffffff' self.icon_path = u':/system/system_settings.png' SettingsTab.__init__(self, parent, u'Advanced', advancedTranslated) @@ -198,7 +198,7 @@ class AdvancedTab(SettingsTab): self.hideMouseCheckBox.setChecked( settings.value(u'hide mouse', QtCore.QVariant(False)).toBool()) self.default_color = settings.value(u'default color', - QtCore.QVariant(u'#000099')).toString() + QtCore.QVariant(u'#ffffff')).toString() self.defaultFileEdit.setText(settings.value(u'default image', QtCore.QVariant(u':/graphics/openlp-splash-screen.png'))\ .toString()) diff --git a/openlp/core/ui/maindisplay.py b/openlp/core/ui/maindisplay.py index 30457f569..7843284b3 100644 --- a/openlp/core/ui/maindisplay.py +++ b/openlp/core/ui/maindisplay.py @@ -145,7 +145,7 @@ class MainDisplay(DisplayWidget): background_color = QtGui.QColor() background_color.setNamedColor(QtCore.QSettings().value( u'advanced/default color', - QtCore.QVariant(u'#990000')).toString()) + QtCore.QVariant(u'#ffffff')).toString()) if not background_color.isValid(): background_color = QtCore.Qt.white splash_image = QtGui.QImage(image_file) From f732d24f35aadebecec2d0f232f2a7871122fd2d Mon Sep 17 00:00:00 2001 From: Raoul Snyman Date: Wed, 27 Apr 2011 16:54:27 +0200 Subject: [PATCH 3/5] Fixed bug #744515, OSIS import fails to import certain words in ESV (at least). --- openlp/plugins/bibles/lib/osis.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/openlp/plugins/bibles/lib/osis.py b/openlp/plugins/bibles/lib/osis.py index e2eb25b4f..130356241 100644 --- a/openlp/plugins/bibles/lib/osis.py +++ b/openlp/plugins/bibles/lib/osis.py @@ -37,6 +37,9 @@ from openlp.plugins.bibles.lib.db import BibleDB log = logging.getLogger(__name__) +def replacement(match): + return match.group(2).upper() + class OSISBible(BibleDB): """ `OSIS `_ Bible format importer class. @@ -106,6 +109,7 @@ class OSISBible(BibleDB): detect_file.close() try: osis = codecs.open(self.filename, u'r', details['encoding']) + repl = replacement for file_record in osis: if self.stop_import_flag: break @@ -148,12 +152,12 @@ class OSISBible(BibleDB): verse_text = self.rf_regex.sub(u'', verse_text) verse_text = self.lb_regex.sub(u' ', verse_text) verse_text = self.lg_regex.sub(u'', verse_text) - verse_text = self.l_regex.sub(u'', verse_text) + verse_text = self.l_regex.sub(u' ', verse_text) verse_text = self.w_regex.sub(u'', verse_text) verse_text = self.q1_regex.sub(u'"', verse_text) verse_text = self.q2_regex.sub(u'\'', verse_text) + verse_text = self.divine_name_regex.sub(repl, verse_text) verse_text = self.trans_regex.sub(u'', verse_text) - verse_text = self.divine_name_regex.sub(u'', verse_text) verse_text = verse_text.replace(u'', u'')\ .replace(u'', u'').replace(u'', u'')\ .replace(u'', u'').replace(u'', u'')\ From d23e564539127c7dbe7c591be40330436d3874e3 Mon Sep 17 00:00:00 2001 From: Raoul Snyman Date: Wed, 27 Apr 2011 18:15:35 +0200 Subject: [PATCH 4/5] Fixed bug #744515, funny quotes in KJV imported from OSIS. --- openlp/plugins/bibles/lib/osis.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/openlp/plugins/bibles/lib/osis.py b/openlp/plugins/bibles/lib/osis.py index 130356241..a080524eb 100644 --- a/openlp/plugins/bibles/lib/osis.py +++ b/openlp/plugins/bibles/lib/osis.py @@ -63,6 +63,7 @@ class OSISBible(BibleDB): self.lg_regex = re.compile(r'') self.l_regex = re.compile(r'') self.w_regex = re.compile(r'') + self.q_regex = re.compile(r'') self.q1_regex = re.compile(r'') self.q2_regex = re.compile(r'') self.trans_regex = re.compile(r'(.*?)') @@ -156,6 +157,7 @@ class OSISBible(BibleDB): verse_text = self.w_regex.sub(u'', verse_text) verse_text = self.q1_regex.sub(u'"', verse_text) verse_text = self.q2_regex.sub(u'\'', verse_text) + verse_text = self.q_regex.sub(u'', verse_text) verse_text = self.divine_name_regex.sub(repl, verse_text) verse_text = self.trans_regex.sub(u'', verse_text) verse_text = verse_text.replace(u'', u'')\ From 9aa1f580d2cb00123066d161487b241989cc40de Mon Sep 17 00:00:00 2001 From: Andreas Preikschat Date: Thu, 28 Apr 2011 08:36:04 +0200 Subject: [PATCH 5/5] fixed right/left shortcuts --- openlp/core/ui/slidecontroller.py | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/openlp/core/ui/slidecontroller.py b/openlp/core/ui/slidecontroller.py index 5f2c63c23..dfa313cc1 100644 --- a/openlp/core/ui/slidecontroller.py +++ b/openlp/core/ui/slidecontroller.py @@ -380,18 +380,21 @@ class SlideController(QtGui.QWidget): action_list.add_action(self.previousItem) action_list.add_action(self.nextItem) self.previousService = shortcut_action(parent, u'previousService', - [QtCore.Qt.Key_Left], self.servicePrevious, UiStrings().LiveToolbar) - self.previousService.setShortcutContext(QtCore.Qt.WidgetWithChildrenShortcut) + [QtCore.Qt.Key_Left], self.servicePrevious, + category=UiStrings().LiveToolbar, + context=QtCore.Qt.WidgetWithChildrenShortcut) self.previousService.setText( translate('OpenLP.SlideController', 'Previous Service')) self.nextService = shortcut_action(parent, 'nextService', - [QtCore.Qt.Key_Right], self.serviceNext, UiStrings().LiveToolbar) - self.nextService.setShortcutContext(QtCore.Qt.WidgetWithChildrenShortcut) + [QtCore.Qt.Key_Right], self.serviceNext, + category=UiStrings().LiveToolbar, + context=QtCore.Qt.WidgetWithChildrenShortcut) self.nextService.setText( translate('OpenLP.SlideController', 'Next Service')) self.escapeItem = shortcut_action(parent, 'escapeItem', - [QtCore.Qt.Key_Escape], self.liveEscape, UiStrings().LiveToolbar) - self.escapeItem.setShortcutContext(QtCore.Qt.WidgetWithChildrenShortcut) + [QtCore.Qt.Key_Escape], self.liveEscape, + category=UiStrings().LiveToolbar, + context=QtCore.Qt.WidgetWithChildrenShortcut) self.escapeItem.setText( translate('OpenLP.SlideController', 'Escape Item')) @@ -1150,4 +1153,5 @@ class SlideController(QtGui.QWidget): elif self.desktopScreen.isChecked(): return HideMode.Screen else: - return None \ No newline at end of file + return None +