Ticket #9041 (closed: fixed)
Refl GUI plotting
Reported by: | Owen Arnold | Owned by: | Keith Brown |
---|---|---|---|
Priority: | critical | Milestone: | Release 3.2 |
Component: | Reflectometry | Keywords: | |
Cc: | Blocked By: | ||
Blocking: | #9039, #9043 | Tester: | Owen Arnold |
Description
We have a requirement for the new GUI that we have a checkable column for choosing to plot. Users are requesting the same feature in the old gui, and I think we should oblige and do that first as it will make it easier to do in the new gui if we've done it first time round on the old gui. This will mean that we can and should fully separate out the plotting aspects of the reflgui from the rest of the code. We should also see performance improvements.
Change History
comment:2 Changed 7 years ago by Keith Brown
- Status changed from assigned to inprogress
Refs #9041 Fixed bug with coadding workspaces
There was a problem where you couldn't comma or colon delimit workspaces in the runs column as the workspaces were overwriting each other. Unrelated to this ticket, but it prevented me from continuing so it had to be fixed in this ticket.
Changeset: 24228ac8b1a25bcfbdd3b33770fb02040a6a2cae
comment:3 Changed 7 years ago by Keith Brown
Refs #9041 UI file modified
The UI has had the extra column added to the table. Nothing extra done to it yet
Changeset: 9a73cba0c447ae3e65bdb6b26a8f10aa940bc84d
comment:4 Changed 7 years ago by Keith Brown
Refs #9041 Separated plot functionality
The new column is now home to the 'Plot' button and plotting is no longer done automatically when processing.
Plot buttons start off as disabled and are enabled when their row has been processed.
Pressing the plot button will rebin and plot the processing output like was done automatically before.
The are a couple of bugs still: There is now less progress indication when processing; and loading a new table, modifying the table, or clearing the table doesn't reset the plot buttons.
Changeset: b7cd66f6632ae7c9b9feef2beb938c2f7f34de71
comment:5 Changed 7 years ago by Keith Brown
- Keywords PatchCandidate added
Electing as a patch candidate as there are a few bugs that were squashed in this ticket that shouldn't have got to master.
comment:6 Changed 7 years ago by Keith Brown
Refs #9041 Plot buttons reset appropriately, plus bugfixes
The plot buttons on a row will now reset to disabled when:
- The table is cleared
- A new table is loaded
- The table is reloaded
- A row is modified (this will only reset the modified row)
- In the rare case when the plot function fails to load cached data
There have also been a fair few bugfixes or improvements:
- File->Close Refl Gui now actually closes it, as until now it had loaded help.
- Clearing, reloading or opening a table will now do a modifed check and offer to save
- Clearing the table no longer sets the mdoified flag
- When processing all, only the lines with data in have their plot buttons enabled
Changeset: cc6f580c2c7ff941094db373b4f276ce316b761a
comment:7 Changed 7 years ago by Keith Brown
- Keywords PatchCandidate removed
Not a PatchCandidate any more, as not all of this ticket is eligable
comment:8 Changed 7 years ago by Keith Brown
Refs #9041 Refactored Save Checks
Having just done the same in #9077 for the patch, I've just refactored the save checks but in a slightly different way
Changeset: e81daed622010a1cc87e6fbba4681574b1626876
comment:9 Changed 7 years ago by Keith Brown
Refs #9041 Tidied up a few things
Removed a bunch of prints that were used for dubgging, and cahnged all other prints to proper logger calls
Removed some line breaks
Changeset: 78f2fdb764db7776aaef7c93fd16b63880092d02
comment:10 Changed 7 years ago by Keith Brown
Refs #9041 Added statusbar progress notification
The Stausbar now updates to let the user know what row is being processed. The font has been made bigger as well.
The process menthod is now a big try-except block to make sure the statusbar has its message cleared if something goes wrong
Changeset: 5faea0176a672d1c6924954f2d33e2553e84c967
comment:11 Changed 7 years ago by Keith Brown
Refs #9041 Statusbar progress
The try-except block changes somehow escaped the last commit. This makes sure that the stausbar clears even if there was an error.
Changeset: 6b4f8484d34957a6a14a2f55bbb05d25865b49a0
comment:12 Changed 7 years ago by Keith Brown
Refs #9041 Merging master in to take care of a merge conflict
Conflict occurred in refl_gui.py
Merge branch origin master into 'feature/9041_refl_gui_plotting'
Conflicts:
Code/Mantid/scripts/Interface/ui/reflectometer/refl_gui.py
Changeset: 9f9dac2d5f658856ff8ff4f6a3da1dc21a683d79
comment:13 Changed 7 years ago by Keith Brown
Refs #9041 Resolve difference in implementation between patch and 3.2
Resolve merge conflicts to develop arising from differences to the way a fix was implementated between #9041 and #9077
Merge branch 'feature/9041_refl_gui_plotting' into develop
Conflicts:
Code/Mantid/scripts/Interface/ui/reflectometer/refl_gui.py
Changeset: 71f5e59ac1e5c252a41e77b4454c854faebfe11d
comment:14 Changed 7 years ago by Keith Brown
Refs #9041 Added debug log for processing
The log is now written to at debug level when it starts processing a new row
Changeset: f0f6fab05bad0575ce3d7d2e0e0a1c089d11b331
comment:15 Changed 7 years ago by Keith Brown
- Status changed from inprogress to verify
- Resolution set to fixed
To Tester:
First test the gui as detailed here, note that it may be slightly out of date: http://www.mantidproject.org/Testing_ISIS_Reflectometry_GUI
Then specifically make sure that the following works:
- The new row to the far right features disabled "plot" buttons when the gui is freshly loaded
- When processing, there shouldn't be any plotting done automatically.
- The plot buttons become active after processing
- When processing all, only the lines with data in have their plot buttons enabled
- The plot buttons to disabled when: The table is cleared, a new table is loaded, the table is reloaded, or a row is modified (this will only reset the modified row)
- File->Close Refl Gui now actually closes it, as until now it had loaded help.
- Clearing, reloading or opening a table will now do a modified check and offer to save
- Clearing the table no longer sets the modified flag
- The statusbar updates when processing to show the row being processed
- The log (at debug level) shows the row being processed
comment:16 Changed 7 years ago by Owen Arnold
- Status changed from verify to verifying
- Tester set to Owen Arnold
comment:17 Changed 7 years ago by Owen Arnold
- Status changed from verifying to reopened
- Resolution fixed deleted
Error on close
File "<Interface>", line 29, in closeEvent NameError: global name 'savecheck' is not defined
comment:18 Changed 7 years ago by Keith Brown
- Status changed from reopened to inprogress
Refs #9041 Forgot a self in the base class
There was a missing 'self 'causing an error
Changeset: 5588fafadefb5a04a0e4deeb687000165113f418
comment:19 Changed 7 years ago by Keith Brown
- Status changed from inprogress to verify
- Resolution set to fixed
should be fixed now
comment:20 Changed 7 years ago by Owen Arnold
- Status changed from verify to reopened
- Resolution fixed deleted
Am now getting this error on reloading the table
Traceback (most recent call last): File "/Applications/MantidPlot.app/scripts/Interface/ui/reflectometer/refl_gui.py", line 56, in on_actionReload_from_Disk_triggered self.reloadTable() File "/Applications/MantidPlot.app/scripts/Interface/ui/reflectometer/refl_gui.py", line 642, in reloadTable logger.error('Could not load file: ' + filename + '. File not found or unable to read from file.') Boost.Python.ArgumentError: Python argument types in Logger.error(Logger, unicode) did not match C++ signature: error(N6Mantid6Kernel6LoggerE {lvalue}, Ss)
comment:21 Changed 7 years ago by Keith Brown
- Status changed from reopened to inprogress
Refs #9041 Re-worked reload functionality
there were a couple of bugs pertaining to the current table and the type of the filename (as it was unicode), they've been fixed. Some instances where the loggere is given a variable have been fxied to convert to string to make sure unicode doesn't cause an error.
The reload functioanlity has also been changed to check if there is a loaded tabled before checking the mod flag
Changeset: 8ae1252683120ada941395feccf0a103fd328888
comment:22 Changed 7 years ago by Keith Brown
- Status changed from inprogress to verify
- Resolution set to fixed
comment:24 Changed 7 years ago by Keith Brown
- Blocking 9039, 9043 added
As this ticket involved heavy changes to the UI file i would expect conflicts from other tickets if they were to attempt a merge, so until this has been tested and merged any other Reflectometry tickets can't be checkbuilt.
comment:25 Changed 7 years ago by Keith Brown
- Blocking 9043 removed
(In #9043) As this ticket involved heavy changes to the UI file i would expect conflicts from other tickets if they were to attempt a merge, so until this has been tested and merged any other Reflectometry tickets can't be checkbuilt.
comment:27 Changed 7 years ago by Owen Arnold
- Status changed from verifying to closed
Merge remote-tracking branch 'origin/feature/9041_refl_gui_plotting'
Full changeset: 317d4b6909d359c378e43a0345a756d3f93adcb0
comment:28 Changed 5 years ago by Stuart Campbell
This ticket has been transferred to github issue 9884