From 45a45dc69e793ccc163ec3ea2f8014b794cca230 Mon Sep 17 00:00:00 2001 From: Daniel Rojas Date: Sun, 15 Nov 2020 20:38:47 +0100 Subject: [PATCH] Hide names for auto-generated items Both connectors and cables. Auto-generated designators now start with `__` instead of `_`. --- src/wireviz/DataClasses.py | 11 +++++++---- src/wireviz/wireviz.py | 2 +- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/wireviz/DataClasses.py b/src/wireviz/DataClasses.py index e6f82e5..5201ac2 100644 --- a/src/wireviz/DataClasses.py +++ b/src/wireviz/DataClasses.py @@ -133,7 +133,8 @@ class Connector: raise Exception('Pins are not unique') if self.show_name is None: - self.show_name = self.style != 'simple' # hide designators for simple connectors by default + # hide designators for simple and for auto-generated connectors by default + self.show_name = (self.style != 'simple' and self.name[0:2] != '__') if self.show_pincount is None: self.show_pincount = self.style != 'simple' # hide pincount for simple (1 pin) connectors by default @@ -183,7 +184,7 @@ class Cable: colors: List[Colors] = field(default_factory=list) wirelabels: List[Wire] = field(default_factory=list) color_code: Optional[ColorScheme] = None - show_name: bool = True + show_name: Optional[bool] = None show_wirecount: bool = True show_wirenumbers: Optional[bool] = None ignore_in_bom: bool = False @@ -249,9 +250,11 @@ class Cable: else: raise Exception('lists of part data are only supported for bundles') - # by default, show wire numbers for cables, hide for bundles + if self.show_name is None: + self.show_name = self.name[0:2] != '__' # hide designators for auto-generated cables by default + if not self.show_wirenumbers: - self.show_wirenumbers = self.category != 'bundle' + self.show_wirenumbers = self.category != 'bundle' # by default, show wire numbers for cables, hide for bundles for i, item in enumerate(self.additional_components): if isinstance(item, dict): diff --git a/src/wireviz/wireviz.py b/src/wireviz/wireviz.py index c81dd98..2b7f77d 100755 --- a/src/wireviz/wireviz.py +++ b/src/wireviz/wireviz.py @@ -80,7 +80,7 @@ def parse(yaml_input: str, file_out: (str, Path) = None, return_types: (None, st template, designator = inp.split('.') # TODO: handle more than one `.` if designator == '': autogenerated_designators[template] = autogenerated_designators.get(template, 0) + 1 - designator = f'_{template}_{autogenerated_designators[template]}' + designator = f'__{template}_{autogenerated_designators[template]}' # check if redefining existing component to different template if designator in designators_and_templates: if designators_and_templates[designator] != template: