Esempio n. 1
0
    def __init__(self, application: QApplication, main_window: MainWindow,
                 gol_model: GOLModel):
        self._application = application
        application.aboutToQuit.connect(self._stop_worker_on_app_closing)

        self._main_window = main_window
        main_window.connect_to_button_clear(self.clear_grid)
        main_window.connect_to_button_load(self.load_custom_pattern)
        main_window.connect_to_button_play(self.start_stop)
        main_window.connect_to_button_save(self.save_pattern)
        main_window.connect_to_button_step(self.single_step)
        main_window.connect_to_combo_patterns(self.select_example_pattern)
        main_window.connect_to_radio_age(self.toggle_show_cell_age)
        main_window.connect_to_slider_speed(self.set_speed)
        main_window.grid_widget.connect_to_cell_clicked(self.toggle_cell)

        self._gol_model = gol_model
        self._worker = None

        # Variables for the grid update
        self._conv_filter = np.ones((3, 3))
        self._conv_filter[1, 1] = 0