refactor(MainWindow.py): rename 'completed' variable to 'completed_tasks' and 'comboBoxes' to 'combo_boxes' for better semantics
feat(MainWindow.py): add 'has_changed' and 'old_discretisation_value' variables to track changes in the discretisation value selector and avoid unnecessary computations fix(MainWindow.py): set status message when rendering graphs to inform the user of the process
This commit is contained in:
		
							parent
							
								
									18eaf6a016
								
							
						
					
					
						commit
						2ef063f4b3
					
				| @ -50,10 +50,10 @@ class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow): | ||||
|         self.raw_data= None | ||||
|         self.discrete_data = None | ||||
| 
 | ||||
|         self.completed = 0 | ||||
|         self.total = 2 | ||||
|         self.completed_tasks = 0 | ||||
|         self.total_tasks = 2 | ||||
| 
 | ||||
|         self.comboBoxes = [ | ||||
|         self.combo_boxes = [ | ||||
|             self.slot0ComboBox, | ||||
|             self.slot1ComboBox, | ||||
|             self.slot2ComboBox, | ||||
| @ -67,8 +67,8 @@ class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow): | ||||
|             self.slot10ComboBox | ||||
|         ] | ||||
| 
 | ||||
|         for cb in self.comboBoxes: | ||||
|             cb.addItems(self.graphType) | ||||
|         for combo_box in self.combo_boxes: | ||||
|             combo_box.addItems(self.graphType) | ||||
| 
 | ||||
|         self.slots = [ | ||||
|                     [self.slot0,"Aucun"], | ||||
| @ -86,11 +86,12 @@ class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow): | ||||
|          | ||||
|         for slot_nb,slot in  enumerate(self.slots): | ||||
|             slot[1] = SettingManager.get_instance().get_last_graph(slot_nb) | ||||
|             self.comboBoxes[slot_nb].setCurrentText(slot[1]) | ||||
|             self.combo_boxes[slot_nb].setCurrentText(slot[1]) | ||||
| 
 | ||||
|         self.settings_window = Settings() | ||||
| 
 | ||||
|         self.threads = [] | ||||
|         self.has_changed = True | ||||
|         self.old_discretisation_value = None | ||||
| 
 | ||||
| ############################################################################### | ||||
| #                                                                             # | ||||
| @ -108,12 +109,14 @@ class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow): | ||||
|         self.output_file_prefix.setText(os.path.splitext(os.path.basename(file))[0]) | ||||
|         if self.output_folder_path.toPlainText() is None or self.output_folder_path.toPlainText() == "": | ||||
|             self.output_folder_path.setPlainText(os.path.dirname(file)) | ||||
|         self.has_changed = True | ||||
| 
 | ||||
|     def select_folder(self): | ||||
|         """ | ||||
|         Open a file dialog to select the output folder | ||||
|         """ | ||||
|         self.output_folder_path.setPlainText(QFileDialog.getExistingDirectory()) | ||||
|         self.has_changed = True | ||||
| 
 | ||||
|     def check_input_file(self): | ||||
|         """ | ||||
| @ -152,11 +155,18 @@ class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow): | ||||
|          | ||||
|         settings = SettingManager.get_instance() | ||||
|         for count,_ in enumerate(self.slots): | ||||
|             self.slots[count][1] = self.comboBoxes[count].currentText() | ||||
|             self.slots[count][1] = self.combo_boxes[count].currentText() | ||||
|             settings.set_last_graph(count,self.slots[count][1]) | ||||
|              | ||||
|         self.clear_graphs() | ||||
|         self.completed = 0 | ||||
|         self.completed_tasks = 0 | ||||
|         if not self.has_changed and self.old_discretisation_value == self.discretisation_value_selector.value(): | ||||
|             self.completed_tasks = self.total_tasks -1 | ||||
|             self.finish_analyse() | ||||
|             return | ||||
|         self.has_changed = False | ||||
|         self.old_discretisation_value = self.discretisation_value_selector.value() | ||||
|          | ||||
|         # Create the thread to run the analyse | ||||
|         self.preprocess_thread = QThread() | ||||
|         self.preprocess_worker = PreProcessWorker("PreProcessWorker",self.input_file_path.toPlainText()) | ||||
| @ -290,8 +300,10 @@ class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow): | ||||
|         :param raw_data: The raw data | ||||
|         :param discrete_data: The discrete data | ||||
|         """ | ||||
|         # Clear the graphs | ||||
|         if not self.show_graph_checkbox.isChecked(): | ||||
|             return | ||||
|         self.set_status("Rendering graphs... this may take a moment") | ||||
|         for slot in self.slots: | ||||
|             current_slot = slot[0] | ||||
|             graph_type = slot[1] | ||||
| @ -317,6 +329,7 @@ class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow): | ||||
|                                                 "Z (en mm)", | ||||
|                                                 "Rayon moyen (en mm)\n", | ||||
|                                                 False).native) | ||||
|             self.set_status("Graphs rendered!") | ||||
| 
 | ||||
|     def clear_graphs(self): | ||||
|         """ | ||||
| @ -341,8 +354,8 @@ class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow): | ||||
|         """ | ||||
|         Finish the analyse | ||||
|         """ | ||||
|         self.completed += 1 | ||||
|         if self.completed == self.total: | ||||
|         self.completed_tasks += 1 | ||||
|         if self.completed_tasks == self.total_tasks: | ||||
|             self.status_text.setText("Done") | ||||
|             self.analyse_progress_bar.setValue(100) | ||||
|             self.renderGraphs(self.obj,self.raw_data,self.discrete_data) | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user