VR-Forces 4.3 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
embeddedEntityCommandAssignmentWidget.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2014 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
6 #pragma once
7 
8 #include <vrvUtil/signalslib.h>
9 
12 
13 #include <QtGui/QWidget>
14 
15 class QHBoxLayout;
16 class QVBoxLayout;
17 class QGroupBox;
18 class QListWidget;
19 class QPushButton;
20 class QSpacerItem;
21 class QListWidgetItem;
22 
23 namespace makVrv
24 {
25  class DtDe;
26  class DtSimObjectEntry;
27 }
28 
29 namespace makVrf
30 {
31  class DtEmbeddedEntityCommandAssignmentWidgetLogic;
32  class DtCommandDialogExtensionInterface;
33  //class DtVrfFilteredListView;
34  class DtSimCommandObjectWrapper;
35 
38  : public QWidget
40  {
41  Q_OBJECT
42 
43  public:
47  Qt::WindowFlags flags =
48  Qt::Dialog | Qt::CustomizeWindowHint | Qt::WindowTitleHint);
49 
52  virtual void run(const std::vector<makVrv::DtSimEntry*>&);
53 
54  virtual std::vector<std::string> commandDialogFiltersFor(const std::vector<makVrv::DtSimEntry*>& data, const DtSimStatement* stmt,
55  int& initialSelection) const;
56  virtual void setBroadcastTitle(const QString&);
57 
59  virtual void setupUi(const std::vector<makVrv::DtSimEntry*>&,
60  const DtSimStatement* stmt = NULL);
61 
62  virtual void populateEntitySelectionWidget(
63  const std::vector<makVrv::DtSimEntry*>& data);
64 
66  virtual void connectSignals(const std::vector<makVrv::DtSimEntry*>&);
67 
72  virtual void selectionChanged(const QString & selection);
73 
76  virtual bool insertMapFocusHandler(DtMapFocusHandler*, int index = -1)
77  {
78  return false;
79  };
80 
83  void setPartOfPlan(int b) {};
84 
85  protected:
86 
87  QWidget* widget()
88  {
89  return this;
90  }
91 
92  virtual void enableEntitySelectionWidget(bool);
93 
94  virtual void setSelectedName(const QString& s);
95  virtual QString selectedName() const;
96 
97  virtual void setOKEnabled(bool);
98  virtual bool extensionValid() const;
99  virtual void initializeFromAction(DtVrfTaskSetAction*);
100 
104  virtual void commandActivated(const DtSimTask&, const std::vector<std::string>&, bool immediate);
105  virtual void commandActivated(const DtSimCommandObjectWrapper&, bool immediate);
106 
107  protected:
108  virtual void slot_objectAboutToBeRemoved(makVrv::DtSimObjectEntry&);
109 
110  virtual void attachExtension(DtCommandDialogExtensionInterface*, const DtSimStatement* stmt = NULL);
111  virtual void detachExtension();
112  virtual DtCommandDialogExtensionInterface* extension();
113 
114  virtual void setPickMode(bool);
115 
117  virtual bool editStatement(const std::vector<makVrv::DtSimEntry*>&, const DtSimStatement*);
118  virtual std::vector<DtVrfObjectListViewItem::DtVrfObjectState> selectedObjects() const;
119 
121  virtual void setAllowObjectSelection(bool b);
122 
123  virtual bool canSelectObjects() const;
124 
128  virtual bool wantsSelectionOfObjectInCommandMode() const;
129 
130  virtual bool valid() const;
131 
133  virtual void setupFrom(const std::vector<makVrv::DtSimEntry*>&);
134 
135 
137  virtual void setAllowBroadcast(bool) {};
138  virtual bool broadcasting() const { return false; };
139  virtual void setBroadcasting(bool) {};
140 
143  virtual void addFilter(const DtVrfSelectionFilter* filter) {};
144  virtual void selectFilter(int) {};
145  virtual void selectFirstNonEmptyFilter() {};
146 
147  protected slots:
149  virtual void onBroadcastChanged() {};
150 
152  virtual void onCancel();
153 
155  virtual void onPickOK();
156 
157  const std::vector<makVrv::DtSimEntry*>& connectedTo() const
158  {
159  return myConnectedTo;
160  }
161 
162  virtual void entitySelectionChanged(QListWidgetItem* current,
163  QListWidgetItem* previous);
164 
165  protected:
168  std::vector<makVrv::DtSimEntry*> myConnectedTo;
170  std::vector<std::string> myImmediateNames;
173 
174  public:
179  QHBoxLayout* myMasterLayout;
180  QVBoxLayout* myWidgetLayout;
181 
183  QHBoxLayout* myButtonLayout;
184  QSpacerItem* myButtonSpacer;
187  };
188 }

Document ID: Generated on Wed Mar 11 21:20:57 EDT 2015 from SVN revision 150940
Copyright © 2005-2014 VT MÄK. All Rights Reserved (www.mak.com)