VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
taskSetDialogInterface.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)
16 
18 #include <vrfutil/rwUUID.h>
20 #include <vrftasks/simTask.h>
22 #endif
23 
24 #include <QtWidgets/QWidget>
25 
26 namespace makVrv
27 {
28  class DtDe;
29  class DtSimEntry;
30  struct DtEntityState;
31  class DtSimObjectEntry;
32 }
33 
34 class QWidget;
35 
36 static const Qt::WindowFlags theTaskSetCreationFlags =
37  Qt::Dialog | Qt::CustomizeWindowHint | Qt::WindowTitleHint;
38 
39 namespace makVrf
40 {
41  class DtTaskSetDialogInterface;
42  class DtVrfTaskSetAction;
43 
46  {
47  public:
48  virtual DtTaskSetDialogInterface* create(makVrv::DtDe&, QWidget* parent) = 0;
49  virtual bool supportsType(makVrv::DtDe&, const DtSimTaskMessageType&, const DtSimStatement*) const = 0;
50 
52  virtual bool canEdit() const
53  {
54  return true;
55  }
56 
58  virtual bool isValidFor(makVrv::DtDe& de, makVrv::DtSelectionManager::IdSet ids, int partOfPlanDialog) const
59  {
60  return true;
61  }
62  };
63 
65  {
66  public:
67  virtual DtTaskSetDialogInterface* create(makVrv::DtDe&, QWidget* parent) = 0;
68  virtual bool supportsType(makVrv::DtDe&, const DtSetMessageType&, const DtSimStatement*) const = 0;
69 
71  virtual bool canEdit() const
72  {
73  return true;
74  }
75 
77  virtual bool isValidFor(makVrv::DtDe& de, const makVrv::DtSelectionManager::IdSet& ids, int partOfPlanDialog) const
78  {
79  return true;
80  }
81  };
82 
84  : public QWidget
86  {
87  Q_OBJECT
88 
89  public:
90  //CTOR
91  DtTaskSetDialogInterface(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& flags = 0);
92 
93  //DTOR
94  virtual ~DtTaskSetDialogInterface();
95 
98  virtual void connectSignals(const std::vector<makVrv::DtSimEntry*>&);
99 
103  virtual void setSendToRemoteController(bool b);
104  virtual bool sendToRemoteController() const;
105 
107  virtual bool editStatement(const std::vector<makVrv::DtSimEntry*>&, const DtSimStatement*);
108 
110  virtual void setupFrom(const std::vector<makVrv::DtSimEntry*>&);
111 
117  virtual void selectionChanged(const DtUUID & selection);
118 
120  virtual void sendSetRequest(std::vector<DtUUID> names, const DtSetDataRequest&);
121 
124  virtual bool insertMapFocusHandler(DtMapFocusHandler*, int index = -1);
125 
128  virtual void initializeFromAction(DtVrfTaskSetAction*);
129 
131  DtVrfTaskSetAction* initializedAction() const { return myAction; };
132 
134  virtual void sendTaskRequest(std::vector<DtUUID> names, const DtSimTask&);
135 
137  virtual void sendCommandRequest(const DtSimCommandObjectWrapper&);
138 
140  virtual std::vector<makVrv::DtUniqueID> entityIds() const;
141 
142  virtual std::vector<DtUUID> names() const;
143 
144  virtual void setupGui(const std::vector<makVrv::DtSimEntry*>&);
145  virtual void setupFromExtendedData(const std::map<std::string, std::string>&);
146 
151  virtual void setPartOfPlan(int b)
152  {
153  myPartOfPlan = b;
154  }
155 
156  int partOfPlan() const
157  {
158  return myPartOfPlan;
159  }
160 
162  virtual void cancel();
163 
164  virtual void setOKEnabled(bool b)
165  {
166  }
167 
169  virtual void setCancelEnabled(bool)
170  {
171  }
172 
173  virtual bool valid() const
174  {
175  return true;
176  }
177 
178  virtual QWidget* widget()
179  {
180  return this;
181  }
182 
183  const std::vector<makVrv::DtSimEntry*>& connectedTo() const
184  {
185  return myConnectedTo;
186  }
187 
189  virtual void noObjectsSelected();
190 
191  protected slots:
192  virtual void actionDestroyed();
193 
194  protected:
195  virtual void slot_objectAboutToBeRemoved(makVrv::DtSimObjectEntry&);
196 
198  virtual std::vector<std::string> commandDialogFiltersFor(const std::vector<makVrv::DtSimEntry*>& data, const DtSimStatement* stmt,
199  int& initialSelection) const;
200 
202  virtual void hideButtons(bool) {};
203 
204  protected:
205  makVrv::DtDe& myDe;
207  std::vector<makVrv::DtSimEntry*> myConnectedTo;
208 
210 
212  };
213 }
UUID is a unique ID wrapper class.
Definition: rwUUID.h:222
virtual bool valid() const
Override to return whether or not extension is valid.
Definition: taskSetDialogInterface.h:173
Definition: taskSetDialogInterface.h:64
virtual bool canEdit() const
Override to say whether or not this item can be edited by itself if it supports the type...
Definition: taskSetDialogInterface.h:52
DtVrfTaskSetAction * initializedAction() const
The action this dialog was initialized for.
Definition: taskSetDialogInterface.h:131
virtual void setOKEnabled(bool b)
Sets whether or not the OK button is enabled.
Definition: taskSetDialogInterface.h:164
Definition: taskSetDialogInterface.h:83
const std::vector< makVrv::DtSimEntry * > & connectedTo() const
Definition: taskSetDialogInterface.h:183
Contains makVrv:DtSelectionManager class.
virtual void setPartOfPlan(int b)
0 - Not part of plan dialog 1 - Part of plan dialog 2 - Part of command widget 3 - Part of embedded e...
Definition: taskSetDialogInterface.h:151
DtSetDataRequest is an abstract base class from which real setDataRequests can derive.
Definition: setDataRequest.h:40
A DtSimObjectEntry is an entry for a persistent simulation object like an entity. ...
Definition: DtSimObjectEntry.h:25
DtVrfTaskSetAction * myAction
Definition: taskSetDialogInterface.h:211
Definition: commandDialogExtensionInterface.h:50
virtual bool canEdit() const
Override to say whether or not this item can be edited by itself if it supports the type...
Definition: taskSetDialogInterface.h:71
Definition: simCommandObjectWrapper.h:44
Class that is used as a template for task/set dialogs.
Definition: taskSetDialogInterface.h:45
std::vector< makVrv::DtSimEntry * > myConnectedTo
Definition: taskSetDialogInterface.h:207
int partOfPlan() const
Definition: taskSetDialogInterface.h:156
virtual bool isValidFor(makVrv::DtDe &de, const makVrv::DtSelectionManager::IdSet &ids, int partOfPlanDialog) const
Checks if this dialog is valid for the given selection.
Definition: taskSetDialogInterface.h:77
class DtSimStatement:
Definition: simStatement.h:41
bool mySendToRemoteController
Definition: taskSetDialogInterface.h:209
DtSimTask is an abstract base class from which real tasks can derive.
Definition: simTask.h:33
Base class that must be implemented by items that wish to be part of a map focus handler chain...
Definition: mapFocusHandlerManager.h:28
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
Contains makVrf::DtTaskSetMenu, makVrf::DtVrfTaskSetAction, and makVrf::DtTaskSetMenuItem class...
Definition: vrfTaskSetAction.h:92
virtual void setCancelEnabled(bool)
Sets whether or not the Cancel button is enabled.
Definition: taskSetDialogInterface.h:169
#define DT_DLL_VRFGUITASKSETQT
Definition: vrfGuiTaskSetQt.h:22
int myPartOfPlan
Definition: taskSetDialogInterface.h:206
virtual bool isValidFor(makVrv::DtDe &de, makVrv::DtSelectionManager::IdSet ids, int partOfPlanDialog) const
Checks if this dialog is valid for the given selection.
Definition: taskSetDialogInterface.h:58
std::set< DtUniqueID > IdSet
Definition: DtSelectionManager.h:32
virtual QWidget * widget()
Returns the widget.
Definition: taskSetDialogInterface.h:178
static const Qt::WindowFlags theTaskSetCreationFlags
Definition: taskSetDialogInterface.h:36

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)