1#ifndef ImportControlNetWorkOrder_H
2#define ImportControlNetWorkOrder_H
30#include <QFutureWatcher>
33#include "IException.h"
102 Control *(const QPair<FileName, Progress *> &)> {
This represents an ISIS control net in a project-based GUI interface.
Maintains a list of Controls so that control nets can easily be copied from one Project to another,...
QSharedPointer< IException > m_errors
Stores any errors that occur during import.
Control * operator()(const QPair< FileName, Progress * > &cnetFilename)
Reads and writes the control network(s) asynchronously.
Project * m_project
The project to import to.
IException errors() const
Indicates if any errors occurred during the import.
CreateControlsFunctor(Project *project, QDir destinationFolder)
CreateControlsFunctor constructor.
QDir m_destinationFolder
The directory to copy the control net too.
Add control networks to a project c Asks the user for a list of control nets and copies them into the...
QList< Progress * > m_readProgresses
Keeps track of import progress.
~ImportControlNetWorkOrder()
Destructor.
ImportControlNetWorkOrder(Project *project)
Creates a work order to import a control network.
void execute()
Imports the control network asynchronously.
void cnetReady(int ready)
Adds the control net to the project.
bool setupExecution()
Sets up the work order for execution.
ControlList * m_list
List of controls added to project.
QString m_warning
String of any errors/warnings that occurred during import.
virtual ImportControlNetWorkOrder * clone() const
This method clones the current ImportControlNetWorkOrder and returns it.
QFutureWatcher< Control * > * m_watcher
QFutureWatcher, allows for asynchronous import.
virtual bool isExecutable(ProjectItem *item)
This method returns true if the user clicked on a project tree node with the text "Control Networks".
void postExecution()
Clears progress.
The main project for ipce.
Represents an item of a ProjectItemModel in Qt's model-view framework.
Provide Undo/redo abilities, serialization, and history for an operation.
Project * project() const
Returns the Project this WorkOrder is attached to.
This is free and unencumbered software released into the public domain.