Opened 6 years ago

Closed 6 years ago

#2734 closed defect (duplicate)

Closing tools before session restore: 'MainWindow' object has no attribute '_hide_tools_shown_states'

Reported by: chimerax-bug-report@… Owned by: Eric Pettersen
Priority: normal Milestone:
Component: UI Version:
Keywords: Cc:
Blocked By: Blocking:
Notify when closed: Platform: all
Project: ChimeraX

Description

The following bug report has been submitted:
Platform:        Darwin-18.7.0-x86_64-i386-64bit
ChimeraX Version: 0.91 (2019-10-03)
Description
Tried to open saved session.

Log:
UCSF ChimeraX version: 0.91 (2019-10-03)  
© 2016-2019 Regents of the University of California. All rights reserved.  
How to cite UCSF ChimeraX  

> open /Users/benjaminvollmer/Desktop/test.cxs format session

Unable to restore session, resetting.  
  
Traceback (most recent call last):  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/session.py", line 622, in restore  
self.reset()  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/session.py", line 466, in reset  
sm.reset_state(container, self)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/tools.py", line 313, in reset_state  
tool_inst.delete()  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/sideview/tool.py", line 430, in delete  
ToolInstance.delete(self)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/tools.py", line 175, in delete  
self.session.ui.remove_tool(self)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/ui/gui.py", line 294, in remove_tool  
self.main_window.remove_tool(tool_instance)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/ui/gui.py", line 689, in remove_tool  
tw._destroy()  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/ui/gui.py", line 1716, in _destroy  
self.__toolkit.destroy()  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/ui/gui.py", line 1838, in destroy  
self.main_window._tool_window_destroyed(self.tool_window)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/ui/gui.py", line 1500, in _tool_window_destroyed  
if tool_window in self._hide_tools_shown_states:  
AttributeError: 'MainWindow' object has no attribute
'_hide_tools_shown_states'  
  
Traceback (most recent call last):  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/session.py", line 622, in restore  
self.reset()  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/session.py", line 466, in reset  
sm.reset_state(container, self)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/tools.py", line 313, in reset_state  
tool_inst.delete()  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/sideview/tool.py", line 430, in delete  
ToolInstance.delete(self)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/tools.py", line 175, in delete  
self.session.ui.remove_tool(self)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/ui/gui.py", line 294, in remove_tool  
self.main_window.remove_tool(tool_instance)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/ui/gui.py", line 689, in remove_tool  
tw._destroy()  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/ui/gui.py", line 1716, in _destroy  
self.__toolkit.destroy()  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/ui/gui.py", line 1838, in destroy  
self.main_window._tool_window_destroyed(self.tool_window)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/ui/gui.py", line 1500, in _tool_window_destroyed  
if tool_window in self._hide_tools_shown_states:  
AttributeError: 'MainWindow' object has no attribute
'_hide_tools_shown_states'  
  
During handling of the above exception, another exception occurred:  
  
Traceback (most recent call last):  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/ui/gui.py", line 571, in customEvent  
func(*args, **kw)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/ui/widgets/htmlview.py", line 338, in defer  
cxcmd(session, topic)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/ui/widgets/htmlview.py", line 459, in cxcmd  
run(session, cmd)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/commands/run.py", line 31, in run  
results = command.run(text, log=log)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/commands/cli.py", line 2837, in run  
result = ci.function(session, **kw_args)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/commands/open.py", line 68, in open  
path_models = session.models.open(paths, format=format, name=name, **kw)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/models.py", line 640, in open  
session, filenames, format=format, name=name, **kw)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/io.py", line 489, in open_multiple_data  
models, status = open_data(session, fspec, format=format, name=name, **kw)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/io.py", line 445, in open_data  
models, status = open_func(*args, **kw)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/session.py", line 883, in open  
session.restore(stream, path=path, resize_window=resize_window)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/session.py", line 659, in restore  
self.reset()  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/session.py", line 466, in reset  
sm.reset_state(container, self)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/tools.py", line 313, in reset_state  
tool_inst.delete()  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/sideview/tool.py", line 427, in delete  
self.opengl_canvas.close()  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/sideview/tool.py", line 106, in close  
self.view.remove_overlays([self.applique])  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/graphics/view.py", line 405, in remove_overlays  
o.delete()  
AttributeError: 'NoneType' object has no attribute 'delete'  
  
AttributeError: 'NoneType' object has no attribute 'delete'  
  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/graphics/view.py", line 405, in remove_overlays  
o.delete()  
  
See log for complete Python traceback.  
  

> open /Users/benjaminvollmer/Desktop/test.cxs format session

Unable to restore session, resetting.  
  
Traceback (most recent call last):  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/session.py", line 622, in restore  
self.reset()  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/session.py", line 466, in reset  
sm.reset_state(container, self)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/tools.py", line 313, in reset_state  
tool_inst.delete()  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/sideview/tool.py", line 427, in delete  
self.opengl_canvas.close()  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/sideview/tool.py", line 106, in close  
self.view.remove_overlays([self.applique])  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/graphics/view.py", line 405, in remove_overlays  
o.delete()  
AttributeError: 'NoneType' object has no attribute 'delete'  
  
Traceback (most recent call last):  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/session.py", line 622, in restore  
self.reset()  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/session.py", line 466, in reset  
sm.reset_state(container, self)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/tools.py", line 313, in reset_state  
tool_inst.delete()  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/sideview/tool.py", line 427, in delete  
self.opengl_canvas.close()  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/sideview/tool.py", line 106, in close  
self.view.remove_overlays([self.applique])  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/graphics/view.py", line 405, in remove_overlays  
o.delete()  
AttributeError: 'NoneType' object has no attribute 'delete'  
  
During handling of the above exception, another exception occurred:  
  
Traceback (most recent call last):  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/ui/gui.py", line 571, in customEvent  
func(*args, **kw)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/ui/widgets/htmlview.py", line 338, in defer  
cxcmd(session, topic)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/ui/widgets/htmlview.py", line 459, in cxcmd  
run(session, cmd)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/commands/run.py", line 31, in run  
results = command.run(text, log=log)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/commands/cli.py", line 2837, in run  
result = ci.function(session, **kw_args)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/commands/open.py", line 68, in open  
path_models = session.models.open(paths, format=format, name=name, **kw)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/models.py", line 640, in open  
session, filenames, format=format, name=name, **kw)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/io.py", line 489, in open_multiple_data  
models, status = open_data(session, fspec, format=format, name=name, **kw)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/io.py", line 445, in open_data  
models, status = open_func(*args, **kw)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/session.py", line 883, in open  
session.restore(stream, path=path, resize_window=resize_window)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/session.py", line 659, in restore  
self.reset()  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/session.py", line 466, in reset  
sm.reset_state(container, self)  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/tools.py", line 313, in reset_state  
tool_inst.delete()  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/sideview/tool.py", line 427, in delete  
self.opengl_canvas.close()  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/sideview/tool.py", line 106, in close  
self.view.remove_overlays([self.applique])  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/graphics/view.py", line 405, in remove_overlays  
o.delete()  
AttributeError: 'NoneType' object has no attribute 'delete'  
  
AttributeError: 'NoneType' object has no attribute 'delete'  
  
File
"/Applications/ChimeraX_Daily.app/Contents/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-
packages/chimerax/core/graphics/view.py", line 405, in remove_overlays  
o.delete()  
  
See log for complete Python traceback.  
  




OpenGL version: 4.1 NVIDIA-12.0.24 355.11.10.50.10.103
OpenGL renderer: NVIDIA GeForce GT 750M OpenGL Engine
OpenGL vendor: NVIDIA Corporation

Change History (2)

comment:1 by Eric Pettersen, 6 years ago

Component: UnassignedUI
Owner: set to Eric Pettersen
Platform: all
Project: ChimeraX
Status: newaccepted
Summary: ChimeraX bug report submissionClosing tools before session restore: 'MainWindow' object has no attribute '_hide_tools_shown_states'

comment:2 by Eric Pettersen, 6 years ago

Resolution: duplicate
Status: acceptedclosed
Note: See TracTickets for help on using tickets.