enthought / enthought/traitsui
Tree editor with `refresh` attribute set raises error in debug mode
- Dominant language
- Python
- Stars
- 306
- Forks
- 99
- PR merge metrics
- No merged PRs in 30d
Description
The tree editor with its `refresh` attribute set to an `Event` trait raises an error when the `TRAITS_DEBUG` environment variable is set to `1`.
Similar to issue #368.
```
Traceback (most recent call last):
File "/Users/pzahemszky/.edm/envs/my-env/lib/python3.6/site-packages/traits/trait_notifiers.py", line 524, in _dispatch_change_event
self.dispatch(handler, *args)
File "/Users/pzahemszky/.edm/envs/my-env/lib/python3.6/site-packages/traits/trait_notifiers.py", line 486, in dispatch
handler(*args)
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
File "/Users/pzahemszky/.edm/envs/my-env/lib/python3.6/site-packages/pyface/ui/qt4/tasks/split_editor_area_pane.py", line 173, in add_editor
editor.create(self.active_tabwidget)
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
File "/Users/pzahemszky/.edm/envs/my-env/lib/python3.6/site-packages/traitsui/handler.py", line 451, in edit_traits
args,
File "/Users/pzahemszky/.edm/envs/my-env/lib/python3.6/site-packages/traitsui/view.py", line 462, in ui
ui.ui(parent, kind)
File "/Users/pzahemszky/.edm/envs/my-env/lib/python3.6/site-packages/traitsui/ui.py", line 244, in ui
self.rebuild(self, parent)
File "/Users/pzahemszky/.edm/envs/my-env/lib/python3.6/site-packages/traitsui/qt4/toolkit.py", line 147, in ui_subpanel
ui_panel.ui_subpanel(ui, parent)
File "/Users/pzahemszky/.edm/envs/my-env/lib/python3.6/site-packages/traitsui/qt4/ui_panel.py", line 62, in ui_subpanel
_ui_panel_for(ui, parent, True)
File "/Users/pzahemszky/.edm/envs/my-env/lib/python3.6/site-packages/traitsui/qt4/ui_panel.py", line 68, in _ui_panel_for
ui.control = control = _Panel(ui, parent, is_subpanel).control
File "/Users/pzahemszky/.edm/envs/my-env/lib/python3.6/site-packages/traitsui/qt4/ui_panel.py", line 130, in __init__
self.control = panel(ui)
File "/Users/pzahemszky/.edm/envs/my-env/lib/python3.6/site-packages/traitsui/qt4/ui_panel.py", line 259, in panel
panel = _GroupPanel(content[0], ui).control
File "/Users/pzahemszky/.edm/envs/my-env/lib/python3.6/site-packages/traitsui/qt4/ui_panel.py", line 615, in __init__
layout = self._add_groups(content, inner)
File "/Users/pzahemszky/.edm/envs/my-env/lib/python3.6/site-packages/traitsui/qt4/ui_panel.py", line 696, in _add_groups
panel = _GroupPanel(subgroup, self.ui).control
File "/Users/pzahemszky/.edm/envs/my-env/lib/python3.6/site-packages/traitsui/qt4/ui_panel.py", line 555, in __init__
self._add_splitter_items(content, splitter)
File "/Users/pzahemszky/.edm/envs/my-env/lib/python3.6/site-packages/traitsui/qt4/ui_panel.py", line 648, in _add_splitter_items
panel = _GroupPanel(item, self.ui, suppress_label=True).control
File "/Users/pzahemszky/.edm/envs/my-env/lib/python3.6/site-packages/traitsui/qt4/ui_panel.py", line 615, in __init__
layout = self._add_groups(content, inner)
File "/Users/pzahemszky/.edm/envs/my-env/lib/python3.6/site-packages/traitsui/qt4/ui_panel.py", line 696, in _add_groups
panel = _GroupPanel(subgroup, self.ui).control
File "/Users/pzahemszky/.edm/envs/my-env/lib/python3.6/site-packages/traitsui/qt4/ui_panel.py", line 617, in __init__
layout = self._add_items(content, inner)
File "/Users/pzahemszky/.edm/envs/my-env/lib/python3.6/site-packages/traitsui/qt4/ui_panel.py", line 891, in _add_items
editor.prepare(inner)
File "/Users/pzahemszky/.edm/envs/my-env/lib/python3.6/site-packages/traitsui/editor.py", line 236, in prepare
self.init(parent)
File "/Users/pzahemszky/.edm/envs/my-env/lib/python3.6/site-packages/traitsui/qt4/tree_editor.py", line 193, in init
self.sync_value(factory.refresh, "refresh")
File "/Users/pzahemszky/.edm/envs/my-env/lib/python3.6/site-packages/traitsui/editor.py", line 374, in sync_value
user_value = xgetattr(user_object, xuser_name)
File "/Users/pzahemszky/.edm/envs/my-env/lib/python3.6/site-packages/traits/trait_base.py", line 322, in xgetattr
return getattr(object, names[-1])
AttributeError: The refresh trait of a MyView instance is an 'event', which is write only.
```
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.