VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
simulationObjectEditorAppEventController.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/DtUnicode.h>
18 
19 #include <QObject>
20 
22 class DtFilename;
23 class DtModelSetEntry;
24 
25 static const char* DtVisualsModified = "visuals-modified";
26 static const char* DtVisualsChanged = "visuals-changed";
27 static const char* DtBoundingVolumeDifferent = "DtBoundingVolumeDifferent";
28 static const char* DtBoundingSupportPointsDifferent = "DtBoundingSupportPointsDifferent";
29 
30 namespace makVrv
31 {
32  class DtDe;
33  class DtForceManager;
34 }
35 
37 {
38  Q_OBJECT
39 
40 public:
41 
44 
47 
48 public:
49  virtual bool loadSimulationModelSet(const DtSimulationModelSet&);
50  virtual bool saveSimulationModelSet(const DtFilename&, bool signalSave = true);
51  virtual bool isModified() const;
52  virtual bool saveIfChanged();
53 
54  makVrv::DtForceManager* forceManager();
55 
56 public:
57  DtSimulationModelSetLoader* simulationModelSetLoader() const;
58 
61  virtual void addNewDataFile(const std::string&);
62 
65  virtual DtModelSetEntry* addNewEntity(const DtObjectType& base, const DtObjectType& newType, const DtString& name,
66  const DtRwNLengthStringVector& categories = DtRwNLengthStringVector("categories"),
67  const makVrv::DtUnicode& elementDefinition = makVrv::DtUnicode::fromAscii(""));
68 
71  virtual DtModelSetEntry* addNewEntity(const std::string& platformType, const DtObjectType& newType, const DtString& name,
72  const DtRwNLengthStringVector& categories = DtRwNLengthStringVector("categories"),
73  const makVrv::DtUnicode& elementDefinition = makVrv::DtUnicode::fromAscii(""));
74 
75  makVrf::DtFileCommChannel& launcherFileCommChannel()
76  {
77  return myLauncherFileCommChannel;
78  }
79 
80  void setSaving(bool b)
81  {
82  mySaving = b;
83  }
84 
85  bool saving() const
86  {
87  return mySaving;
88  }
89 
90  virtual void processRevertExisting(const QString&);
91 
92  virtual void promoteSelectedEntity();
93  virtual void promoteSelectedSystem();
94 
96  virtual void addNewMunitionEntry();
97 
99  virtual DtString addNewAmmunitionEntry(bool andSelect = false);
100 
101  virtual void processFileAddDataFile();
102  virtual void processAssignTagsBasedOnVisuals();
103  virtual void processFileOpenEntityEditorFile();
104  virtual void processFileSaveEntityEditorFile(bool signalSave = true);
105  virtual void processDeleteExisting();
106  virtual void processCreateNewEntity(int onlyForKind = -1);
107  virtual void processCreateNewSimulationObjectGroup();
108  virtual void processCreateNewRandomizedObject();
109  virtual void procesMakeSelectedTemplate();
110  virtual void processCreateSystemFromExisting();
111  virtual void processCreateSystemFromTemplate();
112  virtual void processCreateFromExisting();
113  virtual void processPromoteExisting();
114  virtual void processEditIncludeFiles();
115  virtual void processEditSimulationObjectGroupConnection();
116  virtual void processEditBallisticMissileMovementFiles();
117  virtual void processEditPrecisionMovementFiles();
118  virtual void processEditCategories();
119  virtual void processEditSystemCategories();
120  virtual void processEditDeployableCountries();
121  virtual void processEditOverlayLayers();
122  virtual void processEditUpgradeOldSMS();
123  virtual void processFileApplyPlatformFileUpdates();
124  virtual void processRevertCategories();
125  virtual void processRevertSystemCategories();
126  virtual void processRevertDeployedCountries();
127  virtual void processRevertOverlayLayers();
128  virtual void processFileNewSimulationModelSet();
129  virtual void processLoadSmsFile(const QString& file);
130  virtual void processEditForces();
131  virtual void processEditSystemFiles();
132  virtual void processEditRollUpRules();
133  virtual void processEditAssemblyItems();
134  virtual void processEditActivities();
135  virtual void processEditAssemblies();
136  virtual void processComputeBVAndSP();
137  virtual void processEnableEditing();
138  virtual void processSMSProperties();
139 
140 protected slots:
143  virtual void opdEditorMessage();
144 
145  virtual void commFileMessagesReceived(const QStringList&);
146 
147 public:
148  boost::signal<void ()> signal_preSimulationModelSetSave;
149  boost::signal<void ()> signal_categoriesReverted;
150  boost::signal<void ()> signal_deployedCountriesReverted;
151  boost::signal<void ()> signal_overlayLayersReverted;
152  boost::signal<void (bool)> signal_simulationModelSetSaved;
153  boost::signal<void (DtModelSetEntry*, const DtEntityType&)> signal_opdEntryAdded;
154 
155 protected:
158  virtual QString parseCommandLine(const QString& command, QString& commandLine, QStringList& files) const;
159 
160 protected:
161  bool mySaving;
164 };
165 
166 DT_DLL_simulationObjectEditorimpl QString cleanupFilename(const QString&);
167 
170 {
171 public:
174 
177 
180 
182  static void registerInstance(makVrv::DtDe&, DtSimulationObjectEditorAppEventControllerCreator*);
183 
186 
187 protected:
189 };

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)