VR-Forces 4.2 Class Documentation
DtScriptedTaskDataWidgets.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
10 
11 #pragma once
12 
14 #include <vrvUtil/signalslib.h>
16 #include <vrfGuiCoreQt/DtScriptedTaskVariableDialogUi.hpp>
18 
19 #include <QtGui/QDialog>
20 #include <QtGui/QValidator>
21 
22 class QLabel;
23 class QPushButton;
24 class QListWidget;
25 class QTreeWidget;
26 class QTreeWidgetItem;
27 class QAction;
28 class QRadioButton;
29 class QCheckBox;
30 
31 namespace makVrf
32 {
33  class DtTaskSetVariableWidgetInterface;
34  class DtTaskSetVariableWidgetExtensionInterface;
35  class DtConfigurableMenuAssembler;
36  class DtVrfTaskMenu;
37  class DtTaskMenu;
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:
79  QLabel* myTitle;
83  QListWidget* myDataItems;
84  QHBoxLayout* myTitleLayout;
85 
86  protected:
87  makVrv::DtDe& myDe;
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>&);
120 
121  protected slots:
122  virtual void onMoveUp();
123  virtual void onMoveDown();
124  virtual void onShowTaskParameterComments();
125  virtual void copyCommentsToClipboard();
126 
127  protected:
128  virtual int variableIndexFrom(int row) const;
129  virtual void onItemSelected();
130  virtual void onAdd();
131  virtual void onUpdate();
132  virtual void onDelete();
133  virtual void moveItemFrom(int from, int to);
134 
135  public:
139 
140  protected:
141  std::vector<DtScriptedTaskVariable> myVariables;
142  };
143 
147  {
148  public:
150  virtual ~DtParameterNameValidator();
151 
153  virtual State validate(QString &, int &) const;
154  };
155 
158  {
159  Q_OBJECT
160 
161  public:
162  DtScriptedTaskVariableDialog(makVrv::DtDe&, QWidget*, const Qt::WindowFlags& flags = 0);
163  virtual ~DtScriptedTaskVariableDialog();
164 
165  virtual void init(const DtScriptedTaskVariable&);
166 
167  virtual DtScriptedTaskVariable scriptedTaskVariable() const;
168 
170  virtual void view();
171 
172  protected:
173  virtual void accept();
174 
175  protected slots:
176  virtual void parameterTypeChanged();
177  virtual void parameterNameChanged();
178 
179  public:
180  Ui_DtScriptedTaskVariableDialogUi myUiImpl;
181 
182  protected:
183  makVrv::DtDe& myDe;
188  };
189 
192  {
193  Q_OBJECT
194 
195  public:
196  //CTOR
197  DtScriptedTaskEntityTypeDataWidget(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& flags = 0);
198 
199  //DTOR
201 
203  virtual void init(const DtScriptedTaskMetaData&);
204 
206  void init(const std::vector<DtString>& types);
207 
209  virtual void accept(DtScriptedTaskMetaData&);
210 
212  virtual std::vector<DtEntityType> entityTypes() const;
213 
214  virtual void setToolTip(const QString&);
215 
216  protected:
217  virtual void onAdd();
218  virtual void onUpdate();
219  virtual void onDelete();
220 
221  virtual bool getEntityType(DtEntityType& result, const DtEntityType& start = DtEntityType());
222  };
223 
226  {
227  Q_OBJECT
228 
229  public:
230  DtTaskMenuPathSelector(makVrv::DtDe& de, const std::string& scriptId,
231  QWidget* parent, const Qt::WindowFlags& f = 0);
232  virtual ~DtTaskMenuPathSelector();
233 
235  virtual QString selectMenuPath(const QString& curPath = "");
236 
237  virtual void modifyScriptedTask(const DtScriptedTaskMetaData&);
238 
239  virtual void setScriptId(const std::string&);
240 
242  QString locationOfScript() const;
243 
245  virtual QAction* findActionWithScriptId(const QList<QAction*>&, QAction*& parent) const;
246 
247  protected:
248  virtual void populateMenu(QTreeWidgetItem* parent, QAction* actions, const DtConfigurableMenuAssembler& menuAssembler);
249 
250  virtual void addMenuAtPositionFromSelected(int);
251 
252  virtual QTreeWidgetItem* findMenuItem(QTreeWidgetItem* parent, const std::string& path) const;
253 
254  protected slots:
255  virtual void addBefore();
256  virtual void addAfter();
257 
258  protected:
266  QRadioButton* myBefore;
267  QRadioButton* myAfter;
268  makVrv::DtDe& myDe;
269  std::string myScriptId;
270  };
271 
274  {
275  Q_OBJECT
276 
277  public:
278  //CTOR
279  DtScriptedTaskMenuLocationsDataWidget(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& flags = 0);
280 
281  //DTOR
283 
285  virtual void init(const DtScriptedTaskMetaData&);
286 
288  virtual void accept(DtScriptedTaskMetaData&);
289 
291  virtual void setReadOnly(bool);
292 
294  virtual void setMenuText(const QString&);
295 
297  virtual bool processing() const;
298 
300  boost::signal<void ()> signal_processing;
301 
303  boost::signal<void ()> signal_done;
304 
305  protected:
307  virtual QString selectMenuPath(const QString& curPath = "");
308 
309  protected slots:
310  virtual void showOnTaskMenuChanged();
311  virtual void onUpdate();
312 
313  protected:
314  std::vector<std::string> myMenuPaths;
319  QLabel* myMenuLabel;
322  makVrv::DtDe& myDe;
325  };
326 
329  {
330  Q_OBJECT
331 
332  public:
333  //CTOR
334  DtScriptedTaskReactiveTaskDataWidget(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& flags = 0);
335 
336  //DTOR
338 
340  virtual void init(const DtScriptedTaskMetaData&);
341 
343  virtual void accept(DtScriptedTaskMetaData&);
344 
346  virtual void setReadOnly(bool);
347 
349  virtual bool processing() const;
350 
352  virtual void setActionCategories(const std::set<std::string>&);
353 
355  virtual void setEntityTypes(const std::vector<DtEntityType>&);
356 
358  boost::signal<void ()> signal_processing;
359 
361  boost::signal<void ()> signal_done;
362 
363  protected slots:
364  virtual void onDisplayScriptedTaskPriorities();
365 
366  public:
368  QIntValidator* myValidator;
372  QHBoxLayout* myPriorityLayout;
373 
374  protected:
375  makVrv::DtDe& myDe;
377  std::string myScriptId;
378  std::set<std::string> myActionCategories;
379  std::vector<DtEntityType> myEntityTypes;
380  };
381 }

Document ID: Generated on Sun Nov 24 19:49:21 EST 2013 from SVN revision 133924
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)