The sample data tab is reorganized.

dev-brahim
brahim 2024-06-25 09:39:47 +02:00
parent e0130b07fe
commit 1e4f5c7e7a
1 changed files with 381 additions and 175 deletions

View File

@ -36,6 +36,9 @@ class SampleDataTab(QWidget):
def __init__(self, widget_tab):
super().__init__()
path_icon = "./icons/"
icon_folder = QIcon(path_icon + "folder.png")
### --- General layout of widgets ---
self.verticalLayout_sampleDataTab = QVBoxLayout(widget_tab)
@ -49,146 +52,90 @@ class SampleDataTab(QWidget):
# --------------------------------------------------------------------------------------------------------------
### --- Layout of groupbox in the Top horizontal layout box
# Download | Table of values | Sample position
# Display options
# Table of values fines | Sample position
# Table of values sand | Display options
self.groupbox_download = QGroupBox()
self.horizontalLayoutTop_sampleDataTab.addWidget(self.groupbox_download, 3)
self.verticalLayout_groupboxes_fine_sand = QVBoxLayout()
self.horizontalLayoutTop_sampleDataTab.addLayout(self.verticalLayout_groupboxes_fine_sand, 6)
self.groupbox_table = QGroupBox()
self.horizontalLayoutTop_sampleDataTab.addWidget(self.groupbox_table, 4)
self.verticalLayout_sampleposition_displayoption = QVBoxLayout()
self.horizontalLayoutTop_sampleDataTab.addLayout(self.verticalLayout_sampleposition_displayoption, 3)
self.groupbox_plot_sample_position = QGroupBox()
self.verticalLayout_sampleposition_displayoption.addWidget(self.groupbox_plot_sample_position, 5)
self.groupbox_display_option = QGroupBox()
self.verticalLayout_sampleposition_displayoption.addWidget(self.groupbox_display_option, 5)
path_icon = "./icons/"
icon_folder = QIcon(path_icon + "folder.png")
# ++++++++++++++++++++++++++++++++++++++++
# +++ --- GroupBox Download Sample --- +++
# ++++++++++++++++++++++++++++++++++++++++
self.verticalLayout_groupbox_download = QVBoxLayout(self.groupbox_download)
self.tab_download_experimental_numerical_data = QTabWidget()
self.tab_download_experimental_data = QWidget()
self.tab_download_experimental_numerical_data.addTab(self.tab_download_experimental_data, "Experimental data")
self.verticalLayout_experimentalTab_groupbox_download = QVBoxLayout()
self.tab_download_experimental_data.setLayout(self.verticalLayout_experimentalTab_groupbox_download)
self.groupbox_particle_size_file = QGroupBox()
self.verticalLayout_groupbox_particle_size_file = QVBoxLayout(self.groupbox_particle_size_file)
self.groupbox_fine_sediment = QGroupBox()
self.horizontalLayout_fine_sediment = QHBoxLayout(self.groupbox_fine_sediment)
self.pushbutton_fine_sediment = QPushButton()
self.pushbutton_fine_sediment.setIcon(icon_folder)
self.horizontalLayout_fine_sediment.addWidget(self.pushbutton_fine_sediment)
self.lineEdit_fine_sediment = QLineEdit()
self.horizontalLayout_fine_sediment.addWidget(self.lineEdit_fine_sediment)
self.verticalLayout_groupbox_particle_size_file.addWidget(self.groupbox_fine_sediment)
self.pushbutton_fine_sediment.clicked.connect(self.open_dialog_box_fine_sediment)
self.groupbox_fine = QGroupBox()
self.verticalLayout_groupboxes_fine_sand.addWidget(self.groupbox_fine, 5)
self.groupbox_sand = QGroupBox()
self.horizontalLayout_sand = QHBoxLayout(self.groupbox_sand)
self.pushbutton_sand = QPushButton()
self.pushbutton_sand.setIcon(icon_folder)
self.horizontalLayout_sand.addWidget(self.pushbutton_sand)
self.lineEdit_sand = QLineEdit()
self.horizontalLayout_sand.addWidget(self.lineEdit_sand)
self.verticalLayout_groupbox_particle_size_file.addWidget(self.groupbox_sand)
self.verticalLayout_groupboxes_fine_sand.addWidget(self.groupbox_sand, 5)
self.pushbutton_sand.clicked.connect(self.open_dialog_box_sand_sediment)
self.verticalLayout_groupboxes_plot_sample_position_display_option = QVBoxLayout()
self.horizontalLayoutTop_sampleDataTab.addLayout(self.verticalLayout_groupboxes_plot_sample_position_display_option, 4)
self.verticalLayout_experimentalTab_groupbox_download.addWidget(self.groupbox_particle_size_file)
self.groupbox_plot_sample_position_on_transect = QGroupBox()
self.verticalLayout_groupboxes_plot_sample_position_display_option.addWidget(self.groupbox_plot_sample_position_on_transect, 6)
# self.groupbox_total_concentration = QGroupBox()
# self.horizontalLayout_groupbox_total_concentration = QHBoxLayout(self.groupbox_total_concentration)
# self.pushbutton_total_concentration = QPushButton()
# self.pushbutton_total_concentration.setIcon(icon_folder)
# self.horizontalLayout_groupbox_total_concentration.addWidget(self.pushbutton_total_concentration)
# self.lineEdit_total_concentration = QLineEdit()
# self.horizontalLayout_groupbox_total_concentration.addWidget(self.lineEdit_total_concentration)
#
# self.pushbutton_total_concentration.clicked.connect(self.open_dialog_box_total_concentration)
#
# self.verticalLayout_groupbox_download.addWidget(self.groupbox_total_concentration)
self.groupbox_display_option = QGroupBox()
self.verticalLayout_groupboxes_plot_sample_position_display_option.addWidget(self.groupbox_display_option, 4)
# self.verticalLayout_experimentalTab_groupbox_download.addWidget(self.groupbox_total_concentration)
self.tab_compute_numerical_data = QWidget()
self.tab_download_experimental_numerical_data.addTab(self.tab_compute_numerical_data, "Numerical data")
# ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# +++ --- GroupBox download and visualize tables of values --- +++
# ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
self.verticalLayout_groupbox_download.addWidget(self.tab_download_experimental_numerical_data)
# --- Download + Table of values : fine sediments ---
self.verticalLayout_groupbox_fine = QVBoxLayout(self.groupbox_fine)
self.groupbox_fine.setTitle("Fine sediments")
# ++++++++++++++++++++++++++++++++++++++++
# +++ --- GroupBox Table of values --- +++
# ++++++++++++++++++++++++++++++++++++++++
self.horizontalLayout_download_fine_sediment = QHBoxLayout()
self.verticalLayout_groupbox_fine.addLayout(self.horizontalLayout_download_fine_sediment)
self.pushbutton_fine_sediment = QPushButton()
self.pushbutton_fine_sediment.setIcon(icon_folder)
self.horizontalLayout_download_fine_sediment.addWidget(self.pushbutton_fine_sediment)
self.lineEdit_fine_sediment = QLineEdit()
self.horizontalLayout_download_fine_sediment.addWidget(self.lineEdit_fine_sediment)
self.horizontalSpacerItem_fine = QSpacerItem(600, 10, QSizePolicy.Expanding, QSizePolicy.Minimum)
self.horizontalLayout_download_fine_sediment.addItem(self.horizontalSpacerItem_fine)
self.verticalLayout_groupbox_table = QVBoxLayout(self.groupbox_table)
# self.pushbutton_fine_sediment.clicked.connect(self.open_dialog_box_fine_sediment)
self.horizontalLayout_checkAll_spacer_exportTable = QHBoxLayout()
self.tableWidget_fine = QTableWidget()
self.row_fine = self.tableWidget_fine.setRowCount(10)
self.column_fine = self.tableWidget_fine.setColumnCount(10)
self.verticalLayout_groupbox_fine.addWidget(self.tableWidget_fine)
self.pushbutton_fill_table = QPushButton()
self.horizontalLayout_checkAll_spacer_exportTable.addWidget(self.pushbutton_fill_table)
# --- Download + Table of values : sand sediments ---
self.verticalLayout_groupbox_sand = QVBoxLayout(self.groupbox_sand)
self.groupbox_sand.setTitle("Sand sediments")
self.horizontalSpacerItem_pushButton_fill_table = QSpacerItem(20, 10, QSizePolicy.Expanding,
QSizePolicy.Minimum)
self.horizontalLayout_checkAll_spacer_exportTable.addItem(self.horizontalSpacerItem_pushButton_fill_table)
self.horizontalLayout_download_sand_sediment = QHBoxLayout()
self.verticalLayout_groupbox_sand.addLayout(self.horizontalLayout_download_sand_sediment)
self.pushbutton_sand_sediment = QPushButton()
self.pushbutton_sand_sediment.setIcon(icon_folder)
self.horizontalLayout_download_sand_sediment.addWidget(self.pushbutton_sand_sediment)
self.lineEdit_sand_sediment = QLineEdit()
self.horizontalLayout_download_sand_sediment.addWidget(self.lineEdit_sand_sediment)
self.horizontalSpacerItem_sand = QSpacerItem(600, 10, QSizePolicy.Expanding, QSizePolicy.Minimum)
self.horizontalLayout_download_sand_sediment.addItem(self.horizontalSpacerItem_sand)
self.allChkBox = QCheckBox()
self.horizontalLayout_checkAll_spacer_exportTable.addWidget(self.allChkBox)
self.tableWidget_sand = QTableWidget()
self.row_sand = self.tableWidget_sand.setRowCount(10)
self.column_sand = self.tableWidget_sand.setColumnCount(10)
self.verticalLayout_groupbox_sand.addWidget(self.tableWidget_sand)
self.horizontalSpacerItem_pushButton_export_table = QSpacerItem(340, 10, QSizePolicy.Expanding,
QSizePolicy.Minimum)
self.horizontalLayout_checkAll_spacer_exportTable.addItem(self.horizontalSpacerItem_pushButton_export_table)
self.pushButton_export_table = QPushButton()
self.horizontalLayout_checkAll_spacer_exportTable.addWidget(self.pushButton_export_table)
self.verticalLayout_groupbox_table.addLayout(self.horizontalLayout_checkAll_spacer_exportTable)
self.tableWidget_sample = QTableWidget()
self.row = self.tableWidget_sample.setRowCount(10)
self.column = self.tableWidget_sample.setColumnCount(10)
self.pushbutton_fill_table.clicked.connect(self.fill_table)
self.pushButton_export_table.clicked.connect(self.export_table)
self.verticalLayout_groupbox_table.addWidget(self.tableWidget_sample)
# +++++++++++++++++++++++++++++++++++++++++++++
# +++ --- GroupBox plot sample position --- +++
# +++++++++++++++++++++++++++++++++++++++++++++
self.verticalLayout_groupbox_plot_sample_position = QVBoxLayout(self.groupbox_plot_sample_position)
self.verticalLayout_groupbox_plot_sample_position_on_transect = QVBoxLayout(self.groupbox_plot_sample_position_on_transect)
self.groupbox_plot_sample_position_on_transect.setTitle("Plot samples positions")
self.canvas_plot_sample_position_on_transect = None
self.canvas_plot_sample_position_on_transect = FigureCanvas()
self.verticalLayout_groupbox_plot_sample_position_on_transect.addWidget(self.canvas_plot_sample_position_on_transect)
# if self.canvas_transect_sample_position
# self.figure_sample_position, self.axis_sample_position = plt.subplots(nrows=1, ncols=1, layout="constrained")
# self.canvas_sample_position = FigureCanvas(self.figure_sample_position)
# # self.toolbar_sampleposition = NavigationToolBar(self.canvas_sampleposition, self)
# self.empty_field_for_transect_plot()
# self.verticalLayout_groupbox_plot_sample_position.addWidget(self.canvas_sample_position)
self.verticalLayout_groupbox_display_option = QVBoxLayout(self.groupbox_display_option)
self.groupbox_display_option.setTitle("Display options")
# +++++++++++++++++++++++++++++++++++++++
# +++ --- GroupBox display option --- +++
# +++++++++++++++++++++++++++++++++++++++
self.verticalLayout_groupbox_display_option = QVBoxLayout(self.groupbox_display_option)
self.horizontalLayout_pushbutton_combobox_transect = QHBoxLayout()
self.verticalLayout_groupbox_display_option.addLayout(self.horizontalLayout_pushbutton_combobox_transect)
@ -210,7 +157,8 @@ class SampleDataTab(QWidget):
self.groupbox_option_total_concentration_plot.setTitle("Total concentration plot")
self.horizontalLayout_Ctot_PSD_plot.addWidget(self.groupbox_option_total_concentration_plot)
self.gridLayout_groupbox_option_total_concentration_plot = QGridLayout(self.groupbox_option_total_concentration_plot)
self.gridLayout_groupbox_option_total_concentration_plot = QGridLayout(
self.groupbox_option_total_concentration_plot)
self.label_x_axis = QLabel()
self.label_x_axis.setText("x axis")
self.gridLayout_groupbox_option_total_concentration_plot.addWidget(self.label_x_axis, 0, 0)
@ -244,87 +192,345 @@ class SampleDataTab(QWidget):
self.combobox_PSD_plot.currentTextChanged.connect(self.update_plot_PSD_fine_and_sand_sediments)
# self.horizontalLayout_groupbox_option_PSD_plot = QHBoxLayout(self.groupbox_option_PSD_plot)
# self.pushbutton_class_PSD = QPushButton()
# self.pushbutton_class_PSD.setText("Class PSD")
# self.horizontalLayout_groupbox_option_PSD_plot.addWidget(self.pushbutton_class_PSD)
# self.pushbutton_class_PSD.clicked.connect(self.update_plot_fine_and_sand_sediments_PSD_class)
# self.pushbutton_class_PSD.clicked_signal[str].connect(self.on_clicked)
# if self.tableWidget_sample.columnCount() == 10:
# self.pushbutton_class_PSD.clicked.connect(self.empty_field_to_plot_fine_sediment_distribution)
# else:
# self.pushbutton_class_PSD.clicked.connect(self.update_plot_fine_sediment_PSD_class_cumul)
# self.pushbutton_cumulative_PSD = QPushButton()
# self.pushbutton_cumulative_PSD.setText("Cumulative PSD")
# self.horizontalLayout_groupbox_option_PSD_plot.addWidget(self.pushbutton_cumulative_PSD)
# self.pushbutton_cumulative_PSD.clicked.connect(self.update_plot_fine_and_sand_sediments_PSD_cumul)
# if self.tableWidget_sample.columnCount() == 10:
# self.pushbutton_cumulative_PSD.clicked.connect(self.empty_field_to_plot_fine_sediment_distribution)
# else:
# self.pushbutton_cumulative_PSD.clicked.connect(self.update_plot_fine_sediment_PSD_class_cumul)
# self.pushbutton_plot_PSD_distribution.setText("Class distribution")
# self.horizontalLayout_calibration_sample_vertical_profile = QHBoxLayout()
# self.verticalLayout_groupbox_displayoption_sampletab.addLayout(
# self.horizontalLayout_calibration_sample_vertical_profile)
#
# self.label_calibration_sample_vertical_profile = QLabel()
# # self.label_calibration_sample_vertical_profile.setText("Calibration sample vertical profile :")
# self.horizontalLayout_calibration_sample_vertical_profile.addWidget(
# self.label_calibration_sample_vertical_profile)
#
# self.combobox_calibration_sample_vertical_profile = CheckableComboBox()
# self.combobox_calibration_sample_vertical_profile.addItems(["S1, S2, S3", "S4, S5, S6, S7", "S8, S9, S10, S11"])
# self.horizontalLayout_calibration_sample_vertical_profile.addWidget(
# self.combobox_calibration_sample_vertical_profile)
# --------------------------------------------------------------------------------------------------------------
### --- Layout of groupbox in the Bottom horizontal layout box
# Plot Ctot | Plot PSD fine + sand
# --- Groupbox plot total concentration of sediments ---
self.groupbox_plot_total_concentration = QGroupBox()
self.horizontalLayoutBottom_sampleDataTab.addWidget(self.groupbox_plot_total_concentration, 3)
self.verticalLayout_groupbox_plot_total_concentration = QVBoxLayout(self.groupbox_plot_total_concentration)
self.groupbox_plot_total_concentration.setTitle("Plot total concentration")
self.canvas_plot_total_concentration = FigureCanvas()
self.toolbar_plot_total_concentration = NavigationToolBar(self.canvas_plot_total_concentration)
self.verticalLayout_groupbox_plot_total_concentration.addWidget(self.toolbar_plot_total_concentration)
self.verticalLayout_groupbox_plot_total_concentration.addWidget(self.canvas_plot_total_concentration)
# --- Groupbox plot Particle Size Distributions ---
self.groupbox_plot_PSD = QGroupBox()
self.horizontalLayoutBottom_sampleDataTab.addWidget(self.groupbox_plot_PSD, 6)
# +++++++++++++++++++++++++++++++++++++++++++++++++
# +++ --- GroupBox plot total concentration --- +++
# +++++++++++++++++++++++++++++++++++++++++++++++++
self.verticalLayout_groupbox_plot_PSD = QVBoxLayout(self.groupbox_plot_PSD)
self.groupbox_plot_PSD.setTitle("Plot particle size distribution")
self.verticalLayout_plot_total_concentration = QVBoxLayout(self.groupbox_plot_total_concentration)
self.canvas_total_concentration = None
self.canvas_plot_PSD = FigureCanvas()
self.toolbar_plot_PSD = NavigationToolBar(self.canvas_plot_PSD)
self.verticalLayout_groupbox_plot_PSD.addWidget(self.toolbar_plot_PSD)
self.verticalLayout_groupbox_plot_PSD.addWidget(self.canvas_plot_PSD)
# self.figure_total_concentration, self.axis_total_concentration \
# = plt.subplots(nrows=1, ncols=1, layout="constrained")
# self.canvas_total_concentration = FigureCanvas(self.figure_total_concentration)
# # self.plotToolbar_sample_total_concentration = NavigationToolBar(self.canvas_sample_total_concentration, self)
# self.empty_field_for_total_concentration_plot()
# self.verticalLayout_plot_total_concentration.addWidget(self.canvas_total_concentration)
# ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# +++ --- GroupBox plot particle size distribution --- +++
# ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# ______ _______
# | | | | \
# | | | | \
# | | | | |
# | | | | /
# |______| |________ |________/
self.verticalLayout_plot_PSD = QVBoxLayout(self.groupbox_plot_PSD)
self.canvas_plot_PSD = None
# COMMENT OLD CODE LINE FROM HERE ....
# self.figure_plot_PSD, self.axis_plot_PSD = plt.subplots(nrows=1, ncols=2, layout="constrained")
# self.canvas_plot_PSD = FigureCanvas(self.figure_plot_PSD)
# # self.plotToolbar_sample_distribution = NavigationToolBar(self.canvas_sample_distribution, self)
# self.empty_field_for_plot_fine_PSD_class()
# self.empty_field_for_plot_sand_PSD_class()
# self.verticalLayout_plot_PSD.addWidget(self.canvas_plot_PSD)
# ### --- Layout of groupbox in the Top horizontal layout box
# # Download | Table of values | Sample position
# # Display options
#
# self.groupbox_download = QGroupBox()
# self.horizontalLayoutTop_sampleDataTab.addWidget(self.groupbox_download, 3)
#
# self.groupbox_table = QGroupBox()
# self.horizontalLayoutTop_sampleDataTab.addWidget(self.groupbox_table, 4)
#
# self.verticalLayout_sampleposition_displayoption = QVBoxLayout()
# self.horizontalLayoutTop_sampleDataTab.addLayout(self.verticalLayout_sampleposition_displayoption, 3)
#
# self.groupbox_plot_sample_position = QGroupBox()
# self.verticalLayout_sampleposition_displayoption.addWidget(self.groupbox_plot_sample_position, 6)
#
# self.groupbox_display_option = QGroupBox()
# self.verticalLayout_sampleposition_displayoption.addWidget(self.groupbox_display_option, 4)
#
# path_icon = "./icons/"
# icon_folder = QIcon(path_icon + "folder.png")
#
# # ++++++++++++++++++++++++++++++++++++++++
# # +++ --- GroupBox Download Sample --- +++
# # ++++++++++++++++++++++++++++++++++++++++
#
# self.verticalLayout_groupbox_download = QVBoxLayout(self.groupbox_download)
#
# self.tab_download_experimental_numerical_data = QTabWidget()
#
# self.tab_download_experimental_data = QWidget()
# self.tab_download_experimental_numerical_data.addTab(self.tab_download_experimental_data, "Experimental data")
#
# self.verticalLayout_experimentalTab_groupbox_download = QVBoxLayout()
# self.tab_download_experimental_data.setLayout(self.verticalLayout_experimentalTab_groupbox_download)
#
# self.groupbox_particle_size_file = QGroupBox()
# self.verticalLayout_groupbox_particle_size_file = QVBoxLayout(self.groupbox_particle_size_file)
#
# self.groupbox_fine_sediment = QGroupBox()
# self.horizontalLayout_fine_sediment = QHBoxLayout(self.groupbox_fine_sediment)
# self.pushbutton_fine_sediment = QPushButton()
# self.pushbutton_fine_sediment.setIcon(icon_folder)
# self.horizontalLayout_fine_sediment.addWidget(self.pushbutton_fine_sediment)
# self.lineEdit_fine_sediment = QLineEdit()
# self.horizontalLayout_fine_sediment.addWidget(self.lineEdit_fine_sediment)
# self.verticalLayout_groupbox_particle_size_file.addWidget(self.groupbox_fine_sediment)
#
# self.pushbutton_fine_sediment.clicked.connect(self.open_dialog_box_fine_sediment)
#
# self.groupbox_sand = QGroupBox()
# self.horizontalLayout_sand = QHBoxLayout(self.groupbox_sand)
# self.pushbutton_sand = QPushButton()
# self.pushbutton_sand.setIcon(icon_folder)
# self.horizontalLayout_sand.addWidget(self.pushbutton_sand)
# self.lineEdit_sand = QLineEdit()
# self.horizontalLayout_sand.addWidget(self.lineEdit_sand)
# self.verticalLayout_groupbox_particle_size_file.addWidget(self.groupbox_sand)
#
# self.pushbutton_sand.clicked.connect(self.open_dialog_box_sand_sediment)
#
# self.verticalLayout_experimentalTab_groupbox_download.addWidget(self.groupbox_particle_size_file)
#
# # self.groupbox_total_concentration = QGroupBox()
# # self.horizontalLayout_groupbox_total_concentration = QHBoxLayout(self.groupbox_total_concentration)
# # self.pushbutton_total_concentration = QPushButton()
# # self.pushbutton_total_concentration.setIcon(icon_folder)
# # self.horizontalLayout_groupbox_total_concentration.addWidget(self.pushbutton_total_concentration)
# # self.lineEdit_total_concentration = QLineEdit()
# # self.horizontalLayout_groupbox_total_concentration.addWidget(self.lineEdit_total_concentration)
# #
# # self.pushbutton_total_concentration.clicked.connect(self.open_dialog_box_total_concentration)
# #
# # self.verticalLayout_groupbox_download.addWidget(self.groupbox_total_concentration)
#
# # self.verticalLayout_experimentalTab_groupbox_download.addWidget(self.groupbox_total_concentration)
#
# self.tab_compute_numerical_data = QWidget()
# self.tab_download_experimental_numerical_data.addTab(self.tab_compute_numerical_data, "Numerical data")
#
# self.verticalLayout_groupbox_download.addWidget(self.tab_download_experimental_numerical_data)
#
# # ++++++++++++++++++++++++++++++++++++++++
# # +++ --- GroupBox Table of values --- +++
# # ++++++++++++++++++++++++++++++++++++++++
#
# self.verticalLayout_groupbox_table = QVBoxLayout(self.groupbox_table)
#
# self.horizontalLayout_checkAll_spacer_exportTable = QHBoxLayout()
#
# # self.pushbutton_fill_table = QPushButton()
# # self.horizontalLayout_checkAll_spacer_exportTable.addWidget(self.pushbutton_fill_table)
#
# self.horizontalSpacerItem_pushButton_fill_table = QSpacerItem(20, 10, QSizePolicy.Expanding,
# QSizePolicy.Minimum)
# self.horizontalLayout_checkAll_spacer_exportTable.addItem(self.horizontalSpacerItem_pushButton_fill_table)
#
# self.allChkBox = QCheckBox()
# self.horizontalLayout_checkAll_spacer_exportTable.addWidget(self.allChkBox)
#
# self.horizontalSpacerItem_pushButton_export_table = QSpacerItem(340, 10, QSizePolicy.Expanding,
# QSizePolicy.Minimum)
# self.horizontalLayout_checkAll_spacer_exportTable.addItem(self.horizontalSpacerItem_pushButton_export_table)
#
# self.pushButton_export_table = QPushButton()
# self.horizontalLayout_checkAll_spacer_exportTable.addWidget(self.pushButton_export_table)
#
# self.verticalLayout_groupbox_table.addLayout(self.horizontalLayout_checkAll_spacer_exportTable)
#
# # --- Table of values of fine sediments ---
# self.groupbox_table_fine = QGroupBox()
# self.verticalLayout_groupbox_table_fine = QVBoxLayout(self.groupbox_table_fine)
# self.groupbox_table_fine.setTitle("Fine sediments")
# self.verticalLayout_groupbox_table.addWidget(self.groupbox_table_fine)
#
# self.tableWidget_fine = QTableWidget()
# self.row_fine = self.tableWidget_fine.setRowCount(10)
# self.column_fine = self.tableWidget_fine.setColumnCount(10)
# self.verticalLayout_groupbox_table_fine.addWidget(self.tableWidget_fine)
#
# # --- Table of values of sand sediments ---
# self.groupbox_table_sand = QGroupBox()
# self.verticalLayout_groupbox_table_sand = QVBoxLayout(self.groupbox_table_sand)
# self.groupbox_table_sand.setTitle("Sand sediments")
# self.verticalLayout_groupbox_table.addWidget(self.groupbox_table_sand)
#
# self.tableWidget_sand = QTableWidget()
# self.row_sand = self.tableWidget_sand.setRowCount(10)
# self.column_sand = self.tableWidget_sand.setColumnCount(10)
# self.verticalLayout_groupbox_table_sand.addWidget(self.tableWidget_sand)
#
# # self.tableWidget_sample = QTableWidget()
# #
# # self.row = self.tableWidget_sample.setRowCount(10)
# # self.column = self.tableWidget_sample.setColumnCount(10)
# #
# # self.pushbutton_fill_table.clicked.connect(self.fill_table)
# # self.pushButton_export_table.clicked.connect(self.export_table)
# #
# # self.verticalLayout_groupbox_table.addWidget(self.tableWidget_sample)
#
# # +++++++++++++++++++++++++++++++++++++++++++++
# # +++ --- GroupBox plot sample position --- +++
# # +++++++++++++++++++++++++++++++++++++++++++++
#
# self.verticalLayout_groupbox_plot_sample_position = QVBoxLayout(self.groupbox_plot_sample_position)
#
# self.canvas_plot_sample_position_on_transect = None
#
# # if self.canvas_transect_sample_position
#
# # self.figure_sample_position, self.axis_sample_position = plt.subplots(nrows=1, ncols=1, layout="constrained")
# # self.canvas_sample_position = FigureCanvas(self.figure_sample_position)
# # # self.toolbar_sampleposition = NavigationToolBar(self.canvas_sampleposition, self)
# # self.empty_field_for_transect_plot()
# # self.verticalLayout_groupbox_plot_sample_position.addWidget(self.canvas_sample_position)
#
# # +++++++++++++++++++++++++++++++++++++++
# # +++ --- GroupBox display option --- +++
# # +++++++++++++++++++++++++++++++++++++++
#
# self.verticalLayout_groupbox_display_option = QVBoxLayout(self.groupbox_display_option)
#
# self.horizontalLayout_pushbutton_combobox_transect = QHBoxLayout()
# self.verticalLayout_groupbox_display_option.addLayout(self.horizontalLayout_pushbutton_combobox_transect)
#
# self.pushbutton_plot_transect = QPushButton()
# self.pushbutton_plot_transect.setText("Plot transect to visualise sample position")
# self.horizontalLayout_pushbutton_combobox_transect.addWidget(self.pushbutton_plot_transect)
#
# self.pushbutton_plot_transect.clicked.connect(self.plot_sample_position_on_transect)
#
# self.combobox_frequencies = QComboBox()
# self.horizontalLayout_pushbutton_combobox_transect.addWidget(self.combobox_frequencies)
#
# # self.combobox_frequencies.currentTextChanged.connect(self.update_plot_sample_position_on_transect)
#
# self.horizontalLayout_Ctot_PSD_plot = QHBoxLayout()
# self.verticalLayout_groupbox_display_option.addLayout(self.horizontalLayout_Ctot_PSD_plot)
#
# self.groupbox_option_total_concentration_plot = QGroupBox()
# self.groupbox_option_total_concentration_plot.setTitle("Total concentration plot")
# self.horizontalLayout_Ctot_PSD_plot.addWidget(self.groupbox_option_total_concentration_plot)
#
# self.gridLayout_groupbox_option_total_concentration_plot = QGridLayout(self.groupbox_option_total_concentration_plot)
# self.label_x_axis = QLabel()
# self.label_x_axis.setText("x axis")
# self.gridLayout_groupbox_option_total_concentration_plot.addWidget(self.label_x_axis, 0, 0)
#
# self.combobox_x_axis = QComboBox()
# self.combobox_x_axis.addItems(['Concentration (g/L)', 'Concentration (%)'])
# self.gridLayout_groupbox_option_total_concentration_plot.addWidget(self.combobox_x_axis, 0, 1)
#
# self.combobox_x_axis.currentTextChanged.connect(self.update_plot_total_concentration)
#
# self.label_y_axis = QLabel()
# self.label_y_axis.setText("y axis")
# self.gridLayout_groupbox_option_total_concentration_plot.addWidget(self.label_y_axis, 1, 0)
#
# self.combobox_y_axis = QComboBox()
# self.combobox_y_axis.addItems(['z (m)', 'z / h'])
# self.gridLayout_groupbox_option_total_concentration_plot.addWidget(self.combobox_y_axis, 1, 1)
#
# # self.combobox_y_axis.currentTextChanged.connect(self.empty_field_for_total_concentration_plot)
# self.combobox_y_axis.currentTextChanged.connect(self.update_plot_total_concentration)
#
# # --- Group box PSD plot ---
# self.groupbox_option_PSD_plot = QGroupBox()
# self.groupbox_option_PSD_plot.setTitle("Particle Size Distribution plot")
# self.horizontalLayout_Ctot_PSD_plot.addWidget(self.groupbox_option_PSD_plot)
#
# self.verticalLayout__groupbox_option_PSD_plot = QHBoxLayout(self.groupbox_option_PSD_plot)
# self.combobox_PSD_plot = QComboBox()
# self.combobox_PSD_plot.addItems(["Class PSD", "Cumulative PSD"])
# self.verticalLayout__groupbox_option_PSD_plot.addWidget(self.combobox_PSD_plot)
#
# self.combobox_PSD_plot.currentTextChanged.connect(self.update_plot_PSD_fine_and_sand_sediments)
#
# # self.horizontalLayout_groupbox_option_PSD_plot = QHBoxLayout(self.groupbox_option_PSD_plot)
# # self.pushbutton_class_PSD = QPushButton()
# # self.pushbutton_class_PSD.setText("Class PSD")
# # self.horizontalLayout_groupbox_option_PSD_plot.addWidget(self.pushbutton_class_PSD)
#
# # self.pushbutton_class_PSD.clicked.connect(self.update_plot_fine_and_sand_sediments_PSD_class)
#
# # self.pushbutton_class_PSD.clicked_signal[str].connect(self.on_clicked)
#
# # if self.tableWidget_sample.columnCount() == 10:
# # self.pushbutton_class_PSD.clicked.connect(self.empty_field_to_plot_fine_sediment_distribution)
# # else:
# # self.pushbutton_class_PSD.clicked.connect(self.update_plot_fine_sediment_PSD_class_cumul)
#
# # self.pushbutton_cumulative_PSD = QPushButton()
# # self.pushbutton_cumulative_PSD.setText("Cumulative PSD")
# # self.horizontalLayout_groupbox_option_PSD_plot.addWidget(self.pushbutton_cumulative_PSD)
#
# # self.pushbutton_cumulative_PSD.clicked.connect(self.update_plot_fine_and_sand_sediments_PSD_cumul)
#
# # if self.tableWidget_sample.columnCount() == 10:
# # self.pushbutton_cumulative_PSD.clicked.connect(self.empty_field_to_plot_fine_sediment_distribution)
# # else:
# # self.pushbutton_cumulative_PSD.clicked.connect(self.update_plot_fine_sediment_PSD_class_cumul)
#
# # self.pushbutton_plot_PSD_distribution.setText("Class distribution")
#
# # self.horizontalLayout_calibration_sample_vertical_profile = QHBoxLayout()
# # self.verticalLayout_groupbox_displayoption_sampletab.addLayout(
# # self.horizontalLayout_calibration_sample_vertical_profile)
# #
# # self.label_calibration_sample_vertical_profile = QLabel()
# # # self.label_calibration_sample_vertical_profile.setText("Calibration sample vertical profile :")
# # self.horizontalLayout_calibration_sample_vertical_profile.addWidget(
# # self.label_calibration_sample_vertical_profile)
# #
# # self.combobox_calibration_sample_vertical_profile = CheckableComboBox()
# # self.combobox_calibration_sample_vertical_profile.addItems(["S1, S2, S3", "S4, S5, S6, S7", "S8, S9, S10, S11"])
# # self.horizontalLayout_calibration_sample_vertical_profile.addWidget(
# # self.combobox_calibration_sample_vertical_profile)
#
# # --------------------------------------------------------------------------------------------------------------
# ### --- Layout of groupbox in the Bottom horizontal layout box
#
# # Plot Ctot | Plot PSD fine + sand
#
# self.groupbox_plot_total_concentration = QGroupBox()
# self.horizontalLayoutBottom_sampleDataTab.addWidget(self.groupbox_plot_total_concentration, 3)
#
# self.groupbox_plot_PSD = QGroupBox()
# self.horizontalLayoutBottom_sampleDataTab.addWidget(self.groupbox_plot_PSD, 6)
#
# # +++++++++++++++++++++++++++++++++++++++++++++++++
# # +++ --- GroupBox plot total concentration --- +++
# # +++++++++++++++++++++++++++++++++++++++++++++++++
#
# self.verticalLayout_plot_total_concentration = QVBoxLayout(self.groupbox_plot_total_concentration)
# self.canvas_total_concentration = None
#
# # self.figure_total_concentration, self.axis_total_concentration \
# # = plt.subplots(nrows=1, ncols=1, layout="constrained")
# # self.canvas_total_concentration = FigureCanvas(self.figure_total_concentration)
# # # self.plotToolbar_sample_total_concentration = NavigationToolBar(self.canvas_sample_total_concentration, self)
# # self.empty_field_for_total_concentration_plot()
# # self.verticalLayout_plot_total_concentration.addWidget(self.canvas_total_concentration)
#
# # ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# # +++ --- GroupBox plot particle size distribution --- +++
# # ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#
# self.verticalLayout_plot_PSD = QVBoxLayout(self.groupbox_plot_PSD)
# self.canvas_plot_PSD = None
#
# # self.figure_plot_PSD, self.axis_plot_PSD = plt.subplots(nrows=1, ncols=2, layout="constrained")
# # self.canvas_plot_PSD = FigureCanvas(self.figure_plot_PSD)
# # # self.plotToolbar_sample_distribution = NavigationToolBar(self.canvas_sample_distribution, self)
# # self.empty_field_for_plot_fine_PSD_class()
# # self.empty_field_for_plot_sand_PSD_class()
# # self.verticalLayout_plot_PSD.addWidget(self.canvas_plot_PSD)
self.retranslate_data_sample_tab()
# self.retranslate_data_sample_tab()
# -------------------- Functions for Sample Data Tab --------------------