VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
simulationObjectEditorApplication.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2014 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
14 #include <vrvCore/DtDe.h>
16 
20 
21 #include <vlutil/vlString.h>
22 #include <matrix/vlVector.h>
23 
24 #include <QtCore/QString>
25 
27 class DtBehaviorUi;
28 class DtBehaviorCanvas;
29 class DtUiElement;
32 class DtDisplayWidget;
35 
36 const char SETTINGS_DIRECTORY[] = "settingsDirectory";
37 const char SMS_FILE[] = "smsFile";
38 const char OPD_EDITOR_LOCATION[] = "opdEditorLocation";
39 const char VRF_LAUNCHER_LOCATION[] = "vrfLauncherLocation";
40 const char VISUAL_TERRAIN[] = "visualTerrain";
41 const char FILE_DIALOG_PRIORITY[] = "fileDialogPriority";
42 const char SNAP_TO_GRID[] = "snapToGrid";
43 const char APP_DATA_DIR[] = "appDataDir";
44 const char DATA_DIR[] = "dataDir";
45 const char VRF_LAYOUT_SETTINGS_FILE[] = "layoutSettingsFile";
46 
47 namespace makVrv
48 {
49  class DtDeMainWindowProvider;
50 }
51 
55 {
56 public:
59 
61  virtual ~DtGuiOnlyMenuAssembler();
62 
63 protected:
64  virtual QMenuBar* menuBar();
65  virtual QWidget* menuWindow();
66 };
67 
69 {
70 public:
71 
74  {
75  }
76 
79  {
80  }
81 
84 
85 };
86 
92 {
93 public:
95  DtGuiOnlyDe();
96 
98  virtual ~DtGuiOnlyDe();
99 
100 protected:
102  virtual InitializationResult initialize() { return initialize(false, false); };
103  virtual InitializationResult initialize(bool abortOnFailure, bool useLicenseErrorDialog);
104  virtual void postInitialize();
105 
106  virtual void setDeInitializer(const makVrv::DtDeInitializer& initializer);
107 
108  virtual void tick(double);
109 };
110 
114 {
115 public:
116 
119 
122 
126  virtual void initialize( int argc, char** argv );
127 
130  virtual std::string startupValue(const std::string&) const;
131 
133  virtual void setStartupValue(const std::string& key, const std::string& value);
134 
137 
138  virtual void run();
139 
141  virtual void setMainWindowCreatorFunction(makVrv::DtDeMainWindowProvider*);
142 
143 public:
147 
152  virtual void addParameterType(const char* controllerName, const char* likeUi, DtSimObjectParametersCreatorFcn fcn = NULL) ;
153  virtual void addController(const char* controllerName, const char* descriptorName, DtComponentDescriptorCreatorFcn fcn = NULL) ;
154  virtual void addSensor(const char* sensorName, const char* descriptorName, DtComponentDescriptorCreatorFcn fcn = NULL) ;
155  virtual void addActuator(const char* actuatorName, const char* descriptorName, DtComponentDescriptorCreatorFcn fcn = NULL) ;
156 
158  virtual void addUserExtentsion(const DtString& type, DtVrfSRUserExtensionCreatorFcn fcn) ;
159 
160  virtual DtReaderWriterClassDocDB* parameterDocDB() const;
161 
163 
164 protected:
166  virtual void setupMenu() = 0;
167 
168  virtual void loadTranslationFiles(const std::string&);
169 
170  virtual void assemble();
171 
172  virtual void dePostInitialize();
173 
175  virtual void loadPluginModulesExt();
176 
178  virtual bool updateCurrentGuiConfiguration();
179 
184  virtual bool loadParameterDocDB(DtReaderWriterClassDocDB& parameterDocDB);
185 
187  virtual DtReaderWriterClassDocDB* createParameterDocDB() const;
188 
189 protected:
190  std::map<std::string, std::string> myStartupValues;
191  std::map<DtString, DtVector> myVisualPlacements;
194 };
195 
198 {
199 public:
200 
203 
206 
210  virtual void initialize( int argc, char** argv );
211 
214 
216  virtual DtSimulationObjectEditorAppEventController* appEventController();
217 
219  virtual DtSimulationObjectEditorWindow* mainWindow();
220 
222  virtual void addVisualTypeMapping(const DtString&, const DtVector&);
223  virtual DtVector visualPlacement(const DtString&);
224 
226  virtual DtDisplayWidget* editingWindow();
227 
228  virtual QString sematicText(int) const;
229 
230 protected:
232  virtual void setupMenu();
233  void initSemanticsTextMapping();
234 
235  virtual void loadPluginModules();
236 
237 public:
239  boost::signal<void ()> signal_preBehaviorUiCreate;
240 
242  boost::signal<void (DtBehaviorUi*)> signal_postBehaviorUiCreate;
243 
245  boost::signal<void (DtBehaviorCanvas*, std::set<makVrf::DtEntityMapperKey>, std::string)> signal_preBehaviorCanvasCreate;
246  boost::signal<void (DtBehaviorCanvas*, std::vector<DtComponentSystemDefinition*>)> signal_preSystemBehaviorCanvasCreate;
247 
249  boost::signal<void (DtBehaviorCanvas*, QWidget*, std::set<makVrf::DtEntityMapperKey>, std::string)> signal_postBehaviorCanvasCreate;
250  boost::signal<void (DtBehaviorCanvas*, QWidget*, std::vector<DtComponentSystemDefinition*>)> signal_postSystemBehaviorCanvasCreate;
251 
253  boost::signal<void (DtUiElement*)> signal_uiElementModified;
254 
255 protected:
257  std::map<int, QString> mySemanticsTextMapping;
258 };

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)