From 0c68dce3c71fb5a7312a3ba4f278260aeadf692d Mon Sep 17 00:00:00 2001 From: Kevin Greene Date: Fri, 10 Jul 2020 11:11:40 -0700 Subject: [PATCH] Fix python implementation of style_classes (#601) --- python/xviz_avs/builder/metadata.py | 6 +++--- python/xviz_avs/builder/primitive.py | 2 +- python/xviz_avs/message.py | 3 +++ 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/python/xviz_avs/builder/metadata.py b/python/xviz_avs/builder/metadata.py index 7c2f62b38..6325be8ac 100644 --- a/python/xviz_avs/builder/metadata.py +++ b/python/xviz_avs/builder/metadata.py @@ -103,9 +103,9 @@ def style_class(self, name, style): if not self._stream_id: self._logger.error('A stream must set before adding a style rule.') return self - - stream_rule = edict(name=name, style=build_object_style(style)) - self._temp_stream.style_classes.append(stream_rule) + style_class = self._temp_stream.style_classes.add() + style_class.name = name + style_class.style.MergeFrom(build_object_style(style)) return self def log_info(self, data): diff --git a/python/xviz_avs/builder/primitive.py b/python/xviz_avs/builder/primitive.py index 5a9e64500..ce84ab0e0 100644 --- a/python/xviz_avs/builder/primitive.py +++ b/python/xviz_avs/builder/primitive.py @@ -230,7 +230,7 @@ def _format_primitive(self): base.style.MergeFrom(build_object_style(self._style)) if self._classes: have_base = True - base.classes = self._classes + base.classes.extend(self._classes) if have_base: obj.base.MergeFrom(base) diff --git a/python/xviz_avs/message.py b/python/xviz_avs/message.py index 37edc0c45..860fca4ba 100644 --- a/python/xviz_avs/message.py +++ b/python/xviz_avs/message.py @@ -108,6 +108,9 @@ def to_object(self, unravel: bool = True) -> Dict: for sdata in dataobj['streams'].values(): if 'stream_style' in sdata: _unravel_style_object(sdata['stream_style']) + if 'style_classes' in sdata: + for style_class in sdata['style_classes']: + _unravel_style_object(style_class['style']) return dataobj