VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
categoriesWidget.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2013 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 
8 
9 #pragma once
10 
14 #include <QtWidgets/QWidget>
17 #include <set>
18 #include <QtWidgets/QToolButton>
19 #include <QtWidgets/QPushButton>
20 
21 class QTreeWidget;
22 class QLabel;
23 class DtModelSetEntry;
24 class QTreeWidgetItem;
25 class QScrollArea;
26 class QMenu;
27 class QAction;
29 
30 namespace makVrf
31 {
32  class DtToolButtonWrapperWidget;
33 }
34 
37 {
38 public:
40 
42 };
43 
45 {
46  Q_OBJECT
47 
48 public:
49 
51  DtCategoriesWidget(makVrv::DtDe& de, QWidget* parent = NULL, const Qt::WindowFlags& flags = 0);
52 
54  virtual ~DtCategoriesWidget();
55 
56  virtual bool init();
57 
58  virtual void setObjectTypes(const std::set<makVrf::DtEntityMapperKey>& obj);
59  virtual void setObjectTypes(const std::vector<DtComponentSystemDefinition*>& obj);
60  virtual void simulationModelSetLoaded();
61  virtual void clearContents();
62 
64  virtual void getSelectedCategories(DtRwNLengthStringVector&);
65  virtual QString typeText() const;
66  virtual QString TypeText() const;
67 
68 protected:
69  virtual void setupCategories(const std::set<makVrf::DtEntityMapperKey>& obj);
70  virtual void setupCategories(const std::vector<DtComponentSystemDefinition*>& obj);
71  virtual void addCategories(const DtRwNLengthStringVector& cats);
72  virtual void setModelCategories();
73  virtual QSize sizeHint() const;
74  virtual DtRwNLengthStringVector values(DtModelSetEntry*) const;
75  virtual DtRwNLengthStringVector selectedCategories() const;
76 
77  virtual void changed();
78  virtual QStringList defaults() const;
79 
80  virtual const char* translationContext() { return "Entity_Categories"; };
81  virtual QMenu* createRightClickButtonMenu();
82 
83 protected slots:
84  virtual void clearAll();
85  virtual void addItems();
86  virtual void autoTag();
87  virtual void slot_onCategoryRightClicked(const QPoint&);
88  virtual void onRemove();
89  virtual void onCategoryItemSelected();
90  virtual void slot_removeCategory();
91 
92 signals:
93  void entryModified();
94  void categoriesModified();
95  void deployableCountriesModified();
96  void overlayLayersModified();
97 
98 public:
99  QScrollArea* myCategoriesContainer;
106 
107 protected:
108  std::set<makVrf::DtEntityMapperKey> myObjectTypes;
109  std::vector<DtComponentSystemDefinition*> mySystemTypes;
115 };
116 
119 {
120  Q_OBJECT
121 
122 public:
123 
125  DtDeployableCountriesWidget(makVrv::DtDe& de, QWidget* parent = NULL, const Qt::WindowFlags& flags = 0);
126 
127  virtual ~DtDeployableCountriesWidget();
128 
129  virtual bool init();
130  virtual QString typeText() const;
131  virtual QString TypeText() const;
132 
133 protected:
135  virtual void setModelCategories();
136  virtual void changed();
137  virtual QStringList defaults() const;
138  virtual const char* translationContext() { return "Entity_Used_By_Countries"; };
139 };
140 
143 {
144  Q_OBJECT
145 
146 public:
147 
149  DtSystemCategoriesWidget(makVrv::DtDe& de, QWidget* parent = NULL, const Qt::WindowFlags& flags = 0);
150 
151  virtual ~DtSystemCategoriesWidget();
152 
153  virtual bool init();
154  virtual QString typeText() const;
155  virtual QString TypeText() const;
156 
157 protected:
159  virtual void setModelCategories();
160  virtual QStringList defaults() const;
161  virtual const char* translationContext() { return "System_Categories"; };
162 };
163 
166 {
167 public:
168 
170  DtOverlayLayersWidget(makVrv::DtDe& de, QWidget* parent = NULL, const Qt::WindowFlags& flags = 0);
171 
172  virtual ~DtOverlayLayersWidget();
173 
174 protected:
176  virtual void setModelCategories();
177  virtual void changed();
178  virtual QStringList defaults() const;
179  virtual const char* translationContext() { return "Entity_Overlay_Layers"; };
180  virtual void setupCategories(const std::set<makVrf::DtEntityMapperKey>& obj);
181 };
182 
185 {
186 public:
189 
191  virtual ~DtCategoriesWidgetCreator();
192 
194  static DtCategoriesWidgetCreator& instance(makVrv::DtDe&);
195 
197  static void registerInstance(makVrv::DtDe&, DtCategoriesWidgetCreator*);
198 
200  virtual DtCategoriesWidget* create(QWidget* parent);
201 
202 protected:
204 };
205 
208 {
209 public:
212 
215 
218 
220  static void registerInstance(makVrv::DtDe&, DtDeployableCountriesWidgetCreator*);
221 
223  virtual DtDeployableCountriesWidget* create(QWidget* parent);
224 
225 protected:
227 };
228 
231 {
232 public:
235 
238 
241 
243  static void registerInstance(makVrv::DtDe&, DtSystemCategoriesWidgetCreator*);
244 
246  virtual DtSystemCategoriesWidget* create(QWidget* parent);
247 
248 protected:
250 };
251 
255 {
256  Q_OBJECT
257 
258 public:
259  DtRightClickButton(QWidget* p);
260 
261  virtual ~DtRightClickButton();
262 
263  virtual void mousePressEvent(QMouseEvent*);
264  virtual void mouseReleaseEvent(QMouseEvent* e);
265 
266 signals:
267  void rightClickReleased(const QPoint&);
268  void removeCategory();
269 
270 public:
272 };

Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (www.mak.com)