From 63d754106248a53ffb3961daf137b2f64e14ee52 Mon Sep 17 00:00:00 2001
From: Pierre-Antoine Rouby <pierre-antoine.rouby@inrae.fr>
Date: Thu, 4 May 2023 09:44:19 +0200
Subject: [PATCH] BC: Edit: Fix sort command and scale column.

---
 src/View/BoundaryCondition/Edit/Table.py       | 3 +++
 src/View/BoundaryCondition/Edit/UndoCommand.py | 2 +-
 src/View/BoundaryCondition/Edit/Window.py      | 2 ++
 3 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/src/View/BoundaryCondition/Edit/Table.py b/src/View/BoundaryCondition/Edit/Table.py
index 1e9033d0..16670fe5 100644
--- a/src/View/BoundaryCondition/Edit/Table.py
+++ b/src/View/BoundaryCondition/Edit/Table.py
@@ -50,6 +50,9 @@ class TableModel(QAbstractTableModel):
         return len(self._headers)
 
     def data(self, index, role):
+        if role == Qt.TextAlignmentRole:
+            return Qt.AlignHCenter | Qt.AlignVCenter
+
         if role != Qt.ItemDataRole.DisplayRole:
             return QVariant()
 
diff --git a/src/View/BoundaryCondition/Edit/UndoCommand.py b/src/View/BoundaryCondition/Edit/UndoCommand.py
index c20288ff..ba8fe77c 100644
--- a/src/View/BoundaryCondition/Edit/UndoCommand.py
+++ b/src/View/BoundaryCondition/Edit/UndoCommand.py
@@ -80,7 +80,7 @@ class SortCommand(QUndoCommand):
     def redo(self):
         self._data.sort(
             _reverse=self._reverse,
-            key=lambda x: x.name
+            key=lambda x: x[0]
         )
         if self._indexes is None:
             self._indexes = list(
diff --git a/src/View/BoundaryCondition/Edit/Window.py b/src/View/BoundaryCondition/Edit/Window.py
index 5823a2ce..4a2bbc55 100644
--- a/src/View/BoundaryCondition/Edit/Window.py
+++ b/src/View/BoundaryCondition/Edit/Window.py
@@ -15,6 +15,7 @@ from PyQt5.QtWidgets import (
     QDialogButtonBox, QPushButton, QLineEdit,
     QFileDialog, QTableView, QAbstractItemView,
     QUndoStack, QShortcut, QAction, QItemDelegate,
+    QHeaderView,
 )
 
 from View.Plot.MplCanvas import MplCanvas
@@ -69,6 +70,7 @@ class EditBoundaryConditionWindow(ASubMainWindow, ListedSubWindow):
         )
         table.setModel(self._table)
         table.setSelectionBehavior(QAbstractItemView.SelectRows)
+        table.horizontalHeader().setSectionResizeMode(QHeaderView.Stretch)
         table.setAlternatingRowColors(True)
 
     def setup_plot(self):
-- 
GitLab