VR-Forces 4.8 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 
11 #if !defined(Q_MOC_RUN)
14 #include <vrvUtil/DtUnicode.h>
19 #endif
20 
21 #include <QObject>
22 
24 class DtFilename;
25 class DtModelSetEntry;
26 
27 static const char* DtVisualsModified = "visuals-modified";
28 static const char* DtVisualsChanged = "visuals-changed";
29 static const char* DtBoundingVolumeDifferent = "DtBoundingVolumeDifferent";
30 static const char* DtBoundingSupportPointsDifferent = "DtBoundingSupportPointsDifferent";
31 
32 namespace makVrv
33 {
34  class DtDe;
35 }
36 
37 namespace makVrf
38 {
39  class DtVrfGuiForceManager;
40 }
41 
43 {
44  Q_OBJECT
45 
46 public:
47 
50 
53 
54 public:
55  virtual bool loadSimulationModelSet(const DtSimulationModelSet&);
56  virtual bool saveSimulationModelSet(const DtFilename&, bool signalSave = true);
57  virtual bool isModified() const;
58  virtual bool saveIfChanged();
59 
60  makVrf::DtVrfGuiForceManager* forceManager();
61 
62 public:
63  DtSimulationModelSetLoader* simulationModelSetLoader() const;
64 
67  virtual void addNewDataFile(const std::string&);
68 
71  virtual DtModelSetEntry* addNewEntity(const DtObjectType& base, const DtObjectType& newType, const DtString& name,
72  const DtRwNLengthStringVector& categories = DtRwNLengthStringVector("categories"),
73  const makVrv::DtUnicode& elementDefinition = makVrv::DtUnicode::fromAscii(""), bool renameAmmoName = false);
74 
77  virtual DtModelSetEntry* addNewEntity(const std::string& platformType, const DtObjectType& newType, const DtString& name,
78  const DtRwNLengthStringVector& categories = DtRwNLengthStringVector("categories"),
79  const makVrv::DtUnicode& elementDefinition = makVrv::DtUnicode::fromAscii(""));
80 
82  {
83  return myLauncherFileCommChannel;
84  }
85 
86  void setSaving(bool b)
87  {
88  mySaving = b;
89  }
90 
91  bool saving() const
92  {
93  return mySaving;
94  }
95 
96  virtual void processRevertExisting(const QString&);
97 
98  virtual void promoteSelectedEntity();
99  virtual void promoteSelectedSystem();
100  virtual bool promoteSimulationObject(const DtObjectType&, const DtRwNLengthStringVector& categories);
101 
103  virtual void addNewMunitionEntry();
104 
106  virtual DtString addNewAmmunitionEntry(bool andSelect = false);
107 
108  virtual void processFileAddDataFile();
109  virtual void processAssignTagsBasedOnVisuals();
110  virtual void processFileOpenEntityEditorFile();
111  virtual void processFileSaveEntityEditorFile(bool signalSave = true);
112  virtual void processDeleteExisting();
113  virtual void processCreateNewEntity(int onlyForKind = -1);
114  virtual void processCreateNewSimulationObjectGroup();
115  virtual void processCreateNewRandomizedObject();
116  virtual void procesMakeSelectedTemplate();
117  virtual void processCreateSystemFromExisting();
118  virtual void processCreateSystemFromTemplate();
119  virtual void processCreateFromExisting();
120  virtual void processPromoteExisting();
121  virtual void processEditIncludeFiles();
122  virtual void processEditSimulationObjectGroupConnection();
123  virtual void processEditBallisticMissileMovementFiles();
124  virtual void processEditPrecisionMovementFiles();
125  virtual void processEditCategories();
126  virtual void processEditSystemCategories();
127  virtual void processEditDeployableCountries();
128  virtual void processEditOverlayLayers();
129  virtual void processEditUpgradeOldSMS();
130  virtual void processFileApplyPlatformFileUpdates();
131  virtual void processRevertCategories();
132  virtual void processRevertSystemCategories();
133  virtual void processRevertDeployedCountries();
134  virtual void processRevertOverlayLayers();
135  virtual void processFileNewSimulationModelSet();
136  virtual void processLoadSmsFile(const QString& file);
137  virtual void processEditForces();
138  virtual void processEditSystemFiles();
139  virtual void processEditRollUpRules();
140  virtual void processEditAssemblyItems();
141  virtual void processEditActivities();
142  virtual void processEditAssemblies();
143  virtual void processComputeBVAndSP();
144  virtual void processEnableEditing();
145  virtual void processSMSProperties();
146 
147 protected slots:
150  virtual void opdEditorMessage();
151 
152  virtual void commFileMessagesReceived(const QStringList&);
153 
154 public:
155  boost::signals2::signal<void ()> signal_preSimulationModelSetSave;
156  boost::signals2::signal<void ()> signal_categoriesReverted;
157  boost::signals2::signal<void ()> signal_deployedCountriesReverted;
158  boost::signals2::signal<void ()> signal_overlayLayersReverted;
159  boost::signals2::signal<void (bool)> signal_simulationModelSetSaved;
160  boost::signals2::signal<void (DtModelSetEntry*, const DtEntityType&)> signal_opdEntryAdded;
161 
162 protected:
165  virtual QString parseCommandLine(const QString& command, QString& commandLine, QStringList& files) const;
166 
167 protected:
168  bool mySaving;
171 };
172 
173 DT_DLL_simulationObjectEditorimpl QString cleanupFilename(const QString&);
174 
177 {
178 public:
181 
184 
187 
189  static void registerInstance(makVrv::DtDe&, DtSimulationObjectEditorAppEventControllerCreator*);
190 
193 
194 protected:
196 };
Creator for the list.
Definition: simulationObjectEditorAppEventController.h:176
Virtual base class.
Definition: DtVirtualBaseClass.h:22
A unicode string.
Definition: DtUnicode.h:33
static const char * DtVisualsChanged
Definition: simulationObjectEditorAppEventController.h:28
DtRwNLengthStringVector is a named, readable/writable vector of strings of arbitrary length...
Definition: rwNLengthStringVector.h:28
DT_DLL_simulationObjectEditorimpl QString cleanupFilename(const QString &)
Extends the force manager to add country codes.
Definition: vrfGuiForceManager.h:24
boost::signals2::signal< void(DtModelSetEntry *, const DtEntityType &)> signal_opdEntryAdded
Definition: simulationObjectEditorAppEventController.h:160
makVrf::DtFileCommChannel & launcherFileCommChannel()
Definition: simulationObjectEditorAppEventController.h:81
Definition: objectType.h:27
Description: A model is a set of items that defines a model to create in the back-end from the front-...
Definition: modelSetEntry.h:24
boost::signals2::signal< void()> signal_deployedCountriesReverted
Definition: simulationObjectEditorAppEventController.h:157
static const char * DtVisualsModified
Definition: simulationObjectEditorAppEventController.h:27
boost::signals2::signal< void()> signal_overlayLayersReverted
Definition: simulationObjectEditorAppEventController.h:158
Contains makVrv::DtVirtualBaseClass class.
Definition: simulationModelSetLoader.h:89
makVrv::DtDe & myDe
Definition: simulationObjectEditorAppEventController.h:169
Definition: simulationObjectEditorAppEventController.h:42
boost::signals2::signal< void()> signal_categoriesReverted
Definition: simulationObjectEditorAppEventController.h:156
static const char * DtBoundingVolumeDifferent
Definition: simulationObjectEditorAppEventController.h:29
boost::signals2::signal< void()> signal_preSimulationModelSetSave
Definition: simulationObjectEditorAppEventController.h:155
makVrf::DtFileCommChannel myLauncherFileCommChannel
Definition: simulationObjectEditorAppEventController.h:170
boost::signals2::signal< void(bool)> signal_simulationModelSetSaved
Definition: simulationObjectEditorAppEventController.h:159
bool saving() const
Definition: simulationObjectEditorAppEventController.h:91
A simulation model set contains all the information that can be used to support a scenario either for...
Definition: simulationModelSet.h:31
bool mySaving
Definition: simulationObjectEditorAppEventController.h:168
static const char * DtBoundingSupportPointsDifferent
Definition: simulationObjectEditorAppEventController.h:30
void setSaving(bool b)
Definition: simulationObjectEditorAppEventController.h:86
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
static DtUnicode fromAscii(const std::string &ascii)
Create a unicode string from an ascii string, the string MUST be zero terminated if the length is not...
The DtFileCommChannel class is a simple class that will use two files based on the given output file ...
Definition: fileCommChannel.h:28
makVrv::DtDe & myDe
Definition: simulationObjectEditorAppEventController.h:195
#define DT_DLL_simulationObjectEditorimpl
This file is used to determine how to build.
Definition: simulationObjectEditorImplDefines.h:32

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)