Compare commits
No commits in common. "056d9fedb8aef7bb650149f8a5ed78ef77952506" and "72b002dea3723233a7c23a804a45436c03b7eefa" have entirely different histories.
056d9fedb8
...
72b002dea3
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -7,10 +7,6 @@ from src.utils.base.base import BaseController
|
||||
class Controller(BaseController):
|
||||
|
||||
signal_widgets = pyqtSignal(list)
|
||||
signal_settings = pyqtSignal(list)
|
||||
|
||||
def send_widgets(self, widgets: list[QWidget]) -> None:
|
||||
self.signal_widgets.emit(widgets)
|
||||
|
||||
def push_settings(self, settings: list[dict]) -> None:
|
||||
self.signal_settings.emit(settings)
|
||||
|
||||
@ -20,9 +20,9 @@ class Mediator(BaseMediator):
|
||||
if issubclass(source.__class__, BasePlotWidget):
|
||||
self._controller.send_widgets(data)
|
||||
|
||||
def push_settings(self, settings: list[dict]):
|
||||
self._monitor.update_settings(settings)
|
||||
self._plot.update_settings(settings)
|
||||
def push_settings(self, data: list[dict]):
|
||||
self._monitor.update_settings(data)
|
||||
self._plot.update_settings(data)
|
||||
self._monitor.force_all_dir()
|
||||
|
||||
|
||||
|
||||
Binary file not shown.
@ -1,16 +1,13 @@
|
||||
from datetime import datetime as dt
|
||||
from typing import Optional
|
||||
|
||||
from PyQt5 import QtWidgets
|
||||
from PyQt5.QtCore import Qt
|
||||
from src.utils.base.base import BaseMainWindow, BaseController
|
||||
from src.utils.base.base import BaseMainWindow
|
||||
from src.gui.settings_window import settingsWindow
|
||||
|
||||
class MainWindow(BaseMainWindow):
|
||||
def __init__(self,
|
||||
controller: Optional[BaseController] = None):
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
self._controller = controller
|
||||
self.initUI()
|
||||
self.set_style(self)
|
||||
self.settings_button.clicked.connect(self._show_settings)
|
||||
@ -50,7 +47,7 @@ class MainWindow(BaseMainWindow):
|
||||
self.tabWidget.clear()
|
||||
operator_params = self.operSettings.getParams()
|
||||
system_params = self.sysSettings.getParams()
|
||||
self._controller.push_settings([operator_params, system_params])
|
||||
self._mediator.push_settings(data=[operator_params, system_params])
|
||||
|
||||
|
||||
|
||||
|
||||
@ -9,6 +9,7 @@ from src.controller.mediator import Mediator
|
||||
from src.controller.converter import DataConverter
|
||||
from src.gui.plotter import PlotWidget
|
||||
from src.controller.controller import Controller
|
||||
from src.utils.json_tools import read_json
|
||||
|
||||
|
||||
def main():
|
||||
@ -17,14 +18,13 @@ def main():
|
||||
data_converter = DataConverter()
|
||||
plot_widget_builder = PlotWidget()
|
||||
controller = Controller()
|
||||
window = MainWindow(controller)
|
||||
mediator = Mediator(monitor, data_converter, plot_widget_builder, controller)
|
||||
window = MainWindow()
|
||||
mediator = Mediator(monitor, data_converter, plot_widget_builder, controller, window)
|
||||
window.push_settings()
|
||||
window.show()
|
||||
|
||||
controller.signal_widgets.connect(window.show_plot_tabs)
|
||||
controller.signal_settings.connect(mediator.push_settings)
|
||||
|
||||
window.push_settings()
|
||||
|
||||
sys.exit(app.exec_())
|
||||
|
||||
|
||||
Binary file not shown.
@ -15,7 +15,8 @@ class BaseMediator:
|
||||
monitor: BaseDirectoryMonitor,
|
||||
converter: BaseDataConverter,
|
||||
plot: BasePlotWidget,
|
||||
controller: BaseController):
|
||||
controller: BaseController,
|
||||
window: BaseMainWindow):
|
||||
self._monitor = monitor
|
||||
self._monitor.mediator = self
|
||||
self._converter = converter
|
||||
@ -23,7 +24,8 @@ class BaseMediator:
|
||||
self._plot = plot
|
||||
self._plot.mediator = self
|
||||
self._controller = controller
|
||||
self._controller.mediator = self
|
||||
self._window = window
|
||||
self._window.mediator = self
|
||||
|
||||
def notify(self,
|
||||
source: Union[BaseDirectoryMonitor, BaseDataConverter, BasePlotWidget, BaseMainWindow],
|
||||
@ -234,8 +236,6 @@ class BaseController(QObject):
|
||||
def send_widgets(self, widgets: list[QWidget]) -> None:
|
||||
...
|
||||
|
||||
def push_settings(self, settings: list[dict]) -> None:
|
||||
...
|
||||
|
||||
|
||||
# FIXME: WeldingDF показывает только 1 секунду
|
||||
@ -276,18 +276,17 @@ class BaseIdealDataBuilder(OptAlgorithm):
|
||||
|
||||
class BaseMainWindow(QWidget):
|
||||
def __init__(self,
|
||||
controller: Optional[BaseController] = None):
|
||||
mediator: Optional[BaseMediator] = None):
|
||||
super().__init__()
|
||||
self._controller = controller
|
||||
...
|
||||
self._mediator = mediator
|
||||
|
||||
@property
|
||||
def controller(self) -> BaseController:
|
||||
return self._controller
|
||||
def mediator(self) -> BaseMediator:
|
||||
return self._mediator
|
||||
|
||||
@controller.setter
|
||||
def controller(self, controller: BaseController) -> None:
|
||||
self._controller = controller
|
||||
@mediator.setter
|
||||
def mediator(self, mediator: BaseMediator) -> None:
|
||||
self._mediator = mediator
|
||||
|
||||
def set_style(self, object: Union[QTabWidget, QWidget]) -> None:
|
||||
object.setStyleSheet("""
|
||||
|
||||
Loading…
Reference in New Issue
Block a user