Hello,
In (1), I'm surprised that you were allowed to delete the experiment, in
the sense that the interface was actually responsive, because the dialogs
are modal (so block other input) and after the two dialogs are finished
it's in the Tk event loop so I wouldn't have thought you could delete the
experiment until after the configuration steps are completed. But if you
do manage to delete an experiment before everything is set up I'm not too
surprised the code might fall over.
As for (2), I think this is part of a more general issue with horizontal
and vertical strips getting confused in various circumstances. I think
the basic underlying problem is that the Analysis part of the data model
wasn't really designed with strips in mind and it's all a bit of a hack
the way we crowbarred it in. We will try and do better on that front.
Wayne
On Mon, 13 Jul 2009, Patrick van der Wel wrote:
> Hi,
>
> I have just had two errors while using v2.07 - the second one is of more
> interest, but I thought I would mention the first one as well.
>
> (1) this is an earlier error when I decided to delete an experiment (from the
> Analysis Experiments window) during the process of opening a spectra - i.e.
> before the various configuration steps were complete (since I had spotted
> that something was misconfigured in the file's experimental parameters). The
> configuration process that follows the spectrum loading does not seem to be
> able to deal with this... :)
>
> Exception in Tkinter callback
> Traceback (most recent call last):
> File "/opt/ccpnmr/python2.5/lib/python2.5/lib-tk/Tkinter.py", line 1403, in
> __call__
> return self.func(*args)
> File "/opt/ccpnmr/ccpnmr2.0/python/ccpnmr/analysis/popups/OpenSpectrum.py",
> line 260, in openSpectra
> self.parent.finishInitSpectrum(spectrum)
> File "/opt/ccpnmr/ccpnmr2.0/python/ccpnmr/analysis/Analysis.py", line 1110,
> in finishInitSpectrum
> self.initAnalysisSpectrum(spectrum)
> File "/opt/ccpnmr/ccpnmr2.0/python/ccpnmr/analysis/Analysis.py", line 1076,
> in initAnalysisSpectrum
> spectrum.activePeakList = peakList
> File
> "/opt/ccpnmr/temporaryReleaseDir/ccpnmr/ccpnmr2.0/python/ccp/api/nmr/Nmr.py",
> line 16830, in setActivePeakList
> ApiError: ccp.nmr.Nmr.DataSource.setActivePeakList:
> called on deleted object
> Spectrum successfully opened
>
>
> (2) More importantly, after removing a horizontal separator in a window with
> both vertical strips and a horizontal separator. I think the order of events
> was that I removed the hor. separator (which seemed to work) and then
> switched back to the (vertical) 'strips mode' in the GUI. At this point all
> sorts of stuff seemed to go wrong, in the end resulting in the 3D spectra no
> longer being listed in the window (which has shown both 2D and 3D data sets)
>
> It is almost like it managed to 'remove' the Z-axis from that window's
> configuration, at least that is what it looks like, even when I reload the
> (saved) project after closing down Analysis altogether.
>
> (note that the first line might be an unrelated error - I am not sure)
>
> 0:91: execution error: File some object wasnât found. (-43)
> Exception in Tkinter callback
> Traceback (most recent call last):
> File "/opt/ccpnmr/python2.5/lib/python2.5/lib-tk/Tkinter.py", line 1403, in
> __call__
> return self.func(*args)
> File "/opt/ccpnmr/ccpnmr2.0/python/memops/gui/ScrolledMatrix.py", line 636,
> in mouseDoubleClick
> self.editCell(row,col)
> File "/opt/ccpnmr/ccpnmr2.0/python/memops/gui/ScrolledMatrix.py", line 579,
> in editCell
> self.editSetCallback = self.editSetCallbacks[objCol]
> IndexError: list index out of range
> Exception in Tkinter callback
> Traceback (most recent call last):
> File "/opt/ccpnmr/python2.5/lib/python2.5/lib-tk/Tkinter.py", line 1403, in
> __call__
> return self.func(*args)
> File "/opt/ccpnmr/ccpnmr2.0/python/memops/gui/ScrolledMatrix.py", line 636,
> in mouseDoubleClick
> self.editCell(row,col)
> File "/opt/ccpnmr/ccpnmr2.0/python/memops/gui/ScrolledMatrix.py", line 579,
> in editCell
> self.editSetCallback = self.editSetCallbacks[objCol]
> IndexError: list index out of range
> Exception in Tkinter callback
> Traceback (most recent call last):
> File "/opt/ccpnmr/python2.5/lib/python2.5/lib-tk/Tkinter.py", line 1403, in
> __call__
> return self.func(*args)
> File "/opt/ccpnmr/ccpnmr2.0/python/ccpnmr/analysis/popups/WindowPopup.py",
> line 556, in toggleStripDir
> swapStripAxis(self.parent, window)
> File "/opt/ccpnmr/ccpnmr2.0/python/ccpnmr/analysis/core/WindowBasic.py",
> line 1692, in swapStripAxis
> popup.addRow()
> File "/opt/ccpnmr/ccpnmr2.0/python/ccpnmr/analysis/popups/WindowPopup.py",
> line 5088, in addRow
> self.activateStrip(len(yAxisPanel.axisRegions)-1)
> File "/opt/ccpnmr/ccpnmr2.0/python/ccpnmr/analysis/popups/WindowPopup.py",
> line 828, in activateStrip
> self.updateRegionSelectors(num)
> File "/opt/ccpnmr/ccpnmr2.0/python/ccpnmr/analysis/popups/WindowPopup.py",
> line 836, in updateRegionSelectors
> axisRegion = axisPanel.sortedAxisRegions()[num]
> IndexError: list index out of range
> Exception in Tkinter callback
> Traceback (most recent call last):
> File "/opt/ccpnmr/python2.5/lib/python2.5/lib-tk/Tkinter.py", line 1403, in
> __call__
> return self.func(*args)
> File "/opt/ccpnmr/python2.5/lib/python2.5/lib-tk/Tkinter.py", line 498, in
> callit
> func(*args)
> File "/opt/ccpnmr/ccpnmr2.0/python/ccpnmr/analysis/popups/WindowPopup.py",
> line 4519, in <lambda>
> self.after_idle(lambda: self.drawCanvasReal(canvas, row, col))
> File "/opt/ccpnmr/ccpnmr2.0/python/ccpnmr/analysis/popups/WindowPopup.py",
> line 4579, in drawCanvasReal
> self.doCanvas(handler, canvas, row, col)
> File "/opt/ccpnmr/ccpnmr2.0/python/ccpnmr/analysis/core/WindowDraw.py", line
> 1429, in doCanvas
> self.drawView(handler, object, view, row, col)
> File "/opt/ccpnmr/ccpnmr2.0/python/ccpnmr/analysis/core/WindowDraw.py", line
> 1011, in drawView
> self.determineDimRange(view, axisMapping, row, col, axisRegion)
> File "/opt/ccpnmr/ccpnmr2.0/python/ccpnmr/analysis/core/WindowDraw.py", line
> 551, in determineDimRange
> axisRegion = axisPanel.sortedAxisRegions()[n]
> IndexError: list index out of range
> Exception in Tkinter callback
> Traceback (most recent call last):
> File "/opt/ccpnmr/python2.5/lib/python2.5/lib-tk/Tkinter.py", line 1403, in
> __call__
> return self.func(*args)
> File "/opt/ccpnmr/python2.5/lib/python2.5/lib-tk/Tkinter.py", line 498, in
> callit
> func(*args)
> File "/opt/ccpnmr/ccpnmr2.0/python/ccpnmr/analysis/popups/WindowPopup.py",
> line 4519, in <lambda>
> self.after_idle(lambda: self.drawCanvasReal(canvas, row, col))
> File "/opt/ccpnmr/ccpnmr2.0/python/ccpnmr/analysis/popups/WindowPopup.py",
> line 4579, in drawCanvasReal
> self.doCanvas(handler, canvas, row, col)
> File "/opt/ccpnmr/ccpnmr2.0/python/ccpnmr/analysis/core/WindowDraw.py", line
> 1429, in doCanvas
> self.drawView(handler, object, view, row, col)
> File "/opt/ccpnmr/ccpnmr2.0/python/ccpnmr/analysis/core/WindowDraw.py", line
> 1011, in drawView
> self.determineDimRange(view, axisMapping, row, col, axisRegion)
> File "/opt/ccpnmr/ccpnmr2.0/python/ccpnmr/analysis/core/WindowDraw.py", line
> 551, in determineDimRange
> axisRegion = axisPanel.sortedAxisRegions()[n]
> IndexError: list index out of range
>
> And then a series of similar or identical errors:
>
> Exception in Tkinter callback
> Traceback (most recent call last):
> File "/opt/ccpnmr/python2.5/lib/python2.5/lib-tk/Tkinter.py", line 1403, in
> __call__
> return self.func(*args)
> File "/opt/ccpnmr/ccpnmr2.0/python/ccpnmr/analysis/popups/WindowPopup.py",
> line 3721, in motion
> self.showMotion(x, y, canvas)
> File "/opt/ccpnmr/ccpnmr2.0/python/ccpnmr/analysis/popups/WindowPopup.py",
> line 3705, in showMotion
> self.parent.drawCrosshairs(typeLocation, self)
> File "/opt/ccpnmr/ccpnmr2.0/python/ccpnmr/analysis/AnalysisPopup.py", line
> 312, in drawCrosshairs
> popup.drawCrosshairs(typeLocation, originatingWindowPopup)
> File "/opt/ccpnmr/ccpnmr2.0/python/ccpnmr/analysis/popups/WindowPopup.py",
> line 3943, in drawCrosshairs
> drawCanvasCrosshairs(canvases[j][i], xs, ys, originatingWindowPopup)
> File "/opt/ccpnmr/ccpnmr2.0/python/ccpnmr/analysis/popups/WindowPopup.py",
> line 3823, in drawCanvasCrosshairs
> axisRegion = axisRegions[row]
> IndexError: list index out of range
|