Isis 3 Programmer Reference
Footprint2DView.h
1#ifndef Footprint2DView_h
2#define Footprint2DView_h
3
10/* SPDX-License-Identifier: CC0-1.0 */
11
12#include <QList>
13#include <QMap>
14#include <QSize>
15
16#include "AbstractProjectItemView.h"
17#include "FileName.h"
18#include "ImageList.h"
19
20class QAction;
21class QEvent;
22class QMainWindow;
23class QToolBar;
24class QWidgetAction;
25class QXmlStreamWriter;
26
27namespace Isis {
28
29 class ControlPoint;
30 class Directory;
31 class Image;
32 class ImageFileListWidget;
33 class MosaicSceneWidget;
34 class Project;
35 class ToolPad;
36
101
102 Q_OBJECT
103
104 public:
105 Footprint2DView(Directory *directory, QWidget *parent=0);
107
110
111 void save(QXmlStreamWriter &stream, Project *project, FileName newProjectRoot) const;
112
113 signals:
114 void modifyControlPoint(ControlPoint *controlPoint);
115 void deleteControlPoint(ControlPoint *controlPoint);
116 void createControlPoint(double latitude, double longitude);
117
118 void redrawMeasures();
119 void controlPointAdded(QString newPointId);
120
121 public slots:
122 void enableControlNetTool(bool value);
123
124 protected:
125 bool eventFilter(QObject *watched, QEvent *event);
126
127 private slots:
128 void onItemAdded(ProjectItem *item);
129 void onItemsAdded();
130 void onItemRemoved(ProjectItem *item);
132 void onMosItemRemoved(Image *image);
133
134 private:
135 void enableActions();
136
137 private:
141 ImageList m_images;
142 QMap<Image *, ProjectItem *> m_imageItemMap;
144
148 };
149}
150
151#endif
AbstractProjectItemView is a base class for views of a ProjectItemModel in Qt's model-view framework.
A single control point.
File name manipulation and expansion.
Definition FileName.h:100
View for displaying footprints of images in a QMos like way.
QMainWindow * m_window
Main window.
void enableActions()
Enables toolbars and toolpad actions.
ToolPad * m_toolPad
The tool pad.
ImageFileListWidget * fileListWidget()
Accessor for the FileListWidget.
MosaicSceneWidget * mosaicSceneWidget()
Accessor for the MosaicSceneWidget.
MosaicSceneWidget * m_sceneWidget
The scene widget.
void save(QXmlStreamWriter &stream, Project *project, FileName newProjectRoot) const
Save the footprint view widgets (ImageFileListWidget and MosaicSceneWidget to an XML file.
QMap< Image *, ProjectItem * > m_imageItemMap
Maps images to their items.
Footprint2DView(Directory *directory, QWidget *parent=0)
Constructor.
Directory * m_directory
The directory.
bool eventFilter(QObject *watched, QEvent *event)
Event filter to filter out drag and drop events.
void onItemsAdded()
Slot called once all selected images have been added to the proxy model.
void onQueueSelectionChanged()
Slot to connect to the queueSelectionChanged signal from a MosiacSceneWidget.
void onItemAdded(ProjectItem *item)
Slot to connect to the itemAdded signal from the model.
QToolBar * m_permToolBar
The permanent tool bar.
ImageFileListWidget * m_fileListWidget
The file list widget.
QToolBar * m_activeToolBar
The active tool bar.
void enableControlNetTool(bool value)
A slot function that is called when directory emits a siganl that an active control network is set.
void onMosItemRemoved(Image *image)
Slot at removes the mosaic item and corresponding image file list item when a cube is closed using th...
void onItemRemoved(ProjectItem *item)
Slot to connect to the itemRemoved signal from the model.
A colored, grouped cube list.
This represents a cube in a project-based GUI interface.
Definition Image.h:105
Internalizes a list of images and allows for operations on the entire list.
Definition ImageList.h:53
This widget encompasses the entire mosaic scene.
The main project for ipce.
Definition Project.h:287
Represents an item of a ProjectItemModel in Qt's model-view framework.
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16