openlp-core team mailing list archive
-
openlp-core team
-
Mailing list archive
-
Message #31919
[Merge] lp:~raoul-snyman/openlp/remove-version-number into lp:openlp
Raoul Snyman has proposed merging lp:~raoul-snyman/openlp/remove-version-number into lp:openlp.
Commit message:
Remove the version number from various places within OpenLP. Fix the import path of UiStrings.
Requested reviews:
Tomas Groth (tomasgroth)
For more details, see:
https://code.launchpad.net/~raoul-snyman/openlp/remove-version-number/+merge/328492
Remove the version number from various places within OpenLP. Fix the import path of UiStrings.
Add this to your merge proposal:
--------------------------------
lp:~raoul-snyman/openlp/remove-version-number (revision 2756)
[SUCCESS] https://ci.openlp.io/job/Branch-01-Pull/2112/
[SUCCESS] https://ci.openlp.io/job/Branch-02-Functional-Tests/2022/
[SUCCESS] https://ci.openlp.io/job/Branch-03-Interface-Tests/1930/
[SUCCESS] https://ci.openlp.io/job/Branch-04a-Code_Analysis/1307/
[SUCCESS] https://ci.openlp.io/job/Branch-04b-Test_Coverage/1151/
[SUCCESS] https://ci.openlp.io/job/Branch-04c-Code_Analysis2/281/
[SUCCESS] https://ci.openlp.io/job/Branch-05-AppVeyor-Tests/126/
--
Your team OpenLP Core is subscribed to branch lp:openlp.
=== modified file 'openlp/core/common/uistrings.py'
--- openlp/core/common/uistrings.py 2017-05-30 18:42:35 +0000
+++ openlp/core/common/uistrings.py 2017-08-03 05:07:54 +0000
@@ -120,9 +120,8 @@
self.NISs = translate('OpenLP.Ui', 'No Item Selected', 'Singular')
self.NISp = translate('OpenLP.Ui', 'No Items Selected', 'Plural')
self.NoResults = translate('OpenLP.Ui', 'No Search Results')
- self.OLP = translate('OpenLP.Ui', 'OpenLP')
- self.OLPV2 = "{name} {version}".format(name=self.OLP, version="2")
- self.OLPV2x = "{name} {version}".format(name=self.OLP, version="2.4")
+ self.OpenLP = translate('OpenLP.Ui', 'OpenLP')
+ self.OpenLPv2AndUp = translate('OpenLP.Ui', 'OpenLP 2.0 and up')
self.OpenLPStart = translate('OpenLP.Ui', 'OpenLP is already running. Do you wish to continue?')
self.OpenService = translate('OpenLP.Ui', 'Open service.')
self.OptionalShowInFooter = translate('OpenLP.Ui', 'Optional, this will be displayed in footer.')
=== modified file 'openlp/core/ui/lib/pathedit.py'
--- openlp/core/ui/lib/pathedit.py 2017-06-09 06:06:49 +0000
+++ openlp/core/ui/lib/pathedit.py 2017-08-03 05:07:54 +0000
@@ -1,205 +1,205 @@
-# -*- coding: utf-8 -*-
-# vim: autoindent shiftwidth=4 expandtab textwidth=120 tabstop=4 softtabstop=4
-
-###############################################################################
-# OpenLP - Open Source Lyrics Projection #
-# --------------------------------------------------------------------------- #
-# Copyright (c) 2008-2017 OpenLP Developers #
-# --------------------------------------------------------------------------- #
-# This program is free software; you can redistribute it and/or modify it #
-# under the terms of the GNU General Public License as published by the Free #
-# Software Foundation; version 2 of the License. #
-# #
-# This program is distributed in the hope that it will be useful, but WITHOUT #
-# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or #
-# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for #
-# more details. #
-# #
-# You should have received a copy of the GNU General Public License along #
-# with this program; if not, write to the Free Software Foundation, Inc., 59 #
-# Temple Place, Suite 330, Boston, MA 02111-1307 USA #
-###############################################################################
-from enum import Enum
-import os.path
-
-from PyQt5 import QtCore, QtWidgets
-
-from openlp.core.common import UiStrings, translate
-from openlp.core.lib import build_icon
-
-
-class PathType(Enum):
- Files = 1
- Directories = 2
-
-
-class PathEdit(QtWidgets.QWidget):
- """
- The :class:`~openlp.core.ui.lib.pathedit.PathEdit` class subclasses QWidget to create a custom widget for use when
- a file or directory needs to be selected.
- """
- pathChanged = QtCore.pyqtSignal(str)
-
- def __init__(self, parent=None, path_type=PathType.Files, default_path=None, dialog_caption=None, show_revert=True):
- """
- Initalise the PathEdit widget
-
- :param parent: The parent of the widget. This is just passed to the super method.
- :type parent: QWidget or None
-
- :param dialog_caption: Used to customise the caption in the QFileDialog.
- :type dialog_caption: str
-
- :param default_path: The default path. This is set as the path when the revert button is clicked
- :type default_path: str
-
- :param show_revert: Used to determin if the 'revert button' should be visible.
- :type show_revert: bool
-
- :return: None
- :rtype: None
- """
- super().__init__(parent)
- self.default_path = default_path
- self.dialog_caption = dialog_caption
- self._path_type = path_type
- self._path = None
- self.filters = '{all_files} (*)'.format(all_files=UiStrings().AllFiles)
- self._setup(show_revert)
-
- def _setup(self, show_revert):
- """
- Set up the widget
- :param show_revert: Show or hide the revert button
- :type show_revert: bool
-
- :return: None
- :rtype: None
- """
- widget_layout = QtWidgets.QHBoxLayout()
- widget_layout.setContentsMargins(0, 0, 0, 0)
- self.line_edit = QtWidgets.QLineEdit(self)
- self.line_edit.setText(self._path)
- widget_layout.addWidget(self.line_edit)
- self.browse_button = QtWidgets.QToolButton(self)
- self.browse_button.setIcon(build_icon(':/general/general_open.png'))
- widget_layout.addWidget(self.browse_button)
- self.revert_button = QtWidgets.QToolButton(self)
- self.revert_button.setIcon(build_icon(':/general/general_revert.png'))
- self.revert_button.setVisible(show_revert)
- widget_layout.addWidget(self.revert_button)
- self.setLayout(widget_layout)
- # Signals and Slots
- self.browse_button.clicked.connect(self.on_browse_button_clicked)
- self.revert_button.clicked.connect(self.on_revert_button_clicked)
- self.line_edit.editingFinished.connect(self.on_line_edit_editing_finished)
- self.update_button_tool_tips()
-
- @property
- def path(self):
- """
- A property getter method to return the selected path.
-
- :return: The selected path
- :rtype: str
- """
- return self._path
-
- @path.setter
- def path(self, path):
- """
- A Property setter method to set the selected path
-
- :param path: The path to set the widget to
- :type path: str
- """
- self._path = path
- self.line_edit.setText(path)
- self.line_edit.setToolTip(path)
-
- @property
- def path_type(self):
- """
- A property getter method to return the path_type. Path type allows you to sepecify if the user is restricted to
- selecting a file or directory.
-
- :return: The type selected
- :rtype: Enum of PathEdit
- """
- return self._path_type
-
- @path_type.setter
- def path_type(self, path_type):
- """
- A Property setter method to set the path type
-
- :param path: The type of path to select
- :type path: Enum of PathEdit
- """
- self._path_type = path_type
- self.update_button_tool_tips()
-
- def update_button_tool_tips(self):
- """
- Called to update the tooltips on the buttons. This is changing path types, and when the widget is initalised
- :return: None
- """
- if self._path_type == PathType.Directories:
- self.browse_button.setToolTip(translate('OpenLP.PathEdit', 'Browse for directory.'))
- self.revert_button.setToolTip(translate('OpenLP.PathEdit', 'Revert to default directory.'))
- else:
- self.browse_button.setToolTip(translate('OpenLP.PathEdit', 'Browse for file.'))
- self.revert_button.setToolTip(translate('OpenLP.PathEdit', 'Revert to default file.'))
-
- def on_browse_button_clicked(self):
- """
- A handler to handle a click on the browse button.
-
- Show the QFileDialog and process the input from the user
- :return: None
- """
- caption = self.dialog_caption
- path = ''
- if self._path_type == PathType.Directories:
- if not caption:
- caption = translate('OpenLP.PathEdit', 'Select Directory')
- path = QtWidgets.QFileDialog.getExistingDirectory(self, caption,
- self._path, QtWidgets.QFileDialog.ShowDirsOnly)
- elif self._path_type == PathType.Files:
- if not caption:
- caption = self.dialog_caption = translate('OpenLP.PathEdit', 'Select File')
- path, filter_used = QtWidgets.QFileDialog.getOpenFileName(self, caption, self._path, self.filters)
- if path:
- path = os.path.normpath(path)
- self.on_new_path(path)
-
- def on_revert_button_clicked(self):
- """
- A handler to handle a click on the revert button.
-
- Set the new path to the value of the default_path instance variable.
- :return: None
- """
- self.on_new_path(self.default_path)
-
- def on_line_edit_editing_finished(self):
- """
- A handler to handle when the line edit has finished being edited.
- :return: None
- """
- self.on_new_path(self.line_edit.text())
-
- def on_new_path(self, path):
- """
- A method called to validate and set a new path.
-
- Emits the pathChanged Signal
-
- :param path: The new path
- :type path: str
-
- :return: None
- """
- if self._path != path:
- self.path = path
- self.pathChanged.emit(path)
+# -*- coding: utf-8 -*-
+# vim: autoindent shiftwidth=4 expandtab textwidth=120 tabstop=4 softtabstop=4
+
+###############################################################################
+# OpenLP - Open Source Lyrics Projection #
+# --------------------------------------------------------------------------- #
+# Copyright (c) 2008-2017 OpenLP Developers #
+# --------------------------------------------------------------------------- #
+# This program is free software; you can redistribute it and/or modify it #
+# under the terms of the GNU General Public License as published by the Free #
+# Software Foundation; version 2 of the License. #
+# #
+# This program is distributed in the hope that it will be useful, but WITHOUT #
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or #
+# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for #
+# more details. #
+# #
+# You should have received a copy of the GNU General Public License along #
+# with this program; if not, write to the Free Software Foundation, Inc., 59 #
+# Temple Place, Suite 330, Boston, MA 02111-1307 USA #
+###############################################################################
+from enum import Enum
+import os.path
+
+from PyQt5 import QtCore, QtWidgets
+
+from openlp.core.common import UiStrings, translate
+from openlp.core.lib import build_icon
+
+
+class PathType(Enum):
+ Files = 1
+ Directories = 2
+
+
+class PathEdit(QtWidgets.QWidget):
+ """
+ The :class:`~openlp.core.ui.lib.pathedit.PathEdit` class subclasses QWidget to create a custom widget for use when
+ a file or directory needs to be selected.
+ """
+ pathChanged = QtCore.pyqtSignal(str)
+
+ def __init__(self, parent=None, path_type=PathType.Files, default_path=None, dialog_caption=None, show_revert=True):
+ """
+ Initalise the PathEdit widget
+
+ :param parent: The parent of the widget. This is just passed to the super method.
+ :type parent: QWidget or None
+
+ :param dialog_caption: Used to customise the caption in the QFileDialog.
+ :type dialog_caption: str
+
+ :param default_path: The default path. This is set as the path when the revert button is clicked
+ :type default_path: str
+
+ :param show_revert: Used to determin if the 'revert button' should be visible.
+ :type show_revert: bool
+
+ :return: None
+ :rtype: None
+ """
+ super().__init__(parent)
+ self.default_path = default_path
+ self.dialog_caption = dialog_caption
+ self._path_type = path_type
+ self._path = None
+ self.filters = '{all_files} (*)'.format(all_files=UiStrings().AllFiles)
+ self._setup(show_revert)
+
+ def _setup(self, show_revert):
+ """
+ Set up the widget
+ :param show_revert: Show or hide the revert button
+ :type show_revert: bool
+
+ :return: None
+ :rtype: None
+ """
+ widget_layout = QtWidgets.QHBoxLayout()
+ widget_layout.setContentsMargins(0, 0, 0, 0)
+ self.line_edit = QtWidgets.QLineEdit(self)
+ self.line_edit.setText(self._path)
+ widget_layout.addWidget(self.line_edit)
+ self.browse_button = QtWidgets.QToolButton(self)
+ self.browse_button.setIcon(build_icon(':/general/general_open.png'))
+ widget_layout.addWidget(self.browse_button)
+ self.revert_button = QtWidgets.QToolButton(self)
+ self.revert_button.setIcon(build_icon(':/general/general_revert.png'))
+ self.revert_button.setVisible(show_revert)
+ widget_layout.addWidget(self.revert_button)
+ self.setLayout(widget_layout)
+ # Signals and Slots
+ self.browse_button.clicked.connect(self.on_browse_button_clicked)
+ self.revert_button.clicked.connect(self.on_revert_button_clicked)
+ self.line_edit.editingFinished.connect(self.on_line_edit_editing_finished)
+ self.update_button_tool_tips()
+
+ @property
+ def path(self):
+ """
+ A property getter method to return the selected path.
+
+ :return: The selected path
+ :rtype: str
+ """
+ return self._path
+
+ @path.setter
+ def path(self, path):
+ """
+ A Property setter method to set the selected path
+
+ :param path: The path to set the widget to
+ :type path: str
+ """
+ self._path = path
+ self.line_edit.setText(path)
+ self.line_edit.setToolTip(path)
+
+ @property
+ def path_type(self):
+ """
+ A property getter method to return the path_type. Path type allows you to sepecify if the user is restricted to
+ selecting a file or directory.
+
+ :return: The type selected
+ :rtype: Enum of PathEdit
+ """
+ return self._path_type
+
+ @path_type.setter
+ def path_type(self, path_type):
+ """
+ A Property setter method to set the path type
+
+ :param path: The type of path to select
+ :type path: Enum of PathEdit
+ """
+ self._path_type = path_type
+ self.update_button_tool_tips()
+
+ def update_button_tool_tips(self):
+ """
+ Called to update the tooltips on the buttons. This is changing path types, and when the widget is initalised
+ :return: None
+ """
+ if self._path_type == PathType.Directories:
+ self.browse_button.setToolTip(translate('OpenLP.PathEdit', 'Browse for directory.'))
+ self.revert_button.setToolTip(translate('OpenLP.PathEdit', 'Revert to default directory.'))
+ else:
+ self.browse_button.setToolTip(translate('OpenLP.PathEdit', 'Browse for file.'))
+ self.revert_button.setToolTip(translate('OpenLP.PathEdit', 'Revert to default file.'))
+
+ def on_browse_button_clicked(self):
+ """
+ A handler to handle a click on the browse button.
+
+ Show the QFileDialog and process the input from the user
+ :return: None
+ """
+ caption = self.dialog_caption
+ path = ''
+ if self._path_type == PathType.Directories:
+ if not caption:
+ caption = translate('OpenLP.PathEdit', 'Select Directory')
+ path = QtWidgets.QFileDialog.getExistingDirectory(self, caption,
+ self._path, QtWidgets.QFileDialog.ShowDirsOnly)
+ elif self._path_type == PathType.Files:
+ if not caption:
+ caption = self.dialog_caption = translate('OpenLP.PathEdit', 'Select File')
+ path, filter_used = QtWidgets.QFileDialog.getOpenFileName(self, caption, self._path, self.filters)
+ if path:
+ path = os.path.normpath(path)
+ self.on_new_path(path)
+
+ def on_revert_button_clicked(self):
+ """
+ A handler to handle a click on the revert button.
+
+ Set the new path to the value of the default_path instance variable.
+ :return: None
+ """
+ self.on_new_path(self.default_path)
+
+ def on_line_edit_editing_finished(self):
+ """
+ A handler to handle when the line edit has finished being edited.
+ :return: None
+ """
+ self.on_new_path(self.line_edit.text())
+
+ def on_new_path(self, path):
+ """
+ A method called to validate and set a new path.
+
+ Emits the pathChanged Signal
+
+ :param path: The new path
+ :type path: str
+
+ :return: None
+ """
+ if self._path != path:
+ self.path = path
+ self.pathChanged.emit(path)
=== modified file 'openlp/core/ui/mainwindow.py'
--- openlp/core/ui/mainwindow.py 2017-08-01 20:59:41 +0000
+++ openlp/core/ui/mainwindow.py 2017-08-03 05:07:54 +0000
@@ -34,12 +34,12 @@
from PyQt5 import QtCore, QtGui, QtWidgets
-from openlp.core.common import Registry, RegistryProperties, AppLocation, LanguageManager, Settings, \
+from openlp.core.common import Registry, RegistryProperties, AppLocation, LanguageManager, Settings, UiStrings, \
check_directory_exists, translate, is_win, is_macosx, add_actions
from openlp.core.common.actions import ActionList, CategoryOrder
from openlp.core.common.versionchecker import get_application_version
from openlp.core.lib import Renderer, PluginManager, ImageManager, PluginStatus, ScreenList, build_icon
-from openlp.core.lib.ui import UiStrings, create_action
+from openlp.core.lib.ui import create_action
from openlp.core.ui import AboutForm, SettingsForm, ServiceManager, ThemeManager, LiveController, PluginForm, \
ShortcutListForm, FormattingTagForm, PreviewController
from openlp.core.ui.firsttimeform import FirstTimeForm
@@ -370,7 +370,7 @@
"""
Set up the translation system
"""
- main_window.setWindowTitle(UiStrings().OLP)
+ main_window.setWindowTitle(UiStrings().OpenLP)
self.file_menu.setTitle(translate('OpenLP.MainWindow', '&File'))
self.file_import_menu.setTitle(translate('OpenLP.MainWindow', '&Import'))
self.file_export_menu.setTitle(translate('OpenLP.MainWindow', '&Export'))
@@ -1150,9 +1150,9 @@
:param file_name: The file name of the service file.
"""
if modified:
- title = '{title} - {name}*'.format(title=UiStrings().OLP, name=file_name)
+ title = '{title} - {name}*'.format(title=UiStrings().OpenLP, name=file_name)
else:
- title = '{title} - {name}'.format(title=UiStrings().OLP, name=file_name)
+ title = '{title} - {name}'.format(title=UiStrings().OpenLP, name=file_name)
self.setWindowTitle(title)
def show_status_message(self, message):
=== modified file 'openlp/core/ui/thememanager.py'
--- openlp/core/ui/thememanager.py 2017-08-01 20:59:41 +0000
+++ openlp/core/ui/thememanager.py 2017-08-03 05:07:54 +0000
@@ -31,7 +31,7 @@
from PyQt5 import QtCore, QtGui, QtWidgets
from openlp.core.common import Registry, RegistryProperties, AppLocation, Settings, OpenLPMixin, RegistryMixin, \
- check_directory_exists, UiStrings, translate, is_win, get_filesystem_encoding, delete_file
+ UiStrings, check_directory_exists, translate, is_win, get_filesystem_encoding, delete_file
from openlp.core.lib import FileDialog, ImageSource, ValidationError, get_text_file_string, build_icon, \
check_item_selected, create_thumb, validate_thumb
from openlp.core.lib.theme import Theme, BackgroundType
=== modified file 'openlp/plugins/alerts/alertsplugin.py'
--- openlp/plugins/alerts/alertsplugin.py 2017-05-30 18:42:35 +0000
+++ openlp/plugins/alerts/alertsplugin.py 2017-08-03 05:07:54 +0000
@@ -24,12 +24,12 @@
from PyQt5 import QtGui
-from openlp.core.common import Settings, translate
+from openlp.core.common import Settings, UiStrings, translate
from openlp.core.common.actions import ActionList
from openlp.core.lib import Plugin, StringContent, build_icon
from openlp.core.lib.db import Manager
from openlp.core.lib.theme import VerticalType
-from openlp.core.lib.ui import create_action, UiStrings
+from openlp.core.lib.ui import create_action
from openlp.core.ui import AlertLocation
from openlp.plugins.alerts.forms import AlertForm
from openlp.plugins.alerts.lib import AlertsManager, AlertsTab
=== modified file 'openlp/plugins/alerts/lib/alertstab.py'
--- openlp/plugins/alerts/lib/alertstab.py 2016-12-31 11:01:36 +0000
+++ openlp/plugins/alerts/lib/alertstab.py 2017-08-03 05:07:54 +0000
@@ -105,7 +105,7 @@
self.timeout_label.setText(translate('AlertsPlugin.AlertsTab', 'Alert timeout:'))
self.timeout_spin_box.setSuffix(' {unit}'.format(unit=UiStrings().Seconds))
self.preview_group_box.setTitle(UiStrings().Preview)
- self.font_preview.setText(UiStrings().OLPV2x)
+ self.font_preview.setText(UiStrings().OpenLP)
def on_background_color_changed(self, color):
"""
=== modified file 'openlp/plugins/bibles/bibleplugin.py'
--- openlp/plugins/bibles/bibleplugin.py 2017-06-04 09:52:15 +0000
+++ openlp/plugins/bibles/bibleplugin.py 2017-08-03 05:07:54 +0000
@@ -22,9 +22,10 @@
import logging
+from openlp.core.common import UiStrings
from openlp.core.common.actions import ActionList
from openlp.core.lib import Plugin, StringContent, build_icon, translate
-from openlp.core.lib.ui import UiStrings, create_action
+from openlp.core.lib.ui import create_action
from openlp.plugins.bibles.lib import BibleManager, BiblesTab, BibleMediaItem, LayoutStyle, DisplayStyle, \
LanguageSelection
from openlp.plugins.bibles.lib.mediaitem import BibleSearch
=== modified file 'openlp/plugins/presentations/lib/powerpointcontroller.py'
--- openlp/plugins/presentations/lib/powerpointcontroller.py 2017-05-31 19:29:43 +0000
+++ openlp/plugins/presentations/lib/powerpointcontroller.py 2017-08-03 05:07:54 +0000
@@ -34,15 +34,15 @@
if is_win():
from win32com.client import Dispatch
import win32con
+ import win32gui
+ import win32ui
import winreg
- import win32ui
- import win32gui
import pywintypes
+from openlp.core.common import Registry, UiStrings, trace_error_handler
from openlp.core.lib import ScreenList
-from openlp.core.lib.ui import UiStrings, critical_error_message_box, translate
-from openlp.core.common import trace_error_handler, Registry
+from openlp.core.lib.ui import critical_error_message_box, translate
from openlp.plugins.presentations.lib.presentationcontroller import PresentationController, PresentationDocument
log = logging.getLogger(__name__)
=== modified file 'openlp/plugins/remotes/lib/httprouter.py'
--- openlp/plugins/remotes/lib/httprouter.py 2017-08-01 20:59:41 +0000
+++ openlp/plugins/remotes/lib/httprouter.py 2017-08-03 05:07:54 +0000
@@ -277,7 +277,7 @@
Create a needs authorisation http header.
"""
self.send_response(401)
- header = 'Basic realm=\"{}\"'.format(UiStrings().OLPV2)
+ header = 'Basic realm=\"{}\"'.format(UiStrings().OpenLP)
self.send_header('WWW-Authenticate', header)
self.send_header('Content-type', 'text/html')
self.set_cache_headers()
@@ -322,10 +322,10 @@
chords = translate('RemotePlugin.Mobile', 'Chords View')
live = translate('RemotePlugin.Mobile', 'Live View')
self.template_vars = {
- 'app_title': "{main} {remote}".format(main=UiStrings().OLPV2x, remote=remote),
- 'stage_title': "{main} {stage}".format(main=UiStrings().OLPV2x, stage=stage),
- 'chords_title': "{main} {chords}".format(main=UiStrings().OLPV2x, chords=chords),
- 'live_title': "{main} {live}".format(main=UiStrings().OLPV2x, live=live),
+ 'app_title': "{main} {remote}".format(main=UiStrings().OpenLP, remote=remote),
+ 'stage_title': "{main} {stage}".format(main=UiStrings().OpenLP, stage=stage),
+ 'chords_title': "{main} {chords}".format(main=UiStrings().OpenLP, chords=chords),
+ 'live_title': "{main} {live}".format(main=UiStrings().OpenLP, live=live),
'service_manager': translate('RemotePlugin.Mobile', 'Service Manager'),
'slide_controller': translate('RemotePlugin.Mobile', 'Slide Controller'),
'alerts': translate('RemotePlugin.Mobile', 'Alerts'),
=== modified file 'openlp/plugins/songs/forms/editversedialog.py'
--- openlp/plugins/songs/forms/editversedialog.py 2017-04-20 20:23:17 +0000
+++ openlp/plugins/songs/forms/editversedialog.py 2017-08-03 05:07:54 +0000
@@ -22,10 +22,10 @@
from PyQt5 import QtWidgets
+from openlp.core.common import Settings, UiStrings
+from openlp.core.lib import build_icon, translate
+from openlp.core.lib.ui import create_button_box
from openlp.core.ui.lib import SpellTextEdit
-from openlp.core.lib import build_icon, translate
-from openlp.core.lib.ui import UiStrings, create_button_box
-from openlp.core.common import Settings
from openlp.plugins.songs.lib import VerseType
=== modified file 'openlp/plugins/songs/lib/importer.py'
--- openlp/plugins/songs/lib/importer.py 2017-05-30 18:50:39 +0000
+++ openlp/plugins/songs/lib/importer.py 2017-08-03 05:07:54 +0000
@@ -206,7 +206,7 @@
},
OpenLP2: {
'class': OpenLPSongImport,
- 'name': UiStrings().OLPV2,
+ 'name': UiStrings().OpenLPv2AndUp,
'prefix': 'openLP2',
'selectMode': SongFormatSelect.SingleFile,
'filter': '{text} (*.sqlite)'.format(text=translate('SongsPlugin.ImportWizardForm', 'OpenLP 2 Databases'))
=== modified file 'tests/functional/openlp_core/test_init.py'
--- tests/functional/openlp_core/test_init.py 2017-03-28 05:19:33 +0000
+++ tests/functional/openlp_core/test_init.py 2017-08-03 05:07:54 +0000
@@ -23,7 +23,7 @@
from unittest import TestCase, skip
from unittest.mock import MagicMock, patch
-from PyQt5 import QtWidgets
+from PyQt5 import QtCore, QtWidgets
from openlp.core import OpenLP, parse_options
@@ -225,3 +225,49 @@
MockedStandardButtons.assert_called_once_with(QtWidgets.QMessageBox.Yes | QtWidgets.QMessageBox.No)
mocked_critical.assert_called_once_with(None, 'Error', 'OpenLP is already running. Do you wish to continue?', 0)
assert result is True
+
+ def test_process_events(self):
+ """
+ Test that the app.process_events() method simply calls the Qt method
+ """
+ # GIVEN: An app
+ app = OpenLP([])
+
+ # WHEN: process_events() is called
+ with patch.object(app, 'processEvents') as mocked_processEvents:
+ app.process_events()
+
+ # THEN: processEvents was called
+ mocked_processEvents.assert_called_once_with()
+
+ def test_set_busy_cursor(self):
+ """
+ Test that the set_busy_cursor() method sets the cursor
+ """
+ # GIVEN: An app
+ app = OpenLP([])
+
+ # WHEN: set_busy_cursor() is called
+ with patch.object(app, 'setOverrideCursor') as mocked_setOverrideCursor, \
+ patch.object(app, 'processEvents') as mocked_processEvents:
+ app.set_busy_cursor()
+
+ # THEN: The cursor should have been set
+ mocked_setOverrideCursor.assert_called_once_with(QtCore.Qt.BusyCursor)
+ mocked_processEvents.assert_called_once_with()
+
+ def test_set_normal_cursor(self):
+ """
+ Test that the set_normal_cursor() method resets the cursor
+ """
+ # GIVEN: An app
+ app = OpenLP([])
+
+ # WHEN: set_normal_cursor() is called
+ with patch.object(app, 'restoreOverrideCursor') as mocked_restoreOverrideCursor, \
+ patch.object(app, 'processEvents') as mocked_processEvents:
+ app.set_normal_cursor()
+
+ # THEN: The cursor should have been set
+ mocked_restoreOverrideCursor.assert_called_once_with()
+ mocked_processEvents.assert_called_once_with()
=== modified file 'tests/functional/openlp_core_ui/test_mainwindow.py'
--- tests/functional/openlp_core_ui/test_mainwindow.py 2017-04-24 05:17:55 +0000
+++ tests/functional/openlp_core_ui/test_mainwindow.py 2017-08-03 05:07:54 +0000
@@ -28,9 +28,8 @@
from PyQt5 import QtWidgets
+from openlp.core.common import Registry, UiStrings
from openlp.core.ui.mainwindow import MainWindow
-from openlp.core.lib.ui import UiStrings
-from openlp.core.common.registry import Registry
from tests.helpers.testmixin import TestMixin
from tests.utils.constants import TEST_RESOURCES_PATH
@@ -109,9 +108,9 @@
# WHEN no changes are made to the service
- # THEN the main window's title shoud be the same as the OLP string in the UiStrings class
- self.assertEqual(self.main_window.windowTitle(), UiStrings().OLP,
- 'The main window\'s title should be the same as the OLP string in UiStrings class')
+ # THEN the main window's title shoud be the same as the OpenLP string in the UiStrings class
+ self.assertEqual(self.main_window.windowTitle(), UiStrings().OpenLP,
+ 'The main window\'s title should be the same as the OpenLP string in UiStrings class')
def test_set_service_modifed(self):
"""
@@ -123,8 +122,8 @@
self.main_window.set_service_modified(True, 'test.osz')
# THEN the main window's title should be set to the
- self.assertEqual(self.main_window.windowTitle(), '%s - %s*' % (UiStrings().OLP, 'test.osz'),
- 'The main window\'s title should be set to "<the contents of UiStrings().OLP> - test.osz*"')
+ self.assertEqual(self.main_window.windowTitle(), '%s - %s*' % (UiStrings().OpenLP, 'test.osz'),
+ 'The main window\'s title should be set to "<the contents of UiStrings().OpenLP> - test.osz*"')
def test_set_service_unmodified(self):
"""
@@ -136,8 +135,8 @@
self.main_window.set_service_modified(False, 'test.osz')
# THEN the main window's title should be set to the
- self.assertEqual(self.main_window.windowTitle(), '%s - %s' % (UiStrings().OLP, 'test.osz'),
- 'The main window\'s title should be set to "<the contents of UiStrings().OLP> - test.osz"')
+ self.assertEqual(self.main_window.windowTitle(), '%s - %s' % (UiStrings().OpenLP, 'test.osz'),
+ 'The main window\'s title should be set to "<the contents of UiStrings().OpenLP> - test.osz"')
def test_mainwindow_configuration(self):
"""
Follow ups