mirror of https://gitlab.com/pamhyr/pamhyr2
244 lines
12 KiB
Python
244 lines
12 KiB
Python
# -*- coding: utf-8 -*-
|
|
|
|
import os.path
|
|
|
|
from PyQt5 import QtCore, QtGui, QtWidgets
|
|
from PyQt5.QtCore import Qt, QSize
|
|
from PyQt5.QtWidgets import (
|
|
QTableView, QAbstractItemView, QHeaderView,
|
|
QToolBar,
|
|
)
|
|
|
|
from View.Plot import MplCanvas, navigation_toolbar_2qt
|
|
|
|
file_path = os.path.abspath(os.path.dirname(__file__))
|
|
icon_path = f"{os.path.dirname(os.path.dirname(file_path))}/../View/ui/ressources/"
|
|
|
|
class Ui_MainWindow(object):
|
|
def setupUi(self, MainWindowProfile):
|
|
MainWindowProfile.setObjectName("MainWindowProfile")
|
|
MainWindowProfile.resize(1089, 699)
|
|
self.centralwidget = QtWidgets.QWidget(MainWindowProfile)
|
|
self.centralwidget.setObjectName("centralwidget")
|
|
self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.centralwidget)
|
|
self.horizontalLayout_2.setObjectName("horizontalLayout_2")
|
|
self.splitter = QtWidgets.QSplitter(self.centralwidget)
|
|
self.splitter.setOrientation(Qt.Horizontal)
|
|
self.splitter.setObjectName("splitter")
|
|
self.widget = QtWidgets.QWidget(self.splitter)
|
|
self.widget.setObjectName("widget")
|
|
self.verticalLayout_left = QtWidgets.QVBoxLayout(self.widget)
|
|
self.verticalLayout_left.setContentsMargins(0, 0, 0, 0)
|
|
self.verticalLayout_left.setObjectName("verticalLayout_left")
|
|
|
|
self.horizontalLayout = QtWidgets.QHBoxLayout()
|
|
self.horizontalLayout.setObjectName("horizontalLayout")
|
|
|
|
self.toolBar = QToolBar(MainWindowProfile)
|
|
self.toolBar.setOrientation(Qt.Vertical)
|
|
self.toolBar.setEnabled(True)
|
|
MainWindowProfile.addToolBar(QtCore.Qt.TopToolBarArea, self.toolBar)
|
|
|
|
btn_size = QSize(40, 28)
|
|
|
|
self.btn_add = QtWidgets.QAction(self.widget)
|
|
self.btn_add.setObjectName("btn_add")
|
|
icon_btn_add = QtGui.QIcon()
|
|
icon_btn_add.addPixmap(
|
|
QtGui.QPixmap(f"{icon_path}gtk-add.png"))
|
|
self.btn_add.setIcon(icon_btn_add)
|
|
self.toolBar.addAction(self.btn_add)
|
|
|
|
self.btn_delete = QtWidgets.QAction(self.widget)
|
|
self.btn_delete.setObjectName("btn_delete")
|
|
icon_btn_delete = QtGui.QIcon()
|
|
icon_btn_delete.addPixmap(
|
|
QtGui.QPixmap(f"{icon_path}gtk-remove.png"))
|
|
self.btn_delete.setIcon(icon_btn_delete)
|
|
self.toolBar.addAction(self.btn_delete)
|
|
|
|
self.btn_sort_asc_x = QtWidgets.QAction(self.widget)
|
|
self.btn_sort_asc_x.setObjectName("btn_sort_asc_x")
|
|
icon_btn_sort_asc_x = QtGui.QIcon()
|
|
icon_btn_sort_asc_x.addPixmap(
|
|
QtGui.QPixmap(f"{icon_path}gtk-sort-ascending.png"))
|
|
self.btn_sort_asc_x.setIcon(icon_btn_sort_asc_x)
|
|
self.toolBar.addAction(self.btn_sort_asc_x)
|
|
|
|
self.btn_sort_desc_x = QtWidgets.QAction(self.widget)
|
|
self.btn_sort_desc_x.setObjectName("btn_sort_desc_x")
|
|
icon_btn_sort_desc_x = QtGui.QIcon()
|
|
icon_btn_sort_desc_x.addPixmap(
|
|
QtGui.QPixmap(f"{icon_path}gtk-sort-descending.png"))
|
|
self.btn_sort_desc_x.setIcon(icon_btn_sort_desc_x)
|
|
self.toolBar.addAction(self.btn_sort_desc_x)
|
|
|
|
self.btn_sort_asc_y = QtWidgets.QAction(self.widget)
|
|
self.btn_sort_asc_y.setObjectName("btn_sort_asc_y")
|
|
icon_btn_sort_asc_y = QtGui.QIcon()
|
|
icon_btn_sort_asc_y.addPixmap(
|
|
QtGui.QPixmap(f"{icon_path}gtk-sort-ascending.png"))
|
|
self.btn_sort_asc_y.setIcon(icon_btn_sort_asc_y)
|
|
self.toolBar.addAction(self.btn_sort_asc_y)
|
|
|
|
self.btn_sort_desc_y = QtWidgets.QAction(self.widget)
|
|
self.btn_sort_desc_y.setObjectName("btn_sort_desc_y")
|
|
icon_btn_sort_desc_y = QtGui.QIcon()
|
|
icon_btn_sort_desc_y.addPixmap(
|
|
QtGui.QPixmap(f"{icon_path}gtk-sort-descending.png"))
|
|
self.btn_sort_desc_y.setIcon(icon_btn_sort_desc_y)
|
|
self.toolBar.addAction(self.btn_sort_desc_y)
|
|
|
|
self.btn_move_up = QtWidgets.QAction(self.widget)
|
|
self.btn_move_up.setObjectName("btn_move_up")
|
|
icon_btn_move_up = QtGui.QIcon()
|
|
icon_btn_move_up.addPixmap(
|
|
QtGui.QPixmap(f"{icon_path}up.png"))
|
|
self.btn_move_up.setIcon(icon_btn_move_up)
|
|
self.toolBar.addAction(self.btn_move_up)
|
|
|
|
self.btn_move_down = QtWidgets.QAction(self.widget)
|
|
self.btn_move_down.setObjectName("btn_move_down")
|
|
icon_btn_move_down = QtGui.QIcon()
|
|
icon_btn_move_down.addPixmap(
|
|
QtGui.QPixmap(f"{icon_path}down.png"))
|
|
self.btn_move_down.setIcon(icon_btn_move_down)
|
|
self.toolBar.addAction(self.btn_move_down)
|
|
|
|
self.btn_export = QtWidgets.QAction(self.widget)
|
|
self.btn_export.setObjectName("btn_export")
|
|
icon_btn_export = QtGui.QIcon()
|
|
icon_btn_export.addPixmap(
|
|
QtGui.QPixmap(f"{icon_path}export.png"))
|
|
self.btn_export.setIcon(icon_btn_export)
|
|
self.toolBar.addAction(self.btn_export)
|
|
|
|
self.btn_copy = QtWidgets.QAction(self.widget)
|
|
self.btn_copy.setObjectName("btn_copy")
|
|
icon_btn_copy = QtGui.QIcon()
|
|
icon_btn_copy.addPixmap(
|
|
QtGui.QPixmap(f"{icon_path}gtk-copy.png"))
|
|
self.btn_copy.setIcon(icon_btn_copy)
|
|
self.toolBar.addAction(self.btn_copy)
|
|
|
|
self.btn_paste = QtWidgets.QAction(self.widget)
|
|
self.btn_paste.setObjectName("btn_paste")
|
|
icon_btn_paste = QtGui.QIcon()
|
|
icon_btn_paste.addPixmap(
|
|
QtGui.QPixmap(f"{icon_path}gtk-paste.png"))
|
|
self.btn_paste.setIcon(icon_btn_paste)
|
|
self.toolBar.addAction(self.btn_paste)
|
|
|
|
self.btn_check = QtWidgets.QAction(self.widget)
|
|
self.btn_check.setObjectName("btn_check")
|
|
icon_btn_check = QtGui.QIcon()
|
|
icon_btn_check.addPixmap(
|
|
QtGui.QPixmap(f"{icon_path}gtk-apply.png"))
|
|
self.btn_check.setIcon(icon_btn_check)
|
|
self.toolBar.addAction(self.btn_check)
|
|
|
|
self.btn_go_back = QtWidgets.QAction(self.widget)
|
|
self.btn_go_back.setObjectName("btn_go_back")
|
|
icon_btn_go_back = QtGui.QIcon()
|
|
icon_btn_go_back.addPixmap(
|
|
QtGui.QPixmap(f"{icon_path}gtk-undo.png"))
|
|
self.btn_go_back.setIcon(icon_btn_go_back)
|
|
self.toolBar.addAction(self.btn_go_back)
|
|
|
|
self.btn_reset = QtWidgets.QAction(self.widget)
|
|
self.btn_reset.setObjectName("btn_reset")
|
|
icon_btn_reset = QtGui.QIcon()
|
|
icon_btn_reset.addPixmap(
|
|
QtGui.QPixmap(f"{icon_path}cancel.png"))
|
|
self.btn_reset.setIcon(icon_btn_reset)
|
|
self.toolBar.addAction(self.btn_reset)
|
|
|
|
self.verticalLayout_left.addLayout(self.horizontalLayout)
|
|
|
|
self.tableView = QTableView(self.widget)
|
|
self.tableView.setObjectName("tableView")
|
|
self.tableView.setSelectionBehavior(QAbstractItemView.SelectRows)
|
|
self.tableView.setSizeAdjustPolicy(QtWidgets.QAbstractScrollArea.AdjustToContents)
|
|
self.tableView.resizeColumnsToContents()
|
|
self.tableView.resizeRowsToContents()
|
|
self.tableView.setAlternatingRowColors(True)
|
|
self.tableView.horizontalHeader().setSectionResizeMode(QHeaderView.Stretch)
|
|
self.verticalLayout_left.addWidget(self.tableView)
|
|
|
|
self.widget1 = QtWidgets.QWidget(self.splitter)
|
|
self.widget1.setObjectName("widget1")
|
|
|
|
self.verticalLayout_right = QtWidgets.QVBoxLayout(self.widget1)
|
|
self.verticalLayout_right.setContentsMargins(0, 0, 0, 0)
|
|
self.verticalLayout_right.setObjectName("verticalLayout_right")
|
|
|
|
self.label_graphic_help = QtWidgets.QLabel(self.widget1)
|
|
self.label_graphic_help.setMaximumSize(QtCore.QSize(16777215, 25))
|
|
self.label_graphic_help.setBaseSize(QtCore.QSize(0, 30))
|
|
self.label_graphic_help.setObjectName("label_graphic_help")
|
|
self.verticalLayout_right.addWidget(self.label_graphic_help)
|
|
|
|
self.canvas = MplCanvas.MplCanvas(width=5, height=4, dpi=100)
|
|
self.canvas.setObjectName("canvas")
|
|
|
|
self.my_toolbar = navigation_toolbar_2qt.PamHyrNavigationToolbar2QT(
|
|
self.canvas, self.widget1
|
|
)
|
|
|
|
self.verticalLayout_right.addWidget(self.my_toolbar)
|
|
self.verticalLayout_right.addWidget(self.canvas)
|
|
self.horizontalLayout_2.addWidget(self.splitter)
|
|
|
|
MainWindowProfile.setCentralWidget(self.centralwidget)
|
|
|
|
self.menubar = QtWidgets.QMenuBar(MainWindowProfile)
|
|
self.menubar.setGeometry(QtCore.QRect(0, 0, 1089, 20))
|
|
self.menubar.setObjectName("menubar")
|
|
MainWindowProfile.setMenuBar(self.menubar)
|
|
self.statusbar = QtWidgets.QStatusBar(MainWindowProfile)
|
|
self.statusbar.setObjectName("statusbar")
|
|
MainWindowProfile.setStatusBar(self.statusbar)
|
|
|
|
self.retranslateUi(MainWindowProfile)
|
|
QtCore.QMetaObject.connectSlotsByName(MainWindowProfile)
|
|
|
|
def retranslateUi(self, MainWindow):
|
|
_translate = QtCore.QCoreApplication.translate
|
|
MainWindow.setWindowTitle(_translate("MainWindowProfile", "MainWindowProfile"))
|
|
self.btn_add.setToolTip(_translate("MainWindowProfile", "Insérer un point"))
|
|
self.btn_delete.setToolTip(
|
|
_translate("MainWindowProfile", "Supprimer le/les point(s) sélectionnés"))
|
|
self.btn_sort_asc_x.setToolTip(
|
|
_translate("MainWindowProfile", "Trier les points par ordre croissant de X"))
|
|
self.btn_sort_desc_x.setToolTip(
|
|
_translate("MainWindowProfile", "Trier les points par ordre décroissant de X"))
|
|
self.btn_sort_asc_y.setToolTip(_translate("MainWindowProfile",
|
|
"Trier les points par ordre croissant de Y"
|
|
))
|
|
self.btn_sort_desc_y.setToolTip(_translate("MainWindowProfile",
|
|
"Trier les points par ordre décroissant de Y"))
|
|
self.btn_move_up.setToolTip(_translate("MainWindowProfile",
|
|
"Décaler le point sélectionné vers le haut"))
|
|
self.btn_move_down.setToolTip(_translate("MainWindowProfile",
|
|
"Décaler le point sélectionné vers le bas"))
|
|
self.btn_export.setToolTip(_translate("MainWindowProfile",
|
|
"Exporter (dans un fichier) les points du profil au format tabulé"))
|
|
self.btn_copy.setToolTip(
|
|
_translate("MainWindowProfile", "Copier la sélection au format tabulé"))
|
|
self.btn_paste.setToolTip(_translate("MainWindowProfile",
|
|
"Coller la sélection depuis le presse-papier au format tabulé"))
|
|
self.btn_check.setToolTip(_translate("MainWindowProfile",
|
|
"Vérifier la validité de la saisie et garder ou pas les modifications "
|
|
"apportées"))
|
|
self.btn_go_back.setToolTip(_translate("MainWindowProfile",
|
|
"Annuler toutes les modifications depuis la dernière validation"))
|
|
self.btn_reset.setToolTip(_translate("MainWindowProfile",
|
|
"Annuler toutes les modifications et revenir à l\'état initial"))
|
|
self.label_graphic_help.setToolTip(_translate("MainWindowProfile",
|
|
"Ligne d'eau : \n \tZ : Cote (m) \n \tA : Aire mouillée ("
|
|
"m\u00B2) \n \tp : "
|
|
"Périmètre mouillé (m) \n \tL : Largeur au miroir (m)"))
|
|
self.label_graphic_help.setText(
|
|
_translate("MainWindowProfile", "\'Maj + Clic\' : Ligne d\'eau & \'Ctrl + Clic\' : "
|
|
"Sélectionner des points"))
|