VR-Forces 5.0.2 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Classes | Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes
makVrf::DtAskUserQuestionManager Class Reference

The DtAskUserQuestionManager will manage dialogs that will ask user questions based upon messages sent from the back-end. Answers received by the back-end from users will be on a first come basis, so if multiple users send a response at the sane time, whoever gets there first will be used.

Inheritance diagram for makVrf::DtAskUserQuestionManager:
Inheritance graph
[legend]

Classes

struct  QuestionStruct
 

Public Member Functions

 DtAskUserQuestionManager (makVrv::DtDe &)
 
virtual ~DtAskUserQuestionManager ()
 
virtual void askUserQuestion (makVrv::DtElementID, int questionId)
 
virtual DtAskUserQuestionDialogcreateQuestionDialog (const DtRwUserQuestion &, const QString &entityName)
 
virtual void askQuestionsFor (const makVrv::DtSelectionManager::IdSet &)
 
virtual void stopAskingQuestions ()
 
virtual void askNextQuestion ()
 
- Public Member Functions inherited from makVrv::DtVirtualBaseClass
 DtVirtualBaseClass ()
 
virtual ~DtVirtualBaseClass ()
 

Static Public Member Functions

static DtAskUserQuestionManagerinstance (makVrv::DtDe &de)
 
static void registerInstance (makVrv::DtDe &de, DtAskUserQuestionManager *)
 

Protected Types

typedef std::map< int,
QuestionStruct
QuestionDialogs
 
typedef std::map
< makVrv::DtElementID,
QuestionDialogs
EntityQuestionDialogs
 
typedef std::map
< makVrv::DtElementID,
std::vector< int > > 
PendingQuestionsToAsk
 

Protected Member Functions

virtual DtAskUserQuestionDialogcreateDialog (QWidget *parent, const DtRwUserQuestion &question) const
 
virtual void slot_accepted (DtAskUserQuestionDialog *, int choice)
 
virtual void slot_rejected (DtAskUserQuestionDialog *)
 
virtual void cleanupDialogReference (DtAskUserQuestionDialog *)
 
virtual DtString scriptIdFor (makVrv::DtElementID id, int questionId) const
 
virtual void slot_onObjectAboutToBeRemoved (const makVrv::DtStateView< makVrv::DtVrlinkSimulatedBaseState > *s)
 
virtual void processUserQuestionOperation (DtSimMessage *msg)
 
virtual void cleanupDialogReference (makVrv::DtUniqueID, int questionId, bool deleteDialog=true)
 

Protected Attributes

makVrv::DtDemyDe
 
EntityQuestionDialogs myEntityQuestionDialogs
 
makVrv::DtSignalConnectionManager myConnectionManager
 
PendingQuestionsToAsk myPendingQuestionsToAsk
 
PendingQuestionsToAsk::iterator myEntityAnsweringIterator
 

Member Typedef Documentation

Constructor & Destructor Documentation

makVrf::DtAskUserQuestionManager::DtAskUserQuestionManager ( makVrv::DtDe )

CTOR.

virtual makVrf::DtAskUserQuestionManager::~DtAskUserQuestionManager ( )
virtual

DTOR.

Member Function Documentation

static DtAskUserQuestionManager& makVrf::DtAskUserQuestionManager::instance ( makVrv::DtDe de)
static

Returns instance of the manager.

static void makVrf::DtAskUserQuestionManager::registerInstance ( makVrv::DtDe de,
DtAskUserQuestionManager  
)
static

Registers a new instance of this manager.

virtual void makVrf::DtAskUserQuestionManager::askUserQuestion ( makVrv::DtElementID  ,
int  questionId 
)
virtual

Asks a question of the user based on the entity and question id. If the combination does not exist in the object console manager then no question is asked.

virtual DtAskUserQuestionDialog* makVrf::DtAskUserQuestionManager::createQuestionDialog ( const DtRwUserQuestion ,
const QString &  entityName 
)
virtual

Creates a dialog based on the question supplied.

virtual void makVrf::DtAskUserQuestionManager::askQuestionsFor ( const makVrv::DtSelectionManager::IdSet )
virtual

Given the selection set, find all questions that are pertaining to those entities and add them to the list of questions to iterate over to ask for those entities. If there is a current list then the current list will be appended to. To stop the current questions in progress call stopAskingQuestions. If other questions for an entity come in after this method is called those questions will not be added to the list.

virtual void makVrf::DtAskUserQuestionManager::stopAskingQuestions ( )
virtual

Call to stop iterating over questions in the ask questions queue, canceling any current question.

virtual void makVrf::DtAskUserQuestionManager::askNextQuestion ( )
virtual

If there is a question to be asked, asks the next question. Does not stop any questions that are currently being asked.

virtual DtAskUserQuestionDialog* makVrf::DtAskUserQuestionManager::createDialog ( QWidget *  parent,
const DtRwUserQuestion question 
) const
protectedvirtual

Creates the base dialog. Override to provide your own dialog subclass.

virtual void makVrf::DtAskUserQuestionManager::slot_accepted ( DtAskUserQuestionDialog ,
int  choice 
)
protectedvirtual
virtual void makVrf::DtAskUserQuestionManager::slot_rejected ( DtAskUserQuestionDialog )
protectedvirtual
virtual void makVrf::DtAskUserQuestionManager::cleanupDialogReference ( DtAskUserQuestionDialog )
protectedvirtual
virtual DtString makVrf::DtAskUserQuestionManager::scriptIdFor ( makVrv::DtElementID  id,
int  questionId 
) const
protectedvirtual
virtual void makVrf::DtAskUserQuestionManager::slot_onObjectAboutToBeRemoved ( const makVrv::DtStateView< makVrv::DtVrlinkSimulatedBaseState > *  s)
protectedvirtual
virtual void makVrf::DtAskUserQuestionManager::processUserQuestionOperation ( DtSimMessage msg)
protectedvirtual
virtual void makVrf::DtAskUserQuestionManager::cleanupDialogReference ( makVrv::DtUniqueID  ,
int  questionId,
bool  deleteDialog = true 
)
protectedvirtual

Member Data Documentation

makVrv::DtDe& makVrf::DtAskUserQuestionManager::myDe
protected
EntityQuestionDialogs makVrf::DtAskUserQuestionManager::myEntityQuestionDialogs
protected
makVrv::DtSignalConnectionManager makVrf::DtAskUserQuestionManager::myConnectionManager
protected
PendingQuestionsToAsk makVrf::DtAskUserQuestionManager::myPendingQuestionsToAsk
protected
PendingQuestionsToAsk::iterator makVrf::DtAskUserQuestionManager::myEntityAnsweringIterator
protected

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

Document ID: Generated on Sun Dec 4 20:22:03 EST 2022 from SVN revision 249613
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)