Ticket #6805 (closed: fixed)
Refactor the SelectionNotificationService class to not use the DataService class
Reported by: | Russell Taylor | Owned by: | Dennis Mikkelson |
---|---|---|---|
Priority: | critical | Milestone: | Release 2.6 |
Component: | Framework | Keywords: | Maintenance |
Cc: | mikkelsond@… | Blocked By: | |
Blocking: | Tester: | Russell Taylor |
Description (last modified by Russell Taylor) (diff)
As it's only the notifications that are needed, this shouldn't be relying on the entire DataService. Refactor to just include what's required using whatever notification method works best (Poco or Qt signals/slots).
Change History
comment:1 Changed 7 years ago by Nick Draper
- Keywords Maintenance added
- Priority changed from blocker to critical
comment:2 Changed 7 years ago by Nick Draper
- Keywords Maintenance removed
- Priority changed from critical to major
comment:4 Changed 7 years ago by Russell Taylor
- Keywords Maintenance added
- Cc mikkelsond@… added
- Priority changed from major to critical
- Description modified (diff)
- Summary changed from Remove the SelectionNotificationService class and use the upgraded AnalysisDataService instead to Refactor the SelectionNotificationService class to not use the DataService class
comment:5 Changed 7 years ago by Dennis Mikkelson
- Owner changed from Ruth Mikkelson to Dennis Mikkelson
- Status changed from new to assigned
comment:7 Changed 7 years ago by Dennis Mikkelson
6805 Refactor the SelectionNotificationService
Initial version of new Qt based SelectionNotificationService class.
refs #6805
Changeset: 800ab533816582006a314e5100bec3ad8eaa6144
comment:8 Changed 7 years ago by Dennis Mikkelson
6805 Refactor the SelectionNotificationService
Adding SelectionNotificationFiles
refs #6805
Changeset: 441e753e786be6077c30da2320b441badac78aba
comment:9 Changed 7 years ago by Dennis Mikkelson
RE 6805 Refactor SelectionNotificationService class
Added basic test that the singleton can be accessed and the method to emit the signal can be called.
refs #6805
Changeset: 34604961108fa51fa99c30bc0dfbedf6fd01276d
comment:10 Changed 7 years ago by Dennis Mikkelson
6805 Refactor the SelectionNotificationService
Initial version of new Qt based SelectionNotificationService class.
refs #6805
Changeset: 800ab533816582006a314e5100bec3ad8eaa6144
comment:11 Changed 7 years ago by Dennis Mikkelson
6805 Refactor the SelectionNotificationService
Adding SelectionNotificationFiles
refs #6805
Changeset: 441e753e786be6077c30da2320b441badac78aba
comment:12 Changed 7 years ago by Dennis Mikkelson
RE 6805 Refactor SelectionNotificationService class
Added basic test that the singleton can be accessed and the method to emit the signal can be called.
refs #6805
Changeset: 34604961108fa51fa99c30bc0dfbedf6fd01276d
comment:13 Changed 7 years ago by Dennis Mikkelson
RE 6805 Refactor SelectionNotificationService class
Commenting out test, due to link error on windows: SelectionNotificationServiceTest.obj : error LNK2019: unresolved external symbol "public: static struct QMetaObject const MantidQt::API::SelectionNotificationServiceImpl::staticMetaObject
I don't have access to a windows development system to fix this.
refs #6805
Changeset: 18889adb8f428b3128c089c1830aa66a92083f63
comment:14 Changed 7 years ago by Dennis Mikkelson
RE 6805 Refactor SelectionNotificationService class
Commenting out test, due to link error on windows: SelectionNotificationServiceTest.obj : error LNK2019: unresolved external symbol "public: static struct QMetaObject const MantidQt::API::SelectionNotificationServiceImpl::staticMetaObject
I don't have access to a windows development system to fix this.
refs #6805
Changeset: 18889adb8f428b3128c089c1830aa66a92083f63
comment:15 Changed 7 years ago by Dennis Mikkelson
RE 6805 Refactor SelectionNotificationService class
Added bool parameter to message, to indicate whether the Q-vector is in lab or sample coordinates.
refs #6805
Changeset: 7e66cbc6059c037e376df3306a2d54aecf04f3a9
comment:16 Changed 7 years ago by Dennis Mikkelson
RE 6805 Refactor SelectionNotificationService class
Added bool parameter to message, to indicate whether the Q-vector is in lab or sample coordinates.
refs #6805
Changeset: 7e66cbc6059c037e376df3306a2d54aecf04f3a9
comment:17 Changed 7 years ago by Ruth Mikkelson
Refs #6805 Incorporated boolean for selected Q type(lab/sample)
Also, more info will now be given based on peak in workspace closes to given peak.
Changeset: 9753283a3de2c5fb919159f49010e405931d476d
comment:18 Changed 7 years ago by Ruth Mikkelson
Refs #6805 Incorporated boolean for selected Q type(lab/sample)
Also, more info will now be given based on peak in workspace closes to given peak.
Changeset: 9753283a3de2c5fb919159f49010e405931d476d
comment:19 Changed 7 years ago by Dennis Mikkelson
RE 6805 Refactor SelectionNotificationService class
Removed original SelectionNotificationService .h, .cpp and Test files from Framework/API/, since they have been replaced by similarly named files using Qt signals and slots in MantidQt/API/.
refs #6805
Changeset: 59f94ff21a3b05adc3a7a926bd9a63d05ee08891
comment:20 Changed 7 years ago by Dennis Mikkelson
RE 6805 Refactor SelectionNotificationService class
Removed original SelectionNotificationService .h, .cpp and Test files from Framework/API/, since they have been replaced by similarly named files using Qt signals and slots in MantidQt/API/.
refs #6805
Changeset: 59f94ff21a3b05adc3a7a926bd9a63d05ee08891
comment:21 Changed 7 years ago by Dennis Mikkelson
RE 6805 refactor SelectionNotificationService class
Fixed error in MantidQt/API/CMakeLists.txt, as suggested by Russell. Added basic test of SelectionNotificationService.
refs #6805 _
Changeset: ec7da5bbcc5bea72fb0ec800117b44afed516590
comment:22 Changed 7 years ago by Dennis Mikkelson
RE 6805 refactor SelectionNotificationService class
Fixed error in MantidQt/API/CMakeLists.txt, as suggested by Russell. Added basic test of SelectionNotificationService.
refs #6805 _
Changeset: ec7da5bbcc5bea72fb0ec800117b44afed516590
comment:23 Changed 7 years ago by Dennis Mikkelson
- Status changed from accepted to verify
- Resolution set to fixed
NOTES TO TESTER:
- The new SelectionNotificationService files using Qt signals/slots are:
.../MantidQt/API/inc/MantidQtAPI/SelectionNotificationService.h
.../MantidQt/API/src/SelectionNotificationService.cpp
.../MantidQt/API/test/SelectionNotificationServiceTest.h
- They are currently only used in a loop back test in MantidEV:
.../MantidQt/CustomInterfaces/src/MantidEV.cpp, lines 188 and 1064
- As shown by the lines in MantidEV, a class wanting to select a location in reciprocal space just has to call a method on the singleton as:
SelectionNotificationService::Instance().sendQPointSelection()
- A class that needs to know about a selected location just needs to have an appropriate slot and connect to the QPointSelection_signal.
- The original SelectionNotificationService files in .../Framework/API, which derived from DataService, have been removed from the source tree.
comment:24 Changed 7 years ago by Russell Taylor
- Status changed from verify to verifying
- Tester set to Russell Taylor
comment:25 Changed 7 years ago by Dennis Mikkelson
RE 6805 refactor SelectionNotificationService class
Fixed doxygen warning.
refs #6805 _
Changeset: fbed8529ecba9a27ea93b92aecf6b03dc9005d02
comment:26 Changed 7 years ago by Dennis Mikkelson
6805 Refactor the SelectionNotificationService
Initial version of new Qt based SelectionNotificationService class.
refs #6805
Changeset: 800ab533816582006a314e5100bec3ad8eaa6144
comment:27 Changed 7 years ago by Dennis Mikkelson
6805 Refactor the SelectionNotificationService
Adding SelectionNotificationFiles
refs #6805
Changeset: 441e753e786be6077c30da2320b441badac78aba
comment:28 Changed 7 years ago by Dennis Mikkelson
RE 6805 Refactor SelectionNotificationService class
Added basic test that the singleton can be accessed and the method to emit the signal can be called.
refs #6805
Changeset: 34604961108fa51fa99c30bc0dfbedf6fd01276d
comment:29 Changed 7 years ago by Dennis Mikkelson
RE 6805 Refactor SelectionNotificationService class
Commenting out test, due to link error on windows: SelectionNotificationServiceTest.obj : error LNK2019: unresolved external symbol "public: static struct QMetaObject const MantidQt::API::SelectionNotificationServiceImpl::staticMetaObject
I don't have access to a windows development system to fix this.
refs #6805
Changeset: 18889adb8f428b3128c089c1830aa66a92083f63
comment:30 Changed 7 years ago by Dennis Mikkelson
RE 6805 Refactor SelectionNotificationService class
Added bool parameter to message, to indicate whether the Q-vector is in lab or sample coordinates.
refs #6805
Changeset: 7e66cbc6059c037e376df3306a2d54aecf04f3a9
comment:31 Changed 7 years ago by Ruth Mikkelson
Refs #6805 Incorporated boolean for selected Q type(lab/sample)
Also, more info will now be given based on peak in workspace closes to given peak.
Changeset: 9753283a3de2c5fb919159f49010e405931d476d
comment:32 Changed 7 years ago by Dennis Mikkelson
RE 6805 Refactor SelectionNotificationService class
Removed original SelectionNotificationService .h, .cpp and Test files from Framework/API/, since they have been replaced by similarly named files using Qt signals and slots in MantidQt/API/.
refs #6805
Changeset: 59f94ff21a3b05adc3a7a926bd9a63d05ee08891
comment:33 Changed 7 years ago by Dennis Mikkelson
RE 6805 refactor SelectionNotificationService class
Fixed error in MantidQt/API/CMakeLists.txt, as suggested by Russell. Added basic test of SelectionNotificationService.
refs #6805 _
Changeset: ec7da5bbcc5bea72fb0ec800117b44afed516590
comment:34 Changed 7 years ago by Dennis Mikkelson
RE 6805 refactor SelectionNotificationService class
Fixed doxygen warning.
refs #6805 _
Changeset: fbed8529ecba9a27ea93b92aecf6b03dc9005d02
comment:35 Changed 7 years ago by Russell Taylor
- Status changed from verifying to closed
Tested mainly by inspection, but also by:
- Bring up MantidEV (Interfaces->SCD_Event_Data_Reduction)
- Switch to the second tab, "Find Peaks"
- Choose a peaks workspace name, and select Load ISAW Peaks. TOPAZ_3007 from the AutoTestData directory will work. Press Apply to actually load the peaks file into the named workspace.
- Switch to the last tab, "Point Info"
- Enter some Q-values, like 1,2,3 and press Show Info. That will cause the signal to be emitted and a corresponding slot to be called to show data about that point in Q, using Lab coordinates. The sequence number is the number of the nearest peak. If you use the Q lab coordinates of an actual peak, such as 2.68,1.58,3.71 for peak 1 (at index 0) you will get more information about that actual peak.
comment:36 Changed 7 years ago by Dennis Mikkelson
RE 6805 refactor SelectionNotificationService class
Fixed doxygen warning.
refs #6805 _
Changeset: fbed8529ecba9a27ea93b92aecf6b03dc9005d02
comment:37 Changed 7 years ago by Dennis Mikkelson
6805 Refactor the SelectionNotificationService
Initial version of new Qt based SelectionNotificationService class.
refs #6805
Changeset: 800ab533816582006a314e5100bec3ad8eaa6144
comment:38 Changed 7 years ago by Dennis Mikkelson
6805 Refactor the SelectionNotificationService
Adding SelectionNotificationFiles
refs #6805
Changeset: 441e753e786be6077c30da2320b441badac78aba
comment:39 Changed 7 years ago by Dennis Mikkelson
RE 6805 Refactor SelectionNotificationService class
Added basic test that the singleton can be accessed and the method to emit the signal can be called.
refs #6805
Changeset: 34604961108fa51fa99c30bc0dfbedf6fd01276d
comment:40 Changed 7 years ago by Dennis Mikkelson
RE 6805 Refactor SelectionNotificationService class
Commenting out test, due to link error on windows: SelectionNotificationServiceTest.obj : error LNK2019: unresolved external symbol "public: static struct QMetaObject const MantidQt::API::SelectionNotificationServiceImpl::staticMetaObject
I don't have access to a windows development system to fix this.
refs #6805
Changeset: 18889adb8f428b3128c089c1830aa66a92083f63
comment:41 Changed 7 years ago by Dennis Mikkelson
RE 6805 Refactor SelectionNotificationService class
Added bool parameter to message, to indicate whether the Q-vector is in lab or sample coordinates.
refs #6805
Changeset: 7e66cbc6059c037e376df3306a2d54aecf04f3a9
comment:42 Changed 7 years ago by Ruth Mikkelson
Refs #6805 Incorporated boolean for selected Q type(lab/sample)
Also, more info will now be given based on peak in workspace closes to given peak.
Changeset: 9753283a3de2c5fb919159f49010e405931d476d
comment:43 Changed 7 years ago by Dennis Mikkelson
RE 6805 Refactor SelectionNotificationService class
Removed original SelectionNotificationService .h, .cpp and Test files from Framework/API/, since they have been replaced by similarly named files using Qt signals and slots in MantidQt/API/.
refs #6805
Changeset: 59f94ff21a3b05adc3a7a926bd9a63d05ee08891
comment:44 Changed 7 years ago by Dennis Mikkelson
RE 6805 refactor SelectionNotificationService class
Fixed error in MantidQt/API/CMakeLists.txt, as suggested by Russell. Added basic test of SelectionNotificationService.
refs #6805 _
Changeset: ec7da5bbcc5bea72fb0ec800117b44afed516590
comment:45 Changed 7 years ago by Dennis Mikkelson
RE 6805 refactor SelectionNotificationService class
Fixed doxygen warning.
refs #6805 _
Changeset: fbed8529ecba9a27ea93b92aecf6b03dc9005d02
comment:46 Changed 7 years ago by Dennis Mikkelson
6805 Refactor the SelectionNotificationService
Initial version of new Qt based SelectionNotificationService class.
refs #6805
Changeset: 800ab533816582006a314e5100bec3ad8eaa6144
comment:47 Changed 7 years ago by Dennis Mikkelson
6805 Refactor the SelectionNotificationService
Adding SelectionNotificationFiles
refs #6805
Changeset: 441e753e786be6077c30da2320b441badac78aba
comment:48 Changed 7 years ago by Dennis Mikkelson
RE 6805 Refactor SelectionNotificationService class
Added basic test that the singleton can be accessed and the method to emit the signal can be called.
refs #6805
Changeset: 34604961108fa51fa99c30bc0dfbedf6fd01276d
comment:49 Changed 7 years ago by Dennis Mikkelson
RE 6805 Refactor SelectionNotificationService class
Commenting out test, due to link error on windows: SelectionNotificationServiceTest.obj : error LNK2019: unresolved external symbol "public: static struct QMetaObject const MantidQt::API::SelectionNotificationServiceImpl::staticMetaObject
I don't have access to a windows development system to fix this.
refs #6805
Changeset: 18889adb8f428b3128c089c1830aa66a92083f63
comment:50 Changed 7 years ago by Dennis Mikkelson
RE 6805 Refactor SelectionNotificationService class
Added bool parameter to message, to indicate whether the Q-vector is in lab or sample coordinates.
refs #6805
Changeset: 7e66cbc6059c037e376df3306a2d54aecf04f3a9
comment:51 Changed 7 years ago by Ruth Mikkelson
Refs #6805 Incorporated boolean for selected Q type(lab/sample)
Also, more info will now be given based on peak in workspace closes to given peak.
Changeset: 9753283a3de2c5fb919159f49010e405931d476d
comment:52 Changed 7 years ago by Dennis Mikkelson
RE 6805 Refactor SelectionNotificationService class
Removed original SelectionNotificationService .h, .cpp and Test files from Framework/API/, since they have been replaced by similarly named files using Qt signals and slots in MantidQt/API/.
refs #6805
Changeset: 59f94ff21a3b05adc3a7a926bd9a63d05ee08891
comment:53 Changed 7 years ago by Dennis Mikkelson
RE 6805 refactor SelectionNotificationService class
Fixed error in MantidQt/API/CMakeLists.txt, as suggested by Russell. Added basic test of SelectionNotificationService.
refs #6805 _
Changeset: ec7da5bbcc5bea72fb0ec800117b44afed516590
comment:54 Changed 7 years ago by Dennis Mikkelson
RE 6805 refactor SelectionNotificationService class
Fixed doxygen warning.
refs #6805 _
Changeset: fbed8529ecba9a27ea93b92aecf6b03dc9005d02
comment:55 Changed 7 years ago by Dennis Mikkelson
6805 Refactor the SelectionNotificationService
Initial version of new Qt based SelectionNotificationService class.
refs #6805
Changeset: 800ab533816582006a314e5100bec3ad8eaa6144
comment:56 Changed 7 years ago by Dennis Mikkelson
6805 Refactor the SelectionNotificationService
Adding SelectionNotificationFiles
refs #6805
Changeset: 441e753e786be6077c30da2320b441badac78aba
comment:57 Changed 7 years ago by Dennis Mikkelson
RE 6805 Refactor SelectionNotificationService class
Added basic test that the singleton can be accessed and the method to emit the signal can be called.
refs #6805
Changeset: 34604961108fa51fa99c30bc0dfbedf6fd01276d
comment:58 Changed 7 years ago by Dennis Mikkelson
RE 6805 Refactor SelectionNotificationService class
Commenting out test, due to link error on windows: SelectionNotificationServiceTest.obj : error LNK2019: unresolved external symbol "public: static struct QMetaObject const MantidQt::API::SelectionNotificationServiceImpl::staticMetaObject
I don't have access to a windows development system to fix this.
refs #6805
Changeset: 18889adb8f428b3128c089c1830aa66a92083f63
comment:59 Changed 7 years ago by Dennis Mikkelson
RE 6805 Refactor SelectionNotificationService class
Added bool parameter to message, to indicate whether the Q-vector is in lab or sample coordinates.
refs #6805
Changeset: 7e66cbc6059c037e376df3306a2d54aecf04f3a9
comment:60 Changed 7 years ago by Ruth Mikkelson
Refs #6805 Incorporated boolean for selected Q type(lab/sample)
Also, more info will now be given based on peak in workspace closes to given peak.
Changeset: 9753283a3de2c5fb919159f49010e405931d476d
comment:61 Changed 7 years ago by Dennis Mikkelson
RE 6805 Refactor SelectionNotificationService class
Removed original SelectionNotificationService .h, .cpp and Test files from Framework/API/, since they have been replaced by similarly named files using Qt signals and slots in MantidQt/API/.
refs #6805
Changeset: 59f94ff21a3b05adc3a7a926bd9a63d05ee08891
comment:62 Changed 7 years ago by Dennis Mikkelson
RE 6805 refactor SelectionNotificationService class
Fixed error in MantidQt/API/CMakeLists.txt, as suggested by Russell. Added basic test of SelectionNotificationService.
refs #6805 _
Changeset: ec7da5bbcc5bea72fb0ec800117b44afed516590
comment:63 Changed 7 years ago by Dennis Mikkelson
RE 6805 refactor SelectionNotificationService class
Fixed doxygen warning.
refs #6805 _
Changeset: fbed8529ecba9a27ea93b92aecf6b03dc9005d02
comment:65 Changed 5 years ago by Stuart Campbell
This ticket has been transferred to github issue 7651