Fixed a major issue where the SGMFastScan system was not properly setting the detectors list in a copy constructor. Also fixed minor issues where dark current corrections were being done or display - this system is not ready for production yet. Also fixed some indentation in a couple of files.
Merge branch 'master' of github.com:acquaman/acquaman
Added deletion of the two QFile objects to AMScanActionControllerBasicFileWriter. Also changed AMRegionScanActionController to stop an extra line of values from being printed, thanks to Darren the fix was quick by removing writeDataToFiles() from the AxisFinished part of the event case statement.
Removed unnecessary comment.
Addressed issues with the sample move action. Turns out that AMConstDbObject had not be taught how to save and load objects from other databases. This was a problem for AMSampleMoveActionInfo, which resides in the actions databases whereas the samples live in the user database. I fixed this problem and testing seems to indicate everything is fine now. Also changed the AMSampleMoveActionEditor so that there is a No Sample Selected option in the combobox. This way you can select the first sample on the plate without have to select a different sample first. Also fixed an issue where copying the actions didn't set the correct sample in the editor. Finally, had to fix a problem where AMSampleMoveActions reloaded from the database - ie,, copied from the history view using the Re-Run Action option - failed all the time. Turns out those actionInfos load the sample from the database, and don't get it from the sample plate. Since the actionInfo can't possibly know about AMBeamline I needed to put the checking into AMSampleMoveAction itself during its failure checking. In this case, if the sample pointer in the actionInfo isn't on the plate we do a final iterative check to see if that sample matches any of the names on the plate - and we reset the sample if necessary. This works, but it's ugly. This is the first case where the lack of an AMDbObject retain/release structure is really hampering the normal flow of code.
Changed AMCurrentAmplifier::setValue(...) and AMCurrentAmplifier::setValueImplementation(...) argument from QStringList *argList to const QStringList &argList.
Merge branch 'master' of https://github.com/acquaman/acquaman into master-BioXASSide
Starting fresh with AMCurrentAmplifierView.
Changed argument of AMCurrentAmplifier::setValue(...) and AMCurrentAmplifier::setValueImplementation(...) from const QStringList &argList to const QString &valueArg.
Moved the controlMoveInfo getters to public from protected in AMControlMoveAction3. Removed some unnecessary debugging from AMDbObject and added a define for errorMon in a AMConstDbObject failure case. Also changed the AMSampleMoveAction to attempt to move as far as possible on a given axis, rather than failing without trying. There are samples that are sometimes calculated just outside the motion range, this change will take them to the soft limit rather than doing nothing.
Added 'supports(AmplifierMode)' method, which I think will make determining what view modes are supported easier.
Filled in basic 'setValueImplementation(...)' function.
Added:
AMRegExpLineEdit ~ New version of a line edit which takes a reg exp, and
warning message then will display a warning if the contents do, or do
not (depending on settings) match the reg exp

Altered:
SGMFastScanConfiguration2013View
SGMXASScanConfiguration2013View
and
AMGenericScanEditor to use the new AMRegExpLineEdits instead of
QLineEdits to edit the scan names
Added int argument to the AMCurrentAmplifier::gain/sensitivityChanged(int) signals.
Added virtual methods to AMCurrentAmplifier for providing the view with lists of available value and units options.
Renamed valueStringList() to valuesList(), unitsStringList() to unitsList() in CLSKeithley428.
Changed current amplifier view instance from CLSKeithley428View to AMCurrentAmplifierView in BioXASSidePersistentView.
Propogated change in function name in CLSKeithley428 through to CLSKeithley428View class.
Began work on a general current amplifier view, AMCurrentAmplifierView. It can display a list of values and units from the amplifier, selecting items from the list seems to see a change reflected in the actual Keithley (no test for SR570 yet). A context menu appears with right-click that allows the user to successfully switch between view modes, if that functionality is supported by the amplifier. Plus/minus buttons appear, but their functionality is pretty buggy--revisit.
Altered:
AMRegExpLineEdit::validate() ~ Changed variable isValid and checks for
isValid to properly reflect the name of the variable (ie they now mark
the variable true if it is valid, and treat it as such).