diff --git a/src/Model/Network/Graph.py b/src/Model/Network/Graph.py index 6e17c4ad3991c6e23772027bece265fe5a5b41b7..8cc6de21e58d763f695e85dce9b49abd64033c78 100644 --- a/src/Model/Network/Graph.py +++ b/src/Model/Network/Graph.py @@ -67,9 +67,8 @@ class Graph(object): def add_edge(self, n1:Node, n2:Node): # This edge already exists ? - if list(filter(lambda e: (e.node1 == n1 and - e.node2 == n2), - self._edges)): + if any(filter(lambda e: (e.node1 == n1 and e.node2 == n2), + self._edges)): return None edge = Edge(self._edges_ids, "", n1, n2) diff --git a/src/View/ASubWindow.py b/src/View/ASubWindow.py index f4fb1dd3ce81bae2dd2fc4f246072b0cc92df6e3..03b0f9f3db0f33dcbe72729d3a15484076ed7f73 100644 --- a/src/View/ASubWindow.py +++ b/src/View/ASubWindow.py @@ -10,7 +10,7 @@ from PyQt5.QtWidgets import ( QPushButton, QLineEdit, QCheckBox, QTimeEdit, QSpinBox, QTextEdit, QRadioButton, QComboBox, QFileDialog, - QMessageBox, + QMessageBox, QTableView, ) from PyQt5.QtCore import ( QTime, @@ -91,6 +91,22 @@ class ASubWindow(QDialog, WindowToolKit): # Commun use features + def _qtype_from_component_name(self, name): + qtype = None + + if "action" in name: + qtype = QAction + elif "lineEdit" in name: + qtype = QLineEdit + elif "pushButton" in name: + qtype = QPushButton + elif "radioButton" in name: + qtype = QRadioButton + elif "tableView" in name: + qtype = QTableView + + return qtype + def find(self, qtype, name): """Find an ui component @@ -101,6 +117,9 @@ class ASubWindow(QDialog, WindowToolKit): Returns: return the component """ + if qtype is None: + qtype = self._qtype_from_component_name(name) + return self.ui.findChild(qtype, name) def set_line_edit_text(self, name:str, text:str): diff --git a/src/View/MainWindow.py b/src/View/MainWindow.py index 6f9a82be7d179637018342c61edd490e616a673b..3dcca5ed50f34e3b409061d41d41122cf8f4b83e 100644 --- a/src/View/MainWindow.py +++ b/src/View/MainWindow.py @@ -59,6 +59,7 @@ class ApplicationWindow(QMainWindow, ListedSubWindow): # Model self.model = None + # UI self.ui = loadUi( os.path.join(os.path.dirname(__file__), "ui", "MainWindow.ui"),