Isis 3 Programmer Reference
Isis::ControlPointEditWidget Class Reference

Gui for editing ControlPoints in ipce application. More...

#include <ControlPointEditWidget.h>

Inheritance diagram for Isis::ControlPointEditWidget:
Inheritance graph
Collaboration diagram for Isis::ControlPointEditWidget:
Collaboration graph

Public Slots

void setSerialNumberList (SerialNumberList *snList)
 Set the serial number list.
 
void setControl (Control *control)
 New control network being edited.
 
void setControlFromActive ()
 New active control was set from ipce.
 
void setEditPoint (ControlPoint *controlPoint, QString serialNumber="")
 Slot called by Directory to set the control point for editing.
 
void deletePoint (ControlPoint *controlPoint)
 Gives user options for deleting a control point from the control network.
 
void createControlPoint (double latitude, double longitude, Cube *cube=0, bool isGroundSource=false)
 Create a new control point at the given latitude, longitude.
 
void colorizeSaveNetButton (bool reset=false)
 Turn "Save Net" button text to red.
 
void addTemplates (TemplateList *templateList)
 Add registration TemplateList to combobox when imported to project.
 

Signals

void controlPointChanged (QString pointId)
 
void controlPointAdded (QString pointId)
 
void ignorePointChanged ()
 
void ignoreLeftChanged ()
 
void ignoreRightChanged ()
 
void cnetModified ()
 
void newControlNetwork (ControlNet *)
 
void stretchChipViewport (Stretch *, CubeViewport *)
 
void measureChanged ()
 
void saveControlNet ()
 

Public Member Functions

 ControlPointEditWidget (Directory *directory, QWidget *parent, bool addMeasures=false)
 Consructs the ControlPointEditWidget widget.
 
QString editPointId ()
 
ControlPointeditPoint ()
 

Protected Member Functions

bool eventFilter (QObject *o, QEvent *e)
 Event filter for ControlPointEditWidget.
 

Private Slots

void reloadPoint ()
 Set both chip viewports to their original measures for the control point.
 
void saveNet ()
 This slot is needed because we cannot directly emit a signal with a ControlNet argument after the "Save Net" push button is selected.
 
void setPointType (int pointType)
 Set the point type.
 
void setLockPoint (bool ignore)
 Set point's "EditLock" keyword to the value of the input parameter.
 
void setIgnorePoint (bool ignore)
 Set point's "Ignore" keyword to the value of the input parameter.
 
void setLockLeftMeasure (bool ignore)
 Set the "EditLock" keyword of the measure shown in the left viewport to the value of the input parameter.
 
void setIgnoreLeftMeasure (bool ignore)
 Set the "Ignore" keyword of the measure shown in the left viewport to the value of the input parameter.
 
void setLockRightMeasure (bool ignore)
 Set the "EditLock" keyword of the measure shown in the right viewport to the value of the input parameter.
 
void setIgnoreRightMeasure (bool ignore)
 Set the "Ignore" keyword of the measure shown in the right viewport to the value of the input parameter.
 
void selectLeftMeasure (int index)
 Select left measure.
 
void selectRightMeasure (int index)
 Select right measure.
 
void nextRightMeasure ()
 Selects the next right measure when activated by key shortcut.
 
void previousRightMeasure ()
 Selects the previous right measure when activated by key shortcut.
 
void updateLeftMeasureInfo ()
 Update the left measure information.
 
void updateRightMeasureInfo ()
 Update the right measure information.
 
void measureSaved ()
 This method is connected with the measureSaved() signal from ControlMeasureEditWidget.
 
void checkReference ()
 Change which measure is the reference.
 
void updateGroundPosition ()
 
void updateSurfacePointInfo ()
 Update the Surface Point Information in the ControlPointEditWidget.
 
void openReferenceRadius ()
 Open a radius source using the shape model of the reference measure of m_editPoint.
 
void groundSourceFileSelectionChanged (int index)
 Slot called when user changes selection in m_groundSourceCombo.
 
void savePoint ()
 Save edit point to the Control Network.
 
void colorizeAllSaveButtons (QString color)
 
void colorizeSavePointButton ()
 Refresh all necessary widgets in ControlPointEditWidget including the PointEditor and CubeViewports.
 
void openTemplateFile ()
 Prompt user for a registration template file to open.
 
void viewTemplateFile ()
 Allows the user to view the template file that is currently set.
 
void saveChips ()
 Slot which calls ControlPointEditWidget slot to save chips.
 
void showHideTemplateEditor ()
 Toggles the visibility of the template editor widget.
 
void saveTemplateFile ()
 Save the file opened in the template editor.
 
void saveTemplateFileAs ()
 Save the contents of template editor to a file chosen by the user.
 
void setTemplateFile (QString)
 Appends the filename to the registrations path (unless this is the default template) and calls setTemplateFile for the control measure.
 
void setTemplateModified ()
 Called when the template file is modified by the template editor.
 
void writeTemplateFile (QString)
 Write the contents of the template editor to the file provided.
 
void resetTemplateComboBox (QString fileName)
 Reset the selected template in the template combobox if the template selected by the user does not satisfy requirements for the control measure.
 
void clearEditPoint ()
 Cleans up the edit point memory.
 

Private Member Functions

void createActions ()
 Creates the actions for the widget.
 
void loadPoint (QString serialNumber="")
 Load point into ControlPointEditWidget.
 
void loadGroundMeasure ()
 Load ground measure into right side and add to file combo boxes.
 
void createPointEditor (QWidget *parent, bool addMeasures)
 Create the widget for editing control points.
 
QSplitter * createTopSplitter ()
 Creates everything above the ControlPointEdit.
 
QGroupBox * createControlPointGroupBox ()
 Creates the "Control Point" groupbox.
 
QGroupBox * createLeftMeasureGroupBox ()
 Creates the "Left Measure" groupbox.
 
QGroupBox * createRightMeasureGroupBox ()
 Create the "Right Measure" groupbox.
 
void createTemplateEditorWidget ()
 Creates the Widget which contains the template editor and its toolbar.
 
void loadTemplateFile (QString)
 Updates the current template file being used.
 
bool okToContinue ()
 Checks the state of the template registration file and determines if it is safe to continue opening a template file.
 
bool IsMeasureLocked (QString serialNumber)
 Check for implicitly locked measure in m_editPoint.
 
bool validateMeasureChange (ControlMeasure *m)
 Validates a change to a control measure.
 
void setShapesForPoint (double latitude=Null, double longitude=Null)
 Fill m_projectShapeNames with ALL shapes currently in project.
 
ControlMeasurecreateTemporaryGroundMeasure ()
 Create a temporary measure to hold the ground point info for ground source.
 
bool setGroundSourceInfo ()
 Find the ground source location: First look at current edit point for parameter, AprioriXYZSourceFile.
 
FileName checkGroundFileLocation (FileName groundFile)
 Ground source file from control net cannot be found, give user option to give new location.
 
void changeGroundLocationsInNet ()
 Change the location of all ground source locations in the ControlNet.
 
void clearGroundSource ()
 Clear out the ground source used for Constrained or Fixed control points.
 
void initDem (QString demFile)
 Initialize the given Dem and appropriate member variables for later use editing Fixed or Constrained control points.
 
double demRadius (double latitude, double longitude)
 Return a radius values from the dem using bilinear interpolation.
 

Private Attributes

QPointer< QWidgetm_parent
 Parent widget.
 
Directorym_directory
 
bool m_addMeasuresButton
 Indicates whether or not to add "Add Measures(s) to Point".
 
QString m_cnetFileName
 Filename of the control network that is being modified.
 
QPointer< QLabel > m_cnetFileNameLabel
 Label with name of the control network file.
 
bool m_cnetModified
 Indicates if the control network has been modified.
 
QPointer< QActionm_closePointEditor
 Action to close the point editor.
 
QPointer< QActionm_saveChips
 Action to save the registration chips Action to toggle visibility of the registration template editor.
 
QPointer< QActionm_showHideTemplateEditor
 
QPointer< QActionm_openTemplateFile
 Action to open a registration template file to disk.
 
QPointer< QActionm_saveTemplateFile
 Action to save a registration template file to disk.
 
QPointer< QActionm_saveTemplateFileAs
 Action to save a new registration template.
 
QPointer< ControlMeasureEditWidgetm_measureEditor
 Pointer to control measure editor widget.
 
QPointer< QPushButton > m_reloadPoint
 Button to reload current point to saved measures.
 
QPointer< QPushButton > m_savePoint
 Button to save current point being edited.
 
QPalette m_saveDefaultPalette
 Default color pallet of the "Save Point" button.
 
QPointer< QPushButton > m_saveNet
 Button to save the current control network.
 
QPointer< QTextEdit > m_templateEditor
 Text editor for editing the registration template.
 
QPointer< QWidgetm_templateEditorWidget
 Template editor widget.
 
bool m_templateModified
 Indicates if the registration template was edited.
 
QPointer< QComboBoxm_templateComboBox
 ComboBox of imported registration templates.
 
QPointer< QComboBoxm_groundSourceCombo
 ComboBox for selecting ground source.
 
QPointer< QComboBoxm_radiusSourceCombo
 ComboBox for selecting ground source.
 
QPointer< QLabel > m_ptIdValue
 Label for the point id of the current point.
 
QPointer< QComboBoxm_pointTypeCombo
 Combobox to change the type of the current point.
 
QPointer< QLabel > m_numMeasures
 
QPointer< QLabel > m_aprioriLatitude
 
QPointer< QLabel > m_aprioriLongitude
 
QPointer< QLabel > m_aprioriRadius
 
QPointer< QCheckBox > m_lockPoint
 Checkbox that locks/unlocks the current point.
 
QPointer< QCheckBox > m_ignorePoint
 Checkbox to ignore the current point.
 
QPointer< QLabel > m_leftReference
 Label indicating if left measure is the reference.
 
QPointer< QLabel > m_leftMeasureType
 Label for the left measure's adjustment type.
 
QPointer< QLabel > m_rightReference
 Label indicating if right measure is the reference.
 
QPointer< QLabel > m_rightMeasureType
 Label for the right measure's adjustment type.
 
QPointer< QCheckBox > m_lockLeftMeasure
 Checkbox to edit lock/unlock the left measure.
 
QPointer< QCheckBox > m_ignoreLeftMeasure
 Checkbox to ignore the left measure.
 
QPointer< QCheckBox > m_lockRightMeasure
 Checkbox to edit lock/unlock the right measure.
 
QPointer< QCheckBox > m_ignoreRightMeasure
 Checkbox to ignore the right measure.
 
QPointer< QComboBoxm_leftCombo
 Combobox to load left measure into left chip viewport.
 
QPointer< QComboBoxm_rightCombo
 Combobox to load right measure into right chip viewport.
 
QPointer< QStandardItemModelm_model
 
QPointer< QMainWindowm_measureWindow
 Main window for the the measure table widget.
 
QPointer< QTableWidget > m_measureTable
 Table widget for the measures.
 
QPointer< ControlPointm_editPoint
 The control point being edited.
 
SerialNumberListm_serialNumberList
 Serial number list for the loaded cubes.
 
QPointer< ControlNetm_controlNet
 Current control net.
 
QPointer< Controlm_control
 Current Control.
 
QPointer< ControlPointm_newPoint
 New control point.
 
QString m_lastUsedPointId
 Point id of the last used control point.
 
QStringList m_pointFiles
 Associated files for current control point.
 
QString m_leftFile
 Filename of left measure.
 
QPointer< ControlMeasurem_leftMeasure
 Left control measure.
 
QPointer< ControlMeasurem_rightMeasure
 Right control measure.
 
QScopedPointer< Cubem_leftCube
 Left cube.
 
QScopedPointer< Cubem_rightCube
 Right cube.
 
QStringList m_projectShapeNames
 List of Shapes imported into project, at time of loaded CP.
 
int m_numberProjectShapesWithPoint
 Number of shapes containing control point.
 
QMap< QString, Shape * > m_nameToShapeMap
 Map between Shape display name and object.
 
QString m_groundFilename
 File name of ground source.
 
QString m_groundSN
 Serial number of ground source file.
 
ControlPoint::SurfacePointSource::Source m_groundSourceType
 SurfacePoint type of ground source.
 
QScopedPointer< UniversalGroundMapm_groundGmap
 
bool m_changeAllGroundLocation
 Change the ground source location of all fixed, constrained points in the network.
 
bool m_changeGroundLocationInNet
 Change the ground source location.
 
QString m_newGroundDir
 Contains the ground source location.
 
QString m_radiusFilename
 
ControlPoint::RadiusSource::Source m_radiusSourceType
 
bool m_demOpen
 Has a radius source been opened?
 
QString m_demFile
 
QScopedPointer< Cubem_demCube
 

Detailed Description

Gui for editing ControlPoints in ipce application.

Author
2014-06-25 Tracie Sucharski
History

2016-06-27 Ian Humphrey - Updated documentation and coding standards. Fixes #4004.

2016-09-30 Tracie Sucharski - Pass in directory to constructor, so that we can query for shapes and other data from the project.

2017-01-05 Tracie Sucharski - Allow a new ground source location to be entered which includes allowing the option to change the location in the active control for all ground points.

2017-05-18 Tracie Sucharski - Added serialNumber to the setEditPoint slot.

2017-08-02 Tracie Sucharski - Added methods to return the current editPoint and current editPoint Id. Removed measure table methods. Fixes #5007, #5008.

2017-08-09 Adam Goins - Changed method references of SerialNumberList.Delete() to SerialNumberList.remove()

2017-08-09 Christopher Combs - Added QPushButton and slot for reloading a point's measures in the ChipViewports. Fixes #5070.

2017-08-09 Christopher Combs - Added Apriori Latitude, Longitude, and Radius to the dialog. Fixes #5066.

2017-08-11 Tracie Sucharski - Added shortcuts for Save Point, Save Net. Fixes #4982.

2017-08-11 Tracie Sucharski - Fixed save point and colorization of buttons. Fixes #4984.

2017-08-15 Tracie Sucharski - When ControlPoint is deleted, set the visibility of this widget to false, then to true in loadPoint(). Fixes #5073.

2018-03-23 Tracie Sucharski - Update the cnet filename with current cnet when it is changed.

2018-03-26 Tracie Sucharski - Added slot, setControlFromActive which update editor if a new active control net is set in ipce. References #4567.

2018-03-30 Tracie Sucharski - Save Control in addition to the control net and use Control to write the control net so Control can keep track of the modification state of the control net.

2018-04-25 Tracie Sucharski - Fix bug when creating a control point from CubeDnView or FootprintView if a ground source exists in the serial number list. Fixes #5399.

2018-05-02 Tracie Sucharski - Colorize save buttons properly when creating new control point and loading a different control point.

2018-06-11 Summer Stapleton - Stripped path from displayed filename of Control Network and set the tooltip to the full path for easier access.

2018-06-19 Adam Goins - Fixed updating references in selectLeftMeasure and selectRightMeasure to fix a segfault that was occuring. #Fixes #5435

2018-06-28 Kaitlyn Lee - Removed shortcut from reload point button.

2018-07-07 Summer Stapleton - Added a QComboBox to the widget to allow for changing the active registration template from the widget itself.

2018-07-13 Kaitlyn Lee - Added calls to setModified(true) when a cnet is modified. References #5396.

2018-08-08 Tracie Sucharski - Removed temporary autosave of active control, most likely causing problems with large networks.

2018-10-04 Tracie Sucharski - Changed functionality of ground and radius source choices on constrained and fixed points. Fixes #5504.

2018-10-04 Tracie Sucharski - Removed calls to ControlNet::GetTargetRadii because of changes to ControlNet.

2018-10-05 Tracie Sucharski - Added radius source combo to the NewControlPoint dialog.

Definition at line 121 of file ControlPointEditWidget.h.

Constructor & Destructor Documentation

◆ ControlPointEditWidget()

Isis::ControlPointEditWidget::ControlPointEditWidget ( Directory * directory,
QWidget * parent,
bool addMeasures = false )

Consructs the ControlPointEditWidget widget.

Parameters
parentPointer to the parent widget for the ControlPointEditWidget
addMeasuresWhether or not to add the Add Measure to Point button

Definition at line 78 of file ControlPointEditWidget.cpp.

References addTemplates(), createPointEditor(), m_addMeasuresButton, m_changeAllGroundLocation, m_changeGroundLocationInNet, m_cnetModified, m_demOpen, m_editPoint, m_measureEditor, m_parent, m_serialNumberList, m_templateModified, and Isis::Directory::project().

◆ ~ControlPointEditWidget()

Isis::ControlPointEditWidget::~ControlPointEditWidget ( )
virtual

Definition at line 104 of file ControlPointEditWidget.cpp.

Member Function Documentation

◆ addTemplates

void Isis::ControlPointEditWidget::addTemplates ( TemplateList * templateList)
slot

Add registration TemplateList to combobox when imported to project.

Parameters
templateListReference to TemplateList that was imported

Definition at line 2969 of file ControlPointEditWidget.cpp.

References m_templateComboBox, Isis::FileName::name(), and Isis::TemplateList::type().

Referenced by ControlPointEditWidget().

◆ changeGroundLocationsInNet()

void Isis::ControlPointEditWidget::changeGroundLocationsInNet ( )
private

Change the location of all ground source locations in the ControlNet.

This changes the ControlPoint parameter, AprioriSurfacePointSourceFile.

Definition at line 950 of file ControlPointEditWidget.cpp.

References m_controlNet, and m_newGroundDir.

Referenced by checkGroundFileLocation().

◆ checkGroundFileLocation()

FileName Isis::ControlPointEditWidget::checkGroundFileLocation ( FileName groundFile)
private

Ground source file from control net cannot be found, give user option to give new location.

The option also exists to change for the rest of the ground points in the control net and to change the apriori xyz source file in the control net to the new location.

Parameters
groundFileFileName of ground source that has moved location
Returns
FileName Ground source with new location path

Definition at line 885 of file ControlPointEditWidget.cpp.

References changeGroundLocationsInNet(), Isis::FileName::fileExists(), m_changeAllGroundLocation, m_changeGroundLocationInNet, m_editPoint, m_newGroundDir, Isis::Directory::project(), Isis::Project::shapeDataRoot(), and Isis::FileName::toString().

Referenced by loadPoint().

◆ checkReference

void Isis::ControlPointEditWidget::checkReference ( )
privateslot

Change which measure is the reference.

Author
2012-04-26 Tracie Sucharski - moved funcitonality from measureSaved
History
2012-06-12 Tracie Sucharski - Moved check for ground loaded on left from the measureSaved method.

Definition at line 1993 of file ControlPointEditWidget.cpp.

References Isis::SerialNumberList::fileName(), m_editPoint, m_leftCombo, m_leftMeasure, m_rightCombo, m_serialNumberList, and Isis::FileName::name().

◆ clearEditPoint

void Isis::ControlPointEditWidget::clearEditPoint ( )
privateslot

Cleans up the edit point memory.

Definition at line 3183 of file ControlPointEditWidget.cpp.

References m_editPoint.

Referenced by createPointEditor().

◆ clearGroundSource()

void Isis::ControlPointEditWidget::clearGroundSource ( )
private

Clear out the ground source used for Constrained or Fixed control points.

Clears serial number, cube and gui elements.

Definition at line 1122 of file ControlPointEditWidget.cpp.

References Isis::ControlPoint::Free, m_editPoint, m_groundFilename, m_groundSN, m_groundSourceType, m_leftCombo, m_leftMeasure, m_pointFiles, m_rightCombo, m_rightMeasure, m_serialNumberList, Isis::SerialNumberList::remove(), selectLeftMeasure(), and selectRightMeasure().

Referenced by setGroundSourceInfo().

◆ colorizeAllSaveButtons

void Isis::ControlPointEditWidget::colorizeAllSaveButtons ( QString color)
privateslot

Definition at line 1196 of file ControlPointEditWidget.cpp.

◆ colorizeSaveNetButton

void Isis::ControlPointEditWidget::colorizeSaveNetButton ( bool reset = false)
slot

Turn "Save Net" button text to red.

TODO Need whoever is actually saving network to emit signal when net has been saved, so that button can be set back to black.

Author
2014-07-11 Tracie Sucharski

Definition at line 3120 of file ControlPointEditWidget.cpp.

References m_saveDefaultPalette, m_saveNet, and m_savePoint.

Referenced by createPointEditor(), and deletePoint().

◆ colorizeSavePointButton

void Isis::ControlPointEditWidget::colorizeSavePointButton ( )
privateslot

Refresh all necessary widgets in ControlPointEditWidget including the PointEditor and CubeViewports.

Author
2008-12-09 Tracie Sucharski
History

2010-12-15 Tracie Sucharski - Before setting m_editPoint to NULL, release memory. TODO: Why is the first if statement being done???

2011-10-20 Tracie Sucharski - If no control points exist in the network, emit proper signal and make sure editor and measure table are hidden.

Turn "Save Point" button text to red

Author
2011-06-14 Tracie Sucharski

Definition at line 3103 of file ControlPointEditWidget.cpp.

References m_savePoint.

Referenced by measureSaved(), setIgnorePoint(), setLockPoint(), and setPointType().

◆ createActions()

void Isis::ControlPointEditWidget::createActions ( )
private

◆ createControlPoint

void Isis::ControlPointEditWidget::createControlPoint ( double latitude,
double longitude,
Cube * cube = 0,
bool isGroundSource = false )
slot

◆ createControlPointGroupBox()

QGroupBox * Isis::ControlPointEditWidget::createControlPointGroupBox ( )
private

Creates the "Control Point" groupbox.

Returns
QGroupBox * The groupbox labeled "Control Point"

Definition at line 321 of file ControlPointEditWidget.cpp.

References groundSourceFileSelectionChanged(), m_groundSourceCombo, m_ignorePoint, m_lockPoint, m_pointTypeCombo, m_ptIdValue, m_radiusSourceCombo, Isis::ControlPoint::PointTypeToString(), setIgnorePoint(), setLockPoint(), and setPointType().

Referenced by createTopSplitter().

◆ createLeftMeasureGroupBox()

QGroupBox * Isis::ControlPointEditWidget::createLeftMeasureGroupBox ( )
private

Creates the "Left Measure" groupbox.

Returns
QGroupBox * The groupbox labeled "Left Measure"

Definition at line 384 of file ControlPointEditWidget.cpp.

References m_ignoreLeftMeasure, m_leftCombo, m_leftMeasureType, m_leftReference, m_lockLeftMeasure, selectLeftMeasure(), setIgnoreLeftMeasure(), and setLockLeftMeasure().

Referenced by createTopSplitter().

◆ createPointEditor()

void Isis::ControlPointEditWidget::createPointEditor ( QWidget * parent,
bool addMeasures )
private

Create the widget for editing control points.

Parameters
parentPointer to parent QWidget
addMeasuresWhether or not to add the Add Measure to Point button
History

2008-11-24 Jeannie Walldren - Added "Goodness of Fit" to right and left measure info.

2008-11-26 Jeannie Walldren - Added "Number of Measures" to QnetTool point information. Moved setWindowTitle() command to updateNet() method. Added connection between Ignore checkbox toggle() slot and ignoreChanged() signal

2008-12-29 Jeannie Walldren - Disabled ground point check box and commented out connection between check box and setGroundPoint() method.

2008-12-30 Jeannie Walldren - Added connections to toggle measures' Ignore check boxes if ignoreLeftChanged() and ignoreRightChanged() are emitted. Replaced reference to ignoreChanged() with ignorePointChanged().

2010-06-03 Jeannie Walldren - Removed "std::" since "using namespace std"

Definition at line 154 of file ControlPointEditWidget.cpp.

References clearEditPoint(), colorizeSaveNetButton(), createActions(), createTopSplitter(), m_addMeasuresButton, m_cnetFileName, m_cnetFileNameLabel, m_measureEditor, m_reloadPoint, m_saveDefaultPalette, m_saveNet, m_savePoint, m_templateComboBox, measureSaved(), Isis::FileName::name(), Isis::Directory::project(), Isis::Project::regTemplates(), reloadPoint(), resetTemplateComboBox(), saveNet(), savePoint(), and setTemplateFile().

Referenced by ControlPointEditWidget().

◆ createRightMeasureGroupBox()

QGroupBox * Isis::ControlPointEditWidget::createRightMeasureGroupBox ( )
private

Create the "Right Measure" groupbox.

Returns
The groupbox labeled "Right Measure"
History
2015-10-29 Ian Humphrey - Added shortcuts (PageUp/PageDown) for selecting previous or next measure in right measures box. References #2324.

Definition at line 426 of file ControlPointEditWidget.cpp.

References m_ignoreRightMeasure, m_lockRightMeasure, m_rightCombo, m_rightMeasureType, m_rightReference, nextRightMeasure(), previousRightMeasure(), selectRightMeasure(), setIgnoreRightMeasure(), and setLockRightMeasure().

Referenced by createTopSplitter().

◆ createTemplateEditorWidget()

void Isis::ControlPointEditWidget::createTemplateEditorWidget ( )
private

Creates the Widget which contains the template editor and its toolbar.

Definition at line 484 of file ControlPointEditWidget.cpp.

References m_openTemplateFile, m_saveTemplateFile, m_saveTemplateFileAs, m_templateEditor, m_templateEditorWidget, and setTemplateModified().

Referenced by createTopSplitter().

◆ createTemporaryGroundMeasure()

ControlMeasure * Isis::ControlPointEditWidget::createTemporaryGroundMeasure ( )
private

Create a temporary measure to hold the ground point info for ground source.

Returns
ControlMeasure* the created ground measure
History

2015-05-19 Ian Humphrey and Makayla Shepherd - Original version adapted from loadPoint() to encapsulate duplicated code in loadGroundMeasure().

2016-11-04 Tracie Sucharski - Combined findPointLocation and createTemporaryGroundMeasure so that ground information doesn't need to be re-created

Definition at line 754 of file ControlPointEditWidget.cpp.

References Isis::ControlMeasure::Candidate, m_controlNet, m_editPoint, m_groundSN, m_serialNumberList, Isis::SerialNumberList::serialNumberIndex(), Isis::ControlMeasure::SetCubeSerialNumber(), and setGroundSourceInfo().

Referenced by loadGroundMeasure(), and loadPoint().

◆ createTopSplitter()

QSplitter * Isis::ControlPointEditWidget::createTopSplitter ( )
private

Creates everything above the ControlPointEdit.

Returns
QSplitter * The splitter containing the widgets above

Definition at line 288 of file ControlPointEditWidget.cpp.

References createControlPointGroupBox(), createLeftMeasureGroupBox(), createRightMeasureGroupBox(), createTemplateEditorWidget(), and m_templateEditorWidget.

Referenced by createPointEditor().

◆ deletePoint

void Isis::ControlPointEditWidget::deletePoint ( ControlPoint * controlPoint)
slot

Gives user options for deleting a control point from the control network.

Parameters
controlPoint(ControlPoint *) Control point to be deleted

Definition at line 1566 of file ControlPointEditWidget.cpp.

References colorizeSaveNetButton(), Isis::SerialNumberList::fileName(), loadPoint(), m_control, m_controlNet, m_editPoint, m_serialNumberList, and Isis::ControlPoint::PointLocked.

Referenced by Isis::Directory::deleteControlPoint().

◆ demRadius()

double Isis::ControlPointEditWidget::demRadius ( double latitude,
double longitude )
private

Return a radius values from the dem using bilinear interpolation.

Author
2011-08-01 Tracie Sucharski

Definition at line 1068 of file ControlPointEditWidget.cpp.

References m_demOpen, and Isis::Null.

◆ editPoint()

ControlPoint * Isis::ControlPointEditWidget::editPoint ( )

Definition at line 119 of file ControlPointEditWidget.cpp.

◆ editPointId()

QString Isis::ControlPointEditWidget::editPointId ( )

Definition at line 109 of file ControlPointEditWidget.cpp.

◆ eventFilter()

bool Isis::ControlPointEditWidget::eventFilter ( QObject * o,
QEvent * e )
protected

Event filter for ControlPointEditWidget.

Determines whether to update left or right measure info.

Parameters
oPointer to QObject
ePointer to QEvent
Returns
bool Indicates whether the event type is "Leave".

Definition at line 2733 of file ControlPointEditWidget.cpp.

References m_leftCombo, m_rightCombo, updateLeftMeasureInfo(), and updateRightMeasureInfo().

◆ groundSourceFileSelectionChanged

void Isis::ControlPointEditWidget::groundSourceFileSelectionChanged ( int index)
privateslot

Slot called when user changes selection in m_groundSourceCombo.

Parameters
indexint

Definition at line 1108 of file ControlPointEditWidget.cpp.

References loadGroundMeasure(), m_groundFilename, and m_groundSourceCombo.

Referenced by createControlPointGroupBox().

◆ initDem()

void Isis::ControlPointEditWidget::initDem ( QString demFile)
private

Initialize the given Dem and appropriate member variables for later use editing Fixed or Constrained control points.

Parameters
demFileQString The file name of the DEM

Definition at line 1017 of file ControlPointEditWidget.cpp.

References m_demOpen, and Isis::FileName::name().

Referenced by openReferenceRadius().

◆ IsMeasureLocked()

bool Isis::ControlPointEditWidget::IsMeasureLocked ( QString serialNumber)
private

Check for implicitly locked measure in m_editPoint.

If point is Locked, and this measure is the reference, it is implicity Locked. Because measure is a copy, the ControlPoint::IsEditLocked() which checks for implicit Lock on Reference measures does not work because there is not a parent point.

Parameters
[in]serialNumber(QString) Serial number of measure to be checked
Author
2011-07-06 Tracie Sucharski

Definition at line 3147 of file ControlPointEditWidget.cpp.

References m_editPoint.

Referenced by updateLeftMeasureInfo(), and updateRightMeasureInfo().

◆ loadGroundMeasure()

void Isis::ControlPointEditWidget::loadGroundMeasure ( )
private

Load ground measure into right side and add to file combo boxes.

Author
2013-12-06 Tracie Sucharski
History

2013-12-06 Tracie Sucharski - Original version.

2015-05-19 Ian Humphrey and Makayla Shepherd - moved duplicated code to findPointLocation() and createTemporaryGroundMeasure().

Definition at line 721 of file ControlPointEditWidget.cpp.

References createTemporaryGroundMeasure(), Isis::SerialNumberList::fileName(), m_editPoint, m_leftCombo, m_pointFiles, m_rightCombo, m_serialNumberList, Isis::FileName::name(), selectRightMeasure(), and updateSurfacePointInfo().

Referenced by groundSourceFileSelectionChanged(), and setPointType().

◆ loadPoint()

void Isis::ControlPointEditWidget::loadPoint ( QString serialNumber = "")
private

Load point into ControlPointEditWidget.

Parameters
serialNumber(QString) The serial number of cube point was chosen from.
History

2008-11-26 Jeannie Walldren - Added "Number of Measures" to ControlPointEditWidget point information.

2010-06-03 Jeannie Walldren - Removed "std::" since "using namespace std"

2010-10-29 Tracie Sucharski - Changed pointfiles to QStringList

2011-04-20 Tracie Sucharski - Was not setting EditLock check box

2011-07-18 Tracie Sucharski - Fixed bug with loading ground measure-use AprioriSurface point, not lat,lon of reference measure unless there is no apriori surface point.

2012-05-08 Tracie Sucharski - m_leftFile changed from IString to QString.

2012-10-02 Tracie Sucharski - When creating a new point, load the cube the user clicked on first on the left side, use m_leftFile.

Definition at line 1232 of file ControlPointEditWidget.cpp.

References checkGroundFileLocation(), createTemporaryGroundMeasure(), Isis::Shape::fileName(), Isis::SerialNumberList::fileName(), Isis::ControlPoint::Free, m_editPoint, m_groundSN, m_groundSourceCombo, m_ignorePoint, m_leftCombo, m_lockPoint, m_measureEditor, m_nameToShapeMap, m_numberProjectShapesWithPoint, m_pointFiles, m_pointTypeCombo, m_projectShapeNames, m_ptIdValue, m_radiusSourceCombo, m_rightCombo, m_serialNumberList, Isis::FileName::name(), Isis::ControlPoint::PointTypeToString(), selectLeftMeasure(), selectRightMeasure(), setShapesForPoint(), and updateSurfacePointInfo().

Referenced by deletePoint(), setEditPoint(), and setPointType().

◆ loadTemplateFile()

void Isis::ControlPointEditWidget::loadTemplateFile ( QString fn)
private

Updates the current template file being used.

Parameters
fnThe file path of the new template file

Definition at line 2801 of file ControlPointEditWidget.cpp.

References m_saveTemplateFile, m_templateEditor, and m_templateModified.

Referenced by openTemplateFile(), setEditPoint(), and setTemplateFile().

◆ measureSaved

void Isis::ControlPointEditWidget::measureSaved ( )
privateslot

This method is connected with the measureSaved() signal from ControlMeasureEditWidget.

History

2008-11-26 Jeannie Walldren - Added message box to warn the user that they are saving an "Ignore" point and ask whether they would like to set Ignore=false. This emits an ignoreChanged() signal so the "Ignore" box in the window is unchecked.

2008-12-30 Jeannie Walldren - Modified to set measures in viewports to Ignore=False if when saving, the user chooses to set a point's Ignore=False. Replaced reference to ignoreChanged() with ignorePointChanged().

2008-12-31 Jeannie Walldren - Added question box to ask user whether the current reference measure should be replaced with the measure in the left viewport.

2010-01-27 Jeannie Walldren - Added question box to warn the user that they are saving an "Ignore" measure and ask whether they would like to set Ignore=False. This emits an ignoreRightChanged() signal so the "Ignore" box in the window is unchecked. Modified Ignore Point message for clarity.

2010-11-19 Tracie Sucharski - Renamed from pointSaved.

2011-03-03 Tracie Sucharski - Do not save left measure unless the ignore flag was changed, that is the only change allowed on the left measure.

2011-04-20 Tracie Sucharski - If left measure equals right measure, copy right into left. Also if EditLock true and user does not want to change, then do not save measure. Remove signals EditPointChanged and netChanged, since these should only happen when the point is saved.

2011-07-01 Tracie Sucharski - Fixed bug where the edit measure EditLocked=True, but the original measure was False, and we woouldn't allow the measure to be saved.

2011-07-25 Tracie Sucharski - Removed editPointChanged signal since the editPoint is not changed. This helped with match windows blinking due to refresh.

2011-09-22 Tracie Sucharski - When checking ignore status on right measure, check both original and edit measure.

2012-04-09 Tracie Sucharski - When checking if left measure editLock has changed, use measure->IsEditLocked() instead of this classes IsMeasureLocked() because it checks the m_editPoint measure instead of the measure loaded into the point editor.

2012-04-26 Tracie Sucharski - cleaned up, moved reference checking and updating ground surface point to new methods.

2012-05-07 Tracie Sucharski - Removed code to re-load left measure if left and right are the same, this is already handled in ControlPointEdit::saveMeasure.

2012-06-12 Tracie Sucharski - Change made on 2012-04-26 caused a bug where if no ground is loaded the checkReference was not being called and reference measure could not be changed and there was no warning printed.

2013-12-05 Tracie Sucharski - If saving measure on fixed or constrained point and reference measure is ignored, print warning and return.

2015-06-05 Makayla Shepherd and Ian Humphery - Modified to return out of the method when checkReference returns false.

Definition at line 1748 of file ControlPointEditWidget.cpp.

References colorizeSavePointButton(), Isis::ControlPoint::Free, m_controlNet, m_editPoint, m_groundSN, m_leftCube, m_leftMeasure, m_measureEditor, m_rightMeasure, updateLeftMeasureInfo(), updateRightMeasureInfo(), Isis::Application::UserName(), and validateMeasureChange().

Referenced by createPointEditor().

◆ nextRightMeasure

void Isis::ControlPointEditWidget::nextRightMeasure ( )
privateslot

Selects the next right measure when activated by key shortcut.

This slot is intended to handle selecting the next right measure when the attached shortcut (PageDown) is activated. This slot checks if the next index is in bounds.

History
2015-10-29 Ian Humphrey - Created slot. References #2324.

Definition at line 2500 of file ControlPointEditWidget.cpp.

References m_rightCombo, and selectRightMeasure().

Referenced by createRightMeasureGroupBox().

◆ okToContinue()

bool Isis::ControlPointEditWidget::okToContinue ( )
private

Checks the state of the template registration file and determines if it is safe to continue opening a template file.

Returns
bool True if the template file was saved (user clicked "Yes")

Definition at line 2754 of file ControlPointEditWidget.cpp.

References m_templateModified, and saveTemplateFileAs().

Referenced by openTemplateFile().

◆ openReferenceRadius

void Isis::ControlPointEditWidget::openReferenceRadius ( )
privateslot

Open a radius source using the shape model of the reference measure of m_editPoint.

Author
2016-10-07 Makayla Shepherd - Changed radius source handling and moved it from OpenGround.

Definition at line 972 of file ControlPointEditWidget.cpp.

References Isis::SerialNumberList::fileName(), initDem(), m_editPoint, and m_serialNumberList.

◆ openTemplateFile

void Isis::ControlPointEditWidget::openTemplateFile ( )
privateslot

Prompt user for a registration template file to open.

Once the file is selected, loadTemplateFile() is called to update the current template file being used.

Definition at line 2778 of file ControlPointEditWidget.cpp.

References loadTemplateFile(), m_measureEditor, and okToContinue().

Referenced by createActions().

◆ previousRightMeasure

void Isis::ControlPointEditWidget::previousRightMeasure ( )
privateslot

Selects the previous right measure when activated by key shortcut.

This slot is intended to handle selecting the previous right measure when the attached shortcut (PageUp) is activated. This slot checks if the previous index is in bounds.

History
2015-10-29 Ian Humphrey - Created slot. References #2324.

Definition at line 2520 of file ControlPointEditWidget.cpp.

References m_rightCombo, and selectRightMeasure().

Referenced by createRightMeasureGroupBox().

◆ reloadPoint

void Isis::ControlPointEditWidget::reloadPoint ( )
privateslot

Set both chip viewports to their original measures for the control point.

History
2017-07-31 Christopher Combs - Original version

Definition at line 640 of file ControlPointEditWidget.cpp.

References m_editPoint, m_leftCube, m_leftMeasure, m_measureEditor, m_rightCube, and m_rightMeasure.

Referenced by createPointEditor().

◆ resetTemplateComboBox

void Isis::ControlPointEditWidget::resetTemplateComboBox ( QString fileName)
privateslot

Reset the selected template in the template combobox if the template selected by the user does not satisfy requirements for the control measure.

Parameters
fileNameThe filename that was previously selected in the template combo box

Definition at line 3004 of file ControlPointEditWidget.cpp.

References m_templateComboBox.

Referenced by createPointEditor().

◆ saveChips

void Isis::ControlPointEditWidget::saveChips ( )
privateslot

Slot which calls ControlPointEditWidget slot to save chips.

Author
2009-03-17 Tracie Sucharski

Definition at line 2946 of file ControlPointEditWidget.cpp.

References m_measureEditor.

Referenced by createActions().

◆ saveNet

void Isis::ControlPointEditWidget::saveNet ( )
privateslot

This slot is needed because we cannot directly emit a signal with a ControlNet argument after the "Save Net" push button is selected.

History
2014-07-11 Tracie Sucharski - Original version.

Definition at line 3171 of file ControlPointEditWidget.cpp.

References m_control, m_saveDefaultPalette, and m_saveNet.

Referenced by createPointEditor().

◆ savePoint

void Isis::ControlPointEditWidget::savePoint ( )
privateslot

Save edit point to the Control Network.

Up to this point the point is simply a copy and does not exist in the network.

Author
2010-11-19 Tracie Sucharski
History

2011-04-20 Tracie Sucharski - If EditLock set, prompt for changing and do not save point if editLock not changed.

2011-07-05 Tracie Sucharski - Move point EditLock error checking to individual point parameter setting methods, ie. SetPointType, SetIgnorePoint.

Definition at line 2190 of file ControlPointEditWidget.cpp.

References Isis::ControlPoint::Delete(), Isis::ControlPoint::Free, Isis::ControlPoint::GetId(), Isis::ControlPoint::GetType(), Isis::ControlPoint::HasSerialNumber(), m_cnetModified, m_control, m_controlNet, m_editPoint, m_groundSN, m_measureEditor, m_saveDefaultPalette, and m_savePoint.

Referenced by createPointEditor().

◆ saveTemplateFile

void Isis::ControlPointEditWidget::saveTemplateFile ( )
privateslot

Save the file opened in the template editor.

Definition at line 2835 of file ControlPointEditWidget.cpp.

References m_measureEditor, m_templateModified, and writeTemplateFile().

Referenced by createActions().

◆ saveTemplateFileAs

void Isis::ControlPointEditWidget::saveTemplateFileAs ( )
privateslot

Save the contents of template editor to a file chosen by the user.

Definition at line 2850 of file ControlPointEditWidget.cpp.

References writeTemplateFile().

Referenced by createActions(), and okToContinue().

◆ selectLeftMeasure

void Isis::ControlPointEditWidget::selectLeftMeasure ( int index)
privateslot

Select left measure.

Parameters
indexIndex of file from the point files vector
History

2010-06-03 Jeannie Walldren - Removed "std::" since "using namespace std"

2011-07-06 Tracie Sucharski - If point is Locked, and measure is reference, lock the measure.

2012-10-02 Tracie Sucharski - If measure's cube is not viewed, print error and make sure old measure is retained.

Definition at line 2544 of file ControlPointEditWidget.cpp.

References Isis::SerialNumberList::fileName(), m_editPoint, m_leftCombo, m_leftCube, m_leftMeasure, m_measureEditor, m_pointFiles, m_serialNumberList, Isis::SerialNumberList::serialNumber(), and updateLeftMeasureInfo().

Referenced by clearGroundSource(), createLeftMeasureGroupBox(), and loadPoint().

◆ selectRightMeasure

void Isis::ControlPointEditWidget::selectRightMeasure ( int index)
privateslot

Select right measure.

Parameters
indexIndex of file from the point files vector
History

2010-06-03 Jeannie Walldren - Removed "std::" since "using namespace std"

2012-10-02 Tracie Sucharski - If measure's cube is not viewed, print error and make sure old measure is retained.

Definition at line 2592 of file ControlPointEditWidget.cpp.

References Isis::SerialNumberList::fileName(), m_editPoint, m_measureEditor, m_pointFiles, m_rightCombo, m_rightCube, m_rightMeasure, m_serialNumberList, Isis::SerialNumberList::serialNumber(), and updateRightMeasureInfo().

Referenced by clearGroundSource(), createRightMeasureGroupBox(), loadGroundMeasure(), loadPoint(), nextRightMeasure(), and previousRightMeasure().

◆ setControl

void Isis::ControlPointEditWidget::setControl ( Control * control)
slot

New control network being edited.

Parameters
cnet(Control *) The control network to edit

Definition at line 672 of file ControlPointEditWidget.cpp.

References Isis::Control::controlNet(), Isis::Control::fileName(), m_cnetFileName, m_cnetFileNameLabel, m_control, and m_controlNet.

◆ setControlFromActive

void Isis::ControlPointEditWidget::setControlFromActive ( )
slot

New active control was set from ipce.

TODO: This will need to be redesigned with the setControl method to better handle editing points from different cnets.

Definition at line 695 of file ControlPointEditWidget.cpp.

References Isis::Project::activeControl(), m_cnetFileName, m_cnetFileNameLabel, m_control, m_controlNet, and Isis::Directory::project().

◆ setEditPoint

void Isis::ControlPointEditWidget::setEditPoint ( ControlPoint * controlPoint,
QString serialNumber = "" )
slot

Slot called by Directory to set the control point for editing.

Parameters
controlPoint(ControlPoint *) ControlPoint that will be loaded into editor
serialNumber(QString) Optional parameter indicating the serial number of the cube that the point was chosen from

Definition at line 1167 of file ControlPointEditWidget.cpp.

References loadPoint(), loadTemplateFile(), m_editPoint, and m_measureEditor.

Referenced by createControlPoint(), Isis::Directory::modifyControlPoint(), and Isis::ControlHealthMonitorView::openPointEditor().

◆ setGroundSourceInfo()

bool Isis::ControlPointEditWidget::setGroundSourceInfo ( )
private

Find the ground source location: First look at current edit point for parameter, AprioriXYZSourceFile.

If not there, see if user has selected a groundSource file from the groundSourceCombo. If file does not exist, give option to look in another location and change location in the ControlNet for either this point and/or all points in net.

Returns
bool success Returns the success status of setting ground source info

Definition at line 811 of file ControlPointEditWidget.cpp.

References Isis::SerialNumberList::add(), clearGroundSource(), Isis::SerialNumber::Compose(), Isis::Shape::fileName(), m_editPoint, m_groundFilename, m_groundSN, m_groundSourceCombo, m_groundSourceType, m_nameToShapeMap, and m_serialNumberList.

Referenced by createTemporaryGroundMeasure().

◆ setIgnoreLeftMeasure

void Isis::ControlPointEditWidget::setIgnoreLeftMeasure ( bool ignore)
privateslot

Set the "Ignore" keyword of the measure shown in the left viewport to the value of the input parameter.

Parameters
ignoreBoolean value that determines the Ignore value for the left measure.
History

2010-01-27 Jeannie Walldren - Fixed bug that resulted in segfault. Moved the check whether m_rightMeasure is null before the check whether m_rightMeasure equals m_leftMeasure.

2010-12-15 Tracie Sucharski - Remove netChanged, the point is not changed in the net unless "Save Point" is selected.

2011-06-27 Tracie Sucharski - emit signal indicating a measure parameter has changed.

Definition at line 2405 of file ControlPointEditWidget.cpp.

References m_ignoreRightMeasure, m_leftMeasure, and m_rightMeasure.

Referenced by createLeftMeasureGroupBox().

◆ setIgnorePoint

void Isis::ControlPointEditWidget::setIgnorePoint ( bool ignore)
privateslot

Set point's "Ignore" keyword to the value of the input parameter.

Parameters
ignoreBoolean value that determines the Ignore value for this point.
History
2010-12-15 Tracie Sucharski - Remove netChanged, the point is not changed in the net unless "Save Point" is selected.

Definition at line 2335 of file ControlPointEditWidget.cpp.

References colorizeSavePointButton(), m_editPoint, m_ignorePoint, and Isis::ControlPoint::PointLocked.

Referenced by createControlPointGroupBox().

◆ setIgnoreRightMeasure

void Isis::ControlPointEditWidget::setIgnoreRightMeasure ( bool ignore)
privateslot

Set the "Ignore" keyword of the measure shown in the right viewport to the value of the input parameter.

Parameters
ignoreBoolean value that determines the Ignore value for the right measure.
History

2010-01-27 Jeannie Walldren - Fixed bug that resulted in segfault. Moved the check whether m_leftMeasure is null before the check whether m_rightMeasure equals m_leftMeasure.

2010-12-15 Tracie Sucharski - Remove netChanged, the point is not changed in the net unless "Save Point" is selected.

2011-06-27 Tracie Sucharski - emit signal indicating a measure parameter has changed.

Definition at line 2475 of file ControlPointEditWidget.cpp.

References m_ignoreLeftMeasure, m_leftMeasure, and m_rightMeasure.

Referenced by createRightMeasureGroupBox().

◆ setLockLeftMeasure

void Isis::ControlPointEditWidget::setLockLeftMeasure ( bool lock)
privateslot

Set the "EditLock" keyword of the measure shown in the left viewport to the value of the input parameter.

Parameters
lockBoolean value that determines the EditLock value for the left measure.
Author
2011-03-07 Tracie Sucharski
History

2011-06-27 Tracie Sucharski - emit signal indicating a measure parameter has changed.

2012-04-16 Tracie Sucharski - When attempting to un-lock a measure print error if point is locked.

Definition at line 2365 of file ControlPointEditWidget.cpp.

References m_editPoint, m_leftMeasure, m_lockLeftMeasure, m_lockRightMeasure, and m_rightMeasure.

Referenced by createLeftMeasureGroupBox().

◆ setLockPoint

void Isis::ControlPointEditWidget::setLockPoint ( bool lock)
privateslot

Set point's "EditLock" keyword to the value of the input parameter.

Parameters
lockBoolean value that determines the EditLock value for this point.
Author
2011-03-07 Tracie Sucharski

Definition at line 2316 of file ControlPointEditWidget.cpp.

References colorizeSavePointButton(), and m_editPoint.

Referenced by createControlPointGroupBox().

◆ setLockRightMeasure

void Isis::ControlPointEditWidget::setLockRightMeasure ( bool lock)
privateslot

Set the "EditLock" keyword of the measure shown in the right viewport to the value of the input parameter.

Parameters
lockBoolean value that determines the EditLock value for the right measure.
Author
2011-03-07 Tracie Sucharski
History

2011-06-27 Tracie Sucharski - emit signal indicating a measure parameter has changed.

2012-04-16 Tracie Sucharski - When attempting to un-lock a measure print error if point is locked.

Definition at line 2435 of file ControlPointEditWidget.cpp.

References m_editPoint, m_leftMeasure, m_lockLeftMeasure, m_lockRightMeasure, and m_rightMeasure.

Referenced by createRightMeasureGroupBox().

◆ setPointType

void Isis::ControlPointEditWidget::setPointType ( int pointType)
privateslot

Set the point type.

Parameters
pointTypeint Index from point type combo box
Author
2011-07-05 Tracie Sucharski
History

2013-12-06 Tracie Sucharski - If changing point type to constrained or fixed make sure reference measure is not ignored.

2015-05-19 Ian Humphrey and Makayla Shepherd - When changing a ground point between fixed and constrained and vice versa, the ground measure will not be reloaded (otherwise m_editPoint->Add() will throw an exception within a connected slot).

Definition at line 2248 of file ControlPointEditWidget.cpp.

References colorizeSavePointButton(), Isis::ControlPoint::Free, loadGroundMeasure(), loadPoint(), m_editPoint, m_groundSourceCombo, m_leftMeasure, m_parent, m_pointTypeCombo, m_radiusSourceCombo, and Isis::ControlPoint::PointLocked.

Referenced by createControlPointGroupBox().

◆ setSerialNumberList

void Isis::ControlPointEditWidget::setSerialNumberList ( SerialNumberList * snList)
slot

Set the serial number list.

Parameters
snListPointer to the SerialNumberList

Definition at line 651 of file ControlPointEditWidget.cpp.

References m_serialNumberList.

◆ setShapesForPoint()

void Isis::ControlPointEditWidget::setShapesForPoint ( double latitude = Null,
double longitude = Null )
private

Fill m_projectShapeNames with ALL shapes currently in project.

The first m_numberProjectShapesWithPoint actually contain the location of m_editPoint.

Parameters
latitude(double) Latitude for determining point location. Defaults to Null which results in the m_editPoint location being used, AprioriCoordinates if they exist, otherwise the reference measure's location will be used.
longitude(double) Longitude for determining point location. Defaults to Null which results in the m_editPoint location being used, AprioriCoordinates if they exist, otherwise the reference measure's location will be used.

Definition at line 582 of file ControlPointEditWidget.cpp.

References Isis::Shape::cube(), Isis::Shape::fileName(), m_controlNet, m_editPoint, m_nameToShapeMap, m_numberProjectShapesWithPoint, m_projectShapeNames, m_serialNumberList, Isis::Null, Isis::Directory::project(), and Isis::SerialNumberList::serialNumberIndex().

Referenced by createControlPoint(), and loadPoint().

◆ setTemplateFile

void Isis::ControlPointEditWidget::setTemplateFile ( QString filename)
privateslot

Appends the filename to the registrations path (unless this is the default template) and calls setTemplateFile for the control measure.

Parameters
filenameThis is the import directory and the filename of the template file selected from the QComboBox.

Definition at line 2986 of file ControlPointEditWidget.cpp.

References loadTemplateFile(), m_measureEditor, Isis::Directory::project(), and Isis::Project::templateRoot().

Referenced by createPointEditor().

◆ setTemplateModified

void Isis::ControlPointEditWidget::setTemplateModified ( )
privateslot

Called when the template file is modified by the template editor.

Definition at line 2825 of file ControlPointEditWidget.cpp.

References m_saveTemplateFile, and m_templateModified.

Referenced by createTemplateEditorWidget().

◆ showHideTemplateEditor

void Isis::ControlPointEditWidget::showHideTemplateEditor ( )
privateslot

Toggles the visibility of the template editor widget.

Definition at line 2955 of file ControlPointEditWidget.cpp.

References m_templateEditorWidget.

Referenced by createActions().

◆ updateGroundPosition

void Isis::ControlPointEditWidget::updateGroundPosition ( )
privateslot

Definition at line 2043 of file ControlPointEditWidget.cpp.

◆ updateLeftMeasureInfo

void Isis::ControlPointEditWidget::updateLeftMeasureInfo ( )
privateslot

Update the left measure information.

History

2008-11-24 Jeannie Walldren - Added "Goodness of Fit" to left measure info.

2010-07-22 Tracie Sucharski - Updated new measure types associated with implementation of binary control networks.

2010-12-27 Tracie Sucharski - Write textual Null instead of the numeric Null for sample & line residuals.

2011-04-20 Tracie Sucharski - Set EditLock check box correctly

2011-05-20 Tracie Sucharski - Added Reference output

2011-07-19 Tracie Sucharski - Did some re-arranging and added sample/line shifts.

Definition at line 2648 of file ControlPointEditWidget.cpp.

References Isis::ControlMeasure::Candidate, IsMeasureLocked(), m_editPoint, m_ignoreLeftMeasure, m_leftMeasure, m_leftMeasureType, m_leftReference, m_lockLeftMeasure, Isis::ControlMeasure::Manual, Isis::ControlMeasure::RegisteredPixel, and Isis::ControlMeasure::RegisteredSubPixel.

Referenced by eventFilter(), measureSaved(), and selectLeftMeasure().

◆ updateRightMeasureInfo

void Isis::ControlPointEditWidget::updateRightMeasureInfo ( )
privateslot

Update the right measure information.

History

2008-11-24 Jeannie Walldren - Added "Goodness of Fit" to right measure info.

2010-06-03 Jeannie Walldren - Removed "std::" since "using namespace std"

2010-07-22 Tracie Sucharski - Updated new measure types associated with implementation of binary control networks.

2010-12-27 Tracie Sucharski - Write textual Null instead of the numeric Null for sample & line residuals.

2011-04-20 Tracie Sucharski - Set EditLock check box correctly

2011-05-20 Tracie Sucharski - Added Reference output

2011-07-19 Tracie Sucharski - Did some re-arranging and added sample/line shifts.

Definition at line 2694 of file ControlPointEditWidget.cpp.

References Isis::ControlMeasure::Candidate, IsMeasureLocked(), m_editPoint, m_ignoreRightMeasure, m_lockRightMeasure, m_rightMeasure, m_rightMeasureType, m_rightReference, Isis::ControlMeasure::Manual, Isis::ControlMeasure::RegisteredPixel, and Isis::ControlMeasure::RegisteredSubPixel.

Referenced by eventFilter(), measureSaved(), and selectRightMeasure().

◆ updateSurfacePointInfo

void Isis::ControlPointEditWidget::updateSurfacePointInfo ( )
privateslot

Update the Surface Point Information in the ControlPointEditWidget.

Author
2011-03-01 Tracie Sucharski
History

2011-05-12 Tracie Sucharski - Type printing Apriori Values

2011-05-24 Tracie Sucharski - Set target radii on apriori surface point, so that sigmas can be converted to meters.

Definition at line 3028 of file ControlPointEditWidget.cpp.

References m_editPoint, and Isis::Null.

Referenced by loadGroundMeasure(), and loadPoint().

◆ validateMeasureChange()

bool Isis::ControlPointEditWidget::validateMeasureChange ( ControlMeasure * m)
private

Validates a change to a control measure.

Parameters
m(ControlMeasure *) Pointer to the ControlMeasure
Returns
bool True if the change to the measure is valid

Definition at line 1848 of file ControlPointEditWidget.cpp.

References Isis::SerialNumberList::fileName(), m_editPoint, m_leftCombo, m_leftMeasure, m_lockLeftMeasure, m_lockRightMeasure, m_measureEditor, m_rightCombo, m_serialNumberList, and Isis::FileName::name().

Referenced by measureSaved().

◆ viewTemplateFile

void Isis::ControlPointEditWidget::viewTemplateFile ( )
privateslot

Allows the user to view the template file that is currently set.

Author
2008-12-10 Jeannie Walldren
History

2008-12-10 Jeannie Walldren - Original Version

2008-12-10 Jeannie Walldren - Added "" namespace to PvlEditDialog reference and changed registrationDialog from pointer to object

2008-12-15 Jeannie Walldren - Added QMessageBox warning in case Template File cannot be read.

Definition at line 2920 of file ControlPointEditWidget.cpp.

References m_measureEditor.

◆ writeTemplateFile

void Isis::ControlPointEditWidget::writeTemplateFile ( QString fn)
privateslot

Write the contents of the template editor to the file provided.

Parameters
fnThe filename to write to

Definition at line 2868 of file ControlPointEditWidget.cpp.

References m_measureEditor, m_saveTemplateFile, m_templateEditor, and m_templateModified.

Referenced by saveTemplateFile(), and saveTemplateFileAs().

Member Data Documentation

◆ m_addMeasuresButton

bool Isis::ControlPointEditWidget::m_addMeasuresButton
private

Indicates whether or not to add "Add Measures(s) to Point".

Definition at line 240 of file ControlPointEditWidget.h.

Referenced by ControlPointEditWidget(), and createPointEditor().

◆ m_aprioriLatitude

QPointer<QLabel> Isis::ControlPointEditWidget::m_aprioriLatitude
private

Definition at line 275 of file ControlPointEditWidget.h.

◆ m_aprioriLongitude

QPointer<QLabel> Isis::ControlPointEditWidget::m_aprioriLongitude
private

Definition at line 276 of file ControlPointEditWidget.h.

◆ m_aprioriRadius

QPointer<QLabel> Isis::ControlPointEditWidget::m_aprioriRadius
private

Definition at line 277 of file ControlPointEditWidget.h.

◆ m_changeAllGroundLocation

bool Isis::ControlPointEditWidget::m_changeAllGroundLocation
private

Change the ground source location of all fixed, constrained points in the network.

Definition at line 322 of file ControlPointEditWidget.h.

Referenced by checkGroundFileLocation(), and ControlPointEditWidget().

◆ m_changeGroundLocationInNet

bool Isis::ControlPointEditWidget::m_changeGroundLocationInNet
private

Change the ground source location.

Definition at line 324 of file ControlPointEditWidget.h.

Referenced by checkGroundFileLocation(), and ControlPointEditWidget().

◆ m_closePointEditor

QPointer<QAction> Isis::ControlPointEditWidget::m_closePointEditor
private

Action to close the point editor.

Definition at line 246 of file ControlPointEditWidget.h.

Referenced by createActions().

◆ m_cnetFileName

QString Isis::ControlPointEditWidget::m_cnetFileName
private

Filename of the control network that is being modified.

Definition at line 242 of file ControlPointEditWidget.h.

Referenced by createPointEditor(), setControl(), and setControlFromActive().

◆ m_cnetFileNameLabel

QPointer<QLabel> Isis::ControlPointEditWidget::m_cnetFileNameLabel
private

Label with name of the control network file.

Definition at line 243 of file ControlPointEditWidget.h.

Referenced by createPointEditor(), setControl(), and setControlFromActive().

◆ m_cnetModified

bool Isis::ControlPointEditWidget::m_cnetModified
private

Indicates if the control network has been modified.

Definition at line 244 of file ControlPointEditWidget.h.

Referenced by ControlPointEditWidget(), and savePoint().

◆ m_control

QPointer<Control> Isis::ControlPointEditWidget::m_control
private

Current Control.

Definition at line 300 of file ControlPointEditWidget.h.

Referenced by deletePoint(), saveNet(), savePoint(), setControl(), and setControlFromActive().

◆ m_controlNet

QPointer<ControlNet> Isis::ControlPointEditWidget::m_controlNet
private

◆ m_demCube

QScopedPointer<Cube> Isis::ControlPointEditWidget::m_demCube
private

Definition at line 334 of file ControlPointEditWidget.h.

◆ m_demFile

QString Isis::ControlPointEditWidget::m_demFile
private

Definition at line 333 of file ControlPointEditWidget.h.

◆ m_demOpen

bool Isis::ControlPointEditWidget::m_demOpen
private

Has a radius source been opened?

Definition at line 332 of file ControlPointEditWidget.h.

Referenced by ControlPointEditWidget(), demRadius(), and initDem().

◆ m_directory

Directory* Isis::ControlPointEditWidget::m_directory
private

Definition at line 239 of file ControlPointEditWidget.h.

◆ m_editPoint

◆ m_groundFilename

QString Isis::ControlPointEditWidget::m_groundFilename
private

File name of ground source.

Definition at line 317 of file ControlPointEditWidget.h.

Referenced by clearGroundSource(), groundSourceFileSelectionChanged(), and setGroundSourceInfo().

◆ m_groundGmap

QScopedPointer<UniversalGroundMap> Isis::ControlPointEditWidget::m_groundGmap
private

Definition at line 320 of file ControlPointEditWidget.h.

◆ m_groundSN

QString Isis::ControlPointEditWidget::m_groundSN
private

◆ m_groundSourceCombo

QPointer<QComboBox> Isis::ControlPointEditWidget::m_groundSourceCombo
private

ComboBox for selecting ground source.

Definition at line 270 of file ControlPointEditWidget.h.

Referenced by createControlPointGroupBox(), groundSourceFileSelectionChanged(), loadPoint(), setGroundSourceInfo(), and setPointType().

◆ m_groundSourceType

ControlPoint::SurfacePointSource::Source Isis::ControlPointEditWidget::m_groundSourceType
private

SurfacePoint type of ground source.

Definition at line 319 of file ControlPointEditWidget.h.

Referenced by clearGroundSource(), and setGroundSourceInfo().

◆ m_ignoreLeftMeasure

QPointer<QCheckBox> Isis::ControlPointEditWidget::m_ignoreLeftMeasure
private

Checkbox to ignore the left measure.

Definition at line 286 of file ControlPointEditWidget.h.

Referenced by createLeftMeasureGroupBox(), setIgnoreRightMeasure(), and updateLeftMeasureInfo().

◆ m_ignorePoint

QPointer<QCheckBox> Isis::ControlPointEditWidget::m_ignorePoint
private

Checkbox to ignore the current point.

Definition at line 280 of file ControlPointEditWidget.h.

Referenced by createControlPointGroupBox(), loadPoint(), and setIgnorePoint().

◆ m_ignoreRightMeasure

QPointer<QCheckBox> Isis::ControlPointEditWidget::m_ignoreRightMeasure
private

Checkbox to ignore the right measure.

Definition at line 288 of file ControlPointEditWidget.h.

Referenced by createRightMeasureGroupBox(), setIgnoreLeftMeasure(), and updateRightMeasureInfo().

◆ m_lastUsedPointId

QString Isis::ControlPointEditWidget::m_lastUsedPointId
private

Point id of the last used control point.

Definition at line 303 of file ControlPointEditWidget.h.

Referenced by createControlPoint().

◆ m_leftCombo

QPointer<QComboBox> Isis::ControlPointEditWidget::m_leftCombo
private

Combobox to load left measure into left chip viewport.

Definition at line 290 of file ControlPointEditWidget.h.

Referenced by checkReference(), clearGroundSource(), createLeftMeasureGroupBox(), eventFilter(), loadGroundMeasure(), loadPoint(), selectLeftMeasure(), and validateMeasureChange().

◆ m_leftCube

QScopedPointer<Cube> Isis::ControlPointEditWidget::m_leftCube
private

Left cube.

Definition at line 310 of file ControlPointEditWidget.h.

Referenced by measureSaved(), reloadPoint(), and selectLeftMeasure().

◆ m_leftFile

QString Isis::ControlPointEditWidget::m_leftFile
private

Filename of left measure.

Definition at line 307 of file ControlPointEditWidget.h.

◆ m_leftMeasure

◆ m_leftMeasureType

QPointer<QLabel> Isis::ControlPointEditWidget::m_leftMeasureType
private

Label for the left measure's adjustment type.

Definition at line 282 of file ControlPointEditWidget.h.

Referenced by createLeftMeasureGroupBox(), and updateLeftMeasureInfo().

◆ m_leftReference

QPointer<QLabel> Isis::ControlPointEditWidget::m_leftReference
private

Label indicating if left measure is the reference.

Definition at line 281 of file ControlPointEditWidget.h.

Referenced by createLeftMeasureGroupBox(), and updateLeftMeasureInfo().

◆ m_lockLeftMeasure

QPointer<QCheckBox> Isis::ControlPointEditWidget::m_lockLeftMeasure
private

Checkbox to edit lock/unlock the left measure.

Definition at line 285 of file ControlPointEditWidget.h.

Referenced by createLeftMeasureGroupBox(), setLockLeftMeasure(), setLockRightMeasure(), updateLeftMeasureInfo(), and validateMeasureChange().

◆ m_lockPoint

QPointer<QCheckBox> Isis::ControlPointEditWidget::m_lockPoint
private

Checkbox that locks/unlocks the current point.

Definition at line 279 of file ControlPointEditWidget.h.

Referenced by createControlPointGroupBox(), and loadPoint().

◆ m_lockRightMeasure

QPointer<QCheckBox> Isis::ControlPointEditWidget::m_lockRightMeasure
private

Checkbox to edit lock/unlock the right measure.

Definition at line 287 of file ControlPointEditWidget.h.

Referenced by createRightMeasureGroupBox(), setLockLeftMeasure(), setLockRightMeasure(), updateRightMeasureInfo(), and validateMeasureChange().

◆ m_measureEditor

◆ m_measureTable

QPointer<QTableWidget> Isis::ControlPointEditWidget::m_measureTable
private

Table widget for the measures.

Definition at line 295 of file ControlPointEditWidget.h.

◆ m_measureWindow

QPointer<QMainWindow> Isis::ControlPointEditWidget::m_measureWindow
private

Main window for the the measure table widget.

Definition at line 294 of file ControlPointEditWidget.h.

◆ m_model

QPointer<QStandardItemModel> Isis::ControlPointEditWidget::m_model
private

Definition at line 292 of file ControlPointEditWidget.h.

◆ m_nameToShapeMap

QMap<QString, Shape *> Isis::ControlPointEditWidget::m_nameToShapeMap
private

Map between Shape display name and object.

Definition at line 315 of file ControlPointEditWidget.h.

Referenced by createControlPoint(), loadPoint(), setGroundSourceInfo(), and setShapesForPoint().

◆ m_newGroundDir

QString Isis::ControlPointEditWidget::m_newGroundDir
private

Contains the ground source location.

Definition at line 325 of file ControlPointEditWidget.h.

Referenced by changeGroundLocationsInNet(), and checkGroundFileLocation().

◆ m_newPoint

QPointer<ControlPoint> Isis::ControlPointEditWidget::m_newPoint
private

New control point.

Definition at line 302 of file ControlPointEditWidget.h.

◆ m_numberProjectShapesWithPoint

int Isis::ControlPointEditWidget::m_numberProjectShapesWithPoint
private

Number of shapes containing control point.

Definition at line 314 of file ControlPointEditWidget.h.

Referenced by createControlPoint(), loadPoint(), and setShapesForPoint().

◆ m_numMeasures

QPointer<QLabel> Isis::ControlPointEditWidget::m_numMeasures
private

Definition at line 274 of file ControlPointEditWidget.h.

◆ m_openTemplateFile

QPointer<QAction> Isis::ControlPointEditWidget::m_openTemplateFile
private

Action to open a registration template file to disk.

Definition at line 251 of file ControlPointEditWidget.h.

Referenced by createActions(), and createTemplateEditorWidget().

◆ m_parent

QPointer<QWidget> Isis::ControlPointEditWidget::m_parent
private

Parent widget.

Definition at line 238 of file ControlPointEditWidget.h.

Referenced by ControlPointEditWidget(), and setPointType().

◆ m_pointFiles

QStringList Isis::ControlPointEditWidget::m_pointFiles
private

Associated files for current control point.

Definition at line 305 of file ControlPointEditWidget.h.

Referenced by clearGroundSource(), loadGroundMeasure(), loadPoint(), selectLeftMeasure(), and selectRightMeasure().

◆ m_pointTypeCombo

QPointer<QComboBox> Isis::ControlPointEditWidget::m_pointTypeCombo
private

Combobox to change the type of the current point.

Definition at line 273 of file ControlPointEditWidget.h.

Referenced by createControlPointGroupBox(), loadPoint(), and setPointType().

◆ m_projectShapeNames

QStringList Isis::ControlPointEditWidget::m_projectShapeNames
private

List of Shapes imported into project, at time of loaded CP.

Definition at line 313 of file ControlPointEditWidget.h.

Referenced by createControlPoint(), loadPoint(), and setShapesForPoint().

◆ m_ptIdValue

QPointer<QLabel> Isis::ControlPointEditWidget::m_ptIdValue
private

Label for the point id of the current point.

Definition at line 272 of file ControlPointEditWidget.h.

Referenced by createControlPointGroupBox(), and loadPoint().

◆ m_radiusFilename

QString Isis::ControlPointEditWidget::m_radiusFilename
private

Definition at line 330 of file ControlPointEditWidget.h.

◆ m_radiusSourceCombo

QPointer<QComboBox> Isis::ControlPointEditWidget::m_radiusSourceCombo
private

ComboBox for selecting ground source.

Definition at line 271 of file ControlPointEditWidget.h.

Referenced by createControlPointGroupBox(), loadPoint(), and setPointType().

◆ m_radiusSourceType

ControlPoint::RadiusSource::Source Isis::ControlPointEditWidget::m_radiusSourceType
private

Definition at line 331 of file ControlPointEditWidget.h.

◆ m_reloadPoint

QPointer<QPushButton> Isis::ControlPointEditWidget::m_reloadPoint
private

Button to reload current point to saved measures.

Definition at line 259 of file ControlPointEditWidget.h.

Referenced by createPointEditor().

◆ m_rightCombo

QPointer<QComboBox> Isis::ControlPointEditWidget::m_rightCombo
private

◆ m_rightCube

QScopedPointer<Cube> Isis::ControlPointEditWidget::m_rightCube
private

Right cube.

Definition at line 311 of file ControlPointEditWidget.h.

Referenced by reloadPoint(), and selectRightMeasure().

◆ m_rightMeasure

QPointer<ControlMeasure> Isis::ControlPointEditWidget::m_rightMeasure
private

◆ m_rightMeasureType

QPointer<QLabel> Isis::ControlPointEditWidget::m_rightMeasureType
private

Label for the right measure's adjustment type.

Definition at line 284 of file ControlPointEditWidget.h.

Referenced by createRightMeasureGroupBox(), and updateRightMeasureInfo().

◆ m_rightReference

QPointer<QLabel> Isis::ControlPointEditWidget::m_rightReference
private

Label indicating if right measure is the reference.

Definition at line 283 of file ControlPointEditWidget.h.

Referenced by createRightMeasureGroupBox(), and updateRightMeasureInfo().

◆ m_saveChips

QPointer<QAction> Isis::ControlPointEditWidget::m_saveChips
private

Action to save the registration chips Action to toggle visibility of the registration template editor.

Definition at line 248 of file ControlPointEditWidget.h.

Referenced by createActions().

◆ m_saveDefaultPalette

QPalette Isis::ControlPointEditWidget::m_saveDefaultPalette
private

Default color pallet of the "Save Point" button.

Definition at line 261 of file ControlPointEditWidget.h.

Referenced by colorizeSaveNetButton(), createPointEditor(), saveNet(), and savePoint().

◆ m_saveNet

QPointer<QPushButton> Isis::ControlPointEditWidget::m_saveNet
private

Button to save the current control network.

Definition at line 263 of file ControlPointEditWidget.h.

Referenced by colorizeSaveNetButton(), createPointEditor(), and saveNet().

◆ m_savePoint

QPointer<QPushButton> Isis::ControlPointEditWidget::m_savePoint
private

Button to save current point being edited.

Definition at line 260 of file ControlPointEditWidget.h.

Referenced by colorizeSaveNetButton(), colorizeSavePointButton(), createPointEditor(), and savePoint().

◆ m_saveTemplateFile

QPointer<QAction> Isis::ControlPointEditWidget::m_saveTemplateFile
private

Action to save a registration template file to disk.

Definition at line 252 of file ControlPointEditWidget.h.

Referenced by createActions(), createTemplateEditorWidget(), loadTemplateFile(), setTemplateModified(), and writeTemplateFile().

◆ m_saveTemplateFileAs

QPointer<QAction> Isis::ControlPointEditWidget::m_saveTemplateFileAs
private

Action to save a new registration template.

Definition at line 253 of file ControlPointEditWidget.h.

Referenced by createActions(), and createTemplateEditorWidget().

◆ m_serialNumberList

◆ m_showHideTemplateEditor

QPointer<QAction> Isis::ControlPointEditWidget::m_showHideTemplateEditor
private

Definition at line 250 of file ControlPointEditWidget.h.

◆ m_templateComboBox

QPointer<QComboBox> Isis::ControlPointEditWidget::m_templateComboBox
private

ComboBox of imported registration templates.

Definition at line 269 of file ControlPointEditWidget.h.

Referenced by addTemplates(), createPointEditor(), and resetTemplateComboBox().

◆ m_templateEditor

QPointer<QTextEdit> Isis::ControlPointEditWidget::m_templateEditor
private

Text editor for editing the registration template.

Definition at line 265 of file ControlPointEditWidget.h.

Referenced by createTemplateEditorWidget(), loadTemplateFile(), and writeTemplateFile().

◆ m_templateEditorWidget

QPointer<QWidget> Isis::ControlPointEditWidget::m_templateEditorWidget
private

Template editor widget.

Definition at line 266 of file ControlPointEditWidget.h.

Referenced by createTemplateEditorWidget(), createTopSplitter(), and showHideTemplateEditor().

◆ m_templateModified

bool Isis::ControlPointEditWidget::m_templateModified
private

Indicates if the registration template was edited.

Definition at line 267 of file ControlPointEditWidget.h.

Referenced by ControlPointEditWidget(), loadTemplateFile(), okToContinue(), saveTemplateFile(), setTemplateModified(), and writeTemplateFile().


The documentation for this class was generated from the following files: