fix: изменены взаимосвязи
This commit is contained in:
parent
67e4a9ea70
commit
056d9fedb8
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -7,9 +7,10 @@ from src.utils.base.base import BaseController
|
|||||||
class Controller(BaseController):
|
class Controller(BaseController):
|
||||||
|
|
||||||
signal_widgets = pyqtSignal(list)
|
signal_widgets = pyqtSignal(list)
|
||||||
|
signal_settings = pyqtSignal(list)
|
||||||
|
|
||||||
def send_widgets(self, widgets: list[QWidget]) -> None:
|
def send_widgets(self, widgets: list[QWidget]) -> None:
|
||||||
self.signal_widgets.emit(widgets)
|
self.signal_widgets.emit(widgets)
|
||||||
|
|
||||||
def push_settings(self, settings: list[dict]) -> None:
|
def push_settings(self, settings: list[dict]) -> None:
|
||||||
self._mediator.push_settings(settings)
|
self.signal_settings.emit(settings)
|
||||||
|
|||||||
Binary file not shown.
@ -1,13 +1,16 @@
|
|||||||
from datetime import datetime as dt
|
from datetime import datetime as dt
|
||||||
|
from typing import Optional
|
||||||
|
|
||||||
from PyQt5 import QtWidgets
|
from PyQt5 import QtWidgets
|
||||||
from PyQt5.QtCore import Qt
|
from PyQt5.QtCore import Qt
|
||||||
from src.utils.base.base import BaseMainWindow
|
from src.utils.base.base import BaseMainWindow, BaseController
|
||||||
from src.gui.settings_window import settingsWindow
|
from src.gui.settings_window import settingsWindow
|
||||||
|
|
||||||
class MainWindow(BaseMainWindow):
|
class MainWindow(BaseMainWindow):
|
||||||
def __init__(self):
|
def __init__(self,
|
||||||
|
controller: Optional[BaseController] = None):
|
||||||
super().__init__()
|
super().__init__()
|
||||||
|
self._controller = controller
|
||||||
self.initUI()
|
self.initUI()
|
||||||
self.set_style(self)
|
self.set_style(self)
|
||||||
self.settings_button.clicked.connect(self._show_settings)
|
self.settings_button.clicked.connect(self._show_settings)
|
||||||
|
|||||||
@ -9,7 +9,6 @@ from src.controller.mediator import Mediator
|
|||||||
from src.controller.converter import DataConverter
|
from src.controller.converter import DataConverter
|
||||||
from src.gui.plotter import PlotWidget
|
from src.gui.plotter import PlotWidget
|
||||||
from src.controller.controller import Controller
|
from src.controller.controller import Controller
|
||||||
from src.utils.json_tools import read_json
|
|
||||||
|
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
@ -18,14 +17,14 @@ def main():
|
|||||||
data_converter = DataConverter()
|
data_converter = DataConverter()
|
||||||
plot_widget_builder = PlotWidget()
|
plot_widget_builder = PlotWidget()
|
||||||
controller = Controller()
|
controller = Controller()
|
||||||
window = MainWindow()
|
window = MainWindow(controller)
|
||||||
mediator = Mediator(monitor, data_converter, plot_widget_builder, controller, window)
|
mediator = Mediator(monitor, data_converter, plot_widget_builder, controller)
|
||||||
window.push_settings()
|
|
||||||
window.show()
|
window.show()
|
||||||
|
|
||||||
controller.signal_widgets.connect(window.show_plot_tabs)
|
controller.signal_widgets.connect(window.show_plot_tabs)
|
||||||
controller.signal_settings.connect(mediator.push_settings)
|
controller.signal_settings.connect(mediator.push_settings)
|
||||||
|
|
||||||
|
window.push_settings()
|
||||||
|
|
||||||
sys.exit(app.exec_())
|
sys.exit(app.exec_())
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
@ -230,21 +230,6 @@ class BasePlotWidget:
|
|||||||
...
|
...
|
||||||
|
|
||||||
class BaseController(QObject):
|
class BaseController(QObject):
|
||||||
def __init__(self,
|
|
||||||
window: Optional[BaseMainWindow] = None,
|
|
||||||
mediator: Optional[BaseMediator] = None):
|
|
||||||
super().__init__()
|
|
||||||
self._mediator = mediator
|
|
||||||
self._window = window
|
|
||||||
self._window.controller = self
|
|
||||||
|
|
||||||
@property
|
|
||||||
def mediator(self) -> BaseMediator:
|
|
||||||
return self._mediator
|
|
||||||
|
|
||||||
@mediator.setter
|
|
||||||
def mediator(self, mediator: BaseMediator) -> None:
|
|
||||||
self._mediator = mediator
|
|
||||||
|
|
||||||
def send_widgets(self, widgets: list[QWidget]) -> None:
|
def send_widgets(self, widgets: list[QWidget]) -> None:
|
||||||
...
|
...
|
||||||
@ -294,6 +279,7 @@ class BaseMainWindow(QWidget):
|
|||||||
controller: Optional[BaseController] = None):
|
controller: Optional[BaseController] = None):
|
||||||
super().__init__()
|
super().__init__()
|
||||||
self._controller = controller
|
self._controller = controller
|
||||||
|
...
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def controller(self) -> BaseController:
|
def controller(self) -> BaseController:
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user