Isis 3 Programmer Reference
QnetNavTool.h
1#ifndef QnetNavTool_h
2#define QnetNavTool_h
3
10/* SPDX-License-Identifier: CC0-1.0 */
11
12
13#include "Tool.h"
14// forward declarations
15class QComboBox;
16class QDialog;
17class QLabel;
18class QListWidget;
19class QListWidgetItem;
20class QPushButton;
21class QStackedWidget;
22class QString;
23class QVBoxLayout;
24class QWidget;
25
26
27namespace Isis {
28 class ControlMeasure;
29 class ControlNet;
30 class ControlPoint;
31 class QnetSetAprioriDialog;
32 class QnetTool;
33 class SerialNumberList;
34
121 class QnetNavTool : public Tool {
122 Q_OBJECT
123
124 public:
125 QnetNavTool(QnetTool *qnetTool, QWidget *parent);
126 ~QnetNavTool();
127
128 enum FilterIndex {
129 Points,
130 Cubes
131 };
132 enum PointFilterIndex {
133 JigsawErrors,
134 RegistrationErrors,
135 Id,
136 NumberImages,
137 Type,
138 LatLonRange,
139 Distance,
140 MeasureType,
141 GoodnessOfFit,
142 CubeName
143 };
144 enum CubeFilterIndex {
145 Name,
146 NumberPoints,
147 PointDistance
148 };
149
150 QList<int> &filteredImages();
151 const QList<int> &filteredImages() const;
152
153 QList<int> &filteredPoints();
154 const QList<int> &filteredPoints() const;
155
156 ControlNet *controlNet();
157 const ControlNet *controlNet() const;
158
159 SerialNumberList *serialNumberList();
160 const SerialNumberList *serialNumberList() const;
161
162 public slots:
163 void resetList();
164 void refreshList();
165 void updateEditPoint(QString pointId);
167 void showNavTool();
168
169 private slots:
170 void load();
171 void load(QListWidgetItem *);
172 void tie();
173 void filter();
174 void editPoint(QListWidgetItem *ptItem);
175 void filterList();
176 void resetFilter();
177 void enableButtons();
178 void ignorePoints();
179 void deletePoints();
180 void resetCubeList();
181 void updateActivityHistory(QString activityMessage);
182 void aprioriDialog();
184
185 signals:
186 void activityUpdate(QString);
187 void loadPointImages (ControlPoint *);
188 void loadImage(const QString &);
189 void modifyPoint(ControlPoint *);
190 void ignoredPoints();
191 void deletedPoints();
192 void pointChanged(QString pointId);
193 void netChanged();
194 void serialListModified();
195
196 private:
197 void createNavigationDialog(QWidget *parent);
198 void createFilters();
199// void listLockedPoints();
200
201
202 QDialog *m_navDialog;
203 QPushButton *m_filter;
204 bool m_filtered;
205 QPushButton *m_tie;
206 QPushButton *m_multiIgnore;
207 QPushButton *m_multiDelete;
208 QPushButton *m_setApriori;
209 QStackedWidget *m_filterStack;
210 QComboBox *m_listCombo;
211 QListWidget *m_listBox;
212 QLabel *m_filterCountLabel;
213 QVBoxLayout *m_historyLayout;
214 int m_filterCount;
215
216 QString m_editPointId;
217
218 QnetSetAprioriDialog *m_aprioriDialog;
219
220 QnetTool *m_qnetTool;
221 QList<int> m_filteredPoints;
222 QList<int> m_filteredImages;
223 };
224}
225
226#endif
a control network
Definition ControlNet.h:258
A single control point.
Distance measurement, usually in meters.
Definition Distance.h:34
Qnet Navigation Tool.
void filter()
Figures out what type of widget the filter was selected for and calls the filter method for that filt...
void enableButtons()
Enable/disable buttons depending on whether Points or Cubes is chosen.
void deletePoints()
Delete selected Points from control network.
QnetNavTool(QnetTool *qnetTool, QWidget *parent)
Constructs the Navigation Tool window.
void setAprioriDialogPoints()
Slot to pass points selected in Nav List Widget to Apriori Dialog.
void aprioriDialog()
Bring up apriori dialog.
void createNavigationDialog(QWidget *parent)
Creates and shows the dialog box for the navigation tool.
void showNavTool()
This method sets the Navigation Dialog window to shown=true.
void ignorePoints()
Set Ignored=True for selected Points.
void load()
Tells the filetool to load an image, slot for "View Cube(s)" button.
void resetFilter()
Resets the visible filter to the default values.
void createFilters()
Sets up the tabbed widgets for the different types of filters available.
void updateActivityHistory(QString activityMessage)
Slot to update the history tab with current edits.
void resetCubeList()
This slot is connected to the file tool in qnet.cpp.
void disconnectAprioriDialog()
Apriori dialog has been closed and needs to be disconnected and deleted so a new dialog can be brough...
void editPoint(QListWidgetItem *ptItem)
Emits a modifyPoint signal.
void resetList()
Resets the list box with whatever is in the global lists.
void tie()
Calls the qnet tool for the given control point.
void filterList()
Updates the list box in the nav window with a new list from one of the filters.
void updateEditPoint(QString pointId)
Update the list showing the new point highlighted.
void refreshList()
Slot to refresh the listBox.
Qnet tool operations.
Definition QnetTool.h:259
Serial Number list generator.
Base class for the Qisis tools.
Definition Tool.h:67
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16