diff --git a/appveyor.yml b/appveyor.yml index c31ba4f0c..6ceab3cca 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -31,7 +31,7 @@ install: # Update pip - python -m pip install --upgrade pip # Install generic dependencies from pypi. - - python -m pip install sqlalchemy alembic appdirs chardet beautifulsoup4 lxml Mako mysql-connector-python pytest mock psycopg2-binary websockets waitress six requests QtAwesome PyQt6 PyQtWebEngine pymediainfo PyMuPDF QDarkStyle python-vlc flask-cors pytest-qt pyenchant pysword qrcode flask + - python -m pip install sqlalchemy alembic appdirs chardet beautifulsoup4 lxml Mako mysql-connector-python pytest mock psycopg2-binary websockets waitress six requests QtAwesome PySide6 pymediainfo PyMuPDF QDarkStyle python-vlc flask-cors pytest-qt pyenchant pysword qrcode flask # Install Windows only dependencies - cmd: python -m pip install pyodbc pypiwin32 - cmd: choco install vlc %CHOCO_VLC_ARG% --no-progress --limit-output diff --git a/openlp/core/api/deploy.py b/openlp/core/api/deploy.py index 8d527ac06..7a9d0626c 100644 --- a/openlp/core/api/deploy.py +++ b/openlp/core/api/deploy.py @@ -27,7 +27,7 @@ import re from datetime import date from zipfile import ZipFile -from PyQt6 import QtCore +from PySide6 import QtCore from openlp.core.common.applocation import AppLocation from openlp.core.common.httputils import download_file, get_web_page, get_openlp_user_agent @@ -45,8 +45,8 @@ class RemoteVersionWorker(ThreadWorker): A worker class to fetch the version of the web remote. This is run from within a thread so that it doesn't affect the loading time of OpenLP. """ - new_version = QtCore.pyqtSignal(str) - no_internet = QtCore.pyqtSignal() + new_version = QtCore.Signal(str) + no_internet = QtCore.Signal() def __init__(self, current_version): """ diff --git a/openlp/core/api/tab.py b/openlp/core/api/tab.py index 31a486485..e0ead0889 100644 --- a/openlp/core/api/tab.py +++ b/openlp/core/api/tab.py @@ -27,7 +27,7 @@ from qrcode.image.svg import SvgPathFillImage from time import sleep -from PyQt6 import QtCore, QtGui, QtWidgets +from PySide6 import QtCore, QtGui, QtWidgets from openlp.core.api.deploy import download_and_install, download_version_info, get_installed_version from openlp.core.common import get_network_interfaces diff --git a/openlp/core/api/versions/v1/core.py b/openlp/core/api/versions/v1/core.py index 99f922356..f1af930b1 100644 --- a/openlp/core/api/versions/v1/core.py +++ b/openlp/core/api/versions/v1/core.py @@ -19,7 +19,7 @@ # along with this program. If not, see . # ########################################################################## from flask import jsonify, Blueprint -from PyQt6 import QtCore +from PySide6 import QtCore from openlp.core.api.lib import old_auth, old_success_response from openlp.core.common.registry import Registry diff --git a/openlp/core/api/versions/v2/core.py b/openlp/core/api/versions/v2/core.py index d794faa1e..6f6fcb94b 100644 --- a/openlp/core/api/versions/v2/core.py +++ b/openlp/core/api/versions/v2/core.py @@ -21,7 +21,7 @@ import logging from flask import jsonify, request, abort, Blueprint -from PyQt6 import QtCore +from PySide6 import QtCore from openlp.core.api.lib import login_required from openlp.core.common.registry import Registry diff --git a/openlp/core/api/versions/v2/plugins.py b/openlp/core/api/versions/v2/plugins.py index 380f45104..66661a477 100644 --- a/openlp/core/api/versions/v2/plugins.py +++ b/openlp/core/api/versions/v2/plugins.py @@ -24,7 +24,7 @@ import json import re from flask import abort, request, Blueprint, jsonify, Response -from PyQt6 import QtCore +from PySide6 import QtCore from openlp.core.api.lib import login_required, extract_request, old_success_response, old_auth from openlp.core.lib.plugin import PluginStatus diff --git a/openlp/core/api/websockets.py b/openlp/core/api/websockets.py index 03f1af0f6..74a394f24 100644 --- a/openlp/core/api/websockets.py +++ b/openlp/core/api/websockets.py @@ -30,7 +30,7 @@ from dataclasses import asdict, dataclass from typing import Optional, Union import time -from PyQt6 import QtCore +from PySide6 import QtCore from websockets import serve from openlp.core.common.mixins import LogMixin, RegistryProperties @@ -207,7 +207,7 @@ class WebSocketServer(RegistryBase, RegistryProperties, QtCore.QObject, LogMixin """ Wrapper round a server instance """ - _send_message_signal = QtCore.pyqtSignal(WebSocketMessage) + _send_message_signal = QtCore.Signal(WebSocketMessage) def __init__(self): """ @@ -231,7 +231,7 @@ class WebSocketServer(RegistryBase, RegistryProperties, QtCore.QObject, LogMixin # Only hooking poller signals after all UI is available Registry().register_function('bootstrap_completion', self.try_poller_hook_signals) - @QtCore.pyqtSlot() + @QtCore.Slot() def handle_poller_signal(self): if self.worker is not None: self.worker.add_state_to_queues(poller.get_state()) diff --git a/openlp/core/api/websocketspoll.py b/openlp/core/api/websocketspoll.py index deacbc745..833c2aec7 100644 --- a/openlp/core/api/websocketspoll.py +++ b/openlp/core/api/websocketspoll.py @@ -18,7 +18,7 @@ # You should have received a copy of the GNU General Public License # # along with this program. If not, see . # ########################################################################## -from PyQt6 import QtCore +from PySide6 import QtCore from openlp.core.common.mixins import RegistryProperties @@ -27,7 +27,7 @@ class WebSocketPoller(QtCore.QObject, RegistryProperties): Accessed by web sockets to get status type information from the application """ - poller_changed = QtCore.pyqtSignal() + poller_changed = QtCore.Signal() def __init__(self): """ @@ -67,9 +67,9 @@ class WebSocketPoller(QtCore.QObject, RegistryProperties): except Exception: pass - @QtCore.pyqtSlot(list) - @QtCore.pyqtSlot(str) - @QtCore.pyqtSlot() + @QtCore.Slot(list) + @QtCore.Slot(str) + @QtCore.Slot() def on_signal_received(self): self._state = self.create_state() self.poller_changed.emit() diff --git a/openlp/core/app.py b/openlp/core/app.py index c5ddb530a..889595ce1 100644 --- a/openlp/core/app.py +++ b/openlp/core/app.py @@ -35,7 +35,7 @@ from pathlib import Path from shutil import copytree, move from traceback import format_exception -from PyQt6 import QtCore, QtWebEngineCore, QtWidgets # noqa +from PySide6 import QtCore, QtWebEngineCore, QtWidgets # noqa from openlp.core.api.deploy import check_for_remote_update from openlp.core.common.applocation import AppLocation @@ -423,7 +423,7 @@ def apply_dpi_adjustments_stage_application(hidpi_mode: HiDPIMode, application: """ if hidpi_mode == HiDPIMode.Default and is_win() and application.devicePixelRatio() > 1.0: # Increasing font size to match pixel ratio (Windows only) - # TODO: Review on PyQt6 migration + # TODO: Review on Qt6 migration font = application.font() font.setPointSizeF(font.pointSizeF() * application.devicePixelRatio()) application.setFont(font) @@ -472,14 +472,14 @@ def main(): qt_args.extend(['-platform', 'windows:darkmode=1']) elif is_macosx() and getattr(sys, 'frozen', False) and not os.environ.get('QTWEBENGINEPROCESS_PATH'): # Work around an issue where PyInstaller is not setting this environment variable - os.environ['QTWEBENGINEPROCESS_PATH'] = str(AppLocation.get_directory(AppLocation.AppDir) / 'PyQt6' / 'Qt6' / + os.environ['QTWEBENGINEPROCESS_PATH'] = str(AppLocation.get_directory(AppLocation.AppDir) / 'PySide6' / 'Qt6' / 'lib' / 'QtWebEngineCore.framework' / 'Versions' / '6' / 'Helpers' / 'QtWebEngineProcess.app' / 'Contents' / 'MacOS' / 'QtWebEngineProcess') no_custom_factor_rounding = not ('QT_SCALE_FACTOR_ROUNDING_POLICY' in os.environ and bool(os.environ['QT_SCALE_FACTOR_ROUNDING_POLICY'].strip())) if no_custom_factor_rounding: - # TODO Won't be needed on PyQt6 + # TODO Won't be needed on PySide6 os.environ['QT_SCALE_FACTOR_ROUNDING_POLICY'] = 'PassThrough' # Initialise the resources qInitResources() @@ -505,7 +505,7 @@ def main(): # Doing HiDPI adjustments that need to be done after QCoreApplication instantiation. apply_dpi_adjustments_stage_application(hidpi_mode, application) if no_custom_factor_rounding and hasattr(QtWidgets.QApplication, 'setHighDpiScaleFactorRoundingPolicy'): - # TODO: Check won't be needed on PyQt6 + # TODO: Check won't be needed on PySide6 application.setHighDpiScaleFactorRoundingPolicy(QtCore.Qt.HighDpiScaleFactorRoundingPolicy.PassThrough) if is_win() and application.devicePixelRatio() > 1.0: # Increasing font size to match pixel ratio (Windows only) diff --git a/openlp/core/common/__init__.py b/openlp/core/common/__init__.py index 584666d8a..7c48b1b49 100644 --- a/openlp/core/common/__init__.py +++ b/openlp/core/common/__init__.py @@ -31,9 +31,9 @@ import traceback from ipaddress import IPv4Address, IPv6Address, AddressValueError from shutil import which -from PyQt6 import QtGui -from PyQt6.QtCore import QCryptographicHash as QHash -from PyQt6.QtNetwork import QAbstractSocket, QHostAddress, QNetworkInterface +from PySide6 import QtGui +from PySide6.QtCore import QCryptographicHash as QHash +from PySide6.QtNetwork import QAbstractSocket, QHostAddress, QNetworkInterface from chardet.universaldetector import UniversalDetector log = logging.getLogger(__name__ + '.__init__') @@ -284,7 +284,7 @@ def sha256_file_hash(filename): def qmd5_hash(salt=None, data=None): """ Returns the hashed output of MD5Sum on salt, data - using PyQt6.QCryptographicHash. Function returns a + using PySide6.QCryptographicHash. Function returns a QByteArray instead of a text string. If you need a string instead, call with diff --git a/openlp/core/common/actions.py b/openlp/core/common/actions.py index 973ea8ff7..380b1a8b7 100644 --- a/openlp/core/common/actions.py +++ b/openlp/core/common/actions.py @@ -24,7 +24,7 @@ by the shortcuts system. """ import logging -from PyQt6 import QtCore, QtGui +from PySide6 import QtCore, QtGui from openlp.core.common.registry import Registry diff --git a/openlp/core/common/handlers.py b/openlp/core/common/handlers.py index 35b487ccf..0a43bbc74 100644 --- a/openlp/core/common/handlers.py +++ b/openlp/core/common/handlers.py @@ -26,7 +26,7 @@ from contextlib import contextmanager from pathlib import Path from typing import Optional -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.common.i18n import translate diff --git a/openlp/core/common/httputils.py b/openlp/core/common/httputils.py index 73c9ba7cb..c8e7e9cb8 100644 --- a/openlp/core/common/httputils.py +++ b/openlp/core/common/httputils.py @@ -30,7 +30,7 @@ from random import randint from tempfile import gettempdir import requests -from PyQt6 import QtCore +from PySide6 import QtCore from openlp.core.common import trace_error_handler from openlp.core.common.registry import Registry @@ -249,8 +249,8 @@ class DownloadWorker(ThreadWorker): """ This worker allows a file to be downloaded in a thread """ - download_failed = QtCore.pyqtSignal() - download_succeeded = QtCore.pyqtSignal(Path) + download_failed = QtCore.Signal() + download_succeeded = QtCore.Signal(Path) def __init__(self, base_url, file_name): """ @@ -283,7 +283,7 @@ class DownloadWorker(ThreadWorker): time.sleep(1) self.quit.emit() - @QtCore.pyqtSlot() + @QtCore.Slot() def cancel_download(self): """ A slot to allow the download to be cancelled from outside of the thread diff --git a/openlp/core/common/i18n.py b/openlp/core/common/i18n.py index 939ccdcb2..fcc6369ae 100644 --- a/openlp/core/common/i18n.py +++ b/openlp/core/common/i18n.py @@ -27,7 +27,7 @@ import logging import re from collections import namedtuple -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common import Singleton from openlp.core.common.applocation import AppLocation diff --git a/openlp/core/common/platform.py b/openlp/core/common/platform.py index cdaa9393a..222ee9421 100644 --- a/openlp/core/common/platform.py +++ b/openlp/core/common/platform.py @@ -110,7 +110,7 @@ def is_xorg_platform(): :return: True if the Qt is running on X.org/XWayland display server (Linux/*nix), otherwise False. """ - from PyQt6 import QtGui + from PySide6 import QtGui return QtGui.QGuiApplication.platformName() == 'xcb' @@ -120,5 +120,5 @@ def is_wayland_platform(): :return: True if the OpenLP/Qt instance is running in a Wayland compositor, otherwise False """ - from PyQt6 import QtGui + from PySide6 import QtGui return QtGui.QGuiApplication.platformName() == 'wayland' diff --git a/openlp/core/common/settings.py b/openlp/core/common/settings.py index 4d92b02da..87f3a930d 100644 --- a/openlp/core/common/settings.py +++ b/openlp/core/common/settings.py @@ -29,7 +29,7 @@ from enum import IntEnum from pathlib import Path from tempfile import gettempdir -from PyQt6 import QtCore, QtGui +from PySide6 import QtCore, QtGui from openlp.core.common import SlideLimits, ThemeLevel from openlp.core.common.enum import AlertLocation, BibleSearch, CustomSearch, HiDPIMode, ImageThemeMode, LayoutStyle, \ diff --git a/openlp/core/display/render.py b/openlp/core/display/render.py index 31ef78897..39b74034e 100644 --- a/openlp/core/display/render.py +++ b/openlp/core/display/render.py @@ -28,7 +28,7 @@ import math import os import re -from PyQt6 import QtWidgets, QtGui +from PySide6 import QtWidgets, QtGui from openlp.core.common import ThemeLevel from openlp.core.common.enum import ServiceItemType diff --git a/openlp/core/display/screens.py b/openlp/core/display/screens.py index 0c733bbc8..0322dcedc 100644 --- a/openlp/core/display/screens.py +++ b/openlp/core/display/screens.py @@ -26,7 +26,7 @@ import logging import copy from functools import cmp_to_key -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common import Singleton from openlp.core.common.i18n import translate diff --git a/openlp/core/display/webengine.py b/openlp/core/display/webengine.py index fcab5ad66..4d8ee3ffe 100644 --- a/openlp/core/display/webengine.py +++ b/openlp/core/display/webengine.py @@ -25,7 +25,7 @@ Heavily inspired by https://stackoverflow.com/questions/33467776/qt-qwebengine-r import logging import os.path -from PyQt6 import QtCore, QtWebEngineCore, QtWebEngineWidgets, QtWidgets +from PySide6 import QtCore, QtWebEngineCore, QtWebEngineWidgets, QtWidgets from typing import Tuple from openlp.core.common import Singleton @@ -68,7 +68,7 @@ class WebEngineView(QtWebEngineWidgets.QWebEngineView): and set some attributtes. """ _child = None # QtWidgets.QOpenGLWidget or QWidget? - delegatePaint = QtCore.pyqtSignal() + delegatePaint = QtCore.Signal() def __init__(self, parent=None): """ diff --git a/openlp/core/display/window.py b/openlp/core/display/window.py index 69b111bbd..a290acc09 100644 --- a/openlp/core/display/window.py +++ b/openlp/core/display/window.py @@ -27,7 +27,7 @@ import os import copy import re -from PyQt6 import QtCore, QtWebChannel, QtWidgets +from PySide6 import QtCore, QtWebChannel, QtWidgets from openlp.core.common.enum import ServiceItemType from openlp.core.common.i18n import translate @@ -49,7 +49,7 @@ class DisplayWatcher(QtCore.QObject): """ This facilitates communication from the Display object in the browser back to the Python """ - initialised = QtCore.pyqtSignal(bool) + initialised = QtCore.Signal(bool) def __init__(self, parent, window_title=None): super().__init__() @@ -59,11 +59,11 @@ class DisplayWatcher(QtCore.QObject): self._event_counter = 0 self._window_title = window_title - @QtCore.pyqtSlot(result=str) + @QtCore.Slot(result=str) def getWindowTitle(self): return self._window_title - @QtCore.pyqtSlot(bool) + @QtCore.Slot(bool) def setInitialised(self, is_initialised): """ This method is called from the JS in the browser to set the _is_initialised attribute @@ -71,14 +71,14 @@ class DisplayWatcher(QtCore.QObject): log.info('Display is initialised: {init}'.format(init=is_initialised)) self.initialised.emit(is_initialised) - @QtCore.pyqtSlot() + @QtCore.Slot() def pleaseRepaint(self): """ Called from the js in the webengine view when it's requesting a repaint by Qt """ self._display_window.webview.update() - @QtCore.pyqtSlot(str, 'QJsonObject') + @QtCore.Slot(str, 'QJsonObject') def dispatchEvent(self, event_name, event_data): """ Called from the js in the webengine view for event dispatches @@ -562,13 +562,13 @@ class DisplayWindow(QtWidgets.QWidget, RegistryProperties, LogMixin): """ self._run_javascript('Display.alert("{text}", {settings});'.format(text=text, settings=settings)) - @QtCore.pyqtSlot(result='QPixmap') + @QtCore.Slot(result='QPixmap') def _grab_screenshot_safe_signal(self): return self.save_screenshot() def grab_screenshot_safe(self): # Using internal Qt's messaging/event system to invoke the function. - # Usually we would need to use PyQt's signals, but they aren't blocking. So we had to resort to this solution, + # Usually we would need to use PySide's signals, but they aren't blocking. So we had to resort to this solution, # which use a less-documented Qt mechanism to invoke the signal in a blocking way. return QtCore.QMetaObject.invokeMethod(self, '_grab_screenshot_safe_signal', QtCore.Qt.ConnectionType.BlockingQueuedConnection, diff --git a/openlp/core/lib/__init__.py b/openlp/core/lib/__init__.py index 033678a98..39ab5e4b5 100644 --- a/openlp/core/lib/__init__.py +++ b/openlp/core/lib/__init__.py @@ -28,7 +28,7 @@ import base64 from enum import IntEnum from pathlib import Path -from PyQt6 import QtCore, QtGui, QtWidgets +from PySide6 import QtCore, QtGui, QtWidgets from openlp.core.common.i18n import UiStrings, translate diff --git a/openlp/core/lib/filelock.py b/openlp/core/lib/filelock.py index eb83d84ad..8d646dbad 100644 --- a/openlp/core/lib/filelock.py +++ b/openlp/core/lib/filelock.py @@ -33,7 +33,7 @@ import time from datetime import datetime from threading import Timer -from PyQt6 import QtWidgets # noqa +from PySide6 import QtWidgets # noqa from openlp.core.common.i18n import translate diff --git a/openlp/core/lib/mediamanageritem.py b/openlp/core/lib/mediamanageritem.py index 5bf56c904..84ba70054 100644 --- a/openlp/core/lib/mediamanageritem.py +++ b/openlp/core/lib/mediamanageritem.py @@ -23,7 +23,7 @@ Provides the generic functions for interfacing plugins with the Media Manager. """ import re -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import UiStrings, translate from openlp.core.common.mixins import LogMixin, RegistryProperties diff --git a/openlp/core/lib/pluginmanager.py b/openlp/core/lib/pluginmanager.py index 2ce7f8ab8..9915bc1c2 100644 --- a/openlp/core/lib/pluginmanager.py +++ b/openlp/core/lib/pluginmanager.py @@ -23,7 +23,7 @@ Provide plugin management """ import os -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.state import State, MessageType from openlp.core.common import extension_loader diff --git a/openlp/core/lib/serviceitem.py b/openlp/core/lib/serviceitem.py index e46ed542e..d7a5a6e48 100644 --- a/openlp/core/lib/serviceitem.py +++ b/openlp/core/lib/serviceitem.py @@ -30,7 +30,7 @@ from copy import deepcopy from pathlib import Path from shutil import copytree, copy, move -from PyQt6 import QtGui +from PySide6 import QtGui from openlp.core.common import ThemeLevel, sha256_file_hash from openlp.core.common.applocation import AppLocation diff --git a/openlp/core/lib/settingstab.py b/openlp/core/lib/settingstab.py index d82906261..5de55d8ad 100644 --- a/openlp/core/lib/settingstab.py +++ b/openlp/core/lib/settingstab.py @@ -22,7 +22,7 @@ The :mod:`~openlp.core.lib.settingstab` module contains the base SettingsTab class which plugins use for adding their own tab to the settings dialog. """ -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.common.mixins import RegistryProperties diff --git a/openlp/core/lib/ui.py b/openlp/core/lib/ui.py index 8e403f5fb..f1b16ad9c 100644 --- a/openlp/core/lib/ui.py +++ b/openlp/core/lib/ui.py @@ -23,7 +23,7 @@ The :mod:`ui` module provides standard UI components for OpenLP. """ import logging -from PyQt6 import QtCore, QtGui, QtWidgets +from PySide6 import QtCore, QtGui, QtWidgets from openlp.core.common.actions import ActionList from openlp.core.common.i18n import UiStrings, translate diff --git a/openlp/core/pages/__init__.py b/openlp/core/pages/__init__.py index 0785bc6ad..9f0548236 100644 --- a/openlp/core/pages/__init__.py +++ b/openlp/core/pages/__init__.py @@ -21,7 +21,7 @@ """ The :mod:`~openlp.core.pages` module contains wizard pages used in OpenLP """ -from PyQt6 import QtWidgets +from PySide6 import QtWidgets class GridLayoutPage(QtWidgets.QWizardPage): diff --git a/openlp/core/pages/alignment.py b/openlp/core/pages/alignment.py index b2289dccb..484e1d16f 100644 --- a/openlp/core/pages/alignment.py +++ b/openlp/core/pages/alignment.py @@ -21,7 +21,7 @@ """ The :mod:`~openlp.core.pages.alignment` module contains the alignment page used in the theme wizard """ -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.common.i18n import translate from openlp.core.lib.theme import HorizontalType, VerticalType, TransitionType, TransitionSpeed, TransitionDirection diff --git a/openlp/core/pages/areaposition.py b/openlp/core/pages/areaposition.py index 3fec160df..fa183af8d 100644 --- a/openlp/core/pages/areaposition.py +++ b/openlp/core/pages/areaposition.py @@ -21,7 +21,7 @@ """ The :mod:`~openlp.core.pages.areaposition` module contains the area position page used in the theme wizard """ -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.common.i18n import translate from openlp.core.pages import GridLayoutPage diff --git a/openlp/core/pages/background.py b/openlp/core/pages/background.py index c06ce041e..61134c115 100644 --- a/openlp/core/pages/background.py +++ b/openlp/core/pages/background.py @@ -21,7 +21,7 @@ """ The :mod:`~openlp.core.pages.background` module contains the background page used in the theme wizard """ -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.common import get_images_filter from openlp.core.common.i18n import UiStrings, translate diff --git a/openlp/core/pages/fontselect.py b/openlp/core/pages/fontselect.py index f0bf858e2..eee86cd27 100644 --- a/openlp/core/pages/fontselect.py +++ b/openlp/core/pages/fontselect.py @@ -21,7 +21,7 @@ """ The :mod:`~openlp.core.pages.fontselect` module contains the font selection page used in the theme wizard """ -from PyQt6 import QtCore, QtGui, QtWidgets +from PySide6 import QtCore, QtGui, QtWidgets from openlp.core.common.i18n import UiStrings, translate from openlp.core.pages import GridLayoutPage @@ -39,19 +39,19 @@ class FontSelectPage(GridLayoutPage): LineSpacing = 'line_spacing' LetterSpacing = 'letter_spacing' - font_name_changed = QtCore.pyqtSignal(str) - font_size_changed = QtCore.pyqtSignal(int) - font_color_changed = QtCore.pyqtSignal(str) - is_bold_changed = QtCore.pyqtSignal(bool) - is_italic_changed = QtCore.pyqtSignal(bool) - line_spacing_changed = QtCore.pyqtSignal(int) - letter_spacing_changed = QtCore.pyqtSignal(int) - is_outline_enabled_changed = QtCore.pyqtSignal(bool) - outline_color_changed = QtCore.pyqtSignal(str) - outline_size_changed = QtCore.pyqtSignal(int) - is_shadow_enabled_changed = QtCore.pyqtSignal(bool) - shadow_color_changed = QtCore.pyqtSignal(str) - shadow_size_changed = QtCore.pyqtSignal(int) + font_name_changed = QtCore.Signal(str) + font_size_changed = QtCore.Signal(int) + font_color_changed = QtCore.Signal(str) + is_bold_changed = QtCore.Signal(bool) + is_italic_changed = QtCore.Signal(bool) + line_spacing_changed = QtCore.Signal(int) + letter_spacing_changed = QtCore.Signal(int) + is_outline_enabled_changed = QtCore.Signal(bool) + outline_color_changed = QtCore.Signal(str) + outline_size_changed = QtCore.Signal(int) + is_shadow_enabled_changed = QtCore.Signal(bool) + shadow_color_changed = QtCore.Signal(str) + shadow_size_changed = QtCore.Signal(int) def __init__(self, parent=None): super().__init__(parent) diff --git a/openlp/core/projectors/editform.py b/openlp/core/projectors/editform.py index f6d0911b6..8e4faec3e 100644 --- a/openlp/core/projectors/editform.py +++ b/openlp/core/projectors/editform.py @@ -24,7 +24,7 @@ database. """ import logging -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common import verify_ip_address, Singleton from openlp.core.common.i18n import translate @@ -223,7 +223,7 @@ class ProjectorEditForm(QtWidgets.QDialog, Ui_ProjectorEditForm): location = Column(String(30)) notes = Column(String(200)) """ - updateProjectors = QtCore.pyqtSignal() + updateProjectors = QtCore.Signal() def __init__(self, parent=None, projectordb=None): self.parent = parent @@ -265,7 +265,7 @@ class ProjectorEditForm(QtWidgets.QDialog, Ui_ProjectorEditForm): reply = QtWidgets.QDialog.exec(self) return reply - @QtCore.pyqtSlot() + @QtCore.Slot() def accept_me(self): """ Validate inputs before accepting. @@ -343,14 +343,14 @@ class ProjectorEditForm(QtWidgets.QDialog, Ui_ProjectorEditForm): self.projector = None self.close() - @QtCore.pyqtSlot() + @QtCore.Slot() def help_me(self): """ Show a help message about the input fields. """ log.debug('help_me() signal received') - @QtCore.pyqtSlot() + @QtCore.Slot() def cancel_me(self): """ Cancel button clicked - just close. diff --git a/openlp/core/projectors/manager.py b/openlp/core/projectors/manager.py index 52f73a179..d3927f081 100644 --- a/openlp/core/projectors/manager.py +++ b/openlp/core/projectors/manager.py @@ -26,7 +26,7 @@ Provides the functions for the display/control of Projectors. import logging -from PyQt6 import QtCore, QtGui, QtWidgets +from PySide6 import QtCore, QtGui, QtWidgets from openlp.core.common.i18n import translate from openlp.core.common.mixins import LogMixin, RegistryProperties @@ -417,7 +417,7 @@ class ProjectorManager(QtWidgets.QWidget, RegistryBase, UiProjectorManager, LogM Builds menu for 'Select Input' option, then calls the selected projector item to change input source. - :param opt: Needed by PyQt6 + :param opt: Needed by PySide6 """ self.get_settings() # In case the dialog interface setting was changed list_item = self.projector_list_widget.item(self.projector_list_widget.currentRow()) @@ -443,7 +443,7 @@ class ProjectorManager(QtWidgets.QWidget, RegistryBase, UiProjectorManager, LogM """ Calls edit dialog to add a new projector to the database - :param opt: Needed by PyQt6 + :param opt: Needed by PySide6 """ self.projector_form.exec() @@ -490,7 +490,7 @@ class ProjectorManager(QtWidgets.QWidget, RegistryBase, UiProjectorManager, LogM """ Deletes a projector from the list and the database - :param opt: Needed by PyQt6 + :param opt: Needed by PySide6 """ list_item = self.projector_list_widget.item(self.projector_list_widget.currentRow()) if list_item is None: @@ -567,7 +567,7 @@ class ProjectorManager(QtWidgets.QWidget, RegistryBase, UiProjectorManager, LogM """ Calls edit dialog with selected projector to edit information - :param opt: Needed by PyQt6 + :param opt: Needed by PySide6 """ list_item = self.projector_list_widget.item(self.projector_list_widget.currentRow()) projector = list_item.data(QtCore.Qt.ItemDataRole.UserRole) @@ -621,7 +621,7 @@ class ProjectorManager(QtWidgets.QWidget, RegistryBase, UiProjectorManager, LogM """ Builds message box with projector status information - :param opt: Needed by PyQt6 + :param opt: Needed by PySide6 """ lwi = self.projector_list_widget.item(self.projector_list_widget.currentRow()) projector = lwi.data(QtCore.Qt.ItemDataRole.UserRole) @@ -701,7 +701,7 @@ class ProjectorManager(QtWidgets.QWidget, RegistryBase, UiProjectorManager, LogM """ Calls edit dialog as readonly with selected projector to show information - :param opt: Needed by PyQt6 + :param opt: Needed by PySide6 """ list_item = self.projector_list_widget.item(self.projector_list_widget.currentRow()) projector = list_item.data(QtCore.Qt.ItemDataRole.UserRole) @@ -752,19 +752,19 @@ class ProjectorManager(QtWidgets.QWidget, RegistryBase, UiProjectorManager, LogM for item in self.projector_list: log.debug(f'New projector list - item: ({item.pjlink.ip}) {item.pjlink.name}') - @QtCore.pyqtSlot(str) + @QtCore.Slot(str) def add_projector_from_wizard(self, ip, opts=None): """ Add a projector from the edit dialog :param ip: IP address of new record item to find - :param opts: Needed by PyQt6 + :param opts: Needed by PySide6 """ log.debug(f'add_projector_from_wizard(ip={ip})') item = self.projectordb.get_projector_by_ip(ip) self.add_projector(item) - @QtCore.pyqtSlot(object) + @QtCore.Slot(object) def edit_projector_from_wizard(self, projector): """ Update projector from the wizard edit page @@ -809,7 +809,7 @@ class ProjectorManager(QtWidgets.QWidget, RegistryBase, UiProjectorManager, LogM """ return self.projector_list - @QtCore.pyqtSlot(str, int, str) + @QtCore.Slot(str, int, str) def update_status(self, ip, status=None, msg=None): """ Update the status information/icon for selected list item @@ -846,7 +846,7 @@ class ProjectorManager(QtWidgets.QWidget, RegistryBase, UiProjectorManager, LogM item.setVisible(False if hidden else True) item.setEnabled(True if enabled else False) - @QtCore.pyqtSlot() + @QtCore.Slot() def update_icons(self): """ Update the icons when the selected projectors change @@ -924,7 +924,7 @@ class ProjectorManager(QtWidgets.QWidget, RegistryBase, UiProjectorManager, LogM self.get_toolbar_item('blank_projector_multiple', hidden=False, enabled=True) self.get_toolbar_item('show_projector_multiple', hidden=False, enabled=True) - @QtCore.pyqtSlot(str) + @QtCore.Slot(str) def authentication_error(self, name): """ Display warning dialog when attempting to connect with invalid pin @@ -938,7 +938,7 @@ class ProjectorManager(QtWidgets.QWidget, RegistryBase, UiProjectorManager, LogM '

Please verify your PIN setting ' 'for projector item "{name}"'.format(name=name)) - @QtCore.pyqtSlot(str) + @QtCore.Slot(str) def no_authentication_error(self, name): """ Display warning dialog when pin saved for item but projector does not diff --git a/openlp/core/projectors/pjlink.py b/openlp/core/projectors/pjlink.py index 719856570..979121c1c 100644 --- a/openlp/core/projectors/pjlink.py +++ b/openlp/core/projectors/pjlink.py @@ -49,7 +49,7 @@ import logging from codecs import decode from copy import copy -from PyQt6 import QtCore, QtNetwork +from PySide6 import QtCore, QtNetwork from openlp.core.common import qmd5_hash from openlp.core.common.i18n import translate @@ -81,7 +81,7 @@ class PJLinkUDP(QtNetwork.QUdpSocket): Socket service for PJLink UDP socket. """ - data_received = QtCore.pyqtSignal(QtNetwork.QHostAddress, int, str, name='udp_data') # host, port, data + data_received = QtCore.Signal(QtNetwork.QHostAddress, int, str, name='udp_data') # host, port, data def __init__(self, port=PJLINK_PORT): """ @@ -121,7 +121,7 @@ class PJLinkUDP(QtNetwork.QUdpSocket): self.close() self.readyRead.disconnect(self.get_datagram) - @QtCore.pyqtSlot() + @QtCore.Slot() def get_datagram(self): """ Retrieve packet and basic checks @@ -153,7 +153,7 @@ class PJLinkUDP(QtNetwork.QUdpSocket): # TODO: Send SRCH packet here self.search_timer.singleShot(self.search_time, self.search_stop) - @QtCore.pyqtSlot() + @QtCore.Slot() def search_stop(self): """ Stop search @@ -186,12 +186,12 @@ class PJLink(QtNetwork.QTcpSocket): Socket services for PJLink TCP packets. """ # Signals sent by this module - projectorChangeStatus = QtCore.pyqtSignal(str, int, str) - projectorStatus = QtCore.pyqtSignal(int) # Status update - projectorAuthentication = QtCore.pyqtSignal(str) # Authentication error - projectorNoAuthentication = QtCore.pyqtSignal(str) # PIN set and no authentication needed - projectorReceivedData = QtCore.pyqtSignal() # Notify when received data finished processing - projectorUpdateIcons = QtCore.pyqtSignal() # Update the status icons on toolbar + projectorChangeStatus = QtCore.Signal(str, int, str) + projectorStatus = QtCore.Signal(int) # Status update + projectorAuthentication = QtCore.Signal(str) # Authentication error + projectorNoAuthentication = QtCore.Signal(str) # PIN set and no authentication needed + projectorReceivedData = QtCore.Signal() # Notify when received data finished processing + projectorUpdateIcons = QtCore.Signal() # Update the status icons on toolbar # Deprecated changeStatus = projectorChangeStatus # Use projectorChangeStatus @@ -421,7 +421,7 @@ class PJLink(QtNetwork.QTcpSocket): self.changeStatus.emit(self.ip, status, message) self.projectorUpdateIcons.emit() - @QtCore.pyqtSlot() + @QtCore.Slot() def check_login(self, data=None): """ Processes the initial connection and convert to a PJLink packet if valid initial connection @@ -481,7 +481,7 @@ class PJLink(QtNetwork.QTcpSocket): log.debug(f'({self.entry.name}) Finished cleaning buffer - {trash_count} bytes dropped') return - @QtCore.pyqtSlot(QtNetwork.QHostAddress, int, str, name='udp_data') # host, port, data + @QtCore.Slot(QtNetwork.QHostAddress, int, str, name='udp_data') # host, port, data def get_buffer(self, host, port, data): """ Get data from somewhere other than TCP socket @@ -497,7 +497,7 @@ class PJLink(QtNetwork.QTcpSocket): else: log.debug(f'({self.entry.name}) Ignoring data for {host.toString()} - not me') - @QtCore.pyqtSlot() + @QtCore.Slot() def get_socket(self): """ Get data from TCP socket. @@ -614,7 +614,7 @@ class PJLink(QtNetwork.QTcpSocket): return - @QtCore.pyqtSlot(QtNetwork.QAbstractSocket.SocketError) + @QtCore.Slot(QtNetwork.QAbstractSocket.SocketError) def get_error(self, err): """ Process error from SocketError signal. @@ -681,7 +681,7 @@ class PJLink(QtNetwork.QTcpSocket): # May be some initial connection setup so make sure we send data self._send_command() - @QtCore.pyqtSlot() + @QtCore.Slot() def _send_command(self, data=None, utf8=False): """ Socket interface to send data. If data=None, then check queue. @@ -748,7 +748,7 @@ class PJLink(QtNetwork.QTcpSocket): self.change_status(S_CONNECTING) self.connectToHost(self.ip, self.port) - @QtCore.pyqtSlot() + @QtCore.Slot() def disconnect_from_host(self, abort=False): """ Close socket and cleanup. diff --git a/openlp/core/projectors/sourceselectform.py b/openlp/core/projectors/sourceselectform.py index b97413af7..fce2edd7f 100644 --- a/openlp/core/projectors/sourceselectform.py +++ b/openlp/core/projectors/sourceselectform.py @@ -25,7 +25,7 @@ Provides the dialog window for selecting video source for projector. """ import logging -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import translate from openlp.core.common.platform import is_macosx @@ -309,7 +309,7 @@ class SourceSelectTabs(QtWidgets.QDialog): selected = super(SourceSelectTabs, self).exec() return selected - @QtCore.pyqtSlot(QtWidgets.QAbstractButton) + @QtCore.Slot(QtWidgets.QAbstractButton) def button_clicked(self, button): """ Checks which button was clicked @@ -456,7 +456,7 @@ class SourceSelectSingle(QtWidgets.QDialog): selected = super(SourceSelectSingle, self).exec() return selected - @QtCore.pyqtSlot(QtWidgets.QAbstractButton) + @QtCore.Slot(QtWidgets.QAbstractButton) def button_clicked(self, button): """ Checks which button was clicked @@ -492,7 +492,7 @@ class SourceSelectSingle(QtWidgets.QDialog): self.projectordb.delete_all_objects(ProjectorSource, ProjectorSource.projector_id == self.projector.db_item.id) self.done(100) - @QtCore.pyqtSlot() + @QtCore.Slot() def accept_me(self): """ Slot to accept 'OK' button diff --git a/openlp/core/projectors/tab.py b/openlp/core/projectors/tab.py index 7ae1b71e7..2a7c201f7 100644 --- a/openlp/core/projectors/tab.py +++ b/openlp/core/projectors/tab.py @@ -23,7 +23,7 @@ The :mod:`openlp.core.ui.projector.tab` module provides the settings tab in the """ import logging -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.common.i18n import UiStrings, translate from openlp.core.common.registry import Registry diff --git a/openlp/core/resources.py b/openlp/core/resources.py index b90dccad7..9b3879ea3 100644 --- a/openlp/core/resources.py +++ b/openlp/core/resources.py @@ -22,7 +22,7 @@ The :mod:`resources` module provides application images and icons in a central store for use by OpenLP. """ -from PyQt6 import QtCore +from PySide6 import QtCore qt_resource_data = b"\ \x00\x00\x03\x2f\ diff --git a/openlp/core/server.py b/openlp/core/server.py index 30215d73c..ff68c6fd0 100644 --- a/openlp/core/server.py +++ b/openlp/core/server.py @@ -21,7 +21,7 @@ from pathlib import Path from typing import Optional -from PyQt6 import QtCore, QtNetwork +from PySide6 import QtCore, QtNetwork from openlp.core.common.mixins import LogMixin from openlp.core.common.registry import Registry @@ -96,7 +96,7 @@ class Server(QtCore.QObject, LogMixin): self.in_stream.setCodec('UTF-8') self.in_socket.readyRead.connect(self._on_ready_read) - @QtCore.pyqtSlot() + @QtCore.Slot() def _on_ready_read(self): """ Read a record passed to the server and pass to the service manager to handle diff --git a/openlp/core/threading.py b/openlp/core/threading.py index 495f975f2..3bf7cb056 100644 --- a/openlp/core/threading.py +++ b/openlp/core/threading.py @@ -21,7 +21,7 @@ """ The :mod:`openlp.core.threading` module contains some common threading code """ -from PyQt6 import QtCore +from PySide6 import QtCore from openlp.core.common.mixins import LogMixin from openlp.core.common.registry import Registry @@ -31,8 +31,8 @@ class ThreadWorker(QtCore.QObject, LogMixin): """ The :class:`~openlp.core.threading.ThreadWorker` class provides a base class for all worker objects """ - quit = QtCore.pyqtSignal() - error = QtCore.pyqtSignal(str, str) + quit = QtCore.Signal() + error = QtCore.Signal(str, str) def start(self): """ diff --git a/openlp/core/ui/__init__.py b/openlp/core/ui/__init__.py index 99164739d..9319fbf4f 100644 --- a/openlp/core/ui/__init__.py +++ b/openlp/core/ui/__init__.py @@ -21,7 +21,7 @@ """ The :mod:`ui` module provides the core user interface for OpenLP """ -from PyQt6 import QtWidgets +from PySide6 import QtWidgets class HideMode(object): diff --git a/openlp/core/ui/aboutdialog.py b/openlp/core/ui/aboutdialog.py index 7bc381c46..448915bdb 100644 --- a/openlp/core/ui/aboutdialog.py +++ b/openlp/core/ui/aboutdialog.py @@ -20,7 +20,7 @@ ########################################################################## import datetime -from PyQt6 import QtGui, QtWidgets +from PySide6 import QtGui, QtWidgets from openlp.core.common.i18n import UiStrings, translate from openlp.core.lib.ui import create_button, create_button_box diff --git a/openlp/core/ui/aboutform.py b/openlp/core/ui/aboutform.py index fe346830f..a59b4d3b9 100644 --- a/openlp/core/ui/aboutform.py +++ b/openlp/core/ui/aboutform.py @@ -23,7 +23,7 @@ The About dialog. """ import webbrowser -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import translate from openlp.core.version import get_version diff --git a/openlp/core/ui/advancedtab.py b/openlp/core/ui/advancedtab.py index 90ba6543f..17aaaac4a 100644 --- a/openlp/core/ui/advancedtab.py +++ b/openlp/core/ui/advancedtab.py @@ -23,7 +23,7 @@ The :mod:`advancedtab` provides an advanced settings facility. """ import logging -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.common.applocation import AppLocation from openlp.core.common.i18n import UiStrings, translate diff --git a/openlp/core/ui/confirmationdialog.py b/openlp/core/ui/confirmationdialog.py index 3cec6aaca..5eb778e56 100644 --- a/openlp/core/ui/confirmationdialog.py +++ b/openlp/core/ui/confirmationdialog.py @@ -19,7 +19,7 @@ # along with this program. If not, see . # ########################################################################## -from PyQt6 import QtGui, QtWidgets +from PySide6 import QtGui, QtWidgets from openlp.core.ui.icons import UiIcons diff --git a/openlp/core/ui/confirmationform.py b/openlp/core/ui/confirmationform.py index c8808bd3f..61d37b6ea 100644 --- a/openlp/core/ui/confirmationform.py +++ b/openlp/core/ui/confirmationform.py @@ -28,7 +28,7 @@ It is implemented as a QDialog containing: After instantiating a ConfirmationForm object the calling code must call exec() on the instance. This runs the Qt dialog, which returns the usual 0 (for No) or 1 (for Yes) """ -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.ui.confirmationdialog import Ui_ConfirmationDialog diff --git a/openlp/core/ui/exceptiondialog.py b/openlp/core/ui/exceptiondialog.py index 37377bfdf..61b843c31 100644 --- a/openlp/core/ui/exceptiondialog.py +++ b/openlp/core/ui/exceptiondialog.py @@ -22,7 +22,7 @@ The GUI widgets of the exception dialog. """ -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.common.i18n import translate from openlp.core.lib.ui import create_button, create_button_box diff --git a/openlp/core/ui/exceptionform.py b/openlp/core/ui/exceptionform.py index 7e2ed94a2..3375dda67 100644 --- a/openlp/core/ui/exceptionform.py +++ b/openlp/core/ui/exceptionform.py @@ -26,7 +26,7 @@ import os import platform import re -from PyQt6 import QtCore, QtGui, QtWidgets +from PySide6 import QtCore, QtGui, QtWidgets from openlp.core.common.i18n import UiStrings, translate from openlp.core.common.mixins import RegistryProperties diff --git a/openlp/core/ui/filerenamedialog.py b/openlp/core/ui/filerenamedialog.py index 48c19e195..1fa8022d0 100644 --- a/openlp/core/ui/filerenamedialog.py +++ b/openlp/core/ui/filerenamedialog.py @@ -21,7 +21,7 @@ """ The UI widgets for the rename dialog """ -from PyQt6 import QtCore, QtGui, QtWidgets +from PySide6 import QtCore, QtGui, QtWidgets from openlp.core.common.i18n import translate from openlp.core.lib.ui import create_button_box diff --git a/openlp/core/ui/filerenameform.py b/openlp/core/ui/filerenameform.py index 68f9f4998..46276380a 100644 --- a/openlp/core/ui/filerenameform.py +++ b/openlp/core/ui/filerenameform.py @@ -21,7 +21,7 @@ """ The file rename dialog. """ -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import translate from openlp.core.common.mixins import RegistryProperties diff --git a/openlp/core/ui/firsttimeform.py b/openlp/core/ui/firsttimeform.py index 730d29073..1adda317a 100644 --- a/openlp/core/ui/firsttimeform.py +++ b/openlp/core/ui/firsttimeform.py @@ -30,7 +30,7 @@ import urllib.request from pathlib import Path from tempfile import gettempdir -from PyQt6 import QtCore, QtWidgets, QtGui +from PySide6 import QtCore, QtWidgets, QtGui from openlp.core.api.deploy import get_latest_size, download_and_install from openlp.core.common import trace_error_handler diff --git a/openlp/core/ui/firsttimelanguagedialog.py b/openlp/core/ui/firsttimelanguagedialog.py index 3a62b6d29..65a203484 100644 --- a/openlp/core/ui/firsttimelanguagedialog.py +++ b/openlp/core/ui/firsttimelanguagedialog.py @@ -21,7 +21,7 @@ """ The UI widgets of the language selection dialog. """ -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.common.i18n import translate from openlp.core.lib.ui import create_button_box diff --git a/openlp/core/ui/firsttimelanguageform.py b/openlp/core/ui/firsttimelanguageform.py index f70990ca5..af07c4904 100644 --- a/openlp/core/ui/firsttimelanguageform.py +++ b/openlp/core/ui/firsttimelanguageform.py @@ -21,7 +21,7 @@ """ The language selection dialog. """ -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import LanguageManager from openlp.core.lib.ui import create_action diff --git a/openlp/core/ui/firsttimewizard.py b/openlp/core/ui/firsttimewizard.py index d8cd1b161..a1cccc689 100644 --- a/openlp/core/ui/firsttimewizard.py +++ b/openlp/core/ui/firsttimewizard.py @@ -21,7 +21,7 @@ """ The UI widgets for the first time wizard. """ -from PyQt6 import QtCore, QtGui, QtWidgets +from PySide6 import QtCore, QtGui, QtWidgets from openlp.core.common import clean_button_text from openlp.core.common.platform import is_macosx diff --git a/openlp/core/ui/folders.py b/openlp/core/ui/folders.py index 8609805b6..af8c5e3f8 100644 --- a/openlp/core/ui/folders.py +++ b/openlp/core/ui/folders.py @@ -19,7 +19,7 @@ # along with this program. If not, see . # ########################################################################## -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import get_natural_key, translate from openlp.core.lib.ui import create_button_box, critical_error_message_box diff --git a/openlp/core/ui/formattingtagdialog.py b/openlp/core/ui/formattingtagdialog.py index ed69f84a6..f6fecad14 100644 --- a/openlp/core/ui/formattingtagdialog.py +++ b/openlp/core/ui/formattingtagdialog.py @@ -21,7 +21,7 @@ """ The UI widgets for the formatting tags window. """ -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import UiStrings, translate from openlp.core.lib.ui import create_button_box diff --git a/openlp/core/ui/formattingtagform.py b/openlp/core/ui/formattingtagform.py index eb0495509..24a944a22 100644 --- a/openlp/core/ui/formattingtagform.py +++ b/openlp/core/ui/formattingtagform.py @@ -23,7 +23,7 @@ The :mod:`formattingtagform` provides an Tag Edit facility. The Base set are pro Custom tags can be defined and saved. The Custom Tag arrays are saved in a json string so QSettings works on them. Base Tags cannot be changed. """ -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import translate from openlp.core.lib.formattingtags import FormattingTags diff --git a/openlp/core/ui/generaltab.py b/openlp/core/ui/generaltab.py index 923f24497..e4f28d9eb 100644 --- a/openlp/core/ui/generaltab.py +++ b/openlp/core/ui/generaltab.py @@ -24,7 +24,7 @@ The general tab of the configuration dialog. import logging from pathlib import Path -from PyQt6 import QtCore, QtGui, QtWidgets +from PySide6 import QtCore, QtGui, QtWidgets from openlp.core.common import get_images_filter from openlp.core.common.i18n import UiStrings, translate diff --git a/openlp/core/ui/icons.py b/openlp/core/ui/icons.py index 73afb16b1..ac16162c0 100644 --- a/openlp/core/ui/icons.py +++ b/openlp/core/ui/icons.py @@ -24,7 +24,7 @@ The :mod:`languages` module provides a list of icons. import logging import qtawesome as qta -from PyQt6 import QtGui, QtWidgets +from PySide6 import QtGui, QtWidgets from openlp.core.common import Singleton from openlp.core.common.applocation import AppLocation diff --git a/openlp/core/ui/library.py b/openlp/core/ui/library.py index 61bf370c1..32db01b14 100644 --- a/openlp/core/ui/library.py +++ b/openlp/core/ui/library.py @@ -25,7 +25,7 @@ import os from pathlib import Path from typing import Any, List, Optional, Union -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common import sha256_file_hash from openlp.core.common.i18n import UiStrings, get_natural_key, translate @@ -368,7 +368,7 @@ class FolderLibraryItem(MediaManagerItem): """ return [item.file_path, item.file_path] - @QtCore.pyqtSlot(str, bool, result=list) + @QtCore.Slot(str, bool, result=list) def search(self, string: str, show_error: bool = True) -> list[list[Any]]: """ Performs a search for items containing ``string`` diff --git a/openlp/core/ui/mainwindow.py b/openlp/core/ui/mainwindow.py index 7179f5744..ad9dd83b8 100644 --- a/openlp/core/ui/mainwindow.py +++ b/openlp/core/ui/mainwindow.py @@ -30,7 +30,7 @@ from pathlib import Path from tempfile import gettempdir from threading import Lock -from PyQt6 import QtCore, QtGui, QtWidgets +from PySide6 import QtCore, QtGui, QtWidgets from openlp.core.api.http.server import HttpServer from openlp.core.api.websockets import WebSocketServer diff --git a/openlp/core/ui/media/mediacontroller.py b/openlp/core/ui/media/mediacontroller.py index 59347e239..7526260ed 100644 --- a/openlp/core/ui/media/mediacontroller.py +++ b/openlp/core/ui/media/mediacontroller.py @@ -32,7 +32,7 @@ except ImportError: pymediainfo_available = False pymediainfo_version = '0.0' -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import translate from openlp.core.common.mixins import LogMixin, RegistryProperties @@ -62,10 +62,10 @@ class MediaController(QtWidgets.QWidget, RegistryBase, LogMixin, RegistryPropert The implementation of the Media Controller which manages how media is played. """ - vlc_live_media_tick = QtCore.pyqtSignal() - vlc_preview_media_tick = QtCore.pyqtSignal() - vlc_live_media_stop = QtCore.pyqtSignal() - vlc_preview_media_stop = QtCore.pyqtSignal() + vlc_live_media_tick = QtCore.Signal() + vlc_preview_media_tick = QtCore.Signal() + vlc_live_media_stop = QtCore.Signal() + vlc_preview_media_stop = QtCore.Signal() def __init__(self, parent=None): """ diff --git a/openlp/core/ui/media/mediatab.py b/openlp/core/ui/media/mediatab.py index 43b9743ea..cb03a1a0a 100644 --- a/openlp/core/ui/media/mediatab.py +++ b/openlp/core/ui/media/mediatab.py @@ -23,7 +23,7 @@ The :mod:`~openlp.core.ui.media.mediatab` module holds the configuration tab for """ import logging -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import translate from openlp.core.lib.settingstab import SettingsTab diff --git a/openlp/core/ui/media/vlcplayer.py b/openlp/core/ui/media/vlcplayer.py index f06527d95..c109d8c38 100644 --- a/openlp/core/ui/media/vlcplayer.py +++ b/openlp/core/ui/media/vlcplayer.py @@ -29,7 +29,7 @@ import threading from datetime import datetime from time import sleep -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import translate from openlp.core.common.mixins import LogMixin diff --git a/openlp/core/ui/media/vlcplayerpl.py b/openlp/core/ui/media/vlcplayerpl.py index 676ccdcff..fcd8a96f9 100644 --- a/openlp/core/ui/media/vlcplayerpl.py +++ b/openlp/core/ui/media/vlcplayerpl.py @@ -27,7 +27,7 @@ import threading from datetime import datetime from time import sleep -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import translate from openlp.core.common.mixins import LogMixin diff --git a/openlp/core/ui/plugindialog.py b/openlp/core/ui/plugindialog.py index 2d720bb7c..7171125d9 100644 --- a/openlp/core/ui/plugindialog.py +++ b/openlp/core/ui/plugindialog.py @@ -21,7 +21,7 @@ """ The UI widgets of the plugin view dialog #""" -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import UiStrings, translate from openlp.core.lib.ui import create_button_box diff --git a/openlp/core/ui/pluginform.py b/openlp/core/ui/pluginform.py index d4d2e3b3f..762d77740 100644 --- a/openlp/core/ui/pluginform.py +++ b/openlp/core/ui/pluginform.py @@ -23,7 +23,7 @@ The actual plugin view form """ import logging -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.state import State from openlp.core.common.i18n import translate diff --git a/openlp/core/ui/printservicedialog.py b/openlp/core/ui/printservicedialog.py index 698453aa7..8bc526a72 100644 --- a/openlp/core/ui/printservicedialog.py +++ b/openlp/core/ui/printservicedialog.py @@ -21,7 +21,7 @@ """ The UI widgets of the print service dialog. """ -from PyQt6 import QtCore, QtPrintSupport, QtWidgets +from PySide6 import QtCore, QtPrintSupport, QtWidgets from openlp.core.common.i18n import UiStrings, translate from openlp.core.ui.icons import UiIcons diff --git a/openlp/core/ui/printserviceform.py b/openlp/core/ui/printserviceform.py index bb216edae..ac8b96c38 100644 --- a/openlp/core/ui/printserviceform.py +++ b/openlp/core/ui/printserviceform.py @@ -25,7 +25,7 @@ import datetime import html import lxml.html -from PyQt6 import QtCore, QtGui, QtPrintSupport, QtWidgets +from PySide6 import QtCore, QtGui, QtPrintSupport, QtWidgets from openlp.core.common.applocation import AppLocation from openlp.core.common.i18n import UiStrings, translate diff --git a/openlp/core/ui/screenstab.py b/openlp/core/ui/screenstab.py index edf5443ad..c8392b957 100644 --- a/openlp/core/ui/screenstab.py +++ b/openlp/core/ui/screenstab.py @@ -21,7 +21,7 @@ """ The screen settings tab in the configuration dialog """ -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.common.i18n import translate from openlp.core.display.screens import ScreenList diff --git a/openlp/core/ui/serviceitemeditdialog.py b/openlp/core/ui/serviceitemeditdialog.py index 72b38a3e2..f46bc5c28 100644 --- a/openlp/core/ui/serviceitemeditdialog.py +++ b/openlp/core/ui/serviceitemeditdialog.py @@ -21,7 +21,7 @@ """ The UI widgets for the service item edit dialog """ -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.common.i18n import translate from openlp.core.lib.ui import create_button, create_button_box diff --git a/openlp/core/ui/serviceitemeditform.py b/openlp/core/ui/serviceitemeditform.py index ad3b0c5f9..573e02c2e 100644 --- a/openlp/core/ui/serviceitemeditform.py +++ b/openlp/core/ui/serviceitemeditform.py @@ -21,7 +21,7 @@ """ The service item edit dialog """ -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.mixins import RegistryProperties from openlp.core.common.registry import Registry diff --git a/openlp/core/ui/servicemanager.py b/openlp/core/ui/servicemanager.py index 7bdaf1523..61453e66b 100644 --- a/openlp/core/ui/servicemanager.py +++ b/openlp/core/ui/servicemanager.py @@ -30,7 +30,7 @@ from contextlib import suppress from datetime import datetime, timedelta from pathlib import Path -from PyQt6 import QtCore, QtGui, QtWidgets +from PySide6 import QtCore, QtGui, QtWidgets from openlp.core.common import ThemeLevel, delete_file, sha256_file_hash from openlp.core.common.actions import ActionList, CategoryOrder @@ -307,13 +307,13 @@ class ServiceManager(QtWidgets.QWidget, RegistryBase, Ui_ServiceManager, LogMixi can then be zipped up with all the resources used into one OSZ or OSZL file for use on any OpenLP installation. Also handles the UI tasks of moving things up and down etc. """ - servicemanager_set_item = QtCore.pyqtSignal(int) - servicemanager_set_item_by_uuid = QtCore.pyqtSignal(str) - servicemanager_next_item = QtCore.pyqtSignal() - servicemanager_previous_item = QtCore.pyqtSignal() - servicemanager_new_file = QtCore.pyqtSignal() - servicemanager_changed = QtCore.pyqtSignal() - theme_update_service = QtCore.pyqtSignal() + servicemanager_set_item = QtCore.Signal(int) + servicemanager_set_item_by_uuid = QtCore.Signal(str) + servicemanager_next_item = QtCore.Signal() + servicemanager_previous_item = QtCore.Signal() + servicemanager_new_file = QtCore.Signal() + servicemanager_changed = QtCore.Signal() + theme_update_service = QtCore.Signal() def __init__(self, parent=None): """ diff --git a/openlp/core/ui/servicenoteform.py b/openlp/core/ui/servicenoteform.py index 1c697d133..ca9ee5c9d 100644 --- a/openlp/core/ui/servicenoteform.py +++ b/openlp/core/ui/servicenoteform.py @@ -21,7 +21,7 @@ """ The :mod:`~openlp.core.ui.servicenoteform` module contains the `ServiceNoteForm` class. """ -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import translate from openlp.core.common.mixins import RegistryProperties diff --git a/openlp/core/ui/servicetab.py b/openlp/core/ui/servicetab.py index 338a73284..8cdbe6ea1 100644 --- a/openlp/core/ui/servicetab.py +++ b/openlp/core/ui/servicetab.py @@ -24,7 +24,7 @@ The services tab of the configuration dialog. import logging from datetime import datetime, timedelta -from PyQt6 import QtCore, QtGui, QtWidgets +from PySide6 import QtCore, QtGui, QtWidgets from openlp.core.common import SlideLimits from openlp.core.common.i18n import UiStrings, format_time, translate diff --git a/openlp/core/ui/settingsdialog.py b/openlp/core/ui/settingsdialog.py index 87a0f7981..6d16d1014 100644 --- a/openlp/core/ui/settingsdialog.py +++ b/openlp/core/ui/settingsdialog.py @@ -21,7 +21,7 @@ """ The UI widgets of the settings dialog. """ -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import translate from openlp.core.lib.ui import create_button_box diff --git a/openlp/core/ui/settingsform.py b/openlp/core/ui/settingsform.py index adfa0b9a1..97bb7fce8 100644 --- a/openlp/core/ui/settingsform.py +++ b/openlp/core/ui/settingsform.py @@ -23,7 +23,7 @@ The :mod:`settingsform` provides a user interface for the OpenLP settings """ import logging -from PyQt6 import QtCore, QtWidgets, QtGui +from PySide6 import QtCore, QtWidgets, QtGui from openlp.core.state import State from openlp.core.api.tab import ApiTab diff --git a/openlp/core/ui/shortcutlistdialog.py b/openlp/core/ui/shortcutlistdialog.py index 272bbb02d..4f3bb4072 100644 --- a/openlp/core/ui/shortcutlistdialog.py +++ b/openlp/core/ui/shortcutlistdialog.py @@ -21,7 +21,7 @@ """ The list of shortcuts within a dialog. """ -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import translate from openlp.core.lib.ui import create_button_box diff --git a/openlp/core/ui/shortcutlistform.py b/openlp/core/ui/shortcutlistform.py index 8e458a7f0..a24a437a0 100644 --- a/openlp/core/ui/shortcutlistform.py +++ b/openlp/core/ui/shortcutlistform.py @@ -24,7 +24,7 @@ The :mod:`~openlp.core.ui.shortcutlistform` module contains the form class import logging import re -from PyQt6 import QtCore, QtGui, QtWidgets +from PySide6 import QtCore, QtGui, QtWidgets from openlp.core.common.actions import ActionList from openlp.core.common.i18n import translate diff --git a/openlp/core/ui/slidecontroller.py b/openlp/core/ui/slidecontroller.py index 323cb4391..2e91a1586 100644 --- a/openlp/core/ui/slidecontroller.py +++ b/openlp/core/ui/slidecontroller.py @@ -27,7 +27,7 @@ from collections import deque from pathlib import Path from threading import Lock -from PyQt6 import QtCore, QtGui, QtWidgets +from PySide6 import QtCore, QtGui, QtWidgets from openlp.core.common import SlideLimits from openlp.core.common.actions import ActionList, CategoryOrder @@ -104,7 +104,7 @@ class SlideController(QtWidgets.QWidget, LogMixin, RegistryProperties): user uses to control the displaying of verses/slides/etc on the screen. """ - slidecontroller_changed = QtCore.pyqtSignal() + slidecontroller_changed = QtCore.Signal() def __init__(self, *args, **kwargs): """ @@ -1333,7 +1333,7 @@ class SlideController(QtWidgets.QWidget, LogMixin, RegistryProperties): slide_ready_time = self.slide_changed_time + datetime.timedelta(seconds=slide_delay_time) return datetime.datetime.now() > slide_ready_time - @QtCore.pyqtSlot(result=str) + @QtCore.Slot(result=str) def grab_maindisplay(self) -> str: """ Gets the last taken screenshot @@ -1627,10 +1627,10 @@ class PreviewController(RegistryBase, SlideController): """ Set up the Preview Controller. """ - slidecontroller_preview_set = QtCore.pyqtSignal(list) - slidecontroller_preview_next = QtCore.pyqtSignal() - slidecontroller_preview_previous = QtCore.pyqtSignal() - slidecontroller_preview_clear = QtCore.pyqtSignal() + slidecontroller_preview_set = QtCore.Signal(list) + slidecontroller_preview_next = QtCore.Signal() + slidecontroller_preview_previous = QtCore.Signal() + slidecontroller_preview_clear = QtCore.Signal() def __init__(self, *args, **kwargs): """ @@ -1659,14 +1659,14 @@ class LiveController(RegistryBase, SlideController): """ Set up the Live Controller. """ - slidecontroller_live_set = QtCore.pyqtSignal(list) - slidecontroller_live_next = QtCore.pyqtSignal() - slidecontroller_live_previous = QtCore.pyqtSignal() - slidecontroller_toggle_display = QtCore.pyqtSignal(str) - slidecontroller_live_clear = QtCore.pyqtSignal() - mediacontroller_live_play = QtCore.pyqtSignal() - mediacontroller_live_pause = QtCore.pyqtSignal() - mediacontroller_live_stop = QtCore.pyqtSignal() + slidecontroller_live_set = QtCore.Signal(list) + slidecontroller_live_next = QtCore.Signal() + slidecontroller_live_previous = QtCore.Signal() + slidecontroller_toggle_display = QtCore.Signal(str) + slidecontroller_live_clear = QtCore.Signal() + mediacontroller_live_play = QtCore.Signal() + mediacontroller_live_pause = QtCore.Signal() + mediacontroller_live_stop = QtCore.Signal() def __init__(self, *args, **kwargs): """ diff --git a/openlp/core/ui/splashscreen.py b/openlp/core/ui/splashscreen.py index 1384c4a9b..c98fb63d5 100644 --- a/openlp/core/ui/splashscreen.py +++ b/openlp/core/ui/splashscreen.py @@ -22,7 +22,7 @@ The splash screen """ -from PyQt6 import QtCore, QtGui, QtWidgets +from PySide6 import QtCore, QtGui, QtWidgets class SplashScreen(QtWidgets.QSplashScreen): diff --git a/openlp/core/ui/starttimedialog.py b/openlp/core/ui/starttimedialog.py index 630d1a199..c107b85f8 100644 --- a/openlp/core/ui/starttimedialog.py +++ b/openlp/core/ui/starttimedialog.py @@ -21,7 +21,7 @@ """ The UI widgets for the time dialog """ -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import UiStrings, translate from openlp.core.lib.ui import create_button_box diff --git a/openlp/core/ui/starttimeform.py b/openlp/core/ui/starttimeform.py index f8ec1e21e..40f8eb269 100644 --- a/openlp/core/ui/starttimeform.py +++ b/openlp/core/ui/starttimeform.py @@ -21,7 +21,7 @@ """ The actual start time form. """ -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import UiStrings, translate from openlp.core.common.mixins import RegistryProperties diff --git a/openlp/core/ui/style.py b/openlp/core/ui/style.py index c3c1b5113..749d86bed 100644 --- a/openlp/core/ui/style.py +++ b/openlp/core/ui/style.py @@ -23,7 +23,7 @@ The :mod:`~openlp.core.ui.dark` module looks for and loads a dark theme """ from subprocess import Popen, PIPE from enum import Enum -from PyQt6 import QtCore, QtGui, QtWidgets +from PySide6 import QtCore, QtGui, QtWidgets from openlp.core.common.platform import is_macosx, is_win from openlp.core.common.registry import Registry diff --git a/openlp/core/ui/themeform.py b/openlp/core/ui/themeform.py index 4f0768dd7..5128f2098 100644 --- a/openlp/core/ui/themeform.py +++ b/openlp/core/ui/themeform.py @@ -23,7 +23,7 @@ The Theme wizard """ import logging -from PyQt6 import QtCore, QtGui, QtWidgets +from PySide6 import QtCore, QtGui, QtWidgets from openlp.core.common import is_not_image_file from openlp.core.common.enum import ServiceItemType diff --git a/openlp/core/ui/themelayoutdialog.py b/openlp/core/ui/themelayoutdialog.py index 6ea2777d7..db6bfda5c 100644 --- a/openlp/core/ui/themelayoutdialog.py +++ b/openlp/core/ui/themelayoutdialog.py @@ -21,7 +21,7 @@ """ The layout of the theme """ -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.common.i18n import translate from openlp.core.lib.ui import create_button_box diff --git a/openlp/core/ui/themelayoutform.py b/openlp/core/ui/themelayoutform.py index 2085793df..ab8c54eba 100644 --- a/openlp/core/ui/themelayoutform.py +++ b/openlp/core/ui/themelayoutform.py @@ -21,7 +21,7 @@ """ The form layout """ -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from .themelayoutdialog import Ui_ThemeLayoutDialog diff --git a/openlp/core/ui/thememanager.py b/openlp/core/ui/thememanager.py index 1bb574620..5e8428a29 100644 --- a/openlp/core/ui/thememanager.py +++ b/openlp/core/ui/thememanager.py @@ -27,7 +27,7 @@ import zipfile from pathlib import Path from xml.etree.ElementTree import XML, ElementTree -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.state import State from openlp.core.common import delete_file @@ -143,8 +143,8 @@ class ThemeManager(QtWidgets.QWidget, RegistryBase, Ui_ThemeManager, LogMixin, R Manages the orders of Theme. """ # These signals are used by the web api to update the theme on the ui thread - theme_update_global = QtCore.pyqtSignal() - theme_level_updated = QtCore.pyqtSignal() + theme_update_global = QtCore.Signal() + theme_level_updated = QtCore.Signal() def __init__(self, parent=None): """ diff --git a/openlp/core/ui/themeprogressdialog.py b/openlp/core/ui/themeprogressdialog.py index adfc2f4df..e5e43688f 100644 --- a/openlp/core/ui/themeprogressdialog.py +++ b/openlp/core/ui/themeprogressdialog.py @@ -18,7 +18,7 @@ # You should have received a copy of the GNU General Public License # # along with this program. If not, see . # ########################################################################## -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import translate from openlp.core.display.render import ThemePreviewRenderer diff --git a/openlp/core/ui/themeprogressform.py b/openlp/core/ui/themeprogressform.py index 537278d22..ac44e5a5c 100644 --- a/openlp/core/ui/themeprogressform.py +++ b/openlp/core/ui/themeprogressform.py @@ -21,7 +21,7 @@ """ The theme regeneration progress dialog """ -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.common.mixins import RegistryProperties, LogMixin from openlp.core.common.utils import wait_for diff --git a/openlp/core/ui/themestab.py b/openlp/core/ui/themestab.py index ba9b853c3..5522865f7 100644 --- a/openlp/core/ui/themestab.py +++ b/openlp/core/ui/themestab.py @@ -21,7 +21,7 @@ """ The Themes configuration tab """ -from PyQt6 import QtCore, QtGui, QtWidgets +from PySide6 import QtCore, QtGui, QtWidgets from openlp.core.common import ThemeLevel from openlp.core.common.i18n import UiStrings, translate diff --git a/openlp/core/ui/themewizard.py b/openlp/core/ui/themewizard.py index 53c127571..34229b656 100644 --- a/openlp/core/ui/themewizard.py +++ b/openlp/core/ui/themewizard.py @@ -21,7 +21,7 @@ """ The Create/Edit theme wizard """ -from PyQt6 import QtCore, QtGui, QtWidgets +from PySide6 import QtCore, QtGui, QtWidgets from openlp.core.common.i18n import translate from openlp.core.common.platform import is_macosx diff --git a/openlp/core/version.py b/openlp/core/version.py index 7faf6dd8c..01d56abf3 100644 --- a/openlp/core/version.py +++ b/openlp/core/version.py @@ -27,7 +27,7 @@ import sys from collections import OrderedDict from datetime import date -from PyQt6 import QtCore +from PySide6 import QtCore from openlp.core.common.applocation import AppLocation from openlp.core.common.httputils import get_web_page @@ -42,7 +42,7 @@ CONNECTION_TIMEOUT = 30 CONNECTION_RETRIES = 2 LIBRARIES = OrderedDict([ ('Python', ('platform', 'python_version')), - ('PyQt6', ('PyQt6.Qt', 'PYQT_VERSION_STR')), + ('PySide6', ('PySide6.Qt', 'PYQT_VERSION_STR')), ('SQLAlchemy', ('sqlalchemy',)), ('Alembic', ('alembic',)), ('BeautifulSoup', ('bs4',)), @@ -63,8 +63,8 @@ class VersionWorker(ThreadWorker): A worker class to fetch the version of OpenLP from the website. This is run from within a thread so that it doesn't affect the loading time of OpenLP. """ - new_version = QtCore.pyqtSignal(str) - no_internet = QtCore.pyqtSignal() + new_version = QtCore.Signal(str) + no_internet = QtCore.Signal() def __init__(self, last_check_date, current_version): """ diff --git a/openlp/core/widgets/buttons.py b/openlp/core/widgets/buttons.py index 31bb774df..fd4ece2ee 100644 --- a/openlp/core/widgets/buttons.py +++ b/openlp/core/widgets/buttons.py @@ -22,7 +22,7 @@ """ Provide a custom widget based on QPushButton for the selection of colors """ -from PyQt6 import QtCore, QtGui, QtWidgets +from PySide6 import QtCore, QtGui, QtWidgets from openlp.core.common.i18n import translate @@ -32,7 +32,7 @@ class ColorButton(QtWidgets.QPushButton): Subclasses QPushbutton to create a "Color Chooser" button """ - colorChanged = QtCore.pyqtSignal(str) + colorChanged = QtCore.Signal(str) def __init__(self, parent=None): """ diff --git a/openlp/core/widgets/dialogs.py b/openlp/core/widgets/dialogs.py index 2409fb4ea..70916cc2e 100644 --- a/openlp/core/widgets/dialogs.py +++ b/openlp/core/widgets/dialogs.py @@ -21,7 +21,7 @@ """ Patch the QFileDialog so it accepts and returns Path objects""" from pathlib import Path -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.path import path_to_str, replace_params, str_to_path from openlp.core.common.i18n import UiStrings, translate diff --git a/openlp/core/widgets/docks.py b/openlp/core/widgets/docks.py index 14a1f9365..ac4cc9605 100644 --- a/openlp/core/widgets/docks.py +++ b/openlp/core/widgets/docks.py @@ -23,7 +23,7 @@ The :mod:`~openlp.core.widgets.docks` module contains a customised base dock wid """ import logging -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.display.screens import ScreenList from openlp.core.lib import build_icon diff --git a/openlp/core/widgets/edits.py b/openlp/core/widgets/edits.py index 7b655dd98..b7aa5678f 100644 --- a/openlp/core/widgets/edits.py +++ b/openlp/core/widgets/edits.py @@ -25,7 +25,7 @@ import logging import re from pathlib import Path -from PyQt6 import QtCore, QtGui, QtWidgets +from PySide6 import QtCore, QtGui, QtWidgets from openlp.core.common import CONTROL_CHARS from openlp.core.common.i18n import UiStrings, translate @@ -53,8 +53,8 @@ class SearchEdit(QtWidgets.QLineEdit): """ This is a specialised QLineEdit with a "clear" button inside for searches. """ - searchTypeChanged = QtCore.pyqtSignal(QtCore.QVariant) - cleared = QtCore.pyqtSignal() + searchTypeChanged = QtCore.Signal(int) + cleared = QtCore.Signal() def __init__(self, parent, settings_section): """ @@ -170,7 +170,7 @@ class SearchEdit(QtWidgets.QLineEdit): Internally implemented slot to react to when the text in the line edit has changed so that we can show or hide the clear button. - :param text: A :class:`~PyQt6.QtCore.QString` instance which represents the text in the line edit. + :param text: A :class:`~PySide6.QtCore.QString` instance which represents the text in the line edit. """ self.clear_button.setVisible(bool(text)) @@ -200,7 +200,7 @@ class PathEdit(QtWidgets.QWidget): The :class:`~openlp.core.widgets.edits.PathEdit` class subclasses QWidget to create a custom widget for use when a file or directory needs to be selected. """ - pathChanged = QtCore.pyqtSignal(Path) + pathChanged = QtCore.Signal(Path) def __init__(self, parent=None, path_type=PathEditType.Files, default_path=None, dialog_caption=None, show_revert=True): @@ -246,7 +246,7 @@ class PathEdit(QtWidgets.QWidget): self.line_edit.editingFinished.connect(self.on_line_edit_editing_finished) self.update_button_tool_tips() - @QtCore.pyqtProperty('QVariant') + @property def path(self): """ A property getter method to return the selected path. @@ -523,7 +523,7 @@ class SpellAction(QtGui.QAction): """ A special QAction that returns the text in a signal. """ - correct = QtCore.pyqtSignal(str) + correct = QtCore.Signal(str) def __init__(self, *args): """ @@ -539,7 +539,7 @@ class HistoryComboBox(QtWidgets.QComboBox): signal for when the :kbd:`Enter` or :kbd:`Return` keys are pressed, and saves anything that is typed into the edit box into its list. """ - returnPressed = QtCore.pyqtSignal() + returnPressed = QtCore.Signal() def __init__(self, parent=None): """ diff --git a/openlp/core/widgets/labels.py b/openlp/core/widgets/labels.py index 086b7dbe1..841301174 100644 --- a/openlp/core/widgets/labels.py +++ b/openlp/core/widgets/labels.py @@ -21,7 +21,7 @@ """ The :mod:`~openlp.core.widgets.labels` module contains specialised labels """ -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets class FormLabel(QtWidgets.QLabel): diff --git a/openlp/core/widgets/layouts.py b/openlp/core/widgets/layouts.py index 97f5cdff8..e4b160a4c 100644 --- a/openlp/core/widgets/layouts.py +++ b/openlp/core/widgets/layouts.py @@ -21,7 +21,7 @@ """ The :mod:`~openlp.core.widgets.layouts` module contains customised layout classes """ -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets class AspectRatioLayout(QtWidgets.QLayout): @@ -30,7 +30,7 @@ class AspectRatioLayout(QtWidgets.QLayout): This is based on the C++ example here: https://gist.github.com/pavel-perina/1324ff064aedede0e01311aab315f83d """ - resize = QtCore.pyqtSignal(QtCore.QSize) + resize = QtCore.Signal(QtCore.QSize) def __init__(self, parent=None, aspect_ratio=None): """ diff --git a/openlp/core/widgets/toolbar.py b/openlp/core/widgets/toolbar.py index a84653079..948f47f50 100644 --- a/openlp/core/widgets/toolbar.py +++ b/openlp/core/widgets/toolbar.py @@ -24,7 +24,7 @@ Provide common toolbar handling for OpenLP import datetime import logging -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import translate from openlp.core.lib.ui import create_widget_action diff --git a/openlp/core/widgets/views.py b/openlp/core/widgets/views.py index 8084b294b..13ec0fe8b 100644 --- a/openlp/core/widgets/views.py +++ b/openlp/core/widgets/views.py @@ -24,7 +24,7 @@ It is based on a QTableWidget but represents its contents in list form. """ from pathlib import Path -from PyQt6 import QtCore, QtGui, QtWidgets +from PySide6 import QtCore, QtGui, QtWidgets from openlp.core.common.i18n import UiStrings from openlp.core.common.mixins import RegistryProperties @@ -78,7 +78,7 @@ class ListPreviewWidget(QtWidgets.QTableWidget, RegistryProperties): :param parent: :param screen_ratio: """ - resize_event = QtCore.pyqtSignal() + resize_event = QtCore.Signal() def __init__(self, parent, screen_ratio): """ diff --git a/openlp/core/widgets/widgets.py b/openlp/core/widgets/widgets.py index c7d764878..02a467c63 100644 --- a/openlp/core/widgets/widgets.py +++ b/openlp/core/widgets/widgets.py @@ -21,7 +21,7 @@ """ The :mod:`~openlp.core.widgets.widgets` module contains custom widgets used in OpenLP """ -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import translate from openlp.core.common.registry import Registry @@ -403,7 +403,7 @@ class ScreenSelectionWidget(QtWidgets.QWidget): self.use_screen_check_box.setVisible(True) self.display_group_box.setVisible(False) - @QtCore.pyqtSlot() + @QtCore.Slot() def _on_identify_timer_shot(self): for label in self.identify_labels: label.hide() diff --git a/openlp/core/widgets/wizard.py b/openlp/core/widgets/wizard.py index d77878b59..1e746e72e 100644 --- a/openlp/core/widgets/wizard.py +++ b/openlp/core/widgets/wizard.py @@ -23,7 +23,7 @@ The :mod:``wizard`` module provides generic wizard tools for OpenLP. """ import logging -from PyQt6 import QtCore, QtGui, QtWidgets +from PySide6 import QtCore, QtGui, QtWidgets from openlp.core.common.i18n import translate from openlp.core.common.mixins import RegistryProperties diff --git a/openlp/plugins/alerts/forms/alertdialog.py b/openlp/plugins/alerts/forms/alertdialog.py index 52568136a..608d44fc5 100644 --- a/openlp/plugins/alerts/forms/alertdialog.py +++ b/openlp/plugins/alerts/forms/alertdialog.py @@ -19,7 +19,7 @@ # along with this program. If not, see . # ########################################################################## -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.common.i18n import translate from openlp.core.lib.ui import create_button, create_button_box diff --git a/openlp/plugins/alerts/forms/alertform.py b/openlp/plugins/alerts/forms/alertform.py index 95eda3a74..1e2d8a4fe 100644 --- a/openlp/plugins/alerts/forms/alertform.py +++ b/openlp/plugins/alerts/forms/alertform.py @@ -19,7 +19,7 @@ # along with this program. If not, see . # ########################################################################## -from PyQt6 import QtCore, QtWidgets, QtGui +from PySide6 import QtCore, QtWidgets, QtGui from openlp.core.common.i18n import translate from openlp.core.common.registry import Registry diff --git a/openlp/plugins/alerts/lib/alertsmanager.py b/openlp/plugins/alerts/lib/alertsmanager.py index d9a1fd0e8..a123ec4ea 100644 --- a/openlp/plugins/alerts/lib/alertsmanager.py +++ b/openlp/plugins/alerts/lib/alertsmanager.py @@ -24,7 +24,7 @@ displaying of alerts. """ import json -from PyQt6 import QtCore, QtGui +from PySide6 import QtCore, QtGui from openlp.core.common.mixins import LogMixin, RegistryProperties from openlp.core.common.registry import Registry, RegistryBase @@ -35,7 +35,7 @@ class AlertsManager(QtCore.QObject, RegistryBase, LogMixin, RegistryProperties): """ AlertsManager manages the settings of Alerts. """ - alerts_text = QtCore.pyqtSignal(list) + alerts_text = QtCore.Signal(list) def __init__(self, parent): super(AlertsManager, self).__init__() diff --git a/openlp/plugins/alerts/lib/alertstab.py b/openlp/plugins/alerts/lib/alertstab.py index a3a6ced36..8b5efc604 100644 --- a/openlp/plugins/alerts/lib/alertstab.py +++ b/openlp/plugins/alerts/lib/alertstab.py @@ -19,7 +19,7 @@ # along with this program. If not, see . # ########################################################################## -from PyQt6 import QtGui, QtWidgets +from PySide6 import QtGui, QtWidgets from openlp.core.common.i18n import UiStrings, translate from openlp.core.lib.settingstab import SettingsTab diff --git a/openlp/plugins/bibles/forms/bibleimportform.py b/openlp/plugins/bibles/forms/bibleimportform.py index a91f01c27..ea991333d 100644 --- a/openlp/plugins/bibles/forms/bibleimportform.py +++ b/openlp/plugins/bibles/forms/bibleimportform.py @@ -25,7 +25,7 @@ import logging import urllib.error from lxml import etree -from PyQt6 import QtWidgets, QtGui, QtCore +from PySide6 import QtWidgets, QtGui, QtCore try: from pysword import modules diff --git a/openlp/plugins/bibles/forms/booknamedialog.py b/openlp/plugins/bibles/forms/booknamedialog.py index ae0d33343..1b10d790c 100644 --- a/openlp/plugins/bibles/forms/booknamedialog.py +++ b/openlp/plugins/bibles/forms/booknamedialog.py @@ -19,7 +19,7 @@ # along with this program. If not, see . # ########################################################################## -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import translate from openlp.core.lib.ui import create_button_box diff --git a/openlp/plugins/bibles/forms/booknameform.py b/openlp/plugins/bibles/forms/booknameform.py index 87968d683..10e0639d9 100644 --- a/openlp/plugins/bibles/forms/booknameform.py +++ b/openlp/plugins/bibles/forms/booknameform.py @@ -25,8 +25,8 @@ Module implementing BookNameForm. import logging import re -from PyQt6 import QtCore -from PyQt6.QtWidgets import QDialog +from PySide6 import QtCore +from PySide6.QtWidgets import QDialog from openlp.core.common.i18n import translate from openlp.core.lib.ui import critical_error_message_box diff --git a/openlp/plugins/bibles/forms/editbibledialog.py b/openlp/plugins/bibles/forms/editbibledialog.py index 3387ecda2..9caf41223 100644 --- a/openlp/plugins/bibles/forms/editbibledialog.py +++ b/openlp/plugins/bibles/forms/editbibledialog.py @@ -19,7 +19,7 @@ # along with this program. If not, see . # ########################################################################## -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.enum import LanguageSelection from openlp.core.common.i18n import translate diff --git a/openlp/plugins/bibles/forms/editbibleform.py b/openlp/plugins/bibles/forms/editbibleform.py index 90024c86e..c024ab58a 100644 --- a/openlp/plugins/bibles/forms/editbibleform.py +++ b/openlp/plugins/bibles/forms/editbibleform.py @@ -22,7 +22,7 @@ import logging import re -from PyQt6 import QtCore, QtWidgets, QtGui +from PySide6 import QtCore, QtWidgets, QtGui from openlp.core.common.i18n import UiStrings, translate from openlp.core.common.mixins import RegistryProperties diff --git a/openlp/plugins/bibles/forms/languagedialog.py b/openlp/plugins/bibles/forms/languagedialog.py index 96c6cf4c0..f2d1c1fc1 100644 --- a/openlp/plugins/bibles/forms/languagedialog.py +++ b/openlp/plugins/bibles/forms/languagedialog.py @@ -19,7 +19,7 @@ # along with this program. If not, see . # ########################################################################## -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.common.i18n import translate from openlp.core.lib.ui import create_button_box diff --git a/openlp/plugins/bibles/forms/languageform.py b/openlp/plugins/bibles/forms/languageform.py index de9c45072..375f058f0 100644 --- a/openlp/plugins/bibles/forms/languageform.py +++ b/openlp/plugins/bibles/forms/languageform.py @@ -24,8 +24,8 @@ Module implementing LanguageForm. """ import logging -from PyQt6 import QtCore -from PyQt6.QtWidgets import QDialog +from PySide6 import QtCore +from PySide6.QtWidgets import QDialog from openlp.core.common.i18n import LANGUAGES, translate from openlp.core.lib.ui import critical_error_message_box diff --git a/openlp/plugins/bibles/lib/biblestab.py b/openlp/plugins/bibles/lib/biblestab.py index fb773015d..8923cb48e 100644 --- a/openlp/plugins/bibles/lib/biblestab.py +++ b/openlp/plugins/bibles/lib/biblestab.py @@ -21,7 +21,7 @@ import logging -from PyQt6 import QtCore, QtGui, QtWidgets +from PySide6 import QtCore, QtGui, QtWidgets from openlp.core.common.enum import DisplayStyle, LanguageSelection, LayoutStyle from openlp.core.common.i18n import UiStrings, translate diff --git a/openlp/plugins/bibles/lib/db.py b/openlp/plugins/bibles/lib/db.py index e4805dcc2..374d8dce0 100644 --- a/openlp/plugins/bibles/lib/db.py +++ b/openlp/plugins/bibles/lib/db.py @@ -26,7 +26,7 @@ from pathlib import Path from typing import Any, List, Optional, Tuple import chardet -from PyQt6 import QtCore +from PySide6 import QtCore from sqlalchemy import Column, ForeignKey, func, or_ from sqlalchemy.exc import OperationalError from sqlalchemy.orm import Session, declarative_base, relationship diff --git a/openlp/plugins/bibles/lib/mediaitem.py b/openlp/plugins/bibles/lib/mediaitem.py index 234805d5e..08d3d1def 100755 --- a/openlp/plugins/bibles/lib/mediaitem.py +++ b/openlp/plugins/bibles/lib/mediaitem.py @@ -24,7 +24,7 @@ import re from enum import IntEnum, unique from typing import Any -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.enum import BibleSearch, DisplayStyle, LayoutStyle from openlp.core.common.i18n import UiStrings, get_locale_key, translate @@ -86,8 +86,8 @@ class BibleMediaItem(MediaManagerItem): """ This is the custom media manager item for Bibles. """ - bibles_go_live = QtCore.pyqtSignal(list) - bibles_add_to_service = QtCore.pyqtSignal(list) + bibles_go_live = QtCore.Signal(list) + bibles_add_to_service = QtCore.Signal(list) log.info('Bible Media Item loaded') def __init__(self, *args, **kwargs): @@ -1074,7 +1074,7 @@ class BibleMediaItem(MediaManagerItem): else: return False - @QtCore.pyqtSlot(str, bool, result=list) + @QtCore.Slot(str, bool, result=list) def search(self, string: str, show_error: bool = True) -> list[list[Any]]: """ Search for some Bible verses (by reference). diff --git a/openlp/plugins/bibles/lib/upgrade.py b/openlp/plugins/bibles/lib/upgrade.py index 7f1313826..3b92bc38c 100644 --- a/openlp/plugins/bibles/lib/upgrade.py +++ b/openlp/plugins/bibles/lib/upgrade.py @@ -23,7 +23,7 @@ The :mod:`upgrade` module provides a way for the database and schema that is the """ import logging -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from sqlalchemy import Table from sqlalchemy.sql.expression import delete, select diff --git a/openlp/plugins/custom/forms/editcustomdialog.py b/openlp/plugins/custom/forms/editcustomdialog.py index f7966e10b..e96347345 100644 --- a/openlp/plugins/custom/forms/editcustomdialog.py +++ b/openlp/plugins/custom/forms/editcustomdialog.py @@ -18,7 +18,7 @@ # You should have received a copy of the GNU General Public License # # along with this program. If not, see . # ########################################################################## -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.common.i18n import UiStrings, translate from openlp.core.lib.ui import create_button, create_button_box diff --git a/openlp/plugins/custom/forms/editcustomform.py b/openlp/plugins/custom/forms/editcustomform.py index f1d7a30ed..284dd5a04 100644 --- a/openlp/plugins/custom/forms/editcustomform.py +++ b/openlp/plugins/custom/forms/editcustomform.py @@ -21,7 +21,7 @@ import logging -from PyQt6 import QtCore, QtWidgets, QtGui +from PySide6 import QtCore, QtWidgets, QtGui from openlp.core.common.i18n import translate from openlp.core.common.registry import Registry diff --git a/openlp/plugins/custom/forms/editcustomslidedialog.py b/openlp/plugins/custom/forms/editcustomslidedialog.py index d1ca2a0ec..eff2740fb 100644 --- a/openlp/plugins/custom/forms/editcustomslidedialog.py +++ b/openlp/plugins/custom/forms/editcustomslidedialog.py @@ -19,7 +19,7 @@ # along with this program. If not, see . # ########################################################################## -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.common.i18n import UiStrings, translate from openlp.core.lib.ui import create_button, create_button_box diff --git a/openlp/plugins/custom/forms/editcustomslideform.py b/openlp/plugins/custom/forms/editcustomslideform.py index 431932b42..282592c44 100644 --- a/openlp/plugins/custom/forms/editcustomslideform.py +++ b/openlp/plugins/custom/forms/editcustomslideform.py @@ -21,7 +21,7 @@ import logging -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from .editcustomslidedialog import Ui_CustomSlideEditDialog diff --git a/openlp/plugins/custom/lib/customtab.py b/openlp/plugins/custom/lib/customtab.py index 6aff9f34f..a603d95df 100644 --- a/openlp/plugins/custom/lib/customtab.py +++ b/openlp/plugins/custom/lib/customtab.py @@ -22,7 +22,7 @@ The :mod:`~openlp.plugins.custom.lib.customtab` module contains the settings tab for the Custom Slides plugin, which is inserted into the configuration dialog. """ -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import translate from openlp.core.lib.settingstab import SettingsTab diff --git a/openlp/plugins/custom/lib/mediaitem.py b/openlp/plugins/custom/lib/mediaitem.py index 52992dce5..72b414d8d 100644 --- a/openlp/plugins/custom/lib/mediaitem.py +++ b/openlp/plugins/custom/lib/mediaitem.py @@ -21,7 +21,7 @@ import logging from typing import Any -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from sqlalchemy.sql import and_, func, or_ from openlp.core.common.enum import CustomSearch @@ -45,8 +45,8 @@ class CustomMediaItem(MediaManagerItem): """ This is the custom media manager item for Custom Slides. """ - custom_go_live = QtCore.pyqtSignal(list) - custom_add_to_service = QtCore.pyqtSignal(list) + custom_go_live = QtCore.Signal(list) + custom_add_to_service = QtCore.Signal(list) log.info('Custom Media Item loaded') def __init__(self, parent, plugin): @@ -348,7 +348,7 @@ class CustomMediaItem(MediaManagerItem): self.search_text_edit.clear() self.on_search_text_button_clicked() - @QtCore.pyqtSlot(str, bool, result=list) + @QtCore.Slot(str, bool, result=list) def search(self, string: str, show_error: bool = True) -> list[list[Any]]: """ Search the database for a given item. diff --git a/openlp/plugins/images/forms/addgroupform.py b/openlp/plugins/images/forms/addgroupform.py index a1299eb43..5fec41e1e 100644 --- a/openlp/plugins/images/forms/addgroupform.py +++ b/openlp/plugins/images/forms/addgroupform.py @@ -19,7 +19,7 @@ # along with this program. If not, see . # ########################################################################## -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import translate from openlp.core.lib.ui import critical_error_message_box diff --git a/openlp/plugins/images/forms/choosegroupdialog.py b/openlp/plugins/images/forms/choosegroupdialog.py index 5cd16d19a..b44e9df4e 100644 --- a/openlp/plugins/images/forms/choosegroupdialog.py +++ b/openlp/plugins/images/forms/choosegroupdialog.py @@ -19,7 +19,7 @@ # along with this program. If not, see . # ########################################################################## -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import translate from openlp.core.lib.ui import create_button_box diff --git a/openlp/plugins/images/forms/choosegroupform.py b/openlp/plugins/images/forms/choosegroupform.py index 085e4a790..57754341e 100644 --- a/openlp/plugins/images/forms/choosegroupform.py +++ b/openlp/plugins/images/forms/choosegroupform.py @@ -19,7 +19,7 @@ # along with this program. If not, see . # ########################################################################## -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.plugins.images.forms.choosegroupdialog import Ui_ChooseGroupDialog diff --git a/openlp/plugins/images/lib/imagetab.py b/openlp/plugins/images/lib/imagetab.py index ab706947c..f146d1a82 100644 --- a/openlp/plugins/images/lib/imagetab.py +++ b/openlp/plugins/images/lib/imagetab.py @@ -19,7 +19,7 @@ # along with this program. If not, see . # ########################################################################## -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.common.i18n import translate from openlp.core.common.registry import Registry diff --git a/openlp/plugins/images/lib/mediaitem.py b/openlp/plugins/images/lib/mediaitem.py index c3ab36019..d71bd2abe 100644 --- a/openlp/plugins/images/lib/mediaitem.py +++ b/openlp/plugins/images/lib/mediaitem.py @@ -22,7 +22,7 @@ import logging from pathlib import Path -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common import delete_file, get_images_filter from openlp.core.common.applocation import AppLocation @@ -46,8 +46,8 @@ class ImageMediaItem(FolderLibraryItem): """ This is the custom media manager item for images. """ - images_go_live = QtCore.pyqtSignal(list) - images_add_to_service = QtCore.pyqtSignal(list) + images_go_live = QtCore.Signal(list) + images_add_to_service = QtCore.Signal(list) log.info('Image Media Item loaded') def __init__(self, parent, plugin): diff --git a/openlp/plugins/media/forms/__init__.py b/openlp/plugins/media/forms/__init__.py index d5b8d62b3..310d3d1e7 100644 --- a/openlp/plugins/media/forms/__init__.py +++ b/openlp/plugins/media/forms/__init__.py @@ -21,7 +21,7 @@ import re -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import translate from openlp.core.lib.ui import critical_error_message_box diff --git a/openlp/plugins/media/forms/mediaclipselectordialog.py b/openlp/plugins/media/forms/mediaclipselectordialog.py index 9479daad0..5519e2077 100644 --- a/openlp/plugins/media/forms/mediaclipselectordialog.py +++ b/openlp/plugins/media/forms/mediaclipselectordialog.py @@ -20,7 +20,7 @@ ########################################################################## -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import translate from openlp.core.ui.icons import UiIcons diff --git a/openlp/plugins/media/forms/mediaclipselectorform.py b/openlp/plugins/media/forms/mediaclipselectorform.py index 4c9260d23..d587adf3a 100644 --- a/openlp/plugins/media/forms/mediaclipselectorform.py +++ b/openlp/plugins/media/forms/mediaclipselectorform.py @@ -25,7 +25,7 @@ from datetime import datetime from pathlib import Path from time import sleep -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import translate from openlp.core.common.mixins import RegistryProperties @@ -179,7 +179,7 @@ class MediaClipSelectorForm(QtWidgets.QDialog, Ui_MediaClipSelector, RegistryPro return True - @QtCore.pyqtSlot(bool) + @QtCore.Slot(bool) def on_load_disc_button_clicked(self, clicked): """ Load the media when the load-button has been clicked @@ -271,7 +271,7 @@ class MediaClipSelectorForm(QtWidgets.QDialog, Ui_MediaClipSelector, RegistryPro log.debug('load_disc_button end - ' 'vlc_media_player state: {state}'.format(state=self.vlc_media_player.get_state())) - @QtCore.pyqtSlot(bool) + @QtCore.Slot(bool) def on_play_button_clicked(self, clicked): """ Toggle the playback @@ -287,7 +287,7 @@ class MediaClipSelectorForm(QtWidgets.QDialog, Ui_MediaClipSelector, RegistryPro self.media_state_wait(vlc.State.Playing) self.play_button.setIcon(self.pause_icon) - @QtCore.pyqtSlot(bool) + @QtCore.Slot(bool) def on_set_start_button_clicked(self, clicked): """ Copy the current player position to start_position_edit @@ -303,7 +303,7 @@ class MediaClipSelectorForm(QtWidgets.QDialog, Ui_MediaClipSelector, RegistryPro if end_time < new_pos_time: self.end_timeedit.setTime(new_pos_time) - @QtCore.pyqtSlot(bool) + @QtCore.Slot(bool) def on_set_end_button_clicked(self, clicked): """ Copy the current player position to end_timeedit @@ -319,7 +319,7 @@ class MediaClipSelectorForm(QtWidgets.QDialog, Ui_MediaClipSelector, RegistryPro if start_time > new_pos_time: self.start_position_edit.setTime(new_pos_time) - @QtCore.pyqtSlot(QtCore.QTime) + @QtCore.Slot(QtCore.QTime) def on_start_timeedit_timeChanged(self, new_time): """ Called when start_position_edit is changed manually @@ -331,7 +331,7 @@ class MediaClipSelectorForm(QtWidgets.QDialog, Ui_MediaClipSelector, RegistryPro if end_time < new_time: self.end_timeedit.setTime(new_time) - @QtCore.pyqtSlot(QtCore.QTime) + @QtCore.Slot(QtCore.QTime) def on_end_timeedit_timeChanged(self, new_time): """ Called when end_timeedit is changed manually @@ -343,7 +343,7 @@ class MediaClipSelectorForm(QtWidgets.QDialog, Ui_MediaClipSelector, RegistryPro if start_time > new_time: self.start_position_edit.setTime(new_time) - @QtCore.pyqtSlot(bool) + @QtCore.Slot(bool) def on_jump_end_button_clicked(self, clicked): """ Set the player position to the position stored in end_timeedit @@ -357,7 +357,7 @@ class MediaClipSelectorForm(QtWidgets.QDialog, Ui_MediaClipSelector, RegistryPro end_time.msec() self.vlc_media_player.set_time(end_time_ms) - @QtCore.pyqtSlot(bool) + @QtCore.Slot(bool) def on_jump_start_button_clicked(self, clicked): """ Set the player position to the position stored in start_position_edit @@ -371,7 +371,7 @@ class MediaClipSelectorForm(QtWidgets.QDialog, Ui_MediaClipSelector, RegistryPro start_time.msec() self.vlc_media_player.set_time(start_time_ms) - @QtCore.pyqtSlot(int) + @QtCore.Slot(int) def on_titles_combo_box_currentIndexChanged(self, index): """ When a new title is chosen, it is loaded by VLC and info about audio and subtitle tracks is reloaded @@ -463,7 +463,7 @@ class MediaClipSelectorForm(QtWidgets.QDialog, Ui_MediaClipSelector, RegistryPro 'vlc_media_player state: {state}'.format(state=self.vlc_media_player.get_state())) self.application.set_normal_cursor() - @QtCore.pyqtSlot(int) + @QtCore.Slot(int) def on_audio_tracks_combobox_currentIndexChanged(self, index): """ When a new audio track is chosen update audio track bing played by VLC @@ -478,7 +478,7 @@ class MediaClipSelectorForm(QtWidgets.QDialog, Ui_MediaClipSelector, RegistryPro if audio_track and int(audio_track) > 0: self.vlc_media_player.audio_set_track(int(audio_track)) - @QtCore.pyqtSlot(int) + @QtCore.Slot(int) def on_subtitle_tracks_combobox_currentIndexChanged(self, index): """ When a new subtitle track is chosen update subtitle track bing played by VLC diff --git a/openlp/plugins/media/forms/networkstreamselectorform.py b/openlp/plugins/media/forms/networkstreamselectorform.py index 7330697c0..353c76bfd 100644 --- a/openlp/plugins/media/forms/networkstreamselectorform.py +++ b/openlp/plugins/media/forms/networkstreamselectorform.py @@ -22,7 +22,7 @@ import logging import re -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.common.i18n import translate from openlp.plugins.media.forms import StreamSelectorFormBase, VLCOptionsWidget diff --git a/openlp/plugins/media/forms/streamselectordialog.py b/openlp/plugins/media/forms/streamselectordialog.py index 8cee6f835..f97bff799 100644 --- a/openlp/plugins/media/forms/streamselectordialog.py +++ b/openlp/plugins/media/forms/streamselectordialog.py @@ -29,8 +29,8 @@ import glob import re -from PyQt6 import QtCore, QtWidgets -from PyQt6.QtMultimedia import QMediaDevices +from PySide6 import QtCore, QtWidgets +from PySide6.QtMultimedia import QMediaDevices from openlp.core.common.i18n import translate from openlp.core.common.platform import is_linux, is_macosx, is_win diff --git a/openlp/plugins/media/lib/mediaitem.py b/openlp/plugins/media/lib/mediaitem.py index 421771a66..d34cccb06 100644 --- a/openlp/plugins/media/lib/mediaitem.py +++ b/openlp/plugins/media/lib/mediaitem.py @@ -23,7 +23,7 @@ import logging import os from pathlib import Path -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from sqlalchemy.sql.expression import or_ from openlp.core.common import delete_file @@ -55,8 +55,8 @@ class MediaMediaItem(FolderLibraryItem): """ This is the custom media manager item for Media Slides. """ - media_go_live = QtCore.pyqtSignal(list) - media_add_to_service = QtCore.pyqtSignal(list) + media_go_live = QtCore.Signal(list) + media_add_to_service = QtCore.Signal(list) log.info('{name} MediaMediaItem loaded'.format(name=__name__)) def __init__(self, parent, plugin): diff --git a/openlp/plugins/planningcenter/forms/selectplandialog.py b/openlp/plugins/planningcenter/forms/selectplandialog.py index 943f21b19..95c7ce747 100644 --- a/openlp/plugins/planningcenter/forms/selectplandialog.py +++ b/openlp/plugins/planningcenter/forms/selectplandialog.py @@ -21,7 +21,7 @@ """ The :mod:`~openlp.plugins.planningcenter.forms.selectplandialog` module contains the user interface code for the dialog """ -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.common.i18n import translate diff --git a/openlp/plugins/planningcenter/forms/selectplanform.py b/openlp/plugins/planningcenter/forms/selectplanform.py index d2097795b..e9ed53f78 100644 --- a/openlp/plugins/planningcenter/forms/selectplanform.py +++ b/openlp/plugins/planningcenter/forms/selectplanform.py @@ -26,7 +26,7 @@ import logging import re from datetime import date, datetime -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import translate from openlp.core.common.registry import Registry diff --git a/openlp/plugins/planningcenter/lib/planningcentertab.py b/openlp/plugins/planningcenter/lib/planningcentertab.py index 97b24118a..1d1588e1f 100644 --- a/openlp/plugins/planningcenter/lib/planningcentertab.py +++ b/openlp/plugins/planningcenter/lib/planningcentertab.py @@ -22,7 +22,7 @@ The :mod:`~openlp.plugins.planningcenter.lib.planningcentertab` module contains the settings tab for the PlanningCenter plugin """ -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import translate from openlp.core.lib.settingstab import SettingsTab diff --git a/openlp/plugins/presentations/lib/impresscontroller.py b/openlp/plugins/presentations/lib/impresscontroller.py index 8ac31fd31..82164f091 100644 --- a/openlp/plugins/presentations/lib/impresscontroller.py +++ b/openlp/plugins/presentations/lib/impresscontroller.py @@ -33,7 +33,7 @@ import logging import time -from PyQt6 import QtCore +from PySide6 import QtCore from openlp.core.common import delete_file, get_uno_command, get_uno_instance, trace_error_handler from openlp.core.common.platform import is_win diff --git a/openlp/plugins/presentations/lib/mediaitem.py b/openlp/plugins/presentations/lib/mediaitem.py index dd36edc69..0344e2230 100644 --- a/openlp/plugins/presentations/lib/mediaitem.py +++ b/openlp/plugins/presentations/lib/mediaitem.py @@ -22,7 +22,7 @@ import logging import os import shutil -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from pathlib import Path from openlp.core.common import sha256_file_hash @@ -47,8 +47,8 @@ class PresentationMediaItem(FolderLibraryItem): This is the Presentation media manager item for Presentation Items. It can present files using Openoffice and Powerpoint """ - presentations_go_live = QtCore.pyqtSignal(list) - presentations_add_to_service = QtCore.pyqtSignal(list) + presentations_go_live = QtCore.Signal(list) + presentations_add_to_service = QtCore.Signal(list) log.info('Presentations Media Item loaded') def __init__(self, parent, plugin, controllers): diff --git a/openlp/plugins/presentations/lib/messagelistener.py b/openlp/plugins/presentations/lib/messagelistener.py index d36526801..e3ccbd861 100644 --- a/openlp/plugins/presentations/lib/messagelistener.py +++ b/openlp/plugins/presentations/lib/messagelistener.py @@ -22,7 +22,7 @@ import copy import logging from pathlib import Path -from PyQt6 import QtCore +from PySide6 import QtCore from openlp.core.common.registry import Registry from openlp.core.lib import ServiceItemContext diff --git a/openlp/plugins/presentations/lib/presentationcontroller.py b/openlp/plugins/presentations/lib/presentationcontroller.py index fbf615e1e..c09089db0 100644 --- a/openlp/plugins/presentations/lib/presentationcontroller.py +++ b/openlp/plugins/presentations/lib/presentationcontroller.py @@ -22,7 +22,7 @@ import logging import shutil from pathlib import Path -from PyQt6 import QtCore +from PySide6 import QtCore from openlp.core.common import Singleton, md5_hash, sha256_file_hash from openlp.core.common.applocation import AppLocation diff --git a/openlp/plugins/presentations/lib/presentationtab.py b/openlp/plugins/presentations/lib/presentationtab.py index e886da300..6bd8adf61 100644 --- a/openlp/plugins/presentations/lib/presentationtab.py +++ b/openlp/plugins/presentations/lib/presentationtab.py @@ -19,7 +19,7 @@ # along with this program. If not, see . # ########################################################################## -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import UiStrings, translate from openlp.core.lib.settingstab import SettingsTab diff --git a/openlp/plugins/songs/forms/authorsdialog.py b/openlp/plugins/songs/forms/authorsdialog.py index 3ee61aa1d..0b49f4ab9 100644 --- a/openlp/plugins/songs/forms/authorsdialog.py +++ b/openlp/plugins/songs/forms/authorsdialog.py @@ -19,7 +19,7 @@ # along with this program. If not, see . # ########################################################################## -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.common.i18n import translate from openlp.core.lib.ui import create_button_box diff --git a/openlp/plugins/songs/forms/authorsform.py b/openlp/plugins/songs/forms/authorsform.py index f0824fa7c..79cb46dc3 100644 --- a/openlp/plugins/songs/forms/authorsform.py +++ b/openlp/plugins/songs/forms/authorsform.py @@ -19,7 +19,7 @@ # along with this program. If not, see . # ########################################################################## -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import translate from openlp.core.lib.ui import critical_error_message_box diff --git a/openlp/plugins/songs/forms/duplicatesongremovalform.py b/openlp/plugins/songs/forms/duplicatesongremovalform.py index 92e78eac9..c8976ea0a 100644 --- a/openlp/plugins/songs/forms/duplicatesongremovalform.py +++ b/openlp/plugins/songs/forms/duplicatesongremovalform.py @@ -25,7 +25,7 @@ The duplicate song removal logic for OpenLP. import logging import multiprocessing -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import translate from openlp.core.common.mixins import RegistryProperties diff --git a/openlp/plugins/songs/forms/editsongdialog.py b/openlp/plugins/songs/forms/editsongdialog.py index 46155dea2..533a12753 100644 --- a/openlp/plugins/songs/forms/editsongdialog.py +++ b/openlp/plugins/songs/forms/editsongdialog.py @@ -19,7 +19,7 @@ # along with this program. If not, see . # ########################################################################## -from PyQt6 import QtCore, QtGui, QtWidgets +from PySide6 import QtCore, QtGui, QtWidgets from openlp.core.common.i18n import UiStrings, translate from openlp.core.lib.ui import create_button, create_button_box diff --git a/openlp/plugins/songs/forms/editsongform.py b/openlp/plugins/songs/forms/editsongform.py index 4e1270ad0..e3df2de6b 100644 --- a/openlp/plugins/songs/forms/editsongform.py +++ b/openlp/plugins/songs/forms/editsongform.py @@ -26,7 +26,7 @@ import logging import re from shutil import copyfile -from PyQt6 import QtCore, QtWidgets, QtGui +from PySide6 import QtCore, QtWidgets, QtGui from openlp.core.common import sha256_file_hash from openlp.core.common.applocation import AppLocation diff --git a/openlp/plugins/songs/forms/editversedialog.py b/openlp/plugins/songs/forms/editversedialog.py index 09669c346..112dc9f28 100644 --- a/openlp/plugins/songs/forms/editversedialog.py +++ b/openlp/plugins/songs/forms/editversedialog.py @@ -19,7 +19,7 @@ # along with this program. If not, see . # ########################################################################## -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.common.i18n import UiStrings, translate from openlp.core.lib.ui import create_button_box diff --git a/openlp/plugins/songs/forms/editverseform.py b/openlp/plugins/songs/forms/editverseform.py index 3e20737d6..9ff01b429 100644 --- a/openlp/plugins/songs/forms/editverseform.py +++ b/openlp/plugins/songs/forms/editverseform.py @@ -22,7 +22,7 @@ import logging import re -from PyQt6 import QtCore, QtGui, QtWidgets +from PySide6 import QtCore, QtGui, QtWidgets from openlp.core.common.i18n import translate from openlp.core.common.registry import Registry diff --git a/openlp/plugins/songs/forms/mediafilesdialog.py b/openlp/plugins/songs/forms/mediafilesdialog.py index dc015508f..0f93330bd 100644 --- a/openlp/plugins/songs/forms/mediafilesdialog.py +++ b/openlp/plugins/songs/forms/mediafilesdialog.py @@ -19,7 +19,7 @@ # along with this program. If not, see . # ########################################################################## -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import translate from openlp.core.lib.ui import create_button_box diff --git a/openlp/plugins/songs/forms/mediafilesform.py b/openlp/plugins/songs/forms/mediafilesform.py index be75613b5..67eaa173e 100644 --- a/openlp/plugins/songs/forms/mediafilesform.py +++ b/openlp/plugins/songs/forms/mediafilesform.py @@ -21,7 +21,7 @@ import logging -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from .mediafilesdialog import Ui_MediaFilesDialog diff --git a/openlp/plugins/songs/forms/songbookdialog.py b/openlp/plugins/songs/forms/songbookdialog.py index ee9280f59..d7b050b5b 100644 --- a/openlp/plugins/songs/forms/songbookdialog.py +++ b/openlp/plugins/songs/forms/songbookdialog.py @@ -19,7 +19,7 @@ # along with this program. If not, see . # ########################################################################## -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.common.i18n import translate from openlp.core.lib.ui import create_button_box diff --git a/openlp/plugins/songs/forms/songbookform.py b/openlp/plugins/songs/forms/songbookform.py index 6521f45b9..3b64e3f74 100644 --- a/openlp/plugins/songs/forms/songbookform.py +++ b/openlp/plugins/songs/forms/songbookform.py @@ -22,7 +22,7 @@ This module contains the song book form """ -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import translate from openlp.core.lib.ui import critical_error_message_box diff --git a/openlp/plugins/songs/forms/songexportform.py b/openlp/plugins/songs/forms/songexportform.py index 5f6b886fd..d690248dc 100644 --- a/openlp/plugins/songs/forms/songexportform.py +++ b/openlp/plugins/songs/forms/songexportform.py @@ -24,7 +24,7 @@ OpenLyrics format. """ import logging -from PyQt6 import QtCore, QtWidgets, QtGui +from PySide6 import QtCore, QtWidgets, QtGui from openlp.core.common.i18n import UiStrings, translate from openlp.core.common.registry import Registry diff --git a/openlp/plugins/songs/forms/songimportform.py b/openlp/plugins/songs/forms/songimportform.py index a4b41ba00..7b3bfbfd0 100644 --- a/openlp/plugins/songs/forms/songimportform.py +++ b/openlp/plugins/songs/forms/songimportform.py @@ -23,7 +23,7 @@ The song import functions for OpenLP. """ import logging -from PyQt6 import QtCore, QtWidgets, QtGui +from PySide6 import QtCore, QtWidgets, QtGui from openlp.core.common.handlers import handle_permission_error from openlp.core.common.i18n import UiStrings, translate @@ -44,7 +44,7 @@ class SongImportForm(OpenLPWizard, RegistryProperties): This is the Song Import Wizard, which allows easy importing of Songs into OpenLP from other formats like OpenLyrics, OpenSong and CCLI. """ - completeChanged = QtCore.pyqtSignal() + completeChanged = QtCore.Signal() log.info('SongImportForm loaded') def __init__(self, parent, plugin): diff --git a/openlp/plugins/songs/forms/songmaintenancedialog.py b/openlp/plugins/songs/forms/songmaintenancedialog.py index 7bfd02eb7..4b310afe6 100644 --- a/openlp/plugins/songs/forms/songmaintenancedialog.py +++ b/openlp/plugins/songs/forms/songmaintenancedialog.py @@ -19,7 +19,7 @@ # along with this program. If not, see . # ########################################################################## -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import UiStrings from openlp.core.lib.ui import create_button_box diff --git a/openlp/plugins/songs/forms/songmaintenanceform.py b/openlp/plugins/songs/forms/songmaintenanceform.py index d8e026aab..5110a12cf 100644 --- a/openlp/plugins/songs/forms/songmaintenanceform.py +++ b/openlp/plugins/songs/forms/songmaintenanceform.py @@ -20,7 +20,7 @@ ########################################################################## import logging -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from sqlalchemy.sql import and_ from openlp.core.common.i18n import UiStrings, get_natural_key, translate diff --git a/openlp/plugins/songs/forms/songreviewwidget.py b/openlp/plugins/songs/forms/songreviewwidget.py index f22c9db7c..86e976b19 100644 --- a/openlp/plugins/songs/forms/songreviewwidget.py +++ b/openlp/plugins/songs/forms/songreviewwidget.py @@ -21,7 +21,7 @@ """ A widget representing a song in the duplicate song removal wizard review page. """ -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.ui.icons import UiIcons from openlp.plugins.songs.lib import VerseType @@ -46,7 +46,7 @@ class SongReviewWidget(QtWidgets.QWidget): # connect calls. # That's why we cheat a little and use QWidget instead of SongReviewWidget as parameter. # While not being entirely correct, it does work. - song_remove_button_clicked = QtCore.pyqtSignal(QtWidgets.QWidget) + song_remove_button_clicked = QtCore.Signal(QtWidgets.QWidget) def __init__(self, parent, song): """ diff --git a/openlp/plugins/songs/forms/songselectdialog.py b/openlp/plugins/songs/forms/songselectdialog.py index ad7cedde3..850d38b97 100644 --- a/openlp/plugins/songs/forms/songselectdialog.py +++ b/openlp/plugins/songs/forms/songselectdialog.py @@ -22,7 +22,7 @@ The :mod:`~openlp.plugins.songs.forms.songselectdialog` module contains the user interface code for the dialog """ -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import translate from openlp.core.ui import SingleColumnTableWidget diff --git a/openlp/plugins/songs/forms/songselectform.py b/openlp/plugins/songs/forms/songselectform.py index 66ec5d139..1a9c8163b 100644 --- a/openlp/plugins/songs/forms/songselectform.py +++ b/openlp/plugins/songs/forms/songselectform.py @@ -24,7 +24,7 @@ The :mod:`~openlp.plugins.songs.forms.songselectform` module contains the GUI fo import logging import re -from PyQt6 import QtCore, QtWidgets, QtWebEngineCore +from PySide6 import QtCore, QtWidgets, QtWebEngineCore from sqlalchemy.sql import and_ from tempfile import TemporaryDirectory @@ -150,7 +150,7 @@ class SongSelectForm(QtWidgets.QDialog, Ui_SongSelectDialog, RegistryProperties) self.url_bar.setVisible(True) self.webview.setEnabled(True) - @QtCore.pyqtSlot(QtWebEngineCore.QWebEngineDownloadRequest) + @QtCore.Slot(QtWebEngineCore.QWebEngineDownloadRequest) def on_download_requested(self, download_item): """ Called when download is started diff --git a/openlp/plugins/songs/forms/topicsdialog.py b/openlp/plugins/songs/forms/topicsdialog.py index 7fcbb7ddc..b57cb4d3b 100644 --- a/openlp/plugins/songs/forms/topicsdialog.py +++ b/openlp/plugins/songs/forms/topicsdialog.py @@ -19,7 +19,7 @@ # along with this program. If not, see . # ########################################################################## -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.common.i18n import translate from openlp.core.lib.ui import create_button_box diff --git a/openlp/plugins/songs/forms/topicsform.py b/openlp/plugins/songs/forms/topicsform.py index e7e5e8843..eabab4587 100644 --- a/openlp/plugins/songs/forms/topicsform.py +++ b/openlp/plugins/songs/forms/topicsform.py @@ -22,7 +22,7 @@ This module contains the topic edit form. """ -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import translate from openlp.core.lib.ui import critical_error_message_box diff --git a/openlp/plugins/songs/forms/webengine.py b/openlp/plugins/songs/forms/webengine.py index 0210350cc..98218847c 100644 --- a/openlp/plugins/songs/forms/webengine.py +++ b/openlp/plugins/songs/forms/webengine.py @@ -23,7 +23,7 @@ Subclass of QWebEngineView used to block js messages; Useful for public sites where we have no control on the code run in the webpage, and do not want to see the error messages. """ -from PyQt6 import QtWebEngineWidgets, QtWebEngineCore +from PySide6 import QtWebEngineWidgets, QtWebEngineCore class WebEnginePage(QtWebEngineCore.QWebEnginePage): diff --git a/openlp/plugins/songs/lib/__init__.py b/openlp/plugins/songs/lib/__init__.py index eea5195f4..9d06cfdf5 100644 --- a/openlp/plugins/songs/lib/__init__.py +++ b/openlp/plugins/songs/lib/__init__.py @@ -25,7 +25,7 @@ The :mod:`~openlp.plugins.songs.lib` module contains a number of library functio import logging import re -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.common import CONTROL_CHARS from openlp.core.common.applocation import AppLocation diff --git a/openlp/plugins/songs/lib/importers/openoffice.py b/openlp/plugins/songs/lib/importers/openoffice.py index 3e4efd361..21a5a0ce2 100644 --- a/openlp/plugins/songs/lib/importers/openoffice.py +++ b/openlp/plugins/songs/lib/importers/openoffice.py @@ -21,7 +21,7 @@ import logging import time -from PyQt6 import QtCore +from PySide6 import QtCore from openlp.core.common import get_uno_command, get_uno_instance, normalize_str from openlp.core.common.i18n import translate diff --git a/openlp/plugins/songs/lib/importers/songimport.py b/openlp/plugins/songs/lib/importers/songimport.py index 249864abf..5e1f29325 100644 --- a/openlp/plugins/songs/lib/importers/songimport.py +++ b/openlp/plugins/songs/lib/importers/songimport.py @@ -23,7 +23,7 @@ import logging import re from shutil import copyfile -from PyQt6 import QtCore +from PySide6 import QtCore from openlp.core.common import normalize_str from openlp.core.common.applocation import AppLocation diff --git a/openlp/plugins/songs/lib/mediaitem.py b/openlp/plugins/songs/lib/mediaitem.py index bf38bc6e6..f452ccd7a 100644 --- a/openlp/plugins/songs/lib/mediaitem.py +++ b/openlp/plugins/songs/lib/mediaitem.py @@ -25,7 +25,7 @@ import os from shutil import copyfile from typing import Any -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from sqlalchemy.sql import and_, or_ from openlp.core.state import State @@ -58,8 +58,8 @@ class SongMediaItem(MediaManagerItem): """ This is the custom media manager item for Songs. """ - songs_go_live = QtCore.pyqtSignal(list) - songs_add_to_service = QtCore.pyqtSignal(list) + songs_go_live = QtCore.Signal(list) + songs_add_to_service = QtCore.Signal(list) log.info('Song Media Item loaded') def __init__(self, parent, plugin): @@ -846,7 +846,7 @@ class SongMediaItem(MediaManagerItem): # List must be empty at the end return not author_list - @QtCore.pyqtSlot(str, bool, result=list) + @QtCore.Slot(str, bool, result=list) def search(self, string: str, show_error: bool = True) -> list[list[Any]]: """ Search for some songs diff --git a/openlp/plugins/songs/lib/songselect.py b/openlp/plugins/songs/lib/songselect.py index 297f4dca3..488101d0d 100644 --- a/openlp/plugins/songs/lib/songselect.py +++ b/openlp/plugins/songs/lib/songselect.py @@ -23,7 +23,7 @@ The :mod:`~openlp.plugins.songs.lib.songselect` module contains the SongSelect i """ import logging import re -from PyQt6 import QtCore +from PySide6 import QtCore from openlp.plugins.songs.lib import VerseType, clean_song from openlp.plugins.songs.lib.db import Song, Author, Topic diff --git a/openlp/plugins/songs/lib/songstab.py b/openlp/plugins/songs/lib/songstab.py index cf7081dba..a251902c0 100644 --- a/openlp/plugins/songs/lib/songstab.py +++ b/openlp/plugins/songs/lib/songstab.py @@ -19,7 +19,7 @@ # along with this program. If not, see . # ########################################################################## -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import translate from openlp.core.common.enum import SongFirstSlideMode diff --git a/openlp/plugins/songs/lib/ui.py b/openlp/plugins/songs/lib/ui.py index f0493e576..4ecf6d064 100644 --- a/openlp/plugins/songs/lib/ui.py +++ b/openlp/plugins/songs/lib/ui.py @@ -22,7 +22,7 @@ The :mod:`openlp.plugins.songs.lib.ui` module provides standard UI components for the songs plugin. """ -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.common.i18n import translate from openlp.core.common.registry import Registry diff --git a/openlp/plugins/songs/songsplugin.py b/openlp/plugins/songs/songsplugin.py index ce9811546..1af91549d 100644 --- a/openlp/plugins/songs/songsplugin.py +++ b/openlp/plugins/songs/songsplugin.py @@ -28,7 +28,7 @@ import sqlite3 from pathlib import Path from tempfile import gettempdir -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.state import State from openlp.core.common.actions import ActionList diff --git a/openlp/plugins/songusage/forms/songusagedeletedialog.py b/openlp/plugins/songusage/forms/songusagedeletedialog.py index a7bae410c..e646574aa 100644 --- a/openlp/plugins/songusage/forms/songusagedeletedialog.py +++ b/openlp/plugins/songusage/forms/songusagedeletedialog.py @@ -19,7 +19,7 @@ # along with this program. If not, see . # ########################################################################## -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import translate from openlp.core.lib.ui import create_button_box diff --git a/openlp/plugins/songusage/forms/songusagedeleteform.py b/openlp/plugins/songusage/forms/songusagedeleteform.py index 4f18eeece..2dc2f657e 100644 --- a/openlp/plugins/songusage/forms/songusagedeleteform.py +++ b/openlp/plugins/songusage/forms/songusagedeleteform.py @@ -19,7 +19,7 @@ # along with this program. If not, see . # ########################################################################## -from PyQt6 import QtCore, QtWidgets, QtGui +from PySide6 import QtCore, QtWidgets, QtGui from openlp.core.common.i18n import translate from openlp.core.common.mixins import RegistryProperties diff --git a/openlp/plugins/songusage/forms/songusagedetaildialog.py b/openlp/plugins/songusage/forms/songusagedetaildialog.py index 85d8d4d64..8d618b7af 100644 --- a/openlp/plugins/songusage/forms/songusagedetaildialog.py +++ b/openlp/plugins/songusage/forms/songusagedetaildialog.py @@ -18,7 +18,7 @@ # You should have received a copy of the GNU General Public License # # along with this program. If not, see . # ########################################################################## -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import translate from openlp.core.lib.ui import create_button_box diff --git a/openlp/plugins/songusage/forms/songusagedetailform.py b/openlp/plugins/songusage/forms/songusagedetailform.py index e265f73d9..3ff6c1888 100644 --- a/openlp/plugins/songusage/forms/songusagedetailform.py +++ b/openlp/plugins/songusage/forms/songusagedetailform.py @@ -20,7 +20,7 @@ ########################################################################## import logging -from PyQt6 import QtCore, QtWidgets, QtGui +from PySide6 import QtCore, QtWidgets, QtGui from sqlalchemy.sql import and_ from openlp.core.common.i18n import translate diff --git a/openlp/plugins/songusage/songusageplugin.py b/openlp/plugins/songusage/songusageplugin.py index f3167604e..623dd5730 100644 --- a/openlp/plugins/songusage/songusageplugin.py +++ b/openlp/plugins/songusage/songusageplugin.py @@ -22,7 +22,7 @@ import logging from datetime import datetime -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.state import State from openlp.core.common.actions import ActionList diff --git a/scripts/check_dependencies.py b/scripts/check_dependencies.py index 0f4cbd5af..519a65ac0 100755 --- a/scripts/check_dependencies.py +++ b/scripts/check_dependencies.py @@ -40,7 +40,7 @@ IS_MAC = sys.platform.startswith('dar') VERS = { 'Python': '3.6', - 'PyQt6': '6.2', + 'PySide6': '6.2', 'Qt6': '6.2', 'pymediainfo': '2.2', 'sqlalchemy': '0.5', @@ -69,16 +69,16 @@ MACOSX_MODULES = [ MODULES = [ - 'PyQt6', - 'PyQt6.QtCore', - 'PyQt6.QtGui', - 'PyQt6.QtWidgets', - 'PyQt6.QtNetwork', - 'PyQt6.QtOpenGL', - 'PyQt6.QtSvg', - 'PyQt6.QtTest', - ('PyQt6.QtWebEngineCore', '(PyQtWebEngine on PyPI)'), - 'PyQt6.QtMultimedia', + 'PySide6', + 'PySide6.QtCore', + 'PySide6.QtGui', + 'PySide6.QtWidgets', + 'PySide6.QtNetwork', + 'PySide6.QtOpenGL', + 'PySide6.QtSvg', + 'PySide6.QtTest', + ('PySide6.QtWebEngineCore', '(PySideWebEngine on PyPI)'), + 'PySide6.QtMultimedia', 'appdirs', 'sqlalchemy', 'alembic', @@ -109,7 +109,7 @@ OPTIONAL_MODULES = [ ('uno', '(LibreOffice/OpenOffice support)'), # development/testing modules ('pytest', '(testing framework)'), - ('pytestqt', '(PyQt testing framework - pytest-qt on PyPI)'), + ('pytestqt', '(PySide testing framework - pytest-qt on PyPI)'), ('flake8', '(linter)') ] @@ -180,11 +180,11 @@ def verify_python(): def verify_versions(): print('Verifying version of modules...') try: - from PyQt6 import QtCore - check_vers(QtCore.PYQT_VERSION_STR, VERS['PyQt6'], 'PyQt6') + from PySide6 import QtCore + check_vers(QtCore.PYQT_VERSION_STR, VERS['PySide6'], 'PySide6') check_vers(QtCore.qVersion(), VERS['Qt6'], 'Qt6') except ImportError: - print_vers_fail(VERS['PyQt6'], 'PyQt6') + print_vers_fail(VERS['PySide6'], 'PySide6') print_vers_fail(VERS['Qt6'], 'Qt6') try: import sqlalchemy @@ -220,7 +220,7 @@ def print_qt_image_formats(): """ w('Qt6 image formats... ') try: - from PyQt6 import QtGui + from PySide6 import QtGui read_f = ', '.join([bytes(fmt).decode().lower() for fmt in QtGui.QImageReader.supportedImageFormats()]) write_f = ', '.join([bytes(fmt).decode().lower() for fmt in QtGui.QImageWriter.supportedImageFormats()]) w(os.linesep) diff --git a/scripts/resources.arm64.patch b/scripts/resources.arm64.patch index d85aced37..7cc4aa463 100644 --- a/scripts/resources.arm64.patch +++ b/scripts/resources.arm64.patch @@ -33,7 +33,7 @@ +The :mod:`resources` module provides application images and icons in a central +store for use by OpenLP. +""" - from PyQt6 import QtCore + from PySide6 import QtCore qt_resource_data = b"\ @@ -61434,9 +61452,13 @@ else: diff --git a/scripts/resources.patch b/scripts/resources.patch index db4f60013..6ab929e64 100644 --- a/scripts/resources.patch +++ b/scripts/resources.patch @@ -33,7 +33,7 @@ +The :mod:`resources` module provides application images and icons in a central +store for use by OpenLP. +""" - from PyQt6 import QtCore + from PySide6 import QtCore qt_resource_data = "\ @@ -71953,9 +71971,14 @@ diff --git a/setup.cfg b/setup.cfg index 9fa7f3e38..87048a1fe 100644 --- a/setup.cfg +++ b/setup.cfg @@ -32,7 +32,7 @@ source = /Users/raoul/Library/Application Support/gitlab-runner/builds/*/*/openlp/openlp/ [tool:pytest] -qt_api=pyqt6 +qt_api=pyside6 [mypy] # Ignore for now, we'll come back to this later diff --git a/setup.py b/setup.py index a55f86c8e..e17759d63 100644 --- a/setup.py +++ b/setup.py @@ -110,8 +110,7 @@ using a computer and a display/projector.""", 'pymediainfo >= 2.2', 'pyobjc; platform_system=="Darwin"', 'pyobjc-framework-Cocoa; platform_system=="Darwin"', - 'PyQt6 >= 6.2', - 'PyQtWebEngine', + 'PySide6 >= 6.2', 'Pyro5; platform_system=="Darwin"', 'pywin32; platform_system=="Windows"', 'QtAwesome', diff --git a/tests/conftest.py b/tests/conftest.py index 36a90bb57..0452824ad 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -30,7 +30,7 @@ from unittest.mock import MagicMock import pytest from pytestqt.qt_compat import qt_api -from PyQt6 import QtCore # noqa +from PySide6 import QtCore # noqa from openlp.core.app import OpenLP from openlp.core.state import State diff --git a/tests/helpers/projector.py b/tests/helpers/projector.py index 1387fe6a4..94b7ab035 100644 --- a/tests/helpers/projector.py +++ b/tests/helpers/projector.py @@ -23,7 +23,7 @@ Help classes/functions for PJLink Projector tests """ from unittest.mock import MagicMock -from PyQt6 import QtNetwork +from PySide6 import QtNetwork from openlp.core.projectors.constants import S_NOT_CONNECTED, S_OFF, S_OK from openlp.core.projectors.db import Projector diff --git a/tests/openlp_core/api/endpoint/test_controller.py b/tests/openlp_core/api/endpoint/test_controller.py index 17ea1d413..1c2e557f3 100644 --- a/tests/openlp_core/api/endpoint/test_controller.py +++ b/tests/openlp_core/api/endpoint/test_controller.py @@ -21,7 +21,7 @@ import pytest from unittest.mock import MagicMock, patch -from PyQt6 import QtCore +from PySide6 import QtCore from openlp.core.api import app as flask_app from openlp.core.state import State diff --git a/tests/openlp_core/api/test_tab.py b/tests/openlp_core/api/test_tab.py index 468f89671..7f0aa462c 100644 --- a/tests/openlp_core/api/test_tab.py +++ b/tests/openlp_core/api/test_tab.py @@ -26,7 +26,7 @@ import pytest import re from unittest.mock import MagicMock, patch -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.api.tab import ApiTab from openlp.core.common import get_network_interfaces diff --git a/tests/openlp_core/api/v2/test_plugins.py b/tests/openlp_core/api/v2/test_plugins.py index b5fb9ef69..9067b9141 100644 --- a/tests/openlp_core/api/v2/test_plugins.py +++ b/tests/openlp_core/api/v2/test_plugins.py @@ -22,7 +22,7 @@ from collections import namedtuple from pathlib import Path from unittest.mock import MagicMock -from PyQt6 import QtCore +from PySide6 import QtCore from openlp.core.common.registry import Registry from openlp.core.common.enum import PluginStatus diff --git a/tests/openlp_core/common/test_actions.py b/tests/openlp_core/common/test_actions.py index 9e3596cea..18dddd9f2 100644 --- a/tests/openlp_core/common/test_actions.py +++ b/tests/openlp_core/common/test_actions.py @@ -24,7 +24,7 @@ Package to test the openlp.core.common.actions package. import pytest from unittest.mock import MagicMock -from PyQt6 import QtCore, QtGui +from PySide6 import QtCore, QtGui from openlp.core.common.actions import ActionList, CategoryActionList from openlp.core.common.registry import Registry diff --git a/tests/openlp_core/common/test_network_interfaces.py b/tests/openlp_core/common/test_network_interfaces.py index 0973d8b3c..34e95e0ce 100644 --- a/tests/openlp_core/common/test_network_interfaces.py +++ b/tests/openlp_core/common/test_network_interfaces.py @@ -24,8 +24,8 @@ Functional tests to test calls for network interfaces. from unittest.mock import MagicMock, call, patch import pytest -from PyQt6.QtCore import QObject -from PyQt6.QtNetwork import QHostAddress, QNetworkAddressEntry, QNetworkInterface +from PySide6.QtCore import QObject +from PySide6.QtNetwork import QHostAddress, QNetworkAddressEntry, QNetworkInterface # import openlp.core.common from openlp.core.common import get_network_interfaces diff --git a/tests/openlp_core/display/test_screens.py b/tests/openlp_core/display/test_screens.py index 6277cb882..f0f3dbb4e 100644 --- a/tests/openlp_core/display/test_screens.py +++ b/tests/openlp_core/display/test_screens.py @@ -23,7 +23,7 @@ Package to test the openlp.core.lib.screenlist package. """ from unittest.mock import MagicMock, patch -from PyQt6 import QtCore +from PySide6 import QtCore from openlp.core.display.screens import Screen, ScreenList diff --git a/tests/openlp_core/display/test_window.py b/tests/openlp_core/display/test_window.py index 12fd539fe..175d25648 100644 --- a/tests/openlp_core/display/test_window.py +++ b/tests/openlp_core/display/test_window.py @@ -28,10 +28,10 @@ from pathlib import Path from unittest.mock import MagicMock, patch -from PyQt6 import QtCore +from PySide6 import QtCore # Mock QtWebEngineCore -sys.modules['PyQt6.QtWebEngineCore'] = MagicMock() +sys.modules['PySide6.QtWebEngineCore'] = MagicMock() from openlp.core.common.enum import ServiceItemType from openlp.core.common.platform import is_win diff --git a/tests/openlp_core/lib/test_lib.py b/tests/openlp_core/lib/test_lib.py index 97bba54a7..cad2e49b2 100644 --- a/tests/openlp_core/lib/test_lib.py +++ b/tests/openlp_core/lib/test_lib.py @@ -27,7 +27,7 @@ import pytest from pathlib import Path from unittest.mock import MagicMock, patch -from PyQt6 import QtCore, QtGui +from PySide6 import QtCore, QtGui from openlp.core.lib import DataType, build_icon, check_item_selected, create_separated_list, create_thumb, \ get_text_file_string, image_to_byte, read_or_fail, read_int, resize_image, seek_or_fail, str_to_bool, validate_thumb diff --git a/tests/openlp_core/lib/test_theme.py b/tests/openlp_core/lib/test_theme.py index b71c48ddc..03a86530f 100644 --- a/tests/openlp_core/lib/test_theme.py +++ b/tests/openlp_core/lib/test_theme.py @@ -22,7 +22,7 @@ Package to test the openlp.core.lib.theme package. """ import pytest -from PyQt6 import QtCore +from PySide6 import QtCore from pathlib import Path from unittest.mock import MagicMock, patch diff --git a/tests/openlp_core/lib/test_ui.py b/tests/openlp_core/lib/test_ui.py index e22ded842..437a18aa8 100644 --- a/tests/openlp_core/lib/test_ui.py +++ b/tests/openlp_core/lib/test_ui.py @@ -23,7 +23,7 @@ Package to test the openlp.core.lib.ui package. """ from unittest.mock import MagicMock, call, patch -from PyQt6 import QtCore, QtGui, QtWidgets +from PySide6 import QtCore, QtGui, QtWidgets from openlp.core.common.i18n import UiStrings, translate from openlp.core.lib.ui import MultipleViewModeList, add_list_view_mode_items_to_toolbar, add_welcome_page, \ diff --git a/tests/openlp_core/projectors/pjlink/test_misc_pjlink.py b/tests/openlp_core/projectors/pjlink/test_misc_pjlink.py index 83ca2b49f..9335fdbf8 100644 --- a/tests/openlp_core/projectors/pjlink/test_misc_pjlink.py +++ b/tests/openlp_core/projectors/pjlink/test_misc_pjlink.py @@ -26,7 +26,7 @@ import logging import openlp.core.projectors.pjlink -from PyQt6 import QtNetwork +from PySide6 import QtNetwork from unittest.mock import DEFAULT, MagicMock, patch from openlp.core.projectors.constants import QSOCKET_STATE, STATUS_CODE, STATUS_MSG, \ diff --git a/tests/openlp_core/projectors/test_projector_sourceform.py b/tests/openlp_core/projectors/test_projector_sourceform.py index 3c40039bf..f8e8aa84c 100644 --- a/tests/openlp_core/projectors/test_projector_sourceform.py +++ b/tests/openlp_core/projectors/test_projector_sourceform.py @@ -26,7 +26,7 @@ Tests for the Projector Source Select form. import pytest from unittest.mock import patch -from PyQt6.QtWidgets import QDialog +from PySide6.QtWidgets import QDialog from openlp.core.projectors.constants import PJLINK_DEFAULT_CODES, PJLINK_DEFAULT_SOURCES from openlp.core.projectors.db import Projector, ProjectorDB diff --git a/tests/openlp_core/projectors/ui/test_tab.py b/tests/openlp_core/projectors/ui/test_tab.py index 4b1f336f2..ce6d9f5c6 100644 --- a/tests/openlp_core/projectors/ui/test_tab.py +++ b/tests/openlp_core/projectors/ui/test_tab.py @@ -26,7 +26,7 @@ import logging import openlp.core.projectors.tab -from PyQt6 import QtWidgets # noqa +from PySide6 import QtWidgets # noqa from unittest.mock import MagicMock from openlp.core.projectors.tab import ProjectorTab diff --git a/tests/openlp_core/test_app.py b/tests/openlp_core/test_app.py index 189399eb0..a30b199bc 100644 --- a/tests/openlp_core/test_app.py +++ b/tests/openlp_core/test_app.py @@ -26,10 +26,10 @@ from tempfile import mkdtemp from unittest.mock import MagicMock, patch -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets # Mock QtWebEngineCore -sys.modules['PyQt6.QtWebEngineCore'] = MagicMock() +sys.modules['PySide6.QtWebEngineCore'] = MagicMock() from openlp.core.app import parse_options, backup_if_version_changed, main as app_main, setup_portable_settings from openlp.core.common.platform import is_win diff --git a/tests/openlp_core/ui/media/test_mediacontroller.py b/tests/openlp_core/ui/media/test_mediacontroller.py index b9edeb742..f1ecf34fe 100644 --- a/tests/openlp_core/ui/media/test_mediacontroller.py +++ b/tests/openlp_core/ui/media/test_mediacontroller.py @@ -27,7 +27,7 @@ from unittest import skipUnless from unittest.mock import MagicMock, patch import pytest -from PyQt6 import QtCore +from PySide6 import QtCore from openlp.core.state import State from openlp.core.common.platform import is_linux, is_macosx diff --git a/tests/openlp_core/ui/test_confirmationform.py b/tests/openlp_core/ui/test_confirmationform.py index fd8e4ef9e..867f8e287 100644 --- a/tests/openlp_core/ui/test_confirmationform.py +++ b/tests/openlp_core/ui/test_confirmationform.py @@ -22,7 +22,7 @@ Test the Confirmation Form """ from unittest.mock import patch -from PyQt6 import QtWidgets, QtTest, QtCore +from PySide6 import QtWidgets, QtTest, QtCore from openlp.core.ui.confirmationform import ConfirmationForm diff --git a/tests/openlp_core/ui/test_exceptionform.py b/tests/openlp_core/ui/test_exceptionform.py index 904fc2c92..54d0de5b4 100644 --- a/tests/openlp_core/ui/test_exceptionform.py +++ b/tests/openlp_core/ui/test_exceptionform.py @@ -26,7 +26,7 @@ from pathlib import Path from unittest.mock import MagicMock, call, patch import pytest -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.settings import Settings from openlp.core.common.registry import Registry @@ -43,14 +43,14 @@ exceptionform.VLC_VERSION = 'VLC Test' MAIL_ITEM_TEXT = ('**OpenLP Bug Report**\nVersion: Trunk Test\n\n--- Details of the Exception. ---\n\n' 'Description Test\n\n --- Exception Traceback ---\nopenlp: Traceback Test\n' '--- System information ---\nPlatform: Nose Test\n\n--- Library Versions ---\n' - 'Python: Python Test\nQt6: Qt6 Test\nPyQt6: PyQt6 Test\n' + 'Python: Python Test\nQt6: Qt6 Test\nPySide6: PySide6 Test\n' 'SQLAlchemy: SQLAlchemy Test\nAlembic: Alembic Test\nBeautifulSoup: BeautifulSoup Test\n' 'lxml: ETree Test\nChardet: Chardet Test\nPyEnchant: PyEnchant Test\nMako: Mako Test\n' 'pyICU: pyICU Test\nVLC: VLC Test\nPyUNO: UNO Bridge Test\n') LIBRARY_VERSIONS = OrderedDict([ ('Python', 'Python Test'), ('Qt6', 'Qt6 Test'), - ('PyQt6', 'PyQt6 Test'), + ('PySide6', 'PySide6 Test'), ('SQLAlchemy', 'SQLAlchemy Test'), ('Alembic', 'Alembic Test'), ('BeautifulSoup', 'BeautifulSoup Test'), diff --git a/tests/openlp_core/ui/test_filerenamedialog.py b/tests/openlp_core/ui/test_filerenamedialog.py index 675f4e0ef..b63e2b83b 100644 --- a/tests/openlp_core/ui/test_filerenamedialog.py +++ b/tests/openlp_core/ui/test_filerenamedialog.py @@ -24,7 +24,7 @@ Package to test the openlp.core.ui package. import pytest from unittest.mock import MagicMock, patch -from PyQt6 import QtTest +from PySide6 import QtTest from openlp.core.common.registry import Registry from openlp.core.common.settings import Settings @@ -43,7 +43,7 @@ def test_window_title(form: FileRenameForm): Test the windowTitle of the FileRenameDialog """ # GIVEN: A mocked QDialog.exec() method - with patch('PyQt6.QtWidgets.QDialog.exec'): + with patch('PySide6.QtWidgets.QDialog.exec'): # WHEN: The form is executed with no args form.exec() @@ -70,7 +70,7 @@ def test_line_edit_focus(form: FileRenameForm): Test that the file_name_edit setFocus has called with True when executed """ # GIVEN: A mocked QDialog.exec() method and mocked file_name_edit.setFocus() method. - with patch('PyQt6.QtWidgets.QDialog.exec'): + with patch('PySide6.QtWidgets.QDialog.exec'): mocked_set_focus = MagicMock() form.file_name_edit.setFocus = mocked_set_focus diff --git a/tests/openlp_core/ui/test_firsttimeform.py b/tests/openlp_core/ui/test_firsttimeform.py index b8e3a93af..1f736e112 100644 --- a/tests/openlp_core/ui/test_firsttimeform.py +++ b/tests/openlp_core/ui/test_firsttimeform.py @@ -25,7 +25,7 @@ import pytest from pathlib import Path from unittest.mock import MagicMock, call, patch, DEFAULT -from PyQt6 import QtCore, QtWidgets, QtTest +from PySide6 import QtCore, QtWidgets, QtTest from openlp.core.common.registry import Registry from openlp.core.ui.firsttimeform import FirstTimeForm, ThemeListWidgetItem diff --git a/tests/openlp_core/ui/test_generaltab.py b/tests/openlp_core/ui/test_generaltab.py index 1837aa37c..809fedfca 100644 --- a/tests/openlp_core/ui/test_generaltab.py +++ b/tests/openlp_core/ui/test_generaltab.py @@ -24,7 +24,7 @@ Package to test the openlp.core.ui.generaltab package. from openlp.core.ui.generaltab import GeneralTab from openlp.core.ui.settingsform import SettingsForm -from PyQt6 import QtCore, QtTest +from PySide6 import QtCore, QtTest def test_creation(settings): diff --git a/tests/openlp_core/ui/test_icons.py b/tests/openlp_core/ui/test_icons.py index e3c18181a..6b1af442a 100644 --- a/tests/openlp_core/ui/test_icons.py +++ b/tests/openlp_core/ui/test_icons.py @@ -21,7 +21,7 @@ Package to test the openlp.core.ui.icons package. """ from unittest.mock import patch -from PyQt6 import QtGui +from PySide6 import QtGui from openlp.core.ui.icons import UiIcons diff --git a/tests/openlp_core/ui/test_library.py b/tests/openlp_core/ui/test_library.py index ba7994685..69a804c7f 100644 --- a/tests/openlp_core/ui/test_library.py +++ b/tests/openlp_core/ui/test_library.py @@ -22,7 +22,7 @@ from pathlib import Path from unittest.mock import MagicMock, patch import pytest -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.platform import is_win from openlp.core.ui.library import FolderLibraryItem diff --git a/tests/openlp_core/ui/test_mainwindow.py b/tests/openlp_core/ui/test_mainwindow.py index 582f5e2ed..fef4c0940 100644 --- a/tests/openlp_core/ui/test_mainwindow.py +++ b/tests/openlp_core/ui/test_mainwindow.py @@ -28,7 +28,7 @@ from shutil import rmtree from tempfile import mkdtemp import pytest -from PyQt6 import QtCore, QtWidgets, QtGui +from PySide6 import QtCore, QtWidgets, QtGui from openlp.core.common.i18n import UiStrings from openlp.core.common.platform import is_macosx diff --git a/tests/openlp_core/ui/test_serviceitemeditform.py b/tests/openlp_core/ui/test_serviceitemeditform.py index cdf4ca186..9ab467819 100644 --- a/tests/openlp_core/ui/test_serviceitemeditform.py +++ b/tests/openlp_core/ui/test_serviceitemeditform.py @@ -24,7 +24,7 @@ Package to test the :mod:`~openlp.core.ui.serviceitemeditform` package. import pytest from unittest.mock import MagicMock, call, patch -from PyQt6 import QtCore, QtTest +from PySide6 import QtCore, QtTest from openlp.core.common.registry import Registry from openlp.core.common.settings import Settings diff --git a/tests/openlp_core/ui/test_servicemanager.py b/tests/openlp_core/ui/test_servicemanager.py index e8ffec8cf..6cd844b05 100644 --- a/tests/openlp_core/ui/test_servicemanager.py +++ b/tests/openlp_core/ui/test_servicemanager.py @@ -30,7 +30,7 @@ from unittest.mock import Mock, MagicMock, call, patch from zipfile import BadZipFile import pytest -from PyQt6 import QtCore, QtGui, QtWidgets +from PySide6 import QtCore, QtGui, QtWidgets from openlp.core.common import ThemeLevel from openlp.core.common.registry import Registry @@ -970,7 +970,7 @@ def test_theme_change_song(mocked_regenerate_service_items: MagicMock, settings: 'The visibility should be True' -@patch('PyQt6.QtWidgets.QTreeWidgetItemIterator') +@patch('PySide6.QtWidgets.QTreeWidgetItemIterator') def test_regenerate_service_items(mocked_tree: MagicMock, settings: Settings): """ test that an unmodified service item that is regenerated is still unmodified @@ -998,7 +998,7 @@ def test_regenerate_service_items(mocked_tree: MagicMock, settings: Settings): service_manager.repaint_service_list.assert_called_once() -@patch('PyQt6.QtWidgets.QTreeWidgetItemIterator') +@patch('PySide6.QtWidgets.QTreeWidgetItemIterator') def test_regenerate_service_items_modified(mocked_tree: MagicMock, settings: Settings): """ test that an unmodified service item that is regenerated is still unmodified @@ -1026,7 +1026,7 @@ def test_regenerate_service_items_modified(mocked_tree: MagicMock, settings: Set service_manager.repaint_service_list.assert_called_once() -@patch('PyQt6.QtWidgets.QTreeWidgetItemIterator') +@patch('PySide6.QtWidgets.QTreeWidgetItemIterator') def test_regenerate_service_items_set_modified(mocked_tree: MagicMock, settings: Settings): """ test that a service item that is regenerated with the modified argument becomes modified diff --git a/tests/openlp_core/ui/test_servicenotedialog.py b/tests/openlp_core/ui/test_servicenotedialog.py index d150c5e8d..542b775a4 100644 --- a/tests/openlp_core/ui/test_servicenotedialog.py +++ b/tests/openlp_core/ui/test_servicenotedialog.py @@ -24,7 +24,7 @@ Package to test the openlp.core.ui package. import pytest from unittest.mock import patch -from PyQt6 import QtCore, QtTest +from PySide6 import QtCore, QtTest from openlp.core.common.registry import Registry from openlp.core.common.settings import Settings diff --git a/tests/openlp_core/ui/test_settings_form.py b/tests/openlp_core/ui/test_settings_form.py index 95748dba4..330881b42 100644 --- a/tests/openlp_core/ui/test_settings_form.py +++ b/tests/openlp_core/ui/test_settings_form.py @@ -24,7 +24,7 @@ Package to test the openlp.core.lib.settingsform package. import pytest from unittest.mock import MagicMock, patch -from PyQt6 import QtCore, QtTest +from PySide6 import QtCore, QtTest from openlp.core.ui.settingsform import SettingsForm @@ -47,7 +47,7 @@ def test_basic_cancel(form): # GIVEN: An initial form # WHEN displaying the UI and pressing cancel - with patch('PyQt6.QtWidgets.QDialog.reject') as mocked_reject: + with patch('PySide6.QtWidgets.QDialog.reject') as mocked_reject: cancel_widget = form.button_box.button(form.button_box.Cancel) QtTest.QTest.mouseClick(cancel_widget, QtCore.Qt.MouseButton.LeftButton) @@ -62,7 +62,7 @@ def test_basic_accept(form): # GIVEN: An initial form # WHEN displaying the UI and pressing Ok - with patch('PyQt6.QtWidgets.QDialog.accept') as mocked_accept: + with patch('PySide6.QtWidgets.QDialog.accept') as mocked_accept: ok_widget = form.button_box.button(form.button_box.Ok) QtTest.QTest.mouseClick(ok_widget, QtCore.Qt.MouseButton.LeftButton) @@ -78,7 +78,7 @@ def test_basic_register(form): form.register_post_process('function1') # WHEN displaying the UI and pressing Ok - with patch('PyQt6.QtWidgets.QDialog.accept'): + with patch('PySide6.QtWidgets.QDialog.accept'): ok_widget = form.button_box.button(form.button_box.Ok) QtTest.QTest.mouseClick(ok_widget, QtCore.Qt.MouseButton.LeftButton) diff --git a/tests/openlp_core/ui/test_settingsform.py b/tests/openlp_core/ui/test_settingsform.py index a0c87e3bd..4abcafd96 100644 --- a/tests/openlp_core/ui/test_settingsform.py +++ b/tests/openlp_core/ui/test_settingsform.py @@ -23,7 +23,7 @@ Package to test the openlp.core.ui.settingsform package. """ from unittest.mock import MagicMock, patch -from PyQt6 import QtCore, QtWidgets, QtTest +from PySide6 import QtCore, QtWidgets, QtTest from openlp.core.ui.settingsform import SettingsForm diff --git a/tests/openlp_core/ui/test_shortcutlistdialog.py b/tests/openlp_core/ui/test_shortcutlistdialog.py index 676751471..205027a92 100644 --- a/tests/openlp_core/ui/test_shortcutlistdialog.py +++ b/tests/openlp_core/ui/test_shortcutlistdialog.py @@ -23,7 +23,7 @@ Package to test the openlp.core.ui.shortcutlistdialog package. """ from unittest.mock import MagicMock -from PyQt6 import QtCore +from PySide6 import QtCore from openlp.core.ui.shortcutlistdialog import CaptureShortcutButton, ShortcutTreeWidget diff --git a/tests/openlp_core/ui/test_shortcutlistform.py b/tests/openlp_core/ui/test_shortcutlistform.py index 9a92ecc83..e128a8592 100644 --- a/tests/openlp_core/ui/test_shortcutlistform.py +++ b/tests/openlp_core/ui/test_shortcutlistform.py @@ -24,7 +24,7 @@ Package to test the openlp.core.ui.shortcutform package. import pytest from unittest.mock import MagicMock, patch -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.ui.shortcutlistform import ShortcutListForm @@ -46,7 +46,7 @@ def test_adjust_button(form): text = 'new!' # WHEN: Call the method. - with patch('PyQt6.QtWidgets.QPushButton.setChecked') as mocked_check_method: + with patch('PySide6.QtWidgets.QPushButton.setChecked') as mocked_check_method: form._adjust_button(button, checked, enabled, text) # THEN: The button should be changed. diff --git a/tests/openlp_core/ui/test_slidecontroller.py b/tests/openlp_core/ui/test_slidecontroller.py index f8de118c8..02f0ee1dc 100644 --- a/tests/openlp_core/ui/test_slidecontroller.py +++ b/tests/openlp_core/ui/test_slidecontroller.py @@ -26,7 +26,7 @@ import datetime from unittest.mock import MagicMock, patch, sentinel -from PyQt6 import QtCore, QtGui +from PySide6 import QtCore, QtGui from pytest import mark from openlp.core.state import State @@ -1266,7 +1266,7 @@ def test_on_preview_double_click_add_to_service(mock_settings: MagicMock): assert 1 == slide_controller.on_preview_add_to_service.call_count, 'Should have been called once.' -@patch(u'PyQt6.QtCore.QTimer.singleShot') +@patch(u'PySide6.QtCore.QTimer.singleShot') def test_update_preview_live(mocked_singleShot: MagicMock, registry: Registry): """ Test that the preview screen is updated with a screen grab for live service items @@ -1304,7 +1304,7 @@ def test_update_preview_live(mocked_singleShot: MagicMock, registry: Registry): assert 2 == mocked_singleShot.call_count, 'Timer to display_maindisplay should have been called 2 times' -@patch(u'PyQt6.QtCore.QTimer.singleShot') +@patch(u'PySide6.QtCore.QTimer.singleShot') def test_update_preview_pres(mocked_singleShot: MagicMock, registry: Registry): """ Test that the preview screen is updated with the correct preview for presentation service items @@ -1341,7 +1341,7 @@ def test_update_preview_pres(mocked_singleShot: MagicMock, registry: Registry): assert 0 == mocked_singleShot.call_count, 'Timer to display_maindisplay should not be called' -@patch(u'PyQt6.QtCore.QTimer.singleShot') +@patch(u'PySide6.QtCore.QTimer.singleShot') def test_update_preview_media(mocked_singleShot: MagicMock, registry: Registry): """ Test that the preview screen is updated with the correct preview for media service items @@ -1379,7 +1379,7 @@ def test_update_preview_media(mocked_singleShot: MagicMock, registry: Registry): assert 0 == mocked_singleShot.call_count, 'Timer to display_maindisplay should not be called' -@patch(u'PyQt6.QtCore.QTimer.singleShot') +@patch(u'PySide6.QtCore.QTimer.singleShot') def test_update_preview_image(mocked_singleShot: MagicMock, registry: Registry): """ Test that the preview screen is updated with the correct preview for image service items diff --git a/tests/openlp_core/ui/test_splashscreen.py b/tests/openlp_core/ui/test_splashscreen.py index 64514bcf2..1f7e1d7b1 100644 --- a/tests/openlp_core/ui/test_splashscreen.py +++ b/tests/openlp_core/ui/test_splashscreen.py @@ -22,7 +22,7 @@ Package to test the openlp.core.ui package. """ from unittest.mock import MagicMock -from PyQt6 import QtCore +from PySide6 import QtCore from openlp.core.ui.splashscreen import SplashScreen diff --git a/tests/openlp_core/ui/test_starttimedialog.py b/tests/openlp_core/ui/test_starttimedialog.py index 04698d0b2..0833408cc 100644 --- a/tests/openlp_core/ui/test_starttimedialog.py +++ b/tests/openlp_core/ui/test_starttimedialog.py @@ -24,7 +24,7 @@ Package to test the openlp.core.ui package. import pytest from unittest.mock import MagicMock, patch -from PyQt6 import QtCore, QtTest +from PySide6 import QtCore, QtTest from openlp.core.common.registry import Registry from openlp.core.ui.starttimeform import StartTimeForm @@ -73,7 +73,7 @@ def test_time_display(form: StartTimeForm): # WHEN displaying the UI and pressing enter form.item = {'service_item': mocked_serviceitem} - with patch('PyQt6.QtWidgets.QDialog.exec'): + with patch('PySide6.QtWidgets.QDialog.exec'): form.exec() ok_widget = form.button_box.button(form.button_box.Ok) QtTest.QTest.mouseClick(ok_widget, QtCore.Qt.MouseButton.LeftButton) @@ -86,7 +86,7 @@ def test_time_display(form: StartTimeForm): # WHEN displaying the UI, changing the time to 2min 3secs and pressing enter form.item = {'service_item': mocked_serviceitem} - with patch('PyQt6.QtWidgets.QDialog.exec'): + with patch('PySide6.QtWidgets.QDialog.exec'): form.exec() form.minute_spin_box.setValue(2) form.second_spin_box.setValue(3) diff --git a/tests/openlp_core/ui/test_thememanager.py b/tests/openlp_core/ui/test_thememanager.py index a91affe50..51c9fbdb5 100644 --- a/tests/openlp_core/ui/test_thememanager.py +++ b/tests/openlp_core/ui/test_thememanager.py @@ -28,7 +28,7 @@ from pathlib import Path from tempfile import mkdtemp from unittest.mock import ANY, Mock, MagicMock, patch, call, sentinel -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.common.registry import Registry from openlp.core.common.settings import Settings diff --git a/tests/openlp_core/widgets/test_dialogs.py b/tests/openlp_core/widgets/test_dialogs.py index 6455bec2c..6ebecd1ff 100755 --- a/tests/openlp_core/widgets/test_dialogs.py +++ b/tests/openlp_core/widgets/test_dialogs.py @@ -21,7 +21,7 @@ import os from pathlib import Path from unittest.mock import MagicMock, patch -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.widgets.dialogs import FileDialog @@ -44,7 +44,7 @@ def test_get_existing_directory_user_abort(): """ # GIVEN: FileDialog with a mocked QDialog.getExistingDirectory method # WHEN: Calling FileDialog.getExistingDirectory and the user cancels the dialog returns a empty string - with patch('PyQt6.QtWidgets.QFileDialog.getExistingDirectory', return_value=''): + with patch('PySide6.QtWidgets.QFileDialog.getExistingDirectory', return_value=''): result = FileDialog.getExistingDirectory() # THEN: The result should be None @@ -58,7 +58,7 @@ def test_get_existing_directory_user_accepts(): # GIVEN: FileDialog with a mocked QDialog.getExistingDirectory method # WHEN: Calling FileDialog.getExistingDirectory, the user chooses a file and accepts the dialog (it returns a # string pointing to the directory) - with patch('PyQt6.QtWidgets.QFileDialog.getExistingDirectory', return_value=os.path.join('test', 'dir')): + with patch('PySide6.QtWidgets.QFileDialog.getExistingDirectory', return_value=os.path.join('test', 'dir')): result = FileDialog.getExistingDirectory() # THEN: getExistingDirectory() should return a Path object pointing to the chosen file @@ -90,7 +90,7 @@ def test_get_open_file_name_user_abort(): # GIVEN: FileDialog with a mocked QDialog.getOpenFileName method # WHEN: Calling FileDialog.getOpenFileName and the user cancels the dialog (it returns a tuple with the first # value set as an empty string) - with patch('PyQt6.QtWidgets.QFileDialog.getOpenFileName', return_value=('', '')): + with patch('PySide6.QtWidgets.QFileDialog.getOpenFileName', return_value=('', '')): result = FileDialog.getOpenFileName() # THEN: First value should be None @@ -104,7 +104,7 @@ def test_get_open_file_name_user_accepts(): # GIVEN: FileDialog with a mocked QDialog.getOpenFileName method # WHEN: Calling FileDialog.getOpenFileName, the user chooses a file and accepts the dialog (it returns a # tuple with the first value set as an string pointing to the file) - with patch('PyQt6.QtWidgets.QFileDialog.getOpenFileName', + with patch('PySide6.QtWidgets.QFileDialog.getOpenFileName', return_value=(os.path.join('test', 'chosen.file'), '')): result = FileDialog.getOpenFileName() @@ -119,7 +119,7 @@ def test_get_open_file_name_selected_filter(): """ # GIVEN: FileDialog with a mocked QDialog.get_save_file_name method # WHEN: Calling FileDialog.getOpenFileName, and `QFileDialog.getOpenFileName` returns a known `selectedFilter` - with patch('PyQt6.QtWidgets.QFileDialog.getOpenFileName', return_value=('', 'selected filter')): + with patch('PySide6.QtWidgets.QFileDialog.getOpenFileName', return_value=('', 'selected filter')): result = FileDialog.getOpenFileName() # THEN: getOpenFileName() should return a tuple with the second value set to a the selected filter @@ -133,7 +133,7 @@ def test_get_open_file_names_user_abort(): # GIVEN: FileDialog with a mocked QDialog.getOpenFileNames method # WHEN: Calling FileDialog.getOpenFileNames and the user cancels the dialog (it returns a tuple with the first # value set as an empty list) - with patch('PyQt6.QtWidgets.QFileDialog.getOpenFileNames', return_value=([], '')): + with patch('PySide6.QtWidgets.QFileDialog.getOpenFileNames', return_value=([], '')): result = FileDialog.getOpenFileNames() # THEN: First value should be an empty list @@ -147,7 +147,7 @@ def test_get_open_file_names_user_accepts(): # GIVEN: FileDialog with a mocked QDialog.getOpenFileNames method # WHEN: Calling FileDialog.getOpenFileNames, the user chooses some files and accepts the dialog (it returns a # tuple with the first value set as a list of strings pointing to the file) - with patch('PyQt6.QtWidgets.QFileDialog.getOpenFileNames', + with patch('PySide6.QtWidgets.QFileDialog.getOpenFileNames', return_value=([os.path.join('test', 'chosen.file1'), os.path.join('test', 'chosen.file2')], '')): result = FileDialog.getOpenFileNames() @@ -163,7 +163,7 @@ def test_get_open_file_names_selected_filter(): # GIVEN: FileDialog with a mocked QDialog.getOpenFileNames method # WHEN: Calling FileDialog.getOpenFileNames, and `QFileDialog.getOpenFileNames` returns a known # `selectedFilter` - with patch('PyQt6.QtWidgets.QFileDialog.getOpenFileNames', return_value=([], 'selected filter')): + with patch('PySide6.QtWidgets.QFileDialog.getOpenFileNames', return_value=([], 'selected filter')): result = FileDialog.getOpenFileNames() # THEN: getOpenFileNames() should return a tuple with the second value set to a the selected filter @@ -177,7 +177,7 @@ def test_get_save_file_name_user_abort(): # GIVEN: FileDialog with a mocked QDialog.get_save_file_name method # WHEN: Calling FileDialog.getSaveFileName and the user cancels the dialog (it returns a tuple with the first # value set as an empty string) - with patch('PyQt6.QtWidgets.QFileDialog.getSaveFileName', return_value=('', '')): + with patch('PySide6.QtWidgets.QFileDialog.getSaveFileName', return_value=('', '')): result = FileDialog.getSaveFileName() # THEN: First value should be None @@ -191,7 +191,7 @@ def test_get_save_file_name_user_accepts(): # GIVEN: FileDialog with a mocked QDialog.getSaveFileName method # WHEN: Calling FileDialog.getSaveFileName, the user chooses a file and accepts the dialog (it returns a # tuple with the first value set as an string pointing to the file) - with patch('PyQt6.QtWidgets.QFileDialog.getSaveFileName', + with patch('PySide6.QtWidgets.QFileDialog.getSaveFileName', return_value=(os.path.join('test', 'chosen.file'), '')): result = FileDialog.getSaveFileName() @@ -206,7 +206,7 @@ def test_get_save_file_name_selected_filter(): """ # GIVEN: FileDialog with a mocked QDialog.get_save_file_name method # WHEN: Calling FileDialog.getSaveFileName, and `QFileDialog.getSaveFileName` returns a known `selectedFilter` - with patch('PyQt6.QtWidgets.QFileDialog.getSaveFileName', return_value=('', 'selected filter')): + with patch('PySide6.QtWidgets.QFileDialog.getSaveFileName', return_value=('', 'selected filter')): result = FileDialog.getSaveFileName() # THEN: getSaveFileName() should return a tuple with the second value set to a the selected filter diff --git a/tests/openlp_core/widgets/test_edits.py b/tests/openlp_core/widgets/test_edits.py index 952f5c030..49a76ca1a 100755 --- a/tests/openlp_core/widgets/test_edits.py +++ b/tests/openlp_core/widgets/test_edits.py @@ -27,7 +27,7 @@ from pathlib import Path from unittest.mock import MagicMock, PropertyMock, patch, call from typing import Any -from PyQt6 import QtCore, QtGui, QtTest, QtWidgets +from PySide6 import QtCore, QtGui, QtTest, QtWidgets from openlp.core.common.registry import Registry from openlp.core.widgets.dialogs import FileDialog diff --git a/tests/openlp_core/widgets/test_views.py b/tests/openlp_core/widgets/test_views.py index 5caa0d855..e00919dc0 100644 --- a/tests/openlp_core/widgets/test_views.py +++ b/tests/openlp_core/widgets/test_views.py @@ -26,7 +26,7 @@ import pytest from types import GeneratorType from unittest.mock import MagicMock, call, patch -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.common.i18n import UiStrings from openlp.core.common.registry import Registry diff --git a/tests/openlp_core/widgets/test_widgets.py b/tests/openlp_core/widgets/test_widgets.py index 7670096af..c57f2c185 100644 --- a/tests/openlp_core/widgets/test_widgets.py +++ b/tests/openlp_core/widgets/test_widgets.py @@ -26,7 +26,7 @@ import pytest from unittest.mock import MagicMock, call, patch -from PyQt6 import QtCore, QtWidgets, QtTest +from PySide6 import QtCore, QtWidgets, QtTest from openlp.core.common.settings import ProxyMode from openlp.core.display.screens import Screen diff --git a/tests/openlp_plugins/alerts/forms/test_alertform.py b/tests/openlp_plugins/alerts/forms/test_alertform.py index 29b2d23e5..7e33d6f6e 100644 --- a/tests/openlp_plugins/alerts/forms/test_alertform.py +++ b/tests/openlp_plugins/alerts/forms/test_alertform.py @@ -23,7 +23,7 @@ Package to test the openlp.plugins.alerts.forms.alertform package. """ from unittest.mock import MagicMock, patch -from PyQt6 import QtWidgets, QtTest, QtCore +from PySide6 import QtWidgets, QtTest, QtCore from openlp.core.common.registry import Registry from openlp.core.common.settings import Settings diff --git a/tests/openlp_plugins/bibles/forms/test_bibleimportform.py b/tests/openlp_plugins/bibles/forms/test_bibleimportform.py index e512a7e97..fa9cf927d 100644 --- a/tests/openlp_plugins/bibles/forms/test_bibleimportform.py +++ b/tests/openlp_plugins/bibles/forms/test_bibleimportform.py @@ -24,7 +24,7 @@ Package to test the openlp.plugins.bibles.forms.bibleimportform package. from unittest.mock import MagicMock, patch import pytest -from PyQt6 import QtWidgets, QtTest, QtCore +from PySide6 import QtWidgets, QtTest, QtCore from openlp.core.common.registry import Registry from openlp.core.common.settings import Settings diff --git a/tests/openlp_plugins/bibles/forms/test_editbibleform.py b/tests/openlp_plugins/bibles/forms/test_editbibleform.py index efb78470b..4c84b7fb9 100644 --- a/tests/openlp_plugins/bibles/forms/test_editbibleform.py +++ b/tests/openlp_plugins/bibles/forms/test_editbibleform.py @@ -23,7 +23,7 @@ Package to test the openlp.plugins.bibles.forms.editbibleform package. """ from unittest.mock import MagicMock, patch -from PyQt6 import QtWidgets, QtTest, QtCore +from PySide6 import QtWidgets, QtTest, QtCore from openlp.plugins.bibles.forms.editbibleform import EditBibleForm diff --git a/tests/openlp_plugins/bibles/test_bibleimport.py b/tests/openlp_plugins/bibles/test_bibleimport.py index 82b055a68..b39b4b0b1 100644 --- a/tests/openlp_plugins/bibles/test_bibleimport.py +++ b/tests/openlp_plugins/bibles/test_bibleimport.py @@ -27,7 +27,7 @@ from pathlib import Path from unittest.mock import MagicMock, patch from lxml import etree, objectify -from PyQt6.QtWidgets import QDialog +from PySide6.QtWidgets import QDialog from openlp.core.common.i18n import Language from openlp.core.common.registry import Registry diff --git a/tests/openlp_plugins/bibles/test_mediaitem.py b/tests/openlp_plugins/bibles/test_mediaitem.py index 99ef7af6a..8e8d7dc90 100644 --- a/tests/openlp_plugins/bibles/test_mediaitem.py +++ b/tests/openlp_plugins/bibles/test_mediaitem.py @@ -24,7 +24,7 @@ This module contains tests for the lib submodule of the Presentations plugin. import pytest from unittest.mock import MagicMock, call, patch -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.registry import Registry from openlp.core.lib.mediamanageritem import MediaManagerItem @@ -129,11 +129,11 @@ def test_bible_media_item_signals(): Test that the :class:`BibleMediaItem` class has the expected signals """ # GIVEN: The :class:`BibleMediaItem` - # THEN: The :class:`BibleMediaItem` should contain the following pyqtSignal's + # THEN: The :class:`BibleMediaItem` should contain the following Signal's assert hasattr(BibleMediaItem, 'bibles_go_live') assert hasattr(BibleMediaItem, 'bibles_add_to_service') - assert isinstance(BibleMediaItem.bibles_go_live, QtCore.pyqtSignal) - assert isinstance(BibleMediaItem.bibles_add_to_service, QtCore.pyqtSignal) + assert isinstance(BibleMediaItem.bibles_go_live, QtCore.Signal) + assert isinstance(BibleMediaItem.bibles_add_to_service, QtCore.Signal) def test_media_item_instance(media_item: BibleMediaItem): diff --git a/tests/openlp_plugins/custom/forms/test_customform.py b/tests/openlp_plugins/custom/forms/test_customform.py index 353901513..2ec64d874 100644 --- a/tests/openlp_plugins/custom/forms/test_customform.py +++ b/tests/openlp_plugins/custom/forms/test_customform.py @@ -24,7 +24,7 @@ Module to test the EditCustomForm. import pytest from unittest.mock import MagicMock, patch -from PyQt6 import QtCore, QtTest, QtWidgets +from PySide6 import QtCore, QtTest, QtWidgets from openlp.plugins.custom.forms.editcustomform import EditCustomForm @@ -71,7 +71,7 @@ def test_on_add_button_clicked(form): Test the on_add_button_clicked_test method / add_button button. """ # GIVEN: A mocked QDialog.exec() method - with patch('PyQt6.QtWidgets.QDialog.exec'): + with patch('PySide6.QtWidgets.QDialog.exec'): # WHEN: Add a new slide. QtTest.QTest.mouseClick(form.add_button, QtCore.Qt.MouseButton.LeftButton) diff --git a/tests/openlp_plugins/custom/forms/test_customslideform.py b/tests/openlp_plugins/custom/forms/test_customslideform.py index fec636a80..afcc631a6 100644 --- a/tests/openlp_plugins/custom/forms/test_customslideform.py +++ b/tests/openlp_plugins/custom/forms/test_customslideform.py @@ -24,7 +24,7 @@ Module to test the EditCustomSlideForm. import pytest from unittest.mock import MagicMock, patch -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.common.registry import Registry from openlp.plugins.custom.forms.editcustomslideform import EditCustomSlideForm @@ -45,7 +45,7 @@ def test_basic(form): Test if the dialog is correctly set up. """ # GIVEN: A mocked QDialog.exec() method - with patch('PyQt6.QtWidgets.QDialog.exec'): + with patch('PySide6.QtWidgets.QDialog.exec'): # WHEN: Show the dialog. form.exec() @@ -58,7 +58,7 @@ def test_set_text(form): Test the set_text() method. """ # GIVEN: A mocked QDialog.exec() method - with patch('PyQt6.QtWidgets.QDialog.exec'): + with patch('PySide6.QtWidgets.QDialog.exec'): mocked_set_focus = MagicMock() form.slide_text_edit.setFocus = mocked_set_focus wanted_text = 'THIS TEXT SHOULD BE SHOWN.' diff --git a/tests/openlp_plugins/images/forms/test_choosegroupform.py b/tests/openlp_plugins/images/forms/test_choosegroupform.py index db525525a..252f1fd26 100644 --- a/tests/openlp_plugins/images/forms/test_choosegroupform.py +++ b/tests/openlp_plugins/images/forms/test_choosegroupform.py @@ -24,7 +24,7 @@ Tests for choosegroupform from the openlp.plugins.images.forms package. import pytest from unittest.mock import MagicMock -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.common.registry import Registry from openlp.plugins.images.forms.choosegroupform import ChooseGroupForm diff --git a/tests/openlp_plugins/images/test_mediaitem.py b/tests/openlp_plugins/images/test_mediaitem.py index 95500c9a9..2b1e9fd3b 100644 --- a/tests/openlp_plugins/images/test_mediaitem.py +++ b/tests/openlp_plugins/images/test_mediaitem.py @@ -25,7 +25,7 @@ from pathlib import Path from unittest.mock import ANY, MagicMock, patch import pytest -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.registry import Registry from openlp.core.common.enum import ImageThemeMode diff --git a/tests/openlp_plugins/media/forms/test_mediaclipselectorform.py b/tests/openlp_plugins/media/forms/test_mediaclipselectorform.py index c6f816d25..6eb15c321 100644 --- a/tests/openlp_plugins/media/forms/test_mediaclipselectorform.py +++ b/tests/openlp_plugins/media/forms/test_mediaclipselectorform.py @@ -26,7 +26,7 @@ import os from unittest import SkipTest from unittest.mock import MagicMock, patch -from PyQt6 import QtCore, QtTest, QtWidgets +from PySide6 import QtCore, QtTest, QtWidgets from openlp.core.ui.media.vlcplayer import get_vlc from openlp.plugins.media.forms.mediaclipselectorform import MediaClipSelectorForm @@ -65,7 +65,7 @@ def test_basic(form): Test if the dialog is correctly set up. """ # GIVEN: A mocked QDialog.exec() method - with patch('PyQt6.QtWidgets.QDialog.exec'): + with patch('PySide6.QtWidgets.QDialog.exec'): # WHEN: Show the dialog. form.exec() @@ -81,7 +81,7 @@ def test_click_load_button(form): with patch('openlp.plugins.media.forms.mediaclipselectorform.critical_error_message_box') as \ mocked_critical_error_message_box, \ patch('openlp.plugins.media.forms.mediaclipselectorform.os.path.exists') as mocked_os_path_exists, \ - patch('PyQt6.QtWidgets.QDialog.exec'): + patch('PySide6.QtWidgets.QDialog.exec'): form.exec() # WHEN: The load button is clicked with no path set @@ -120,7 +120,7 @@ def test_title_combobox(form): Test the behavior when the title combobox is updated """ # GIVEN: Mocked methods and some entries in the title combobox. - with patch('PyQt6.QtWidgets.QDialog.exec'): + with patch('PySide6.QtWidgets.QDialog.exec'): form.exec() form.vlc_media_player.get_length.return_value = 1000 form.audio_tracks_combobox.itemData = MagicMock() @@ -150,7 +150,7 @@ def test_click_save_button(form): # GIVEN: Mocked methods. with patch('openlp.plugins.media.forms.mediaclipselectorform.critical_error_message_box') as \ mocked_critical_error_message_box, \ - patch('PyQt6.QtWidgets.QDialog.exec'): + patch('PySide6.QtWidgets.QDialog.exec'): form.exec() # WHEN: The save button is clicked with a NoneType in start_time_ms or end_time_ms diff --git a/tests/openlp_plugins/media/forms/test_streamselectorform.py b/tests/openlp_plugins/media/forms/test_streamselectorform.py index 18073865d..dab18e879 100644 --- a/tests/openlp_plugins/media/forms/test_streamselectorform.py +++ b/tests/openlp_plugins/media/forms/test_streamselectorform.py @@ -25,7 +25,7 @@ import pytest from unittest.mock import MagicMock, patch -from PyQt6 import QtCore, QtTest, QtWidgets +from PySide6 import QtCore, QtTest, QtWidgets from openlp.plugins.media.forms.streamselectorform import StreamSelectorForm from openlp.plugins.media.forms.streamselectordialog import CaptureVideoDirectShowWidget, CaptureDigitalTVWidget, \ diff --git a/tests/openlp_plugins/planningcenter/forms/test_selectplanform.py b/tests/openlp_plugins/planningcenter/forms/test_selectplanform.py index 190903558..0800497da 100644 --- a/tests/openlp_plugins/planningcenter/forms/test_selectplanform.py +++ b/tests/openlp_plugins/planningcenter/forms/test_selectplanform.py @@ -27,7 +27,7 @@ from datetime import date, datetime from unittest.mock import patch, MagicMock import pytest -from PyQt6 import QtTest, QtCore +from PySide6 import QtTest, QtCore from openlp.core.common.registry import Registry from openlp.core.common.settings import Settings @@ -63,7 +63,7 @@ def form(plugin: PlanningCenterPlugin) -> SelectPlanForm: yield form_ -@patch('PyQt6.QtWidgets.QDialog.exec') +@patch('PySide6.QtWidgets.QDialog.exec') @patch('openlp.plugins.planningcenter.forms.selectplanform.date') def test_initial_defaults(mocked_date: MagicMock, mocked_exec: MagicMock, form: SelectPlanForm): """ @@ -89,8 +89,8 @@ def test_initial_defaults(mocked_date: MagicMock, mocked_exec: MagicMock, form: assert form.slide_theme_selection_combo_box.count() == 0, 'Count of custom slide themes is incorrect' -@patch('PyQt6.QtWidgets.QDialog.exec') -@patch('PyQt6.QtWidgets.QMessageBox.warning') +@patch('PySide6.QtWidgets.QDialog.exec') +@patch('PySide6.QtWidgets.QMessageBox.warning') def test_warning_messagebox_shown_for_bad_credentials(mocked_warning: MagicMock, mocked_exec: MagicMock, form: SelectPlanForm): """ @@ -105,7 +105,7 @@ def test_warning_messagebox_shown_for_bad_credentials(mocked_warning: MagicMock, mocked_warning.assert_called_once() -@patch('PyQt6.QtWidgets.QDialog.exec') +@patch('PySide6.QtWidgets.QDialog.exec') def test_disable_import_buttons(mocked_exec: MagicMock, form: SelectPlanForm): """ Test that the import buttons are disabled when the "Select Plan Date" element in the @@ -121,7 +121,7 @@ def test_disable_import_buttons(mocked_exec: MagicMock, form: SelectPlanForm): assert not form.update_existing_button.isEnabled(), '"Refresh Service" button should be disabled' -@patch('PyQt6.QtWidgets.QDialog.exec') +@patch('PySide6.QtWidgets.QDialog.exec') @patch('openlp.plugins.planningcenter.forms.selectplanform.date') def test_default_plan_date_is_next_sunday(mocked_date: MagicMock, mocked_exec: MagicMock, form: SelectPlanForm): """ @@ -140,7 +140,7 @@ def test_default_plan_date_is_next_sunday(mocked_date: MagicMock, mocked_exec: M 'The next Sunday\'s Date is not selected in the plan_selection_combo_box' -@patch('PyQt6.QtWidgets.QDialog.exec') +@patch('PySide6.QtWidgets.QDialog.exec') def test_service_type_changed_called_when_service_type_combo_changed(mocked_exec: MagicMock, form: SelectPlanForm): """ Test that the "on_service_type_combobox_changed" function is executed when the @@ -155,7 +155,7 @@ def test_service_type_changed_called_when_service_type_combo_changed(mocked_exec assert form.plan_selection_combo_box.itemText(0) == 'Select Plan Date', 'Plan Combo Box has default text' -@patch('PyQt6.QtWidgets.QDialog.exec') +@patch('PySide6.QtWidgets.QDialog.exec') def test_plan_selection_changed_called_when_plan_selection_combo_changed(mocked_exec: MagicMock, form: SelectPlanForm): """ Test that the "on_plan_selection_combobox_changed" function is executed when the @@ -171,7 +171,7 @@ def test_plan_selection_changed_called_when_plan_selection_combo_changed(mocked_ assert form.update_existing_button.isEnabled(), 'Update button should be enabled' -@patch('PyQt6.QtWidgets.QDialog.exec') +@patch('PySide6.QtWidgets.QDialog.exec') @patch('openlp.core.ui.settingsform.SettingsForm.exec') def test_settings_tab_displayed_when_edit_auth_button_clicked(mocked_settings_form_exec: MagicMock, mocked_exec: MagicMock, form: SelectPlanForm): @@ -186,7 +186,7 @@ def test_settings_tab_displayed_when_edit_auth_button_clicked(mocked_settings_fo mocked_settings_form_exec.assert_called_once() -@patch('PyQt6.QtWidgets.QDialog.exec') +@patch('PySide6.QtWidgets.QDialog.exec') @patch('openlp.plugins.planningcenter.forms.selectplanform.SelectPlanForm._do_import') def test_import_function_called_when_import_button_clicked(mocked_do_import: MagicMock, mocked_exec: MagicMock, form: SelectPlanForm): @@ -205,7 +205,7 @@ def test_import_function_called_when_import_button_clicked(mocked_do_import: Mag mocked_do_import.assert_called_with(update=False) -@patch('PyQt6.QtWidgets.QDialog.exec') +@patch('PySide6.QtWidgets.QDialog.exec') @patch('openlp.plugins.planningcenter.forms.selectplanform.warning_message_box') @patch('openlp.plugins.planningcenter.lib.songimport.PlanningCenterSongImport.finish') @patch('openlp.plugins.planningcenter.lib.customimport.CustomSlide') @@ -243,7 +243,7 @@ def test_service_imported_when_import_button_clicked(mocked_date: MagicMock, moc assert mocked_warning_box.call_count == 0, 'No warnings triggered' -@patch('PyQt6.QtWidgets.QDialog.exec') +@patch('PySide6.QtWidgets.QDialog.exec') @patch('openlp.plugins.planningcenter.forms.selectplanform.warning_message_box') @patch('openlp.plugins.planningcenter.lib.songimport.PlanningCenterSongImport.finish') @patch('openlp.plugins.planningcenter.lib.customimport.CustomSlide') @@ -281,7 +281,7 @@ def test_service_refreshed_when_refresh_button_clicked(mocked_date: MagicMock, m assert mocked_warning_box.call_count == 0, 'No warnings triggered' -@patch('PyQt6.QtWidgets.QDialog.exec') +@patch('PySide6.QtWidgets.QDialog.exec') @patch('openlp.plugins.planningcenter.forms.selectplanform.warning_message_box') @patch('openlp.plugins.planningcenter.lib.songimport.PlanningCenterSongImport.finish') @patch('openlp.plugins.planningcenter.lib.customimport.CustomSlide') @@ -316,7 +316,7 @@ def test_other_bible_is_used_when_bible_gui_form_is_blank(mocked_date: MagicMock assert mocked_warning_box.call_count == 0, 'No warnings triggered' -@patch('PyQt6.QtWidgets.QDialog.exec') +@patch('PySide6.QtWidgets.QDialog.exec') @patch('openlp.plugins.planningcenter.forms.selectplanform.warning_message_box') @patch('openlp.plugins.planningcenter.lib.songimport.PlanningCenterSongImport.finish') @patch('openlp.plugins.planningcenter.lib.customimport.CustomSlide') @@ -352,7 +352,7 @@ def test_warning_importing_bible_with_no_bible_available(mocked_date: MagicMock, @pytest.mark.skip('fails to run when executed with all other openlp tests. awaiting pytest fixtures to enable again') -@patch('PyQt6.QtWidgets.QDialog.exec') +@patch('PySide6.QtWidgets.QDialog.exec') @patch('openlp.plugins.planningcenter.forms.selectplanform.date') def test_less_mocking_service_refreshed_when_refresh_button_clicked(mocked_date: MagicMock, mocked_exec: MagicMock, form: SelectPlanForm): diff --git a/tests/openlp_plugins/planningcenter/lib/test_planningcentertab.py b/tests/openlp_plugins/planningcenter/lib/test_planningcentertab.py index 0dad1d209..e8fd26c7c 100644 --- a/tests/openlp_plugins/planningcenter/lib/test_planningcentertab.py +++ b/tests/openlp_plugins/planningcenter/lib/test_planningcentertab.py @@ -24,7 +24,7 @@ Package to test the openlp.plugins.planningcenter.lib.planningcentertab package. from unittest.mock import MagicMock, patch import pytest -from PyQt6 import QtCore, QtTest, QtWidgets +from PySide6 import QtCore, QtTest, QtWidgets from openlp.core.state import State from openlp.core.common.registry import Registry diff --git a/tests/openlp_plugins/planningcenter/test_planningcenterplugin.py b/tests/openlp_plugins/planningcenter/test_planningcenterplugin.py index a262fb596..8acd5b5fe 100644 --- a/tests/openlp_plugins/planningcenter/test_planningcenterplugin.py +++ b/tests/openlp_plugins/planningcenter/test_planningcenterplugin.py @@ -24,7 +24,7 @@ Package to test the openlp.plugins.planningcenter.planningcenterplugin package. import pytest from unittest.mock import MagicMock, patch -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.common.registry import Registry from openlp.core.common.settings import Settings diff --git a/tests/openlp_plugins/presentations/test_mediaitem.py b/tests/openlp_plugins/presentations/test_mediaitem.py index dc4db1f3e..680e280d6 100644 --- a/tests/openlp_plugins/presentations/test_mediaitem.py +++ b/tests/openlp_plugins/presentations/test_mediaitem.py @@ -24,7 +24,7 @@ This module contains tests for the lib submodule of the Presentations plugin. from pathlib import Path from unittest.mock import MagicMock, PropertyMock, call, patch -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.lib import ServiceItemContext from openlp.core.lib.serviceitem import ItemCapabilities diff --git a/tests/openlp_plugins/presentations/test_pdfcontroller.py b/tests/openlp_plugins/presentations/test_pdfcontroller.py index 16393afa2..efd3363c3 100644 --- a/tests/openlp_plugins/presentations/test_pdfcontroller.py +++ b/tests/openlp_plugins/presentations/test_pdfcontroller.py @@ -28,7 +28,7 @@ from shutil import rmtree from tempfile import mkdtemp from unittest.mock import MagicMock -from PyQt6 import QtCore, QtGui +from PySide6 import QtCore, QtGui from openlp.core.display.screens import ScreenList from openlp.plugins.presentations.lib.pdfcontroller import PdfController, PdfDocument diff --git a/tests/openlp_plugins/presentations/test_presentationtab.py b/tests/openlp_plugins/presentations/test_presentationtab.py index 072a6798f..e0d3e2e2b 100644 --- a/tests/openlp_plugins/presentations/test_presentationtab.py +++ b/tests/openlp_plugins/presentations/test_presentationtab.py @@ -23,7 +23,7 @@ This module contains tests for the settings tab for the Presentations plugin. """ from unittest.mock import MagicMock -from PyQt6 import QtCore, QtTest +from PySide6 import QtCore, QtTest from openlp.core.common.registry import Registry from openlp.plugins.presentations.lib.presentationtab import PresentationTab diff --git a/tests/openlp_plugins/songs/forms/test_authorsform.py b/tests/openlp_plugins/songs/forms/test_authorsform.py index 2f303947f..16de666c2 100644 --- a/tests/openlp_plugins/songs/forms/test_authorsform.py +++ b/tests/openlp_plugins/songs/forms/test_authorsform.py @@ -24,7 +24,7 @@ Package to test the openlp.plugins.songs.forms.authorsform package. import pytest from unittest.mock import patch -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.common.registry import Registry from openlp.plugins.songs.forms.authorsform import AuthorsForm diff --git a/tests/openlp_plugins/songs/forms/test_editsongform.py b/tests/openlp_plugins/songs/forms/test_editsongform.py index 99f45ee32..fc33ec581 100644 --- a/tests/openlp_plugins/songs/forms/test_editsongform.py +++ b/tests/openlp_plugins/songs/forms/test_editsongform.py @@ -24,7 +24,7 @@ Package to test the openlp.plugins.songs.forms.editsongform package. import pytest from unittest.mock import MagicMock, patch -from PyQt6 import QtWidgets, QtTest, QtCore +from PySide6 import QtWidgets, QtTest, QtCore from openlp.core.common.i18n import UiStrings from openlp.core.common.registry import Registry diff --git a/tests/openlp_plugins/songs/forms/test_editverseform.py b/tests/openlp_plugins/songs/forms/test_editverseform.py index 31b2d5d29..467a5fcaa 100644 --- a/tests/openlp_plugins/songs/forms/test_editverseform.py +++ b/tests/openlp_plugins/songs/forms/test_editverseform.py @@ -24,7 +24,7 @@ This module contains tests for the editverseform of the Songs plugin. from unittest.mock import MagicMock, call, patch import pytest -from PyQt6 import QtCore, QtTest, QtGui, QtWidgets +from PySide6 import QtCore, QtTest, QtGui, QtWidgets from openlp.core.common.registry import Registry from openlp.core.common.settings import Settings diff --git a/tests/openlp_plugins/songs/forms/test_songmaintenanceform.py b/tests/openlp_plugins/songs/forms/test_songmaintenanceform.py index 464474cae..0cf36ac3c 100644 --- a/tests/openlp_plugins/songs/forms/test_songmaintenanceform.py +++ b/tests/openlp_plugins/songs/forms/test_songmaintenanceform.py @@ -26,7 +26,7 @@ import os from unittest.mock import MagicMock, call, create_autospec, patch, ANY -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.i18n import UiStrings from openlp.core.common.registry import Registry diff --git a/tests/openlp_plugins/songs/forms/test_topicsform.py b/tests/openlp_plugins/songs/forms/test_topicsform.py index 6eb965d1b..26336fe01 100644 --- a/tests/openlp_plugins/songs/forms/test_topicsform.py +++ b/tests/openlp_plugins/songs/forms/test_topicsform.py @@ -23,7 +23,7 @@ Package to test the openlp.plugins.songs.forms.topicsform package. """ import pytest -from PyQt6 import QtWidgets +from PySide6 import QtWidgets from openlp.core.common.registry import Registry from openlp.plugins.songs.forms.topicsform import TopicsForm diff --git a/tests/openlp_plugins/songs/test_mediaitem.py b/tests/openlp_plugins/songs/test_mediaitem.py index 4869e581a..1e9798873 100644 --- a/tests/openlp_plugins/songs/test_mediaitem.py +++ b/tests/openlp_plugins/songs/test_mediaitem.py @@ -24,7 +24,7 @@ This module contains tests for the lib submodule of the Songs plugin. import pytest from unittest.mock import MagicMock, patch -from PyQt6 import QtCore +from PySide6 import QtCore from openlp.core.common.enum import SongFirstSlideMode from openlp.core.common.registry import Registry diff --git a/tests/openlp_plugins/songs/test_songselect.py b/tests/openlp_plugins/songs/test_songselect.py index 74ca1ea04..c12790f50 100644 --- a/tests/openlp_plugins/songs/test_songselect.py +++ b/tests/openlp_plugins/songs/test_songselect.py @@ -29,7 +29,7 @@ re-downloading the HTML pages and changing the code to use the new layout. from unittest.mock import MagicMock, patch, sentinel import pytest -from PyQt6 import QtCore +from PySide6 import QtCore from openlp.core.common.registry import Registry from openlp.core.common.settings import Settings diff --git a/tests/openlp_plugins/songs/test_songstab.py b/tests/openlp_plugins/songs/test_songstab.py index 3fa9f7369..2122282dc 100644 --- a/tests/openlp_plugins/songs/test_songstab.py +++ b/tests/openlp_plugins/songs/test_songstab.py @@ -24,7 +24,7 @@ This module contains tests for the lib submodule of the Songs plugin. import pytest from unittest.mock import MagicMock, patch -from PyQt6 import QtCore, QtWidgets +from PySide6 import QtCore, QtWidgets from openlp.core.common.enum import SongFirstSlideMode from openlp.core.common.registry import Registry diff --git a/tests/openlp_plugins/songusage/forms/test_songusagedeleteform.py b/tests/openlp_plugins/songusage/forms/test_songusagedeleteform.py index d5c2a3777..591ec7051 100644 --- a/tests/openlp_plugins/songusage/forms/test_songusagedeleteform.py +++ b/tests/openlp_plugins/songusage/forms/test_songusagedeleteform.py @@ -23,7 +23,7 @@ Package to test the openlp.plugins.songusage.forms.songusagedeleteform package. """ from unittest.mock import MagicMock, patch -from PyQt6 import QtWidgets, QtTest, QtCore +from PySide6 import QtWidgets, QtTest, QtCore from openlp.plugins.songusage.forms.songusagedeleteform import SongUsageDeleteForm diff --git a/tests/openlp_plugins/songusage/forms/test_songusagedetailform.py b/tests/openlp_plugins/songusage/forms/test_songusagedetailform.py index 34f8f2aae..c6f8b0dc0 100644 --- a/tests/openlp_plugins/songusage/forms/test_songusagedetailform.py +++ b/tests/openlp_plugins/songusage/forms/test_songusagedetailform.py @@ -23,7 +23,7 @@ Package to test the openlp.plugins.songusage.forms.songusagedetailform package. """ from unittest.mock import MagicMock, patch -from PyQt6 import QtWidgets, QtTest, QtCore +from PySide6 import QtWidgets, QtTest, QtCore from openlp.plugins.songusage.forms.songusagedetailform import SongUsageDetailForm