refactoring: Continue apply PamhyrWindow.

This commit is contained in:
Pierre-Antoine Rouby committed 2023-09-26 12:03:41 +02:00
1 parent 1a36d78ee2
commit ca10f19fe5
6 files changed
+92 -104

No files matched your search

+20 -23
View File
@@ -20,8 +20,7 @@ import logging
from tools import trace, timer
from View.ASubWindow import ASubMainWindow
from View.ListedSubWindow import ListedSubWindow
from View.Tools.PamhyrWindow import PamhyrWindow
from PyQt5.QtGui import (
QKeySequence,
@@ -51,23 +50,28 @@ _translate = QCoreApplication.translate
logger = logging.getLogger()
class SolverParametersWindow(ASubMainWindow, ListedSubWindow):
def __init__(self, title="Solver parameters", study=None, parent=None):
class SolverParametersWindow(PamhyrWindow):
_pamhyr_ui = "SolverParameters"
_pamhyr_name = "Solver parameters"
def __init__(self, study=None, config=None, parent=None):
# Init tanslate dictionary
tr.init()
self._title = title + " - " + study.name
name = self._pamhyr_name + " - " + study.name
super(SolverParametersWindow, self).__init__(
name=title, ui="SolverParameters", parent=parent
title = name,
study = study,
config = config,
options = ['copy'],
parent = parent
)
self._study = study
self._params = self._study.river.parameters
self.setup_sc()
self.setup_table()
self.setup_connections()
self.ui.setWindowTitle(self._title)
@@ -77,10 +81,10 @@ class SolverParametersWindow(ASubMainWindow, ListedSubWindow):
for st in solver_type_list:
self._undo_stack[st] = QUndoStack()
self.undo_sc = QShortcut(QKeySequence.Undo, self)
self.redo_sc = QShortcut(QKeySequence.Redo, self)
self.copy_sc = QShortcut(QKeySequence.Copy, self)
self.paste_sc = QShortcut(QKeySequence.Paste, self)
self._undo_sc = QShortcut(QKeySequence.Undo, self)
self._redo_sc = QShortcut(QKeySequence.Redo, self)
self._undo_sc.activated.connect(self._undo)
self._redo_sc.activated.connect(self._redo)
def setup_table(self):
self._table = {}
@@ -115,31 +119,24 @@ class SolverParametersWindow(ASubMainWindow, ListedSubWindow):
# Create tab
self._tab_widget.addTab(widget, f"{solver_long_name[st]}")
def setup_connections(self):
self.undo_sc.activated.connect(self.undo)
self.redo_sc.activated.connect(self.redo)
self.copy_sc.activated.connect(self.copy)
self.paste_sc.activated.connect(self.paste)
def current_tab(self):
return self.find(QTabWidget, "tabWidget")\
.currentWidget()\
.objectName()\
.replace("tab_", "")
def undo(self):
def _undo(self):
tab = self.current_tab()
self._table[tab].undo()
self._set_current_reach()
def redo(self):
def _redo(self):
tab = self.current_tab()
self._table[tab].redo()
self._set_current_reach()
def copy(self):
def _copy(self):
logger.info("TODO: copy")
def paste(self):
def _paste(self):
logger.info("TODO: paste")