VR-Forces 4.2 Class Documentation
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 
13 #include <vrvUtil/DtVirtualBaseClass.h>
14 #include <vrfExtProtocol/objType.h>
15 #include <QtGui/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 
118  QLabel* myInstructions;
132  QListWidget* myCategories;
133 
136  QLabel* myPhasesLabel;
138  QGridLayout* myPhasesLayout;
140 
143  QLabel* myFormatLabel;
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 
162  makVrv::DtDe& myDe;
163 };
164 
166 class DT_DLL_entityeditorimpl DtScriptedObjectMovementEditorCreator : public makVrv::DtVirtualBaseClass
167 {
168 public:
171 
174 
176  static DtScriptedObjectMovementEditorCreator& instance(makVrv::DtDe&);
177 
179  static void registerInstance(makVrv::DtDe&, DtScriptedObjectMovementEditorCreator*);
180 
182  virtual DtScriptedObjectMovementEditor* create(QWidget* parent, bool precisionMode);
183 
184 protected:
185  makVrv::DtDe& myDe;
186 };

Document ID: Generated on Sun Nov 24 19:49:21 EST 2013 from SVN revision 133924
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)