From 16cef2663a5902cfbc677a468ec64d0b8299c218 Mon Sep 17 00:00:00 2001
From: Oscar Gustafsson <oscar.gustafsson@gmail.com>
Date: Mon, 23 Jan 2023 21:29:42 +0100
Subject: [PATCH] Add documentation to Arrow

---
 b_asic/GUI/arrow.py | 22 ++++++++++++++++++++++
 1 file changed, 22 insertions(+)

diff --git a/b_asic/GUI/arrow.py b/b_asic/GUI/arrow.py
index 06015d46..2c43d8d0 100644
--- a/b_asic/GUI/arrow.py
+++ b/b_asic/GUI/arrow.py
@@ -6,7 +6,24 @@ from b_asic.signal import Signal
 
 
 class Arrow(QGraphicsLineItem):
+    """Arrow/connection in signal flow graph GUI."""
+
     def __init__(self, source, destination, window, signal=None, parent=None):
+        """
+        Parameters
+        ==========
+
+        source :
+            Source operation.
+        destination :
+            Destination operation.
+        window :
+            Window containing signal flow graph.
+        signal : Signal, optional
+            Let arrow represent *signal*.
+        parent : optional
+            Parent.
+        """
         super().__init__(parent)
         self.source = source
         if signal is None:
@@ -19,11 +36,13 @@ class Arrow(QGraphicsLineItem):
         self.destination.moved.connect(self.moveLine)
 
     def contextMenuEvent(self, event):
+        """Open right-click menu."""
         menu = QMenu()
         menu.addAction("Delete", self.remove)
         menu.exec_(self.cursor().pos())
 
     def remove(self):
+        """Remove line and connections to signals etc."""
         self.signal.remove_destination()
         self.signal.remove_source()
         self._window.scene.removeItem(self)
@@ -57,6 +76,9 @@ class Arrow(QGraphicsLineItem):
         del self._window.signalPortDict[self]
 
     def moveLine(self):
+        """
+        Draw a line connecting self.source with self.destination. Used as callback when moving operations.
+        """
         self.setPen(QPen(Qt.black, 3))
         self.setLine(
             QLineF(
-- 
GitLab