diff --git a/src/bcf/bcf/v2/topic.py b/src/bcf/bcf/v2/topic.py index d5955c5aa0..de68cb5dd7 100644 --- a/src/bcf/bcf/v2/topic.py +++ b/src/bcf/bcf/v2/topic.py @@ -68,6 +68,11 @@ class TopicHandler: """Return the comments of the topic.""" return self.markup.comment if self.markup else [] + @comments.setter + def comments(self, comments: list[mdl.Comment]) -> None: + assert self.markup + self.markup.comment = comments + @property def bim_snippet(self) -> Optional[bytes]: if not self._bim_snippet and self._topic_dir: diff --git a/src/bcf/bcf/v3/topic.py b/src/bcf/bcf/v3/topic.py index b2f2bf4e22..34a9af35fa 100644 --- a/src/bcf/bcf/v3/topic.py +++ b/src/bcf/bcf/v3/topic.py @@ -65,6 +65,15 @@ class TopicHandler: """Return the comments of the topic.""" return self.topic.comments.comment if self.topic.comments else [] + @comments.setter + def comments(self, comments: list[mdl.Comment]) -> None: + topic_comments = self.topic.comments + if topic_comments is None: + if not comments: + return + self.topic.comments = (topic_comments := mdl.TopicComments()) + topic_comments.comment = comments + @property def bim_snippet(self) -> Optional[bytes]: if not self._bim_snippet and self._topic_dir: