studia/jezyki-skryptowe/image-editor/ImageParameterDialog.py

33 lines
998 B
Python

import abc
from ImageProcessingWorker import ImageProcessingWorker
from PyQt6.QtWidgets import QApplication, QLabel, QVBoxLayout, QHBoxLayout, QPushButton, QWidget, QFileDialog, QSlider, QLineEdit, QDialog
from PyQt6.QtGui import QPixmap, QImage, QColor, QPainter, QPen
from PyQt6.QtCore import Qt, QPoint, QThread
class ImageParameterDialog(QDialog):
def __init__(self, hsv_image):
self._hsv_image = hsv_image
self.setup_worker()
super().__init__()
def setup_worker(self):
self.worker = ImageProcessingWorker(self._hsv_image, self.process_image)
self.update_values_signal = self.worker.update_values
self.update_values_signal.connect(self.worker.process_image)
self.worker.start()
# @abc.abstractmethod
def process_image(self,hsv_image, values):
pass
def result_ready(self):
return self.worker.result_ready
def send_to_process(self, values):
self.update_values_signal.emit(values)