From ffcc3e6efff4075142d68de86751beae38ae4210 Mon Sep 17 00:00:00 2001 From: brahim Date: Thu, 24 Oct 2024 16:53:35 +0200 Subject: [PATCH] kt corrected values are read from a file in the settings. The file can include differents same ABS (that is to say with different serial number). --- Model/calibration_constant_kt.py | 25 +++---- View/acoustic_data_tab.py | 120 +++++++++++++++++-------------- View/mainwindow.py | 43 ++++++----- settings.py | 2 +- 4 files changed, 103 insertions(+), 87 deletions(-) diff --git a/Model/calibration_constant_kt.py b/Model/calibration_constant_kt.py index ab3d58a..0f02ade 100644 --- a/Model/calibration_constant_kt.py +++ b/Model/calibration_constant_kt.py @@ -38,9 +38,9 @@ class CalibrationConstantKt(QDialog): self.tab = QTabWidget() self.verticalLayout_Main.addWidget(self.tab) - data_ABS = pd.read_excel("../ABS_calibration_constant_kt.xlsx", header=0, sheet_name=None) + self.data_ABS = pd.read_excel("ABS_calibration_constant_kt.xlsx", header=0, sheet_name=None) - for t_index, t_value in enumerate(list(data_ABS.keys())): + for t_index, t_value in enumerate(list(self.data_ABS.keys())): print("t = ", t_index, t_value) exec("self.tab_" + str(t_index) + "= QWidget()") eval("self.tab.addTab(self.tab_" + str(t_index) + ", '" + str(t_value) + "')") @@ -61,24 +61,21 @@ class CalibrationConstantKt(QDialog): exec("self.label_kt_" + str(t_index) + " = QLabel('kt')") eval("self.gridLayout_tab_" + str(t_index) + ".addWidget(self.label_kt_" + str(t_index) + ", 0, 1, 1, 1, Qt.AlignCenter)") - print(data_ABS[t_value].shape[0]) - print(type(data_ABS[t_value])) - - for x in range(data_ABS[t_value].shape[0]): - exec("self.label_freq_" + str(x) + "_ABS_" + str(t_index) + " = QLabel('" + str(data_ABS[t_value].iloc[x][0]) + " MHz')") + for x in range(self.data_ABS[t_value].shape[0]): + exec("self.label_freq_" + str(x) + "_ABS_" + str(t_index) + " = QLabel('" + str(self.data_ABS[t_value].iloc[x][0]) + " MHz')") eval("self.gridLayout_tab_" + str(t_index) + ".addWidget(self.label_freq_" + str(x) + "_ABS_" + str(t_index) + ", " + str(x + 1) + ", 0, 1, 1,Qt.AlignCenter)") exec("self.lineEdit_" + str(x) + "_ABS_" + str(t_index) + " = QLineEdit()") - exec("self.lineEdit_" + str(x) + "_ABS_" + str(t_index) + ".setText('" + str(data_ABS[t_value].iloc[x][1]) + "')") + exec("self.lineEdit_" + str(x) + "_ABS_" + str(t_index) + ".setText('" + str(self.data_ABS[t_value].iloc[x][1]) + "')") exec("self.lineEdit_" + str(x) + "_ABS_" + str(t_index) + ".setMaximumWidth(" + str(100) + ")") eval("self.gridLayout_tab_" + str(t_index) + ".addWidget(self.lineEdit_" + str(x) + "_ABS_" + str(t_index) + ", " + str(x+1) + ", 1, 1, 1, Qt.AlignCenter)") -if __name__ == "__main__": - app = QApplication(sys.argv) - cal = CalibrationConstantKt() - cal.show() - # sys.exit(app.exec_()) - app.exec() +# if __name__ == "__main__": +# app = QApplication(sys.argv) +# cal = CalibrationConstantKt() +# cal.show() +# # sys.exit(app.exec_()) +# app.exec() diff --git a/View/acoustic_data_tab.py b/View/acoustic_data_tab.py index 4d22841..c15dd50 100644 --- a/View/acoustic_data_tab.py +++ b/View/acoustic_data_tab.py @@ -39,6 +39,7 @@ import Translation.constant_string as cs from Model.TableModel import TableModel from Model.acoustic_data_loader import AcousticDataLoader from Model.acoustic_data_loader_UBSediFlow import AcousticDataLoaderUBSediFlow +from Model.calibration_constant_kt import CalibrationConstantKt import settings as stg @@ -83,6 +84,8 @@ class AcousticDataTab(QWidget): self.icon_between = QPixmap(self.path_icon + "between.png") self.icon_refresh = QIcon(self.path_icon + "update.png") + self.calib_kt = CalibrationConstantKt() + ### --- General layout of widgets --- self.verticalLayoutMain = QVBoxLayout(tab_widget) @@ -144,7 +147,6 @@ class AcousticDataTab(QWidget): self.groupbox_info = QGroupBox() self.scrollbar_measurement_information = QScrollArea() - # self.scrollbar_measurement_information.setWindowTitle("Measurements information") self.verticalLayout_groupbox_download.addWidget(self.scrollbar_measurement_information, 5) # +++++++++++++++++++++++++++ @@ -216,22 +218,25 @@ class AcousticDataTab(QWidget): # | Group Box Measurements information | # ++++++++++++++++++++++++++++++++++++++ - self.gridLayout_groupbox_info = QGridLayout() - self.groupbox_info.setLayout(self.gridLayout_groupbox_info) - self.scrollbar_measurement_information.setVerticalScrollBarPolicy(Qt.ScrollBarAlwaysOn) - self.scrollbar_measurement_information.setHorizontalScrollBarPolicy(Qt.ScrollBarAlwaysOff) + self.scrollbar_measurement_information.setHorizontalScrollBarPolicy(Qt.ScrollBarAlwaysOn) self.scrollbar_measurement_information.setWidgetResizable(True) + self.gridLayout_groupbox_info = QGridLayout(self.scrollbar_measurement_information) + + self.groupbox_info.setLayout(self.gridLayout_groupbox_info) + self.scrollbar_measurement_information.setWidget(self.groupbox_info) self.label_ABS_name = QLabel() + self.combobox_ABS_name = QComboBox() + self.combobox_ABS_name.addItems(self.calib_kt.data_ABS.keys()) self.label_date_acoustic_file = QLabel() self.label_hour_acoustic_file = QLabel() self.label_distance_from_ABS_to_free_surface = QLabel() - self.label_distance_from_ABS_to_free_surface.setText("ABS distance from the free surface") + self.label_distance_from_ABS_to_free_surface.setText("Distance from ABS to free surface") self.lineEdit_distance_from_ABS_to_free_surface = QLineEdit() self.lineEdit_distance_from_ABS_to_free_surface.setText("0.00") @@ -1320,6 +1325,8 @@ class AcousticDataTab(QWidget): # self.fileListWidget.clicked.connect(self.rename_file_in_ListWidget) + self.combobox_ABS_name.currentIndexChanged.connect(self.fill_measurements_information_groupbox) + self.checkbox_kt.stateChanged.connect(self.activate_unactivate_spinbox_kt) # self.radiobutton_value.toggled.connect(self.onClicked_radiobutton_gps) @@ -1536,6 +1543,8 @@ class AcousticDataTab(QWidget): self.label_ABS_name.hide() + self.combobox_ABS_name.hide() + self.label_date_acoustic_file.hide() self.label_hour_acoustic_file.hide() @@ -1590,6 +1599,8 @@ class AcousticDataTab(QWidget): # --- Hide UBSediFlow information and remove widget from grid layout --- self.label_ABS_name.hide() + self.combobox_ABS_name.hide() + self.label_date_acoustic_file.hide() self.label_hour_acoustic_file.hide() @@ -1651,7 +1662,10 @@ class AcousticDataTab(QWidget): self.label_ABS_name.show() self.label_ABS_name.setText("Acoustic Backscatter System: AQUAscat") - self.gridLayout_groupbox_info.addWidget(self.label_ABS_name, 0, 0, 1, 2) + self.gridLayout_groupbox_info.addWidget(self.label_ABS_name, 0, 0, 1, 2, Qt.AlignCenter) + + self.combobox_ABS_name.show() + self.gridLayout_groupbox_info.addWidget(self.combobox_ABS_name, 0, 2, 1, 2, Qt.AlignCenter) self.label_date_acoustic_file.show() self.gridLayout_groupbox_info.addWidget(self.label_date_acoustic_file, 1, 0, 1, 1) @@ -1742,6 +1756,8 @@ class AcousticDataTab(QWidget): # --- Hide Aquascat information --- self.label_ABS_name.hide() + self.combobox_ABS_name.hide() + self.label_date_acoustic_file.hide() self.label_hour_acoustic_file.hide() @@ -1802,7 +1818,10 @@ class AcousticDataTab(QWidget): # --- Show UBSediFlow information --- self.label_ABS_name.show() self.label_ABS_name.setText("Acoustic Backscatter System: UBSediFlow") - self.gridLayout_groupbox_info.addWidget(self.label_ABS_name, 0, 0, 1, 2) + self.gridLayout_groupbox_info.addWidget(self.label_ABS_name, 0, 0, 1, 2, Qt.AlignCenter) + + self.combobox_ABS_name.show() + self.gridLayout_groupbox_info.addWidget(self.combobox_ABS_name, 0, 2, 1, 2, Qt.AlignCenter) self.label_date_acoustic_file.show() self.gridLayout_groupbox_info.addWidget(self.label_date_acoustic_file, 1, 0, 1, 1) @@ -2629,61 +2648,55 @@ class AcousticDataTab(QWidget): self.label_profiles_value.setText(str(stg.nb_profiles[self.fileListWidget.currentRow()] [self.combobox_frequency_information.currentIndex()])) - self.gridLayout_groupbox_info.addWidget(self.label_profiles_value, 7, 1, 1, 1) + self.gridLayout_groupbox_info.addWidget(self.label_profiles_value, 8, 1, 1, 1) self.label_profiles_per_sec_value.setText(str(stg.nb_profiles_per_sec[self.fileListWidget.currentRow()] [self.combobox_frequency_information.currentIndex()]) + " Hz") - self.gridLayout_groupbox_info.addWidget(self.label_profiles_per_sec_value, 8, 1, 1, 1) + self.gridLayout_groupbox_info.addWidget(self.label_profiles_per_sec_value, 9, 1, 1, 1) self.label_cells_value.setText(str(stg.nb_cells[self.fileListWidget.currentRow()] [self.combobox_frequency_information.currentIndex()])) - self.gridLayout_groupbox_info.addWidget(self.label_cells_value, 9, 1, 1, 1) + self.gridLayout_groupbox_info.addWidget(self.label_cells_value, 10, 1, 1, 1) self.label_cell_size_value.setText(str(100*round(stg.cell_size[self.fileListWidget.currentRow()] [self.combobox_frequency_information.currentIndex()], 3)) + " cm") - self.gridLayout_groupbox_info.addWidget(self.label_cell_size_value, 10, 1, 1, 1) + self.gridLayout_groupbox_info.addWidget(self.label_cell_size_value, 11, 1, 1, 1) self.label_pulse_length_value.setText(str(round(stg.pulse_length[self.fileListWidget.currentRow()] [self.combobox_frequency_information.currentIndex()], 6)) + " sec") - self.gridLayout_groupbox_info.addWidget(self.label_pulse_length_value, 11, 1, 1, 1) + self.gridLayout_groupbox_info.addWidget(self.label_pulse_length_value, 12, 1, 1, 1) self.label_pings_per_sec_value.setText(str(stg.nb_pings_per_sec[self.fileListWidget.currentRow()] [self.combobox_frequency_information.currentIndex()]) + " Hz") - self.gridLayout_groupbox_info.addWidget(self.label_pings_per_sec_value, 12, 1, 1, 1) + self.gridLayout_groupbox_info.addWidget(self.label_pings_per_sec_value, 13, 1, 1, 1) self.label_pings_per_profile_value.setText(str(stg.nb_pings_averaged_per_profile[self.fileListWidget.currentRow()] [self.combobox_frequency_information.currentIndex()])) - self.gridLayout_groupbox_info.addWidget(self.label_pings_per_profile_value, 13, 1, 1, 1) + self.gridLayout_groupbox_info.addWidget(self.label_pings_per_profile_value, 14, 1, 1, 1) - if self.combobox_ABS_system_choice.currentText() == "Aquascat 1000R": - # stg.kt_corrected = stg.kt_read - stg.kt_corrected = {"0.3 MHz" : 0.78905595, - "0.5 MHz" : 0.36257121, - "1.0 MHz" : 0.64446145, - "2.5 MHz" : 0.31522785, - "4.0 MHz" : 0.30339201, - "5.0 MHz" : 0.27143525} - elif self.combobox_ABS_system_choice.currentText() == "UB-SediFlow": - # stg.kt_corrected = stg.kt_read - stg.kt_corrected = [0.79352001, 0.36462244, 0.64810746, 0.27297088] - # if self.checkbox_kt.isChecked(): - # self.spinbox_kt.setValue( - # stg.kt_corrected[self.fileListWidget.currentRow()][self.combobox_frequency_information.currentIndex()]) - # else: + stg.kt_corrected.clear() + for f in range(stg.freq[self.fileListWidget.currentRow()].shape[0]): + stg.kt_corrected.append( + self.calib_kt.data_ABS[self.combobox_ABS_name.currentText()].iloc[ + np.where( + np.abs(np.array([stg.freq[self.fileListWidget.currentRow()][f] - l for l in + self.calib_kt.data_ABS[self.combobox_ABS_name.currentText()][ + self.calib_kt.data_ABS[ + self.combobox_ABS_name.currentText()].columns[0]].values])) + == + np.min(np.abs(np.array([stg.freq[self.fileListWidget.currentRow()][f] - l for l in + self.calib_kt.data_ABS[self.combobox_ABS_name.currentText()][ + self.calib_kt.data_ABS[ + self.combobox_ABS_name.currentText()].columns[ + 0]].values]) + )) + )[0][0] + ][1]) - print(stg.ABS_name) - print(stg.kt_corrected) - print(self.combobox_frequency_information.currentText()) - print(stg.kt_corrected[self.combobox_frequency_information.currentText()]) - # self.spinbox_kt.setValue( - # stg.kt_corrected[self.combobox_frequency_information.currentText()]) - # self.spinbox_kt.setSuffix(f" V.m^{1.5}") - # self.spinbox_kt.setEnabled(True) - # # self.checkbox_kt.stateChanged.connect(self.activate_unactivate_spinbox_kt) - # self.spinbox_kt.valueChanged.connect(self.kt_value) + print("stg.kt_corrected ", stg.kt_corrected) - self.lineEdit_kt.setText(str("%.4f" % stg.kt_corrected[self.combobox_frequency_information.currentText()])) + self.lineEdit_kt.setText(str("%.4f" % stg.kt_corrected[self.combobox_frequency_information.currentIndex()])) self.lineEdit_kt.setEnabled(True) self.lineEdit_kt.returnPressed.connect(self.kt_value) @@ -2806,42 +2819,42 @@ class AcousticDataTab(QWidget): self.gridLayout_groupbox_info.removeWidget(self.label_profiles_value) self.label_profiles_value.setText(str(stg.nb_profiles[self.fileListWidget.currentRow()] [self.combobox_frequency_information.currentIndex()])) - self.gridLayout_groupbox_info.addWidget(self.label_profiles_value, 7, 1, 1, 1) + self.gridLayout_groupbox_info.addWidget(self.label_profiles_value, 8, 1, 1, 1) self.label_profiles_per_sec_value.clear() self.label_profiles_per_sec_value.setText( str(stg.nb_profiles_per_sec[self.fileListWidget.currentRow()] [self.combobox_frequency_information.currentIndex()]) + " Hz") - self.gridLayout_groupbox_info.addWidget(self.label_profiles_per_sec_value, 8, 1, 1, 1) + self.gridLayout_groupbox_info.addWidget(self.label_profiles_per_sec_value, 9, 1, 1, 1) self.label_cells_value.clear() self.label_cells_value.setText(str(stg.nb_cells[self.fileListWidget.currentRow()] [self.combobox_frequency_information.currentIndex()])) - self.gridLayout_groupbox_info.addWidget(self.label_cells_value, 9, 1, 1, 1) + self.gridLayout_groupbox_info.addWidget(self.label_cells_value, 10, 1, 1, 1) self.label_cell_size_value.clear() self.gridLayout_groupbox_info.removeWidget(self.label_cell_size_value) self.label_cell_size_value.setText( str(100 * round(stg.cell_size[self.fileListWidget.currentRow()] [self.combobox_frequency_information.currentIndex()], 3)) + " cm") - self.gridLayout_groupbox_info.addWidget(self.label_cell_size_value, 10, 1, 1, 1) + self.gridLayout_groupbox_info.addWidget(self.label_cell_size_value, 11, 1, 1, 1) self.label_pulse_length_value.clear() self.label_pulse_length_value.setText( str(round(stg.pulse_length[self.fileListWidget.currentRow()] [self.combobox_frequency_information.currentIndex()], 6)) + " sec") - self.gridLayout_groupbox_info.addWidget(self.label_pulse_length_value, 11, 1, 1, 1) + self.gridLayout_groupbox_info.addWidget(self.label_pulse_length_value, 12, 1, 1, 1) self.label_pings_per_sec_value.clear() self.label_pings_per_sec_value.setText(str(stg.nb_pings_per_sec[self.fileListWidget.currentRow()] [self.combobox_frequency_information.currentIndex()]) + " Hz") - self.gridLayout_groupbox_info.addWidget(self.label_pings_per_sec_value, 12, 1, 1, 1) + self.gridLayout_groupbox_info.addWidget(self.label_pings_per_sec_value, 13, 1, 1, 1) self.label_pings_per_profile_value.clear() self.label_pings_per_profile_value.setText( str(stg.nb_pings_averaged_per_profile[self.fileListWidget.currentRow()] [self.combobox_frequency_information.currentIndex()])) - self.gridLayout_groupbox_info.addWidget(self.label_pings_per_profile_value, 13, 1, 1, 1) + self.gridLayout_groupbox_info.addWidget(self.label_pings_per_profile_value, 14, 1, 1, 1) print("stg.kt_corrected ", stg.kt_corrected) print("self.combobox_frequency_information.currentText()", @@ -2851,7 +2864,7 @@ class AcousticDataTab(QWidget): if self.checkbox_kt.isChecked(): if self.combobox_frequency_information.count() > 0: # self.spinbox_kt.setValue(stg.kt_corrected[self.combobox_frequency_information.currentText()]) - self.lineEdit_kt.setText(str("%.4f" % stg.kt_corrected[self.combobox_frequency_information.currentText()])) + self.lineEdit_kt.setText(str("%.4f" % stg.kt_corrected[self.combobox_frequency_information.currentIndex()])) else: # print("combobox information update : checkbox unchecked") # self.spinbox_kt.setValue(stg.kt_read[self.combobox_frequency_information.currentIndex()]) @@ -2876,7 +2889,7 @@ class AcousticDataTab(QWidget): self.lineEdit_kt.setEnabled(True) if stg.kt_corrected: # self.spinbox_kt.setValue(stg.kt_corrected[self.combobox_frequency_information.currentText()]) - self.lineEdit_kt.setText(str("%.4f" % stg.kt_corrected[self.combobox_frequency_information.currentText()])) + self.lineEdit_kt.setText(str("%.4f" % stg.kt_corrected[self.combobox_frequency_information.currentIndex()])) else: # self.spinbox_kt.setDisabled(True) self.lineEdit_kt.setDisabled(True) @@ -2909,11 +2922,11 @@ class AcousticDataTab(QWidget): if self.checkbox_kt.isChecked(): if findall(r",", self.lineEdit_kt.text()): - stg.kt_corrected[self.combobox_frequency_information.currentText()] = ( + stg.kt_corrected[self.combobox_frequency_information.currentIndex()] = ( float(self.lineEdit_kt.text().replace(',', '.'))) self.lineEdit_kt.setText("%.4f" % float(self.lineEdit_kt.text().replace(',', '.'))) else: - stg.kt_corrected[self.combobox_frequency_information.currentText()] = ( + stg.kt_corrected[self.combobox_frequency_information.currentIndex()] = ( float(self.lineEdit_kt.text())) self.lineEdit_kt.setText("%.4f" % float(self.lineEdit_kt.text())) @@ -2923,7 +2936,6 @@ class AcousticDataTab(QWidget): # self.lineEdit_kt.setText(str("%.4f" % stg.kt_corrected[ # self.combobox_frequency_information.currentText()])) - # print(f"1 stg.kt_read : {stg.kt_read}") print(f"1 stg.kt_corrected {stg.kt_corrected}") @@ -3246,7 +3258,7 @@ class AcousticDataTab(QWidget): stg.tmin[self.fileListWidget.currentRow()][0]:stg.tmax[self.fileListWidget.currentRow()][0]]) print(f"BS_cross_section shape : {stg.BS_cross_section[self.fileListWidget.currentRow()].shape}") - print(f"BS_cross_section : {stg.BS_cross_section}") + # print(f"BS_cross_section : {stg.BS_cross_section}") def update_frequency_combobox(self): if self.fileListWidget.currentRow() != -1: diff --git a/View/mainwindow.py b/View/mainwindow.py index 1c7d05f..e5f06d3 100644 --- a/View/mainwindow.py +++ b/View/mainwindow.py @@ -13,20 +13,16 @@ from PyQt5 import QtCore, QtGui, QtWidgets from Model.create_table_for_save_as import CreateTableForSaveAs from Model.update_table_for_save import UpdateTableForSave from Model.read_table_for_open import ReadTableForOpen +from Model.calibration_constant_kt import CalibrationConstantKt from View.about_window import AboutWindow import settings as stg import numpy as np -import pandas as pd -import sys -from os import chdir from subprocess import check_call, run import time # from View.acoustic_data_tab import AcousticDataTab -from functools import partial - class Ui_MainWindow(object): def setupUi(self, MainWindow): @@ -135,6 +131,8 @@ class Ui_MainWindow(object): icon7.addPixmap(QtGui.QPixmap("icons/fr.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) self.actionFrench.setIcon(icon7) self.actionFrench.setObjectName("actionFrench") + self.action_ABSCalibrationConstant = QtWidgets.QAction(MainWindow) + self.action_ABSCalibrationConstant.setText("ABS constant calibration kt") self.actionTable_of_Backscatter_values = QtWidgets.QAction(MainWindow) self.actionTable_of_Backscatter_values.setObjectName("actionTable_of_Backscatter_values") self.actionSave_As = QtWidgets.QAction(MainWindow) @@ -148,6 +146,7 @@ class Ui_MainWindow(object): self.menuLanguage.addAction(self.actionEnglish) self.menuLanguage.addAction(self.actionFrench) self.menuSettings.addAction(self.menuLanguage.menuAction()) + self.menuSettings.addAction(self.action_ABSCalibrationConstant) self.menuExport.addAction(self.actionTable_of_Backscatter_values) self.menuFile.addAction(self.actionOpen) self.menuFile.addAction(self.actionSave) @@ -177,6 +176,9 @@ class Ui_MainWindow(object): self.tabWidget.setCurrentIndex(0) QtCore.QMetaObject.connectSlotsByName(MainWindow) + # --- Create Context Menu --- + self.createContextMenu() + # --- Connect Action Save As --- self.actionSave_As.triggered.connect(self.save_as) @@ -187,6 +189,9 @@ class Ui_MainWindow(object): self.actionOpen.triggered.connect(self.open) self.actionOpen.triggered.connect(lambda: print('tott')) + # --- Connect Action ABS calibration constant kt --- + self.action_ABSCalibrationConstant.triggered.connect(self.load_calibration_constant_values) + # --- Connect Action export acoustic backscatter values --- self.actionTable_of_Backscatter_values.triggered.connect( self.export_table_of_acoustic_BS_values_to_excel_or_libreOfficeCalc_file) @@ -200,8 +205,18 @@ class Ui_MainWindow(object): # --- Connect Action User Manual --- self.actionUserManual.triggered.connect(self.user_manual) - # --- Create Context Menu --- - self.createContextMenu() + + def createContextMenu(self): + # Setting contextMenuPolicy + self.centralwidget.setContextMenuPolicy(QtCore.Qt.ActionsContextMenu) + # Populating the widget with actions + self.centralwidget.addAction(self.actionSave_As) + self.centralwidget.addAction(self.actionSave) + self.centralwidget.addAction(self.actionOpen) + self.centralwidget.addAction(self.actionTable_of_Backscatter_values) + self.centralwidget.addAction(self.actionEnglish) + self.centralwidget.addAction(self.actionFrench) + self.centralwidget.addAction(self.actionDB_Browser_for_SQLite) def save_as(self): CreateTableForSaveAs() @@ -216,17 +231,9 @@ class Ui_MainWindow(object): # # acoustic_data_tab.fileListWidget.addItems(stg.acoustic_data) - def createContextMenu(self): - # Setting contextMenuPolicy - self.centralwidget.setContextMenuPolicy(QtCore.Qt.ActionsContextMenu) - # Populating the widget with actions - self.centralwidget.addAction(self.actionSave_As) - self.centralwidget.addAction(self.actionSave) - self.centralwidget.addAction(self.actionOpen) - self.centralwidget.addAction(self.actionTable_of_Backscatter_values) - self.centralwidget.addAction(self.actionEnglish) - self.centralwidget.addAction(self.actionFrench) - self.centralwidget.addAction(self.actionDB_Browser_for_SQLite) + def load_calibration_constant_values(self): + cc_kt = CalibrationConstantKt() + cc_kt.exec() def db_browser_for_sqlite(self): check_call("/usr/bin/sqlitebrowser") diff --git a/settings.py b/settings.py index db187a6..43b8c67 100644 --- a/settings.py +++ b/settings.py @@ -41,7 +41,7 @@ freq_text = [] # Frequency of measurements : list of string kt_read = [] # Constant of calibration kt of the ABS read from acoustic file # List of list # for each frequency -kt_corrected = {} # Constant of calibration kt of the ABS corrected # Dictionary +kt_corrected = [] # Constant of calibration kt of the ABS corrected # list of float # Sometimes, the read values of kt are wrong. Then, we define # default values for all frequency of the ABS.