Skip to content

Commit 330371b

Browse files
committed
feat(segmentation): add undo command grouping
1 parent 4d7356f commit 330371b

2 files changed

Lines changed: 9 additions & 0 deletions

File tree

trame_slicer/segmentation/segment_modifier.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import enum
44
import logging
55
import math
6+
from collections.abc import Generator
67
from enum import auto
78

89
from numpy.typing import NDArray
@@ -380,3 +381,6 @@ def is_source_volume_intensity_mask_enabled(self) -> bool:
380381
if not self.segment_editor_node:
381382
return False
382383
return self.segment_editor_node.GetSourceVolumeIntensityMask()
384+
385+
def group_undo_commands(self, text: str = "") -> Generator:
386+
return self.segmentation.group_undo_commands(text)

trame_slicer/segmentation/segmentation.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
from __future__ import annotations
22

3+
from collections.abc import Generator
4+
35
from numpy.typing import NDArray
46
from slicer import (
57
vtkMRMLSegmentationNode,
@@ -272,3 +274,6 @@ def set_segment_labelmap(self, segment_id, label_map: vtkImageData | NDArray):
272274

273275
def get_display(self) -> SegmentationDisplay | None:
274276
return SegmentationDisplay(self._segmentation_node.GetDisplayNode()) if self._segmentation_node else None
277+
278+
def group_undo_commands(self, text: str = "") -> Generator:
279+
return self.undo_stack.group_undo_commands(text)

0 commit comments

Comments
 (0)