VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
displayDefinitionWidget.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2020 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 
8 #pragma once
9 
10 #if !defined(Q_MOC_RUN)
11 
12 
17 #include <vlpi/entityType.h>
21 #include <vrfStateData/dataGate.h>
22 
23 #include <vrvCore/DtWindow.h>
28 #include <matrix/vlQuaternion.h>
29 #endif
30 
31 #include <QImage>
32 #include <QWidget>
33 
34 class DtModelSetEntry;
35 class QComboBox;
37 class QHBoxLayout;
38 class QLabel;
39 class QPushButton;
41 class DtSymbolEditor;
42 class DtMarkerVisualizer;
43 class QCheckBox;
44 class QLineEdit;
45 class QFrame;
46 class QSpinBox;
47 class QGridLayout;
48 class QStandardItem;
49 class QTreeWidget;
50 class QToolButton;
51 class QAbstractButton;
52 class QVBoxLayout;
56 class DtDetonationWidget;
57 
58 namespace makVrf
59 {
60  class DtVrfObjectFacadeInterface;
61  class DtEnvironmentalFacadeCollection;
62  class DtForceSelectionEntryWidget;
63  class DtToolButtonWrapperWidget;
64 }
65 
66 namespace makArchives
67 {
68  class DtVisualizerDefinitionSetRecords;
69 }
70 
71 namespace makVrv
72 {
73  class DtDe;
74  class DtPluginManager;
75  class DtOsgAdapterQtWidget;
76  class DtDeMainWindowProvider;
77  class DtElementDefinitionManager;
78  class DtElementDefinition;
79  class DtChannelManager;
80  class DtChannel;
81  class DtObserver;
82  class DtOsgObserverObject;
83  class DtWindowTextAgent;
84  class DtWidgetLabelAgent;
85  class DtVisualizerDefinitionSet;
86  class DtVrvApplicationConfiguration;
87  class DtCachedIntersectorsContainer;
88 }
89 
92 {
93  Q_OBJECT
94 
95 public:
96 
98  DtDisplayWidget(makVrv::DtDe& appDe, makVrv::DtDe* de, QWidget * parent = 0, Qt::WindowFlags f = 0);
99 
100  DtDisplayWidget();
101 
103  virtual ~DtDisplayWidget() override;
104 
105  makVrv::DtOsgAdapterQtWidget* adapterWidget();
106  virtual QSize adapterSize() const;
107  virtual bool adapterHasFocus() const;
108 
109  virtual void init();
110  virtual void quitting();
111 
112  virtual void buildAdapterWidget();
113 
114  virtual void buildTicker();
115 
116  const std::vector<makVrv::DtModelSetId>& modelSets() const
117  {
118  return myModelSets;
119  }
120 
121  int observerMode(int i) const
122  {
123  std::map<int, int>::const_iterator iter = myModeKeyMap.find(i);
124 
125  if (iter != myModeKeyMap.end())
126  {
127  return iter->second;
128  }
129 
130  return 0;
131  }
132 
133  const std::map<int, int>& modeMap() const
134  {
135  return myModeKeyMap;
136  }
137 
138  boost::signals2::signal<void()> signal_channelsInitialized;
139 
140  virtual void initializeObservers();
141 
142  QImage contents();
143 
144  boost::signals2::signal<void()> signal_resized;
145 
146 protected:
147 
148  virtual void createIg();
149 
150  virtual void preIgInitialize();
151 
152  virtual void overrideIgFunctionality();
153 
154  virtual void igInitialize();
155 
156  virtual void postIgInitialize();
157  virtual void resizeEvent(QResizeEvent* event) override;
158 
159 protected:
163  std::vector<makVrv::DtModelSetId> myModelSets;
164  std::map<int, int> myModeKeyMap;
165 };
166 
168 {
169 
170 public:
171 
173 
176 
177 protected:
178 
180 
181 };
182 
184 {
185  Q_OBJECT
186 
187 public:
188  typedef boost::function<void()> AskToChangeIfShared;
189  typedef std::vector<makVrf::DtVrfObjectFacadeInterface*> Facades;
190 
191  DtDisplayDefinitionWidget(makVrv::DtDe& appDe, QWidget* p);
192 
193  virtual ~DtDisplayDefinitionWidget() override;
194 
195  virtual void init();
196 
197  virtual void edit(const makVrf::DtEntityMapperKey&, bool move = true, bool fromSelection = false);
198  virtual void clearContents();
199 
201  {
202  return myDe;
203  }
204 
205  virtual void startSimulation();
206  virtual void stopSimulation();
207 
208  virtual bool hasOneDiGuy() const;
209 
210  virtual void revertExisting(const std::set<makVrf::DtEntityMapperKey>& key);
211 
212  virtual void updateStatus();
213 
214  virtual void preSimulationModelSetSave();
215 
216  virtual void simulationModelSetLoaded();
217  virtual void callReset();
218 
219  virtual void cloneEntry(const DtEntityType& oldType, const DtEntityType& newType, DtModelSetEntry*);
220  virtual void uiEvent(const DtUiElementEvent&);
221 
222  virtual void setCompressedView(bool);
223 
224  virtual void setBlockOcean(const bool& set);
225  virtual void moveObserverPosition(bool isMoved);
226 
227 
228  virtual void disable();
229  virtual void enable();
230  DtDisplayWidget* displayWidget() { return myDisplayWidget; };
231 
232  virtual MarkerColor determineMarkerColor(const int markNum);
233 
234  virtual void setOnlyVisualControlsEnabled(bool);
235  virtual bool askToChangeIfShared(AskToChangeIfShared);
236 
237  virtual void reeditForModelSet(makVrv::DtModelSetId);
238 
239  virtual void setSpeedMultiplier(double d);
240  virtual void setHeadingInDegrees(double d);
241  virtual DtVector32 velocityVector() const;
242 
243  bool showIMGui() const;
244  virtual void setShowIMGui(bool);
245 
246  void updateDisplayIfSameElementDefinition(makVrv::DtElementDefinition*);
247  virtual void resetEntityOrigin();
248 
249  bool blockOcean() const
250  {
251  return myBlockOcean;
252  }
253 
254  bool wantsToSimulate() const
255  {
256  return myWantsToSimulate;
257  }
258 
259  bool showMarkersAs2D() const
260  {
261  return myShowMarkersAs2D;
262  }
263 
264  bool showMarkerLabels() const
265  {
266  return myShowMarkerLabels;
267  }
268 
269  bool showMarkers() const
270  {
271  return myShowMarkers;
272  }
273 
274  bool showBoundingVolumes() const
275  {
276  return myShowBoundingVolumes;
277  }
278 
279  const Facades& facades() const
280  {
281  return myFacades;
282  }
283 
284  bool isTacticalGraphic() const
285  {
286  return myShowingTacticalGraphic;
287  }
288 
289  bool isUnit() const
290  {
291  return myShowingAggregate;
292  }
293 
294  bool isEntity() const
295  {
296  return !isTacticalGraphic() && !isUnit();
297  }
298 
300  {
301  return myElementDefinition;
302  }
303 
305  {
306  return myManager;
307  }
308 
310  {
311  return myKey;
312  }
313 
314  bool showingSpotReports() const
315  {
316  return (spotReportMode() != -1);
317  }
318 
320  {
321  return myShowOceanForWaterVehicles;
322  }
323 
324  virtual void setShowOceanForWaterVehicles(bool);
325 
326  virtual void setKeepVisualModelEditorUpToDate(bool);
328  {
329  return myKeepVisualModelEditorUpToDate;
330  }
331 
332  typedef std::map<QString, DtMarkerVisualizer*> Markers;
333  const Markers& markers() const { return myMarkers; };
334  virtual void moveObserverBack(float meters, double time = 1.0);
335  virtual void moveObserverForward(float meters, double time = 1.0);
336  virtual void moveObserverLeft(float meters, double time = 1.0);
337  virtual void moveObserverRight(float meters, double time = 1.0);
338  virtual void updateVisualModelEditorWithCurrentSelection();
339  virtual QSize adapterSize() const;
340  virtual bool adapterHasFocus() const;
341  virtual DtExtent terrainExtent() const;
342 
343  virtual bool displayEnabled() const;
344 
346  virtual void selectModelSet(makVrv::DtModelSetId, bool spotReportMode = false);
347 
348  virtual void draw2DIcon();
349  virtual void resetVisuals();
350 
351  virtual void visualBaseChangedForTacticalGraphic(const std::string& schema, const std::string& visualizer);
352  virtual void visualBaseChangedForEntity(makVrv::DtElementDefinition*);
353 
354  virtual void setEnvironmentalLabel(const std::string&, bool andSetInEnv = false);
355  virtual void updateVisualizerModifiedData();
356 
357  virtual bool changeFromLineToVolumetricLine();
358  virtual bool changeFromVolumetricLineToLine();
359  virtual bool changeFrom2DAreaTo3DArea();
360  virtual bool changeFrom3DAreaTo2DArea();
361  virtual void clearStoredViewFlags();
362  virtual void chooseObserverView(int);
363  virtual void setCheckMaintainObserverPosition(bool);
365  {
366  return myCheckMaintainObserverPosition;
367  }
368 
369  virtual void setViewMagnification(double);
370  virtual void changeObserverViewMode(int mode, int displaySelection, makVrf::DtVrfObjectFacadeInterface*);
371  boost::signals2::signal<void(bool)> signal_compressedChanged;
372  boost::signals2::signal<void()> signal_visualizersHaveBeenModified;
373  boost::signals2::signal<void()> signal_disabled;
374  boost::signals2::signal<void()> signal_enabled;
375  boost::signals2::signal<void(bool)> signal_showingSpotReports;
376  boost::signals2::signal<void(const Facades&)> signal_facadesCreated;
377  boost::signals2::signal<void(const Facades&)> signal_facadesRecreated;
378  boost::signals2::signal<void(makVrv::DtModelSetId)> signal_reeditForModelSet;
379  boost::signals2::signal<void()> signal_visualsModified;
380  boost::signals2::signal<void()> signal_aboutToChangeDefaultView;
381  boost::signals2::signal<void(int, int)> signal_viewChangeComplete;
382  boost::signals2::signal<void()> signal_checkedMaintainObserverPosition;
383  boost::signals2::signal<void()> signal_aboutToCheckMaintainObserverPosition;
384  boost::signals2::signal<void(int choice, bool&, int&)> signal_shouldChangeObserverMode;
385  boost::signals2::signal<void()> signal_initializeFacadeForSimulation;
386  boost::signals2::signal<void(int&)> signal_observerModeAboutToChange;
387 
388 protected:
389  virtual void simulate();
390  virtual void initializeFacadeForSimulation();
391  virtual void enableEditButton();
392  virtual bool checkAndCreateDiGuyModelDefinition(const makVrf::DtEntityMapperKey&);
393 
394  virtual makVrv::DtUniqueID uniqueIDForModelSet() const;
395 
396  virtual void makeSureAllMilStdVisualizersAreTheSameAs(makVrv::DtModelSetId modelSet);
397 
398  virtual void postInitialize();
399 
400  virtual void createNewEntry(const DtEntityType& newType, DtModelSetEntry* model, const DtEntityType& basedOnType = DtEntityType(),
401  bool resetTacticalGraphic = true, bool force = false, const makVrv::DtUnicode& elementDefinitionName = makVrv::DtUnicode::fromAscii(""),
403  virtual void pruneAttribute(const std::string& attribure, makArchives::DtVisualizerDefinitionSetRecords& rec) const;
404 
405  virtual DtVector visualPlacementFor(makVrv::DtModelSetId set, makVrf::DtVrfObjectFacadeInterface*) const;
406  virtual double groundHeight(const DtVector&) const;
407 
408  virtual void createOrUpdatePositionMarker(const DtUiElementEvent&);
409  virtual void destroyPositionMarker(const DtUiElementEvent&);
410  virtual void setBoundingVolume(const DtUiElementEvent&);
411  virtual void runAfterCallFunction();
412 
413  virtual void updateMarkerAttachments();
414 
415  virtual void changeTrailingEffect(const QString&);
416 
417  virtual void showEvent(QShowEvent*) override;
418 
421  virtual void mergeVisualizerAttributes(makVrv::DtModelSetId modelSet, const makVrv::DtVisualizerDefinitionSet& source, makVrv::DtElementDefinition* target) const;
422 
424  virtual void createEntryIfNoEntry(const DtEntityType&, bool force = false);
425  virtual void createEntityIfNoEntry(const DtEntityType&, bool force = false);
426  virtual void createTacticalGraphicIfNoEntry(const DtEntityType&, bool force = false);
427  virtual void createAggregateIfNoEntry(const DtEntityType&, bool force = false);
428 
429  virtual bool hasScribeOnExtent() const;
430  virtual void setShowScribeOnExtent(bool);
431 
432  virtual void resetMarkers();
433 
434  virtual DtString createVisualizerNameFor(makVrv::DtElementDefinitionManager*, DtModelSetEntry* entry);
435  virtual void opdEntryAdded(DtModelSetEntry* model, const DtEntityType&);
436  virtual void newDataFilesAdded(const std::vector<DtSimulationModelSetLoader::EntityData*>&);
437  virtual void visualMappingsModified(DtSimulationModelSetLoader::EntityData*);
438  virtual std::string modeForModelSet(makVrv::DtModelSetId s);
439  virtual void setupForSimulationObjectGroup();
440  virtual void zoomToExtents();
441 
442  virtual bool isTacticalSmoke(const makVrf::DtEntityMapperKey&) const;
443  virtual void enableDynamicOceanAndPosition();
444 
445  virtual void uiElementModified(DtUiElement*);
446 
447  virtual void resetObserverViewModeToDefault(int tickCount, bool changeViewMode);
448 
449  virtual void setMarkingDecal(const std::string& annotation, const std::string& value);
450 
451  virtual void setupForces();
452 
453 
454  virtual int spotReportMode() const;
455  virtual void spotReportEditingChanged();
456 
457  virtual void displayWidgetResized();
458  virtual void isBuoyancyAvailable();
459  virtual void areVisualMarkingsAvailable();
460  virtual void areDetonationsAvailable();
461  virtual void createEditors();
462  virtual void resetMaintainObserverPosition();
463  virtual bool checkMaintainObserverPosition(bool force = false);
464  virtual void finishUpVisuals();
465 
466 public slots:
467  virtual void observerModeChanged();
468  virtual void saveToObjectScreenGrabs();
469  virtual void resetView();
470  virtual void edit2DVisuals();
471  virtual void editVisuals();
472  virtual void forcesModified();
473  virtual void setShowMarkerLabels(bool);
474  virtual void setShowMarkers(bool);
475  virtual void setShowMarkersAs2D(bool);
476  virtual void setShowBoundingVolumes(bool);
477  virtual void buoyancyDialogDestroyed();
478 
479  virtual bool setupForTacticalGraphic(const DtEntityType&, const std::vector<makVrv::DtModelSetId>& modelSets);
480  virtual bool setupForEntity(const DtEntityType&, const std::vector<makVrv::DtModelSetId>& modelSets);
481  virtual void visualizerModifiedWithReedit(bool reedit);
482  virtual void modelDefinitionModified();
483  virtual void visualizerModified();
484  virtual void visualsHaveBeenModified();
485  virtual void onChangeDefaultView();
486  virtual void onChangeDefaultViewWithObserverReset();
487  virtual void restoreObserverView();
488  virtual QString markerKey(const DtUiElementEvent& e) const;
489  virtual void shouldRedisplayListIcons();
490 
491 protected slots:
492  virtual void buoyancyDestroyed();
493  virtual void reedit();
494  virtual void finalizeModelChange();
495  virtual void setDiGuyData(const DtDiGuyInformation& diGuyData);
496  virtual void changeViewMode(int);
497  virtual void calculateSupportPoints();
498  virtual void calculateBoundingVolume();
499  virtual void forceComboChanged();
500  virtual void buoyancyModelRejected();
501  virtual void editBuoyancy();
502  virtual void displayDetonations();
503  virtual void editVisualMetaData();
504 
505 signals:
506  void visualsModified();
507  void uiElementEvent(const DtUiElementEvent&);
508  void redisplayListIcons();
509 
510 public:
513  QVBoxLayout* myCanvasLayout;
516  QHBoxLayout* myMainLayout;
517  QWidget* myMainCanvas;
524 
531 
536 
539 
542 
549 
550 protected:
555 
557 
572  bool myEditingVisuals = false;
573  std::map<int, int> myViewSelection;
575 
577 
581 
583  {
584  ElementInformation() : manager(0), definition(0), type(makVrv::DtElementDefinitionTypeManager::BuiltInElementTypes_End) {};
586  : manager(mgr), definition(def), type(t)
587  {
588  }
590  : manager(orig.manager), definition(orig.definition), type(orig.type)
591  {
592  }
593 
597  };
598 
599  typedef std::map<std::string, ElementInformation> ElementDefinitionMap;
600  typedef std::map<bool, ElementDefinitionMap> ElementDefinitionMapByType;
601 
603 
604  bool myAllIs2D;
605 
612 
613  typedef std::pair<DtVector, DtTaitBryan> CameraInfo;
614  typedef std::map<int, CameraInfo> CameraMap;
618 
620 
623 
626  std::string myLabel;
633  DtVector myObserverPosition, myModifiedObserverPosition;
635 
636  std::vector<makVrv::DtWidgetLabelAgent*> myInSpotReportMode;
637 
641 
642  std::set<std::string> myAlreadyAskedForShared;
648 
650 
651  makVrv::DtCachedIntersectorsContainer* myCachedIntersectorManager = nullptr;
654  boost::signals2::connection myChangeObserverViewConnection;
655  boost::signals2::connection myReeditConnection;
656  boost::signals2::connection myPostReeditFunctionConnection;
657  boost::signals2::connection myResetObserverViewToDefault;
659 
667  std::string myCurrentAction;
669 
673 
674  std::vector<DtUiElementEvent> myQueuedEvents;
676 };
677 
679 {
680 public:
683 
685  virtual ~DtUiDisplayWidgetCanvas() override;
686 
688 
690  virtual void processUiEvent(const DtUiElementEvent&) override;
691 
692  virtual DtString uniqueName() const override {
693  return "DtUiDisplayWidgetCanvas";
694  }
695 
696  virtual void setEnabled(bool b) override;
697 
698 protected:
699  virtual void createControls(QWidget*) override;
700  virtual void setFromParameters(const std::vector<DtReaderWriter*>& parentRw) override;
701 };
702 
704 {
705 public:
707  DtDisplayDefinitionWidgetHolder(makVrv::DtDe& de, QWidget* parent);
708 
710  virtual ~DtDisplayDefinitionWidgetHolder() override;
711 
712  static DtDisplayDefinitionWidget* instance(makVrv::DtDe& de, QWidget* parent);
713 
714  DtDisplayDefinitionWidget* displayDefinitionWidget() { return myWidget; };
715 
716 protected:
717  DtDisplayDefinitionWidget* myWidget;
718 };
719 
721 {
722 public:
724 
725  virtual makVrv::DtVirtualBaseClass* findInstance(const std::string& instanceName) const override;
726  virtual void createDebugLog(const std::string& fileName, makVrv::DtDebugLog::PrintLevel level) override;
727  virtual void postInitialize() override;
728 
729  virtual ~DtDisplayWidgetDe() override;
730 
731  virtual void quit() override;
732 
733  DtDe& appDe()
734  {
735  return myAppDe;
736  }
737 
738  virtual void updateScene() override;
739  virtual void renderTick(double elapsedTime) override;
740 
741 protected:
742  DtDe& myAppDe;
744 };
Definition: simulationModelSetLoader.h:170
std::map< QString, DtMarkerVisualizer * > Markers
Definition: displayDefinitionWidget.h:332
DtQuaternion myObserverOffsetRotation
Definition: displayDefinitionWidget.h:634
makVrv::DtDe * myDe
Definition: displayDefinitionWidget.h:160
This class will show entries for all the items that can be modified as part of the visual (non spot r...
Definition: visualSettingsWidget.h:33
QLabel * myDefaultViewLabel
Definition: displayDefinitionWidget.h:521
makVrv::DtElementDefinition * definition
Definition: displayDefinitionWidget.h:595
QGridLayout * myVisualDisplayChangeLayout
Definition: displayDefinitionWidget.h:541
ElementInformation(makVrv::DtElementDefinitionManager *mgr, makVrv::DtElementDefinition *def, makVrv::DtElementDefinitionTypeManager::BuiltInElementTypes t)
Definition: displayDefinitionWidget.h:585
BuiltInElementTypes
These types are all automatically registered when the manager is created. This enum is linked with Dt...
Definition: DtElementDefinitionManager.h:572
QToolButton * myShowSwitchNodes
Definition: displayDefinitionWidget.h:528
makVrv::DtDe * de()
Definition: displayDefinitionWidget.h:200
Widget that allows the selection of a force.
Definition: forceSelectionEntryWidget.h:62
int observerMode(int i) const
Definition: displayDefinitionWidget.h:121
bool mySettingUpEditor
Definition: displayDefinitionWidget.h:639
boost::signals2::signal< void(const Facades &)> signal_facadesCreated
Definition: displayDefinitionWidget.h:376
Abstract Base class.
Definition: DtWindow.h:25
Definition: entityMapperKey.h:19
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
boost::function< void()> AskToChangeIfShared
Definition: displayDefinitionWidget.h:188
A unicode string. DtUnicode stores a UTF-16 encoded unicode string. Code Point, a Unicode character...
Definition: DtUnicode.h:33
A creator class for DtWindow instances.
Definition: DtWindow.h:130
QToolButton * myShowVisualEffects
Definition: displayDefinitionWidget.h:527
bool isUnit() const
Definition: displayDefinitionWidget.h:289
DtOsgAdapterQtWidget provides the mechanism for embedding an OSG context into a Qt widget...
Definition: DtOsgAdapterQtWidget.h:52
DtDisplayWidget * myWidget
Definition: displayDefinitionWidget.h:179
const std::vector< makVrv::DtModelSetId > & modelSets() const
Definition: displayDefinitionWidget.h:116
std::vector< makVrv::DtWidgetLabelAgent * > myInSpotReportMode
Definition: displayDefinitionWidget.h:636
QWidget * myVisualDisplayChangeWidget
Definition: displayDefinitionWidget.h:540
Definition: markerVisualizer.h:37
std::vector< DtUiElementEvent > myQueuedEvents
Definition: displayDefinitionWidget.h:674
Definition: markerVisualizer.h:29
virtual void quit()
Call this method to quit and exit the application.
virtual void createControls(QWidget *parent)
If additional widgets or connections need to be made do it here. The parent is the myWidget member...
makVrv::DtElementDefinition * myElementDefinition
Definition: displayDefinitionWidget.h:579
bool myAggregateModified
Definition: displayDefinitionWidget.h:609
QGridLayout * myVisualModificationLayout
Definition: displayDefinitionWidget.h:538
bool myCallAfterEditFunction
Definition: displayDefinitionWidget.h:644
bool myShowOceanForWaterVehicles
Definition: displayDefinitionWidget.h:571
virtual void setFromParameters(DtReaderWriter *parentRw)
Calls setFromParameters with std::vector of parameter.
QToolButton * myDisplayDetonations
Definition: displayDefinitionWidget.h:535
bool myKeepVisualModelEditorUpToDate
Definition: displayDefinitionWidget.h:675
bool myShowingTacticalGraphic
Definition: displayDefinitionWidget.h:627
int myLastSelectedObserverMode
Definition: displayDefinitionWidget.h:649
Facades myFacades
Definition: displayDefinitionWidget.h:576
Definition: displayDefinitionWidget.h:183
Definition: displayDefinitionWidget.h:720
bool isTacticalGraphic() const
Definition: displayDefinitionWidget.h:284
DT_DLL_VRVCORE DtTaitBryan level(const DtCoordinateSystem &cs, const DtVector &localOrigin, double topoHeading)
Returns a level orientation with the topographic heading.
ElementDefinitionMapByType myElementDefinitionMap
Definition: displayDefinitionWidget.h:602
QSize myDisabledSize
Definition: displayDefinitionWidget.h:556
boost::signals2::signal< void(bool)> signal_showingSpotReports
Definition: displayDefinitionWidget.h:375
bool myNeedsResetView
Definition: displayDefinitionWidget.h:660
bool myDisplayEnabled
Definition: displayDefinitionWidget.h:640
virtual void processUiEvent(const DtUiElementEvent &)
Process ui event. Default does nothing.
Definition: uiElement.h:236
DtVisualSettingsWidget * myVisualSettingsWidget
Definition: displayDefinitionWidget.h:547
virtual DtWindow * create(DtDe &, DtWindowConfiguration &)=0
Create an window instance.
virtual DtString uniqueName() const override
Returns a unique name for this element. If there is a myValue returns the name of that value...
Definition: displayDefinitionWidget.h:692
Contains makVrv:DtSelectionManager class.
makVrf::DtGateLock myGateLock
Definition: displayDefinitionWidget.h:743
Definition: visualEditors.h:337
bool myWantsToSimulate
Definition: displayDefinitionWidget.h:661
Contains makVrv::DtChannelConfiguration class.
double myIsGroundVehicle
Definition: displayDefinitionWidget.h:663
The makVrv::DtVisualizerDefinitionSet is a collection of makVrv::DtVisualizerDefinition instances...
Definition: DtVisualizerDefinitionSet.h:28
boost::function< DtUiElement *(makVrv::DtDe &)> CreatorFunction
Definition: uiElement.h:190
bool myBlockOcean
Definition: displayDefinitionWidget.h:567
double myHeadingInDegrees
Definition: displayDefinitionWidget.h:616
DtDisplayWidget * myDisplayWidget
Definition: displayDefinitionWidget.h:515
bool myLastWasDiGuy
Definition: displayDefinitionWidget.h:563
bool blockOcean() const
Definition: displayDefinitionWidget.h:249
This owns a list of channel configurations.
Definition: DtWindowConfiguration.h:26
DtDe & appDe()
Definition: displayDefinitionWidget.h:733
virtual DtVirtualBaseClass * findInstance(const std::string &instanceName) const
Find an instance with the given name. If no instance is found than a null pointer is returned...
makArchives::DtObserverStateRecordsList myObserverViews
Definition: displayDefinitionWidget.h:631
A simple widget with an embedded de.
Definition: displayDefinitionWidget.h:91
std::map< int, CameraInfo > CameraMap
Definition: displayDefinitionWidget.h:614
QToolButton * myTakeScreenGrab
Definition: displayDefinitionWidget.h:530
makVrf::DtEntityMapperKey myKey
Definition: displayDefinitionWidget.h:553
The DtExtent represents an axis-aligned 3d bounding box.
Definition: extent.h:43
QVBoxLayout * myDisplayContainerLayout
Definition: displayDefinitionWidget.h:512
int myTerrainLength
Definition: displayDefinitionWidget.h:560
PrintLevel
Definition: DtDebugLog.h:42
makVrv::DtSignalConnectionManager myViewModeConnections
Definition: displayDefinitionWidget.h:652
boost::signals2::signal< void()> signal_disabled
Definition: displayDefinitionWidget.h:373
Manager which owns element definitions.for one type of element Use the makVrv::DtElementDefinitionTyp...
Definition: DtElementDefinitionManager.h:73
QWidget * myMainCanvas
Definition: displayDefinitionWidget.h:517
boost::signals2::signal< void()> signal_aboutToCheckMaintainObserverPosition
Definition: displayDefinitionWidget.h:383
boost::signals2::connection myChangeObserverViewConnection
Definition: displayDefinitionWidget.h:654
bool myWasInSpotReportMode
Definition: displayDefinitionWidget.h:570
Markers myMarkers
Definition: displayDefinitionWidget.h:619
bool showOceanForWaterVehicles() const
Definition: displayDefinitionWidget.h:319
std::map< int, int > myModeKeyMap
Definition: displayDefinitionWidget.h:164
makVrv::DtElementDefinitionManager * manager
Definition: displayDefinitionWidget.h:594
boost::signals2::connection myReeditConnection
Definition: displayDefinitionWidget.h:655
bool myIsFirstDiGuyShow
Definition: displayDefinitionWidget.h:562
DtBuoyancyEditingDialog * myBuoyancyDialog
Definition: displayDefinitionWidget.h:544
bool myShowMarkersAs2D
Definition: displayDefinitionWidget.h:564
Record for a visualization definition.
Definition: DtElementDefinitionRecord.h:23
AskToChangeIfShared myFunctionToCallAfterEdit
Definition: displayDefinitionWidget.h:647
If you need access to data in the main thread outside of the advance frame, use this lock (with the l...
Definition: dataGate.h:18
makVrv::DtDe & myAppDe
Definition: displayDefinitionWidget.h:161
QToolButton * myEditVisualMetaData
Definition: displayDefinitionWidget.h:534
QToolButton * myEditVisualConfiguration
Definition: displayDefinitionWidget.h:532
bool checkMaintainObserverPosition() const
Definition: displayDefinitionWidget.h:364
Definition: modelSetEntry.h:34
double myDelayReeditUntil
Definition: displayDefinitionWidget.h:671
boost::signals2::signal< void()> signal_visualizersHaveBeenModified
Definition: displayDefinitionWidget.h:372
double myViewMagnification
Definition: displayDefinitionWidget.h:670
virtual void renderTick(double elapsedTime)
Update the scene and render, elapsedTimeis used to figure out how much time is left for additional st...
This class will display the visual markings that can be changed for the selected objects.
Definition: visualMarkingsWidget.h:28
virtual void updateScene()
Update the scene if it needs to be updated.
makVrv::vrvTacticalGraphicUtilities::PenStyle myPenStyle
Definition: displayDefinitionWidget.h:629
bool myShowMarkers
Definition: displayDefinitionWidget.h:566
This class will show entries for all the items that can be modified as part of the visual (non spot r...
Definition: visualSpotReportSettingsWidget.h:12
DtDetonationWidget * myDetonationsWidget
Definition: displayDefinitionWidget.h:545
DtVector myStartingLocation
Definition: displayDefinitionWidget.h:664
Contains makVrv::DtVirtualBaseClass class.
bool showMarkers() const
Definition: displayDefinitionWidget.h:269
makVrv::DtElementDefinitionManager * myManager
Definition: displayDefinitionWidget.h:580
makVrv::DtElementDefinitionManager * elementManager() const
Definition: displayDefinitionWidget.h:304
ElementInformation()
Definition: displayDefinitionWidget.h:584
bool myCheckMaintainObserverPosition
Definition: displayDefinitionWidget.h:632
QHBoxLayout * myCompressedObserverLayout
Definition: displayDefinitionWidget.h:543
std::map< std::string, ElementInformation > ElementDefinitionMap
Definition: displayDefinitionWidget.h:599
Contains makArchives::DtObserverStateRecordsList class.
Definition: vrfObjectFacadeInterface.h:53
boost::signals2::signal< void()> signal_enabled
Definition: displayDefinitionWidget.h:374
makVrv::vrvTacticalGraphicUtilities::FillStyle myFillStyle
Definition: displayDefinitionWidget.h:630
DtObserverStateRecordsList class contains a collection of DtObserverStateRecord.
Definition: DtObserverStateRecordsList.h:21
boost::signals2::signal< void()> signal_aboutToChangeDefaultView
Definition: displayDefinitionWidget.h:380
QWidget * myDisplayContainerWidget
Definition: displayDefinitionWidget.h:511
PenStyle
Definition: DtTacticalGraphicUtilities.h:71
Contains makVrv::DtIgView class.
const Markers & markers() const
Definition: displayDefinitionWidget.h:333
boost::signals2::signal< void()> signal_visualsModified
Definition: displayDefinitionWidget.h:379
std::map< bool, ElementDefinitionMap > ElementDefinitionMapByType
Definition: displayDefinitionWidget.h:600
DtVisualSpotReportSettingsWidget * myVisualSpotReportSettingsWidget
Definition: displayDefinitionWidget.h:546
ElementInformation(const ElementInformation &orig)
Definition: displayDefinitionWidget.h:589
makVrv::DtChannelConfiguration myChannelConfiguration
Definition: displayDefinitionWidget.h:658
CameraMap myCameraInfo
Definition: displayDefinitionWidget.h:615
The element definition class contains the element definition information. The makVrv::DtElementDefini...
Definition: DtElementDefinition.h:26
Definition: displayDefinitionWidget.h:582
boost::signals2::signal< void()> signal_channelsInitialized
Definition: displayDefinitionWidget.h:138
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
bool mySpotReportsModified
Definition: displayDefinitionWidget.h:608
makVrf::DtForceSelectionEntryWidget * myForces
Definition: displayDefinitionWidget.h:522
This owns a list of display engine configurations.
Definition: DtVrvApplicationConfiguration.h:32
int mySpotReportModeStart
Definition: displayDefinitionWidget.h:668
bool myShowMarkerLabels
Definition: displayDefinitionWidget.h:565
bool showMarkerLabels() const
Definition: displayDefinitionWidget.h:264
DtDisplayWidget * displayWidget()
Definition: displayDefinitionWidget.h:230
QToolButton * myEditBuoyancyModel
Definition: displayDefinitionWidget.h:533
const char * source
Definition: lz4.h:442
std::vector< makVrf::DtVrfObjectFacadeInterface * > Facades
Definition: displayDefinitionWidget.h:189
QLabel * myFreezeFrame
Definition: displayDefinitionWidget.h:514
bool myResetInstead
Definition: displayDefinitionWidget.h:646
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
QVBoxLayout * myCanvasLayout
Definition: displayDefinitionWidget.h:513
bool keepVisualModelEditorUpToDate() const
Definition: displayDefinitionWidget.h:327
bool myImageCheck
Definition: displayDefinitionWidget.h:561
DtVisualMarkingsWidget * myVisualMarkingsWidget
Definition: displayDefinitionWidget.h:548
bool myWakesEnabled
Definition: displayDefinitionWidget.h:638
bool showBoundingVolumes() const
Definition: displayDefinitionWidget.h:274
QHBoxLayout * myMainLayout
Definition: displayDefinitionWidget.h:516
makVrv::DtSignalConnectionManager myConnections
Definition: displayDefinitionWidget.h:653
bool showMarkersAs2D() const
Definition: displayDefinitionWidget.h:259
boost::signals2::connection myResetObserverViewToDefault
Definition: displayDefinitionWidget.h:657
std::vector< makVrv::DtModelSetId > myModelSets
Definition: displayDefinitionWidget.h:163
QWidget * myToolbarButtonsWidget
Definition: displayDefinitionWidget.h:525
makVrv::DtElementDefinitionTypeManager::BuiltInElementTypes type
Definition: displayDefinitionWidget.h:596
boost::signals2::signal< void()> signal_resized
Definition: displayDefinitionWidget.h:144
virtual void setEnabled(bool)
If this item is not enabled it cannot be modified.
QHBoxLayout * myToolbarButtonsLayout
Definition: displayDefinitionWidget.h:526
QToolButton * my2DIcon
Definition: displayDefinitionWidget.h:523
QAbstractButton * myCurrentForceButtonSelected
Definition: displayDefinitionWidget.h:611
boost::signals2::signal< void(int choice, bool &, int &)> signal_shouldChangeObserverMode
Definition: displayDefinitionWidget.h:384
The DtCachedIntersectorsContainer class contains instances of cached intersectors of different model ...
Definition: DtCachedIntersectorsContainer.h:43
double myLastHeading
Definition: displayDefinitionWidget.h:617
boost::signals2::signal< void(const Facades &)> signal_facadesRecreated
Definition: displayDefinitionWidget.h:377
Base class to provide boost signal/slot management.
int myLastKind
Definition: displayDefinitionWidget.h:672
boost::signals2::signal< void(makVrv::DtModelSetId)> signal_reeditForModelSet
Definition: displayDefinitionWidget.h:378
std::set< std::string > myAlreadyAskedForShared
Definition: displayDefinitionWidget.h:642
boost::signals2::signal< void()> signal_checkedMaintainObserverPosition
Definition: displayDefinitionWidget.h:382
Definition: displayDefinitionWidget.h:678
const makVrf::DtEntityMapperKey & editingKey() const
Definition: displayDefinitionWidget.h:309
bool isEntity() const
Definition: displayDefinitionWidget.h:294
Configuration for a single channel Serialized and sent to remote displays as necessary to configure r...
Definition: DtChannelConfiguration.h:24
FillStyle
Definition: DtTacticalGraphicUtilities.h:82
makVrv::DtDe & myAppDe
Definition: displayDefinitionWidget.h:551
bool myForceCreateNewElementDefinition
Definition: displayDefinitionWidget.h:643
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
const char int mode
Definition: ioapi.h:38
bool wantsToSimulate() const
Definition: displayDefinitionWidget.h:254
boost::signals2::signal< void()> signal_initializeFacadeForSimulation
Definition: displayDefinitionWidget.h:385
boost::signals2::connection myPostReeditFunctionConnection
Definition: displayDefinitionWidget.h:656
bool myCompressedView
Definition: displayDefinitionWidget.h:622
The DtUiElement class is the base for which all UI elements are defined. If you wish to create a new ...
Definition: uiElement.h:97
boost::signals2::signal< void(bool)> signal_compressedChanged
Definition: displayDefinitionWidget.h:371
bool myShowingAggregate
Definition: displayDefinitionWidget.h:578
virtual void postInitialize()
Connect initialized components and call postInit signal.
boost::signals2::signal< void(int &)> signal_observerModeAboutToChange
Definition: displayDefinitionWidget.h:386
QToolButton * myShowEnvironmentSettings
Definition: displayDefinitionWidget.h:529
bool myModelDefinitionModified
Definition: displayDefinitionWidget.h:606
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:76
double myAltitudeAboveSeaLevel
Definition: displayDefinitionWidget.h:665
makVrv::DtElementDefinition * elementDefinition() const
Definition: displayDefinitionWidget.h:299
boost::signals2::signal< void(int, int)> signal_viewChangeComplete
Definition: displayDefinitionWidget.h:381
Contains information about the current DI-Guy character instance and some of its available options...
Definition: diGuyInformation.h:22
virtual void createDebugLog(const std::string &fileName, DtDebugLog::PrintLevel level)
create the debug log for logging information to a file
Definition: buoyancyEditingDialog.h:100
QWidget * myVisualModificationWidget
Definition: displayDefinitionWidget.h:537
int myRunTicker
Definition: displayDefinitionWidget.h:645
Definition: displayDefinitionWidget.h:703
makVrv::DtDe * myDe
Definition: displayDefinitionWidget.h:552
bool myEntityModified
Definition: displayDefinitionWidget.h:607
makVrv::DtOsgAdapterQtWidget * myAdapterWidget
Definition: displayDefinitionWidget.h:162
DtModelSetId
Definition: DtModelSetEnums.h:19
bool myTacticalGraphicsModified
Definition: displayDefinitionWidget.h:610
int myArrowSize
Definition: displayDefinitionWidget.h:625
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...
double myLastSimulationTime
Definition: displayDefinitionWidget.h:662
const Facades & facades() const
Definition: displayDefinitionWidget.h:279
bool myIsSimulating
Definition: displayDefinitionWidget.h:666
This class will allow the user to select various detonation effects and press a button to show the de...
Definition: detonationWidget.h:26
std::pair< DtVector, DtTaitBryan > CameraInfo
Definition: displayDefinitionWidget.h:613
bool myWarnedForBoundingVolumes
Definition: displayDefinitionWidget.h:569
QComboBox * myObserverMode
Definition: displayDefinitionWidget.h:519
bool myAllIs2D
Definition: displayDefinitionWidget.h:604
bool myShowBoundingVolumes
Definition: displayDefinitionWidget.h:568
DtDe & myAppDe
Definition: displayDefinitionWidget.h:742
double mySpeedMultiplier
Definition: displayDefinitionWidget.h:559
bool myWakeDisplayEnabled
Definition: displayDefinitionWidget.h:558
makVrf::DtEntityMapperKey myLastKey
Definition: displayDefinitionWidget.h:554
DtUiElementEvent myLastBoundingVolume
Definition: displayDefinitionWidget.h:621
bool myEditable
Definition: displayDefinitionWidget.h:628
QComboBox * myDefaultView
Definition: displayDefinitionWidget.h:520
Definition: displayDefinitionWidget.h:167
QLabel * myObserverModeLabel
Definition: displayDefinitionWidget.h:518
#define DT_DLL_simulationObjectEditorimpl
This file is used to determine how to build.
Definition: simulationObjectEditorImplDefines.h:33
Base class of the ui element class chain. Properties available through designer for all ui elements a...
Definition: uiElement.h:185
bool showingSpotReports() const
Definition: displayDefinitionWidget.h:314
const std::map< int, int > & modeMap() const
Definition: displayDefinitionWidget.h:133
DtVector myObserverPosition
Definition: displayDefinitionWidget.h:633
bool myHaveWarned
Definition: displayDefinitionWidget.h:624
std::string myCurrentAction
Definition: displayDefinitionWidget.h:667
bool myMaintainObserverPosition
Definition: displayDefinitionWidget.h:574
std::string myLabel
Definition: displayDefinitionWidget.h:626
Definition: visualEditors.h:155
std::map< int, int > myViewSelection
Definition: displayDefinitionWidget.h:573

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)