VR-Forces 4.6.1 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 
14 #include <vrvUtil/signalslib.h>
17 #include "DtScriptedTaskVariableDialogUi.hpp"
18 
19 #include <QtWidgets/QDialog>
20 #include <QtGui/QValidator>
21 
22 class QLabel;
23 class QPushButton;
24 class QTreeWidget;
25 class QTreeWidgetItem;
26 class QAction;
27 class QRadioButton;
28 class QCheckBox;
29 
30 namespace makVrf
31 {
32  class DtDesignerEditor;
33  class DtTaskSetVariableWidgetInterface;
34  class DtTaskSetVariableWidgetExtensionInterface;
35  class DtConfigurableMenuAssembler;
36  class DtMenuPathSelector;
37  class DtToolbarPathSelector;
38 
41  {
42  Q_OBJECT
43 
44  public:
45  //CTOR
46  DtScriptedTaskDataWidget(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& flags = 0);
47 
48  //DTOR
49  virtual ~DtScriptedTaskDataWidget();
50 
52  virtual void init(const DtScriptedTaskMetaData&) = 0;
53 
55  virtual void accept(DtScriptedTaskMetaData&) = 0;
56 
58  virtual void clear();
59 
61  virtual void setReadOnly(bool);
62 
64  virtual bool processing() const;
65 
67  boost::signal<void ()> signal_processing;
68 
70  boost::signal<void ()> signal_done;
71 
72  protected slots:
73  virtual void onItemSelected();
74  virtual void onAdd() = 0;
75  virtual void onUpdate() = 0;
76  virtual void onDelete() = 0;
77 
78  public:
84  QHBoxLayout* myTitleLayout;
85 
86  protected:
88  bool myReadOnly;
90  };
91 
94  {
95  Q_OBJECT
96 
97  public:
98  //CTOR
99  DtScriptedTaskVariableDataWidget(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& flags = 0);
100 
101  //DTOR
103 
105  virtual void init(const DtScriptedTaskMetaData&);
106 
108  virtual void accept(DtScriptedTaskMetaData&);
109 
111  virtual void setReadOnly(bool);
112 
113  const std::vector<DtScriptedTaskVariable>& variables() const;
114 
117  virtual std::string generateCommentBlock() const;
118 
119  static std::string generateCommentBlock(makVrv::DtDe& de, const std::vector<DtScriptedTaskVariable>&, bool isSetBlock);
120 
122  virtual void setScriptId(const std::string&);
123 
124  virtual void setIsSet(bool b);
125  bool isSet() const;
126 
127  virtual void setAdding(bool);
128  bool adding() const;
129 
131  virtual void setUseUiDesigner(bool);
132  virtual bool useUiDesigner() const;
133 
134  virtual const std::string& uiLayout() const;
135 
137  virtual void setUiLayout(const std::string&);
138 
139  virtual void setDescription(const std::string&);
140 
141  boost::signal<void ()> signal_variablesUpdatedFromDesigner;
142 
143  protected:
144  virtual void onUiLayoutEditingComplete(const std::string& scriptId);
145  virtual void onUiLayoutSaved(const std::string& scriptId, const std::string&, const std::vector<DtScriptedTaskVariable>&);
146 
147  protected slots:
148  virtual void onMoveUp();
149  virtual void onMoveDown();
150  virtual void onShowTaskParameterComments();
151  virtual void copyCommentsToClipboard();
152  virtual void useUiDesignerChanged();
153  virtual void onEditDesignerCode();
154 
155  protected:
156  virtual void setupVariables();
157  virtual int variableIndexFrom(int row) const;
158  virtual void onItemSelected();
159  virtual void onAdd();
160  virtual void onUpdate();
161  virtual void onDelete();
162  virtual void moveItemFrom(int from, int to);
163 
164  public:
168 
169  QHBoxLayout* myUiDesignerLayout;
172 
173  protected:
174  std::vector<DtScriptedTaskVariable> myVariables;
176  std::string myScriptId;
177  bool myIsSet;
178  std::string myUiLayout;
180  std::string myDescription;
181  bool myAdding;
182  };
183 
187  {
188  public:
190  virtual ~DtParameterNameValidator();
191 
193  virtual State validate(QString &, int &) const;
194  };
195 
198  {
199  Q_OBJECT
200 
201  public:
202  DtScriptedTaskVariableDialog(makVrv::DtDe&, QWidget*, const Qt::WindowFlags& flags = 0);
203  virtual ~DtScriptedTaskVariableDialog();
204 
205  virtual void init(const DtString& module, const DtScriptedTaskVariable&);
206 
207  virtual DtScriptedTaskVariable scriptedTaskVariable() const;
208 
210  virtual void view();
211 
212  protected:
213  virtual void accept();
214 
215  protected slots:
216  virtual void parameterTypeChanged();
217  virtual void parameterNameChanged();
218 
219  public:
220  Ui_DtScriptedTaskVariableDialogUi myUiImpl;
221 
222  protected:
229  };
230 
233  {
234  Q_OBJECT
235 
236  public:
237  //CTOR
238  DtScriptedTaskEntityTypeDataWidget(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& flags = 0);
239 
240  //DTOR
242 
244  virtual void init(const DtScriptedTaskMetaData&);
245 
247  void init(const std::vector<DtString>& types);
248 
250  virtual void accept(DtScriptedTaskMetaData&);
251 
253  virtual std::vector<DtEntityType> entityTypes() const;
254 
255  virtual void setToolTip(const QString&);
256 
258  virtual std::string displayStringFor(const DtEntityType&) const;
259 
260  protected:
261  virtual void onAdd();
262  virtual void onUpdate();
263  virtual void onDelete();
264 
265  virtual bool getEntityType(DtEntityType& result, const DtEntityType& start = DtEntityType());
266  };
267 
270  {
271  Q_OBJECT
272 
273  public:
274  //CTOR
275  DtScriptedTaskMenuLocationsDataWidget(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& flags = 0);
276 
277  //DTOR
279 
281  virtual void init(const DtScriptedTaskMetaData&);
282 
284  virtual void accept(DtScriptedTaskMetaData&);
285 
287  virtual void setReadOnly(bool);
288 
290  virtual void setMenuText(const QString&);
291 
293  virtual bool processing() const;
294 
296  virtual void setupForSets();
297 
299  virtual void setupForTasks();
300 
302  boost::signal<void ()> signal_processing;
303 
305  boost::signal<void ()> signal_done;
306 
307  protected:
309  virtual QString selectMenuPath(const QString& curPath = "");
310 
311  protected slots:
312  virtual void showOnTaskMenuChanged();
313  virtual void showOnSetMenuChanged();
314  virtual void onUpdate();
315 
316  public:
325  QWidget* myMenuCanvas;
326 
327  protected:
328  std::vector<std::string> myMenuPaths;
332  bool myIsSet;
333  };
334 
337  {
338  Q_OBJECT
339 
340  public:
341  //CTOR
342  DtScriptedTaskToolbarLocationsDataWidget(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& flags = 0);
343 
344  //DTOR
346 
348  virtual void init(const DtScriptedTaskMetaData&);
349 
351  virtual void accept(DtScriptedTaskMetaData&);
352 
354  virtual void setReadOnly(bool);
355 
357  virtual bool processing() const;
358 
359  virtual std::string selectToolbarPath();
360 
361  virtual void setupForSets();
362  virtual void setupForTasks();
363 
365  boost::signal<void ()> signal_processing;
366 
368  boost::signal<void ()> signal_done;
369 
370  protected slots:
371  virtual void showOnTaskToolbarChanged();
372  virtual void showOnSetToolbarChanged();
373  virtual void onUpdate();
374 
375  public:
377  QWidget* myToolbarCanvas;
383 
384  protected:
388  bool myIsSet;
389  };
390 
393  {
394  Q_OBJECT
395 
396  public:
397  //CTOR
398  DtScriptedTaskReactiveTaskDataWidget(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& flags = 0);
399 
400  //DTOR
402 
404  virtual void init(const DtScriptedTaskMetaData&);
405 
407  virtual void accept(DtScriptedTaskMetaData&);
408 
410  virtual void setReadOnly(bool);
411 
413  virtual bool processing() const;
414 
416  virtual void setActionCategories(const std::set<std::string>&);
417 
419  virtual void setEntityTypes(const std::vector<DtEntityType>&);
420 
422  virtual std::string displayStringFor(const DtEntityType&) const;
423 
425  boost::signal<void ()> signal_processing;
426 
428  boost::signal<void ()> signal_done;
429 
430  protected slots:
431  virtual void onDisplayScriptedTaskPriorities();
432 
433  public:
435  QIntValidator* myValidator;
439  QHBoxLayout* myPriorityLayout;
440 
441  protected:
444  std::string myScriptId;
445  std::set<std::string> myActionCategories;
446  std::vector<DtEntityType> myEntityTypes;
447  };
448 }

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)