VR-Forces 5.0.2 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
askIfCanTask.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
9 #pragma once
10 
11 #if !defined(Q_MOC_RUN)
15 #include <vrfutil/rwUUID.h>
16 
18 #endif
19 
20 #include <vector>
21 #include <string>
22 #include <map>
23 
24 #include <QDialog>
25 #include <QTime>
26 
27 class DtSimTask;
28 class QWidget;
29 class QTimer;
30 class QLabel;
31 class QPushButton;
32 
33 namespace makVrv
34 {
35  class DtDe;
36 }
37 
38 namespace makVrf
39 {
43  {
44  Q_OBJECT
45 
46  public:
47  DtAskIfCanTaskDialog(makVrv::DtDe&, QWidget* parent);
48 
49  virtual ~DtAskIfCanTaskDialog();
50 
52  virtual std::vector<DtUUID> askIfCanTask(const std::vector<DtUUID>& names, const DtSimTask& newTask);
53 
55  virtual int exec();
56 
57  protected:
59  virtual void setupGui();
60 
62  virtual void receiveCurrentTasks(const DtUUID&, const DtVrfCurrentTaskManager::EntityTaskInformation&);
63 
66 
68  virtual void timeout();
69 
70  protected slots:
72  virtual void askToTask();
73 
75  virtual void timerCheck();
76 
78  virtual void hideMe();
79 
81  virtual bool shouldInterruptTask(DtVrfVrlinkDataInterfacePtr);
82 
84  virtual bool shouldAbandonPlan(DtVrfVrlinkDataInterfacePtr);
85 
86  public:
87  QWidget* myWaitingFrame;
90 
91  protected:
93  QVector<DtUUID> myAskingToTask;
94  std::vector<DtUUID> myToTask;
96 
97  typedef std::map<DtUUID, QString> NeedToAskMap;
99 
100  QTimer* myCheckTimer;
102 
105 
106  QRect myGeometry;
107  };
108 
113  {
114  public:
116 
118  virtual ~DtAskIfCanTask();
119 
120  static DtAskIfCanTask& instance(makVrv::DtDe&);
121  static void registerInstance(makVrv::DtDe&, DtAskIfCanTask *);
122 
126  virtual std::vector<DtUUID> askIfCanTask(const std::vector<DtUUID>& names, const DtSimTask& newTask);
127 
128  protected:
129  virtual DtAskIfCanTaskDialog* createAskToTaskDialog(QWidget* parent);
130 
131  protected:
133  };
134 }
UUID is a unique ID wrapper class.
Definition: rwUUID.h:229
QTimer * myCheckTimer
Definition: askIfCanTask.h:100
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
QTime myElapsedTimer
Definition: askIfCanTask.h:101
makVrv::DtDe & myDe
Definition: askIfCanTask.h:92
Dialog that will present the names of the tasks/plans to be interrupted. Will ask user if it is ok to...
Definition: askIfCanTask.h:42
std::vector< DtUUID > myToTask
Definition: askIfCanTask.h:94
DtBoost::shared_ptr< DtVrfVrlinkDataInterface > DtVrfVrlinkDataInterfacePtr
Definition: vrfVrlinkDataInterface.h:170
Contains the DtUUID class declaration.
makVrv::DtDe & myDe
Definition: askIfCanTask.h:132
NeedToAskMap myNeedToAsk
Definition: askIfCanTask.h:98
Contains makVrf::DtAskIfCanTask class. This class will create a DtAskIfCanTask dialog to ask the user...
Definition: askIfCanTask.h:112
QPushButton * myCancel
Definition: askIfCanTask.h:89
QVector< DtUUID > myAskingToTask
Definition: askIfCanTask.h:93
Contains makVrv::DtVirtualBaseClass class.
std::map< DtUUID, QString > NeedToAskMap
Definition: askIfCanTask.h:97
QWidget * myWaitingFrame
Definition: askIfCanTask.h:87
QRect myGeometry
Definition: askIfCanTask.h:106
DtSimTask is an abstract base class from which real tasks can derive. It manages the read/write capab...
Definition: simTask.h:30
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:70
int mySelectedInterruptAll
Definition: askIfCanTask.h:103
DtSimTask * myNewTask
Definition: askIfCanTask.h:95
#define DT_DLL_VRFGUITASKSETQT
Definition: vrfGuiTaskSetQt.h:22
QLabel * myWaitingLabel
Definition: askIfCanTask.h:88
std::vector< TaskInformation > EntityTaskInformation
Definition: vrfCurrentTaskManager.h:60
DtBoost::shared_ptr< DtSimTask > DtSimTaskSharedPtr
Definition: vrfCurrentTaskManager.h:44
int mySelectedAbandonAll
Definition: askIfCanTask.h:104

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)