Finished settings
This commit is contained in:
		
							parent
							
								
									ff20488ceb
								
							
						
					
					
						commit
						5a546b5e9c
					
				| @ -3,6 +3,7 @@ from PyQt5 import QtWidgets | ||||
| from PyQt5.QtCore import QThread | ||||
| from PyQt5.QtWidgets import QFileDialog, QWidget | ||||
| from utils.files.input import ScannedObject | ||||
| from utils.gui.pyqt.settings.Settings import Settings | ||||
| from utils.settings.SettingManager import SettingManager | ||||
| from utils.graph2D.visplot_render import cross_section, render2D | ||||
| from utils.graph3D.visplot_render import render3D | ||||
| @ -24,6 +25,7 @@ class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow): | ||||
|         self.input_file_choose_btn.clicked.connect(self.select_file) | ||||
|         self.output_folder_choose_btn.clicked.connect(self.select_folder) | ||||
|         self.show_graph_checkbox.stateChanged.connect(self.toggle_graphs) | ||||
|         self.actionPr_f_rennces.triggered.connect(self.show_settings) | ||||
|          | ||||
| 
 | ||||
|         self.graphType = [ | ||||
| @ -74,9 +76,10 @@ class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow): | ||||
|          | ||||
|         for slot_nb,slot in  enumerate(self.slots): | ||||
|             slot[1] = SettingManager.get_instance().get_last_graph(slot_nb) | ||||
|             print(slot[1]) | ||||
|             self.comboBoxes[slot_nb].setCurrentText(slot[1]) | ||||
|      | ||||
| 
 | ||||
|         self.settings_window = Settings() | ||||
| 
 | ||||
|         self.threads = [] | ||||
| 
 | ||||
| ############################################################################### | ||||
| @ -293,3 +296,9 @@ class MainWindow(QtWidgets.QMainWindow, Ui_MainWindow): | ||||
|         Set the status of the analyse | ||||
|         """ | ||||
|         self.status_text.setText(status) | ||||
| 
 | ||||
|     def show_settings(self): | ||||
|         """ | ||||
|         Show the settings window | ||||
|         """ | ||||
|         self.settings_window.show() | ||||
							
								
								
									
										40
									
								
								utils/gui/pyqt/settings/Settings.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										40
									
								
								utils/gui/pyqt/settings/Settings.py
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,40 @@ | ||||
| import os | ||||
| from PyQt5 import QtWidgets | ||||
| from PyQt5.QtWidgets import QWidget | ||||
| from utils.files.input import ScannedObject | ||||
| from utils.gui.pyqt.settings.UI_Settings import Ui_Settings | ||||
| from utils.settings.SettingManager import SettingManager | ||||
| 
 | ||||
| class Settings(QtWidgets.QMainWindow,Ui_Settings): | ||||
| 
 | ||||
|     def __init__(self, parent=None): | ||||
|         super().__init__(parent) | ||||
|         # Retrieve the UI | ||||
|         self.setupUi(self) | ||||
|         # Setup buttons listeners | ||||
|         settings = SettingManager.get_instance() | ||||
|         self.discretisation_method.addItems(settings.get_setting('discretisation_methods')) | ||||
|         self.discretisation_method.setCurrentText(settings.get_setting('discretisation_method')) | ||||
|         self.raw_data_suffix.setText(settings.get_setting('raw_data_suffix')) | ||||
|         self.discrete_data_suffix.setText(settings.get_setting('discrete_data_suffix')) | ||||
|         self.extention.setText(settings.get_setting('output_file_extension')) | ||||
|         self.separator.setText(settings.get_setting('output_file_separator')) | ||||
|         self.prettify.setChecked(settings.get_setting('pretiffy_output_file')) | ||||
| 
 | ||||
|         #Connect to onchanged actions | ||||
|         self.discretisation_method.currentTextChanged.connect(self.accept) | ||||
|         self.raw_data_suffix.textChanged.connect(self.accept) | ||||
|         self.discrete_data_suffix.textChanged.connect(self.accept) | ||||
|         self.extention.textChanged.connect(self.accept) | ||||
|         self.separator.textChanged.connect(self.accept) | ||||
|         self.prettify.stateChanged.connect(self.accept) | ||||
| 
 | ||||
| 
 | ||||
|     def accept(self): | ||||
|         settings = SettingManager.get_instance() | ||||
|         settings.set_setting('discretisation_method', self.discretisation_method.currentText()) | ||||
|         settings.set_setting('raw_data_suffix', self.raw_data_suffix.text()) | ||||
|         settings.set_setting('discrete_data_suffix', self.discrete_data_suffix.text()) | ||||
|         settings.set_setting('output_file_extension', self.extention.text()) | ||||
|         settings.set_setting('output_file_separator', self.separator.text()) | ||||
|         settings.set_setting('pretiffy_output_file', self.prettify.isChecked()) | ||||
							
								
								
									
										75
									
								
								utils/gui/pyqt/settings/UI_Settings.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										75
									
								
								utils/gui/pyqt/settings/UI_Settings.py
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,75 @@ | ||||
| # -*- coding: utf-8 -*- | ||||
| 
 | ||||
| # Form implementation generated from reading ui file 'settings.ui' | ||||
| # | ||||
| # Created by: PyQt5 UI code generator 5.15.9 | ||||
| # | ||||
| # WARNING: Any manual changes made to this file will be lost when pyuic5 is | ||||
| # run again.  Do not edit this file unless you know what you are doing. | ||||
| 
 | ||||
| 
 | ||||
| from PyQt5 import QtCore, QtGui, QtWidgets | ||||
| 
 | ||||
| 
 | ||||
| class Ui_Settings(object): | ||||
|     def setupUi(self, Settings): | ||||
|         Settings.setObjectName("Settings") | ||||
|         Settings.resize(712, 213) | ||||
|         self.centralwidget = QtWidgets.QWidget(Settings) | ||||
|         self.centralwidget.setObjectName("centralwidget") | ||||
|         self.gridLayout = QtWidgets.QGridLayout(self.centralwidget) | ||||
|         self.gridLayout.setObjectName("gridLayout") | ||||
|         self.gridLayout_2 = QtWidgets.QGridLayout() | ||||
|         self.gridLayout_2.setObjectName("gridLayout_2") | ||||
|         self.discretisation_method_label = QtWidgets.QLabel(self.centralwidget) | ||||
|         self.discretisation_method_label.setObjectName("discretisation_method_label") | ||||
|         self.gridLayout_2.addWidget(self.discretisation_method_label, 0, 0, 1, 1) | ||||
|         self.discretisation_method = QtWidgets.QComboBox(self.centralwidget) | ||||
|         self.discretisation_method.setObjectName("discretisation_method") | ||||
|         self.gridLayout_2.addWidget(self.discretisation_method, 0, 1, 1, 1) | ||||
|         self.raw_data_suffix_label = QtWidgets.QLabel(self.centralwidget) | ||||
|         self.raw_data_suffix_label.setObjectName("raw_data_suffix_label") | ||||
|         self.gridLayout_2.addWidget(self.raw_data_suffix_label, 1, 0, 1, 1) | ||||
|         self.raw_data_suffix = QtWidgets.QLineEdit(self.centralwidget) | ||||
|         self.raw_data_suffix.setObjectName("raw_data_suffix") | ||||
|         self.gridLayout_2.addWidget(self.raw_data_suffix, 1, 1, 1, 1) | ||||
|         self.discrete_data_suffix_label = QtWidgets.QLabel(self.centralwidget) | ||||
|         self.discrete_data_suffix_label.setObjectName("discrete_data_suffix_label") | ||||
|         self.gridLayout_2.addWidget(self.discrete_data_suffix_label, 2, 0, 1, 1) | ||||
|         self.discrete_data_suffix = QtWidgets.QLineEdit(self.centralwidget) | ||||
|         self.discrete_data_suffix.setObjectName("discrete_data_suffix") | ||||
|         self.gridLayout_2.addWidget(self.discrete_data_suffix, 2, 1, 1, 1) | ||||
|         self.extention_label = QtWidgets.QLabel(self.centralwidget) | ||||
|         self.extention_label.setObjectName("extention_label") | ||||
|         self.gridLayout_2.addWidget(self.extention_label, 3, 0, 1, 1) | ||||
|         self.extention = QtWidgets.QLineEdit(self.centralwidget) | ||||
|         self.extention.setObjectName("extention") | ||||
|         self.gridLayout_2.addWidget(self.extention, 3, 1, 1, 1) | ||||
|         self.separator_label = QtWidgets.QLabel(self.centralwidget) | ||||
|         self.separator_label.setObjectName("separator_label") | ||||
|         self.gridLayout_2.addWidget(self.separator_label, 4, 0, 1, 1) | ||||
|         self.separator = QtWidgets.QLineEdit(self.centralwidget) | ||||
|         self.separator.setObjectName("separator") | ||||
|         self.gridLayout_2.addWidget(self.separator, 4, 1, 1, 1) | ||||
|         self.prettify_label = QtWidgets.QLabel(self.centralwidget) | ||||
|         self.prettify_label.setObjectName("prettify_label") | ||||
|         self.gridLayout_2.addWidget(self.prettify_label, 5, 0, 1, 1) | ||||
|         self.prettify = QtWidgets.QCheckBox(self.centralwidget) | ||||
|         self.prettify.setText("") | ||||
|         self.prettify.setObjectName("prettify") | ||||
|         self.gridLayout_2.addWidget(self.prettify, 5, 1, 1, 1) | ||||
|         self.gridLayout.addLayout(self.gridLayout_2, 0, 0, 1, 1) | ||||
|         Settings.setCentralWidget(self.centralwidget) | ||||
| 
 | ||||
|         self.retranslateUi(Settings) | ||||
|         QtCore.QMetaObject.connectSlotsByName(Settings) | ||||
| 
 | ||||
|     def retranslateUi(self, Settings): | ||||
|         _translate = QtCore.QCoreApplication.translate | ||||
|         Settings.setWindowTitle(_translate("Settings", "Préférences")) | ||||
|         self.discretisation_method_label.setText(_translate("Settings", "Methode de discretisation")) | ||||
|         self.raw_data_suffix_label.setText(_translate("Settings", "Suffixe des fichiers de données brutes")) | ||||
|         self.discrete_data_suffix_label.setText(_translate("Settings", "Suffixe des fichiers de données discretisées")) | ||||
|         self.extention_label.setText(_translate("Settings", "Extensions des fichiers de sorties")) | ||||
|         self.separator_label.setText(_translate("Settings", "Separateur de colone")) | ||||
|         self.prettify_label.setText(_translate("Settings", "Aligner les colones")) | ||||
							
								
								
									
										91
									
								
								utils/gui/pyqt/settings/settings.ui
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										91
									
								
								utils/gui/pyqt/settings/settings.ui
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,91 @@ | ||||
| <?xml version="1.0" encoding="UTF-8"?> | ||||
| <ui version="4.0"> | ||||
|  <class>Settings</class> | ||||
|  <widget class="QMainWindow" name="Settings"> | ||||
|   <property name="geometry"> | ||||
|    <rect> | ||||
|     <x>0</x> | ||||
|     <y>0</y> | ||||
|     <width>712</width> | ||||
|     <height>213</height> | ||||
|    </rect> | ||||
|   </property> | ||||
|   <property name="windowTitle"> | ||||
|    <string>Préférences</string> | ||||
|   </property> | ||||
|   <widget class="QWidget" name="centralwidget"> | ||||
|    <layout class="QGridLayout" name="gridLayout"> | ||||
|     <item row="0" column="0"> | ||||
|      <layout class="QGridLayout" name="gridLayout_2"> | ||||
|       <item row="0" column="0"> | ||||
|        <widget class="QLabel" name="discretisation_method_label"> | ||||
|         <property name="text"> | ||||
|          <string>Methode de discretisation</string> | ||||
|         </property> | ||||
|        </widget> | ||||
|       </item> | ||||
|       <item row="0" column="1"> | ||||
|        <widget class="QComboBox" name="discretisation_method"/> | ||||
|       </item> | ||||
|       <item row="1" column="0"> | ||||
|        <widget class="QLabel" name="raw_data_suffix_label"> | ||||
|         <property name="text"> | ||||
|          <string>Suffixe des fichiers de données brutes</string> | ||||
|         </property> | ||||
|        </widget> | ||||
|       </item> | ||||
|       <item row="1" column="1"> | ||||
|        <widget class="QLineEdit" name="raw_data_suffix"/> | ||||
|       </item> | ||||
|       <item row="2" column="0"> | ||||
|        <widget class="QLabel" name="discrete_data_suffix_label"> | ||||
|         <property name="text"> | ||||
|          <string>Suffixe des fichiers de données discretisées</string> | ||||
|         </property> | ||||
|        </widget> | ||||
|       </item> | ||||
|       <item row="2" column="1"> | ||||
|        <widget class="QLineEdit" name="discrete_data_suffix"/> | ||||
|       </item> | ||||
|       <item row="3" column="0"> | ||||
|        <widget class="QLabel" name="extention_label"> | ||||
|         <property name="text"> | ||||
|          <string>Extensions des fichiers de sorties</string> | ||||
|         </property> | ||||
|        </widget> | ||||
|       </item> | ||||
|       <item row="3" column="1"> | ||||
|        <widget class="QLineEdit" name="extention"/> | ||||
|       </item> | ||||
|       <item row="4" column="0"> | ||||
|        <widget class="QLabel" name="separator_label"> | ||||
|         <property name="text"> | ||||
|          <string>Separateur de colone</string> | ||||
|         </property> | ||||
|        </widget> | ||||
|       </item> | ||||
|       <item row="4" column="1"> | ||||
|        <widget class="QLineEdit" name="separator"/> | ||||
|       </item> | ||||
|       <item row="5" column="0"> | ||||
|        <widget class="QLabel" name="prettify_label"> | ||||
|         <property name="text"> | ||||
|          <string>Aligner les colones</string> | ||||
|         </property> | ||||
|        </widget> | ||||
|       </item> | ||||
|       <item row="5" column="1"> | ||||
|        <widget class="QCheckBox" name="prettify"> | ||||
|         <property name="text"> | ||||
|          <string/> | ||||
|         </property> | ||||
|        </widget> | ||||
|       </item> | ||||
|      </layout> | ||||
|     </item> | ||||
|    </layout> | ||||
|   </widget> | ||||
|  </widget> | ||||
|  <resources/> | ||||
|  <connections/> | ||||
| </ui> | ||||
| @ -34,6 +34,7 @@ class SettingManager: | ||||
|         self.settings['repo'] = 'https://forgemia.inra.fr/scanner3d/analysemorphologique' | ||||
|         self.settings['lastGraph'] = ["Aucun" for i in range(11)] | ||||
|         self.settings['discretisation_method'] = 'Z0-Zi >= DeltaZ' # 'Z0-Zi < DeltaZ' | ||||
|         self.settings['discretisation_methods'] = ['Z0-Zi >= DeltaZ', 'Z0-Zi < DeltaZ'] | ||||
|         self.settings['raw_data_suffix'] = '_delta_{delta_z}_analyse_brute' | ||||
|         self.settings['discrete_data_suffix'] = '_delta_{delta_z}_analyse_rayon' | ||||
|         self.settings['output_file_extension'] = '.txt' | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user