[pyside] switch to pyside instead of pyqt
This commit is contained in:
parent
5dd44512df
commit
4e7ddd468c
@ -1,6 +1,6 @@
|
||||
import logging
|
||||
from PyQt6.QtWidgets import QWidget, QStackedLayout, QSizePolicy
|
||||
from PyQt6.QtCore import Qt
|
||||
from PySide6.QtWidgets import QWidget, QStackedLayout, QSizePolicy
|
||||
from PySide6.QtCore import Qt
|
||||
|
||||
from fixtracks.taskwidgets import FixTracks
|
||||
from fixtracks.detectionmerge import MergeDetections
|
||||
|
@ -1,16 +1,15 @@
|
||||
import logging
|
||||
|
||||
from PyQt6.QtWidgets import QWidget, QGridLayout, QVBoxLayout, QHBoxLayout, QLabel, QPushButton, QComboBox, QSizePolicy, QSpinBox, QGraphicsView, QGraphicsScene, QGraphicsLineItem, QSpacerItem, QProgressDialog, QProgressBar
|
||||
from PyQt6.QtCore import QThreadPool, Qt, pyqtSignal, pyqtSlot
|
||||
from PyQt6.QtGui import QImage, QPixmap, QColor, QPen
|
||||
from PySide6.QtCore import Qt, QThreadPool, Signal, Slot
|
||||
from PySide6.QtWidgets import QWidget, QGridLayout, QVBoxLayout, QHBoxLayout, QLabel, QPushButton, QComboBox, QSizePolicy, QSpinBox, QGraphicsView, QGraphicsScene, QGraphicsLineItem, QSpacerItem, QProgressDialog, QFileDialog
|
||||
from PySide6.QtGui import QImage, QPixmap, QColor, QPen
|
||||
|
||||
from fixtracks.util import ImageReader, DataFrameReader, Merger
|
||||
from PyQt6.QtWidgets import QFileDialog
|
||||
|
||||
|
||||
class VideoPreview(QWidget):
|
||||
def __init__(self, left=True, parent=None):
|
||||
super().__init__(None)
|
||||
super().__init__(parent)
|
||||
self._image = None
|
||||
self._line_pen = QPen(QColor.fromString("red"), 4)
|
||||
self._view = QGraphicsView()
|
||||
@ -26,7 +25,7 @@ class VideoPreview(QWidget):
|
||||
self._scene = QGraphicsScene()
|
||||
self._pixmap = self._scene.addPixmap(QPixmap.fromImage(img))
|
||||
self._view.setScene(self._scene)
|
||||
self._view.fitInView(self._scene.sceneRect(), mode=Qt.AspectRatioMode.KeepAspectRatio)
|
||||
self._view.fitInView(self._scene.sceneRect(), aspectRadioMode=Qt.AspectRatioMode.KeepAspectRatio)
|
||||
image_rect = self._pixmap.boundingRect()
|
||||
start_x = image_rect.right() if self._left else image_rect.left()
|
||||
start_y = image_rect.top()
|
||||
@ -48,7 +47,7 @@ class VideoPreview(QWidget):
|
||||
|
||||
|
||||
class MergeDetections(QWidget):
|
||||
back = pyqtSignal()
|
||||
back = Signal()
|
||||
|
||||
def __init__(self, parent=None):
|
||||
super().__init__(parent)
|
||||
@ -276,7 +275,7 @@ class MergeDetections(QWidget):
|
||||
self._progressDialog.setAutoClose(True)
|
||||
self._progressDialog.setRange(0, 100)
|
||||
self._progressDialog.setLabelText("Merging detections (will take a while, be patient):")
|
||||
self._progressDialog.setCancelButtonText("Cancel")
|
||||
self._progressDialog.setCancelButtonText("Cancel")
|
||||
self._progressDialog.setWindowModality(Qt.WindowModality.WindowModal)
|
||||
self._progressDialog.canceled.connect(self.on_mergeCancelled)
|
||||
self._progressDialog.show()
|
||||
@ -284,19 +283,19 @@ class MergeDetections(QWidget):
|
||||
self._merger.signals.finished.connect(self.on_mergeDone)
|
||||
self.threadpool.start(self._merger)
|
||||
|
||||
@pyqtSlot()
|
||||
@Slot()
|
||||
def on_mergeCancelled(self):
|
||||
logging.info("Cancel Button pressed! Requesting stop of merger")
|
||||
self._merger.stop_request()
|
||||
self._saveBtn.setEnabled(False)
|
||||
|
||||
@pyqtSlot(float)
|
||||
@Slot(float)
|
||||
def on_mergeProgress(self, value):
|
||||
logging.debug(f"mergeProgress: {value * 100}%")
|
||||
if self._progressDialog is not None:
|
||||
self._progressDialog.setValue(int(value * 100))
|
||||
|
||||
@pyqtSlot(bool)
|
||||
@Slot(bool)
|
||||
def on_mergeDone(self, state):
|
||||
logging.debug("Merging stopped with status %s", state)
|
||||
if state:
|
||||
@ -310,7 +309,6 @@ class MergeDetections(QWidget):
|
||||
# preview_enabled = self.left_videocombo.currentIndex() > 0 and self.right_videocombo.currentIndex() > 0
|
||||
# self._mergePreviewBtn.setEnabled(preview_enabled)
|
||||
|
||||
|
||||
def on_save(self):
|
||||
logging.debug("Save merge results")
|
||||
if self._merger is not None:
|
||||
@ -325,10 +323,10 @@ class MergeDetections(QWidget):
|
||||
else:
|
||||
logging.debug("Saving failed! Merger is None!")
|
||||
|
||||
|
||||
def on_back(self):
|
||||
logging.debug("Back button pressed!")
|
||||
self._merger = None
|
||||
self._left_data = None
|
||||
self._right_data = None
|
||||
self.back.emit()
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
from PyQt6.QtCore import QSize, Qt
|
||||
from PyQt6.QtWidgets import QMainWindow, QWidget, QToolBar, QMenu, QMenuBar, QSizePolicy, QFileDialog
|
||||
from PyQt6.QtGui import QKeySequence, QAction, QIcon
|
||||
from PySide6.QtCore import QSize, Qt
|
||||
from PySide6.QtWidgets import QMainWindow, QWidget, QToolBar, QMenu, QMenuBar, QSizePolicy, QFileDialog
|
||||
from PySide6.QtGui import QKeySequence, QAction, QIcon
|
||||
|
||||
from fixtracks.centralwidget import CentralWidget
|
||||
|
||||
|
@ -1,13 +1,13 @@
|
||||
import logging
|
||||
import pathlib
|
||||
|
||||
from PyQt6.QtWidgets import QWidget, QPushButton, QFileDialog, QSizePolicy, QGridLayout
|
||||
from PyQt6.QtCore import pyqtSignal, Qt, QSize
|
||||
from PyQt6.QtGui import QIcon, QAction, QPixmap
|
||||
from PySide6.QtWidgets import QWidget, QPushButton, QFileDialog, QSizePolicy, QGridLayout
|
||||
from PySide6.QtCore import Signal, Qt, QSize
|
||||
from PySide6.QtGui import QIcon, QAction, QPixmap
|
||||
|
||||
|
||||
class TasksWidget(QWidget):
|
||||
clicked = pyqtSignal((str,))
|
||||
clicked = Signal((str,))
|
||||
|
||||
def __init__(self, parent = None):
|
||||
super().__init__(parent)
|
||||
|
@ -1,8 +1,8 @@
|
||||
import logging
|
||||
|
||||
from PyQt6.QtWidgets import QWidget, QGridLayout, QVBoxLayout, QLabel, QPushButton, QFileDialog, QHBoxLayout, QComboBox, QSizePolicy
|
||||
from PyQt6.QtCore import QThreadPool
|
||||
from PyQt6.QtGui import QImage, QPixmap
|
||||
from PySide6.QtWidgets import QWidget, QGridLayout, QVBoxLayout, QLabel, QPushButton, QFileDialog, QHBoxLayout, QComboBox, QSizePolicy
|
||||
from PySide6.QtCore import QThreadPool
|
||||
from PySide6.QtGui import QImage, QPixmap
|
||||
|
||||
from fixtracks.util import ImageReader
|
||||
|
||||
|
@ -4,21 +4,21 @@ import cv2 as cv
|
||||
import time
|
||||
import pickle
|
||||
import numpy as np
|
||||
from PyQt6.QtCore import QRunnable, pyqtSlot, pyqtSignal, QObject
|
||||
from PySide6.QtCore import QRunnable, Signal, QObject, Slot
|
||||
|
||||
from IPython import embed
|
||||
|
||||
class ProducerSignals(QObject):
|
||||
finished = pyqtSignal(bool)
|
||||
error = pyqtSignal(str)
|
||||
finished = Signal(bool)
|
||||
error = Signal(str)
|
||||
# start = pyqtSignal(float)
|
||||
# running = pyqtSignal()
|
||||
progress = pyqtSignal(float)
|
||||
progress2 = pyqtSignal((str, float, float))
|
||||
progress = Signal(float)
|
||||
progress2 = Signal((str, float, float))
|
||||
|
||||
|
||||
class ImageReader(QRunnable):
|
||||
finished = pyqtSignal(bool)
|
||||
finished = Signal(bool)
|
||||
|
||||
def __init__(self, filename, frame=1000) -> None:
|
||||
super().__init__()
|
||||
@ -27,7 +27,7 @@ class ImageReader(QRunnable):
|
||||
self._signals = ProducerSignals()
|
||||
self._frame = None
|
||||
|
||||
@pyqtSlot()
|
||||
@Slot()
|
||||
def run(self):
|
||||
'''
|
||||
Your code goes in this function
|
||||
@ -62,7 +62,7 @@ class ImageReader(QRunnable):
|
||||
|
||||
|
||||
class DataFrameReader(QRunnable):
|
||||
finished = pyqtSignal(bool)
|
||||
finished = Signal(bool)
|
||||
|
||||
def __init__(self, filename) -> None:
|
||||
super().__init__()
|
||||
@ -70,7 +70,7 @@ class DataFrameReader(QRunnable):
|
||||
self._signals = ProducerSignals()
|
||||
self._dataframe = None
|
||||
|
||||
@pyqtSlot()
|
||||
@Slot()
|
||||
def run(self):
|
||||
'''
|
||||
Your code goes in this function
|
||||
@ -244,11 +244,11 @@ class Merger(QRunnable):
|
||||
with open(filename, 'wb') as f:
|
||||
pickle.dump(self._merged, f)
|
||||
|
||||
@pyqtSlot()
|
||||
@Slot()
|
||||
def stop_request(self):
|
||||
self._stopRequest = True
|
||||
|
||||
@pyqtSlot()
|
||||
@Slot()
|
||||
def run(self):
|
||||
logging.info("Cutting left detections to limit %i", self._left_cut)
|
||||
self.signals.progress.emit(0.0)
|
||||
|
6
main.py
6
main.py
@ -5,9 +5,9 @@ pyside6-rcc resources.qrc -o resources.py
|
||||
import sys
|
||||
import platform
|
||||
import logging
|
||||
from PyQt6.QtWidgets import QApplication
|
||||
from PyQt6.QtCore import QSettings
|
||||
from PyQt6.QtGui import QIcon
|
||||
from PySide6.QtWidgets import QApplication
|
||||
from PySide6.QtCore import QSettings
|
||||
from PySide6.QtGui import QIcon
|
||||
|
||||
from fixtracks import fixtracks, info
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user