WeldingSpotPerformance/src/main.py

43 lines
1.6 KiB
Python
Raw Normal View History

import sys
import pyqtgraph as pg
from PyQt5 import QtWidgets
2024-12-05 13:18:53 +03:00
from gui.mainGui import MainWindow
from controller.monitor import DirectoryMonitor
from controller.mediator import Mediator
from controller.converter import DataConverter
from gui.plotter import PlotWidget
from controller.controller import Controller
from controller.passportFormer import PassportFormer
2025-01-15 18:07:16 +03:00
# TODO: Актуализировать requirements.txt!!! Делать это регулярно после добавления новых библиотек!
# TODO: Именование модулей: lowercase / snake_case.
def main():
pg.setConfigOptions(useOpenGL=False, antialias=False)
app = QtWidgets.QApplication(sys.argv)
monitor = DirectoryMonitor()
data_converter = DataConverter()
plot_widget_builder = PlotWidget()
controller = Controller()
passport_former = PassportFormer()
window = MainWindow(controller)
mediator = Mediator(monitor, data_converter, passport_former, plot_widget_builder, controller)
window.show()
controller.signal_widgets.connect(window.show_plot_tabs)
controller.signal_statusBar.connect(window.update_progressBar)
controller.signal_statusText.connect(window.update_stateLabel)
controller.signal_settings.connect(mediator.update_settings)
controller.signal_open_file.connect(monitor.custom_csv_extract_only)
controller.signal_raport_mode.connect(monitor.start_raport)
controller.signal_seeking_mode.connect(monitor.start_seeking)
controller.signal_update_plots.connect(monitor.update_plots)
sys.exit(app.exec_())
if __name__ == '__main__':
main()