Isis 3 Programmer Reference
|
Saves a project to disk (File->Save Project...) More...
#include <SaveProjectWorkOrder.h>
Public Types | |
enum | WorkOrderStatus { WorkOrderUnknownStatus = 0, WorkOrderNotStarted, WorkOrderRedoing, WorkOrderRedone, WorkOrderUndoing, WorkOrderUndone, WorkOrderFinished, WorkOrderLastStatus = WorkOrderFinished } |
This enumeration is used by other functions to set and retrieve the current state of the WorkOrder. More... | |
enum | Context { NoContext, ProjectContext } |
This enumeration is for recording the context of the current Workorder (whether it is part of a project or not). More... | |
Public Slots | |
void | enableWorkOrder () |
Enables the work order. More... | |
void | disableWorkOrder () |
Disables the work order. More... | |
virtual void | execute () |
Execute the workorder. More... | |
virtual void | redo () |
Starts (or enqueues) a redo. More... | |
virtual void | undo () |
Starts (or enqueues) an undo. More... | |
Signals | |
void | creatingProgress (WorkOrder *) |
void | deletingProgress (WorkOrder *) |
void | finished (WorkOrder *) |
void | statusChanged (WorkOrder *) |
Public Member Functions | |
SaveProjectWorkOrder (Project *project) | |
Constructor. More... | |
SaveProjectWorkOrder (const SaveProjectWorkOrder &other) | |
Copy constrcutor. More... | |
~SaveProjectWorkOrder () | |
Destructor. More... | |
virtual SaveProjectWorkOrder * | clone () const |
Clones an existing SaveProjectWorkder and gives back a newly allocated copy of the work order. More... | |
bool | setupExecution () |
Sets up the work order. More... | |
virtual bool | isExecutable (Context) |
Re-implement this method if your work order utilizes controls for data in order to operate. More... | |
virtual bool | isExecutable (ImageList *images) |
Re-implement this method if your work order utilizes images for data in order to operate. More... | |
virtual bool | isExecutable (ShapeList *shapes) |
Re-implement this method if your work order utilizes shapes for data in order to operate. More... | |
virtual bool | isExecutable (ControlList *controls) |
Re-implement this method if your work order utilizes a control for data in order to operate. More... | |
virtual bool | isExecutable (CorrelationMatrix) |
virtual bool | isExecutable (TargetBodyQsp targetBody) |
Re-implement this method if your work order utilizes a control list (a list of control networks) for data in order to operate. More... | |
virtual bool | isExecutable (Template *currentTemplate) |
Re-implement this method if your work order utilizes a control list (a list of control networks) for data in order to operate. More... | |
virtual bool | isExecutable (GuiCameraQsp guiCamera) |
Re-implement this method if your WorkOrder utilizes GuiCameraQsp (a QSharedPointer to a GuiCamera object) for data in order to operate. More... | |
virtual bool | isExecutable (FileItemQsp fileItem) |
Re-implement this method if your WorkOrder utilizes FileItemQsp (a QSharedPointer to a FileItem object) for data in order to operate. More... | |
virtual bool | isExecutable (ProjectItem *item) |
Determines if the WorkOrder is execuatable on the data stored in a ProjectItem. More... | |
void | read (XmlStackedHandlerReader *xmlReader) |
Read this work order's data from disk. More... | |
void | save (QXmlStreamWriter &stream) const |
: Saves a WorkOrder to a data stream. More... | |
virtual void | setData (Context) |
Sets the context data for this WorkOrder. More... | |
virtual void | setData (QString data) |
virtual void | setData (ImageList *images) |
Sets the ImageList data for this WorkOrder. More... | |
virtual void | setData (ShapeList *shapes) |
Sets the ShapeList data for this WorkOrder. More... | |
virtual void | setData (ControlList *controls) |
Sets the Control data for this WorkOrder. More... | |
virtual void | setData (Template *currentTemplate) |
Sets the TargetBody data for this WorkOrder. More... | |
virtual void | setData (CorrelationMatrix) |
Sets the CorrelationMatrix data for this WorkOrder. More... | |
virtual void | setData (TargetBodyQsp targetBody) |
Sets the TargetBody data for this WorkOrder. More... | |
virtual void | setData (GuiCameraQsp guiCamera) |
Sets the GuiCamera data for this WorkOrder. More... | |
virtual void | setData (FileItemQsp fileItem) |
Sets the FileItem data for this WorkOrder. More... | |
virtual void | setData (ProjectItem *item) |
Sets the internal data to the data stored in a ProjectItem. More... | |
void | setNext (WorkOrder *nextWorkOrder) |
Sets the next WorkOrder in the sequence. More... | |
void | setPrevious (WorkOrder *previousWorkOrder) |
Sets the previous WorkOrder in the sequence. More... | |
QString | bestText () const |
Generate unique action names We don't use action text anymore because Directory likes to rename our actions. More... | |
bool | isUndoable () const |
Returns true if this work order is undoable, otherwise false. More... | |
bool | isSavedToHistory () const |
Returns true if this work order is to be shown in History, otherwise false. More... | |
bool | isSynchronous () const |
Returns true if this work order is run synchronously, otherwise false. More... | |
bool | createsCleanState () const |
Returns the CleanState status (whether the Project has been saved to disk or not). More... | |
QDateTime | executionTime () const |
Gets the execution time of this WorkOrder. More... | |
bool | isFinished () const |
Returns the finished state of this WorkOrder. More... | |
bool | isRedoing () const |
Returns the redoing status of this WorkOrder. More... | |
bool | isRedone () const |
Returns the WorkOrder redone status. More... | |
bool | isUndoing () const |
Returns the WorkOrderUndoing state. More... | |
bool | isUndone () const |
Returns the WorkOrder undo status. More... | |
bool | modifiesDiskState () const |
Returns the modified disk state. More... | |
WorkOrder * | next () const |
Gets the next WorkOrder. More... | |
WorkOrder * | previous () const |
Gets the previous WorkOrder. More... | |
QString | statusText () const |
WorkOrder::statusText. More... | |
ProgressBar * | progressBar () |
Returns the ProgressBar. More... | |
Static Public Member Functions | |
static WorkOrderStatus | fromStatusString (QString) |
Attempts to query the current status of the WorkOrder. More... | |
static QString | toString (WorkOrderStatus) |
Gets the current status of the WorkOrder. More... | |
Protected Slots | |
void | addCloneToProject () |
Runs a copy of the current WorkOrder and stores it in the project. More... | |
Protected Member Functions | |
ImageList * | imageList () |
Returns a pointer to the ImageList for this WorkOrder. More... | |
const ImageList * | imageList () const |
A thread-safe method for retrieving a pointer to the imageList. More... | |
ShapeList * | shapeList () |
@briefReturns a pointer to the ShapeList for this WorkOrder. More... | |
const ShapeList * | shapeList () const |
A thread-safe method for retrieving a pointer to the shapeList. More... | |
CorrelationMatrix | correlationMatrix () |
Returns the CorrleationMatrix for this WorkOrder. More... | |
QPointer< ControlList > | controlList () |
Returns the Control List for this WorkOrder (a list of control networks). More... | |
Template * | getTemplate () |
WorkOrder::getTemplate. More... | |
TargetBodyQsp | targetBody () |
WorkOrder::targetBody. More... | |
GuiCameraQsp | guiCamera () |
WorkOrder::guiCamera. More... | |
FileItemQsp | fileItem () |
WorkOrder::fileItem. More... | |
virtual bool | dependsOn (WorkOrder *other) const |
Indicate workorder dependency This is a virtual function whose role in child classes is to determine if this WorkOrder depends on the WorkOrder passed in as an argument. More... | |
Directory * | directory () const |
return the workorder project directory Returns the Directory object of the Project this WorkOrder is attached to. More... | |
Project * | project () const |
Returns the Project this WorkOrder is attached to. More... | |
void | setCreatesCleanState (bool createsCleanState) |
Declare that this work order is saving the project. More... | |
void | setModifiesDiskState (bool changesProjectOnDisk) |
void | setInternalData (QStringList data) |
Sets the internal data for this WorkOrder. More... | |
int | progressMin () const |
Gets the minimum value of the progress range of the WorkOrder. More... | |
int | progressMax () const |
Gets the maximum value of the progress range of the WorkOrder. More... | |
int | progressValue () const |
Gets the current progress value of the WorkOrder. More... | |
void | setProgressRange (int, int) |
Sets the progress range of the WorkOrder. More... | |
void | setProgressValue (int) |
Sets the current progress value for the WorkOrder. More... | |
QStringList | internalData () const |
Gets the internal data for this WorkOrder. More... | |
virtual void | postExecution () |
Perform any necessary actions after execution of a workorder. More... | |
virtual void | undoExecution () |
Execute the steps necessary to undo this workorder. More... | |
virtual void | postUndoExecution () |
Perform any steps necessary after an undo of a workorder. More... | |
Protected Attributes | |
bool | m_isUndoable |
Set the workorder to be undoable/redoable This is defaulted to true - his will allow the workorder to be redone. More... | |
bool | m_isSynchronous |
This is defaulted to true. More... | |
bool | m_isSavedToHistory |
Set the work order to be shown in the HistoryTreeWidget. More... | |
WorkOrderStatus | m_status |
Private Types | |
enum | QueuedWorkOrderAction { NoQueuedAction, RedoQueuedAction, UndoQueuedAction } |
This enum describes the current state of a Queued WorkOrder. More... | |
Private Slots | |
void | attemptQueuedAction () |
Attempts to execute an action on the action queue. More... | |
void | executionFinished () |
Signals the Project that the WorkOrder is finished, deletes the update time for the Progress bar, and sets the finished status. More... | |
void | clearImageList () |
Clears the list of images. More... | |
void | clearShapeList () |
Clears the list of shapes. More... | |
void | updateProgress () |
Updates the progress bar. More... | |
void | startRedo () |
WorkOrder::startRedo This function is currently empty. More... | |
Private Member Functions | |
SaveProjectWorkOrder & | operator= (const SaveProjectWorkOrder &rhs) |
bool | isInStableState () const |
Determines if the WorkOrder is in a stable state, or if it's busy doing something. More... | |
void | listenForImageDestruction () |
Checks to see if we have lost any images in the ImageList. More... | |
void | listenForShapeDestruction () |
Checks to see if we have lost any shapes in the ShapeList. More... | |
void | resetProgressBar () |
Resets the ProgressBar. More... | |
void | setProgressToFinalText () |
Sets the ProgressBar to display the final status of the operation. More... | |
Private Attributes | |
bool | m_createsCleanState |
This is defaulted to false. More... | |
bool | m_modifiesDiskState |
This is defaulted to false. More... | |
QueuedWorkOrderAction | m_queuedAction |
int | m_progressRangeMinValue |
The miniumum value of the Progess Bar. More... | |
int | m_progressRangeMaxValue |
The maximum value of the Progess Bar. More... | |
int | m_progressValue |
The current value of the Progress Bar. More... | |
Context | m_context |
QString | m_data |
QPointer< ImageList > | m_imageList |
QPointer< ShapeList > | m_shapeList |
QPointer< ControlList > | m_controlList |
CorrelationMatrix | m_correlationMatrix |
GuiCameraQsp | m_guiCamera |
A QSharedPointer to the GuiCamera (the Camera object but encapsulated within a Gui framework. More... | |
Template * | m_template |
A QSharedPointer to the Template (A Template object but encapsulated within a Gui framework. More... | |
TargetBodyQsp | m_targetBody |
A QSharedPointer to the TargetBody (A Target object but encapsulated within a Gui framework. More... | |
FileItemQsp | m_fileItem |
A QSharedPointer to the FileItem. More... | |
QStringList | m_imageIds |
A QStringList of unique image identifiers for all of the images this WorkOrder is dealing with. More... | |
QStringList | m_shapeIds |
A QStringList of unique shape identifiers for all of the shapes this WorkOrder is dealing with. More... | |
QStringList | m_internalData |
A QStringList of internal properties for this WorkOrder. More... | |
QPointer< WorkOrder > | m_nextWorkOrder |
A pointer to the next WorkOrder in the queue. More... | |
QPointer< WorkOrder > | m_previousWorkOrder |
A pointer to the previous WorkOrder in the queue. More... | |
QPointer< Project > | m_project |
A pointer to the Project this WorkOrder is attached to. More... | |
QMutex * | m_transparentConstMutex |
This is used to protect the integrity of data the WorkOrder is working on so that only one thread at a time cann access it. More... | |
QDateTime | m_executionTime |
This is the date/time that setupExecution() was called. More... | |
QPointer< QFutureWatcher< void > > | m_futureWatcher |
A pointer to a QFutureWatcher object which monitors a QFuture object using signals and slots. More... | |
QPointer< ProgressBar > | m_progressBar |
A pointer to the ProgressBar. More... | |
QPointer< QTimer > | m_progressBarUpdateTimer |
A pointer to the QTimer which updates the ProgressBar. More... | |
QPointer< QTimer > | m_progressBarDeletionTimer |
A pointer to the ProgressBar deletion timer. More... | |
QTime * | m_elapsedTimer |
A QTime object holding the excecution time of the WorkOrder. More... | |
double | m_secondsElapsed |
The seconds that have elapsed since the WorkOrder started executing. More... | |
Saves a project to disk (File->Save Project...)
Definition at line 47 of file SaveProjectWorkOrder.h.
|
inherited |
This enumeration is for recording the context of the current Workorder (whether it is part of a project or not).
Definition at line 339 of file WorkOrder.h.
|
privateinherited |
This enum describes the current state of a Queued WorkOrder.
Definition at line 483 of file WorkOrder.h.
|
inherited |
This enumeration is used by other functions to set and retrieve the current state of the WorkOrder.
Enumerator | |
---|---|
WorkOrderFinished | This is used for work orders that will not undo or redo (See createsCleanState()) |
Definition at line 321 of file WorkOrder.h.
Isis::SaveProjectWorkOrder::SaveProjectWorkOrder | ( | Project * | project | ) |
Constructor.
Creates a work order for saving the state of the project.
Project | *project Pointer to the project to save. |
Definition at line 44 of file SaveProjectWorkOrder.cpp.
References Isis::WorkOrder::setCreatesCleanState().
Referenced by clone().
Isis::SaveProjectWorkOrder::SaveProjectWorkOrder | ( | const SaveProjectWorkOrder & | other | ) |
Copy constrcutor.
Creates a SaveProjectWorkOrder from another one.
const | SaveProjectWorkOrder &order The work order to copy from. |
Definition at line 60 of file SaveProjectWorkOrder.cpp.
Isis::SaveProjectWorkOrder::~SaveProjectWorkOrder | ( | ) |
Destructor.
Definition at line 68 of file SaveProjectWorkOrder.cpp.
|
protectedslotinherited |
Runs a copy of the current WorkOrder and stores it in the project.
Definition at line 1452 of file WorkOrder.cpp.
References Isis::Project::addToProject(), and Isis::WorkOrder::project().
Referenced by Isis::WorkOrder::WorkOrder().
|
privateslotinherited |
Attempts to execute an action on the action queue.
Definition at line 1575 of file WorkOrder.cpp.
References Isis::WorkOrder::redo(), and Isis::WorkOrder::undo().
Referenced by Isis::WorkOrder::executionFinished(), Isis::WorkOrder::redo(), and Isis::WorkOrder::undo().
|
inherited |
Generate unique action names We don't use action text anymore because Directory likes to rename our actions.
It converts a set of actions that have the same text, like Zoom Fit, to be in a menu named Zoom Fit with items that name their widgets. Widget names are unhelpful as a description of the action.
Definition at line 795 of file WorkOrder.cpp.
Referenced by Isis::HistoryTreeWidget::addToHistory(), Isis::WorkOrder::redo(), Isis::WorkOrder::save(), and Isis::WorkOrder::undo().
|
privateslotinherited |
Clears the list of images.
Definition at line 1623 of file WorkOrder.cpp.
Referenced by Isis::WorkOrder::listenForImageDestruction().
|
privateslotinherited |
Clears the list of shapes.
Definition at line 1631 of file WorkOrder.cpp.
Referenced by Isis::WorkOrder::listenForShapeDestruction().
|
virtual |
Clones an existing SaveProjectWorkder and gives back a newly allocated copy of the work order.
Implements Isis::WorkOrder.
Definition at line 77 of file SaveProjectWorkOrder.cpp.
References SaveProjectWorkOrder().
|
protectedinherited |
Returns the Control List for this WorkOrder (a list of control networks).
Definition at line 706 of file WorkOrder.cpp.
References Isis::WorkOrder::project().
Referenced by Isis::CnetEditorViewWorkOrder::execute(), Isis::ExportControlNetWorkOrder::execute(), Isis::SetActiveControlWorkOrder::execute(), Isis::WorkOrder::isExecutable(), Isis::WorkOrder::setData(), Isis::CnetEditorViewWorkOrder::setupExecution(), Isis::ControlHealthMonitorWorkOrder::setupExecution(), Isis::ExportControlNetWorkOrder::setupExecution(), and Isis::SetActiveControlWorkOrder::setupExecution().
|
protectedinherited |
Returns the CorrleationMatrix for this WorkOrder.
Definition at line 696 of file WorkOrder.cpp.
References Isis::WorkOrder::project().
Referenced by Isis::MatrixViewWorkOrder::execute(), Isis::WorkOrder::setData(), and Isis::MatrixViewWorkOrder::setupExecution().
|
inherited |
Returns the CleanState status (whether the Project has been saved to disk or not).
If this is set to true the work order will avoid being put on the undo stack, meaning it will not be undoable. It will also set the undo stack to a clean state, by doing this it makes all previous workorders done before the save to be no longer undoable.
Definition at line 854 of file WorkOrder.cpp.
References Isis::WorkOrder::m_createsCleanState, and Isis::WorkOrder::project().
Referenced by Isis::HistoryTreeWidget::addToHistory(), Isis::Project::addToProject(), Isis::WorkOrder::setCreatesCleanState(), and Isis::WorkOrder::setupExecution().
|
protectedvirtualinherited |
Indicate workorder dependency This is a virtual function whose role in child classes is to determine if this WorkOrder depends on the WorkOrder passed in as an argument.
Reimplemented in Isis::ViewControlNet3DWorkOrder, Isis::TemplateEditViewWorkOrder, Isis::TargetGetInfoWorkOrder, Isis::SensorGetInfoWorkOrder, Isis::RenameProjectWorkOrder, Isis::MatrixViewWorkOrder, Isis::JigsawWorkOrder, Isis::CubeDnViewWorkOrder, and Isis::CnetEditorViewWorkOrder.
Definition at line 781 of file WorkOrder.cpp.
Referenced by Isis::WorkOrder::redo().
|
protectedinherited |
return the workorder project directory Returns the Directory object of the Project this WorkOrder is attached to.
Definition at line 1290 of file WorkOrder.cpp.
References Isis::Project::directory(), and Isis::WorkOrder::project().
Referenced by Isis::CubeDnViewWorkOrder::execute(), Isis::Footprint2DViewWorkOrder::execute(), Isis::ImageFileListViewWorkOrder::execute(), Isis::JigsawWorkOrder::isExecutable(), and Isis::MosaicSceneWorkOrder::scene().
|
slotinherited |
Disables the work order.
Disables the work order so it cannot be triggered (grayed-out).
Definition at line 1230 of file WorkOrder.cpp.
|
slotinherited |
Enables the work order.
Enables the work order so that it can be triggered (clicked).
Definition at line 1218 of file WorkOrder.cpp.
|
virtualslotinherited |
Execute the workorder.
Execute() does the actual work in the work order. All necessary data for the execution (and undo) of the workorder should have been saved in the workorder prior to execute(). Execute() is also called to redo a workorder for redoable workorders. If the workorder is a synchrounous workorder the workorder will be run on the GUI thread, otherwise it will be queued and run on a separate thread.
For Synchronous workorders: State should only be read from the parent WorkOrder class in this method. You can set state to postExecution() safely. This method is always executed in the GUI thread.
For asynchronous workorders: State can be read from the parent WorkOrder class while in this method. You can set state to be used in postExecution() safely. Please be wary of creating QObjects inside of this method because they will associated with the pooled thread and must be moved back to the GUI thread with QObject::moveToThread(). You can update progress by calling setProgressRange() and setProgressValue(). Do not manipulate any GUI objects here.
Reimplemented in Isis::MoveUpOneSceneWorkOrder, Isis::MoveToTopSceneWorkOrder, Isis::MoveToBottomSceneWorkOrder, Isis::MoveDownOneSceneWorkOrder, Isis::ImageListActionWorkOrder, Isis::ViewControlNet3DWorkOrder, Isis::TemplateEditViewWorkOrder, Isis::TargetGetInfoWorkOrder, Isis::SetActiveImageListWorkOrder, Isis::SetActiveControlWorkOrder, Isis::SensorGetInfoWorkOrder, Isis::SaveProjectAsWorkOrder, Isis::RenameProjectWorkOrder, Isis::RemoveImagesWorkOrder, Isis::OpenProjectWorkOrder, Isis::MatrixViewWorkOrder, Isis::JigsawWorkOrder, Isis::ImportShapesWorkOrder, Isis::ImportRegistrationTemplateWorkOrder, Isis::ImportMapTemplateWorkOrder, Isis::ImportImagesWorkOrder, Isis::ImportControlNetWorkOrder, Isis::ImageFileListViewWorkOrder, Isis::Footprint2DViewWorkOrder, Isis::ExportImagesWorkOrder, Isis::ExportControlNetWorkOrder, Isis::CubeDnViewWorkOrder, Isis::ControlHealthMonitorWorkOrder, Isis::CnetEditorViewWorkOrder, Isis::CloseProjectWorkOrder, and Isis::BundleObservationViewWorkOrder.
Definition at line 1403 of file WorkOrder.cpp.
Referenced by Isis::Project::addToProject(), and Isis::WorkOrder::redo().
|
privateslotinherited |
Signals the Project that the WorkOrder is finished, deletes the update time for the Progress bar, and sets the finished status.
Definition at line 1592 of file WorkOrder.cpp.
References Isis::WorkOrder::attemptQueuedAction(), Isis::WorkOrder::isUndoing(), Isis::WorkOrder::m_elapsedTimer, Isis::WorkOrder::m_progressBarUpdateTimer, Isis::WorkOrder::m_secondsElapsed, Isis::WorkOrder::postExecution(), Isis::WorkOrder::postUndoExecution(), and Isis::WorkOrder::setProgressToFinalText().
Referenced by Isis::WorkOrder::redo(), Isis::WorkOrder::undo(), and Isis::WorkOrder::WorkOrder().
|
inherited |
Gets the execution time of this WorkOrder.
Definition at line 864 of file WorkOrder.cpp.
References Isis::WorkOrder::m_executionTime, and Isis::WorkOrder::project().
Referenced by Isis::HistoryTreeWidget::addToHistory(), and Isis::WorkOrder::XmlHandler::startElement().
|
protectedinherited |
Definition at line 766 of file WorkOrder.cpp.
References Isis::WorkOrder::m_fileItem, and Isis::WorkOrder::project().
Referenced by Isis::BundleObservationViewWorkOrder::execute(), Isis::BundleObservationViewWorkOrder::isExecutable(), and Isis::WorkOrder::setData().
|
staticinherited |
Attempts to query the current status of the WorkOrder.
statusString | The status we want information about. |
Definition at line 988 of file WorkOrder.cpp.
References Isis::WorkOrder::toString().
Referenced by Isis::WorkOrder::XmlHandler::startElement().
|
protectedinherited |
Definition at line 736 of file WorkOrder.cpp.
References Isis::WorkOrder::m_template, and Isis::WorkOrder::project().
Referenced by Isis::TemplateEditViewWorkOrder::execute(), and Isis::TemplateEditViewWorkOrder::setupExecution().
|
protectedinherited |
Definition at line 756 of file WorkOrder.cpp.
References Isis::WorkOrder::m_guiCamera, and Isis::WorkOrder::project().
Referenced by Isis::SensorGetInfoWorkOrder::execute(), Isis::SensorGetInfoWorkOrder::isExecutable(), Isis::WorkOrder::setData(), and Isis::SensorGetInfoWorkOrder::setupExecution().
|
protectedinherited |
Returns a pointer to the ImageList for this WorkOrder.
Definition at line 631 of file WorkOrder.cpp.
References Isis::Project::image(), Isis::WorkOrder::listenForImageDestruction(), Isis::WorkOrder::m_imageIds, and Isis::WorkOrder::project().
Referenced by Isis::ExportImagesWorkOrder::execute(), Isis::ImageFileListViewWorkOrder::execute(), Isis::RemoveImagesWorkOrder::execute(), Isis::SetActiveImageListWorkOrder::execute(), Isis::ImageListActionWorkOrder::execute(), Isis::MoveDownOneSceneWorkOrder::execute(), Isis::MoveToBottomSceneWorkOrder::execute(), Isis::MoveToTopSceneWorkOrder::execute(), Isis::MoveUpOneSceneWorkOrder::execute(), Isis::WorkOrder::imageList(), Isis::ImageListActionWorkOrder::ImageListActionWorkOrder(), Isis::SetActiveImageListWorkOrder::isExecutable(), Isis::WorkOrder::isExecutable(), Isis::ImageListActionWorkOrder::qualifyString(), Isis::WorkOrder::redo(), Isis::MosaicSceneWorkOrder::restoreZPositions(), Isis::ImageListActionWorkOrder::setData(), Isis::WorkOrder::setData(), Isis::ExportImagesWorkOrder::setupExecution(), Isis::Footprint2DViewWorkOrder::setupExecution(), Isis::ImageFileListViewWorkOrder::setupExecution(), Isis::RemoveImagesWorkOrder::setupExecution(), Isis::ImageListActionWorkOrder::setupExecution(), and Isis::ImageListActionWorkOrder::undoExecution().
|
protectedinherited |
A thread-safe method for retrieving a pointer to the imageList.
Definition at line 716 of file WorkOrder.cpp.
References Isis::WorkOrder::imageList(), and Isis::WorkOrder::m_transparentConstMutex.
|
protectedinherited |
Gets the internal data for this WorkOrder.
Definition at line 1377 of file WorkOrder.cpp.
References Isis::WorkOrder::m_internalData, and Isis::WorkOrder::project().
Referenced by Isis::CubeDnViewWorkOrder::execute(), Isis::ExportControlNetWorkOrder::execute(), Isis::ExportImagesWorkOrder::execute(), Isis::Footprint2DViewWorkOrder::execute(), Isis::ImageFileListViewWorkOrder::execute(), Isis::ImportControlNetWorkOrder::execute(), Isis::ImportImagesWorkOrder::execute(), Isis::ImportMapTemplateWorkOrder::execute(), Isis::ImportRegistrationTemplateWorkOrder::execute(), Isis::ImportShapesWorkOrder::execute(), Isis::RenameProjectWorkOrder::execute(), Isis::SaveProjectAsWorkOrder::execute(), Isis::ImageListActionWorkOrder::execute(), Isis::ImageListActionWorkOrder::ImageListActionWorkOrder(), Isis::ImportImagesWorkOrder::importConfirmedImages(), Isis::ImportShapesWorkOrder::importConfirmedShapes(), Isis::RenameProjectWorkOrder::RenameProjectWorkOrder(), Isis::MosaicSceneWorkOrder::restoreZPositions(), Isis::MosaicSceneWorkOrder::scene(), Isis::ImageListActionWorkOrder::setData(), Isis::CubeDnViewWorkOrder::setupExecution(), Isis::ExportControlNetWorkOrder::setupExecution(), Isis::ExportImagesWorkOrder::setupExecution(), Isis::Footprint2DViewWorkOrder::setupExecution(), Isis::ImageFileListViewWorkOrder::setupExecution(), Isis::ImportControlNetWorkOrder::setupExecution(), Isis::MatrixViewWorkOrder::setupExecution(), Isis::RenameProjectWorkOrder::setupExecution(), Isis::SensorGetInfoWorkOrder::setupExecution(), Isis::TargetGetInfoWorkOrder::setupExecution(), Isis::TemplateEditViewWorkOrder::setupExecution(), Isis::ImageListActionWorkOrder::setupExecution(), Isis::MatrixViewWorkOrder::undoExecution(), Isis::RenameProjectWorkOrder::undoExecution(), and Isis::ImageListActionWorkOrder::undoExecution().
|
virtualinherited |
Re-implement this method if your work order utilizes controls for data in order to operate.
For example, "CnetEditorViewWorkOrder" works sometimes on controls
context | This is an enum variable with two values: NoContext,ProjectContext. |
Reimplemented in Isis::RenameProjectWorkOrder.
Definition at line 182 of file WorkOrder.cpp.
Referenced by Isis::WorkOrder::isExecutable(), and Isis::Directory::supportedActions().
|
virtualinherited |
Re-implement this method if your work order utilizes a control for data in order to operate.
control | A control networks. |
Re-implement this method if your work order utilizes a control list (a list of control networks) for data in order to operate.
controls | A list of control networks. |
Reimplemented in Isis::ViewControlNet3DWorkOrder, Isis::SetActiveControlWorkOrder, Isis::ExportControlNetWorkOrder, Isis::ControlHealthMonitorWorkOrder, and Isis::CnetEditorViewWorkOrder.
Definition at line 234 of file WorkOrder.cpp.
|
virtualinherited |
Re-implement this method if your WorkOrder utilizes FileItemQsp (a QSharedPointer to a FileItem object) for data in order to operate.
FileItemQsp |
Reimplemented in Isis::BundleObservationViewWorkOrder.
Definition at line 446 of file WorkOrder.cpp.
|
virtualinherited |
Re-implement this method if your WorkOrder utilizes GuiCameraQsp (a QSharedPointer to a GuiCamera object) for data in order to operate.
GuiCameraQsp |
Reimplemented in Isis::SensorGetInfoWorkOrder.
Definition at line 434 of file WorkOrder.cpp.
|
virtualinherited |
Re-implement this method if your work order utilizes images for data in order to operate.
For example, "Footprint2DViewWorkOrder" works sometimes on images - the logic in side of Footprint2DViewWorkOrder::isExecutable(ImageList) determines whethere or not a user is prompted with this work order as a possibility.
images | An image list that this work order should execute on |
Reimplemented in Isis::ImageListActionWorkOrder, Isis::RemoveImagesWorkOrder, Isis::ImageFileListViewWorkOrder, Isis::Footprint2DViewWorkOrder, Isis::ExportImagesWorkOrder, Isis::CubeDnViewWorkOrder, and Isis::SetActiveImageListWorkOrder.
Definition at line 196 of file WorkOrder.cpp.
|
virtualinherited |
Determines if the WorkOrder is execuatable on the data stored in a ProjectItem.
item | (ProjectItem *) The item containing the data. |
Reimplemented in Isis::TemplateEditViewWorkOrder, Isis::ImportShapesWorkOrder, Isis::ImportRegistrationTemplateWorkOrder, Isis::ImportMapTemplateWorkOrder, Isis::ImportImagesWorkOrder, and Isis::ImportControlNetWorkOrder.
Definition at line 458 of file WorkOrder.cpp.
References Isis::ImageList::append(), Isis::ShapeList::append(), Isis::ProjectItem::control(), Isis::WorkOrder::controlList(), Isis::ProjectItem::correlationMatrix(), Isis::ProjectItem::fileItem(), Isis::ProjectItem::getTemplate(), Isis::ProjectItem::guiCamera(), Isis::ProjectItem::image(), Isis::WorkOrder::imageList(), Isis::ProjectItem::imageList(), Isis::ProjectItem::isControl(), Isis::ProjectItem::isControlList(), Isis::ProjectItem::isCorrelationMatrix(), Isis::WorkOrder::isExecutable(), Isis::ProjectItem::isFileItem(), Isis::ProjectItem::isGuiCamera(), Isis::ProjectItem::isImage(), Isis::ProjectItem::isImageList(), Isis::ProjectItem::isProject(), Isis::ProjectItem::isShape(), Isis::ProjectItem::isShapeList(), Isis::ProjectItem::isTargetBody(), Isis::ProjectItem::shape(), Isis::WorkOrder::shapeList(), Isis::ProjectItem::shapeList(), and Isis::ProjectItem::targetBody().
|
virtualinherited |
Re-implement this method if your work order utilizes shapes for data in order to operate.
For example, "ImportShapeWorkOrder" works on shapes - the logic in side of ImportShapeWorkOrder::isExecutable(ShapeList) determines whethere or not a user is prompted with this work order as a possibility.
shapes | A shape list that this work order should execute on |
Reimplemented in Isis::Footprint2DViewWorkOrder, and Isis::CubeDnViewWorkOrder.
Definition at line 210 of file WorkOrder.cpp.
|
virtualinherited |
Re-implement this method if your work order utilizes a control list (a list of control networks) for data in order to operate.
controls | A list of control networks. |
Reimplemented in Isis::TargetGetInfoWorkOrder.
Definition at line 410 of file WorkOrder.cpp.
|
virtualinherited |
Re-implement this method if your work order utilizes a control list (a list of control networks) for data in order to operate.
controls | A list of control networks. |
Definition at line 422 of file WorkOrder.cpp.
|
inherited |
Returns the finished state of this WorkOrder.
Definition at line 874 of file WorkOrder.cpp.
References Isis::WorkOrder::WorkOrderFinished.
Referenced by Isis::WorkOrder::redo(), and Isis::WorkOrder::undo().
|
privateinherited |
Determines if the WorkOrder is in a stable state, or if it's busy doing something.
Definition at line 1463 of file WorkOrder.cpp.
References Isis::WorkOrder::isRedoing(), and Isis::WorkOrder::isUndoing().
Referenced by Isis::WorkOrder::redo(), Isis::WorkOrder::save(), Isis::WorkOrder::undo(), and Isis::WorkOrder::WorkOrder().
|
inherited |
Returns the redoing status of this WorkOrder.
Definition at line 883 of file WorkOrder.cpp.
References Isis::WorkOrder::project().
Referenced by Isis::WorkOrder::isInStableState(), Isis::WorkOrder::redo(), Isis::WorkOrder::undo(), and Isis::WorkOrder::updateProgress().
|
inherited |
Returns the WorkOrder redone status.
Definition at line 893 of file WorkOrder.cpp.
References Isis::WorkOrder::project().
Referenced by Isis::WorkOrder::redo(), and Isis::WorkOrder::setProgressToFinalText().
|
inherited |
Returns true if this work order is to be shown in History, otherwise false.
Definition at line 830 of file WorkOrder.cpp.
References Isis::WorkOrder::m_isSavedToHistory, and Isis::WorkOrder::project().
Referenced by Isis::Project::addToProject().
|
inherited |
Returns true if this work order is run synchronously, otherwise false.
Definition at line 841 of file WorkOrder.cpp.
References Isis::WorkOrder::m_isSynchronous, and Isis::WorkOrder::project().
Referenced by Isis::WorkOrder::redo(), and Isis::WorkOrder::undo().
|
inherited |
Returns true if this work order is undoable, otherwise false.
This needs to be set to true and createsCleanState needs to be set to false in order for a WorkOrder to appear on the undoStack. This should be done by setting the member variable and should not be overloading this function.
Definition at line 819 of file WorkOrder.cpp.
References Isis::WorkOrder::m_isUndoable, and Isis::WorkOrder::project().
Referenced by Isis::HistoryTreeWidget::addToHistory(), Isis::Project::addToProject(), and Isis::WorkOrder::setupExecution().
|
inherited |
Returns the WorkOrderUndoing state.
Definition at line 903 of file WorkOrder.cpp.
References Isis::WorkOrder::project().
Referenced by Isis::WorkOrder::executionFinished(), Isis::WorkOrder::isInStableState(), Isis::Project::lastNotUndoneWorkOrder(), Isis::WorkOrder::redo(), Isis::WorkOrder::undo(), and Isis::WorkOrder::updateProgress().
|
inherited |
Returns the WorkOrder undo status.
Definition at line 913 of file WorkOrder.cpp.
References Isis::WorkOrder::project().
Referenced by Isis::Project::lastNotUndoneWorkOrder(), Isis::WorkOrder::setProgressToFinalText(), and Isis::WorkOrder::undo().
|
privateinherited |
Checks to see if we have lost any images in the ImageList.
If we have, then destroy the entire list. This will send a signal that the list needs to be rebuilt if requested.
Definition at line 1479 of file WorkOrder.cpp.
References Isis::WorkOrder::clearImageList(), Isis::Image::id(), and Isis::WorkOrder::m_imageIds.
Referenced by Isis::WorkOrder::imageList(), Isis::WorkOrder::setData(), and Isis::WorkOrder::WorkOrder().
|
privateinherited |
Checks to see if we have lost any shapes in the ShapeList.
If we have, then destroy the entire list. This will send a signal that the list needs to be rebuilt if requested.
TODO 2016-07-26 TLS Combine this with listenForImageDestruction() - Basically duplicate code.
Definition at line 1502 of file WorkOrder.cpp.
References Isis::WorkOrder::clearShapeList(), Isis::Shape::id(), and Isis::WorkOrder::m_shapeIds.
Referenced by Isis::WorkOrder::setData(), Isis::WorkOrder::shapeList(), and Isis::WorkOrder::WorkOrder().
|
inherited |
Returns the modified disk state.
Definition at line 924 of file WorkOrder.cpp.
References Isis::WorkOrder::m_modifiesDiskState, and Isis::WorkOrder::project().
|
inherited |
Gets the next WorkOrder.
Definition at line 934 of file WorkOrder.cpp.
References Isis::WorkOrder::m_nextWorkOrder, and Isis::WorkOrder::project().
Referenced by Isis::WorkOrder::undo().
|
protectedvirtualinherited |
Perform any necessary actions after execution of a workorder.
State can be read from the parent WorkOrder class and from state set in either synchronous() or asyncRedo() while in this method. You can not set state to be used in any of the undo code safely. This method is always executed in the GUI thread and has no progress.
Reimplemented in Isis::ImportShapesWorkOrder, Isis::ImportImagesWorkOrder, Isis::ImportControlNetWorkOrder, Isis::ExportImagesWorkOrder, and Isis::ExportControlNetWorkOrder.
Definition at line 1414 of file WorkOrder.cpp.
Referenced by Isis::WorkOrder::executionFinished().
|
protectedvirtualinherited |
Perform any steps necessary after an undo of a workorder.
State can be read from the parent WorkOrder class and from state set undoExecution() while in this method. You can not set state to be used in any of the redo code safely. This method is always executed in the GUI thread and has no progress.
Reimplemented in Isis::ImportShapesWorkOrder, and Isis::ImportImagesWorkOrder.
Definition at line 1445 of file WorkOrder.cpp.
Referenced by Isis::WorkOrder::executionFinished().
|
inherited |
Gets the previous WorkOrder.
Definition at line 944 of file WorkOrder.cpp.
References Isis::WorkOrder::m_previousWorkOrder, and Isis::WorkOrder::project().
Referenced by Isis::Project::addToProject(), Isis::Project::lastNotUndoneWorkOrder(), and Isis::WorkOrder::redo().
|
inherited |
Returns the ProgressBar.
Definition at line 975 of file WorkOrder.cpp.
References Isis::WorkOrder::m_progressBar, and Isis::WorkOrder::project().
Referenced by Isis::HistoryTreeWidget::addToHistory(), Isis::OpenProjectWorkOrder::setupExecution(), and Isis::HistoryTreeWidget::updateProgressWidgets().
|
protectedinherited |
Gets the maximum value of the progress range of the WorkOrder.
Definition at line 1337 of file WorkOrder.cpp.
References Isis::WorkOrder::m_progressRangeMaxValue, and Isis::WorkOrder::project().
|
protectedinherited |
Gets the minimum value of the progress range of the WorkOrder.
Definition at line 1327 of file WorkOrder.cpp.
References Isis::WorkOrder::m_progressRangeMinValue, and Isis::WorkOrder::project().
|
protectedinherited |
Gets the current progress value of the WorkOrder.
Definition at line 1347 of file WorkOrder.cpp.
References Isis::WorkOrder::m_progressValue, and Isis::WorkOrder::project().
|
protectedinherited |
Returns the Project this WorkOrder is attached to.
IException::Programmer | "This work order no longer has a project." |
Definition at line 1300 of file WorkOrder.cpp.
References Isis::WorkOrder::m_project, and Isis::IException::Programmer.
Referenced by Isis::WorkOrder::addCloneToProject(), Isis::ImportControlNetWorkOrder::cnetReady(), Isis::WorkOrder::controlList(), Isis::WorkOrder::correlationMatrix(), Isis::ImportControlNetWorkOrder::CreateControlsFunctor::CreateControlsFunctor(), Isis::WorkOrder::createsCleanState(), Isis::WorkOrder::directory(), Isis::BundleObservationViewWorkOrder::execute(), Isis::CloseProjectWorkOrder::execute(), Isis::CnetEditorViewWorkOrder::execute(), Isis::ControlHealthMonitorWorkOrder::execute(), Isis::CubeDnViewWorkOrder::execute(), Isis::ExportControlNetWorkOrder::execute(), Isis::ExportImagesWorkOrder::execute(), Isis::Footprint2DViewWorkOrder::execute(), Isis::ImageFileListViewWorkOrder::execute(), Isis::ImportControlNetWorkOrder::execute(), Isis::ImportImagesWorkOrder::execute(), Isis::ImportMapTemplateWorkOrder::execute(), Isis::ImportRegistrationTemplateWorkOrder::execute(), Isis::ImportShapesWorkOrder::execute(), Isis::JigsawWorkOrder::execute(), Isis::MatrixViewWorkOrder::execute(), Isis::OpenProjectWorkOrder::execute(), Isis::RemoveImagesWorkOrder::execute(), Isis::RenameProjectWorkOrder::execute(), Isis::SaveProjectAsWorkOrder::execute(), Isis::SensorGetInfoWorkOrder::execute(), Isis::SetActiveControlWorkOrder::execute(), Isis::SetActiveImageListWorkOrder::execute(), Isis::TargetGetInfoWorkOrder::execute(), Isis::TemplateEditViewWorkOrder::execute(), Isis::WorkOrder::executionTime(), Isis::WorkOrder::fileItem(), Isis::WorkOrder::getTemplate(), Isis::WorkOrder::guiCamera(), Isis::WorkOrder::imageList(), Isis::ImportImagesWorkOrder::importConfirmedImages(), Isis::ImportShapesWorkOrder::importConfirmedShapes(), Isis::WorkOrder::internalData(), Isis::JigsawWorkOrder::isExecutable(), Isis::SetActiveControlWorkOrder::isExecutable(), Isis::SensorGetInfoWorkOrder::isExecutable(), Isis::SetActiveImageListWorkOrder::isExecutable(), Isis::TemplateEditViewWorkOrder::isExecutable(), Isis::TargetGetInfoWorkOrder::isExecutable(), Isis::WorkOrder::isRedoing(), Isis::WorkOrder::isRedone(), Isis::WorkOrder::isSavedToHistory(), Isis::WorkOrder::isSynchronous(), Isis::WorkOrder::isUndoable(), Isis::WorkOrder::isUndoing(), Isis::WorkOrder::isUndone(), Isis::WorkOrder::modifiesDiskState(), Isis::WorkOrder::next(), Isis::ExportControlNetWorkOrder::postExecution(), Isis::ExportImagesWorkOrder::postExecution(), Isis::ImportControlNetWorkOrder::postExecution(), Isis::ImportImagesWorkOrder::postExecution(), Isis::ImportShapesWorkOrder::postExecution(), Isis::ImportImagesWorkOrder::postUndoExecution(), Isis::ImportShapesWorkOrder::postUndoExecution(), Isis::WorkOrder::previous(), Isis::WorkOrder::progressBar(), Isis::WorkOrder::progressMax(), Isis::WorkOrder::progressMin(), Isis::WorkOrder::progressValue(), Isis::WorkOrder::redo(), Isis::RenameProjectWorkOrder::RenameProjectWorkOrder(), Isis::CloseProjectWorkOrder::setupExecution(), Isis::CubeDnViewWorkOrder::setupExecution(), Isis::ExportControlNetWorkOrder::setupExecution(), Isis::ExportImagesWorkOrder::setupExecution(), Isis::Footprint2DViewWorkOrder::setupExecution(), Isis::ImageFileListViewWorkOrder::setupExecution(), Isis::ImportImagesWorkOrder::setupExecution(), Isis::MatrixViewWorkOrder::setupExecution(), Isis::OpenProjectWorkOrder::setupExecution(), Isis::RemoveImagesWorkOrder::setupExecution(), Isis::RenameProjectWorkOrder::setupExecution(), setupExecution(), Isis::SetActiveControlWorkOrder::setupExecution(), Isis::WorkOrder::shapeList(), Isis::WorkOrder::statusText(), Isis::WorkOrder::targetBody(), Isis::CnetEditorViewWorkOrder::undoExecution(), Isis::ImportImagesWorkOrder::undoExecution(), Isis::ImportMapTemplateWorkOrder::undoExecution(), Isis::ImportRegistrationTemplateWorkOrder::undoExecution(), Isis::ImportShapesWorkOrder::undoExecution(), Isis::MatrixViewWorkOrder::undoExecution(), Isis::RenameProjectWorkOrder::undoExecution(), and Isis::WorkOrder::WorkOrder().
|
inherited |
Read this work order's data from disk.
Definition at line 520 of file WorkOrder.cpp.
References Isis::XmlStackedHandlerReader::pushContentHandler().
|
virtualslotinherited |
Starts (or enqueues) a redo.
This should not be re-implemented by children.
Definition at line 1043 of file WorkOrder.cpp.
References Isis::WorkOrder::attemptQueuedAction(), Isis::WorkOrder::bestText(), Isis::WorkOrder::dependsOn(), Isis::WorkOrder::execute(), Isis::WorkOrder::executionFinished(), Isis::WorkOrder::imageList(), Isis::WorkOrder::isFinished(), Isis::WorkOrder::isInStableState(), Isis::WorkOrder::isRedoing(), Isis::WorkOrder::isRedone(), Isis::WorkOrder::isSynchronous(), Isis::WorkOrder::isUndoing(), Isis::WorkOrder::m_elapsedTimer, Isis::WorkOrder::m_futureWatcher, Isis::WorkOrder::m_progressBar, Isis::WorkOrder::previous(), Isis::WorkOrder::project(), Isis::WorkOrder::resetProgressBar(), Isis::WorkOrder::setProgressToFinalText(), and Isis::WorkOrder::shapeList().
Referenced by Isis::Project::addToProject(), and Isis::WorkOrder::attemptQueuedAction().
|
privateinherited |
Resets the ProgressBar.
Definition at line 1520 of file WorkOrder.cpp.
References Isis::WorkOrder::m_progressBar, Isis::WorkOrder::m_progressBarDeletionTimer, Isis::WorkOrder::m_progressBarUpdateTimer, Isis::WorkOrder::m_progressRangeMaxValue, Isis::WorkOrder::m_progressRangeMinValue, Isis::WorkOrder::m_progressValue, and Isis::WorkOrder::updateProgress().
Referenced by Isis::WorkOrder::redo(), Isis::WorkOrder::setupExecution(), and Isis::WorkOrder::undo().
|
inherited |
: Saves a WorkOrder to a data stream.
The XML output format looks like this:
<workOrder actionText="..." undoText="..." type="..." status="..."> <images> <image id="..." > </images>
<internalDataValues> <dataValue value="..." > </internalDataValues> </workOrder>
Definition at line 544 of file WorkOrder.cpp.
References Isis::WorkOrder::bestText(), Isis::WorkOrder::isInStableState(), Isis::WorkOrder::m_executionTime, Isis::WorkOrder::m_imageIds, Isis::WorkOrder::m_internalData, Isis::WorkOrder::m_shapeIds, Isis::IException::Programmer, and Isis::WorkOrder::toString().
Referenced by Isis::Project::saveHistory(), Isis::CloseProjectWorkOrder::setupExecution(), and Isis::OpenProjectWorkOrder::setupExecution().
|
protectedinherited |
Declare that this work order is saving the project.
This makes the work order not appear in the undo stack (cannot undo/redo), and instead it is marked as a 'clean' state of the project. The QUndoCommand undo/redo will never be called. The default for createsCleanState is false. If this is set to true all wrokorders before this call will be locked.
createsCleanState | True if this work order is going to save the project to disk, False otherwise. |
Definition at line 1663 of file WorkOrder.cpp.
References Isis::WorkOrder::createsCleanState(), and Isis::WorkOrder::m_createsCleanState.
Referenced by Isis::CloseProjectWorkOrder::CloseProjectWorkOrder(), Isis::OpenProjectWorkOrder::OpenProjectWorkOrder(), Isis::SaveProjectAsWorkOrder::SaveProjectAsWorkOrder(), and SaveProjectWorkOrder().
|
virtualinherited |
Sets the context data for this WorkOrder.
context | This is an enum variable with two values: NoContext,ProjectContext. |
Definition at line 248 of file WorkOrder.cpp.
Referenced by Isis::ImageListActionWorkOrder::setData(), Isis::WorkOrder::setData(), Isis::ExportControlNetWorkOrder::setupExecution(), Isis::Directory::supportedActions(), and Isis::MosaicSceneWidget::supportedActions().
|
virtualinherited |
Sets the Control data for this WorkOrder.
controls. | A pointer to the Control |
Sets the ControlList data for this WorkOrder.
controls. | A pointer to the ControlList (which is a list of control networks). |
Definition at line 297 of file WorkOrder.cpp.
|
virtualinherited |
Sets the CorrelationMatrix data for this WorkOrder.
correlationMatrix | The matrix data. |
Definition at line 306 of file WorkOrder.cpp.
References Isis::WorkOrder::correlationMatrix().
|
virtualinherited |
Sets the FileItem data for this WorkOrder.
FileItem | A QSharedPointer to the FileItem. |
Definition at line 344 of file WorkOrder.cpp.
References Isis::WorkOrder::fileItem(), and Isis::WorkOrder::m_fileItem.
|
virtualinherited |
Sets the GuiCamera data for this WorkOrder.
guiCamera | A QSharedPointer to the GuiCamera. |
Definition at line 335 of file WorkOrder.cpp.
References Isis::WorkOrder::guiCamera(), and Isis::WorkOrder::m_guiCamera.
|
virtualinherited |
Sets the ImageList data for this WorkOrder.
images | A pointer to the updated ImageList. |
Reimplemented in Isis::ImageListActionWorkOrder.
Definition at line 261 of file WorkOrder.cpp.
References Isis::WorkOrder::listenForImageDestruction(), and Isis::WorkOrder::m_imageIds.
|
virtualinherited |
Sets the internal data to the data stored in a ProjectItem.
item | The item containing the data. |
Definition at line 353 of file WorkOrder.cpp.
References Isis::ImageList::append(), Isis::ShapeList::append(), Isis::ProjectItem::control(), Isis::WorkOrder::controlList(), Isis::ProjectItem::controlList(), Isis::ProjectItem::correlationMatrix(), Isis::ProjectItem::fileItem(), Isis::ProjectItem::getTemplate(), Isis::ProjectItem::guiCamera(), Isis::ProjectItem::image(), Isis::WorkOrder::imageList(), Isis::ProjectItem::imageList(), Isis::ProjectItem::isControl(), Isis::ProjectItem::isControlList(), Isis::ProjectItem::isCorrelationMatrix(), Isis::ProjectItem::isFileItem(), Isis::ProjectItem::isGuiCamera(), Isis::ProjectItem::isImage(), Isis::ProjectItem::isImageList(), Isis::ProjectItem::isProject(), Isis::ProjectItem::isShape(), Isis::ProjectItem::isShapeList(), Isis::ProjectItem::isTargetBody(), Isis::WorkOrder::setData(), Isis::ProjectItem::shape(), Isis::WorkOrder::shapeList(), Isis::ProjectItem::shapeList(), and Isis::ProjectItem::targetBody().
|
virtualinherited |
Sets the ShapeList data for this WorkOrder.
images | A pointer to the updated ShapeList. |
Definition at line 274 of file WorkOrder.cpp.
References Isis::WorkOrder::listenForShapeDestruction(), and Isis::WorkOrder::m_shapeIds.
|
virtualinherited |
Sets the TargetBody data for this WorkOrder.
targetBody | A QSharedPointer to the TargetBody. |
Definition at line 317 of file WorkOrder.cpp.
References Isis::WorkOrder::m_targetBody, and Isis::WorkOrder::targetBody().
|
virtualinherited |
Sets the TargetBody data for this WorkOrder.
targetBody | A QSharedPointer to the TargetBody. |
Definition at line 326 of file WorkOrder.cpp.
References Isis::WorkOrder::m_template.
|
protectedinherited |
Sets the internal data for this WorkOrder.
WorkOrders may not use member variables to store data. Any data needed for the workorder should be saved in to the base WorkOrder using setInternalData.
data | The data to set the internal data to. |
Definition at line 1318 of file WorkOrder.cpp.
References Isis::WorkOrder::m_internalData.
Referenced by Isis::ImageListActionWorkOrder::execute(), Isis::ImageListActionWorkOrder::ImageListActionWorkOrder(), Isis::ImportImagesWorkOrder::importConfirmedImages(), Isis::ImportShapesWorkOrder::importConfirmedShapes(), Isis::ImportMapTemplateWorkOrder::isExecutable(), Isis::ImportRegistrationTemplateWorkOrder::isExecutable(), Isis::RenameProjectWorkOrder::RenameProjectWorkOrder(), Isis::CubeDnViewWorkOrder::setupExecution(), Isis::ExportControlNetWorkOrder::setupExecution(), Isis::ExportImagesWorkOrder::setupExecution(), Isis::Footprint2DViewWorkOrder::setupExecution(), Isis::ImageFileListViewWorkOrder::setupExecution(), Isis::ImportControlNetWorkOrder::setupExecution(), Isis::ImportImagesWorkOrder::setupExecution(), Isis::ImportMapTemplateWorkOrder::setupExecution(), Isis::ImportRegistrationTemplateWorkOrder::setupExecution(), Isis::ImportShapesWorkOrder::setupExecution(), Isis::MatrixViewWorkOrder::setupExecution(), Isis::RenameProjectWorkOrder::setupExecution(), Isis::SaveProjectAsWorkOrder::setupExecution(), Isis::SensorGetInfoWorkOrder::setupExecution(), Isis::TargetGetInfoWorkOrder::setupExecution(), Isis::TemplateEditViewWorkOrder::setupExecution(), Isis::ImageListActionWorkOrder::setupExecution(), and Isis::ImageListActionWorkOrder::undoExecution().
|
protectedinherited |
By default, m_modifiesDiskState is False. If a WorkOrder modifies the Project on disk as a result of it's action, this should be set to true.
changesProjectOnDisk | True if this WorkOrder modifies the Project on disk. False if it does not. |
Definition at line 1674 of file WorkOrder.cpp.
References Isis::WorkOrder::m_modifiesDiskState.
Referenced by Isis::ImportControlNetWorkOrder::ImportControlNetWorkOrder(), Isis::ImportImagesWorkOrder::ImportImagesWorkOrder(), Isis::ImportMapTemplateWorkOrder::ImportMapTemplateWorkOrder(), Isis::ImportRegistrationTemplateWorkOrder::ImportRegistrationTemplateWorkOrder(), and Isis::ImportShapesWorkOrder::ImportShapesWorkOrder().
|
inherited |
Sets the next WorkOrder in the sequence.
nextWorkOrder | The next WorkOrder. |
Definition at line 613 of file WorkOrder.cpp.
References Isis::WorkOrder::m_nextWorkOrder.
Referenced by Isis::Project::addToProject().
|
inherited |
Sets the previous WorkOrder in the sequence.
previousWorkOrder | The previous WorkOrder. |
Definition at line 622 of file WorkOrder.cpp.
References Isis::WorkOrder::m_previousWorkOrder.
Referenced by Isis::Project::addToProject().
|
protectedinherited |
Sets the progress range of the WorkOrder.
minValue | The progress range minimum value. |
maxValue | The progress range maximum value. |
Definition at line 1358 of file WorkOrder.cpp.
References Isis::WorkOrder::m_progressRangeMaxValue, and Isis::WorkOrder::m_progressRangeMinValue.
Referenced by Isis::ExportImagesWorkOrder::execute(), Isis::ImportControlNetWorkOrder::execute(), Isis::ImportImagesWorkOrder::importConfirmedImages(), and Isis::ImportShapesWorkOrder::importConfirmedShapes().
|
privateinherited |
Sets the ProgressBar to display the final status of the operation.
Definition at line 1544 of file WorkOrder.cpp.
References Isis::WorkOrder::isRedone(), Isis::WorkOrder::isUndone(), Isis::WorkOrder::m_progressBar, and Isis::WorkOrder::m_progressBarDeletionTimer.
Referenced by Isis::WorkOrder::executionFinished(), Isis::WorkOrder::redo(), Isis::WorkOrder::setupExecution(), and Isis::WorkOrder::undo().
|
protectedinherited |
Sets the current progress value for the WorkOrder.
int | value The value to set the current progress to. |
Definition at line 1368 of file WorkOrder.cpp.
References Isis::WorkOrder::m_progressValue.
Referenced by Isis::ExportImagesWorkOrder::execute(), Isis::ImportControlNetWorkOrder::execute(), Isis::ImportImagesWorkOrder::importConfirmedImages(), and Isis::ImportShapesWorkOrder::importConfirmedShapes().
|
virtual |
Sets up the work order.
This will check to see if the Project::save() was completed (i.e. checks if the file dialog created for a temp project wasn't cancelled by the user). If the Project::save() was not cancelled, then the project is set to a clean state and this returns true. Otherwise if the Project::save() is cancelled, the project is still not clean and false is returned indicated the setup failed.
Reimplemented from Isis::WorkOrder.
Definition at line 95 of file SaveProjectWorkOrder.cpp.
References Isis::WorkOrder::project(), Isis::Project::save(), Isis::Project::setClean(), and Isis::WorkOrder::setupExecution().
|
protectedinherited |
@briefReturns a pointer to the ShapeList for this WorkOrder.
Definition at line 663 of file WorkOrder.cpp.
References Isis::WorkOrder::listenForShapeDestruction(), Isis::WorkOrder::m_shapeIds, Isis::WorkOrder::project(), and Isis::Project::shape().
Referenced by Isis::WorkOrder::isExecutable(), Isis::WorkOrder::redo(), Isis::WorkOrder::setData(), and Isis::WorkOrder::shapeList().
|
protectedinherited |
A thread-safe method for retrieving a pointer to the shapeList.
Definition at line 726 of file WorkOrder.cpp.
References Isis::WorkOrder::m_transparentConstMutex, and Isis::WorkOrder::shapeList().
|
privateslotinherited |
WorkOrder::startRedo This function is currently empty.
Definition at line 1650 of file WorkOrder.cpp.
|
inherited |
Definition at line 954 of file WorkOrder.cpp.
References Isis::WorkOrder::m_secondsElapsed, Isis::WorkOrder::project(), and Isis::WorkOrder::toString().
|
protectedinherited |
Definition at line 746 of file WorkOrder.cpp.
References Isis::WorkOrder::m_targetBody, and Isis::WorkOrder::project().
Referenced by Isis::TargetGetInfoWorkOrder::execute(), Isis::TargetGetInfoWorkOrder::isExecutable(), Isis::WorkOrder::setData(), and Isis::TargetGetInfoWorkOrder::setupExecution().
|
staticinherited |
Gets the current status of the WorkOrder.
status | An enumeration of all possible WorkOrder states. |
Definition at line 1009 of file WorkOrder.cpp.
References Isis::WorkOrder::WorkOrderFinished.
Referenced by Isis::WorkOrder::fromStatusString(), Isis::WorkOrder::save(), and Isis::WorkOrder::statusText().
|
virtualslotinherited |
Starts (or enqueues) an undo.
This should not be re-implemented by children.
Definition at line 1146 of file WorkOrder.cpp.
References Isis::WorkOrder::attemptQueuedAction(), Isis::WorkOrder::bestText(), Isis::WorkOrder::executionFinished(), Isis::WorkOrder::isFinished(), Isis::WorkOrder::isInStableState(), Isis::WorkOrder::isRedoing(), Isis::WorkOrder::isSynchronous(), Isis::WorkOrder::isUndoing(), Isis::WorkOrder::isUndone(), Isis::WorkOrder::m_elapsedTimer, Isis::WorkOrder::m_futureWatcher, Isis::WorkOrder::m_progressBar, Isis::WorkOrder::next(), Isis::WorkOrder::resetProgressBar(), Isis::WorkOrder::setProgressToFinalText(), and Isis::WorkOrder::undoExecution().
Referenced by Isis::WorkOrder::attemptQueuedAction().
|
protectedvirtualinherited |
Execute the steps necessary to undo this workorder.
The workorder should have all state necessary to undo itself stored in the workorder.
For synchronous workorders: State should only be read from the parent WorkOrder class in this method. You can set state to be used in postUndoExecution() safely. This method is always executed in the GUI thread and has no progress.
For Asynchronous workorders: State can be read from the parent WorkOrder class while in this method. You can set state to be used in postSyncUndo() safely. Please be wary of deleting QObjects inside of this method because they will cause unpredictable crashes. This method is never executed in the GUI thread. You can update progress by calling setProgressRange() and setProgressValue(). Do not manipulate any GUI objects here.
Reimplemented in Isis::MoveUpOneSceneWorkOrder, Isis::MoveToTopSceneWorkOrder, Isis::MoveToBottomSceneWorkOrder, Isis::MoveDownOneSceneWorkOrder, Isis::ImageListActionWorkOrder, Isis::ViewControlNet3DWorkOrder, Isis::SensorGetInfoWorkOrder, Isis::RenameProjectWorkOrder, Isis::MatrixViewWorkOrder, Isis::ImportShapesWorkOrder, Isis::ImportRegistrationTemplateWorkOrder, Isis::ImportMapTemplateWorkOrder, Isis::ImportImagesWorkOrder, and Isis::CnetEditorViewWorkOrder.
Definition at line 1434 of file WorkOrder.cpp.
Referenced by Isis::WorkOrder::undo().
|
privateslotinherited |
Updates the progress bar.
Definition at line 1639 of file WorkOrder.cpp.
References Isis::WorkOrder::isRedoing(), Isis::WorkOrder::isUndoing(), Isis::WorkOrder::m_progressBar, Isis::WorkOrder::m_progressRangeMaxValue, Isis::WorkOrder::m_progressRangeMinValue, and Isis::WorkOrder::m_progressValue.
Referenced by Isis::WorkOrder::resetProgressBar().
|
privateinherited |
This is defaulted to false.
If a work order saves the project to disk, this causes a 'clean' (non-dirty) state. These work orders should call setCreatesCleanState(true) in their constructor.
Definition at line 549 of file WorkOrder.h.
Referenced by Isis::WorkOrder::createsCleanState(), Isis::WorkOrder::setCreatesCleanState(), and Isis::WorkOrder::WorkOrder().
|
privateinherited |
A QTime object holding the excecution time of the WorkOrder.
Definition at line 677 of file WorkOrder.h.
Referenced by Isis::WorkOrder::executionFinished(), Isis::WorkOrder::redo(), Isis::WorkOrder::undo(), and Isis::WorkOrder::WorkOrder().
|
privateinherited |
This is the date/time that setupExecution() was called.
Definition at line 647 of file WorkOrder.h.
Referenced by Isis::WorkOrder::executionTime(), Isis::WorkOrder::save(), Isis::WorkOrder::setupExecution(), and Isis::WorkOrder::WorkOrder().
|
privateinherited |
A QSharedPointer to the FileItem.
Definition at line 603 of file WorkOrder.h.
Referenced by Isis::WorkOrder::fileItem(), Isis::WorkOrder::setData(), and Isis::WorkOrder::WorkOrder().
|
privateinherited |
A pointer to a QFutureWatcher object which monitors a QFuture object using signals and slots.
A QFuture object represents the results of an asynchrounous operation.
Definition at line 654 of file WorkOrder.h.
Referenced by Isis::WorkOrder::redo(), Isis::WorkOrder::undo(), Isis::WorkOrder::WorkOrder(), and Isis::WorkOrder::~WorkOrder().
|
privateinherited |
A QSharedPointer to the GuiCamera (the Camera object but encapsulated within a Gui framework.
Definition at line 583 of file WorkOrder.h.
Referenced by Isis::WorkOrder::guiCamera(), Isis::WorkOrder::setData(), and Isis::WorkOrder::WorkOrder().
|
privateinherited |
A QStringList of unique image identifiers for all of the images this WorkOrder is dealing with.
Definition at line 610 of file WorkOrder.h.
Referenced by Isis::WorkOrder::imageList(), Isis::WorkOrder::listenForImageDestruction(), Isis::WorkOrder::save(), Isis::WorkOrder::setData(), and Isis::WorkOrder::WorkOrder().
|
privateinherited |
A QStringList of internal properties for this WorkOrder.
Definition at line 621 of file WorkOrder.h.
Referenced by Isis::WorkOrder::internalData(), Isis::WorkOrder::save(), Isis::WorkOrder::setInternalData(), and Isis::WorkOrder::WorkOrder().
|
protectedinherited |
Set the work order to be shown in the HistoryTreeWidget.
This is defaulted to true. If true the work order will be shown in the HistoryTreeWidget if false it will not be shown.
Definition at line 537 of file WorkOrder.h.
Referenced by Isis::BundleObservationViewWorkOrder::BundleObservationViewWorkOrder(), Isis::CloseProjectWorkOrder::CloseProjectWorkOrder(), Isis::CubeDnViewWorkOrder::CubeDnViewWorkOrder(), Isis::Footprint2DViewWorkOrder::Footprint2DViewWorkOrder(), Isis::ImageListActionWorkOrder::ImageListActionWorkOrder(), Isis::WorkOrder::isSavedToHistory(), Isis::MatrixViewWorkOrder::MatrixViewWorkOrder(), Isis::SensorGetInfoWorkOrder::SensorGetInfoWorkOrder(), Isis::TargetGetInfoWorkOrder::TargetGetInfoWorkOrder(), Isis::TemplateEditViewWorkOrder::TemplateEditViewWorkOrder(), Isis::ViewControlNet3DWorkOrder::ViewControlNet3DWorkOrder(), and Isis::WorkOrder::WorkOrder().
|
protectedinherited |
This is defaulted to true.
If true, the work order will be executed on the GUI thread synchronously. If false, then the work order will be queued for execution on a non-GUI thread and will not block the GUI.
Definition at line 530 of file WorkOrder.h.
Referenced by Isis::ExportControlNetWorkOrder::ExportControlNetWorkOrder(), Isis::ImportControlNetWorkOrder::ImportControlNetWorkOrder(), Isis::ImportImagesWorkOrder::ImportImagesWorkOrder(), Isis::ImportShapesWorkOrder::ImportShapesWorkOrder(), Isis::WorkOrder::isSynchronous(), and Isis::WorkOrder::WorkOrder().
|
protectedinherited |
Set the workorder to be undoable/redoable This is defaulted to true - his will allow the workorder to be redone.
Note the workorder undoExecution() method must be implemented. This will result on the workorder being placed on the QUndoStack and being displayed in the history as being undoable. If set to false, the work order will not be put on the QUndoStack and the workorder will not be able to be undone.
Definition at line 523 of file WorkOrder.h.
Referenced by Isis::BundleObservationViewWorkOrder::BundleObservationViewWorkOrder(), Isis::CloseProjectWorkOrder::CloseProjectWorkOrder(), Isis::ControlHealthMonitorWorkOrder::ControlHealthMonitorWorkOrder(), Isis::CubeDnViewWorkOrder::CubeDnViewWorkOrder(), Isis::ExportControlNetWorkOrder::ExportControlNetWorkOrder(), Isis::Footprint2DViewWorkOrder::Footprint2DViewWorkOrder(), Isis::ImportControlNetWorkOrder::ImportControlNetWorkOrder(), Isis::ImportMapTemplateWorkOrder::ImportMapTemplateWorkOrder(), Isis::ImportRegistrationTemplateWorkOrder::ImportRegistrationTemplateWorkOrder(), Isis::ImportShapesWorkOrder::ImportShapesWorkOrder(), Isis::WorkOrder::isUndoable(), Isis::JigsawWorkOrder::JigsawWorkOrder(), Isis::OpenProjectWorkOrder::OpenProjectWorkOrder(), Isis::RenameProjectWorkOrder::RenameProjectWorkOrder(), Isis::SaveProjectAsWorkOrder::SaveProjectAsWorkOrder(), Isis::SensorGetInfoWorkOrder::SensorGetInfoWorkOrder(), Isis::SetActiveControlWorkOrder::SetActiveControlWorkOrder(), Isis::SetActiveImageListWorkOrder::SetActiveImageListWorkOrder(), Isis::TargetGetInfoWorkOrder::TargetGetInfoWorkOrder(), Isis::TemplateEditViewWorkOrder::TemplateEditViewWorkOrder(), and Isis::WorkOrder::WorkOrder().
|
privateinherited |
This is defaulted to false.
If a WorkOrder modifies the project on disk to perform its actions (for example, an import WorkOrder), the WorkOrder should call setModifiesDiskState(true) in its constructor.
Definition at line 556 of file WorkOrder.h.
Referenced by Isis::WorkOrder::modifiesDiskState(), Isis::WorkOrder::setModifiesDiskState(), and Isis::WorkOrder::WorkOrder().
|
privateinherited |
A pointer to the next WorkOrder in the queue.
Definition at line 626 of file WorkOrder.h.
Referenced by Isis::WorkOrder::next(), Isis::WorkOrder::setNext(), and Isis::WorkOrder::~WorkOrder().
|
privateinherited |
A pointer to the previous WorkOrder in the queue.
Definition at line 631 of file WorkOrder.h.
Referenced by Isis::WorkOrder::previous(), Isis::WorkOrder::setPrevious(), and Isis::WorkOrder::~WorkOrder().
|
privateinherited |
A pointer to the ProgressBar.
Definition at line 661 of file WorkOrder.h.
Referenced by Isis::WorkOrder::progressBar(), Isis::WorkOrder::redo(), Isis::WorkOrder::resetProgressBar(), Isis::WorkOrder::setProgressToFinalText(), Isis::WorkOrder::setupExecution(), Isis::WorkOrder::undo(), and Isis::WorkOrder::updateProgress().
|
privateinherited |
A pointer to the ProgressBar deletion timer.
Definition at line 671 of file WorkOrder.h.
Referenced by Isis::WorkOrder::resetProgressBar(), Isis::WorkOrder::setProgressToFinalText(), and Isis::WorkOrder::~WorkOrder().
|
privateinherited |
A pointer to the QTimer which updates the ProgressBar.
Definition at line 666 of file WorkOrder.h.
Referenced by Isis::WorkOrder::executionFinished(), Isis::WorkOrder::resetProgressBar(), and Isis::WorkOrder::~WorkOrder().
|
privateinherited |
The maximum value of the Progess Bar.
Definition at line 567 of file WorkOrder.h.
Referenced by Isis::WorkOrder::progressMax(), Isis::WorkOrder::resetProgressBar(), Isis::WorkOrder::setProgressRange(), Isis::WorkOrder::updateProgress(), and Isis::WorkOrder::WorkOrder().
|
privateinherited |
The miniumum value of the Progess Bar.
Definition at line 563 of file WorkOrder.h.
Referenced by Isis::WorkOrder::progressMin(), Isis::WorkOrder::resetProgressBar(), Isis::WorkOrder::setProgressRange(), Isis::WorkOrder::updateProgress(), and Isis::WorkOrder::WorkOrder().
|
privateinherited |
The current value of the Progress Bar.
Definition at line 571 of file WorkOrder.h.
Referenced by Isis::WorkOrder::progressValue(), Isis::WorkOrder::resetProgressBar(), Isis::WorkOrder::setProgressValue(), Isis::WorkOrder::updateProgress(), and Isis::WorkOrder::WorkOrder().
|
privateinherited |
A pointer to the Project this WorkOrder is attached to.
Definition at line 636 of file WorkOrder.h.
Referenced by Isis::ImportControlNetWorkOrder::CreateControlsFunctor::operator()(), Isis::WorkOrder::project(), Isis::WorkOrder::WorkOrder(), and Isis::WorkOrder::~WorkOrder().
|
privateinherited |
The seconds that have elapsed since the WorkOrder started executing.
Definition at line 682 of file WorkOrder.h.
Referenced by Isis::WorkOrder::executionFinished(), Isis::WorkOrder::statusText(), and Isis::WorkOrder::WorkOrder().
|
privateinherited |
A QStringList of unique shape identifiers for all of the shapes this WorkOrder is dealing with.
Definition at line 616 of file WorkOrder.h.
Referenced by Isis::WorkOrder::listenForShapeDestruction(), Isis::WorkOrder::save(), Isis::WorkOrder::setData(), Isis::WorkOrder::shapeList(), and Isis::WorkOrder::WorkOrder().
|
privateinherited |
A QSharedPointer to the TargetBody (A Target object but encapsulated within a Gui framework.
Definition at line 597 of file WorkOrder.h.
Referenced by Isis::WorkOrder::setData(), Isis::WorkOrder::targetBody(), and Isis::WorkOrder::WorkOrder().
|
privateinherited |
A QSharedPointer to the Template (A Template object but encapsulated within a Gui framework.
Definition at line 590 of file WorkOrder.h.
Referenced by Isis::WorkOrder::getTemplate(), Isis::WorkOrder::setData(), and Isis::WorkOrder::WorkOrder().
|
privateinherited |
This is used to protect the integrity of data the WorkOrder is working on so that only one thread at a time cann access it.
Definition at line 642 of file WorkOrder.h.
Referenced by Isis::WorkOrder::imageList(), Isis::WorkOrder::shapeList(), Isis::WorkOrder::WorkOrder(), and Isis::WorkOrder::~WorkOrder().