Commit 0c6fcf013b17a731b9ef692843007082405740d5
1 parent
ba2e8753
Exists in
master
fix error with indexes on loading mask from inv3 project
Showing
2 changed files
with
8 additions
and
5 deletions
Show diff stats
invesalius/control.py
@@ -579,13 +579,16 @@ class Controller(): | @@ -579,13 +579,16 @@ class Controller(): | ||
579 | Publisher.sendMessage('Update AUI') | 579 | Publisher.sendMessage('Update AUI') |
580 | 580 | ||
581 | if len(proj.mask_dict): | 581 | if len(proj.mask_dict): |
582 | + self.Slice.current_mask = None | ||
582 | mask_index = len(proj.mask_dict) -1 | 583 | mask_index = len(proj.mask_dict) -1 |
583 | - for m in proj.mask_dict.values(): | 584 | + for key, m in proj.mask_dict.items(): |
584 | Publisher.sendMessage('Add mask', mask=m) | 585 | Publisher.sendMessage('Add mask', mask=m) |
585 | if m.is_shown: | 586 | if m.is_shown: |
586 | - self.Slice.current_mask = proj.mask_dict[mask_index] | ||
587 | - Publisher.sendMessage('Show mask', index=m.index, value=True) | ||
588 | - Publisher.sendMessage('Change mask selected', index=m.index) | 587 | + self.Slice.current_mask = m |
588 | + visible_mask_idx = key | ||
589 | + if self.Slice.current_mask is not None: | ||
590 | + Publisher.sendMessage('Show mask', index=visible_mask_idx, value=True) | ||
591 | + Publisher.sendMessage('Change mask selected', index=visible_mask_idx) | ||
589 | else: | 592 | else: |
590 | mask_name = const.MASK_NAME_PATTERN % (1,) | 593 | mask_name = const.MASK_NAME_PATTERN % (1,) |
591 | 594 |
invesalius/project.py
@@ -338,7 +338,7 @@ class Project(metaclass=Singleton): | @@ -338,7 +338,7 @@ class Project(metaclass=Singleton): | ||
338 | m = msk.Mask() | 338 | m = msk.Mask() |
339 | m.spacing = self.spacing | 339 | m.spacing = self.spacing |
340 | m.OpenPList(filepath) | 340 | m.OpenPList(filepath) |
341 | - self.mask_dict[m.index] = m | 341 | + self.mask_dict[int(index)] = m |
342 | 342 | ||
343 | # Opening the surfaces | 343 | # Opening the surfaces |
344 | self.surface_dict = {} | 344 | self.surface_dict = {} |