Public Types | Public Member Functions | List of all members
iproc::IStateController Class Referenceabstract

Interface for a wizard page status info. More...

#include <IStateController.h>

Inheritance diagram for iproc::IStateController:
istd::IChangeable istd::IPolymorphic iwiz::CComposedStateControllerComp iwiz::CSelectionConsistencyControllerComp iwiz::CStateControllerCompBase

Public Types

enum  ChangeFlags { CF_STATE_ENTERED = 0x826710, CF_STATE_LEAVED, CF_GRAPH_CHANGED, CF_STATE_ENABLED }
 Data model change notification flags. More...
 

Public Member Functions

virtual bool IsStateEnabled () const =0
 Check if state is enabled. More...
 
virtual bool IsStateActive () const =0
 Check if this state is active. More...
 
virtual bool IsEnterAllowed (bool isActionAllowed=true, const IStateController *prevStatePtr=NULL) const =0
 Check if entering of this page is allowed. More...
 
virtual bool IsLeaveAllowed (bool isActionAllowed=true, const IStateController *nextStatePtr=NULL) const =0
 Check if this state can be leaved. More...
 
virtual bool TryEnterState (bool isActionAllowed=true, const IStateController *prevStatePtr=NULL)=0
 Try enter this state. More...
 
virtual bool TryLeaveState (bool isActionAllowed=true, const IStateController *nextStatePtr=NULL)=0
 Try leave this state. More...
 
virtual bool IsResetAllowed () const =0
 Check if reseting is allowed. More...
 

Detailed Description

Interface for a wizard page status info.

Definition at line 15 of file IStateController.h.

Member Enumeration Documentation

Data model change notification flags.

Enumerator
CF_STATE_ENTERED 
CF_STATE_LEAVED 
CF_GRAPH_CHANGED 
CF_STATE_ENABLED 

Definition at line 21 of file IStateController.h.

Member Function Documentation

virtual bool iproc::IStateController::IsEnterAllowed ( bool  isActionAllowed = true,
const IStateController prevStatePtr = NULL 
) const
pure virtual

Check if entering of this page is allowed.

Parameters
isActionAllowedif set, action related to the state leaving should be done.
prevStatePtroptional controller of the previous state.
Returns
true, if this state can be entered. If state is active, it return true, if we can leave and then enter this state.
virtual bool iproc::IStateController::IsLeaveAllowed ( bool  isActionAllowed = true,
const IStateController nextStatePtr = NULL 
) const
pure virtual

Check if this state can be leaved.

Parameters
isActionAllowedif set, action related to the state leaving should be done.
nextStatePtroptional controller of the next state.
Returns
true, if this state can be leaved. If state is not active, it return true, if we can enter and then leave this state.
virtual bool iproc::IStateController::IsResetAllowed ( ) const
pure virtual
virtual bool iproc::IStateController::IsStateActive ( ) const
pure virtual

Check if this state is active.

State is active, if it was succesfully entered and becomes inactive if it was succesfully leaved.

See Also
TryEnterState and TryLeaveState.

Implemented in iwiz::CComposedStateControllerComp, iwiz::CSelectionConsistencyControllerComp, and iwiz::CStateControllerCompBase.

virtual bool iproc::IStateController::IsStateEnabled ( ) const
pure virtual

Check if state is enabled.

If state is disabled it will be not considered as a element of transition graph. State is disabled e.g. if some preselection turns it off.

Implemented in iwiz::CComposedStateControllerComp, iwiz::CSelectionConsistencyControllerComp, and iwiz::CStateControllerCompBase.

virtual bool iproc::IStateController::TryEnterState ( bool  isActionAllowed = true,
const IStateController prevStatePtr = NULL 
)
pure virtual

Try enter this state.

Parameters
isActionAllowedif set, action related to the state leaving should be done.
prevStatePtroptional controller of the previous state.
Returns
true, if state could be enter.
virtual bool iproc::IStateController::TryLeaveState ( bool  isActionAllowed = true,
const IStateController nextStatePtr = NULL 
)
pure virtual

Try leave this state.

Parameters
isActionAllowedif set, action related to the state leaving should be done.
nextStatePtroptional controller of the next state.
Returns
true, if state could be enter.

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

© 2007-2017 Witold Gantzke and Kirill Lepskiy