VR-Forces 4.6 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 #include <vrvUtil/signalslib.h>
14 
18 
19 #include <QtWidgets/QWidget>
20 
21 class QHBoxLayout;
22 class QVBoxLayout;
23 class QGroupBox;
24 class QCheckBox;
25 class QPushButton;
26 class QSpacerItem;
27 class QSplitter;
28 class QFrame;
29 
30 namespace makVrv
31 {
32  class DtDe;
33  class DtSimObjectEntry;
34 }
35 
36 namespace makVrf
37 {
38  class DtCommandAssignmentWidgetLogic;
39  class DtCommandDialogExtensionInterface;
40  class DtVrfFilteredListView;
41  class DtSimCommandObjectWrapper;
42 
45  : public QWidget
47  {
48  Q_OBJECT
49 
50  public:
53  Qt::WindowFlags flags = Qt::Dialog | Qt::CustomizeWindowHint | Qt::WindowTitleHint, int partOfPlan = false);
54 
56  virtual ~DtCommandAssignmentWidget();
57  virtual void run(const std::vector<makVrv::DtSimEntry*>&);
58 
60  virtual void setupUi(const std::vector<makVrv::DtSimEntry*>&, const DtSimStatement* stmt = NULL);
61 
63  virtual void connectSignals(const std::vector<makVrv::DtSimEntry*>&);
64 
69  virtual void selectionChanged(const DtUUID & selection);
70 
74  virtual bool insertMapFocusHandler(DtMapFocusHandler*, int index = -1);
75 
79  void setPartOfPlan(int b)
80  {
81  myPartOfPlan = b;
82  }
83 
84  virtual void setBroadcastTitle(const QString&);
85 
86  virtual DtCommandDialogExtensionInterface* extension();
87 
88  protected:
89 
90  QWidget* widget()
91  {
92  return this;
93  }
94 
95  virtual void setAllowBroadcast(bool);
96  virtual bool broadcasting() const;
97  virtual void setBroadcasting(bool);
98  virtual void enableEntitySelectionWidget(bool);
99 
100  virtual std::vector<std::string> commandDialogFiltersFor(const std::vector<makVrv::DtSimEntry*>& data, const DtSimStatement* stmt,
101  int& initialSelection) const;
102 
103  virtual void addFilter(const DtVrfSelectionFilter* filter);
104  virtual void setSelectedName(const DtUUID&);
105  virtual DtUUID selectedName() const;
106  virtual void selectFilter(int);
107  virtual void selectFirstNonEmptyFilter();
108 
109  virtual void setOKEnabled(bool);
110  virtual void setCancelEnabled(bool);
111  virtual bool extensionValid() const;
112  virtual void initializeFromAction(DtVrfTaskSetAction*);
113 
117  virtual void commandActivated(const DtSimTask&, const std::vector<DtUUID>&, bool immediate);
118  virtual void commandActivated(const DtSimCommandObjectWrapper&, bool immediate);
119 
120  protected:
121  virtual void slot_objectAboutToBeRemoved(makVrv::DtSimObjectEntry&);
122 
123  virtual void attachExtension(const std::vector<makVrv::DtSimEntry*>& data,
125  virtual void detachExtension();
126 
127  virtual void setPickMode(bool);
128 
130  virtual bool editStatement(const std::vector<makVrv::DtSimEntry*>&, const DtSimStatement*);
131  virtual std::vector<DtVrfObjectListViewItem::DtVrfObjectState> selectedObjects() const;
132 
134  virtual void setAllowObjectSelection(bool b);
135 
136  virtual bool canSelectObjects() const;
137 
141  virtual bool wantsSelectionOfObjectInCommandMode() const;
142 
143  virtual bool valid() const;
144 
146  virtual void setupFrom(const std::vector<makVrv::DtSimEntry*>&);
147 
149  virtual void unknownObjectSelected(const DtUUID&);
150 
152  virtual void noObjectsSelected();
153 
154  virtual void onOK();
155 
156  virtual void hideButtons(bool) {};
157 
158  protected slots:
160  virtual void onBroadcastChanged();
161 
163  virtual void onCancel();
164 
166  virtual void onPickOK();
167 
168  const std::vector<makVrv::DtSimEntry*>& connectedTo() const
169  {
170  return myConnectedTo;
171  }
172 
173  protected:
177  std::vector<makVrv::DtSimEntry*> myConnectedTo;
179  std::vector<DtUUID> myImmediateNames;
184 
185  public:
187  QSplitter* mySplitter;
192  QHBoxLayout* myMasterLayout;
193  QVBoxLayout* myWidgetLayout;
194  QFrame* mySeparator;
195 
196  QWidget* myButtonFrame;
197  QHBoxLayout* myButtonLayout;
198  QSpacerItem* myButtonSpacer;
201  };
202 }

Document ID: Generated on Thu Apr 12 03:15:37 EDT 2018 from SVN revision 187986
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)