VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
commandAssignmentWidget.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
10 
11 #pragma once
12 
13 #if !defined(Q_MOC_RUN)
14 #include <vrvUtil/signalslib.h>
15 
19 #endif
20 
21 #include <QtWidgets/QWidget>
22 
23 class QHBoxLayout;
24 class QVBoxLayout;
25 class QGroupBox;
26 class QCheckBox;
27 class QPushButton;
28 class QSpacerItem;
29 class QSplitter;
30 class QFrame;
31 
32 namespace makVrv
33 {
34  class DtDe;
35  class DtSimObjectEntry;
36 }
37 
38 namespace makVrf
39 {
40  class DtCommandAssignmentWidgetLogic;
41  class DtCommandDialogExtensionInterface;
42  class DtVrfFilteredListView;
43  class DtSimCommandObjectWrapper;
44 
47  : public QWidget
49  {
50  Q_OBJECT
51 
52  public:
55  Qt::WindowFlags flags = Qt::Dialog | Qt::CustomizeWindowHint | Qt::WindowTitleHint, int partOfPlan = false);
56 
58  virtual ~DtCommandAssignmentWidget();
59  virtual void run(const std::vector<makVrv::DtSimEntry*>&);
60 
62  virtual void setupUi(const std::vector<makVrv::DtSimEntry*>&, const DtSimStatement* stmt = NULL);
63 
65  virtual void connectSignals(const std::vector<makVrv::DtSimEntry*>&);
66 
71  virtual void selectionChanged(const DtUUID & selection);
72 
76  virtual bool insertMapFocusHandler(DtMapFocusHandler*, int index = -1);
77 
81  void setPartOfPlan(int b)
82  {
83  myPartOfPlan = b;
84  }
85 
86  virtual void setBroadcastTitle(const QString&);
87 
88  virtual DtCommandDialogExtensionInterface* extension();
89 
90  protected:
91 
92  QWidget* widget()
93  {
94  return this;
95  }
96 
97  virtual void setAllowBroadcast(bool);
98  virtual bool broadcasting() const;
99  virtual void setBroadcasting(bool);
100  virtual void enableEntitySelectionWidget(bool);
101 
102  virtual std::vector<std::string> commandDialogFiltersFor(const std::vector<makVrv::DtSimEntry*>& data, const DtSimStatement* stmt,
103  int& initialSelection) const;
104 
105  virtual void addFilter(const DtVrfSelectionFilter* filter);
106  virtual void setSelectedName(const DtUUID&);
107  virtual DtUUID selectedName() const;
108  virtual void selectFilter(int);
109  virtual void selectFirstNonEmptyFilter();
110 
111  virtual void setOKEnabled(bool);
112  virtual void setCancelEnabled(bool);
113  virtual bool extensionValid() const;
114  virtual void initializeFromAction(DtVrfTaskSetAction*);
115 
119  virtual void commandActivated(const DtSimTask&, const std::vector<DtUUID>&, bool immediate);
120  virtual void commandActivated(const DtSimCommandObjectWrapper&, bool immediate);
121 
122  protected:
123  virtual void slot_objectAboutToBeRemoved(makVrv::DtSimObjectEntry&);
124 
125  virtual void attachExtension(const std::vector<makVrv::DtSimEntry*>& data,
127  virtual void detachExtension();
128 
129  virtual void setPickMode(bool);
130 
132  virtual bool editStatement(const std::vector<makVrv::DtSimEntry*>&, const DtSimStatement*);
133  virtual std::vector<DtObjectListViewItem::DtVrfObjectState> selectedObjects() const;
134 
136  virtual void setAllowObjectSelection(bool b);
137 
138  virtual bool canSelectObjects() const;
139 
143  virtual bool wantsSelectionOfObjectInCommandMode(const std::vector<makVrv::DtSimEntry*>&) const;
144 
145  virtual bool valid() const;
146 
148  virtual void setupFrom(const std::vector<makVrv::DtSimEntry*>&);
149 
151  virtual void unknownObjectSelected(const DtUUID&);
152 
154  virtual void noObjectsSelected();
155 
156  virtual void onOK();
157 
158  virtual void hideButtons(bool) {};
159 
160  virtual void showEvent(QShowEvent*);
161 
162  protected slots:
164  virtual void onBroadcastChanged();
165 
167  virtual void onCancel();
168 
170  virtual void onPickOK();
171 
172  const std::vector<makVrv::DtSimEntry*>& connectedTo() const
173  {
174  return myConnectedTo;
175  }
176 
177  protected:
181  std::vector<makVrv::DtSimEntry*> myConnectedTo;
183  std::vector<DtUUID> myImmediateNames;
188 
189  public:
191  QSplitter* mySplitter;
196  QHBoxLayout* myMasterLayout;
197  QVBoxLayout* myWidgetLayout;
198  QFrame* mySeparator;
199 
200  QWidget* myButtonFrame;
201  QHBoxLayout* myButtonLayout;
202  QSpacerItem* myButtonSpacer;
205  };
206 }
QVBoxLayout * myWidgetLayout
Definition: commandAssignmentWidget.h:197
UUID is a unique ID wrapper class.
Definition: rwUUID.h:222
QSpacerItem * myButtonSpacer
Definition: commandAssignmentWidget.h:202
void setPartOfPlan(int b)
0 - Not part of plan dialog 1 - Part of plan dialog 2 - Part of command widget
Definition: commandAssignmentWidget.h:81
Definition: vrfSelectionFilters.h:29
DtSimTask * myImmediateTask
Definition: commandAssignmentWidget.h:182
int myPartOfPlan
Definition: commandAssignmentWidget.h:180
std::vector< makVrv::DtSimEntry * > myConnectedTo
Definition: commandAssignmentWidget.h:181
A widget class for encapsulating radio commands for tasks or sets.
Definition: commandAssignmentWidgetLogic.h:39
QWidget * widget()
Returns the widget.
Definition: commandAssignmentWidget.h:92
QCheckBox * myBroadcast
Definition: commandAssignmentWidget.h:193
A widget class for encapsulating radio commands for tasks or sets.
Definition: commandAssignmentWidget.h:46
QGroupBox * myEntitySelectionGroupBox
Definition: commandAssignmentWidget.h:194
virtual void hideButtons(bool)
If OK and Cancel buttons are present, hide them (or not)
Definition: commandAssignmentWidget.h:158
makVrv::DtDe & myDe
Definition: commandAssignmentWidget.h:178
A widget class for encapsulating radio commands for tasks or sets.
Definition: commandAssignmentWidgetInterface.h:32
makVrv::DtSignalConnectionManager myConnections
Definition: commandAssignmentWidget.h:187
DtVrfFilteredListView * myEntitySelectionWidget
Definition: commandAssignmentWidget.h:195
A DtSimObjectEntry is an entry for a persistent simulation object like an entity. ...
Definition: DtSimObjectEntry.h:22
QFrame * mySeparator
Definition: commandAssignmentWidget.h:198
QWidget * myOriginalExtensionParent
Definition: commandAssignmentWidget.h:192
A widget class for managing a DtTreeWidget of objects which supports user-defined filters...
Definition: vrfFilteredListView.h:62
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
QPushButton * myOKButton
Definition: commandAssignmentWidget.h:203
Definition: commandDialogExtensionInterface.h:50
Definition: simCommandObjectWrapper.h:44
QString myBroadcastTitle
Definition: commandAssignmentWidget.h:186
QPushButton * myCancelButton
Definition: commandAssignmentWidget.h:204
QSplitter * mySplitter
Definition: commandAssignmentWidget.h:191
Base class to provide boost signal/slot management.
QWidget * myButtonFrame
Definition: commandAssignmentWidget.h:200
class DtSimStatement:
Definition: simStatement.h:35
DtSimTask is an abstract base class from which real tasks can derive.
Definition: simTask.h:31
Base class that must be implemented by items that wish to be part of a map focus handler chain...
Definition: mapFocusHandlerManager.h:28
const std::vector< makVrv::DtSimEntry * > & connectedTo() const
Definition: commandAssignmentWidget.h:172
DtCommandDialogExtensionInterface * myInitialExtension
Definition: commandAssignmentWidget.h:185
DtCommandAssignmentWidgetLogic * myLogic
Definition: commandAssignmentWidget.h:179
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
std::vector< DtUUID > myImmediateNames
Definition: commandAssignmentWidget.h:183
Contains makVrf::DtTaskSetMenu, makVrf::DtVrfTaskSetAction, and makVrf::DtTaskSetMenuItem class...
Definition: vrfTaskSetAction.h:104
#define DT_DLL_VRFGUITASKSETQT
Definition: vrfGuiTaskSetQt.h:22
DtSimCommandObjectWrapper * myCommandObjectWrapper
Definition: commandAssignmentWidget.h:184
QHBoxLayout * myButtonLayout
Definition: commandAssignmentWidget.h:201
QHBoxLayout * myMasterLayout
Definition: commandAssignmentWidget.h:196
DtCommandDialogExtensionInterface * myExtension
Definition: commandAssignmentWidget.h:190

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)