diff --git a/build.py b/build.py index b209169..52a3b31 100644 --- a/build.py +++ b/build.py @@ -1,7 +1,7 @@ import os import PyInstaller.__main__ -from PyQt5.Qt import QT_VERSION_STR +from PyQt6.Qt import QT_VERSION_STR args = [ # "--clean", diff --git a/config/machine_settings/st-ten-5.ini b/config/machine_settings/st-ten-5.ini index a126107..ca0bebc 100644 --- a/config/machine_settings/st-ten-5.ini +++ b/config/machine_settings/st-ten-5.ini @@ -2,6 +2,7 @@ description = ST-TEN-5 IVECO DAILY ELETTRICO instruction_folder = st-ten-5 image_for_warning= st-ten-5 + [hardware_config] archive_synchronizer: present uvc_camera: absent diff --git a/config/machine_settings/test-linux.ini b/config/machine_settings/test-linux.ini index 01516f5..66da5bb 100644 --- a/config/machine_settings/test-linux.ini +++ b/config/machine_settings/test-linux.ini @@ -1,7 +1,7 @@ [machine] description = TEST-LINUX -#instruction_folder = st-ten-1 -image_for_warning= st-ten-1 +instruction_folder = st-ten-5 +image_for_warning= st-ten-5 [hardware_config] @@ -20,8 +20,8 @@ digital_io: present external_flush_blow: absent [archive_synchronizer] -#archive_endpoint: https://dev.r5portal.it/api/st-ten-save/ -archive_endpoint: https://r5portal.it/api/st-ten-save/ +archive_endpoint: https://dev.r5portal.it/api/st-ten-save/ +#archive_endpoint: https://r5portal.it/api/st-ten-save/ poll_time: 10 hold_time: 10 @@ -39,7 +39,7 @@ discard_idx:12 # BIT NUMBER OF THE I/0 MODULE USED FOR DISCARD SENSING [recipe] recipe_name_field: codice_ricetta -part_number_field: codice_prodotto +part_number_field: part_number label_template_field: modello_etichetta description_field: descrizione diff --git a/designer.sh b/designer.sh index 1fdd748..3b228d7 100755 --- a/designer.sh +++ b/designer.sh @@ -1 +1 @@ -pyqt5-tools designer +pyqt6-tools designer diff --git a/designer_win.bat b/designer_win.bat index 6784207..baae6a7 100644 --- a/designer_win.bat +++ b/designer_win.bat @@ -1 +1 @@ -pyqt5-tools designer \ No newline at end of file +pyqt6-tools designer \ No newline at end of file diff --git a/src/components/archive_synchronizer.py b/src/components/archive_synchronizer.py index 80984ca..f8b388f 100644 --- a/src/components/archive_synchronizer.py +++ b/src/components/archive_synchronizer.py @@ -11,7 +11,7 @@ import requests from google.api_core.exceptions import Forbidden from google.cloud import storage from lib.db import Archive, db -from PyQt5.QtCore import QThread +from PyQt6.QtCore import QThread from requests.adapters import HTTPAdapter, Retry from urllib3.exceptions import InsecureRequestWarning diff --git a/src/components/component.py b/src/components/component.py index 599e8c3..d3955c4 100644 --- a/src/components/component.py +++ b/src/components/component.py @@ -3,7 +3,7 @@ import traceback import types from lib.helpers import timing -from PyQt5.QtCore import (QMutex, QObject, QSemaphore, Qt, QThread, QTimer, +from PyQt6.QtCore import (QMutex, QObject, QSemaphore, Qt, QThread, QTimer, pyqtSignal) @@ -337,7 +337,7 @@ class Component(QObject): if self._period is not None: if self._timer is None: self._timer = QTimer() - self._timer.setTimerType(Qt.PreciseTimer) + self._timer.setTimerType(Qt.TimerType.PreciseTimer) self._timer.setSingleShot(self._single_shot) self._timer.setInterval(round(self._period * 1000)) self.log.debug(f"init periodic: period: {self._period}, single shot: {self._single_shot}") diff --git a/src/components/consumer.py b/src/components/consumer.py index 2eb1f66..6db2080 100644 --- a/src/components/consumer.py +++ b/src/components/consumer.py @@ -1,6 +1,6 @@ from collections import deque -from PyQt5.QtCore import QMutex +from PyQt6.QtCore import QMutex from .component import Component diff --git a/src/components/furness_controls_leak_tester.py b/src/components/furness_controls_leak_tester.py index f113daa..5576321 100644 --- a/src/components/furness_controls_leak_tester.py +++ b/src/components/furness_controls_leak_tester.py @@ -3,7 +3,7 @@ import sys import time from collections import OrderedDict -from PyQt5.QtCore import QMutex +from PyQt6.QtCore import QMutex from components.component import Component from components.furness_controls_fco730_registers import registers as fco730_registers diff --git a/src/components/galaxy_camera.py b/src/components/galaxy_camera.py index 020ebb6..2a5f664 100644 --- a/src/components/galaxy_camera.py +++ b/src/components/galaxy_camera.py @@ -5,9 +5,9 @@ from itertools import cycle import cv2 import imutils import numpy as np -from PyQt5.QtCore import QMutex, Qt, QThread, pyqtSignal -from PyQt5.QtGui import QImage, QPixmap -from PyQt5.QtWidgets import (QDialog, QFormLayout, QLabel, QMessageBox, +from Pyqt6.QtCore import QMutex, Qt, QThread, pyqtSignal +from Pyqt6.QtGui import QImage, QPixmap +from Pyqt6.QtWidgets import (QDialog, QFormLayout, QLabel, QMessageBox, QPushButton, QSizePolicy, QSlider) from . import gxipy as gx diff --git a/src/components/modbus_component.py b/src/components/modbus_component.py index 1c34453..af201f1 100644 --- a/src/components/modbus_component.py +++ b/src/components/modbus_component.py @@ -15,7 +15,7 @@ if "--sim-modbus" not in sys.argv: else: from components.dummies.pymodbus import ModbusClient -from PyQt5.QtCore import QMutex +from PyQt6.QtCore import QMutex from .component import Component diff --git a/src/components/neo_pixels.py b/src/components/neo_pixels.py index c7ddf4c..1104f9b 100644 --- a/src/components/neo_pixels.py +++ b/src/components/neo_pixels.py @@ -1,6 +1,6 @@ import sys -from PyQt5.QtCore import QThread, pyqtSignal +from Pyqt6.QtCore import QThread, pyqtSignal if "--sim-serial" in sys.argv: from components.dummies.serial import serial diff --git a/src/components/os_label_printer.py b/src/components/os_label_printer.py index 5e245de..da1a77c 100644 --- a/src/components/os_label_printer.py +++ b/src/components/os_label_printer.py @@ -4,7 +4,7 @@ import subprocess import sys import traceback -from PyQt5.QtWidgets import QMessageBox +from PyQt6.QtWidgets import QMessageBox from .component import Component diff --git a/src/components/remote_api.py b/src/components/remote_api.py index 49099a8..362b9a2 100644 --- a/src/components/remote_api.py +++ b/src/components/remote_api.py @@ -7,8 +7,8 @@ import traceback import cv2 from bottle import post, request, response, route, run -from PyQt5.QtCore import QObject, pyqtSignal, pyqtSlot -from PyQt5.QtWidgets import QMessageBox +from PyQt6.QtCore import QObject, pyqtSignal, pyqtSlot +from PyQt6.QtWidgets import QMessageBox from .component import Component diff --git a/src/components/rfid_pn532.py b/src/components/rfid_pn532.py index a066754..9860f55 100644 --- a/src/components/rfid_pn532.py +++ b/src/components/rfid_pn532.py @@ -2,7 +2,7 @@ import copy import ctypes import sys import platform -from PyQt5.QtCore import QMutex, Qt, QTimer, pyqtSlot, pyqtSignal +from PyQt6.QtCore import QMutex, Qt, QTimer, pyqtSlot, pyqtSignal from .component import Component import ndef import nfc diff --git a/src/components/serial_label_printer.py b/src/components/serial_label_printer.py index 19c66cf..90d7ea4 100644 --- a/src/components/serial_label_printer.py +++ b/src/components/serial_label_printer.py @@ -5,7 +5,7 @@ if "--sim-serial" in sys.argv: else: import serial -from PyQt5.QtWidgets import QMessageBox +from PyQt6.QtWidgets import QMessageBox from .component import Component diff --git a/src/components/tecna_marposs_provaset_t3.py b/src/components/tecna_marposs_provaset_t3.py index e89e60e..cb87cdf 100644 --- a/src/components/tecna_marposs_provaset_t3.py +++ b/src/components/tecna_marposs_provaset_t3.py @@ -1,6 +1,6 @@ from lib.db import Recipes, db -from PyQt5.QtCore import QSemaphore, pyqtSignal -from PyQt5.QtWidgets import QMessageBox +from PyQt6.QtCore import QSemaphore, pyqtSignal +from PyQt6.QtWidgets import QMessageBox from .component import Component from .modbus_component import ModbusComponent diff --git a/src/components/tecna_screwdriver.py b/src/components/tecna_screwdriver.py index ac51ef4..b5f8b54 100644 --- a/src/components/tecna_screwdriver.py +++ b/src/components/tecna_screwdriver.py @@ -1,4 +1,4 @@ -from PyQt5.QtCore import pyqtSignal +from PyQt6.QtCore import pyqtSignal from .component import Component diff --git a/src/components/usb_586x.py b/src/components/usb_586x.py index af8c073..7582ef7 100644 --- a/src/components/usb_586x.py +++ b/src/components/usb_586x.py @@ -4,8 +4,8 @@ import platform import time from enum import Enum -from PyQt5.QtCore import QMutex, Qt, QTimer, pyqtSlot, pyqtSignal -from PyQt5.QtWidgets import QMessageBox, QApplication +from PyQt6.QtCore import QMutex, Qt, QTimer, pyqtSlot, pyqtSignal +from PyQt6.QtWidgets import QMessageBox, QApplication from .component import Component @@ -96,12 +96,10 @@ class USB_586x(Component): @pyqtSlot() def start(self): - # ACQUISITION TIMER - self.timer = QTimer() - self.timer.setTimerType(Qt.PreciseTimer) - self.timer.setInterval(int(1000 / 20)) - self.timer.timeout.connect(self._get) - self.timer.start() + if self._timer is not None: + self._timer.setTimerType(Qt.TimerType.PreciseTimer) + self._timer.timeout.connect(self.on_timeout) + self._timer.start(1000) super().start() # Read data for buffer diff --git a/src/components/uvc_camera.py b/src/components/uvc_camera.py index bfd2b52..c712fe2 100644 --- a/src/components/uvc_camera.py +++ b/src/components/uvc_camera.py @@ -5,9 +5,9 @@ from itertools import cycle import cv2 import imutils import numpy as np -from PyQt5.QtCore import QMutex, Qt, QThread, pyqtSignal -from PyQt5.QtGui import QImage, QPixmap -from PyQt5.QtWidgets import (QDialog, QFormLayout, QLabel, QMessageBox, +from Pyqt6.QtCore import QMutex, Qt, QThread, pyqtSignal +from Pyqt6.QtGui import QImage, QPixmap +from Pyqt6.QtWidgets import (QDialog, QFormLayout, QLabel, QMessageBox, QPushButton, QSizePolicy, QSlider) if "--sim-camera" in sys.argv: diff --git a/src/components/vision.py b/src/components/vision.py index bd4a9cb..497fda5 100644 --- a/src/components/vision.py +++ b/src/components/vision.py @@ -7,11 +7,11 @@ from pathlib import Path import cv2 import numpy as np -from PyQt5.QtCore import (QFileSystemWatcher, QLineF, QMutex, QPointF, QRectF, +from Pyqt6.QtCore import (QFileSystemWatcher, QLineF, QMutex, QPointF, QRectF, Qt, QThread, pyqtSignal) -from PyQt5.QtGui import (QBrush, QColor, QFont, QImage, QPainter, QPainterPath, +from Pyqt6.QtGui import (QBrush, QColor, QFont, QImage, QPainter, QPainterPath, QPen, QPixmap) -from PyQt5.QtWidgets import QApplication +from Pyqt6.QtWidgets import QApplication from .component import Component from .consumer import Consumer diff --git a/src/lib/helpers/config_reader.py b/src/lib/helpers/config_reader.py index 61d39ad..05b44f3 100644 --- a/src/lib/helpers/config_reader.py +++ b/src/lib/helpers/config_reader.py @@ -2,7 +2,7 @@ import socket from configparser import ConfigParser from pathlib import Path -from PyQt5.QtCore import QFileSystemWatcher, QObject, pyqtSignal +from PyQt6.QtCore import QFileSystemWatcher, QObject, pyqtSignal from .dict_merger import merge_dicts diff --git a/src/lib/helpers/qthread_catcher.py b/src/lib/helpers/qthread_catcher.py index 62c301b..7a4a286 100644 --- a/src/lib/helpers/qthread_catcher.py +++ b/src/lib/helpers/qthread_catcher.py @@ -4,7 +4,7 @@ import traceback from functools import wraps from types import FunctionType -from PyQt5.QtCore import QCoreApplication, QObject, QThread, QTimer +from PyQt6.QtCore import QCoreApplication, QObject, QThread, QTimer def save_init_state(self, *args, **kwargs): diff --git a/src/lib/helpers/qthread_synchronizer.py b/src/lib/helpers/qthread_synchronizer.py index 5115aa8..c7384df 100644 --- a/src/lib/helpers/qthread_synchronizer.py +++ b/src/lib/helpers/qthread_synchronizer.py @@ -3,7 +3,7 @@ from functools import wraps from queue import Queue from types import FunctionType -from PyQt5.QtCore import QCoreApplication, QObject, QSemaphore, QThread, QTimer +from PyQt6.QtCore import QCoreApplication, QObject, QSemaphore, QThread, QTimer def thread_command_execute(self): diff --git a/src/lib/helpers/single_process.py b/src/lib/helpers/single_process.py index f085123..991a6db 100644 --- a/src/lib/helpers/single_process.py +++ b/src/lib/helpers/single_process.py @@ -1,4 +1,4 @@ -from PyQt5.QtCore import QSharedMemory +from PyQt6.QtCore import QSharedMemory class SingleProcess: diff --git a/src/main.py b/src/main.py index 5ae3806..e487ffd 100644 --- a/src/main.py +++ b/src/main.py @@ -69,8 +69,8 @@ try: TecnaMarpossProvasetT3, FurnessControlsLeakTester, TecnaScrewdriver, USB_586x, RFID_PN532,BrotherLabelPrinter) from lib.db import Users from lib.helpers import ConfigReader - from PyQt5.QtCore import QObject, QThread, pyqtSignal, pyqtSlot - from PyQt5.QtWidgets import QApplication, QMessageBox + from PyQt6.QtCore import QObject, QThread, pyqtSignal, pyqtSlot, Qt + from PyQt6.QtWidgets import QApplication, QMessageBox from ui import About, Archive, Login, Main_Window, Test, Users_Management, Recipe_Selection, \ Barcode_Recipe_Selection diff --git a/src/requirements.txt b/src/requirements.txt index c9321ad..f9b7ebe 100644 --- a/src/requirements.txt +++ b/src/requirements.txt @@ -12,7 +12,7 @@ pillow pycoral pymodbus==3.6.8 pyqt5 -pyqt5-tools +#pyqt5-tools pyserial pyserial-asyncio qrcode diff --git a/src/scripts/print_labels.py b/src/scripts/print_labels.py index 0c39fb0..2896e2c 100644 --- a/src/scripts/print_labels.py +++ b/src/scripts/print_labels.py @@ -1,7 +1,7 @@ import time from datetime import datetime -from PyQt5.QtWidgets import QApplication +from Pyqt6.QtWidgets import QApplication from src.components.os_label_printer import * from src.lib.helpers import ConfigReader diff --git a/src/test/furness_controls.py b/src/test/furness_controls.py index c5c36c4..cd9e6f3 100644 --- a/src/test/furness_controls.py +++ b/src/test/furness_controls.py @@ -1,7 +1,7 @@ import os import platform import sys -from PyQt5.QtWidgets import QApplication +from PyQt6.QtWidgets import QApplication if platform.system().lower() == "windows": sys.path.append(f"{os.getcwd()}\src\components") else: diff --git a/src/test/label_printer.py b/src/test/label_printer.py index 9c2d22c..91aab2e 100644 --- a/src/test/label_printer.py +++ b/src/test/label_printer.py @@ -1,6 +1,6 @@ import sys from datetime import datetime -from PyQt5.QtWidgets import QApplication +from PyQt6.QtWidgets import QApplication from components import Os_Label_Printer from lib.helpers import ConfigReader diff --git a/src/test/label_printer_edaily.py b/src/test/label_printer_edaily.py index c4d2b1f..0da7e9e 100644 --- a/src/test/label_printer_edaily.py +++ b/src/test/label_printer_edaily.py @@ -1,6 +1,6 @@ import sys from datetime import datetime -from PyQt5.QtWidgets import QApplication +from Pyqt6.QtWidgets import QApplication from components import Os_Label_Printer from lib.helpers import ConfigReader diff --git a/src/test/label_printerpreform.py b/src/test/label_printerpreform.py index 4d34bd6..3201c1a 100644 --- a/src/test/label_printerpreform.py +++ b/src/test/label_printerpreform.py @@ -1,6 +1,6 @@ import sys from datetime import datetime -from PyQt5.QtWidgets import QApplication +from PyQt6.QtWidgets import QApplication from components import Os_Label_Printer from lib.helpers import ConfigReader diff --git a/src/test/svg/test_svg.py b/src/test/svg/test_svg.py index 109758c..abff418 100644 --- a/src/test/svg/test_svg.py +++ b/src/test/svg/test_svg.py @@ -1,8 +1,8 @@ import sys -from PyQt5.QtCore import QTimer, Qt +from Pyqt6.QtCore import QTimer, Qt from lxml import etree -from PyQt5 import QtSvg -from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout +from Pyqt6 import QtSvg +from Pyqt6.QtWidgets import QApplication, QWidget, QVBoxLayout def turn_to(val): diff --git a/src/test/tdb.py b/src/test/tdb.py index 0e7816c..f95f556 100644 --- a/src/test/tdb.py +++ b/src/test/tdb.py @@ -4,10 +4,10 @@ import signal import sys from uuid import uuid4 as uuid -from PyQt5.QtWidgets import QApplication +from PyQt6.QtWidgets import QApplication from peewee import AutoField, Model, TextField from playhouse.sqlite_ext import SqliteExtDatabase -from PyQt5.QtCore import QObject, QThread, QTimer +from PyQt6.QtCore import QObject, QThread, QTimer # SETUP QUITTING ON CTRL+C signal.signal(signal.SIGINT, quit) diff --git a/src/test/uvc_camera/test_uvc_camera.py b/src/test/uvc_camera/test_uvc_camera.py index 7f4ab8b..227a351 100644 --- a/src/test/uvc_camera/test_uvc_camera.py +++ b/src/test/uvc_camera/test_uvc_camera.py @@ -10,10 +10,10 @@ import traceback import weakref from datetime import datetime from pathlib import Path -from PyQt5.QtCore import Qt, pyqtSignal -from PyQt5 import uic -from PyQt5.QtGui import QPixmap -from PyQt5.QtWidgets import QMainWindow +from Pyqt6.QtCore import Qt, pyqtSignal +from Pyqt6 import uic +from Pyqt6.QtGui import QPixmap +from Pyqt6.QtWidgets import QMainWindow from src.components import Vision parser = argparse.ArgumentParser(prog='ST-TEN', description='Leak test system') @@ -69,8 +69,8 @@ try: from components import (GalaxyCamera, NeoPixels, UVCCamera, VisionSaver) from lib.db import Users from lib.helpers import ConfigReader - from PyQt5.QtCore import QObject, QThread, pyqtSignal - from PyQt5.QtWidgets import QApplication, QMessageBox, QMainWindow + from Pyqt6.QtCore import QObject, QThread, pyqtSignal + from Pyqt6.QtWidgets import QApplication, QMessageBox, QMainWindow class Main(QObject): do = pyqtSignal(dict) diff --git a/src/ui/about/about.py b/src/ui/about/about.py index 39daf1b..c4a5d18 100644 --- a/src/ui/about/about.py +++ b/src/ui/about/about.py @@ -1,5 +1,5 @@ -from PyQt5.QtCore import Qt -from PyQt5.QtGui import QPixmap +from PyQt6.QtCore import Qt +from PyQt6.QtGui import QPixmap from ui.widget import Widget diff --git a/src/ui/archive/archive.py b/src/ui/archive/archive.py index f0a1e6d..7e1cb8d 100755 --- a/src/ui/archive/archive.py +++ b/src/ui/archive/archive.py @@ -4,7 +4,7 @@ import weakref from lib.db import Archive as ArchiveDbModel from lib.db import Users -from PyQt5.QtWidgets import QAbstractItemView, QFileDialog +from PyQt6.QtWidgets import QAbstractItemView, QFileDialog from ui.crud import Crud, Json_External_Dialog_Cell_Widget from ui.helpers import replace_widget from ui.widget import Widget diff --git a/src/ui/barcode_recipe_selection/barcode_recipe_selection.py b/src/ui/barcode_recipe_selection/barcode_recipe_selection.py index 7f5d9ca..63f6e74 100644 --- a/src/ui/barcode_recipe_selection/barcode_recipe_selection.py +++ b/src/ui/barcode_recipe_selection/barcode_recipe_selection.py @@ -1,12 +1,12 @@ import sys import peewee -from PyQt5 import Qt +#from PyQt6 import Qt from lib.helpers import timing -from PyQt5.QtCore import Qt, QTimer, QThread -from PyQt5.QtGui import QKeySequence, QPixmap, QPalette, QColor -from PyQt5.QtWidgets import QShortcut, QApplication +from PyQt6.QtCore import Qt, QTimer, QThread +from PyQt6.QtGui import QKeySequence, QPixmap, QPalette, QColor +from PyQt6.QtWidgets import QApplication from ui.test_test import Test_Test from ui.widget import Widget @@ -29,10 +29,10 @@ class Barcode_Recipe_Selection(Test_Test): False: QPalette(), None: QPalette(), } - self.status_palettes[True].setColor(QPalette.Base, Qt.green) - self.status_palettes[False].setColor(QPalette.Base, Qt.red) - self.status_palettes["warning"].setColor(QPalette.Base, QColor(255, 165, 0)) - self.status_palettes[""].setColor(QPalette.Base, QColor(255, 255, 0)) + self.status_palettes[True].setColor(QPalette.ColorRole.Base, Qt.GlobalColor.green) + self.status_palettes[False].setColor(QPalette.ColorRole.Base, Qt.GlobalColor.red) + self.status_palettes["warning"].setColor(QPalette.ColorRole.Base, QColor(255, 165, 0)) + self.status_palettes[""].setColor(QPalette.ColorRole.Base, QColor(255, 255, 0)) self.recipe_selection_b.clicked.connect(self.parent.set_recipe_mode_table) self.barcode_input_l.setFocus() diff --git a/src/ui/crud/CopyPastableCrudQTableWidget.py b/src/ui/crud/CopyPastableCrudQTableWidget.py index b4b4de9..2d05bc3 100644 --- a/src/ui/crud/CopyPastableCrudQTableWidget.py +++ b/src/ui/crud/CopyPastableCrudQTableWidget.py @@ -1,15 +1,15 @@ import sys import weakref -from PyQt5.QtCore import QEvent, Qt -from PyQt5.QtWidgets import QApplication, QTableWidget +from PyQt6.QtCore import QEvent, Qt +from PyQt6.QtWidgets import QApplication, QTableWidget class CopyPastableCrudQTableWidget(QTableWidget): crud = None def eventFilter(self, target, event): - if event.type() == QEvent.KeyPress: + if event.type() == QEvent.Type.KeyPress: pass # if event.key() == Qt.Key_C and (event.modifiers() & Qt.ControlModifier): # if event.key() == Qt.Key_C and (event.modifiers() & Qt.ControlModifier): diff --git a/src/ui/crud/crud.py b/src/ui/crud/crud.py index 583bf4b..a6b9b17 100755 --- a/src/ui/crud/crud.py +++ b/src/ui/crud/crud.py @@ -7,8 +7,8 @@ from datetime import datetime from lib.db import Crud_DB from peewee import TextField -from PyQt5.QtCore import Qt, QTimer, pyqtSignal, QSize -from PyQt5.QtWidgets import (QAbstractItemView, QComboBox, QDialog, +from PyQt6.QtCore import Qt, QTimer, pyqtSignal, QSize +from PyQt6.QtWidgets import (QAbstractItemView, QComboBox, QDialog, QGridLayout, QHeaderView, QLineEdit, QMessageBox, QPlainTextEdit, QPushButton) from ui.dialog import Dialog @@ -199,7 +199,7 @@ class Json_External_Dialog_Editor_Cell_Widget(QPushButton, Cell): super().__init__("\u238B modifica") Cell.__init__(self, action=action, readonly=readonly, autocomplete=autocomplete, field_name=field_name, field_alias=field_alias, field=field, row_number=row_number, crud=crud) self.dialog = Dialog() - self.dialog.setAttribute(Qt.WA_DeleteOnClose, on=False) + self.setAttribute(Qt.WidgetAttribute.WA_DeleteOnClose, on=False) self.dialog.setCentralWidget(self.editor) self.dialog.setWindowTitle(self.field_alias) self.clicked.connect(self.show_dialog) @@ -277,13 +277,13 @@ class Crud(Widget): self.refresh("init") self.db_tw.horizontalHeader().sectionClicked.connect(self.toggle_sort) # self.db_tw.horizontalHeader().setStretchLastSection(True) - self.db_tw.horizontalHeader().setSectionResizeMode(QHeaderView.Interactive) + self.db_tw.horizontalHeader().setSectionResizeMode(QHeaderView.ResizeMode.Interactive) # self.db_tw.horizontalHeader().setSectionResizeMode(QHeaderView.ResizeToContents) - self.db_tw.setSelectionBehavior(QAbstractItemView.SelectRows) + self.db_tw.setSelectionBehavior(QAbstractItemView.SelectionBehavior.SelectRows) if self.readonly is None or self.readonly is True: - self.db_tw.setSelectionMode(QAbstractItemView.SingleSelection) + self.db_tw.setSelectionMode(QAbstractItemView.SelectionMode.SingleSelection) else: - self.db_tw.setSelectionMode(QAbstractItemView.ExtendedSelection) + self.db_tw.setSelectionMode(QAbstractItemView.SelectionMode.ExtendedSelection) self.db_tw.itemSelectionChanged.connect(self.show_selection) self.revert_b.clicked.connect(lambda checked, selfi=weakref.ref(self): selfi().refresh("revert")) if self.pagination is not False: diff --git a/src/ui/diagnostics/diagnostics.py b/src/ui/diagnostics/diagnostics.py index be00b30..4e570c1 100644 --- a/src/ui/diagnostics/diagnostics.py +++ b/src/ui/diagnostics/diagnostics.py @@ -1,8 +1,8 @@ import sys -from PyQt5 import QtGui, QtCore -from PyQt5.QtCore import Qt, pyqtSlot -from PyQt5.QtWidgets import QTableWidgetItem, QPushButton, QHeaderView, QLabel, QLineEdit +from PyQt6 import QtGui, QtCore +from PyQt6.QtCore import Qt, pyqtSlot +from PyQt6.QtWidgets import QTableWidgetItem, QPushButton, QHeaderView, QLabel, QLineEdit from ui.widget import Widget diff --git a/src/ui/dialog/dialog.py b/src/ui/dialog/dialog.py index 6f5ebcc..ae3e44c 100644 --- a/src/ui/dialog/dialog.py +++ b/src/ui/dialog/dialog.py @@ -1,9 +1,9 @@ import logging -from PyQt5 import uic -from PyQt5.QtCore import Qt, pyqtSignal -from PyQt5.QtGui import QIcon -from PyQt5.QtWidgets import QDialog +from PyQt6 import uic +from PyQt6.QtCore import Qt, pyqtSignal +from PyQt6.QtGui import QIcon +from PyQt6.QtWidgets import QDialog from ui.helpers import replace_widget dialogs = {} @@ -16,7 +16,7 @@ class Dialog(QDialog): super().__init__(*args, **kwargs) global dialogs dialogs[id(self)] = self - self.setAttribute(Qt.WA_DeleteOnClose) + self.setAttribute(Qt.WidgetAttribute.WA_DeleteOnClose) u = "src/ui/{0}/{0}.ui".format("dialog") self.ui = uic.loadUi(u, self) # LOGO diff --git a/src/ui/editor/editor.py b/src/ui/editor/editor.py index 89cb426..4ee3e33 100644 --- a/src/ui/editor/editor.py +++ b/src/ui/editor/editor.py @@ -1,7 +1,7 @@ import weakref -from PyQt5.QtCore import QObject -from PyQt5.QtWidgets import (QCheckBox, QComboBox, QDoubleSpinBox, QLineEdit, +from PyQt6.QtCore import QObject +from PyQt6.QtWidgets import (QCheckBox, QComboBox, QDoubleSpinBox, QLineEdit, QListWidget, QPlainTextEdit, QRadioButton, QSpinBox) from ui.widget import Widget diff --git a/src/ui/helpers/calc_foreground_color.py b/src/ui/helpers/calc_foreground_color.py index 3c7b6b4..007d68b 100644 --- a/src/ui/helpers/calc_foreground_color.py +++ b/src/ui/helpers/calc_foreground_color.py @@ -1,4 +1,4 @@ -from PyQt5.QtGui import QColor +from PyQt6.QtGui import QColor def calc_foreground_color(background_color): diff --git a/src/ui/login/login.py b/src/ui/login/login.py index dbded52..b9cc30f 100755 --- a/src/ui/login/login.py +++ b/src/ui/login/login.py @@ -3,9 +3,9 @@ import subprocess import sys from components import ArchiveSynchronizer from lib.db import Session, Users -from PyQt5.QtCore import QTimer, pyqtSignal -from PyQt5.QtGui import QKeySequence, QIcon -from PyQt5.QtWidgets import QMessageBox, QShortcut +from PyQt6.QtCore import QTimer, pyqtSignal +from PyQt6.QtGui import QKeySequence, QIcon, QShortcut +from PyQt6.QtWidgets import QMessageBox from ui.widget import Widget # TESTING diff --git a/src/ui/main_window/main_window.py b/src/ui/main_window/main_window.py index 214edaf..15f26da 100644 --- a/src/ui/main_window/main_window.py +++ b/src/ui/main_window/main_window.py @@ -1,5 +1,6 @@ -import sip -from PyQt5.QtCore import pyqtSignal +from PyQt6 import sip +from PyQt6.QtCore import pyqtSignal + from ui.window import Window diff --git a/src/ui/qml_widget/qml_widget.py b/src/ui/qml_widget/qml_widget.py index cf602bb..d88e8ba 100644 --- a/src/ui/qml_widget/qml_widget.py +++ b/src/ui/qml_widget/qml_widget.py @@ -1,6 +1,6 @@ from lib.helpers import get_resource -from PyQt5.QtCore import QObject, Qt, QUrl -from PyQt5.QtQuickWidgets import QQuickWidget +from PyQt6.QtCore import QObject, Qt, QUrl +from PyQt6.QtQuickWidgets import QQuickWidget # TODO: https://www.pythonguis.com/tutorials/qml-qtquick-python-application/ diff --git a/src/ui/recipe_selection/recipe_selection.py b/src/ui/recipe_selection/recipe_selection.py index 5530cfb..d69907d 100755 --- a/src/ui/recipe_selection/recipe_selection.py +++ b/src/ui/recipe_selection/recipe_selection.py @@ -6,9 +6,9 @@ import weakref from glob import glob from lib.db import Recipes, Users, db -from PyQt5.QtCore import QTimer, pyqtSignal -from PyQt5.QtGui import QKeySequence -from PyQt5.QtWidgets import QFileDialog, QMessageBox, QShortcut +from PyQt6.QtCore import QTimer, pyqtSignal +from PyQt6.QtGui import QKeySequence, QShortcut +from PyQt6.QtWidgets import QFileDialog, QMessageBox from lib.helpers.step import Step from ui.crud import Crud, Json_External_Dialog_Editor_Cell_Widget @@ -421,47 +421,47 @@ class Recipe_Selection(Widget): "part_number": recipe.part_number, # "dimensione_lotto_abilitata": "x" if recipe.spec["count"] else "", # "dimensione_lotto": steps["count"].spec["amount"], - "verifica_connettore_abilitata": "x" if recipe.spec["connector"] else "", - "connettore": steps["connector"].spec["connector"], - barcode_enable_field: "x" if recipe.spec["barcodes"] else "", - barcode_serial_field: steps["barcodes"].spec["serial"], - "verifica_resistenza_connettore_abilitata": "x" if recipe.spec["resistance"] else "", - "scala_resistenza": steps["resistance"].spec["scale"], - "r nominale": steps["resistance"].spec["expected"], - "tolleranza_resistenza_pos": steps["resistance"].spec["tolerance_pos"], - "tolleranza_resistenza_neg": steps["resistance"].spec["tolerance_neg"], + "verifica_connettore_abilitata": "x" if recipe.spec.get("connector") else "", + "connettore": steps.get("connector", {}).get("spec", {}).get("connector", ""), + barcode_enable_field: "x" if recipe.spec.get("barcodes") else "", + barcode_serial_field: steps.get("barcodes", {}).get("spec", {}).get("serial", ""), + "verifica_resistenza_connettore_abilitata": "x" if recipe.spec.get("resistance") else "", + "scala_resistenza": steps.get("resistance", {}).get("spec", {}).get("scale", ""), + "r nominale": steps.get("resistance", {}).get("spec", {}).get("expected", ""), + "tolleranza_resistenza_pos": steps.get("resistance", {}).get("spec", {}).get("tolerance_pos", ""), + "tolleranza_resistenza_neg": steps.get("resistance", {}).get("spec", {}).get("tolerance_neg", ""), # "avvitatura_abilitata": "x" if recipe.spec["screws"] else "", - # "viti": steps["screws"].spec["quantity"], - "prova_tenuta_abilitata": "x" if recipe.spec["leak_1"] else "", - "tempo_pre_riempimento": steps["leak_1"].spec["pre_filling_time"], - "pressione_pre_riempimento": steps["leak_1"].spec["pre_filling_pressure"], - "tempo_riempimento": steps["leak_1"].spec["filling_time"], - "tempo_assestamento": steps["leak_1"].spec["settling_time"], - "percentuale_minima_pressione_assestamento": steps["leak_1"].spec["settling_pressure_min_percent"], - "percentuale_massima_pressione_assestamento": steps["leak_1"].spec["settling_pressure_max_percent"], - "tempo_di_test": steps["leak_1"].spec["test_time"], - "pressione_di_test_delta_minimo": steps["leak_1"].spec["test_pressure_qneg"], - "pressione_di_test": steps["leak_1"].spec["test_pressure"], - "pressione_di_test_delta_massimo": steps["leak_1"].spec["test_pressure_qpos"], - "tempo_svuotamento": steps["leak_1"].spec["flush_time"], - "pressione_svuotamento": steps["leak_1"].spec["flush_pressure"], - "prova_tenuta_abilitata_2": "x" if recipe.spec["leak_2"] else "", - "tempo_pre_riempimento_2": steps["leak_2"].spec["pre_filling_time"], - "pressione_pre_riempimento_2": steps["leak_2"].spec["pre_filling_pressure"], - "tempo_riempimento_2": steps["leak_2"].spec["filling_time"], - "tempo_assestamento_2": steps["leak_2"].spec["settling_time"], - "percentuale_minima_pressione_assestamento_2": steps["leak_2"].spec["settling_pressure_min_percent"], - "percentuale_massima_pressione_assestamento_2": steps["leak_2"].spec["settling_pressure_max_percent"], - "tempo_di_test_2": steps["leak_2"].spec["test_time"], - "pressione_di_test_delta_minimo_2": steps["leak_2"].spec["test_pressure_qneg"], - "pressione_di_test_2": steps["leak_2"].spec["test_pressure"], - "pressione_di_test_delta_massimo_2": steps["leak_2"].spec["test_pressure_qpos"], - "tempo_svuotamento_2": steps["leak_2"].spec["flush_time"], - "pressione_svuotamento_2": steps["leak_2"].spec["flush_pressure"], - "test_visione_abilitato": recipe.spec["vision"], - "ricetta_visione": steps["vision"].spec["recipe"], - "stampa_etichetta_abilitata": "x" if recipe.spec["print"] else "", - print_template_field: steps["print"].spec["template"], + # "viti": steps.get("screws", {}).get("spec", {}).get("quantity", ""), + "prova_tenuta_abilitata": "x" if recipe.spec.get("leak_1") else "", + "tempo_pre_riempimento": steps.get("leak_1", {}).get("spec", {}).get("pre_filling_time", ""), + "pressione_pre_riempimento": steps.get("leak_1", {}).get("spec", {}).get("pre_filling_pressure", ""), + "tempo_riempimento": steps.get("leak_1", {}).get("spec", {}).get("filling_time", ""), + "tempo_assestamento": steps.get("leak_1", {}).get("spec", {}).get("settling_time", ""), + "percentuale_minima_pressione_assestamento": steps.get("leak_1", {}).get("spec", {}).get("settling_pressure_min_percent", ""), + "percentuale_massima_pressione_assestamento": steps.get("leak_1", {}).get("spec", {}).get("settling_pressure_max_percent", ""), + "tempo_di_test": steps.get("leak_1", {}).get("spec", {}).get("test_time", ""), + "pressione_di_test_delta_minimo": steps.get("leak_1", {}).get("spec", {}).get("test_pressure_qneg", ""), + "pressione_di_test": steps.get("leak_1", {}).get("spec", {}).get("test_pressure", ""), + "pressione_di_test_delta_massimo": steps.get("leak_1", {}).get("spec", {}).get("test_pressure_qpos", ""), + "tempo_svuotamento": steps.get("leak_1", {}).get("spec", {}).get("flush_time", ""), + "pressione_svuotamento": steps.get("leak_1", {}).get("spec", {}).get("flush_pressure", ""), + "prova_tenuta_abilitata_2": "x" if recipe.spec.get("leak_2") else "", + "tempo_pre_riempimento_2": steps.get("leak_2", {}).get("spec", {}).get("pre_filling_time", ""), + "pressione_pre_riempimento_2": steps.get("leak_2", {}).get("spec", {}).get("pre_filling_pressure", ""), + "tempo_riempimento_2": steps.get("leak_2", {}).get("spec", {}).get("filling_time", ""), + "tempo_assestamento_2": steps.get("leak_2", {}).get("spec", {}).get("settling_time", ""), + "percentuale_minima_pressione_assestamento_2": steps.get("leak_2", {}).get("spec", {}).get("settling_pressure_min_percent", ""), + "percentuale_massima_pressione_assestamento_2": steps.get("leak_2", {}).get("spec", {}).get("settling_pressure_max_percent", ""), + "tempo_di_test_2": steps.get("leak_2", {}).get("spec", {}).get("test_time", ""), + "pressione_di_test_delta_minimo_2": steps.get("leak_2", {}).get("spec", {}).get("test_pressure_qneg", ""), + "pressione_di_test_2": steps.get("leak_2", {}).get("spec", {}).get("test_pressure", ""), + "pressione_di_test_delta_massimo_2": steps.get("leak_2", {}).get("spec", {}).get("test_pressure_qpos", ""), + "tempo_svuotamento_2": steps.get("leak_2", {}).get("spec", {}).get("flush_time", ""), + "pressione_svuotamento_2": steps.get("leak_2", {}).get("spec", {}).get("flush_pressure", ""), + "test_visione_abilitato": recipe.spec.get("vision", ""), + "ricetta_visione": steps.get("vision", {}).get("spec", {}).get("recipe", ""), + "stampa_etichetta_abilitata": "x" if recipe.spec.get("print") else "", + print_template_field: steps.get("print", {}).get("spec", {}).get("template", ""), } data.append(exportable) if len(data): @@ -477,9 +477,9 @@ class Recipe_Selection(Widget): None, "Attenzione si sta cercando di cancellare tutte le ricette!", "Si è sicuri di voler eliminare tutte le ricette?\nQuesta operazione non può essere annullata!", - buttons=QMessageBox.Ok | QMessageBox.Cancel, - defaultButton=QMessageBox.Cancel + buttons = QMessageBox.StandardButton.Ok | QMessageBox.StandardButton.Cancel, + defaultButton = QMessageBox.StandardButton.Cancel ) - if ret == QMessageBox.Ok: + if ret == QMessageBox.StandardButton.Ok: Recipes.delete().execute() self.crud.refresh() diff --git a/src/ui/recipe_spec_editor/recipe_spec_editor.py b/src/ui/recipe_spec_editor/recipe_spec_editor.py index e10d955..cc5541a 100644 --- a/src/ui/recipe_spec_editor/recipe_spec_editor.py +++ b/src/ui/recipe_spec_editor/recipe_spec_editor.py @@ -1,4 +1,4 @@ -from PyQt5.QtWidgets import QAbstractItemView +from PyQt6.QtWidgets import QAbstractItemView from ui.editor import Editor diff --git a/src/ui/steps_management/steps_management.py b/src/ui/steps_management/steps_management.py index 7a46c20..617f2ba 100644 --- a/src/ui/steps_management/steps_management.py +++ b/src/ui/steps_management/steps_management.py @@ -1,7 +1,7 @@ from glob import iglob -from PyQt5.QtCore import Qt -from PyQt5.QtWidgets import QPushButton +from PyQt6.QtCore import Qt +from PyQt6.QtWidgets import QPushButton from ui.crud import Cell, Combo_Box_Cell_Widget, Crud from ui.dialog import Dialog from ui.leak_step_editor import Leak_Step_Editor diff --git a/src/ui/test/test.py b/src/ui/test/test.py index fe38ed5..c7ed0db 100755 --- a/src/ui/test/test.py +++ b/src/ui/test/test.py @@ -4,12 +4,12 @@ import os import sys import weakref from datetime import datetime, timedelta -from PyQt5.QtCore import QTimer, pyqtSlot -from PyQt5.QtWidgets import QMessageBox +from PyQt6.QtCore import QTimer, pyqtSlot +from PyQt6.QtWidgets import QMessageBox from lib.db import Archive, Recipes, Users from lib.helpers import get_shift from lib.helpers.step import Step -from playhouse.shortcuts import model_to_dict +#from playhouse.shortcuts import model_to_dict from ui.barcode_recipe_selection import Barcode_Recipe_Selection from ui.helpers import replace_widget from ui.recipe_selection import Recipe_Selection diff --git a/src/ui/test_admin_permission/test_admin_permission.py b/src/ui/test_admin_permission/test_admin_permission.py index 79d0656..c00e827 100644 --- a/src/ui/test_admin_permission/test_admin_permission.py +++ b/src/ui/test_admin_permission/test_admin_permission.py @@ -1,9 +1,9 @@ import sys from lib.db import Users -from PyQt5.QtCore import QTimer -from PyQt5.QtGui import QKeySequence -from PyQt5.QtWidgets import QMessageBox, QShortcut +from PyQt6.QtCore import QTimer +from PyQt6.QtGui import QKeySequence, QShortcut +from PyQt6.QtWidgets import QMessageBox from ui.widget import Widget diff --git a/src/ui/test_assembly/test_assembly.py b/src/ui/test_assembly/test_assembly.py index fcea393..ae16475 100755 --- a/src/ui/test_assembly/test_assembly.py +++ b/src/ui/test_assembly/test_assembly.py @@ -1,7 +1,7 @@ import weakref -from PyQt5.QtCore import Qt -from PyQt5.QtGui import QPixmap +from PyQt6.QtCore import Qt +from PyQt6.QtGui import QPixmap from ui.helpers import replace_widget from ui.widget import Widget @@ -56,4 +56,4 @@ class Test_Assembly(Widget): def resizeEvent(self, event=None): if self.img is not None: - self.img_l.setPixmap(self.img.scaled(self.img_l.width(), self.img_l.height(), Qt.KeepAspectRatio, Qt.SmoothTransformation)) + self.img_l.setPixmap(self.img.scaled(self.img_l.width(), self.img_l.height(), Qt.AspectRatioMode.KeepAspectRatio, Qt.TransformationMode.SmoothTransformation)) diff --git a/src/ui/test_barcodes/test_barcodes.py b/src/ui/test_barcodes/test_barcodes.py index 2ce80ed..e4c2b01 100644 --- a/src/ui/test_barcodes/test_barcodes.py +++ b/src/ui/test_barcodes/test_barcodes.py @@ -2,9 +2,8 @@ import re import sys from lib.helpers import timing -from PyQt5.QtCore import QTimer -from PyQt5.QtGui import QKeySequence -from PyQt5.QtWidgets import QShortcut +from PyQt6.QtCore import QTimer +from PyQt6.QtGui import QKeySequence, QShortcut from ui.test_test import Test_Test diff --git a/src/ui/test_connector/test_connector.py b/src/ui/test_connector/test_connector.py index af8f0a5..4b27841 100644 --- a/src/ui/test_connector/test_connector.py +++ b/src/ui/test_connector/test_connector.py @@ -1,9 +1,9 @@ import sys from lib.helpers import timing -from PyQt5.QtCore import QTimer -from PyQt5.QtGui import QKeySequence -from PyQt5.QtWidgets import QShortcut +from PyQt6.QtCore import QTimer +from PyQt6.QtGui import QKeySequence, QShortcut +#from PyQt6.QtWidgets import from ui.test_test import Test_Test diff --git a/src/ui/test_count/test_count.py b/src/ui/test_count/test_count.py index bb2c962..82d5c9d 100644 --- a/src/ui/test_count/test_count.py +++ b/src/ui/test_count/test_count.py @@ -2,9 +2,9 @@ import sys import weakref from lib.helpers import timing -from PyQt5.QtCore import QTimer -from PyQt5.QtGui import QKeySequence -from PyQt5.QtWidgets import QShortcut +from PyQt6.QtCore import QTimer +from PyQt6.QtGui import QKeySequence, QShortcut +#from PyQt6.QtWidgets import from ui.test_test import Test_Test diff --git a/src/ui/test_count_end/test_count_end.py b/src/ui/test_count_end/test_count_end.py index abe0e08..d2fc536 100644 --- a/src/ui/test_count_end/test_count_end.py +++ b/src/ui/test_count_end/test_count_end.py @@ -2,9 +2,9 @@ import sys import weakref from lib.helpers import timing -from PyQt5.QtCore import QTimer -from PyQt5.QtGui import QKeySequence -from PyQt5.QtWidgets import QShortcut +from PyQt6.QtCore import QTimer +from PyQt6.QtGui import QKeySequence, QShortcut +#from PyQt6.QtWidgets import from ui.test_test import Test_Test diff --git a/src/ui/test_fail/test_fail.py b/src/ui/test_fail/test_fail.py index c0adc25..35500f8 100644 --- a/src/ui/test_fail/test_fail.py +++ b/src/ui/test_fail/test_fail.py @@ -3,9 +3,9 @@ import sys import weakref from lib.helpers import timing -from PyQt5.QtCore import QTimer -from PyQt5.QtGui import QKeySequence -from PyQt5.QtWidgets import QShortcut +from PyQt6.QtCore import QTimer +from PyQt6.QtGui import QKeySequence, QShortcut +#from PyQt6.QtWidgets import from ui.test_test import Test_Test diff --git a/src/ui/test_instructions/test_instructions.py b/src/ui/test_instructions/test_instructions.py index 88505bc..a1f84bd 100644 --- a/src/ui/test_instructions/test_instructions.py +++ b/src/ui/test_instructions/test_instructions.py @@ -2,13 +2,13 @@ import os.path import sys import weakref -from PyQt5 import QtSvg -from PyQt5.QtCore import Qt - +from PyQt6 import QtSvg +from PyQt6.QtCore import Qt +from PyQt6.QtSvgWidgets import QSvgWidget from lib.helpers import timing -from PyQt5.QtCore import QTimer -from PyQt5.QtGui import QKeySequence, QPixmap -from PyQt5.QtWidgets import QShortcut, QApplication, QVBoxLayout +from PyQt6.QtCore import QTimer +from PyQt6.QtGui import QKeySequence, QPixmap, QShortcut +from PyQt6.QtWidgets import QApplication, QVBoxLayout from ui.test_test import Test_Test from lxml import etree @@ -24,7 +24,7 @@ class Test_Instructions(Test_Test): self.svg_root=None self.flag=False self.inputs={} - self.svg_widget=QtSvg.QSvgWidget() + self.svg_widget = QSvgWidget() self.layout = QVBoxLayout() self.layout.addWidget(self.svg_widget) self.svg_w.setLayout(self.layout) diff --git a/src/ui/test_instructions_reminder/test_instructions_reminder.py b/src/ui/test_instructions_reminder/test_instructions_reminder.py index 2e6153e..7623a6d 100644 --- a/src/ui/test_instructions_reminder/test_instructions_reminder.py +++ b/src/ui/test_instructions_reminder/test_instructions_reminder.py @@ -2,13 +2,13 @@ import os.path import sys import weakref -from PyQt5 import QtSvg -from PyQt5.QtCore import Qt +from PyQt6 import QtSvg +from PyQt6.QtCore import Qt from lib.helpers import timing -from PyQt5.QtCore import QTimer -from PyQt5.QtGui import QKeySequence, QPixmap -from PyQt5.QtWidgets import QShortcut, QApplication, QVBoxLayout +from PyQt6.QtCore import QTimer +from PyQt6.QtGui import QKeySequence, QPixmap, QShortcut +from PyQt6.QtWidgets import QApplication, QVBoxLayout from lxml import etree diff --git a/src/ui/test_leak/test_leak.py b/src/ui/test_leak/test_leak.py index 0728174..24c048d 100644 --- a/src/ui/test_leak/test_leak.py +++ b/src/ui/test_leak/test_leak.py @@ -2,9 +2,9 @@ import sys import time import weakref -from PyQt5.QtGui import QPixmap -from PyQt5.QtWidgets import QMessageBox, QDialog, QApplication -from PyQt5.QtCore import Qt +from PyQt6.QtGui import QPixmap +from PyQt6.QtWidgets import QMessageBox, QDialog, QApplication +from PyQt6.QtCore import Qt from ui import Dialog from ui.test_instructions_reminder import Test_Instructions_Reminder from ui.test_test import Test_Test diff --git a/src/ui/test_resistance/test_resistance.py b/src/ui/test_resistance/test_resistance.py index 88f2d53..b6097d1 100644 --- a/src/ui/test_resistance/test_resistance.py +++ b/src/ui/test_resistance/test_resistance.py @@ -1,6 +1,6 @@ import sys -from PyQt5.QtGui import QPalette +from PyQt6.QtGui import QPalette from ui.test_test import Test_Test @@ -139,7 +139,7 @@ class Test_Resistance(Test_Test): p = "warning" else: p = False - bg = self.status_palettes[p].color(QPalette.Base) + bg = self.status_palettes[p].color(QPalette.ColorRole.Base) color = f"rgb({bg.red()}, {bg.green()}, {bg.blue()})" self.resistance_l.setStyleSheet(f"background-color: {color};\nborder: 1px solid black;\n") super().visualize(data, img=self.status_imgs_full[i]) diff --git a/src/ui/test_test/test_test.py b/src/ui/test_test/test_test.py index cb55ff7..3d275c9 100644 --- a/src/ui/test_test/test_test.py +++ b/src/ui/test_test/test_test.py @@ -4,8 +4,8 @@ import weakref from datetime import datetime from lib.helpers import timing -from PyQt5.QtCore import Qt, QTimer, pyqtSignal -from PyQt5.QtGui import QColor, QPalette, QPixmap +from PyQt6.QtCore import Qt, QTimer, pyqtSignal +from PyQt6.QtGui import QColor, QPalette, QPixmap from ui import Dialog from ui.test_admin_permission import Test_Admin_Permission from ui.widget import Widget @@ -73,7 +73,7 @@ class Test_Test(Widget): False: QPixmap("src/ui/imgs/fail.png"), None: QPixmap("src/ui/imgs/wait.png"), } - self.status_imgs_small = {k: i.scaled(32, 32, Qt.KeepAspectRatio, Qt.SmoothTransformation) for k, i in self.status_imgs_full.items()} + self.status_imgs_small = {k: i.scaled(32, 32, Qt.AspectRatioMode.KeepAspectRatio, Qt.TransformationMode.SmoothTransformation) for k, i in self.status_imgs_full.items()} self.status_palettes = { True: QPalette(), "": QPalette(), @@ -81,10 +81,10 @@ class Test_Test(Widget): False: QPalette(), None: QPalette(), } - self.status_palettes[True].setColor(QPalette.Base, Qt.green) - self.status_palettes[False].setColor(QPalette.Base, Qt.red) - self.status_palettes["warning"].setColor(QPalette.Base, QColor(255, 165, 0)) - self.status_palettes[""].setColor(QPalette.Base, QColor(255, 255, 0)) + self.status_palettes[True].setColor(QPalette.ColorRole.Base, Qt.GlobalColor.green) + self.status_palettes[False].setColor(QPalette.ColorRole.Base, Qt.GlobalColor.red) + self.status_palettes["warning"].setColor(QPalette.ColorRole.Base, QColor(255, 165, 0)) + self.status_palettes[""].setColor(QPalette.ColorRole.Base, QColor(255, 255, 0)) self.reset() self.visualize() @@ -237,7 +237,7 @@ class Test_Test(Widget): def resizeEvent(self, event=None): if hasattr(self, "img_l"): - self.img_l.setPixmap(self.img.scaled(self.img_l.width(), self.img_l.height(), Qt.KeepAspectRatio, Qt.SmoothTransformation)) + self.img_l.setPixmap(self.img.scaled(self.img_l.width(), self.img_l.height(), Qt.AspectRatioMode.KeepAspectRatio, Qt.TransformationMode.SmoothTransformation)) def challenge_admin(self, info): if not self.admin_challenged: diff --git a/src/ui/test_vision/test_vision.py b/src/ui/test_vision/test_vision.py index cbb7866..e7bbc47 100644 --- a/src/ui/test_vision/test_vision.py +++ b/src/ui/test_vision/test_vision.py @@ -1,8 +1,8 @@ import sys -from PyQt5.QtCore import pyqtSignal -from PyQt5.QtGui import QColor, QImage, QPalette, QPixmap -from PyQt5.QtWidgets import QHeaderView, QProgressBar, QTableWidgetItem +from PyQt6.QtCore import pyqtSignal +from PyQt6.QtGui import QColor, QImage, QPalette, QPixmap +from PyQt6.QtWidgets import QHeaderView, QProgressBar, QTableWidgetItem from ui.helpers import calc_foreground_color from ui.test_test import Test_Test @@ -24,8 +24,8 @@ class Test_Vision(Test_Test): } self.results_tw.setColumnCount(len(self.results_table_headers)) self.results_tw.setHorizontalHeaderLabels(self.results_table_headers.values()) - self.results_tw.horizontalHeader().setSectionResizeMode(QHeaderView.Stretch) - self.results_tw.verticalHeader().setSectionResizeMode(QHeaderView.Stretch) + self.results_tw.horizontalHeader().setSectionResizeMode(QHeaderView.ResizeMode.Stretch) + self.results_tw.verticalHeader().setSectionResizeMode(QHeaderView.ResizeMode.Stretch) def start(self, recipe=None, step=None, pieces=None): show = super().start(recipe=recipe, step=step, pieces=pieces) diff --git a/src/ui/test_warning_img/test_warning_img.py b/src/ui/test_warning_img/test_warning_img.py index 0fe5f80..a97c323 100644 --- a/src/ui/test_warning_img/test_warning_img.py +++ b/src/ui/test_warning_img/test_warning_img.py @@ -1,12 +1,12 @@ import sys import weakref -from PyQt5.QtCore import Qt +from PyQt6.QtCore import Qt from lib.helpers import timing -from PyQt5.QtCore import QTimer -from PyQt5.QtGui import QKeySequence, QPixmap -from PyQt5.QtWidgets import QShortcut +from PyQt6.QtCore import QTimer +from PyQt6.QtGui import QKeySequence, QPixmap, QShortcut +#from PyQt6.QtWidgets import from ui.test_test import Test_Test diff --git a/src/ui/users_management/users_management.py b/src/ui/users_management/users_management.py index 99887d6..7796660 100644 --- a/src/ui/users_management/users_management.py +++ b/src/ui/users_management/users_management.py @@ -1,7 +1,7 @@ import traceback from lib.db import Users -from PyQt5.QtWidgets import QMessageBox +from PyQt6.QtWidgets import QMessageBox from ui.crud import Crud, Line_Edit_Cell_Widget from ui.widget import Widget diff --git a/src/ui/widget/widget.py b/src/ui/widget/widget.py index dc85718..9e73224 100644 --- a/src/ui/widget/widget.py +++ b/src/ui/widget/widget.py @@ -1,16 +1,16 @@ import logging from lib.helpers import get_resource -from PyQt5 import uic -from PyQt5.QtCore import Qt -from PyQt5.QtWidgets import QWidget +from PyQt6 import uic +from PyQt6.QtCore import Qt +from PyQt6.QtWidgets import QWidget from ui.dialog import Dialog class Widget(QWidget): def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) - self.setAttribute(Qt.WA_DeleteOnClose) + self.setAttribute(Qt.WidgetAttribute.WA_DeleteOnClose) me = self.__class__.__name__ u = get_resource("ui/{0}/{0}.ui".format(me.lower())) self.ui = uic.loadUi(u, self) diff --git a/src/ui/window/window.py b/src/ui/window/window.py index 8e9ff6f..b786644 100644 --- a/src/ui/window/window.py +++ b/src/ui/window/window.py @@ -1,10 +1,10 @@ import logging from lib.helpers import get_resource -from PyQt5 import uic -from PyQt5.QtCore import Qt, pyqtSignal -from PyQt5.QtGui import QIcon -from PyQt5.QtWidgets import QMainWindow +from PyQt6 import uic +from PyQt6.QtCore import Qt, pyqtSignal +from PyQt6.QtGui import QIcon +from PyQt6.QtWidgets import QMainWindow from ui.dialog import Dialog @@ -13,8 +13,8 @@ class Window(QMainWindow): def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) - self.setAttribute(Qt.WA_DeleteOnClose) - self.setWindowFlags(Qt.Window) + self.setAttribute(Qt.WidgetAttribute.WA_DeleteOnClose) + self.setWindowFlags(Qt.WindowType.Window) me = self.__class__.__name__ u = get_resource("ui/{0}/{0}.ui".format(me.lower())) self.ui = uic.loadUi(u, self)