WeldingSpotPerformance/src/controller/controller.py

43 lines
1.2 KiB
Python
Raw Normal View History

from PyQt5.QtWidgets import QWidget
from PyQt5.QtCore import pyqtSignal
from typing import Union
2024-12-05 13:18:53 +03:00
from utils.base.base import BaseController
class Controller(BaseController):
signal_widgets = pyqtSignal(list)
signal_settings = pyqtSignal(list)
signal_open_file = pyqtSignal(str)
signal_statusBar = pyqtSignal(int)
signal_statusText = pyqtSignal(str)
signal_raport_mode = pyqtSignal()
signal_seeking_mode = pyqtSignal()
signal_update_plots = pyqtSignal()
def send_widgets(self, widgets: list[QWidget]) -> None:
self.signal_widgets.emit(widgets)
def update_settings(self, settings: list[dict]) -> None:
self.signal_settings.emit(settings)
def raport_mode(self) -> None:
self.signal_raport_mode.emit()
def seeking_mode(self) -> None:
self.signal_seeking_mode.emit()
def open_file(self, filepath: str) -> None:
self.signal_open_file.emit(filepath)
def update_plots(self) -> None:
self.signal_update_plots.emit()
def update_status(self, msg: Union[str, float, int]) -> None:
if type(msg) == float or type(msg) == int:
self.signal_statusBar.emit(int(msg))
else:
self.signal_statusText.emit(msg)