Skip to content
Snippets Groups Projects

Move add_ports logic to drag_button

Merged Oscar Gustafsson requested to merge addportrefactor into master
+ 6
11
@@ -235,7 +235,8 @@ class DragButton(QPushButton):
def add_ports(self):
def _determine_port_distance(height, ports):
"""Determine the distance between each port on the side of an operation.
"""
Determine the distance between each port on the side of an operation.
The method returns the distance that each port should have from 0.
"""
return (
@@ -244,23 +245,17 @@ class DragButton(QPushButton):
else [(PORTHEIGHT + GAP) * i for i in range(ports)]
)
def _get_button_height(op):
max_ports = max(op.input_count, op.output_count)
return max(
MINBUTTONSIZE, max_ports * PORTHEIGHT + (max_ports - 1) * GAP
)
op = self.operation
height = self.height()
_output_ports_dist = _determine_port_distance(height, op.output_count)
_input_ports_dist = _determine_port_distance(height, op.input_count)
for i, dist in enumerate(_input_ports_dist):
output_ports_dist = _determine_port_distance(height, op.output_count)
input_ports_dist = _determine_port_distance(height, op.input_count)
for i, dist in enumerate(input_ports_dist):
port = PortButton(">", self, op.input(i), self._window)
self.ports.append(port)
port.move(0, dist)
port.show()
for i, dist in enumerate(_output_ports_dist):
for i, dist in enumerate(output_ports_dist):
port = PortButton(">", self, op.output(i), self._window)
self.ports.append(port)
port.move(MINBUTTONSIZE - PORTWIDTH, dist)
Loading