VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfGuiSettingsManager.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2017 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 #pragma once
12 
14 #include <vrfGuiCore/vrfGuiCore.h>
17 #include <vlutil/vlFilename.h>
18 
19 #include <vrvCore/DtStateView.h>
20 #include <vrvCore/DtEntityState.h>
21 
22 
23 #include <boost/unordered_map.hpp>
24 
25 class DtUUID;
26 
27 namespace makVrv
28 {
29  class DtRecordSettingsBackupInterface;
30  class DtDe;
31 }
32 
33 namespace makVrf
34 {
41  {
42  public:
44  virtual ~DtVrfGuiSettingsManager();
45 
47  static DtVrfGuiSettingsManager& instance(makVrv::DtDe& de);
48  static void registerInstance(makVrv::DtDe& de, DtVrfGuiSettingsManager*);
49 
54  virtual void setHelpFile(const std::string&, bool save = false);
55  virtual std::string helpFile() const;
56 
57  virtual void setFromRecord(const DtVrfGuiSettingsRecord& rec);
58  virtual void loadDefaultGuiSettings(bool loadOnlyFactorySettings = false);
59  virtual void getRecord(DtVrfGuiSettingsRecord& rec) const;
60 
62  virtual void setGrayOutHiddenItems(bool);
63  virtual bool grayOutHiddenItems() const;
64 
66  virtual void setOrganizeOverlaysByCategory(bool);
67  virtual bool organizeOverlaysByCategory() const;
68 
71  virtual void getSplitRecord(std::vector<DtVrfGuiSettingsRecord>& rec,
72  std::vector<std::string>& fileNames) {};
73 
76  virtual void addRecords(DtVrfGuiSettingsRecord& recs,
77  DtVrfGuiSettingsRecord& combinedRec) {};
78 
80  virtual void setAutoSave(bool);
81  virtual bool autoSave() const;
82 
85  virtual bool zoomToScenarioExtentsOnLoad() const;
86  virtual bool useSimulationTimeForAdvancement() const;
87  virtual bool showOverlayBar() const;
88  virtual bool showSimOperationsStatusBar() const;
89 
92  virtual void setUseAdditionalWindowTitle(bool);
93  virtual bool useAdditionalWindowTitle() const;
94 
96  void setCommandPanelShowIcons(bool);
97  bool commandPanelShowIcons() const;
98 
100  void setShowCommandPanelSmallIcons(bool);
101  bool showCommandPanelSmallIcons() const;
102 
104  virtual void setShowCommandPanelLargeIcons(bool);
105  virtual bool showCommandPanelLargeIcons() const;
106 
108  virtual void setAdditionalWindowTitle(const makVrv::DtUnicode&);
109  virtual makVrv::DtUnicode additionalWindowTitle() const;
110 
112  virtual void setUseStartFreezePdus(bool);
113  virtual bool useStartFreezePdus() const;
114 
116  virtual void setAllowWindowsStyleNameEditing(bool);
117  virtual bool allowWindowsStyleNameEditing() const;
118 
120  virtual void setEditPressTime(double);
121  virtual double editPressTime() const;
122 
124  virtual void setSortTaskSetMenus(bool);
125  virtual bool sortTaskSetMenus() const;
126 
128  virtual void setPromptBeforeAbandoningPlan(bool);
129  virtual bool promptBeforeAbandoningPlan() const;
130 
132  virtual void setPromptBeforeInterruptingTask(bool);
133  virtual bool promptBeforeInterruptingTask() const;
134 
136  virtual void setAskToCancelOperation(bool);
137  virtual bool askToCancelOperation() const;
138 
140  virtual void setUseDoubleClickToEndRouteCreation(bool);
141  virtual bool useDoubleClickToEndRouteCreation() const;
142 
144  virtual void setShowCountsOnObjectList(bool);
145  virtual bool showCountsOnObjectList() const;
146 
148  {
149  return myGuiSettingsBackup;
150  }
151 
153  void exportGuiSettings(const std::string& fileName);
154 
156  void importGuiSettings(const std::string& fileName);
157 
159  virtual void setDisplayCorrelationWarningMessages(bool);
160  virtual bool displayCorrelationWarningMessages() const;
161 
163  virtual void setDoNotShowSessionStartupDialog(bool, bool save = true, bool signal = true);
164  bool showSessionStartupDialog() const;
165 
167  virtual void setStartupPreference(int);
168  int startupPreference() const;
169 
171  virtual void setTimeScaleRange(double low, double high, bool save = true);
172  virtual void getTimeScaleRange(double& low, double& high) const;
173 
175  virtual void setUserDefinedSmoothing(bool);
176  bool userDefinedSmoothing() const;
177 
179  virtual void setShowScenarioDescriptionDialog(bool b);
180  virtual bool showScenarioDescriptionDialog() const;
181 
184  virtual void setTimescaleButtonMode(bool);
185  virtual bool timescaleButtonMode();
186 
188  virtual void setTimescaleButtons(const std::string&);
189  virtual const std::string& timescaleButtons() const;
190 
192  virtual void setOrientationStep(double);
193  virtual double orientationStep() const;
194 
196  virtual void setMovementStep(double);
197  virtual double movementStep() const;
198 
203  virtual void setForceForMenuItemTacticalGraphic(int);
204  virtual int forceForMenuItemTacticalGraphic() const;
205 
207  virtual void saveSettingsAsDefault();
208 
209  public:
211  boost::signals2::signal<void (const DtVrfGuiSettingsRecord&)> signal_guiSettingsChanged;
212 
214  boost::signals2::signal<void (bool)> signal_grayOutHiddenItemsChanged;
215 
217  boost::signals2::signal<void (bool)> signal_organizeOverlaysByCategoryChanged;
218 
220  boost::signals2::signal<void (bool)> signal_taskSetMenuSortChanged;
221 
223  boost::signals2::signal<void (bool)> signal_allowWindowsStyleNameEditingChanged;
224 
226  boost::signals2::signal<void (bool)> signal_editPressTimeChanged;
227 
229  boost::signals2::signal<void (bool)> signal_showCountsOnObjectListChanged;
230 
231  protected:
236  };
237 }
DtVrfGuiSettingsRecord myGuiSettings
Definition: vrfGuiSettingsManager.h:233
UUID is a unique ID wrapper class.
Definition: uuid.h:59
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
A unicode string. DtUnicode stores a UTF-16 encoded unicode string. Code Point, a Unicode character...
Definition: DtUnicode.h:33
makVrv::DtRecordSettingsBackupInterface * myGuiSettingsBackup
Definition: vrfGuiSettingsManager.h:234
makVrv::DtDe & myDe
Definition: vrfGuiSettingsManager.h:232
boost::signals2::signal< void(bool)> signal_allowWindowsStyleNameEditingChanged
Signal sent when windows style name editing has changed.
Definition: vrfGuiSettingsManager.h:223
Contains makVrv::DtStateView class.
boost::signals2::signal< void(bool)> signal_grayOutHiddenItemsChanged
Signal sent when gray out has changed.
Definition: vrfGuiSettingsManager.h:214
boost::signals2::signal< void(bool)> signal_showCountsOnObjectListChanged
Signal sent when the show counts on object list have changed.
Definition: vrfGuiSettingsManager.h:229
Definition: vrfGuiSettingsRecord.h:26
makVrv::DtRecordSettingsBackupInterface * guiSettingsBackup()
Definition: vrfGuiSettingsManager.h:147
virtual void getSplitRecord(std::vector< DtVrfGuiSettingsRecord > &rec, std::vector< std::string > &fileNames)
To support writing element definitions in folders as multiple files not implemented.
Definition: vrfGuiSettingsManager.h:71
#define DT_DLL_VRFGUICORE
Contains DLL export macros.
Definition: vrfGuiCore.h:25
virtual void addRecords(DtVrfGuiSettingsRecord &recs, DtVrfGuiSettingsRecord &combinedRec)
To support writing element definitions in folders as multiple files not implemented.
Definition: vrfGuiSettingsManager.h:76
int myForceForMenuItemTacticalGraphic
Definition: vrfGuiSettingsManager.h:235
Contains makVrv::DtVirtualBaseClass class.
Contains makVrv::DtVrlinkSimulatedEntityState class.
boost::signals2::signal< void(const DtVrfGuiSettingsRecord &)> signal_guiSettingsChanged
Sent when gui settings have changed.
Definition: vrfGuiSettingsManager.h:211
boost::signals2::signal< void(bool)> signal_taskSetMenuSortChanged
Sent when the sorting of task/set menus has changed.
Definition: vrfGuiSettingsManager.h:220
The class that will contain information about various scenario settings.
Definition: vrfGuiSettingsManager.h:40
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:72
boost::signals2::signal< void(bool)> signal_organizeOverlaysByCategoryChanged
Signal sent when organizing by categories changes.
Definition: vrfGuiSettingsManager.h:217
The makVrv::DtRecordSettingsBackupInterface provides an interface to record-based backups...
Definition: DtRecordSettingsBackup.h:24
boost::signals2::signal< void(bool)> signal_editPressTimeChanged
Signal sent when the edit press time has changed.
Definition: vrfGuiSettingsManager.h:226

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)