Ticket #5222 (closed: fixed)
Some potentially dangerous _qti references still exist
Reported by: | Martyn Gigg | Owned by: | Martyn Gigg |
---|---|---|---|
Priority: | critical | Milestone: | Release 2.1 |
Component: | Mantid | Keywords: | |
Cc: | Blocked By: | ||
Blocking: | Tester: | Mathieu Doucet |
Description
No module should be calling the bare _qti module any longer. Most references are benign as they are just checking if we are in the GUI. Some, however, need replacing as they call functions in an unsafe manner.
Ticket #5221 will clear up the benign references after the release.
Attachments
Change History
comment:2 Changed 8 years ago by Martyn Gigg
Remove potentially dangerous _qti calls. Refs #5222
They call GUI methods and so need to be correctly proxied.
Changeset: fd2540a3ed2b69e2b872795abf916b2db5a52fe3
comment:3 Changed 8 years ago by Martyn Gigg
- Status changed from accepted to verify
- Resolution set to fixed
comment:4 Changed 8 years ago by Mathieu Doucet
- Status changed from verify to verifying
- Tester set to Mathieu Doucet
comment:5 Changed 8 years ago by Mathieu Doucet
- Status changed from verifying to reopened
- Resolution fixed deleted
I get the following error when using the stitching functionality:
Traceback (most recent call last): File "/home/m2d/git/mantid/Code/Mantid/scripts/Interface/reduction_gui/widgets/sans/stitcher.py", line 183, in _low_range RangeSelector.connect(ws_list, call_back=call_back) File "/home/m2d/git/mantid/Code/Mantid/scripts/LargeScaleStructures/data_stitching.py", line 79, in connect x_title=x_title, log_scale=log_scale) File "/home/m2d/git/mantid/Code/Mantid/scripts/LargeScaleStructures/data_stitching.py", line 43, in connect g.close() File "/home/m2d/mantid_build/release/bin/mantidplotpy/proxies.py", line 124, in close self._kill_object) TypeError: arguments did not match any overloaded call: QObject.disconnect(QObject, SIGNAL(), QObject, SLOT()): argument 1 has unexpected type 'NoneType' QObject.disconnect(QObject, SIGNAL(), callable): argument 1 has unexpected type 'NoneType'
To reproduce the error:
- Start the ORNL SANS UI
- Go to the Data Stitching tab, then load the two I(Q) files attached to this ticket in the Low Q and Medium Q boxes using the Browse button.
- Once the two file paths are in their respective fields, hit the Pick Overlap Region button. You'll see the error message. You are supposed to see the two data sets plotted together in a single plot, with two vertical lines to pick a range. The Min Q and Max Q values on the interface should update as you move the vertical lines.
comment:7 Changed 8 years ago by Martyn Gigg
- Status changed from accepted to verify
- Resolution set to fixed
comment:8 Changed 8 years ago by Martyn Gigg
Fix ORNL SANS data stitching after _qti changes. Refs #5222
A None object was passed to the signal disconnection and PyQt raises an error on such a situation.
Changeset: e11e5057d94c7a7e36ce0802f4f8f601390c0832
comment:10 Changed 8 years ago by Martyn Gigg
- Status changed from verifying to reopened
- Resolution fixed deleted
comment:11 Changed 8 years ago by Martyn Gigg
Do not proxy None objects in GUI calls. Refs #5222
This means something sensible happens when doing 'g is None' on a returned GUI object.
Changeset: 8f1d75e1a9664b3c6f7d846e37a40030d471b8b4
comment:12 Changed 8 years ago by Martyn Gigg
Remove unnecessary _getHeldObject calls. Refs #5222
The returns from the GUI calls should do the expected thing now.
Changeset: 685d8e6881b99278003f38868d56ad4f439c73ef
comment:14 Changed 8 years ago by Martyn Gigg
- Status changed from accepted to verify
- Resolution set to fixed
comment:15 Changed 8 years ago by Mathieu Doucet
- Status changed from verify to verifying
Tested all the UI elements that use the affected call and they all work.
comment:17 Changed 8 years ago by Martyn Gigg
Remove potentially dangerous _qti calls. Refs #5222
They call GUI methods and so need to be correctly proxied.
Changeset: fd2540a3ed2b69e2b872795abf916b2db5a52fe3
comment:18 Changed 8 years ago by Martyn Gigg
Fix ORNL SANS data stitching after _qti changes. Refs #5222
A None object was passed to the signal disconnection and PyQt raises an error on such a situation.
Changeset: e11e5057d94c7a7e36ce0802f4f8f601390c0832
comment:19 Changed 8 years ago by Martyn Gigg
Do not proxy None objects in GUI calls. Refs #5222
This means something sensible happens when doing 'g is None' on a returned GUI object.
Changeset: 8f1d75e1a9664b3c6f7d846e37a40030d471b8b4
comment:20 Changed 8 years ago by Martyn Gigg
Remove unnecessary _getHeldObject calls. Refs #5222
The returns from the GUI calls should do the expected thing now.
Changeset: 685d8e6881b99278003f38868d56ad4f439c73ef
comment:21 Changed 5 years ago by Stuart Campbell
This ticket has been transferred to github issue 6068