pauldmccarthy / fsleyes

This is a mirror. Feel free to use the issue tracker. PRs welcome.
https://git.fmrib.ox.ac.uk/fsl/fsleyes/fsleyes/
Other
22 stars 11 forks source link

Show/hide overlay & Atlas errors #101

Closed MichaelSimpson01 closed 2 years ago

MichaelSimpson01 commented 2 years ago

Hello,

I am experiencing several errors with FSLeyes after I installed FSL onto a MacBook Pro (10.15.7). When selecting the 'show/hide this overlay' option, or the 'show/hide' option of atlases, I receive the following errors:

For 'show/hide this overlay':

Traceback (most recent call last):
  File "/usr/local/fsl/fslpython/envs/fslpython/lib/python3.8/site-packages/fsleyes/controls/overlaylistpanel.py", line 577, in __onVisButton
    with props.suppress(self.__display, 'enabled', self.__name):
  File "/usr/local/fsl/fslpython/envs/fslpython/lib/python3.8/contextlib.py", line 113, in __enter__
    return next(self.gen)
  File "/usr/local/fsl/fslpython/envs/fslpython/lib/python3.8/site-packages/fsleyes_props/suppress.py", line 47, in suppress
    states = [hasProps.getNotificationState(p) for p in propNames]
  File "/usr/local/fsl/fslpython/envs/fslpython/lib/python3.8/site-packages/fsleyes_props/suppress.py", line 47, in <listcomp>
    states = [hasProps.getNotificationState(p) for p in propNames]
  File "/usr/local/fsl/fslpython/envs/fslpython/lib/python3.8/site-packages/fsleyes_props/properties.py", line 846, in getNotificationState
    return self.getPropVal(propName).getNotificationState()
  File "/usr/local/fsl/fslpython/envs/fslpython/lib/python3.8/site-packages/fsleyes_props/properties.py", line 797, in getPropVal
    return self.getProp(propName).getPropVal(self)
  File "/usr/local/fsl/fslpython/envs/fslpython/lib/python3.8/site-packages/fsleyes_props/properties.py", line 791, in getProp
    return getattr(cls, propName)
AttributeError: type object 'Display' has no attribute 'ListItemWidget_140727265798752'

And for the 'show/hide' option of atlases:

WARNING              idle.py  578: __idleLoop      - Idle task realOnLoad crashed - AttributeError: type object 'OverlayList' has no attribute 'AtlasPanel_140728063212992'
Traceback (most recent call last):
  File "/usr/local/fsl/fslpython/envs/fslpython/lib/python3.8/site-packages/fsl/utils/idle.py", line 576, in __idleLoop
    task.task(*task.args, **task.kwargs)
  File "/usr/local/fsl/fslpython/envs/fslpython/lib/python3.8/site-packages/fsleyes/plugins/controls/atlaspanel/atlaspanel.py", line 506, in realOnLoad
    with props.suppress(self.overlayList, 'overlays', self.name):
  File "/usr/local/fsl/fslpython/envs/fslpython/lib/python3.8/contextlib.py", line 113, in __enter__
    return next(self.gen)
  File "/usr/local/fsl/fslpython/envs/fslpython/lib/python3.8/site-packages/fsleyes_props/suppress.py", line 47, in suppress
    states = [hasProps.getNotificationState(p) for p in propNames]
  File "/usr/local/fsl/fslpython/envs/fslpython/lib/python3.8/site-packages/fsleyes_props/suppress.py", line 47, in <listcomp>
    states = [hasProps.getNotificationState(p) for p in propNames]
  File "/usr/local/fsl/fslpython/envs/fslpython/lib/python3.8/site-packages/fsleyes_props/properties.py", line 846, in getNotificationState
    return self.getPropVal(propName).getNotificationState()
  File "/usr/local/fsl/fslpython/envs/fslpython/lib/python3.8/site-packages/fsleyes_props/properties.py", line 797, in getPropVal
    return self.getProp(propName).getPropVal(self)
  File "/usr/local/fsl/fslpython/envs/fslpython/lib/python3.8/site-packages/fsleyes_props/properties.py", line 791, in getProp
    return getattr(cls, propName)
AttributeError: type object 'OverlayList' has no attribute 'AtlasPanel_140728063212992'

Any help would be highly appreciated!

Thank you, Michael

pauldmccarthy commented 2 years ago

Hi @MichaelSimpson01, this issue should be resolved if you update to the latest available version of FSLeyes (the version that gets installed with the latest FSL is slightly out of date). You should be able to update your FSLeyes by running this command (prefixing with sudo if needed):

$FSLDIR/fslpython/bin/conda update -n fslpython -c conda-forge --update-all fsleyes
MichaelSimpson01 commented 2 years ago

Hi @pauldmccarthy, thank you for such a prompt reply! In my previous attempts to update FSLeyes I did not use the 'sudo' prefix (apologies for my ignorance). It is working now, thank you again, much appreciated.