feat: support multi-line labels

pull/38/head
mingrammer 5 years ago
parent c5c12fe3cf
commit 89ade178ba

@ -260,6 +260,8 @@ class Node:
_icon_dir = None
_icon = None
_height = 1.9
def __init__(self, label: str = ""):
"""Node represents a system component.
@ -272,9 +274,11 @@ class Node:
# fmt: off
# If a node has an icon, increase the height slightly to avoid
# that label being spanned between icon image and white space.
# Increase the height by the number of new lines included in the label.
padding = 0.4 * (label.count('\n'))
self.attrs = {
"shape": "none",
"height": "1.9",
"height": str(self._height + padding),
"image": self._load_icon(),
} if self._icon else {}
# fmt: on

Loading…
Cancel
Save