Skip to content
Snippets Groups Projects
Commit 16cef266 authored by Oscar Gustafsson's avatar Oscar Gustafsson :bicyclist:
Browse files

Add documentation to Arrow

parent 4c40cc7c
No related branches found
No related tags found
No related merge requests found
...@@ -6,7 +6,24 @@ from b_asic.signal import Signal ...@@ -6,7 +6,24 @@ from b_asic.signal import Signal
class Arrow(QGraphicsLineItem): class Arrow(QGraphicsLineItem):
"""Arrow/connection in signal flow graph GUI."""
def __init__(self, source, destination, window, signal=None, parent=None): 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) super().__init__(parent)
self.source = source self.source = source
if signal is None: if signal is None:
...@@ -19,11 +36,13 @@ class Arrow(QGraphicsLineItem): ...@@ -19,11 +36,13 @@ class Arrow(QGraphicsLineItem):
self.destination.moved.connect(self.moveLine) self.destination.moved.connect(self.moveLine)
def contextMenuEvent(self, event): def contextMenuEvent(self, event):
"""Open right-click menu."""
menu = QMenu() menu = QMenu()
menu.addAction("Delete", self.remove) menu.addAction("Delete", self.remove)
menu.exec_(self.cursor().pos()) menu.exec_(self.cursor().pos())
def remove(self): def remove(self):
"""Remove line and connections to signals etc."""
self.signal.remove_destination() self.signal.remove_destination()
self.signal.remove_source() self.signal.remove_source()
self._window.scene.removeItem(self) self._window.scene.removeItem(self)
...@@ -57,6 +76,9 @@ class Arrow(QGraphicsLineItem): ...@@ -57,6 +76,9 @@ class Arrow(QGraphicsLineItem):
del self._window.signalPortDict[self] del self._window.signalPortDict[self]
def moveLine(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.setPen(QPen(Qt.black, 3))
self.setLine( self.setLine(
QLineF( QLineF(
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment