VR-Forces 5.0.3 Developer's Guide
 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>
15 #include <QtWidgets/QToolButton>
18 #include <set>
19 
20 class QTreeWidget;
21 class QLabel;
22 class DtModelSetEntry;
23 class QTreeWidgetItem;
24 class QScrollArea;
25 class QMenu;
26 class QAction;
27 class QPushButton;
29 
30 namespace makVrf
31 {
32  class DtToolButtonWrapperWidget;
33 }
34 
35 namespace makVrv
36 {
37  class DtDe;
38 }
39 
42 {
43 public:
45 
47 };
48 
50 {
51  Q_OBJECT
52 
53 public:
54 
56  DtCategoriesWidget(makVrv::DtDe& de, QWidget* parent = NULL, const Qt::WindowFlags& flags = 0);
57 
59  virtual ~DtCategoriesWidget();
60 
61  virtual bool init();
62 
63  virtual void setObjectTypes(const std::set<makVrf::DtEntityMapperKey>& obj);
64  virtual void setObjectTypes(const std::vector<DtComponentSystemDefinition*>& obj);
65  virtual void simulationModelSetLoaded();
66  virtual void clearContents();
67 
69  virtual void getSelectedCategories(DtRwNLengthStringVector&);
70  virtual QString typeText() const;
71  virtual QString TypeText() const;
72  virtual void addCategories(const DtRwNLengthStringVector& cats);
73 
74 protected:
75 
76  virtual void buttonCreated(QToolButton*);
77  virtual void setupCategories(const std::set<makVrf::DtEntityMapperKey>& obj);
78  virtual void setupCategories(const std::vector<DtComponentSystemDefinition*>& obj);
79  virtual void setModelCategories();
80  virtual QSize sizeHint() const;
81  virtual DtRwNLengthStringVector values(DtModelSetEntry*) const;
82  virtual DtRwNLengthStringVector selectedCategories() const;
83 
84  virtual void changed();
85  virtual QStringList defaults() const;
86 
87  virtual const char* translationContext() const { return "Entity_Categories"; };
88  virtual QMenu* createRightClickButtonMenu();
89  virtual QString translatedValue(const QString& str) const;
90 
91 protected slots:
92  virtual void clearAll();
93  virtual void addItems();
94  virtual void autoTag();
95  virtual void slot_onCategoryRightClicked(const QPoint&);
96  virtual void onRemove();
97  virtual void onCategoryItemSelected();
98  virtual void slot_removeCategory();
99 
100 signals:
101  void entryModified();
102  void categoriesModified();
103  void deployableCountriesModified();
104  void overlayLayersModified();
105 
106 public:
107  QScrollArea* myCategoriesContainer;
114 
115 protected:
116  std::set<makVrf::DtEntityMapperKey> myObjectTypes;
117  std::vector<DtComponentSystemDefinition*> mySystemTypes;
123 };
124 
127 {
128  Q_OBJECT
129 
130 public:
131 
133  DtDeployableCountriesWidget(makVrv::DtDe& de, QWidget* parent = NULL, const Qt::WindowFlags& flags = 0);
134 
135  virtual ~DtDeployableCountriesWidget();
136 
137  virtual bool init();
138  virtual QString typeText() const;
139  virtual QString TypeText() const;
140 
141 protected:
142  virtual void buttonCreated(QToolButton*);
144  virtual void setModelCategories();
145  virtual void changed();
146  virtual QStringList defaults() const;
147  virtual const char* translationContext() const { return "CountryCodes"; };
148  virtual QString translatedValue(const QString& str) const;
149 };
150 
153 {
154  Q_OBJECT
155 
156 public:
157 
159  DtSystemCategoriesWidget(makVrv::DtDe& de, QWidget* parent = NULL, const Qt::WindowFlags& flags = 0);
160 
161  virtual ~DtSystemCategoriesWidget();
162 
163  virtual bool init();
164  virtual QString typeText() const;
165  virtual QString TypeText() const;
166 
167 protected:
169  virtual void setModelCategories();
170  virtual QStringList defaults() const;
171  virtual const char* translationContext() const { return "System_Categories"; };
172 };
173 
176 {
177 public:
178 
180  DtOverlayLayersWidget(makVrv::DtDe& de, QWidget* parent = NULL, const Qt::WindowFlags& flags = 0);
181 
182  virtual ~DtOverlayLayersWidget();
183 
184 protected:
186  virtual void setModelCategories();
187  virtual void changed();
188  virtual QStringList defaults() const;
189  virtual const char* translationContext() const { return "Entity_Overlay_Layers"; };
190  virtual void setupCategories(const std::set<makVrf::DtEntityMapperKey>& obj);
191 };
192 
195 {
196 public:
199 
201  virtual ~DtCategoriesWidgetCreator();
202 
204  static DtCategoriesWidgetCreator& instance(makVrv::DtDe&);
205 
207  static void registerInstance(makVrv::DtDe&, DtCategoriesWidgetCreator*);
208 
210  virtual DtCategoriesWidget* create(QWidget* parent);
211 
212 protected:
214 };
215 
218 {
219 public:
222 
225 
228 
230  static void registerInstance(makVrv::DtDe&, DtDeployableCountriesWidgetCreator*);
231 
233  virtual DtDeployableCountriesWidget* create(QWidget* parent);
234 
235 protected:
237 };
238 
241 {
242 public:
245 
248 
251 
253  static void registerInstance(makVrv::DtDe&, DtSystemCategoriesWidgetCreator*);
254 
256  virtual DtSystemCategoriesWidget* create(QWidget* parent);
257 
258 protected:
260 };
261 
265 {
266  Q_OBJECT
267 
268 public:
269  DtRightClickButton(QWidget* p);
270 
271  virtual ~DtRightClickButton();
272 
273  virtual void mousePressEvent(QMouseEvent*);
274  virtual void mouseReleaseEvent(QMouseEvent* e);
275 
276 signals:
277  void rightClickReleased(const QPoint&);
278  void removeCategory();
279 
280 public:
282 };
QScrollArea * myCategoriesContainer
Definition: categoriesWidget.h:107
virtual DtRwNLengthStringVector values(DtModelSetEntry *) const
QLabel * myTitle
Definition: categoriesWidget.h:112
QDialog * myAddItemDialog
Definition: categoriesWidget.h:113
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
Creator for the canvas.
Definition: categoriesWidget.h:217
This class will try and space out items such that they will wrap to multiple rows if buttons (or text...
Definition: toolButtonWrapperWidget.h:32
DtRightClickButton(QWidget *p)
QToolButton * myRemove
Definition: categoriesWidget.h:110
virtual void changed()
makVrv::DtDe & myDe
Definition: categoriesWidget.h:236
virtual ~DtRightClickButton()
DtRwNLengthStringVector is a named, readable/writable vector of strings of arbitrary length...
Definition: rwNLengthStringVector.h:28
virtual QString translatedValue(const QString &str) const
QToolButton * myRightClickButton
Definition: categoriesWidget.h:119
void rightClickReleased(const QPoint &)
QToolButton * myAutoTag
Definition: categoriesWidget.h:111
virtual void buttonCreated(QToolButton *)
virtual void setModelCategories()
virtual const char * translationContext() const
Definition: categoriesWidget.h:87
DtComponentSystemDefinition.
Definition: componentSystemDefinition.h:25
Definition: modelSetEntry.h:34
This subclass will specifically allow an item to be removed via right click.
Definition: categoriesWidget.h:41
Contains makVrv::DtVirtualBaseClass class.
!!!!!!!!!!!!!! DtRightClickButton Simply signals a right click on mouse button release ...
Definition: categoriesWidget.h:264
makVrv::DtDe & myDe
Definition: categoriesWidget.h:118
virtual bool init()
virtual const char * translationContext() const
Definition: categoriesWidget.h:147
makVrv::DtDe & myDe
Definition: categoriesWidget.h:259
QToolButton * myCloseButton
Definition: categoriesWidget.h:281
DtRightClickRemoveToolButtonWrapperWidget * myCategories
Definition: categoriesWidget.h:108
virtual const char * translationContext() const
Definition: categoriesWidget.h:189
virtual QString TypeText() const
virtual QString typeText() const
Definition: categoriesWidget.h:49
virtual QStringList defaults() const
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
std::vector< DtComponentSystemDefinition * > mySystemTypes
Definition: categoriesWidget.h:117
virtual void mousePressEvent(QMouseEvent *)
Creator for the canvas.
Definition: categoriesWidget.h:194
makVrv::DtDe & myDe
Definition: categoriesWidget.h:213
virtual void mouseReleaseEvent(QMouseEvent *e)
virtual const char * translationContext() const
Definition: categoriesWidget.h:171
QToolButton * myAdd
Definition: categoriesWidget.h:109
DtOverlayLayersWidget.
Definition: categoriesWidget.h:175
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:70
Creator for the system categories widget.
Definition: categoriesWidget.h:240
bool myRadioMode
Definition: categoriesWidget.h:122
DtSystemCountriesWidget.
Definition: categoriesWidget.h:152
QAction * myRemoveAction
Definition: categoriesWidget.h:121
std::set< makVrf::DtEntityMapperKey > myObjectTypes
Definition: categoriesWidget.h:116
#define DT_DLL_simulationObjectEditorimpl
This file is used to determine how to build.
Definition: simulationObjectEditorImplDefines.h:33
DtDeployableCountriesWidget.
Definition: categoriesWidget.h:126
virtual void setupCategories(const std::set< makVrf::DtEntityMapperKey > &obj)
QMenu * myRightClickMenu
Definition: categoriesWidget.h:120

Document ID: Generated on Thu Jun 1 17:58:13 EDT 2023 from SVN revision 255404
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)