Loading isis/src/control/objs/ControlMeasure/ControlMeasure.cpp +20 −20 Original line number Diff line number Diff line Loading @@ -1037,31 +1037,31 @@ namespace Isis { p_dateTime = new QString; p_loggedData = new QVector<ControlMeasureLogData>(); *p_serialNumber = *other.p_serialNumber; *p_chooserName = *other.p_chooserName; *p_dateTime = *other.p_dateTime; bool oldLock = p_editLock; p_editLock = false; p_sample = other.p_sample; p_line = other.p_line; *p_loggedData = *other.p_loggedData; p_measureType = other.p_measureType; SetCubeSerialNumber(*other.p_serialNumber); SetChooserName(*other.p_chooserName); SetDateTime(*other.p_dateTime); SetType(other.p_measureType); // Call SetIgnored to update the ControlGraphNode. However, SetIgnored // will return if EditLock is true, so set to false temporarily. p_editLock = false; SetIgnored(other.p_ignore); p_editLock = other.p_editLock; p_sample = other.p_sample; p_line = other.p_line; p_diameter = other.p_diameter; p_aprioriSample = other.p_aprioriSample; p_aprioriLine = other.p_aprioriLine; p_sampleSigma = other.p_sampleSigma; p_lineSigma = other.p_lineSigma; p_sampleResidual = other.p_sampleResidual; p_lineResidual = other.p_lineResidual; p_camera = other.p_camera; p_focalPlaneMeasuredX = other.p_focalPlaneMeasuredX; p_focalPlaneMeasuredY = other.p_focalPlaneMeasuredY; p_focalPlaneComputedX = other.p_focalPlaneComputedX; p_focalPlaneComputedY = other.p_focalPlaneComputedY; SetDiameter(other.p_diameter); SetAprioriSample(other.p_aprioriSample); SetAprioriLine(other.p_aprioriLine); SetSampleSigma(other.p_sampleSigma); SetLineSigma(other.p_lineSigma); SetResidual(other.p_sampleResidual, other.p_lineResidual); SetCamera(other.p_camera); SetFocalPlaneMeasured(other.p_focalPlaneMeasuredX, other.p_focalPlaneMeasuredY); SetFocalPlaneComputed(other.p_focalPlaneComputedX, other.p_focalPlaneComputedY); p_editLock = oldLock; SetEditLock(other.p_editLock); return *this; } Loading isis/src/control/objs/ControlMeasure/ControlMeasure.h +2 −0 Original line number Diff line number Diff line Loading @@ -183,6 +183,8 @@ namespace Isis { * to allow for communication between the ControlNetVitals class * and changes made to the Control Network that it is observing. * Fixes #5435. * @history 2018-06-29 Adam Goins - Modified operator= to use setters when setting values * so that the proper signals/slots are called. Fixes #5435. */ class ControlMeasure : public QObject { Loading isis/src/control/objs/ControlNetVitals/ControlNetVitals.cpp +5 −5 Original line number Diff line number Diff line Loading @@ -688,7 +688,7 @@ namespace Isis { QList<ControlPoint*> ControlNetVitals::getLockedPoints() { QList<ControlPoint*> lockedPoints; foreach(ControlPoint* point, m_controlNet->GetPoints()) { if (point->IsEditLocked()) lockedPoints.append(point); if (!point->IsIgnored() && point->IsEditLocked()) lockedPoints.append(point); } return lockedPoints; } Loading @@ -702,7 +702,7 @@ namespace Isis { QList<ControlPoint*> ControlNetVitals::getFixedPoints() { QList<ControlPoint*> fixedPoints; foreach(ControlPoint* point, m_controlNet->GetPoints()) { if (point->GetType() == ControlPoint::Fixed) fixedPoints.append(point); if (!point->IsIgnored() && point->GetType() == ControlPoint::Fixed) fixedPoints.append(point); } return fixedPoints; } Loading @@ -716,7 +716,7 @@ namespace Isis { QList<ControlPoint*> ControlNetVitals::getConstrainedPoints() { QList<ControlPoint*> constrainedPoints; foreach(ControlPoint* point, m_controlNet->GetPoints()) { if (point->GetType() == ControlPoint::Constrained) constrainedPoints.append(point); if (!point->IsIgnored() && point->GetType() == ControlPoint::Constrained) constrainedPoints.append(point); } return constrainedPoints; } Loading @@ -730,7 +730,7 @@ namespace Isis { QList<ControlPoint*> ControlNetVitals::getFreePoints() { QList<ControlPoint*> freePoints; foreach(ControlPoint* point, m_controlNet->GetPoints()) { if (point->GetType() == ControlPoint::Free) freePoints.append(point); if (!point->IsIgnored() && point->GetType() == ControlPoint::Free) freePoints.append(point); } return freePoints; } Loading @@ -747,7 +747,7 @@ namespace Isis { QList<ControlPoint*> ControlNetVitals::getPointsBelowMeasureThreshold(int num) { QList<ControlPoint*> belowThreshold; foreach(ControlPoint* point, m_controlNet->GetPoints()) { if (point->GetNumMeasures() < num) belowThreshold.append(point); if (!point->IsIgnored() && point->GetNumMeasures() < num) belowThreshold.append(point); } return belowThreshold; } Loading isis/src/control/objs/ControlPoint/ControlPoint.cpp +21 −16 Original line number Diff line number Diff line Loading @@ -1936,6 +1936,7 @@ namespace Isis { const ControlPoint &ControlPoint::operator=(const ControlPoint &other) { if (this != &other) { bool oldLock = editLock; editLock = false; for (int i = cubeSerials->size() - 1; i >= 0; i--) { (*measures)[cubeSerials->at(i)]->SetEditLock(false); Loading @@ -1955,23 +1956,27 @@ namespace Isis { } } id = other.id; chooserName = other.chooserName; dateTime = other.dateTime; type = other.type; invalid = other.invalid; editLock = other.editLock; jigsawRejected = other.jigsawRejected; referenceExplicitlySet = other.referenceExplicitlySet; ignore = other.ignore; aprioriSurfacePointSource = other.aprioriSurfacePointSource; aprioriSurfacePointSourceFile = other.aprioriSurfacePointSourceFile; aprioriRadiusSource = other.aprioriRadiusSource; aprioriRadiusSourceFile = other.aprioriRadiusSourceFile; aprioriSurfacePoint = other.aprioriSurfacePoint; adjustedSurfacePoint = other.adjustedSurfacePoint; numberOfRejectedMeasures = other.numberOfRejectedMeasures; constraintStatus = other.constraintStatus; SetId(other.id); SetChooserName(other.chooserName); SetDateTime(other.dateTime); SetType(other.type); SetRejected(other.jigsawRejected); SetIgnored(other.ignore); SetAprioriSurfacePointSource(other.aprioriSurfacePointSource); SetAprioriSurfacePointSourceFile(other.aprioriSurfacePointSourceFile); SetAprioriRadiusSource(other.aprioriRadiusSource); SetAprioriRadiusSourceFile(other.aprioriRadiusSourceFile); SetAprioriSurfacePoint(other.aprioriSurfacePoint); SetAdjustedSurfacePoint(other.adjustedSurfacePoint); // Set edit lock last so the it doesn't interfere with copying the other fields over. editLock = oldLock; SetEditLock(other.editLock); } return *this; Loading isis/src/control/objs/ControlPoint/ControlPoint.h +3 −0 Original line number Diff line number Diff line Loading @@ -351,6 +351,9 @@ namespace Isis { * to allow for communication between the ControlNetVitals class * and changes made to the Control Network that it is observing. * Fixes #5435. * @history 2018-06-29 Adam Goins - Modified to operator= method to use setters when copying * one Control Point to another so that the proper signals get called. * Fixes #5435. */ class ControlPoint : public QObject { Loading Loading
isis/src/control/objs/ControlMeasure/ControlMeasure.cpp +20 −20 Original line number Diff line number Diff line Loading @@ -1037,31 +1037,31 @@ namespace Isis { p_dateTime = new QString; p_loggedData = new QVector<ControlMeasureLogData>(); *p_serialNumber = *other.p_serialNumber; *p_chooserName = *other.p_chooserName; *p_dateTime = *other.p_dateTime; bool oldLock = p_editLock; p_editLock = false; p_sample = other.p_sample; p_line = other.p_line; *p_loggedData = *other.p_loggedData; p_measureType = other.p_measureType; SetCubeSerialNumber(*other.p_serialNumber); SetChooserName(*other.p_chooserName); SetDateTime(*other.p_dateTime); SetType(other.p_measureType); // Call SetIgnored to update the ControlGraphNode. However, SetIgnored // will return if EditLock is true, so set to false temporarily. p_editLock = false; SetIgnored(other.p_ignore); p_editLock = other.p_editLock; p_sample = other.p_sample; p_line = other.p_line; p_diameter = other.p_diameter; p_aprioriSample = other.p_aprioriSample; p_aprioriLine = other.p_aprioriLine; p_sampleSigma = other.p_sampleSigma; p_lineSigma = other.p_lineSigma; p_sampleResidual = other.p_sampleResidual; p_lineResidual = other.p_lineResidual; p_camera = other.p_camera; p_focalPlaneMeasuredX = other.p_focalPlaneMeasuredX; p_focalPlaneMeasuredY = other.p_focalPlaneMeasuredY; p_focalPlaneComputedX = other.p_focalPlaneComputedX; p_focalPlaneComputedY = other.p_focalPlaneComputedY; SetDiameter(other.p_diameter); SetAprioriSample(other.p_aprioriSample); SetAprioriLine(other.p_aprioriLine); SetSampleSigma(other.p_sampleSigma); SetLineSigma(other.p_lineSigma); SetResidual(other.p_sampleResidual, other.p_lineResidual); SetCamera(other.p_camera); SetFocalPlaneMeasured(other.p_focalPlaneMeasuredX, other.p_focalPlaneMeasuredY); SetFocalPlaneComputed(other.p_focalPlaneComputedX, other.p_focalPlaneComputedY); p_editLock = oldLock; SetEditLock(other.p_editLock); return *this; } Loading
isis/src/control/objs/ControlMeasure/ControlMeasure.h +2 −0 Original line number Diff line number Diff line Loading @@ -183,6 +183,8 @@ namespace Isis { * to allow for communication between the ControlNetVitals class * and changes made to the Control Network that it is observing. * Fixes #5435. * @history 2018-06-29 Adam Goins - Modified operator= to use setters when setting values * so that the proper signals/slots are called. Fixes #5435. */ class ControlMeasure : public QObject { Loading
isis/src/control/objs/ControlNetVitals/ControlNetVitals.cpp +5 −5 Original line number Diff line number Diff line Loading @@ -688,7 +688,7 @@ namespace Isis { QList<ControlPoint*> ControlNetVitals::getLockedPoints() { QList<ControlPoint*> lockedPoints; foreach(ControlPoint* point, m_controlNet->GetPoints()) { if (point->IsEditLocked()) lockedPoints.append(point); if (!point->IsIgnored() && point->IsEditLocked()) lockedPoints.append(point); } return lockedPoints; } Loading @@ -702,7 +702,7 @@ namespace Isis { QList<ControlPoint*> ControlNetVitals::getFixedPoints() { QList<ControlPoint*> fixedPoints; foreach(ControlPoint* point, m_controlNet->GetPoints()) { if (point->GetType() == ControlPoint::Fixed) fixedPoints.append(point); if (!point->IsIgnored() && point->GetType() == ControlPoint::Fixed) fixedPoints.append(point); } return fixedPoints; } Loading @@ -716,7 +716,7 @@ namespace Isis { QList<ControlPoint*> ControlNetVitals::getConstrainedPoints() { QList<ControlPoint*> constrainedPoints; foreach(ControlPoint* point, m_controlNet->GetPoints()) { if (point->GetType() == ControlPoint::Constrained) constrainedPoints.append(point); if (!point->IsIgnored() && point->GetType() == ControlPoint::Constrained) constrainedPoints.append(point); } return constrainedPoints; } Loading @@ -730,7 +730,7 @@ namespace Isis { QList<ControlPoint*> ControlNetVitals::getFreePoints() { QList<ControlPoint*> freePoints; foreach(ControlPoint* point, m_controlNet->GetPoints()) { if (point->GetType() == ControlPoint::Free) freePoints.append(point); if (!point->IsIgnored() && point->GetType() == ControlPoint::Free) freePoints.append(point); } return freePoints; } Loading @@ -747,7 +747,7 @@ namespace Isis { QList<ControlPoint*> ControlNetVitals::getPointsBelowMeasureThreshold(int num) { QList<ControlPoint*> belowThreshold; foreach(ControlPoint* point, m_controlNet->GetPoints()) { if (point->GetNumMeasures() < num) belowThreshold.append(point); if (!point->IsIgnored() && point->GetNumMeasures() < num) belowThreshold.append(point); } return belowThreshold; } Loading
isis/src/control/objs/ControlPoint/ControlPoint.cpp +21 −16 Original line number Diff line number Diff line Loading @@ -1936,6 +1936,7 @@ namespace Isis { const ControlPoint &ControlPoint::operator=(const ControlPoint &other) { if (this != &other) { bool oldLock = editLock; editLock = false; for (int i = cubeSerials->size() - 1; i >= 0; i--) { (*measures)[cubeSerials->at(i)]->SetEditLock(false); Loading @@ -1955,23 +1956,27 @@ namespace Isis { } } id = other.id; chooserName = other.chooserName; dateTime = other.dateTime; type = other.type; invalid = other.invalid; editLock = other.editLock; jigsawRejected = other.jigsawRejected; referenceExplicitlySet = other.referenceExplicitlySet; ignore = other.ignore; aprioriSurfacePointSource = other.aprioriSurfacePointSource; aprioriSurfacePointSourceFile = other.aprioriSurfacePointSourceFile; aprioriRadiusSource = other.aprioriRadiusSource; aprioriRadiusSourceFile = other.aprioriRadiusSourceFile; aprioriSurfacePoint = other.aprioriSurfacePoint; adjustedSurfacePoint = other.adjustedSurfacePoint; numberOfRejectedMeasures = other.numberOfRejectedMeasures; constraintStatus = other.constraintStatus; SetId(other.id); SetChooserName(other.chooserName); SetDateTime(other.dateTime); SetType(other.type); SetRejected(other.jigsawRejected); SetIgnored(other.ignore); SetAprioriSurfacePointSource(other.aprioriSurfacePointSource); SetAprioriSurfacePointSourceFile(other.aprioriSurfacePointSourceFile); SetAprioriRadiusSource(other.aprioriRadiusSource); SetAprioriRadiusSourceFile(other.aprioriRadiusSourceFile); SetAprioriSurfacePoint(other.aprioriSurfacePoint); SetAdjustedSurfacePoint(other.adjustedSurfacePoint); // Set edit lock last so the it doesn't interfere with copying the other fields over. editLock = oldLock; SetEditLock(other.editLock); } return *this; Loading
isis/src/control/objs/ControlPoint/ControlPoint.h +3 −0 Original line number Diff line number Diff line Loading @@ -351,6 +351,9 @@ namespace Isis { * to allow for communication between the ControlNetVitals class * and changes made to the Control Network that it is observing. * Fixes #5435. * @history 2018-06-29 Adam Goins - Modified to operator= method to use setters when copying * one Control Point to another so that the proper signals get called. * Fixes #5435. */ class ControlPoint : public QObject { Loading