VR-Forces 4.6.1 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 
15 
17 #include <vrfutil/rwUUID.h>
18 
19 #include <QtWidgets/QWidget>
21 
22 namespace makVrv
23 {
24  class DtDe;
25  class DtSimEntry;
26  struct DtEntityState;
27  class DtSimObjectEntry;
28 }
29 
30 class QWidget;
31 
32 static const Qt::WindowFlags theTaskSetCreationFlags =
33  Qt::Dialog | Qt::CustomizeWindowHint | Qt::WindowTitleHint;
34 
35 namespace makVrf
36 {
37  class DtTaskSetDialogInterface;
38  class DtVrfTaskSetAction;
39 
42  {
43  public:
44  virtual DtTaskSetDialogInterface* create(makVrv::DtDe&, QWidget* parent) = 0;
45  virtual bool supportsType(makVrv::DtDe&, const DtSimTaskMessageType&, const DtSimStatement*) const = 0;
46 
48  virtual bool canEdit() const
49  {
50  return true;
51  }
52 
54  virtual bool isValidFor(makVrv::DtDe& de, makVrv::DtSelectionManager::IdSet ids, int partOfPlanDialog) const
55  {
56  return true;
57  }
58  };
59 
61  {
62  public:
63  virtual DtTaskSetDialogInterface* create(makVrv::DtDe&, QWidget* parent) = 0;
64  virtual bool supportsType(makVrv::DtDe&, const DtSetMessageType&, const DtSimStatement*) const = 0;
65 
67  virtual bool canEdit() const
68  {
69  return true;
70  }
71 
73  virtual bool isValidFor(makVrv::DtDe& de, const makVrv::DtSelectionManager::IdSet& ids, int partOfPlanDialog) const
74  {
75  return true;
76  }
77  };
78 
80  : public QWidget
82  {
83  Q_OBJECT
84 
85  public:
86  //CTOR
87  DtTaskSetDialogInterface(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& flags = 0);
88 
89  //DTOR
90  virtual ~DtTaskSetDialogInterface();
91 
94  virtual void connectSignals(const std::vector<makVrv::DtSimEntry*>&);
95 
99  virtual void setSendToRemoteController(bool b);
100  virtual bool sendToRemoteController() const;
101 
103  virtual bool editStatement(const std::vector<makVrv::DtSimEntry*>&, const DtSimStatement*);
104 
106  virtual void setupFrom(const std::vector<makVrv::DtSimEntry*>&);
107 
113  virtual void selectionChanged(const DtUUID & selection);
114 
116  virtual void sendSetRequest(std::vector<DtUUID> names, const DtSetDataRequest&);
117 
120  virtual bool insertMapFocusHandler(DtMapFocusHandler*, int index = -1);
121 
124  virtual void initializeFromAction(DtVrfTaskSetAction*);
125 
127  DtVrfTaskSetAction* initializedAction() const { return myAction; };
128 
130  virtual void sendTaskRequest(std::vector<DtUUID> names, const DtSimTask&);
131 
133  virtual void sendCommandRequest(const DtSimCommandObjectWrapper&);
134 
135  virtual std::vector<DtUUID> names() const;
136 
141  virtual void setPartOfPlan(int b)
142  {
143  myPartOfPlan = b;
144  }
145 
146  int partOfPlan() const
147  {
148  return myPartOfPlan;
149  }
150 
152  virtual void cancel();
153 
154  virtual void setOKEnabled(bool b)
155  {
156  }
157 
159  virtual void setCancelEnabled(bool)
160  {
161  }
162 
163  virtual bool valid() const
164  {
165  return true;
166  }
167 
168  virtual QWidget* widget()
169  {
170  return this;
171  }
172 
173  const std::vector<makVrv::DtSimEntry*>& connectedTo() const
174  {
175  return myConnectedTo;
176  }
177 
179  virtual void noObjectsSelected();
180 
181  protected slots:
182  virtual void actionDestroyed();
183 
184  protected:
185  virtual void slot_objectAboutToBeRemoved(makVrv::DtSimObjectEntry&);
186 
188  virtual std::vector<std::string> commandDialogFiltersFor(const std::vector<makVrv::DtSimEntry*>& data, const DtSimStatement* stmt,
189  int& initialSelection) const;
190 
192  virtual void hideButtons(bool) {};
193 
194  protected:
195  makVrv::DtDe& myDe;
197  std::vector<makVrv::DtSimEntry*> myConnectedTo;
198 
200 
202  };
203 }

Document ID: Generated on Wed Jul 25 16:57:45 EDT 2018 from SVN revision 190790
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)