diff --git a/src/wireviz/wv_dataclasses.py b/src/wireviz/wv_dataclasses.py index c9bacda..864ed00 100644 --- a/src/wireviz/wv_dataclasses.py +++ b/src/wireviz/wv_dataclasses.py @@ -309,7 +309,7 @@ class GraphicalComponent(Component): # abstract class, for future use class TopLevelGraphicalComponent(GraphicalComponent): # abstract class # component properties designator: Designator = None - color: Optional[SingleColor] = None + color: Optional[MultiColor] = None image: Optional[Image] = None additional_components: List[AdditionalComponent] = field(default_factory=list) notes: Optional[MultilineHypertext] = None @@ -367,7 +367,7 @@ class Connector(TopLevelGraphicalComponent): self.bgcolor = SingleColor(self.bgcolor) self.bgcolor_title = SingleColor(self.bgcolor_title) - self.color = SingleColor(self.color) + self.color = MultiColor(self.color) # connectors do not support custom qty or amount self.qty = NumberAndUnit(1, None) @@ -637,7 +637,7 @@ class Cable(TopLevelGraphicalComponent): self.bgcolor = SingleColor(self.bgcolor) self.bgcolor_title = SingleColor(self.bgcolor_title) - self.color = SingleColor(self.color) + self.color = MultiColor(self.color) if isinstance(self.image, dict): self.image = Image(**self.image) diff --git a/src/wireviz/wv_graphviz.py b/src/wireviz/wv_graphviz.py index 569ccd6..86a5116 100644 --- a/src/wireviz/wv_graphviz.py +++ b/src/wireviz/wv_graphviz.py @@ -450,7 +450,16 @@ def colored_cell(contents, bgcolor) -> Td: def colorbar_cell(color) -> Td: - return Td("", bgcolor=color.html, width=4) + # return Td("", bgcolor=color.html, width=4) + cells = [ + Td( + "", + bgcolor=subcolor.html, + width=8, + ) + for subcolor in color.colors + ] + return Td(Table(Tr(cells), border=0, cellspacing=0), cellspacing=0, cellpadding=0) def color_minitable(color: Optional[MultiColor]) -> Union[Table, str]: