VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
scriptedObjectMovementEditor.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 
15 #include <QtWidgets/QDialog>
16 
17 class QPushButton;
18 class QComboBox;
19 class QListWidget;
20 class QSpinBox;
21 class QLabel;
22 class QTreeWidget;
23 class QIntValidator;
27 class QLineEdit;
28 class QFrame;
29 class QComboBox;
30 class QDoubleValidator;
31 class QGridLayout;
32 class QListWidgetItem;
33 
34 namespace makVrv
35 {
36  class DtDe;
37 }
38 
43 {
44  Q_OBJECT
45 
46 public:
47  DtScriptedObjectMovementEditor(makVrv::DtDe& de, bool precisionMode, QWidget* parent, const Qt::WindowFlags& flags = Qt::Tool);
49 
50 protected:
52  virtual void accept();
53 
55  virtual void setupFiles();
56 
58  virtual DtFilename defaultMovementFile() const;
59 
61  virtual DtEntityType defaultMissileType() const;
62 
64  std::vector<std::string> filesThatMatch(const std::string& ext) const;
65 
67  virtual void setupDefaultTypesFor(const DtEntityType&);
68 
69 
71  virtual DtComponentDescriptor* findFromSystem(const DtComponentSystemDescriptorList*) const;
72 
74  virtual DtComponentDescriptor* findFromComponents(const DtComponentDescriptorList*) const;
75 
77  virtual void addPhase(const DtScriptedMovementPhase&);
78 
79  virtual void setFormatsFromMovementFile();
80 
81 protected slots:
82  virtual void onAddScriptedObjectMovement();
83  virtual void onRemoveScriptedObjectMovement();
84  virtual void onRenameScriptedObjectMovement();
85  virtual void onSeletScriptedMovementObject();
86  virtual void onGroundClampTypeChanged();
87  virtual void onPhaseSelected();
88  virtual void onDescriptionChanged();
89  virtual void onAddCategory();
90  virtual void onRemoveCategory();
91  virtual void onCategorySelected();
92  virtual void onCategoryChanged(QListWidgetItem*);
93  virtual void onAddNewMissile();
94  virtual void onAddNewMovementFile();
95  virtual void onAddNewFileConfiguration();
96 
98  virtual void onAddPhase();
99 
101  virtual void onRemovePhase();
102 
104  virtual void onPhaseChanged();
105 
108  virtual void onMissileTypeChanged();
109 
112  virtual std::string configurationThatMatches(const DtScriptedMovementFileConfiguration&, QString nameIfMissing);
113 
114 public:
117 
132  QListWidget* myCategories;
133 
138  QGridLayout* myPhasesLayout;
139  QWidget* myPhasesCanvas;
140 
151 
152 protected:
154 
155  typedef std::map<std::string, DtScriptedMovementObject> ScriptedMovementObjectsMap;
158 
159  std::vector<std::string> myMovementFiles;
160  std::vector<DtEntityType> myMissileTypes;
161 
163 };
164 
167 {
168 public:
171 
174 
177 
179  static void registerInstance(makVrv::DtDe&, DtScriptedObjectMovementEditorCreator*);
180 
182  virtual DtScriptedObjectMovementEditor* create(QWidget* parent, bool precisionMode);
183 
184 protected:
186 };
QPushButton * myRemoveCategory
Definition: scriptedObjectMovementEditor.h:131
QLabel * myGroundClampTypeLabel
Definition: scriptedObjectMovementEditor.h:147
QLabel * myFormatLabel
Definition: scriptedObjectMovementEditor.h:143
Virtual base class.
Definition: DtVirtualBaseClass.h:19
QLabel * myDescriptionLabel
Definition: scriptedObjectMovementEditor.h:127
QWidget * myPhasesCanvas
Definition: scriptedObjectMovementEditor.h:139
QPushButton * myRemoveScriptedObjectMovement
Definition: scriptedObjectMovementEditor.h:120
List of DtComponentSystemDescriptor instances.
Definition: componentSystemDescriptorList.h:20
QLabel * myMovementFileLabel
Definition: scriptedObjectMovementEditor.h:141
QLabel * myInstructions
Definition: scriptedObjectMovementEditor.h:118
QComboBox * myMovementFile
Definition: scriptedObjectMovementEditor.h:142
Instances of DtComponentDescriptorList are readable/writeable lists of DtComponentDescriptor objects...
Definition: componentDescriptorList.h:22
A readable, writable type whose name is the name of a component and that has a list of component name...
Definition: componentDescriptor.h:42
QPushButton * myCancelButton
Definition: scriptedObjectMovementEditor.h:116
QPushButton * myAddNewMovementFile
Definition: scriptedObjectMovementEditor.h:124
std::vector< std::string > myMovementFiles
Definition: scriptedObjectMovementEditor.h:159
makVrv::DtDe & myDe
Definition: scriptedObjectMovementEditor.h:185
QComboBox * myScriptedMovementObjects
Definition: scriptedObjectMovementEditor.h:126
makVrv::DtDe & myDe
Definition: scriptedObjectMovementEditor.h:162
QPushButton * myAddNewMissile
Definition: scriptedObjectMovementEditor.h:122
QPushButton * myAddNewFileConfiguration
Definition: scriptedObjectMovementEditor.h:123
QLabel * myCompletionRuleLabel
Definition: scriptedObjectMovementEditor.h:149
Contains makVrv::DtVirtualBaseClass class.
QPushButton * myAddScriptedObjectMovement
Definition: scriptedObjectMovementEditor.h:119
bool myPrecisionMode
Definition: scriptedObjectMovementEditor.h:153
ScriptedMovementObjectsMap myScriptedMovementObjectsMap
Definition: scriptedObjectMovementEditor.h:156
QComboBox * myMissileType
Definition: scriptedObjectMovementEditor.h:146
QPushButton * myAddCategory
Definition: scriptedObjectMovementEditor.h:130
QPushButton * myRenameScriptedObjectMovement
Definition: scriptedObjectMovementEditor.h:121
QLabel * myScriptedMovementObjectsLabel
Definition: scriptedObjectMovementEditor.h:125
QPushButton * myAddPhase
Definition: scriptedObjectMovementEditor.h:134
QLabel * myPhasesLabel
Definition: scriptedObjectMovementEditor.h:136
QComboBox * myPhases
Definition: scriptedObjectMovementEditor.h:137
QLineEdit * myDescription
Definition: scriptedObjectMovementEditor.h:128
This class will allow for the adding, modifying or removing of scripted object files that will contai...
Definition: scriptedObjectMovementEditor.h:42
ScriptedMovementObjectsMap myScriptedObjectMovementsToRemove
Definition: scriptedObjectMovementEditor.h:157
QGridLayout * myPhasesLayout
Definition: scriptedObjectMovementEditor.h:138
QComboBox * myFormat
Definition: scriptedObjectMovementEditor.h:144
QPushButton * myOKButton
Definition: scriptedObjectMovementEditor.h:115
The DtScriptedMovementObject will contain information about an object that can be used for scripted m...
Definition: scriptedMovementObject.h:38
The DtScriptedMovementObject will contain information about an object that can be used for scripted m...
Definition: movementFile.h:37
Creator for the canvas.
Definition: scriptedObjectMovementEditor.h:166
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
QPushButton * myRemovePhase
Definition: scriptedObjectMovementEditor.h:135
QComboBox * myCompletionRule
Definition: scriptedObjectMovementEditor.h:150
QComboBox * myGroundClampType
Definition: scriptedObjectMovementEditor.h:148
QListWidget * myCategories
Definition: scriptedObjectMovementEditor.h:132
std::map< std::string, DtScriptedMovementObject > ScriptedMovementObjectsMap
Definition: scriptedObjectMovementEditor.h:155
std::vector< DtEntityType > myMissileTypes
Definition: scriptedObjectMovementEditor.h:160
#define DT_DLL_simulationObjectEditorimpl
This file is used to determine how to build.
Definition: simulationObjectEditorImplDefines.h:32
QLabel * myCategoriesLabel
Definition: scriptedObjectMovementEditor.h:129
QLabel * myMissileTypeLabel
Definition: scriptedObjectMovementEditor.h:145

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)