Isis 3.0 Programmer Reference
Back | Home
Isis::SetActiveControlWorkOrder Class Reference

This is a child of class WorkOrder which is used for anything that performs an action in a Project. More...

#include <SetActiveControlWorkOrder.h>

Inheritance diagram for Isis::SetActiveControlWorkOrder:
Inheritance graph
Collaboration diagram for Isis::SetActiveControlWorkOrder:
Collaboration graph

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

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

 SetActiveControlWorkOrder (Project *project)
 Creates a WorkOrder that will set the active Control in the project. More...
 
 SetActiveControlWorkOrder (const SetActiveControlWorkOrder &other)
 Copies the 'other' WorkOrdeer instance into this new instance. More...
 
 ~SetActiveControlWorkOrder ()
 The Destructor. More...
 
virtual SetActiveControlWorkOrderclone () const
 Returns a copy of this SetActiveControlWorkOrder instance. More...
 
virtual bool isExecutable (ControlList *controls)
 Determines if we can set this control as active. More...
 
bool execute ()
 Attempt to set control as active control. 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 (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 (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 (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 (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 (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 (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
 We don't use action text anymore because Directory likes to rename our actions. 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...
 
WorkOrdernext () const
 Gets the next WorkOrder. More...
 
WorkOrderprevious () const
 Gets the previous WorkOrder. More...
 
QString statusText () const
 WorkOrder::statusText. More...
 
ProgressBarprogressBar ()
 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

ImageListimageList ()
 a pointer to the ImageList for this WorkOrder. More...
 
const ImageListimageList () const
 A thread-safe method for retrieving a pointer to the imageList. More...
 
ShapeListshapeList ()
 a pointer to the ShapeList for this WorkOrder. More...
 
const ShapeListshapeList () const
 A thread-safe method for retrieving a pointer to the shapeList. More...
 
CorrelationMatrix correlationMatrix ()
 Returns the CorrleationMatrix for this WorkOrder. More...
 
QPointer< ControlListcontrolList ()
 Returns the Control List for this WorkOrder (a list of control networks). More...
 
TargetBodyQsp targetBody ()
 WorkOrder::targetBody. More...
 
GuiCameraQsp guiCamera ()
 WorkOrder::guiCamera. More...
 
virtual bool dependsOn (WorkOrder *other) const
 This is a virtual function whose role in child classes is to determine if this WorkOrder deppends on the WorkOrder passed in as an argument. More...
 
Directorydirectory () const
 Returns the Directory object of the Project this WorkOrder is attached to. More...
 
Projectproject () 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)
 . More...
 
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 syncRedo ()
 This method is designed to be implemented by children work orders. More...
 
virtual void asyncRedo ()
 This method is designed to be implemented by children work orders. More...
 
virtual void postSyncRedo ()
 This method is designed to be implemented by children work orders. More...
 
virtual void syncUndo ()
 This method is designed to be implemented by children work orders. More...
 
virtual void asyncUndo ()
 This method is designed to be implemented by children work orders. More...
 
virtual void postSyncUndo ()
 This method is designed to be implemented by children work orders. More...
 

Private Member Functions

SetActiveControlWorkOrderoperator= (const SetActiveControlWorkOrder &rhs)
 

Detailed Description

This is a child of class WorkOrder which is used for anything that performs an action in a Project.

This work order allows the user to set the active ControlNet in the project. Views that need to operate on a common control network, ie. footprint2dview, controlpointeditview, etc. can get the active control net from project.

Author
2016-06-22 Tracie Sucharski
History:
2016-09-19 Tracie Sucharski - Call SetImages on the control net to initialize cameras.

Definition at line 41 of file SetActiveControlWorkOrder.h.

Member Enumeration Documentation

enum Isis::WorkOrder::Context
inherited

This enumeration is for recording the context of the current Workorder (whether it is part of a project or not).

Definition at line 132 of file WorkOrder.h.

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 114 of file WorkOrder.h.

Constructor & Destructor Documentation

Isis::SetActiveControlWorkOrder::SetActiveControlWorkOrder ( Project project)

Creates a WorkOrder that will set the active Control in the project.

Parameters
projectThe Project that this work order should be interacting with.

Definition at line 38 of file SetActiveControlWorkOrder.cpp.

Referenced by clone().

Isis::SetActiveControlWorkOrder::SetActiveControlWorkOrder ( const SetActiveControlWorkOrder other)

Copies the 'other' WorkOrdeer instance into this new instance.

Parameters
otherThe WorkOrder being copied.

Definition at line 50 of file SetActiveControlWorkOrder.cpp.

Isis::SetActiveControlWorkOrder::~SetActiveControlWorkOrder ( )

The Destructor.

Definition at line 58 of file SetActiveControlWorkOrder.cpp.

Member Function Documentation

void Isis::WorkOrder::addCloneToProject ( )
protectedslotinherited

Runs a copy of the current WorkOrder and stores it in the project.

Definition at line 1294 of file WorkOrder.cpp.

References Isis::Project::addToProject(), and Isis::WorkOrder::project().

Referenced by Isis::WorkOrder::WorkOrder().

void Isis::WorkOrder::asyncRedo ( )
protectedvirtualinherited

This method is designed to be implemented by children work orders.

The order of execution for redo is: syncRedo() - GUI thread asyncRedo() - Pooled thread* postSyncRedo() - GUI thread

State can be read from the parent WorkOrder class and from state set in syncRedo() while in this method. You can set state to be used in postSyncRedo() 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(). This method is never executed in the GUI thread. You can update progress by calling setProgressRange() and setProgressValue(). Please do not manipulate any GUI objects here.

Reimplemented in Isis::ImportImagesWorkOrder, Isis::ImportShapesWorkOrder, Isis::ImportControlNetWorkOrder, Isis::ExportImagesWorkOrder, and Isis::ExportControlNetWorkOrder.

Definition at line 1222 of file WorkOrder.cpp.

Referenced by Isis::WorkOrder::redo().

void Isis::WorkOrder::asyncUndo ( )
protectedvirtualinherited

This method is designed to be implemented by children work orders.

The order of execution for undo is: syncUndo() - GUI thread asyncUndo() - Pooled thread* postSyncUndo() - GUI thread

State can be read from the parent WorkOrder class and from state set in syncUndo() 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(). Please do not manipulate any GUI objects here.

Reimplemented in Isis::ImportImagesWorkOrder, and Isis::ImportShapesWorkOrder.

Definition at line 1271 of file WorkOrder.cpp.

Referenced by Isis::WorkOrder::undo().

QString Isis::WorkOrder::bestText ( ) const
inherited

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.

See Also
Directory::restructureActions
Returns
QString A textual description of the action.

Definition at line 701 of file WorkOrder.cpp.

Referenced by Isis::HistoryTreeWidget::addToHistory(), Isis::WorkOrder::redo(), Isis::WorkOrder::save(), and Isis::WorkOrder::undo().

SetActiveControlWorkOrder * Isis::SetActiveControlWorkOrder::clone ( ) const
virtual

Returns a copy of this SetActiveControlWorkOrder instance.

Returns
(SetActiveControlWorkOrder *) A pointer to a copy of this WorkOrder.

Implements Isis::WorkOrder.

Definition at line 66 of file SetActiveControlWorkOrder.cpp.

References SetActiveControlWorkOrder().

QPointer< ControlList > Isis::WorkOrder::controlList ( )
protectedinherited
CorrelationMatrix Isis::WorkOrder::correlationMatrix ( )
protectedinherited

Returns the CorrleationMatrix for this WorkOrder.

Returns
A CorrelationMatrix.

Definition at line 628 of file WorkOrder.cpp.

Referenced by Isis::MatrixViewWorkOrder::execute(), Isis::WorkOrder::setData(), and Isis::MatrixViewWorkOrder::syncRedo().

bool Isis::WorkOrder::createsCleanState ( ) const
inherited

Returns the CleanState status (whether the Project has been saved to disk or not).

Returns
Returns True if the Project has been saved to disk. False if it has not.

Definition at line 721 of file WorkOrder.cpp.

References Isis::WorkOrder::m_createsCleanState.

Referenced by Isis::HistoryTreeWidget::addToHistory(), Isis::Project::addToProject(), Isis::WorkOrder::execute(), and Isis::WorkOrder::setCreatesCleanState().

bool Isis::WorkOrder::dependsOn ( WorkOrder other) const
protectedvirtualinherited

This is a virtual function whose role in child classes is to determine if this WorkOrder deppends on the WorkOrder passed in as an argument.

Parameters
WorkOrder* The WorkOrder we are checking for dependency with this one.
Returns
bool Returns True if there is a dependency, and False if there is no dependency.

Reimplemented in Isis::Footprint2DViewWorkOrder, Isis::CubeDnViewWorkOrder, Isis::RenameProjectWorkOrder, Isis::TargetGetInfoWorkOrder, Isis::SensorGetInfoWorkOrder, Isis::ViewControlNet3DWorkOrder, Isis::MatrixViewWorkOrder, Isis::JigsawWorkOrder, and Isis::CnetEditorViewWorkOrder.

Definition at line 688 of file WorkOrder.cpp.

Referenced by Isis::WorkOrder::redo().

Directory * Isis::WorkOrder::directory ( ) const
protectedinherited
bool Isis::SetActiveControlWorkOrder::execute ( )
virtual

Attempt to set control as active control.

Returns
bool True if successful, False otherwise.

Reimplemented from Isis::WorkOrder.

Definition at line 90 of file SetActiveControlWorkOrder.cpp.

References Isis::Project::activeControl(), Isis::WorkOrder::controlList(), Isis::Control::controlNet(), Isis::WorkOrder::execute(), Isis::WorkOrder::project(), Isis::Project::setActiveControl(), and Isis::ControlNet::SetImages().

QDateTime Isis::WorkOrder::executionTime ( ) const
inherited

Gets the execution time of this WorkOrder.

Returns
QDateTime The execution time.

Definition at line 730 of file WorkOrder.cpp.

References Isis::WorkOrder::m_executionTime.

Referenced by Isis::HistoryTreeWidget::addToHistory(), and Isis::WorkOrder::XmlHandler::startElement().

WorkOrder::WorkOrderStatus Isis::WorkOrder::fromStatusString ( QString  statusString)
staticinherited

Attempts to query the current status of the WorkOrder.

Parameters
statusStringThe status we want information about.
Returns
WorkOrderStatus Returns WorkOrderUnknownStatus if the statusString does not match the current status. If there is a result, then it returns the status which matches the statusString.

Definition at line 844 of file WorkOrder.cpp.

References Isis::WorkOrder::toString().

Referenced by Isis::WorkOrder::XmlHandler::startElement().

GuiCameraQsp Isis::WorkOrder::guiCamera ( )
protectedinherited

WorkOrder::guiCamera.

Returns
QSharedPointer Returns a shared pointer to the guiCamera.

Definition at line 675 of file WorkOrder.cpp.

References Isis::WorkOrder::m_guiCamera.

Referenced by Isis::SensorGetInfoWorkOrder::execute(), Isis::WorkOrder::setData(), and Isis::SensorGetInfoWorkOrder::syncRedo().

const ImageList * Isis::WorkOrder::imageList ( ) const
protectedinherited

A thread-safe method for retrieving a pointer to the imageList.

Returns
(ImageList *) A pointer to the image list for this WorkOrder.

Definition at line 646 of file WorkOrder.cpp.

References Isis::WorkOrder::imageList(), and Isis::WorkOrder::m_transparentConstMutex.

QStringList Isis::WorkOrder::internalData ( ) const
protectedinherited

Gets the internal data for this WorkOrder.

Returns
QStringList Returns the internal data object.

Definition at line 1186 of file WorkOrder.cpp.

References Isis::WorkOrder::m_internalData.

Referenced by Isis::ExportControlNetWorkOrder::asyncRedo(), Isis::ExportImagesWorkOrder::asyncRedo(), Isis::ImportShapesWorkOrder::asyncRedo(), Isis::ImportImagesWorkOrder::asyncRedo(), Isis::ExportControlNetWorkOrder::execute(), Isis::ExportImagesWorkOrder::execute(), Isis::MatrixViewWorkOrder::execute(), Isis::ImageFileListViewWorkOrder::execute(), Isis::RenameProjectWorkOrder::execute(), Isis::SensorGetInfoWorkOrder::execute(), Isis::TargetGetInfoWorkOrder::execute(), Isis::ImportControlNetWorkOrder::execute(), Isis::CubeDnViewWorkOrder::execute(), Isis::Footprint2DViewWorkOrder::execute(), Isis::ImageListActionWorkOrder::execute(), Isis::ImageListActionWorkOrder::ImageListActionWorkOrder(), Isis::ImportImagesWorkOrder::importConfirmedImages(), Isis::ImportShapesWorkOrder::importConfirmedShapes(), Isis::MosaicSceneWorkOrder::restoreZPositions(), Isis::MosaicSceneWorkOrder::scene(), Isis::ImageListActionWorkOrder::setData(), Isis::ImageFileListViewWorkOrder::syncRedo(), Isis::RenameProjectWorkOrder::syncRedo(), Isis::ImportControlNetWorkOrder::syncRedo(), Isis::CubeDnViewWorkOrder::syncRedo(), Isis::Footprint2DViewWorkOrder::syncRedo(), Isis::ImageListActionWorkOrder::syncRedo(), Isis::MatrixViewWorkOrder::syncUndo(), Isis::ImageFileListViewWorkOrder::syncUndo(), Isis::RenameProjectWorkOrder::syncUndo(), and Isis::ImageListActionWorkOrder::syncUndo().

bool Isis::SetActiveControlWorkOrder::isExecutable ( ControlList controls)
virtual

Determines if we can set this control as active.

Parameters
Control*control
Returns
bool True if we can set as active, False otherwise.

Reimplemented from Isis::WorkOrder.

Definition at line 77 of file SetActiveControlWorkOrder.cpp.

References Isis::Project::activeControl(), and Isis::WorkOrder::project().

bool Isis::WorkOrder::isExecutable ( Context  context)
virtualinherited

Re-implement this method if your work order utilizes controls for data in order to operate.

For example, "CnetEditorViewWorkOrder" works sometimes on controls

  • the logic in side of CnetEditorViewWorkOrder::isExecutable() determines whethere or not a user is prompted with this work order as a possibility.
    Parameters
    contextThis is an enum variable with two values: NoContext,ProjectContext.
    Returns
    bool Upon re-implementation, returns True if the WorkOrder is executable, and False if it is not.

Reimplemented in Isis::RenameProjectWorkOrder.

Definition at line 179 of file WorkOrder.cpp.

Referenced by Isis::WorkOrder::isExecutable(), and Isis::Directory::supportedActions().

bool Isis::WorkOrder::isExecutable ( ImageList images)
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.

Parameters
imagesAn image list that this work order should execute on
Returns
bool Upon re-implementation, returns True if the WorkOrder is executable, and False if it is not.

Reimplemented in Isis::ImageListActionWorkOrder, Isis::Footprint2DViewWorkOrder, Isis::CubeDnViewWorkOrder, Isis::ImageFileListViewWorkOrder, Isis::SetActiveImageListWorkOrder, Isis::RemoveImagesWorkOrder, and Isis::ExportImagesWorkOrder.

Definition at line 193 of file WorkOrder.cpp.

bool Isis::WorkOrder::isExecutable ( ShapeList shapes)
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.

Parameters
shapesA shape list that this work order should execute on
Returns
bool Upon re-implementation, returns True if the WorkOrder is executable, and False if it is not.

Reimplemented in Isis::Footprint2DViewWorkOrder, and Isis::CubeDnViewWorkOrder.

Definition at line 207 of file WorkOrder.cpp.

bool Isis::WorkOrder::isExecutable ( TargetBodyQsp  targetBody)
virtualinherited

Re-implement this method if your work order utilizes a control list (a list of control networks) for data in order to operate.

Parameters
controlsA list of control networks.
Returns
bool Upon re-implementation, returns True if the WorkOrder is executable, and False if it is not.

Reimplemented in Isis::TargetGetInfoWorkOrder.

Definition at line 374 of file WorkOrder.cpp.

bool Isis::WorkOrder::isExecutable ( GuiCameraQsp  guiCamera)
virtualinherited

Re-implement this method if your WorkOrder utilizes GuiCameraQsp (a QSharedPointer to a GuiCamera object) for data in order to operate.

Parameters
GuiCameraQsp
Returns
bool Upon re-implementation, returns True if the WorkOrder is executable, and False if it is not.

Reimplemented in Isis::SensorGetInfoWorkOrder.

Definition at line 386 of file WorkOrder.cpp.

bool Isis::WorkOrder::isFinished ( ) const
inherited

Returns the finished state of this WorkOrder.

Returns
bool Returns True if the WorkOrder is finished, False otherwise.

Definition at line 739 of file WorkOrder.cpp.

References Isis::WorkOrder::WorkOrderFinished.

Referenced by Isis::WorkOrder::redo(), and Isis::WorkOrder::undo().

bool Isis::WorkOrder::isRedoing ( ) const
inherited

Returns the redoing status of this WorkOrder.

Returns
bool Returns True if the WorkOrder is executing a redo. Returns False if it is not.

Definition at line 748 of file WorkOrder.cpp.

Referenced by Isis::WorkOrder::isInStableState(), Isis::WorkOrder::redo(), Isis::WorkOrder::undo(), and Isis::WorkOrder::updateProgress().

bool Isis::WorkOrder::isRedone ( ) const
inherited

Returns the WorkOrder redone status.

Returns
bool Returns True if the WorkOrder has completed a Redo. False if it has not.

Definition at line 757 of file WorkOrder.cpp.

Referenced by Isis::WorkOrder::redo(), and Isis::WorkOrder::setProgressToFinalText().

bool Isis::WorkOrder::isUndoing ( ) const
inherited

Returns the WorkOrderUndoing state.

Returns
bool Returns True if the current status is WorkOrderUndoing, False otherwise.

Definition at line 766 of file WorkOrder.cpp.

Referenced by Isis::WorkOrder::asyncFinished(), Isis::WorkOrder::isInStableState(), Isis::WorkOrder::redo(), Isis::WorkOrder::undo(), and Isis::WorkOrder::updateProgress().

bool Isis::WorkOrder::isUndone ( ) const
inherited

Returns the WorkOrder undo status.

Returns
bool Returns True if the WorkOrder has been undone. False if it has not.

Definition at line 775 of file WorkOrder.cpp.

Referenced by Isis::WorkOrder::setProgressToFinalText(), and Isis::WorkOrder::undo().

bool Isis::WorkOrder::modifiesDiskState ( ) const
inherited

Returns the modified disk state.

Returns
Returns True if the WorkOrder has modified the Project on disk to perform it's actions. Returns False if it has not.

Definition at line 785 of file WorkOrder.cpp.

References Isis::WorkOrder::m_modifiesDiskState.

Referenced by Isis::Project::~Project().

WorkOrder * Isis::WorkOrder::next ( ) const
inherited

Gets the next WorkOrder.

Returns
QPointer pointing to the next WorkOrder.

Definition at line 794 of file WorkOrder.cpp.

References Isis::WorkOrder::m_nextWorkOrder.

Referenced by Isis::WorkOrder::undo().

void Isis::WorkOrder::postSyncRedo ( )
protectedvirtualinherited

This method is designed to be implemented by children work orders.

The order of execution for redo is: syncRedo() - GUI thread asyncRedo() - Pooled thread postSyncRedo() - GUI thread*

State can be read from the parent WorkOrder class and from state set in either syncRedo() 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::ImportImagesWorkOrder, Isis::ImportShapesWorkOrder, Isis::ImportControlNetWorkOrder, Isis::ExportImagesWorkOrder, and Isis::ExportControlNetWorkOrder.

Definition at line 1238 of file WorkOrder.cpp.

Referenced by Isis::WorkOrder::asyncFinished().

void Isis::WorkOrder::postSyncUndo ( )
protectedvirtualinherited

This method is designed to be implemented by children work orders.

The order of execution for undo is: syncUndo() - GUI thread asyncUndo() - Pooled thread postSyncUndo() - GUI thread*

State can be read from the parent WorkOrder class and from state set in either syncUndo() or asyncUndo() 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::ImportImagesWorkOrder, and Isis::ImportShapesWorkOrder.

Definition at line 1287 of file WorkOrder.cpp.

Referenced by Isis::WorkOrder::asyncFinished().

WorkOrder * Isis::WorkOrder::previous ( ) const
inherited

Gets the previous WorkOrder.

Returns
QPointer pointing to the previous WorkOrder.

Definition at line 803 of file WorkOrder.cpp.

References Isis::WorkOrder::m_previousWorkOrder.

Referenced by Isis::Project::addToProject(), and Isis::WorkOrder::redo().

ProgressBar * Isis::WorkOrder::progressBar ( )
inherited
int Isis::WorkOrder::progressMax ( ) const
protectedinherited

Gets the maximum value of the progress range of the WorkOrder.

Returns
int The maximum value.

Definition at line 1148 of file WorkOrder.cpp.

References Isis::WorkOrder::m_progressRangeMaxValue.

int Isis::WorkOrder::progressMin ( ) const
protectedinherited

Gets the minimum value of the progress range of the WorkOrder.

Returns
int The minimum value.

Definition at line 1139 of file WorkOrder.cpp.

References Isis::WorkOrder::m_progressRangeMinValue.

int Isis::WorkOrder::progressValue ( ) const
protectedinherited

Gets the current progress value of the WorkOrder.

Returns
int Returns the current progress value.

Definition at line 1157 of file WorkOrder.cpp.

References Isis::WorkOrder::m_progressValue.

Project * Isis::WorkOrder::project ( ) const
protectedinherited

Returns the Project this WorkOrder is attached to.

Returns
(Project *) A pointer to the Project.
Exceptions
IException::Programmer"This work order no longer has a project."

Definition at line 1116 of file WorkOrder.cpp.

References _FILEINFO_, Isis::WorkOrder::m_project, and Isis::IException::Programmer.

Referenced by Isis::WorkOrder::addCloneToProject(), Isis::ExportControlNetWorkOrder::asyncRedo(), Isis::ExportImagesWorkOrder::asyncRedo(), Isis::ImportShapesWorkOrder::asyncUndo(), Isis::ImportImagesWorkOrder::asyncUndo(), Isis::WorkOrder::directory(), Isis::ExportControlNetWorkOrder::execute(), Isis::ExportImagesWorkOrder::execute(), Isis::JigsawWorkOrder::execute(), Isis::MatrixViewWorkOrder::execute(), Isis::SetActiveImageListWorkOrder::execute(), Isis::OpenProjectWorkOrder::execute(), Isis::RenameProjectWorkOrder::execute(), execute(), Isis::ImageFileListViewWorkOrder::execute(), Isis::SaveProjectAsWorkOrder::execute(), Isis::SaveProjectWorkOrder::execute(), Isis::OpenRecentProjectWorkOrder::execute(), Isis::CubeDnViewWorkOrder::execute(), Isis::Footprint2DViewWorkOrder::execute(), Isis::ImportImagesWorkOrder::execute(), Isis::WorkOrder::imageList(), Isis::ImportImagesWorkOrder::importConfirmedImages(), Isis::ImportShapesWorkOrder::importConfirmedShapes(), Isis::JigsawWorkOrder::isExecutable(), Isis::SetActiveImageListWorkOrder::isExecutable(), isExecutable(), Isis::SensorGetInfoWorkOrder::isExecutable(), Isis::TargetGetInfoWorkOrder::isExecutable(), Isis::ExportControlNetWorkOrder::postSyncRedo(), Isis::ExportImagesWorkOrder::postSyncRedo(), Isis::ImportShapesWorkOrder::postSyncRedo(), Isis::ImportImagesWorkOrder::postSyncRedo(), Isis::ImportShapesWorkOrder::postSyncUndo(), Isis::ImportImagesWorkOrder::postSyncUndo(), Isis::WorkOrder::redo(), Isis::WorkOrder::shapeList(), Isis::CnetEditorViewWorkOrder::syncRedo(), Isis::RemoveImagesWorkOrder::syncRedo(), Isis::MatrixViewWorkOrder::syncRedo(), Isis::ImageFileListViewWorkOrder::syncRedo(), Isis::SensorGetInfoWorkOrder::syncRedo(), Isis::TargetGetInfoWorkOrder::syncRedo(), Isis::RenameProjectWorkOrder::syncRedo(), Isis::ImportControlNetWorkOrder::syncRedo(), Isis::CubeDnViewWorkOrder::syncRedo(), Isis::Footprint2DViewWorkOrder::syncRedo(), Isis::CnetEditorViewWorkOrder::syncUndo(), Isis::MatrixViewWorkOrder::syncUndo(), Isis::ImageFileListViewWorkOrder::syncUndo(), Isis::RenameProjectWorkOrder::syncUndo(), Isis::ImportControlNetWorkOrder::syncUndo(), Isis::Footprint2DViewWorkOrder::syncUndo(), and Isis::WorkOrder::WorkOrder().

void Isis::WorkOrder::read ( XmlStackedHandlerReader xmlReader)
inherited

Read this work order's data from disk.

Definition at line 454 of file WorkOrder.cpp.

void Isis::WorkOrder::save ( QXmlStreamWriter &  stream) const
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>
Parameters
@bQXmlStreamWriter stream The data stream we are saving the WorkOrder to.
Exceptions
IException::UnknownThis exception is thrown if save is called while the WorkOrder is currently running.

Definition at line 478 of file WorkOrder.cpp.

References _FILEINFO_, 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().

void Isis::WorkOrder::setCreatesCleanState ( bool  createsCleanState)
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.

Parameters
createsCleanStateTrue if this work order is going to save the project to disk, False otherwise.

Definition at line 1520 of file WorkOrder.cpp.

References Isis::WorkOrder::createsCleanState(), and Isis::WorkOrder::m_createsCleanState.

Referenced by Isis::CloseProjectWorkOrder::CloseProjectWorkOrder(), Isis::OpenProjectWorkOrder::OpenProjectWorkOrder(), and Isis::OpenRecentProjectWorkOrder::OpenRecentProjectWorkOrder().

void Isis::WorkOrder::setData ( Context  context)
virtualinherited

Sets the context data for this WorkOrder.

Parameters
contextThis is an enum variable with two values: NoContext,ProjectContext.

Definition at line 245 of file WorkOrder.cpp.

Referenced by Isis::ImageListActionWorkOrder::setData(), Isis::WorkOrder::setData(), Isis::Directory::supportedActions(), and Isis::MosaicSceneWidget::supportedActions().

void Isis::WorkOrder::setData ( ImageList images)
virtualinherited

Sets the ImageList data for this WorkOrder.

Parameters
imagesA pointer to the updated ImageList.

Reimplemented in Isis::ImageListActionWorkOrder.

Definition at line 254 of file WorkOrder.cpp.

References Isis::WorkOrder::listenForImageDestruction(), and Isis::WorkOrder::m_imageIds.

void Isis::WorkOrder::setData ( ShapeList shapes)
virtualinherited

Sets the ShapeList data for this WorkOrder.

Parameters
imagesA pointer to the updated ShapeList.

Definition at line 267 of file WorkOrder.cpp.

References Isis::WorkOrder::listenForShapeDestruction(), and Isis::WorkOrder::m_shapeIds.

void Isis::WorkOrder::setData ( ControlList controls)
virtualinherited

Sets the Control data for this WorkOrder.

Parameters
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 290 of file WorkOrder.cpp.

void Isis::WorkOrder::setData ( CorrelationMatrix  correlationMatrix)
virtualinherited

Sets the CorrelationMatrix data for this WorkOrder.

Parameters
correlationMatrixThe matrix data.

Definition at line 299 of file WorkOrder.cpp.

References Isis::WorkOrder::correlationMatrix().

void Isis::WorkOrder::setData ( TargetBodyQsp  targetBody)
virtualinherited

Sets the TargetBody data for this WorkOrder.

Parameters
targetBodyA QSharedPointer to the TargetBody.

Definition at line 308 of file WorkOrder.cpp.

References Isis::WorkOrder::m_targetBody, and Isis::WorkOrder::targetBody().

void Isis::WorkOrder::setData ( GuiCameraQsp  guiCamera)
virtualinherited

Sets the GuiCamera data for this WorkOrder.

Parameters
guiCameraA QSharedPointer to the GuiCamera.

Definition at line 317 of file WorkOrder.cpp.

References Isis::WorkOrder::guiCamera(), and Isis::WorkOrder::m_guiCamera.

void Isis::WorkOrder::setModifiesDiskState ( bool  changesProjectOnDisk)
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.

Parameters
changesProjectOnDiskTrue if this WorkOrder modifies the Project on disk. False if it does not.

Definition at line 1531 of file WorkOrder.cpp.

References Isis::WorkOrder::m_modifiesDiskState.

void Isis::WorkOrder::setNext ( WorkOrder nextWorkOrder)
inherited

Sets the next WorkOrder in the sequence.

Parameters
nextWorkOrderThe next WorkOrder.

Definition at line 547 of file WorkOrder.cpp.

References Isis::WorkOrder::m_nextWorkOrder.

Referenced by Isis::Project::addToProject().

void Isis::WorkOrder::setPrevious ( WorkOrder previousWorkOrder)
inherited

Sets the previous WorkOrder in the sequence.

Parameters
previousWorkOrderThe previous WorkOrder.

Definition at line 556 of file WorkOrder.cpp.

References Isis::WorkOrder::m_previousWorkOrder.

Referenced by Isis::Project::addToProject().

void Isis::WorkOrder::setProgressRange ( int  minValue,
int  maxValue 
)
protectedinherited

Sets the progress range of the WorkOrder.

Parameters
minValueThe progress range minimum value.
maxValueThe progress range maximum value.

Definition at line 1167 of file WorkOrder.cpp.

References Isis::WorkOrder::m_progressRangeMaxValue, and Isis::WorkOrder::m_progressRangeMinValue.

Referenced by Isis::ExportImagesWorkOrder::asyncRedo(), Isis::ImportControlNetWorkOrder::asyncRedo(), Isis::ImportImagesWorkOrder::importConfirmedImages(), and Isis::ImportShapesWorkOrder::importConfirmedShapes().

void Isis::WorkOrder::setProgressValue ( int  value)
protectedinherited

Sets the current progress value for the WorkOrder.

Parameters
intvalue The value to set the current progress to.

Definition at line 1177 of file WorkOrder.cpp.

References Isis::WorkOrder::m_progressValue.

Referenced by Isis::ExportImagesWorkOrder::asyncRedo(), Isis::ImportControlNetWorkOrder::asyncRedo(), Isis::ImportImagesWorkOrder::importConfirmedImages(), and Isis::ImportShapesWorkOrder::importConfirmedShapes().

ShapeList * Isis::WorkOrder::shapeList ( )
protectedinherited
const ShapeList * Isis::WorkOrder::shapeList ( ) const
protectedinherited

A thread-safe method for retrieving a pointer to the shapeList.

Returns
(ShapeList *) A pointer to the shape list for this WorkOrder.

Definition at line 656 of file WorkOrder.cpp.

References Isis::WorkOrder::m_transparentConstMutex, and Isis::WorkOrder::shapeList().

QString Isis::WorkOrder::statusText ( ) const
inherited

WorkOrder::statusText.

Returns
QString A string representation of the current WorkOrder status.

Definition at line 812 of file WorkOrder.cpp.

References Isis::WorkOrder::m_secondsElapsed, and Isis::WorkOrder::toString().

void Isis::WorkOrder::syncRedo ( )
protectedvirtualinherited

This method is designed to be implemented by children work orders.

The order of execution for redo is: syncRedo() - GUI thread* asyncRedo() - Pooled thread postSyncRedo() - GUI thread

State should only be read from the parent WorkOrder class in this method. You can set state to be used in asyncRedo() and postSyncRedo() safely. This method is always executed in the GUI thread and has no progress.

Reimplemented in Isis::ImageListActionWorkOrder, Isis::Footprint2DViewWorkOrder, Isis::CubeDnViewWorkOrder, Isis::ImportControlNetWorkOrder, Isis::RenameProjectWorkOrder, Isis::TargetGetInfoWorkOrder, Isis::SensorGetInfoWorkOrder, Isis::ViewControlNet3DWorkOrder, Isis::ImageFileListViewWorkOrder, Isis::MatrixViewWorkOrder, Isis::JigsawWorkOrder, Isis::RemoveImagesWorkOrder, Isis::CnetEditorViewWorkOrder, Isis::MoveDownOneSceneWorkOrder, Isis::MoveToBottomSceneWorkOrder, Isis::MoveToTopSceneWorkOrder, and Isis::MoveUpOneSceneWorkOrder.

Definition at line 1203 of file WorkOrder.cpp.

Referenced by Isis::WorkOrder::redo().

void Isis::WorkOrder::syncUndo ( )
protectedvirtualinherited

This method is designed to be implemented by children work orders.

The order of execution for undo is: syncUndo() - GUI thread* asyncUndo() - Pooled thread postSyncUndo() - GUI thread

State should only be read from the parent WorkOrder class in this method. You can set state to be used in asyncUndo() and postSyncUndo() safely. This method is always executed in the GUI thread and has no progress.

Reimplemented in Isis::ImageListActionWorkOrder, Isis::Footprint2DViewWorkOrder, Isis::ImportControlNetWorkOrder, Isis::RenameProjectWorkOrder, Isis::TargetGetInfoWorkOrder, Isis::SensorGetInfoWorkOrder, Isis::ViewControlNet3DWorkOrder, Isis::ImageFileListViewWorkOrder, Isis::MatrixViewWorkOrder, Isis::JigsawWorkOrder, Isis::CnetEditorViewWorkOrder, Isis::MoveDownOneSceneWorkOrder, Isis::MoveToBottomSceneWorkOrder, Isis::MoveToTopSceneWorkOrder, and Isis::MoveUpOneSceneWorkOrder.

Definition at line 1254 of file WorkOrder.cpp.

Referenced by Isis::WorkOrder::undo().

TargetBodyQsp Isis::WorkOrder::targetBody ( )
protectedinherited

WorkOrder::targetBody.

Returns
QSharedPointer Returns a shared pointer to the TargetBody.

Definition at line 666 of file WorkOrder.cpp.

References Isis::WorkOrder::m_targetBody.

Referenced by Isis::TargetGetInfoWorkOrder::execute(), Isis::WorkOrder::setData(), and Isis::TargetGetInfoWorkOrder::syncRedo().

QString Isis::WorkOrder::toString ( WorkOrderStatus  status)
staticinherited

Gets the current status of the WorkOrder.

Parameters
statusAn enumeration of all possible WorkOrder states.
Returns
QString Returns a string representation of the current status of the WorkOrder.

Definition at line 865 of file WorkOrder.cpp.

References Isis::WorkOrder::WorkOrderFinished.

Referenced by Isis::WorkOrder::fromStatusString(), Isis::WorkOrder::save(), and Isis::WorkOrder::statusText().


The documentation for this class was generated from the following files:

U.S. Department of the Interior | U.S. Geological Survey
ISIS | Privacy & Disclaimers | Astrogeology Research Program
To contact us, please post comments and questions on the ISIS Support Center
File Modified: 07/13/2023 00:15:08