Isis 3 Programmer Reference
Footprint2DView.h
Go to the documentation of this file.
1 #ifndef Footprint2DView_h
2 #define Footprint2DView_h
3 
25 #include <QList>
26 #include <QMap>
27 #include <QSize>
28 
30 #include "FileName.h"
31 #include "ImageList.h"
32 #include "XmlStackedHandler.h"
33 
34 class QAction;
35 class QEvent;
36 class QMainWindow;
37 class QToolBar;
38 class QWidgetAction;
39 class QXmlStreamWriter;
40 
41 namespace Isis {
42 
43  class ControlPoint;
44  class Directory;
45  class Image;
46  class ImageFileListWidget;
47  class MosaicSceneWidget;
48  class Project;
49  class ToolPad;
50  class XmlStackedHandlerReader;
51 
116 
117  Q_OBJECT
118 
119  public:
120  Footprint2DView(Directory *directory, QWidget *parent=0);
122 
125 
126  void load(XmlStackedHandlerReader *xmlReader);
127  void save(QXmlStreamWriter &stream, Project *project, FileName newProjectRoot) const;
128 
129  signals:
130  void modifyControlPoint(ControlPoint *controlPoint);
131  void deleteControlPoint(ControlPoint *controlPoint);
132  void createControlPoint(double latitude, double longitude);
133 
134  void redrawMeasures();
135  void controlPointAdded(QString newPointId);
136 
137  public slots:
138  void enableControlNetTool(bool value);
139 
140  protected:
141  bool eventFilter(QObject *watched, QEvent *event);
142 
143  private slots:
144  void onItemAdded(ProjectItem *item);
145  void onItemsAdded();
146  void onItemRemoved(ProjectItem *item);
148  void onMosItemRemoved(Image *image);
149 
150  private:
151  void enableActions();
152 
158  class XmlHandler : public XmlStackedHandler {
159  public:
160  XmlHandler(Footprint2DView *footprintView);
161  ~XmlHandler();
162 
163  virtual bool startElement(const QString &namespaceURI, const QString &localName,
164  const QString &qName, const QXmlAttributes &atts);
165  virtual bool endElement(const QString &namespaceURI, const QString &localName,
166  const QString &qName);
167 
168  private:
169  Q_DISABLE_COPY(XmlHandler);
170 
172  };
173 
174  private:
178  ImageList m_images;
181 
185  };
186 }
187 
188 #endif
Footprint2DView(Directory *directory, QWidget *parent=0)
Constructor.
void onItemsAdded()
Slot called once all selected images have been added to the proxy model.
Internalizes a list of images and allows for operations on the entire list.
Definition: ImageList.h:55
The main project for ipce.
Definition: Project.h:289
File name manipulation and expansion.
Definition: FileName.h:116
XmlHandler(Footprint2DView *footprintView)
This function sets the Directory pointer for the Directory::XmlHandler class.
QMainWindow * m_window
Main window.
This widget encompasses the entire mosaic scene.
ImageFileListWidget * m_fileListWidget
The file list widget.
View for displaying footprints of images in a QMos like way.
ImageFileListWidget * fileListWidget()
Accessor for the FileListWidget.
void load(XmlStackedHandlerReader *xmlReader)
Loads the Footprint2DView from an XML file.
QMap< Image *, ProjectItem * > m_imageItemMap
Maps images to their items.
virtual bool startElement(const QString &namespaceURI, const QString &localName, const QString &qName, const QXmlAttributes &atts)
The XML reader invokes this method at the start of every element in the XML document.
void enableActions()
Enables toolbars and toolpad actions.
AbstractProjectItemView is a base class for views of a ProjectItemModel in Qt&#39;s model-view framework...
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.
Directory * m_directory
The directory.
bool eventFilter(QObject *watched, QEvent *event)
Event filter to filter out drag and drop events.
ToolPad * m_toolPad
The tool pad.
QToolBar * m_activeToolBar
The active tool bar.
void onQueueSelectionChanged()
Slot to connect to the queueSelectionChanged signal from a MosiacSceneWidget.
~Footprint2DView()
Destructor.
XML Handler that parses XMLs in a stack-oriented way.
A single control point.
Definition: ControlPoint.h:369
This represents a cube in a project-based GUI interface.
Definition: Image.h:107
A colored, grouped cube list.
Represents an item of a ProjectItemModel in Qt&#39;s model-view framework.
Definition: ProjectItem.h:146
MosaicSceneWidget * mosaicSceneWidget()
Accessor for the MosaicSceneWidget.
Namespace for ISIS/Bullet specific routines.
Definition: Apollo.h:31
~XmlHandler()
The Destructor for Directory::XmlHandler.
void enableControlNetTool(bool value)
A slot function that is called when directory emits a siganl that an active control network is set...
Footprint2DView * m_footprintView
The Footprint2DView.
$Date$ $Revision$
MosaicSceneWidget * m_sceneWidget
The scene widget.
Manage a stack of content handlers for reading XML files.
void onItemAdded(ProjectItem *item)
Slot to connect to the itemAdded signal from the model.
QToolBar * m_permToolBar
The permanent tool bar.
void save(QXmlStreamWriter &stream, Project *project, FileName newProjectRoot) const
Save the footprint view widgets (ImageFileListWidget and MosaicSceneWidget to an XML file...