32 #include "GuiCameraList.h"
33 #include "ImageList.h"
34 #include "MosaicSceneWidget.h"
35 #include "TargetBodyList.h"
46 class ChipViewportsWidget;
47 class CnetEditorWidget;
49 class ControlPointEditView;
51 class Footprint2DView;
52 class HistoryTreeWidget;
53 class ImageFileListWidget;
54 class MatrixSceneWidget;
55 class MosaicSceneWidget;
58 class ProjectItemModel;
59 class ProjectItemTreeView;
60 class SensorInfoWidget;
62 class TargetInfoWidget;
63 class WarningTreeWidget;
163 template <
typename DataType>
184 results.append(clone);
199 template <
typename Data>
210 void save(QXmlStreamWriter &stream,
FileName newProjectRoot)
const;
213 void newWidgetAvailable(
QWidget *newWidget);
215 void controlPointAdded(QString newPointId);
233 void createControlPoint(
double latitude,
double longitude,
Cube *cube = 0,
234 bool isGroundSource =
false);
249 virtual bool startElement(
const QString &namespaceURI,
const QString &localName,
250 const QString &qName,
const QXmlAttributes &atts);
270 template <
typename WorkOrderType>
272 WorkOrderType *newWorkOrder =
new WorkOrderType(
m_project);
293 QPointer <ControlPointEditView> m_controlPointEditViewWidget;
294 QPointer <ChipViewportsWidget> m_chipViewports;
332 #endif // Directory_H
This represents an ISIS control net in a project-based GUI interface.
~XmlHandler()
The Destructor for Directory::XmlHandler.
QList< QAction * > editMenuActions()
Get the list of actions that the Directory can provide for the edit menu.
QList< MatrixSceneWidget * > matrixViews()
Accessor for the list of MatrixSceneWidgets currently available.
QList< QAction * > projectMenuActions()
Get the list of actions that the Directory can provide for the project menu.
QList< QAction * > toolPadActions()
Get the list of actions that the Directory can provide for the Tool Pad.
QPointer< WorkOrder > m_saveProjectWorkOrder
The Save Project WorkOrder.
QList< QAction * > activeToolBarActions()
Get the list of actions that the Directory can provide for the active Tool Bar.
The main project for cnetsuite.
QList< QPointer< SensorInfoWidget > > m_sensorInfoWidgets
List of SensorInfoWidgets.
void save(QXmlStreamWriter &stream, FileName newProjectRoot) const
Save the directory to an XML file.
QList< QAction * > supportedActions(DataType data)
Returns a list of supported actions for a WorkOrder.
void cleanupTargetInfoWidgets()
Removes pointers to deleted TargetInfoWidget objects.
void cleanupFileListWidgets()
Reomoves pointers to deleted ImageFileListWidget objects.
File name manipulation and expansion.
QList< ImageFileListWidget * > imageFileListViews()
Accessor for the list of ImageFileListWidgets currently available.
QStringList recentProjectsList()
Public accessor for the list of recent projects.
~Directory()
The Destructor.
CnetEditorWidget * addCnetEditorView(Control *network)
Add the widget for the cnet editor view to the window.
QPointer< WorkOrder > m_importControlNetWorkOrder
The import ControlNetwork WorkOrder.
TargetInfoWidget * addTargetInfoView(TargetBodyQsp target)
Add target body data view widget to the window.
QList< QAction * > m_settingsMenuActions
List of menu settings actions.
MatrixSceneWidget * addMatrixView()
Add the matrix view widget to the window.
QList< QAction * > m_helpMenuActions
List of help menu actions.
void cleanupCnetEditorViewWidgets()
Removes pointers to deleted CnetEditorWidget objects.
void showWarning(QString text)
Displays a Warning.
Directory * m_directory
Pointer to a Directory which is set by the XmlHandler class.
static bool actionTextLessThan(QAction *lhs, QAction *rhs)
This is for determining the ordering of the descriptive text of for the actions.
QPointer< WorkOrder > m_runJigsawWorkOrder
The Run Jigsaw WorkOrder.
QList< QAction * > viewMenuActions()
Get the list of actions that the Directory can provide for the view menu.
QList< QPointer< CubeDnView > > m_cubeDnViewWidgets
List of CubeDnCiew obs.
QPointer< ProjectItemModel > m_projectItemModel
Pointer to the ProjectItemModel.
void populateMainMenu(QMenuBar *)
This method sets up the main menu at the top of the window (File, Settings, ...)
ControlPointEditView * controlPointEditView()
Gets the ControlPointEditWidget associated with the Directory.
void cleanupMatrixViewWidgets()
Removes pointers to deleted MatrixSceneWidget objects.
void setRecentProjectsList(QStringList recentProjects)
Add recent projects to the recent projects list.
QList< TargetInfoWidget * > targetInfoViews()
Accessor for the list of TargetInfoWidgets currently available.
CubeDnView * addCubeDnView()
Add the qview workspace to the window.
Project * project() const
Gets the Project for this directory.
void updateRecentProjects(Project *project)
Adds a new Project object to the list of recent projects if it has not already been added...
View for editing a single ControlPoint.
QList< QAction * > m_projectMenuActions
List of project menu actions.
QList< QAction * > permToolBarActions()
Get the list of actions that the Directory can provide for the permanent Tool Bar.
Provides access to data stored in a Project through Qt's model-view framework.
QAction * undoAction()
Creates an Action to undo the last action.
QPointer< WorkOrder > m_openProjectWorkOrder
The Open Project WorkOrder.
QList< QAction * > m_fileMenuActions
List of file menu actions.
void load(XmlStackedHandlerReader *xmlReader)
Loads the Directory from an XML file.
QList< Footprint2DView * > footprint2DViews()
Accessor for the list of Footprint2DViews currently available.
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.
virtual bool isExecutable(Context)
Re-implement this method if your work order utilizes controls for data in order to operate...
QList< QAction * > settingsMenuActions()
Get the list of actions that the Directory can provide for the settings menu.
QPointer< WorkOrder > m_importShapesWorkOrder
The import shapes WorkOrder.
QList< QAction * > fileMenuActions()
Get the list of actions that the Directory can provide for the file menu.
Directory(QObject *parent=0)
The Constructor.
ProjectItemModel * model()
Gets the ProjectItemModel for this directory.
Parent class for anything that performs an action in Project.
ProjectItemTreeView * addProjectItemTreeView()
Adds a ProjectItemTreeView to the window.
QList< QAction * > m_editMenuActions
List of edit menu actions.
QList< SensorInfoWidget * > sensorInfoViews()
Accessor for the list of SensorInfoWidgets currently available.
QList< QPointer< Footprint2DView > > m_footprint2DViewWidgets
List of Footprint2DView objs.
QAction * redoAction()
Creates an Action to redo the last action.
QSharedPointer< TargetBody > TargetBodyQsp
Defines A smart pointer to a TargetBody obj.
QList< QProgressBar * > progressBars()
Gets the ControlNetEditor associated with this the Directory.
WorkOrderType * createWorkOrder()
Create a work order, append it to m_workOrders, and return it.
QPointer< WorkOrder > m_saveProjectAsWorkOrder
The Save Project As WorkOrder.
A ProjectItemTreeView displays items from a ProjectItemProxyModel in a tree structure.
XML Handler that parses XMLs in a stack-oriented way.
void setWarningContainer(QDockWidget *warningContainer)
Set up the warning info in the warning dockable widget.
QList< CubeDnView * > cubeDnViews()
Accessor for the list of CubeDnViews currently available.
void setHistoryContainer(QDockWidget *historyContainer)
Set up the history info in the history dockable widget.
void cleanupCubeDnViewWidgets()
Removes pointers to deleted CubeDnView objects.
QList< QPointer< CnetEditorWidget > > m_cnetEditorViewWidgets
List of CnetEditorWidgets.
virtual void setData(Context)
Sets the context data for this WorkOrder.
QPointer< WorkOrder > m_openRecentProjectWorkOrder
The Open Recent Project WorkOrder.
QPointer< Project > m_project
Pointer to the Project.
QList< QAction * > m_toolPadActions
List of ToolPad actions.
XmlHandler(Directory *directory)
This function sets the Directory pointer for the Directory::XmlHandler class.
QWidget * warningWidget()
Returns a pointer to the warning widget.
QPointer< HistoryTreeWidget > m_historyTreeWidget
Pointer to the HistoryTreeWidget.
QSharedPointer< GuiCamera > GuiCameraQsp
GuiCameraQsp Represents a smart pointer to a GuiCamera object.
QList< QAction * > m_permToolBarActions
List of perm ToolBar actions.
QPointer< WorkOrder > m_renameProjectWorkOrder
The Rename Project WorkOrder.
ImageFileListWidget * addImageFileListView()
Add an imageFileList widget to the window.
QList< QAction * > m_viewMenuActions
List of view menu actions.
View that displays cubes in a QView-like way.
QPointer< WarningTreeWidget > m_warningTreeWidget
Pointer to the WarningTreeWidget.
void updateControlNetEditConnections()
Updates the SIGNAL/SLOT connections for the cotrol net editor.
SensorInfoWidget * addSensorInfoView(GuiCameraQsp camera)
Add sensor data view widget to the window.
QList< QAction * > helpMenuActions()
Get the list of actions that the Directory can provide for the help menu.
Footprint2DView * addFootprint2DView()
Add the qmos view widget to the window.
QList< QPointer< MatrixSceneWidget > > m_matrixViewWidgets
List of MatrixSceneWidgets.
QPointer< WorkOrder > m_exportImagesWorkOrder
The export images WorkOrder.
QPointer< WorkOrder > m_exportControlNetWorkOrder
The export ControlNetwork WorkOrder.
QList< QPointer< TargetInfoWidget > > m_targetInfoWidgets
List of TargetInfoWidgets.
QPointer< WorkOrder > m_importImagesWorkOrder
The import images WorkOrder.
QList< QAction * > m_activeToolBarActions
List of active ToolBar actions.
void showWarning(QString text, Data data)
Shows warning text for a Widget.
void cleanupFootprint2DViewWidgets()
Removes pointers to deleted Footprint2DView objects.
void cleanupControlPointEditViewWidget()
Delete the ControlPointEditWidget and set it's pointer to NULL.
void cleanupSensorInfoWidgets()
Removes pointers to deleted SensorInfoWidget objects.
QStringList m_recentProjects
List of the names of recent projects.
QList< QPointer< WorkOrder > > m_workOrders
List of WorkOrders.
his enables stack-based XML parsing of XML files.
QList< QPointer< ImageFileListWidget > > m_fileListWidgets
List of ImageFileListWidgets.
void initializeActions()
Initializes the actions that the Directory can provide to a main window.
static QList< QAction * > restructureActions(QList< QPair< QString, QList< QAction * > > >)
Reformat actionPairings to be user friendly for use in menus.
QPointer< WorkOrder > m_closeProjectWorkOrder
The Close Project WorkOrder.
IO Handler for Isis Cubes.
QList< CnetEditorWidget * > cnetEditorViews()
Returns a list of all the control network views for this directory.