VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
scriptedTaskDataWidgets.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2016 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
10 
11 #pragma once
12 
15 #include <vrvUtil/signalslib.h>
18 #include "DtScriptedTaskVariableDialogUi.hpp"
19 
20 #include <QtWidgets/QDialog>
21 #include <QtGui/QValidator>
22 
23 class QLabel;
24 class QPushButton;
25 class QTreeWidget;
26 class QTreeWidgetItem;
27 class QAction;
28 class QRadioButton;
29 class QCheckBox;
30 class DtSimMessage;
31 
32 namespace makVrf
33 {
34  class DtDesignerEditor;
35  class DtTaskSetVariableWidgetInterface;
36  class DtTaskSetVariableWidgetExtensionInterface;
37  class DtConfigurableMenuAssembler;
38  class DtMenuPathSelector;
39  class DtToolbarPathSelector;
40 
43  {
44  Q_OBJECT
45 
46  public:
47  //CTOR
48  DtScriptedTaskDataWidget(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& flags = 0);
49 
50  //DTOR
51  virtual ~DtScriptedTaskDataWidget();
52 
54  virtual void init(const DtScriptedTaskMetaData&) = 0;
55 
57  virtual void accept(DtScriptedTaskMetaData&) = 0;
58 
60  virtual void clear();
61 
63  virtual void setReadOnly(bool);
64 
66  virtual bool processing() const;
67 
69  boost::signal<void ()> signal_processing;
70 
72  boost::signal<void ()> signal_done;
73 
74  protected slots:
75  virtual void onItemSelected();
76  virtual void onAdd() = 0;
77  virtual void onUpdate() = 0;
78  virtual void onDelete() = 0;
79 
80  public:
86  QHBoxLayout* myTitleLayout;
87 
88  protected:
90  bool myReadOnly;
92  };
93 
96  {
97  Q_OBJECT
98 
99  public:
100  //CTOR
101  DtScriptedTaskVariableDataWidget(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& flags = 0);
102 
103  //DTOR
105 
107  virtual void init(const DtScriptedTaskMetaData&);
108 
110  virtual void accept(DtScriptedTaskMetaData&);
111 
113  virtual void setReadOnly(bool);
114 
115  const std::vector<DtScriptedTaskVariable>& variables() const;
116 
119  virtual std::string generateCommentBlock() const;
120 
121  static std::string generateCommentBlock(makVrv::DtDe& de, const std::vector<DtScriptedTaskVariable>&, bool isSetBlock);
122 
124  virtual void setScriptId(const std::string&);
125 
126  virtual void setIsSet(bool b);
127  bool isSet() const;
128 
129  virtual void setAdding(bool);
130  bool adding() const;
131 
133  virtual void setUseUiDesigner(bool);
134  virtual bool useUiDesigner() const;
135 
136  virtual const std::string& uiLayout() const;
137 
139  virtual void setUiLayout(const std::string&);
140 
141  virtual void setDescription(const std::string&);
142 
144  virtual void receivedUiLayout(DtSimMessage*);
145 
147  virtual void requestUiLayout();
148 
149  boost::signal<void ()> signal_variablesUpdatedFromDesigner;
150  boost::signal<void ()> signal_receivedUiLayout;
151 
152  protected:
153  virtual void onUiLayoutEditingComplete(const std::string& scriptId);
154  virtual void onUiLayoutSaved(const std::string& scriptId, const std::string&, const std::vector<DtScriptedTaskVariable>&);
155 
156  protected slots:
157  virtual void onMoveUp();
158  virtual void onMoveDown();
159  virtual void onShowTaskParameterComments();
160  virtual void copyCommentsToClipboard();
161  virtual void useUiDesignerChanged();
162  virtual void onEditDesignerCode();
163 
164  protected:
165  virtual void setupVariables();
166  virtual int variableIndexFrom(int row) const;
167  virtual void onItemSelected();
168  virtual void onAdd();
169  virtual void onUpdate();
170  virtual void onDelete();
171  virtual void moveItemFrom(int from, int to);
172 
173  public:
177 
178  QHBoxLayout* myUiDesignerLayout;
181 
182  protected:
183  std::vector<DtScriptedTaskVariable> myVariables;
185  std::string myScriptId;
186  bool myIsSet;
187  std::string myUiLayout;
189  std::string myDescription;
190  bool myAdding;
192  };
193 
197  {
198  public:
200  virtual ~DtParameterNameValidator();
201 
203  virtual State validate(QString &, int &) const;
204  };
205 
208  {
209  Q_OBJECT
210 
211  public:
212  DtScriptedTaskVariableDialog(makVrv::DtDe&, QWidget*, const Qt::WindowFlags& flags = 0);
213  virtual ~DtScriptedTaskVariableDialog();
214 
215  virtual void init(const DtString& module, const DtScriptedTaskVariable&);
216 
217  virtual DtScriptedTaskVariable scriptedTaskVariable() const;
218 
220  virtual void view();
221 
222  protected:
223  virtual void accept();
224 
225  protected slots:
226  virtual void parameterTypeChanged();
227  virtual void parameterNameChanged();
228 
229  public:
230  Ui_DtScriptedTaskVariableDialogUi myUiImpl;
231 
232  protected:
239  };
240 
243  {
244  Q_OBJECT
245 
246  public:
247  //CTOR
248  DtScriptedTaskEntityTypeDataWidget(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& flags = 0);
249 
250  //DTOR
252 
254  virtual void init(const DtScriptedTaskMetaData&);
255 
257  void init(const std::vector<DtString>& types);
258 
260  virtual void accept(DtScriptedTaskMetaData&);
261 
263  virtual std::vector<DtEntityType> entityTypes() const;
264 
265  virtual void setToolTip(const QString&);
266 
268  virtual std::string displayStringFor(const DtEntityType&) const;
269 
270  protected:
271  virtual void onAdd();
272  virtual void onUpdate();
273  virtual void onDelete();
274 
275  virtual bool getEntityType(DtEntityType& result, const DtEntityType& start = DtEntityType());
276  };
277 
280  {
281  Q_OBJECT
282 
283  public:
284  //CTOR
285  DtScriptedTaskMenuLocationsDataWidget(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& flags = 0);
286 
287  //DTOR
289 
291  virtual void init(const DtScriptedTaskMetaData&);
292 
294  virtual void accept(DtScriptedTaskMetaData&);
295 
297  virtual void setReadOnly(bool);
298 
300  virtual void setMenuText(const QString&);
301 
303  virtual bool processing() const;
304 
306  virtual void setupForSets();
307 
309  virtual void setupForTasks();
310 
312  boost::signal<void ()> signal_processing;
313 
315  boost::signal<void ()> signal_done;
316 
317  protected:
319  virtual QString selectMenuPath(const QString& curPath = "");
320 
321  virtual bool wouldCreateCircularDependency(const std::string&) const;
322  virtual void addScriptedTaskMenuLocation(const std::string& scriptedTaskId, const std::string&, DtSubMenuConfiguration&) const;
323 
324  protected slots:
325  virtual void showOnTaskMenuChanged();
326  virtual void showOnSetMenuChanged();
327  virtual void onUpdate();
328 
329  public:
338  QWidget* myMenuCanvas;
339 
340  protected:
341  std::vector<std::string> myMenuPaths;
345  bool myIsSet;
346  };
347 
350  {
351  Q_OBJECT
352 
353  public:
354  //CTOR
355  DtScriptedTaskToolbarLocationsDataWidget(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& flags = 0);
356 
357  //DTOR
359 
361  virtual void init(const DtScriptedTaskMetaData&);
362 
364  virtual void accept(DtScriptedTaskMetaData&);
365 
367  virtual void setReadOnly(bool);
368 
370  virtual bool processing() const;
371 
372  virtual std::string selectToolbarPath();
373 
374  virtual void setupForSets();
375  virtual void setupForTasks();
376 
378  boost::signal<void ()> signal_processing;
379 
381  boost::signal<void ()> signal_done;
382 
383  protected slots:
384  virtual void showOnTaskToolbarChanged();
385  virtual void showOnSetToolbarChanged();
386  virtual void onUpdate();
387 
388  public:
390  QWidget* myToolbarCanvas;
396 
397  protected:
401  bool myIsSet;
402  };
403 
406  {
407  Q_OBJECT
408 
409  public:
410  //CTOR
411  DtScriptedTaskReactiveTaskDataWidget(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& flags = 0);
412 
413  //DTOR
415 
417  virtual void init(const DtScriptedTaskMetaData&);
418 
420  virtual void accept(DtScriptedTaskMetaData&);
421 
423  virtual void setReadOnly(bool);
424 
426  virtual bool processing() const;
427 
429  virtual void setActionCategories(const std::set<std::string>&);
430 
432  virtual void setEntityTypes(const std::vector<DtEntityType>&);
433 
435  virtual std::string displayStringFor(const DtEntityType&) const;
436 
438  boost::signal<void ()> signal_processing;
439 
441  boost::signal<void ()> signal_done;
442 
443  protected slots:
444  virtual void onDisplayScriptedTaskPriorities();
445 
446  public:
448  QIntValidator* myValidator;
452  QHBoxLayout* myPriorityLayout;
453 
454  protected:
457  std::string myScriptId;
458  std::set<std::string> myActionCategories;
459  std::vector<DtEntityType> myEntityTypes;
460  };
461 }

Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (www.mak.com)