VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfTaskSetDialogManager.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2014 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
10 
11 #pragma once
12 
13 #if !defined(Q_MOC_RUN)
18 #include <vrftasks/simTask.h>
19 #include <vrvUtil/signalslib.h>
21 #include <vrfutil/rwUUID.h>
22 
24 
25 #include "vlutil/vlString.h"
27 #endif
28 #include <boost/signals2.hpp>
29 
30 #include <QtCore/QObject>
31 
32 namespace makVrv
33 {
34  class DtDe;
35  class DtSimEntry;
36 }
37 
38 class QWidget;
39 class DtSimStatement;
40 
41 namespace makVrf
42 {
43  class DtTaskSetDialogInterface;
44  class DtVrfTaskDialogCreator;
45  class DtVrfSetDialogCreator;
46  class DtVrfTaskSetDialogManager;
47  class DtVrfTaskSetAction;
48  class DtCommandAssignmentWidgetInterface;
49  class DtCommandAssignmentWidget;
50  class DtCommandDialogExtensionInterface;
51 
53  {
54  Q_OBJECT
55 
56  public:
59 
60  virtual void connectSignals(DtTaskSetDialogInterface*);
61  virtual void disconnectSignals(DtTaskSetDialogInterface*);
62 
63  virtual void connectSignals(DtCommandAssignmentWidgetInterface*);
64  virtual void disconnectSignals(DtCommandAssignmentWidget*);
65 
66  public:
68  boost::signals2::signal<void (DtTaskSetDialogInterface*)> signal_dialogDestroyed;
69 
71  boost::signals2::signal<void (DtCommandAssignmentWidget*)> signal_commandDialogDestroyed;
72 
73  protected slots:
74  virtual void onDialogDestroyed();
75  virtual void onCommandDialogDestroyed();
76 
77  protected:
80  };
81 
85  {
86  typedef std::map<int, DtVrfTaskDialogCreator*> DtVrfTaskDialogCreatorMap;
87  typedef std::map<int, DtVrfSetDialogCreator*> DtVrfSetDialogCreatorMap;
88 
89  public:
92 
94  virtual ~DtVrfTaskSetDialogManager();
95 
97  static DtVrfTaskSetDialogManager& instance(makVrv::DtDe& de);
98 
99  public:
103  virtual DtTaskSetDialogInterface* processDialogFor(int menuItemType, QWidget* parent, DtVrfTaskSetAction* forAction,
104  const std::vector<makVrv::DtSimEntry*>& data, int partOfPlan = 0);
105 
108  virtual DtCommandAssignmentWidgetInterface* processCommandActionDialog(int menuItemType, QWidget* parent,
109  DtVrfTaskSetAction* forAction, const std::vector<makVrv::DtSimEntry*>& data, int partOfPlan = 0);
110 
111  bool dialogInProgress() const
112  {
113  return (myDialogsInProgress > 0);
114  }
115 
116  int dialogsInProgress() const
117  {
118  return myDialogsInProgress;
119  }
120 
121  virtual bool useNewStyleCommandDialog() const;
122 
125  virtual int nextAvailableId() const;
126 
127  public:
130  virtual void addTaskDialogCreator(int menuItemType, DtVrfTaskDialogCreator*);
131  virtual void addSetDialogCreator(int menuItemType, DtVrfSetDialogCreator*);
132 
134  virtual bool removeTaskDialogCreator(int menuItemType);
135  virtual bool removeSetDialogCreator(int menuItemType);
136 
138  virtual bool hasTaskDialogCreator(int menuItemType, const makVrv::DtSelectionManager::IdSet& ids,
139  int partOfPlanDialog);
140  virtual bool hasSetDialogCreator(int menuItemType, const makVrv::DtSelectionManager::IdSet& ids,
141  int partOfPlanDialog);
142 
145  virtual std::vector<DtUUID> whoShouldITask(const std::vector<DtUUID>& name, const DtSimTask& newTask);
146 
148  virtual void removeAllDialogCreators();
149 
151  virtual bool statementIsEditable(const DtSimStatement*) const;
152 
154  virtual bool isCommandStatement(const DtSimStatement*) const;
155 
158  virtual DtTaskSetDialogInterface* createDialogFor(const DtSimTaskMessageType& type, const DtSimStatement* stmt, QWidget* parent,
159  bool registerDialog = true);
160  virtual DtTaskSetDialogInterface* createDialogFor(const DtSetMessageType& type, const DtSimStatement* stmt, QWidget* parent,
161  bool registerDialog = true);
162  virtual DtTaskSetDialogInterface* createDialogFor(const DtSimStatement* stmt, QWidget* parent, bool registerDialog = true);
163 
165  virtual DtCommandAssignmentWidgetInterface* createCommandDialogFor(const DtSimStatement* stmt, QWidget* parent, int partOfPlan);
166  virtual DtCommandAssignmentWidgetInterface* createCommandDialogFor(int menuItemType, QWidget* parent, int partOfPlan);
167 
169  virtual DtSimTaskMessageType taskTypeFromStatement(const DtSimStatement* stmt) const;
170  virtual DtSetMessageType setTypeFromStatement(const DtSimStatement* stmt) const;
171 
173  virtual DtCommandAssignmentWidgetInterface* createCommandActionDialog(QWidget*, DtCommandDialogExtensionInterface*, int partOfPlan);
174 
175  protected:
176  virtual void slot_onDialogDestroyed(DtTaskSetDialogInterface*);
177  virtual void slot_onCommandDialogDestroyed(DtCommandAssignmentWidget*);
178  virtual void initializeConnections();
179 
180  protected:
183  virtual void prepDialog(DtTaskSetDialogInterface*, DtVrfTaskSetAction* forAction, int partOfPlan);
184  virtual void prepDialog(DtCommandAssignmentWidgetInterface*, DtVrfTaskSetAction* forAction, int partOfPlan);
185 
187  virtual void slot_scriptAddedToTaskMenu(int, std::string);
188 
190  virtual void slot_scriptRemovedFromTaskMenu(int, std::string);
191 
193  virtual void slot_scriptAddedToSetMenu(int, std::string);
194 
196  virtual void slot_scriptRemovedFromSetMenu(int, std::string);
197 
198  protected:
204 
206  };
207 }
bool dialogInProgress() const
Definition: vrfTaskSetDialogManager.h:111
Virtual base class.
Definition: DtVirtualBaseClass.h:22
Definition: taskSetDialogInterface.h:64
int dialogsInProgress() const
Definition: vrfTaskSetDialogManager.h:116
DtVrfSetDialogCreatorMap mySetDialogCreatorMap
Definition: vrfTaskSetDialogManager.h:201
std::map< int, DtVrfTaskDialogCreator * > DtVrfTaskDialogCreatorMap
Definition: vrfTaskSetDialogManager.h:86
makVrv::DtDe & myDe
Definition: vrfTaskSetDialogManager.h:199
Definition: taskSetDialogInterface.h:83
Contains makVrv:DtSelectionManager class.
A widget class for encapsulating radio commands for tasks or sets.
Definition: commandAssignmentWidget.h:46
boost::signals2::signal< void(DtTaskSetDialogInterface *)> signal_dialogDestroyed
Signal sent when the dialog is destroyed.
Definition: vrfTaskSetDialogManager.h:68
bool myFirstCreate
Definition: vrfTaskSetDialogManager.h:78
A widget class for encapsulating radio commands for tasks or sets.
Definition: commandAssignmentWidgetInterface.h:32
int myDialogsInProgress
Definition: vrfTaskSetDialogManager.h:203
std::map< int, DtVrfSetDialogCreator * > DtVrfSetDialogCreatorMap
Definition: vrfTaskSetDialogManager.h:87
Contains makVrv::DtVirtualBaseClass class.
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:24
boost::signals2::signal< void(DtCommandAssignmentWidget *)> signal_commandDialogDestroyed
Signal sent when the dialog is destroyed.
Definition: vrfTaskSetDialogManager.h:71
Define constants for types of tasks, sets, admin messages, reports, and sim commands (all sent via ra...
Definition: commandDialogExtensionInterface.h:50
Definition: vrfTaskSetDialogManager.h:52
makVrv::DtSignalConnectionManager myConnections
Definition: vrfTaskSetDialogManager.h:205
Class that is used as a template for task/set dialogs.
Definition: taskSetDialogInterface.h:45
DtVrfTaskSetDialogSignalHandler myTaskSetDialogSignalHandler
Definition: vrfTaskSetDialogManager.h:202
Base class to provide boost signal/slot management.
class DtSimStatement:
Definition: simStatement.h:41
DtSimTask is an abstract base class from which real tasks can derive.
Definition: simTask.h:33
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
makVrv::DtDe & myDe
Definition: vrfTaskSetDialogManager.h:79
Contains makVrf::DtTaskSetMenu, makVrf::DtVrfTaskSetAction, and makVrf::DtTaskSetMenuItem class...
Definition: vrfTaskSetAction.h:92
#define DT_DLL_VRFGUITASKSETQT
Definition: vrfGuiTaskSetQt.h:22
std::set< DtUniqueID > IdSet
Definition: DtSelectionManager.h:32
DtVrfTaskDialogCreatorMap myTaskDialogCreatorMap
Definition: vrfTaskSetDialogManager.h:200
The DtVrfTaskSetDialogManager maintains the dialogs that are used to show for specific tasks/sets...
Definition: vrfTaskSetDialogManager.h:84

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)