Isis Developer Reference
CnetEditorWidget.h
Go to the documentation of this file.
1#ifndef CnetEditorWidget_H
2#define CnetEditorWidget_H
3
10/* SPDX-License-Identifier: CC0-1.0 */
11
12
13#include <QWidget>
14
15
16class QAction;
17class QBoxLayout;
18class QGroupBox;
19template< typename T > class QList;
20class QMenu;
21class QScrollArea;
22class QSplitter;
23class QString;
24class QToolBar;
25class QXmlStreamWriter;
26class QXmlAttributes;
27
28namespace Isis {
29 class AbstractTableModel;
30 class AbstractTreeItem;
31 class Control;
32 class ControlNet;
33 class ControlPoint;
34 class Directory;
35 class FileName;
36 class Image;
37 class MosaicGraphicsView;
38 class MosaicSceneItem;
39 class MosaicTool;
40 class ProgressBar;
41 class Projection;
42 class Project;
43 class PvlGroup;
44 class PvlObject;
45 class ToolPad;
46 class FilterWidget;
47 class ImageImageTreeModel;
48 class ImagePointTreeModel;
49 class MeasureTableModel;
50 class PointMeasureTreeModel;
51 class PointTableModel;
52 class TableView;
53 class TreeView;
54 class CnetEditorSortConfigDialog;
55
116 class CnetEditorWidget : public QWidget {
117 Q_OBJECT
118
119 public:
125
126 CnetEditorWidget(Control *control, QString pathForSettings);
127 virtual ~CnetEditorWidget();
128 void readSettings();
129 void writeSettings();
130
140
141
144
145 QMap< QAction *, QList< QString > > menuActions();
146 QMap< QString, QList< QAction * > > toolBarActions();
147
149
150 bool measureTableSortingEnabled() const;
151 int measureTableSortLimit() const;
152 bool pointTableSortingEnabled() const;
153 int pointTableSortLimit() const;
154
155 void setMeasureTableSortingEnabled(bool enabled);
156 void setMeasureTableSortLimit(int limit);
157 void setPointTableSortingEnabled(bool enabled);
158 void setPointTableSortLimit(int limit);
159
160
161 public slots:
162 void configSorting();
165 void setTablesFrozen(bool);
166 void rebuildModels();
167
168
169 signals:
171 void editControlPoint(ControlPoint *controlPoint, QString serialNumber);
173
174 private slots:
175 void rebuildModels(QList< AbstractTreeItem * > itemsToDelete);
176
177 void pointColToggled();
178 void measureColToggled();
179
180 void handlePointTableFilterCountsChanged(int visibleRows, int totalRows);
181 void handleMeasureTableFilterCountsChanged(int visibleRows,
182 int totalRows);
183 void setCnetModified();
184
185
186 private:
187 //methods
188 void nullify();
189 QBoxLayout *createMainLayout();
190 void createActions();
191 void createPointTreeView();
192 void createSerialTreeView();
193 void createConnectionTreeView();
194 void createFilterArea();
195 void createPointTableView();
196 void createMeasureTableView();
197 void upgradeVersion();
198 void handleTableFilterCountsChanged(int visibleRows, int totalRows,
199 QGroupBox *box, QString initialText);
200
201 // data
202 bool m_updatingSelection;
203 Control *m_control;
204 QString *m_workingVersion;
205 static const QString VERSION;
206
207 //widgets
208 TreeView *m_pointTreeView;
209 TreeView *m_imageTreeView;
210 TreeView *m_connectionTreeView;
211
212 TableView *m_pointTableView;
213 TableView *m_measureTableView;
214
215 QGroupBox *m_pointTableBox;
216 QGroupBox *m_measureTableBox;
217
218 QScrollArea *m_filterArea;
219
220 QWidget *m_pointFilterWidget;
221 QWidget *m_serialFilterWidget;
222 QWidget *m_connectionFilterWidget;
223
224 PointMeasureTreeModel *m_pointModel;
225 ImagePointTreeModel *m_imageModel;
226 ImageImageTreeModel *m_connectionModel;
227
228 PointTableModel *m_pointTableModel;
229 MeasureTableModel *m_measureTableModel;
230
231 QSplitter *m_mainSplitter;
232
233 QMap< QAction *, QList< QString > > * m_menuActions;
234 QMap< QString, QList< QAction * > > * m_toolBarActions;
235
236 QString *m_settingsPath;
237
238 CnetEditorSortConfigDialog *m_sortDialog;
239 };
240}
241
242#endif
Translates the tree model into a table model.
Definition AbstractTableModel.h:48
Configure user's sorting settings for the cneteditor widget.
Definition CnetEditorSortConfigDialog.h:37
This widget provides full editing, filtering and viewing capabilities for the raw data in a control n...
Definition CnetEditorWidget.h:116
View
Definition CnetEditorWidget.h:120
@ ImageView
Definition CnetEditorWidget.h:122
@ ConnectionView
Definition CnetEditorWidget.h:123
@ PointView
Definition CnetEditorWidget.h:121
virtual ~CnetEditorWidget()
Destructor.
Definition CnetEditorWidget.cpp:108
int pointTableSortLimit() const
Returns the sorting limit for the point table.
Definition CnetEditorWidget.cpp:1014
void setPointTableSortLimit(int limit)
Sets the point table sorting limit.
Definition CnetEditorWidget.cpp:1054
QWidget * serialFilterWidget()
Returns the serial filter widget.
Definition CnetEditorWidget.cpp:794
AbstractTableModel * measureTableModel()
Returns the measure table model.
Definition CnetEditorWidget.cpp:834
void setMeasureTableSortLimit(int limit)
Sets the measure table sorting limit.
Definition CnetEditorWidget.cpp:1034
void rebuildModels()
Rebuilds the models.
Definition CnetEditorWidget.cpp:568
QMap< QString, QList< QAction * > > toolBarActions()
Returns the tool bar actions.
Definition CnetEditorWidget.cpp:874
ControlNet * control()
Returns the control network.
Definition CnetEditorWidget.cpp:854
QWidget * connectionTreeView()
Returns the connection tree view.
Definition CnetEditorWidget.cpp:774
CnetEditorWidget(Control *control, QString pathForSettings)
Definition CnetEditorWidget.cpp:74
AbstractTableModel * pointTableModel()
Returns the point table model.
Definition CnetEditorWidget.cpp:844
ControlNet * filteredNetwork() const
Returns the filtered control net.
Definition CnetEditorWidget.cpp:884
QWidget * connectionFilterWidget()
Returns the connection filter widget.
Definition CnetEditorWidget.cpp:804
void writeSettings()
Writes the configuration settings used.
Definition CnetEditorWidget.cpp:712
void setTablesFrozen(bool)
Sets if the tables are frozen.
Definition CnetEditorWidget.cpp:1112
void readSettings()
Reads the working version settings stored at the settings path.
Definition CnetEditorWidget.cpp:671
void coordinateDisplayTypeChanged()
void setXYZCoordinateDisplay()
Set control point coordinate display type to X,Y,Z.
Definition CnetEditorWidget.cpp:1094
int measureTableSortLimit() const
Returns the sorting limit for the measure table.
Definition CnetEditorWidget.cpp:994
void setPointTableSortingEnabled(bool enabled)
Sets if the point table can be sorted.
Definition CnetEditorWidget.cpp:1044
TableView * pointTableView()
Returns the point table view.
Definition CnetEditorWidget.cpp:814
QMap< QAction *, QList< QString > > menuActions()
Returns the menu actions.
Definition CnetEditorWidget.cpp:864
TableView * measureTableView()
Returns the measure table view.
Definition CnetEditorWidget.cpp:824
void setMeasureTableSortingEnabled(bool enabled)
Sets if the measure table can be sorted.
Definition CnetEditorWidget.cpp:1024
QWidget * serialTreeView()
Returns the serial tree view.
Definition CnetEditorWidget.cpp:764
QWidget * pointTreeView()
Returns the point tree view.
Definition CnetEditorWidget.cpp:754
void setLatLonRadiusCoordinateDisplay()
Set control point coordinate display type to latitude, longitude, radius.
Definition CnetEditorWidget.cpp:1076
bool measureTableSortingEnabled() const
Returns true if the measure table can be sorted.
Definition CnetEditorWidget.cpp:984
void configSorting()
Configures the sorting dialog.
Definition CnetEditorWidget.cpp:1063
bool pointTableSortingEnabled() const
Returns true if the point table can be sorted.
Definition CnetEditorWidget.cpp:1004
QWidget * pointFilterWidget()
Returns the point filter widget.
Definition CnetEditorWidget.cpp:784
void editControlPoint(ControlPoint *controlPoint, QString serialNumber)
This represents an ISIS control net in a project-based GUI interface.
Definition Control.h:65
a control network
Definition ControlNet.h:258
A single control point.
Definition ControlPoint.h:356
Tree model for images and images.
Definition ImageImageTreeModel.h:48
Tree model for images and control points.
Definition ImagePointTreeModel.h:48
Table model for control measures.
Definition MeasureTableModel.h:42
Tree model for control points and control measures.
Definition PointMeasureTreeModel.h:49
Table model for control points.
Definition PointTableModel.h:48
Definition TableView.h:43
Definition TreeView.h:31
This is free and unencumbered software released into the public domain.
Definition BoxcarCachingAlgorithm.h:13
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16