VR-Forces 5.0.2 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtObserverViewsWidgetLogic.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2021 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 #include <vrvCoreQt/vrvCoreQt.h>
15 #include <vrvUtil/DtUnicode.h>
17 
18 namespace makVrv
19 {
20  class DtDe;
21  class DtObserverViewsWidgetInterface;
22  class DtObserver;
23  class DtInputDriver;
24  class DtObserverViewsManager;
25 
30  {
31 
32  public:
33 
36 
38  virtual ~DtObserverViewsWidgetLogic();
39 
42  virtual void slot_captureAndAddObserverView();
43 
47  virtual void slot_setObserverViewByNameAndMode(const DtUnicode&, DtObserverViewsManager::ViewProjection projection, bool animate = false);
48 
50  virtual void slot_clearObserverViews();
51 
54  virtual void slot_associateObserverViewsToCurrentTerrain();
55 
57  virtual void slot_dissociateObserverViewsToCurrentTerrain();
58 
60  virtual void slot_saveObserverViewsFileAs(const DtUnicode& filename);
61 
64  virtual void slot_saveObserverViewsFile();
65 
67  virtual void slot_deleteObserverView();
68 
70  virtual void slot_saveObserverView();
71 
75  virtual void slot_loadObserverViewsFile(const DtUnicode&);
76 
79  virtual bool slot_renameObserverRecord(const DtUnicode& newName, const DtUnicode& oldName, DtObserverViewsManager::ViewProjection projection);
80 
83  virtual DtObserverViewsManager::ViewProjection observerViewProjectionMode(const makArchives::DtObserverStateRecord& record);
84 
86  void refreshObserverViewList();
87 
89  void refreshWidget();
90 
92  virtual void setRightClickedObserverViewData(const std::string& observeViewName, DtObserverViewsManager::ViewProjection projection );
93 
95  void slot_showExitMessageDialog();
96 
98  // Otherwise, saves the latests file used in the "imported and replace" command
99  void slot_savedLoadedFile();
100 
101  protected:
102 
106  virtual bool canAssociate() const;
107 
110  virtual bool canDissociate() const;
111 
114  virtual bool canSave() const;
115 
119  virtual bool canSaveAs() const;
120 
123  virtual bool canClear() const;
124 
126  virtual void slot_capturedObserverViewAdded(const makArchives::DtObserverStateRecord& observerView);
127 
129  virtual void slot_observerViewRemoved(const makArchives::DtObserverStateRecord& observerView);
130 
132  virtual void slot_observerProjectionChanged(const makArchives::DtObserverStateRecord& observerView);
133 
135  virtual void slot_observerViewNameModified(const std::string& newName, const makArchives::DtObserverStateRecord& observerView);
136 
138  virtual void slot_observerViewsAssociatedToTerrain();
139 
141  virtual void slot_observerViewDissociatedToTerrain(const makArchives::DtObserverStateRecordsList& observerView);
142 
144  virtual void slot_observerViewsImportedAndMerge(const makArchives::DtObserverStateRecordsList& observerViewList);
145 
147  virtual void slot_observerViewsImportedAndReplaced(const makArchives::DtObserverStateRecordsList& observerViewList);
148 
150  virtual void slot_associatedViewsToTerrainLoaded(const makArchives::DtObserverStateRecordsList& observerViewList);
151 
153  virtual void slot_associatedViewsToTerrainUnloaded(const makArchives::DtObserverStateRecordsList& observerViewList);
154 
156  virtual void slot_setDefaultObserverViewRecord(const makArchives::DtObserverStateRecord&);
157 
159  virtual void slot_unSetDefaultObserverViewRecord(const makArchives::DtObserverStateRecord&);
160 
162  virtual void slot_observerViewsAboutToBeCleared();
163 
165  virtual void slot_observerViewsCleared();
166 
168  virtual void slot_sceneTerrainLoaded(const DtUnicode& terreainFileName);
169 
171  virtual void slot_terrainCleared();
172 
174  virtual void slot_toggleDefaultObserverView(bool set);
175 
177  virtual void slot_postInitialize();
178 
180  virtual void slot_saveSingleObserverViewsFile(const DtUnicode& observerViewFileName);
181 
182  protected:
185  virtual void processEnableState();
186 
187  protected:
188 
191 
192  protected:
193 
198 
199  std::string myObserversViewFile;
200  std::string myTerrainFilename;
201 
203  };
204 }
205 
bool myHasSetupObserverRecords
Definition: DtObserverViewsWidgetLogic.h:197
A unicode string. DtUnicode stores a UTF-16 encoded unicode string. Code Point, a Unicode character...
Definition: DtUnicode.h:33
DtObserverViewsWidgetInterface * myGui
Definition: DtObserverViewsWidgetLogic.h:195
The logic for controlling and updating the makVrv::DtObserverViewsWidget.
Definition: DtObserverViewsWidgetLogic.h:29
DtDe & myDe
Definition: DtObserverViewsWidgetLogic.h:194
DtObserverViewsManager * myObserverViewsManager
Definition: DtObserverViewsWidgetLogic.h:196
A DtObserverSettingsRecord contains the state of an observer.
Definition: DtObserverStateRecord.h:20
#define DT_DLL_VRVCOREQT
Definition: vrvCoreQt.h:20
Contains DLL export macros.
DtSignalConnectionManager myConnections
Definition: DtObserverViewsWidgetLogic.h:202
Contains makArchives::DtObserverStateRecordsList class.
DtObserverStateRecordsList class contains a collection of DtObserverStateRecord.
Definition: DtObserverStateRecordsList.h:21
Abstract interface for the observer views widget.
Definition: DtObserverViewsWidgetInterface.h:24
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
Contains makArchives::DtObserverStateRecord class.
Contains makVrv::DtObserverViewsManager class.
Base class to provide boost signal/slot management.
std::string myObserversViewFile
Definition: DtObserverViewsWidgetLogic.h:199
Manager for the observer view records loaded in the application.
Definition: DtObserverViewsManager.h:28
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:70
std::string myTerrainFilename
Definition: DtObserverViewsWidgetLogic.h:200
ViewProjection
Definition: DtObserverViewsManager.h:35

Document ID: Generated on Sun Dec 4 20:22:03 EST 2022 from SVN revision 249613
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)